新人Verilog求教
6、 格雷码数值判断电路:
编写一个Verilog模块,将输入数X的格雷码转换为二进制码,当输入数X满足4<X≤15时,输出Y=1,否则为0。
应该怎么实现呢?我的错误代码如下:
module graycodetobin(Gry,Bin,X,Y);
parameter length = X;
input [length-1:0] Gry;
output [1:0] Y;
input X;
output [length-1:0] Bin;
reg [length-1:0] Bin;
integer i;
always @ (Gry)
begin
Bin[length-1]=Gry[length-1];
for(i=length-2;i>=0;i=i-1)
Bin[i]=Bin[i+1]^Gry[i];
end
if (length>4 && length<=15)
Y=1;
else
Y=0;
endmodule