verilog4位数字进制转换的设计

2025-03-12 16:52:50
推荐回答(1个)
回答1:

输出是是什么?
猜测一下,输出是2个4bit的二进制,分别表示高位,和低位。代码参考如下:

module bin2dec(di, typ, do_msb, do_lsb);
input [3:0] di;
input typ;
output [3:0] do_msb, do_lsb;

always@(*)
if (typ) //十进制输出
begin
if (di >= 4'd10)
begin
do_msb = 4'd1;
do_lsb = di - 4'd10;
else
begin
do_msb = 4'd0;
do_lsb = di;
end
end
else //八进制输出
begin
do_msb = {3'b0, di[3]};
do_lsb = {1'b0, di[2:0]};
end

endmodule