📄 pathsegment.v
字号:
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 + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -