rom 查找表
用rom初始化数据去当查找表的时候可以送进地址,立刻出来数据吗(不和时钟相关联)? 就像使用下面case语句一样
`include "timescale.v"
module aes_sbox(a,d);
input a;
output d;
reg d;
always @(a)
case(a) // synopsys full_case parallel_case
8'h00: d=8'h63;
8'h01: d=8'h7c;
8'h02: d=8'h77;
8'h03: d=8'h7b;
8'h04: d=8'hf2;
8'h05: d=8'h6b;
8'h06: d=8'h6f;
8'h07: d=8'hc5;
8'h08: d=8'h30;
8'h09: d=8'h01;
8'h0a: d=8'h67;
8'h0b: d=8'h2b;
8'h0c: d=8'hfe;
8'h0d: d=8'hd7;
8'h0e: d=8'hab;
8'h0f: d=8'h76;
endcase
endmodule
有些难度
送进地址,立刻出来数据,只能是硬连线了
ROM是M9K块,恐怕不行 硬连线消耗的资源太多了 module ROM(
data_in,
data_out
);
inputdata_in;
output data_out;
function rom;
input data_in;
case(data_in)
0:rom = 0;
1:rom = 1;
2:rom = 2;
3:rom = 3;
4:rom = 4;
5:rom = 5;
6:rom = 6;
7:rom = 7;
8:rom = 8;
9:rom = 9;
10:rom = 10;
11:rom = 11;
12:rom = 12;
13:rom = 13;
14:rom = 14;
15:rom = 15;
default: rom=4'hxx;
endcase
endfunction
assign data_out=rom(data_in);
endmodule 在DE2上跑了,没什么问题但不知道是不是你说的意思 distribute ram可以。你的ROM不大,占不了多少资源。 stdio 发表于 2013-9-6 17:59 static/image/common/back.gif
distribute ram可以。你的ROM不大,占不了多少资源。
本来是256*8bit的一个rom,我没有都写上,空间不够
而系统需要40个这样的ROM,如果全用硬件资源,太占空间了
片上的RAM不用也很浪费 when90 发表于 2013-9-6 17:25 static/image/common/back.gif
在DE2上跑了,没什么问题但不知道是不是你说的意思
你这个和我贴的那个有什么区别?
不都是用LE去实现的吗
页:
[1]