NIOS II- Dual_Port RAM IP
在NIOS II 的学习中用到FPGA—NIOS II的信息交互,最常用的方式:FIFO/RAM/Avalon-MM Pipeline Bridge。根据项目需求决定采用Dual_Port RAM进行数据交互。
由于查阅资料并没有发现有Dual_Port RAM数据交互的详细步骤,故将自己的步骤记录下来,供后续研究者参考。
本设计所用芯片为ALTERA系列中Cyclone IV E:EP4CE10F17C8
1、建立工程,写入硬件代码、引脚绑定并编译。最终的硬件Verilog代码如下(部分代码需要在生成Qsys文件之后才能编译通过):
module SOPC_GHRD_RAM(
input sys_clk, //晶振时钟,50Mhz
input sys_rst_n, //按键复位,低电平有效
input rs232_rx, //RS232数据输入
output rs232_tx //RS232数据输出
);
//wire define
wire clk_50m;
wire clk_100m; //Qsys系统时钟,100Mhz
wire clk_100m_shift;
wire pll_locked;
wire rst_n;
assign rst_n = sys_rst_n & pll_locked ;
//例化pll IP核
pll_clk u_pll(
.inclk0 (sys_clk ),
.areset (~sys_rst_n ),
.c0 (clk_50m ),
.c1 (clk_100m ), //SDRAM 时钟