|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
x
原始资料是参考“华为VERILOG-HDL电路设计指导” PDF文件里最后个同步FIFO的例子 但是自己编写时实例引用报错“Error (10153): Verilog HDL Function Call or Function Declaration error at fifo.v(28): identifier "read_allow" is not a function” 这样一堆 貌似引用RAM出现错误啦
往指教下哪里语法出现错误了 谢谢了啊!!
顶层模块定义的是:
module fifo(fifo_rst,clock,read_en,write_en,read_data,write_data,full,empty,fcounter);
parameter data_width = 8;
parameter addr_width = 9;
input fifo_rst;
input clock;
input read_en;
input write_en;
input [data_width-1:0] write_data;
output [data_width-1:0] read_data;
output [addr_width-1:0] fcounter;
output full;
output empty;
reg [data_width-1:0] read_data;
reg full;
reg empty;
reg [addr_width-1:0] fcounter;
reg [addr_width-1:0] read_addr;
reg [addr_width-1:0] write_addr;
wire read_allow =(read_en&&!empty);
wire write_allow =(write_en&&!full);
dualram u_ram(read_clock(clock),
write_clock(clock),
read_allow(read_allow),
write_allow(write_allow),
read_addr(read_addr),
write_addr(write_addr),
read_data(read_data),
write_data(write_data),
);
............................................后面是FIFO的描述
RAM定义的是:
module dualram(read_clock,write_clock,read_allow,write_allow,read_addr,write_addr,read_data,write_data);
parameter dly =1;
parameter ram_width =8;
parameter addr_width =9;
parameter ram_depth =512;
input read_clock;
input write_clock;
input read_allow;
input write_allow;
input [ram_width -1:0] write_data;
input [addr_width -1:0] read_addr;
input [addr_width -1:0] write_addr;
output [ram_width -1:0] read_data;
reg [ram_width -1:0] read_data;
reg [ram_width -1:0] mem [ram_depth -1:0]; |
|