微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > FPGA,CPLD和ASIC > 例说FPGA连载84:工业现场实时监控界面设计之双口RAM

例说FPGA连载84:工业现场实时监控界面设计之双口RAM

时间:10-02 整理:3721RD 点击:
例说FPGA连载84:工业现场实时监控界面设计之双口RAM

特权同学,版权所有

配套例程和更多资料下载链接:

http://pan.baidu.com/s/1c0nf6Qc


① 在新建的工程中,点击菜单ToolsàMegaWizard Plug-In Manager。在弹出的选项卡中选择“Creat a new custom megafunction variation”,然后点击“Next”。

② 接着选择我们所需要的IP核,如图17.3所示进行设置。


图17.3 IP核选择页面

●  在“Select a megafunction from the list below”下面选择IP核为“Memory Compiler à RAM: 2-PORT”。

●  在“What device family will you be using”后面的下拉栏中选择我们所使用的器件系列为“Cyclone IV E”。

●  在“What type of output file do you want to create?”下面选择语言为“Verilog HDL”。

●  在“What name do you want for the output file?”下面输入工程所在的路径,并且在最后面加上一个名称,这个名称是我们现在正在例化的片内双口RAM IP核的名称,这里我们可以给他起名叫waveRAM,然后点击Next进入下一个页面。

③ 如图17.4所示,在第一个配置页面“ParameterSettings à General”中,我们需要做如下的设置。

●  在“How will you be using the dual port RAM?”下面勾选“With one read port and one write port”选项,即我们这个双口RAM配置为一组读端口和一组写端口。

●  在“How do you want to specify the memory size?”下面勾选“As a number of words”,即以“words”为单位来配置查看端口的位宽。


图17.4 双口RAM基本配置页面

④ 如图17.5所示,在第二个配置页面“ParameterSettings à Widths/Blk Type”中,我们需要做如下的设置。

●  在“How many 8-bit words of memory?”后面输入“1024”words,即该双口RAM的存储深度为1024。

●  在“What wide should the ‘data_a’ input bus be?”后面输入“8”,即端口位宽为8bit。


图17.5 双口RAM的位宽、存储器类型配置页面

⑤ 如图17.6所示,在第三个配置页面“ParameterSettings à Clks/Rd,Byte En”中,做如下设置。

●  在“Which clocking method do you want to use?”下面勾选“Dual clock: use separate ‘read’ and ‘write’ clocks”,表示读写操作使用不同的时钟。


图17.6 双口RAM的控制信号配置页面

⑥ 如图17.7所示,第四个配置页面“ParameterSettings à Regs/Clkens/Aclrs” 中,做如下设置。

●  在“Which ports should be registered?”下面勾选“Read output port(s) ‘q’”,即对双口RAM的读出数据q用rdclock打一拍,确保更好的时序性能。

●  勾选“Create an ‘aclr’ asynchronous clear for the registered ports”,即增加异步清除信号接口。


图17.7 双口RAM的时钟使能、复位信号配置页面

⑦ 第五个配置页面“Parameter Settings à Mem Init”无需设置,默认即可。

⑧ 最后,在“Summary”页面中,如图17.8所示,勾选上“waveRAM_inst.v”文件所在选项。点击“Finish”完成设置。


图17.8 双口RAM的Summary配置页面

waveRAM_inst.v文件打开如图17.9所示,这里有新建双口RAM的接口例化模板,可以复制到工程顶层源码中重新做接口映射。


图17.9 双口RAM例化模板


谢谢分享,小编辛苦了

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top