以信号发生器为例,读取ROM中数据,并输出形成波形
一.RTL设计
(1)新建工程。Quit Start下选择Creat Project,选择文件位置,如果勾选“Creat project subdirectory ”会生成子目录;
选择RTL Project,IP文件和约束文件直接跳过即可;
选芯片型号;
(2)加入.v文件。在Sources下找到Design Sources,右键Add sources添加或者新建.v文件。注意顶层的File Name与Project Name保持一致.
Vivado可以在新建.v文件时就指定输入输出口,比Quartus更加方便。
(3)调用ROM的IP核。在界面左端选择IP Catalog,找到Block Memory Genetator,配置为8*1024的单口ROM并写入.coe数据文件(可以用Matlab等软件生成).
(4)例化ROM。可以直接在IP的示例文件里复制。
整体代码如下:
module signal(
input clk,
input rst,
output [7:0] signal
);
reg [9:0] addr;
always@(posedge cl