作者nopicnic (nopicnic)
看板Electronics
标题[问题] verilog register file
时间Sat Apr 10 01:38:17 2010
各位先进好,我是刚入门的学生。
遇到了一点观念上的问题,助教给予的register file
输入为32bits的值,输出为8bits,请问当输入超过255时,输出为??
附上code
`timescale 1ns/10ps
module RegFile(enable,clk,reset,DataInput,RegIndex,
RegOutput0,RegOutput1,RegOutput2,RegOutput3,RegOutput4,
RegOutput5,RegOutput6,RegOutput7,RegOutput8);
input enable,clk,reset;
input[31:0] DataInput;
input[3:0] RegIndex;output[7:0] RegOutput0,RegOutput1,RegOutput2,
RegOutput3,RegOutput4,RegOutput5,RegOutput6,RegOutput7,RegOutput8;
reg[7:0] RegOutput0;
reg[7:0] RegOutput1;
reg[7:0] RegOutput2;
reg[7:0] RegOutput3;
reg[7:0] RegOutput4;
reg[7:0] RegOutput5;
reg[7:0] RegOutput6;
reg[7:0] RegOutput7;
reg[7:0] RegOutput8;
reg[31:0] Mreg[15:0];
integer i;
always@(negedge clk)begin
if(reset)begin
for(i=0;i<16;i=i+1)
Mreg[i]=0;
end
else begin
if(enable) Mreg[RegIndex]=DataInput;
else begin
RegOutput0<=Mreg[0];
RegOutput1<=Mreg[1];
RegOutput2<=Mreg[2];
RegOutput3<=Mreg[3];
RegOutput4<=Mreg[4];
RegOutput5<=Mreg[5];
RegOutput6<=Mreg[6];
RegOutput7<=Mreg[7];
RegOutput8<=Mreg[8];
/*****我就是上面这里不懂...RegOutput0 他们不是8bit吗..那为什麽可以将32bit的Mreg的
资料传进去...???*******************/
end
end
end
endmodule
麻烦各位高手们~~帮小弟解答吧
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.39.156.225
1F:推 tkhan:现在学生都不跑simulation找结果吗?..有问题就直接问?.. 04/10 07:41
2F:推 sasako:bit数宣告错了 不过32bit可以给8bit 就後面8bit给值吧 04/10 10:46
3F:→ sasako:前面32bit就浪费了 simulation应该还是会有warning 04/10 10:47
4F:→ sasako: ^更正 是24bit 04/10 10:48
5F:→ nopicnic:没错 会有warning~~抱歉因为手边没有能跑程式的电脑 04/11 00:42
6F:→ nopicnic:因为急着想知道...谢谢回答的人~~^^ 04/11 00:43
7F:→ nopicnic:只是实在是没办法跑模拟.......>"<抱歉 04/11 00:43
8F:推 CompileUltra:addr也有点奇怪 index input 4 bit, mem却宣告16bit? 04/11 01:56
9F:推 pupucar:楼上的是16个32bit记忆体index 4bit对应16没错 04/11 02:49