From db9cf544b8cf4c303610acc59c21a3dec346af62 Mon Sep 17 00:00:00 2001 From: Clifford Wolf Date: Fri, 17 Jan 2014 20:06:15 +0100 Subject: Added techlibs/common/pmux2mux.v --- techlibs/common/pmux2mux.v | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 techlibs/common/pmux2mux.v (limited to 'techlibs/common/pmux2mux.v') diff --git a/techlibs/common/pmux2mux.v b/techlibs/common/pmux2mux.v new file mode 100644 index 00000000..9c97245a --- /dev/null +++ b/techlibs/common/pmux2mux.v @@ -0,0 +1,21 @@ +module \$pmux (A, B, S, Y); + +wire [1023:0] _TECHMAP_DO_ = "proc; clean"; + +parameter WIDTH = 1; +parameter S_WIDTH = 1; + +input [WIDTH-1:0] A; +input [WIDTH*S_WIDTH-1:0] B; +input [S_WIDTH-1:0] S; +output reg [WIDTH-1:0] Y; + +integer i; + +always @* begin + Y <= A; + for (i = 0; i < S_WIDTH; i=i+1) + if (S[i]) Y <= B[WIDTH*i +: WIDTH]; +end + +endmodule -- cgit v1.2.3