对于比较高级的ip核,altera一般都会提供仿真案例,网上有关于这个IP核的各种仿真方法,但都比较繁琐,前几日,朋友跟我分享了一个比较快速高效的仿真方法,这个方法也是他摸索折腾了一段时间才总结出来的,在此,也谢谢他这种毫无保留的分享奉献精神,估计此套方法可以针对Altera的大多数复杂ip核仿真。

新建工程,生成ip核的步骤我就省略了,直接进入ip核调用仿真部分。

在生成的工程里找到“testbench”文件夹,里面有一个README.txt,打开按照里面的步骤操作即可。

根据上面的步骤,首先是打开“testbench”文件夹里的"generate_sim.qpf"工程

然后运行 “generate_sim_verilog.tcl”或者“generate_sim_vhdl.tcl”,到这里可以关闭quartus这个工程了,然后去打开modelsim,将路径“Change Directory”到“run_irene_tb.tcl”所在的路径

接着在modelsim运行命令框输入“do run_irene_tb.tcl”,按回车键

接下来就不用人为干预了,modelsim 会自动执行直到仿真波形自动输出

可以重点关注下它的“control interface”时序以及它的用户侧时钟,MAC IP的工作时钟。

至于control interface接口时序比较简单,通过仿真我们可以看到

在waitrequest拉低的时候可以进行读写操作。

接下来简单说一下它的工作时钟:

1)ff_tx_clk:用户侧发送端时钟,

2)ff_rx_clk:用户侧接收端时钟;

MAC IP核工作时钟是125M,接口是8 bit,但是由于IP核内部fifo的隔离,因此ff_tx_clk与ff_rx_clk无须配置为125M,只要满足125M X 8bit = 1G的速率即可。

3)rx_clk: MAC IP RX测时钟125M,是PHY芯片发给IP核的,PHY芯片跟据工作速率从网络中恢复成125M时钟,给IP核。

4)tx_clk: MAC IP TX测时钟125M, 这个时钟可以由PLL产生。

5)gtx_clk: 由pll产生的125M 时钟,送给MAC芯片。

假设时钟源clk是50M,可用一个pll产生两路时钟,一路100M给用户侧ff_tx_clk与ff_rx_clk,一路125M给 MAC IP核tx_clk,然后PHY芯片从网络中恢复成125M时钟给rx_clk。

至此,altera三速以太网IP核仿真结束,后续会陆续补充关于这个ip核的使用。

Altera三速以太网IP核快速仿真与使用(上篇)的更多相关文章

  1. Altera三速以太网IP核使用(下篇)--- 百兆网接口设计与使用

    MAC IP核的主要作用是:实现数据链路层协议,分为TX方向与RX方向,TX方向实现的是在原包文的前面加上7个55和1个D5,RX方向则相反.在使用这个 MAC IP核之前,首先确认下自己使用的网卡是 ...

  2. 调用altera IP核的仿真流程—下

    调用altera IP核的仿真流程—下 编译 在 WorkSpace 窗口的 counter_tst.v上点击右键,如果选择Compile selected 则编译选中的文件,Compile All是 ...

  3. 调用altera IP核的仿真流程—上

    调用altera IP核的仿真流程—上 在学习本节内容之后,请详细阅读<基于modelsim-SE的简单仿真流程>,因为本节是基于<基于modelsim-SE的简单仿真流程>的 ...

  4. 用Modelsim SE 直接仿真 Altera(Intel PSG) IP核 需要注意的问题

    如果我们直接用Modelsim SE仿真 Altera IP核,首先会进入Quartus II目录下找到IP核对应的仿真库源文件,然后在Modelsim SE中进行编译,添加到Modelsim SE的 ...

  5. altera DDR2 IP核之仿真

    在生成的IP核文件夹下,有一个testbench文件夹,里面包含了一个example测试激励和DDR2仿真模型. 如下 20 -rw-r--r-- 1 Administrator 197121 171 ...

  6. modelsim 独立仿真vivado的IP核及仿真脚本

    Modelsim独立仿真vivado的IP 最近一直在做local dimming项目的FPGA硬件实现,算法的其中一步就是直方图统计,即数字图像的某一灰度级的像素数,这个直方图的源码找了半天才搞到, ...

  7. 如何用ModelsimSE仿真IP核-以PLL为例

    我们之前介绍了如何使用Modelsim SE进行仿真和利用do文件的仿真方法,但是其中待仿真的模块是我们自己编写的Verilog模块,但是在实际工作中,我们的设计中会经常用到FPGA厂商给我们提供的现 ...

  8. Lattice 的 DDR IP核使用调试笔记之DDR 的 仿真

    —— 远航路上ing 整理于 博客园.转载请标明出处. 在上节建立完工程之后,要想明确DDR IP的使用细节,最好是做仿真.然后参考仿真来控制IP 核. 仿真的建立: 1.在IP核内的以下路径找到以下 ...

  9. 如何使用和了解ALTERA的IP核

    可以通过直接对IP核进行仿真验证,通过波形来分析IP核的功能和工作方式,以及各个寄存器之间的工作关系. 也可以通过查看用户指导手册来学习IP核,如下图.

随机推荐

  1. Python学习---Python数据类型1206

    1.1. 字符串格式化 字符格式化输出 占位符 %s  s = string %d  d = digit 整数 %f   f = float 浮点数,约等于小数 #version: python3.2 ...

  2. Office 365实现单点登录系列(1)—域环境搭建

    Hello 小伙伴们, 2018新年快乐,作为2018年首篇文章,怎么能不给大家带来点干货呢?这篇文章其实我9月底的时候已经在MSDN上发布过了,为表诚意,我更新了这篇文章,并把它组成了一个系列,2. ...

  3. 推送代码到GitHub上的两种方式

       要想将本地Git上代码提交到GitHub可以使用两种协议进行提交,分别使用HTTPS和SSH两种协议,如下所示. 当使用HTTPS协议时,每次推送的时候都需要输入GitHub平台的用户名密码. ...

  4. 乘风破浪:LeetCode真题_012_Integer to Roman

    乘风破浪:LeetCode真题_012_Integer to Roman 一.前言 经过了前面的思维训练,我们在某些方面有了一定的提高,但是对于实际的问题,要在短时间内得到答案,还是需要我们多多的练习 ...

  5. How to Remove A Service Entry From Win10 Service List

    Warning Please do this operation CAREFULLY, otherwise you may get something wrong with your system. ...

  6. Kendo UI 的 k-template

    官网上的例子: 1. <span id="output"></span><script>var template = kendo.templat ...

  7. 关于由ajax返回的数据在for循环中只能取到最后一个数的问题

    关于由ajax返回的数据在for循环中只能取到最后一个数的问题 以上是来自后台的数据格式.从数据中可以看出,里面包含两个商品,每个商品价格分别为:1.98,13.60.这里我要计算两个商品的总价格,但 ...

  8. BZOJ 2440 完全平方数 莫比乌斯反演模板题

    题目链接: https://www.lydsy.com/JudgeOnline/problem.php?id=2440 题目大意: 求第k个无平方因子的数 思路: 二分答案x,求1-x中有多少个平方因 ...

  9. 没有什么问题是sudo rm -rf /* 解决不了的

    没有什么问题是sudo rm -rf /* 解决不了的. . . . . . . 如果有的话,赶紧跑.

  10. R基础-适合于纯小白

    #说明 文中‘test’均为模拟名称,原始编码为GKB方式###1.R语言介绍#### 偏统计 ###2.Rstudio和R的基本操作#### #2.1查看R语言自带的数据集#### data() # ...