用verilog编写一个最简单的加减乘除的计算器的程序

用verilog编写一个最简单的加减乘除的计算器的程序,第1张

verilog是有加法器乘法器的。也直接识别 + - * / 符号。

module kjasdja(a,option,b,result)

input option,a,b

output result

always @(a,b,option)

begin

result_r=0 //结果寄存器清零

case(option)

+:result_r=a+b

-:result_r=a-b

*:result_r=a*b

/:result_r=a/b

assign result =result_r

endmodule

大概算法就腔桥拦这样。写的仓促,语法可能消扒有误。另外除法reg类型只能存储整数部分,小数通过移位 *** 作实伍胡现,比较麻烦。比如3/5=0.6

做的时候先3=30,然后30/5=6,然后对6在数码管的显示进行调整就好。把6显示在小数点后面1位就好

1

module sig2component(clk, rst_n, din, dout)

inputclk

inputrst_n

input [7:0]din

output [7:0] dout

always @ (posedge clk or negedge rst_n)

if (!rst_n)

dout <= 0

else if (din[7]) begin

dout[6:0] <= ~din[6:0] + 7'游猜d1

dout[7] <= din[7]

end

else

dout <神型型= din

endmodule

2

module compare(clk, rst_n, din, flag_out)

input clk, rst_n

input [3:0]din

output flag_out

always @ (posedge clk or negedge rst_n)

if (!rst_n)

flag_out <= 0

else if (din >租念 4'd4)

flag_out <= 1'b1

else

flag_out <= 1'b0


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12398894.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存