2進数→10進数

Verilogで2進数から10進数に変換するモジュールを作成してみます。

b2d.v

module b2d(input clock, input reset_n, input [31:0]bindata, output reg [3:0] dig_4, output reg [3:0] dig_3, output reg [3:0] dig_2, output reg [3:0] dig_1);

always@(negedge reset_n or negedge clock)

begin

if (reset_n == 0)

begin

dig_4 = 0;

dig_3 = 0;

dig_2 = 0;

dig_1 = 0;

end

else

begin

dig_1 = ( bindata / 10 ) % 10;

dig_2 = ( bindata / 100 ) % 10;

dig_4 = ( bindata / 1000 ) % 10;

dig_4 = ( bindata / 10000 ) % 10;

end

end

endmodule

アクセスカウンター
アクセスカウンター