加减可控的二进制计数器Verilog HDL
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
module plus_minus_counter(clk,r,q,cout1,cout2,plus,minus);//加减可控的二进制计数器input clk,r,plus,minus;//plus做加法,minus做减法
output [3:0]q;
output cout1,cout2;//cout1为进位输出,cout2为借位输出
reg [3:0]q;
reg cout1,cout2;
always @(posedge clk)
begin
if (r) q=4'b00;
else if(plus && minus)
q=4'b00;
else if(plus)
begin
q=q+1;
if(q==4'b1111)
cout1=cout1+1;
else cout1=cout1;
end
else if(minus)
begin
q=q-1;
if (q==4'b0000)
cout2=cout2+1;
else
cout2=cout2;
end
end
endmodule