⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 countu3d5.v

📁 verilog代码集锦.rar
💻 V
字号:
module countu3d5(rst, clk, up, dn, din, dout, par, carry, borrow); input rst, clk, up, dn; input [7:0] din; output [7:0] dout; output par, carry, borrow; reg [7:0] dout; reg par, carry, borrow; wire [8:0] cnt_up, cnt_dn;    reg [7:0] cnt_nxt;      assign  cnt_dn = dout - 3'b101;        assign  cnt_up = dout + 2'b11;         always@(up or dn or din or cnt_dn or cnt_up)         case ({up,dn})               2'b 00 : cnt_nxt = din;               2'b 01 : cnt_nxt = cnt_dn;               2'b 10 : cnt_nxt = cnt_up;               2'b 11 : cnt_nxt = cnt_nxt;          endcase      always @(posedge clk or negedge rst)      begin        if(!rst) begin            dout<=0;            par<=0;            carry<=0;            borrow<=0;        end        else begin            par <= ^cnt_nxt;            carry <= up & cnt_up[8];            borrow <= dn & cnt_dn[8];            dout <= cnt_nxt;        end      endendmodule/*always@(posedge clk or negedge rst)beginif(!rst) begin  dout <= 0;  par <= 0;  carry <= 0;  borrow <= 0;endelse begincase {up, dn}2'b00: dout<=din;2'b01: {carry, dout}<=dout + 2'b11;2'b10: {borrow, dout}<=dout - 3'b101;2'b11: dout<=dout;endcasepar <= ^dout;endassign par = ^dout;end*/

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -