pathsegment.v

来自「design compile synthesis user guide」· Verilog 代码 · 共 46 行

V
46
字号
module PathSegment(R1, R2, R3, R4, S2, S1, OP, REGOUT, clk);/* Example for path segmentation */input [15:0] R1, R2, R3, R4;input S2, S1, clk;input OP;output [15:0] REGOUT;reg [15:0] ADATA, BDATA;reg [15:0] REGOUT;reg MODE;wire [15:0] product ;always @(posedge clk)begin : selector_block   case(S1)            1'b0: ADATA <= R1;            1'b1: ADATA <= R2;            default: ADATA <= 16'bx;   endcase   case(S2)            1'b0: BDATA <= R3;            1'b1: BDATA <= R4;            default: ADATA <= 16'bx;   endcaseend/* Only Lower Byte gets multiplied */// instantiate DW02_multDW02_mult #(8,8) U100 (.A(ADATA[7:0]), .B(BDATA[7:0]), .TC(1'b0), .PRODUCT(product));always @(posedge clk)begin : alu_block   case (OP)      1'b0 : begin                REGOUT <= ADATA + BDATA;             end      1'b1 : begin                 REGOUT <= product;             end      default : REGOUT <= 16'bx;   endcaseendendmodule

⌨️ 快捷键说明

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