本文设计思路源自明德扬至简设计法.在之前的几篇博文中,由于设计比较简单,所有的功能都是用verilogHDL代码编写实现的.我们要学会站在巨人的肩膀上,这时候就该IP核登场了! 说白了,IP核就是别人做好了的硬件模块,提供完整的用户接口和说明文档,更复杂的还有示例工程,你只要能用好这个IP核,设计已经完成一半了.说起来容易,从冗长的英文文档和网上各个非标准教程中汲取所需,并灵活运用还是需要下一番功夫的. 我认为其中最重要的几点如下: 1) 提供给IP核正确的时钟和复位条件: 2) 明确各个重要用…
今天在将SRIO的数据存入FIFO后,然后把FIFO中的数据不断送入FFT进行运算时,对于几个控制信号总产生问题.所以单独对FIFO进行了仿真.原来感觉FIFO的几个参数端口一目了然啊,还需要什么深入了解吗,在实验发生问题才知道当时的想法多么幼稚啊. 下面对xilixn FIFO核进行下简单说明,配上仿真时序图和源代码,描述的还是比较清晰的.希望对和我一样刚接触FPGA不久的同学能有一点点帮助^_^ 这个仿真的功能是要实现向FIFO256存入1到256个数,再将1-256读出.注意这里选的是FU…
FIFO IP核仿真 1.FIFO IP核配置 2.FIFO测试逻辑代码 首先往FIFO里面写入512个数据(FIFO深度的一半),然后再开始同时往FIFO里面写入,读出数据.FIFO读和写的时钟域不同,对于不同时钟域的信号应该进行区分,状态机也应该分开来写. `timescale 1ns / 1ps ////////////////////////////////////////////////////////////////////////////////// // Company: //…
我们之前介绍了如何使用Modelsim SE进行仿真和利用do文件的仿真方法,但是其中待仿真的模块是我们自己编写的Verilog模块,但是在实际工作中,我们的设计中会经常用到FPGA厂商给我们提供的现成模块-IP核,这些模块我们看到不到源代码,只知道IP核的端口信息,当我们要仿真的时候,同样要向Modelsim提供这些IP核的信息,而FPGA厂商也会给我们提供相应的IP核的编译库文件,我们如果设计中包含这些IP核,就必须在仿真之前,将这些库文件编译到Moldelsim 的库中去.其实IP核只是我…
之前在使用Altera的三速以太网MAC IP的基础上,完成了UDP协议数据传输.此次为了将设计移植到xilinx FPGA上,需要用到xilinx的三速以太网MAC IP核,当然也可以自己用HDL编写,但必须对数据链路层协议有非常清晰的认识.以下是在使用xilinx 三速以太网MAC过程中的一些记录和总结. 在使用IP核传输数据之前要对MAC层功能有个了解.MAC层功能用一个词概括就是"成帧解帧",具体来讲TX方向对用户侧发送来的MAC帧添加前导码和帧尾校验和,对长度过短帧会在帧尾填…
转载: 说白了,IP核就是别人做好了的硬件模块,提供完整的用户接口和说明文档,更复杂的还有示例工程,你只要能用好这个IP核,设计已经完成一半了.说起来容易,从冗长的英文文档和网上各个非标准教程中汲取所需,并灵活运用还是需要下一番功夫的. 我认为其中最重要的几点如下: 1) 提供给IP核正确的时钟和复位条件: 2) 明确各个重要用户接口功能: 3) 掌握所需指令的操作时序: 4) 知道内部寄存器地址及功能和配置方式.顺序: 5) 会从官方示例工程中学会IP核正确使用方式: 今天来讲讲一个最常用的I…
对于比较高级的ip核,altera一般都会提供仿真案例,网上有关于这个IP核的各种仿真方法,但都比较繁琐,前几日,朋友跟我分享了一个比较快速高效的仿真方法,这个方法也是他摸索折腾了一段时间才总结出来的,在此,也谢谢他这种毫无保留的分享奉献精神,估计此套方法可以针对Altera的大多数复杂ip核仿真. 新建工程,生成ip核的步骤我就省略了,直接进入ip核调用仿真部分. 在生成的工程里找到“testbench”文件夹,里面有一个README.txt,打开按照里面的步骤操作即可. 根据上面的步骤,首先…
ALTERA在LPM(library of parameterized mudules)库中提供了参数可配置的单时钟FIFO(SCFIFO)和双时钟FIFO(DCFIFO).FIFO主要应用在需要数据缓冲且数据符合先进先出规律的同步或异步场合.LPM中的FIFO包含以下几种: 1.SCFIFO:单时钟FIFO: 2.DCFIFO:双时钟FIFO,数据输入和输出的宽度相同: 3.DCFIFO_MIXED_WIDTHS:双时钟FIFO,输入输出数据位宽可以不同. 配置不细说,直接看时序来理解. 1.…
MAC IP核的主要作用是:实现数据链路层协议,分为TX方向与RX方向,TX方向实现的是在原包文的前面加上7个55和1个D5,RX方向则相反.在使用这个 MAC IP核之前,首先确认下自己使用的网卡是支持千兆网卡还是百兆网卡,我自己的电脑是百兆网卡,百兆网卡只支持百兆速率的传输,要按照百兆网卡进行管脚配置. (1)进行管脚配置: 根据数据手册P54.P55进行硬件管脚引出: 千兆网连接模式 千兆网的PHY芯片数据接收与发送管脚txd与rxd均是8bit,需要用pll倍频125M给PHY芯片的gt…
ALTERA在LPM(library of parameterized mudules)库中提供了参数可配置的单时钟FIFO(SCFIFO)和双时钟FIFO(DCFIFO).FIFO主要应用在需要数据缓冲且数据符合先进先出规律的同步或异步场合.LPM中的FIFO包含以下几种: 1.SCFIFO:单时钟FIFO: 2.DCFIFO:双时钟FIFO,数据输入和输出的宽度相同: 3.DCFIFO_MIXED_WIDTHS:双时钟FIFO,输入输出数据位宽可以不同. 配置不细说,直接看时序来理解. 1.…