这明明是VHDL,我VHDL的语法已经很长时间没看了,但是你这个设计的问题到是挺大的。
楼上的代码应该可以,并且他的仿真没有问题,而你的仿真有问题,那很有可能是你的测试文件的问题。
还有,设计有没有问题,编译通过不算啥,最好到QUARTUS II里面综合一下,仅仅综合,不包括布局布线时序分析,如果一个警告都没有,说明你的代码没问题。当然有的警告可以忽略,但大多数警告会影响功能的。
这是一个 RAM的程序。
这里面用到了类似 数组 的概念。
reg[7:0] Memory [63:0]; 这个定义表示 64 个 8bits 数。
always @(posedge dataInterrupt)
begin
if(dataIn ==8'h30)
begin // 这个if 表示 输入数据为 8'h30 的时候,
memIndex<=0; // 地址为 0
Memory[0]<=8'hff; // 0地址存储的数据为 8'hff
end
else
begin
Memory[memIndex]<=dataIn; // 将输入数据写入对应的地址中
memIndex<=memIndex+1'b1; // 地址自增 1
if (memIndex == 63)
begin
memIndex<=63; // 写满了64个数据,就不动了,除非输入数据为 8'h30
end
end
end
assign dataOut = Memory[Address]; //这是读数据,将 address 地址对应的数据读出来。
以上就是关于fpga verilog求助全部的内容,包括:fpga verilog求助、高悬赏,FPGA verilog程序求解释,速求!!!!!!!!!!!!、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)