赞
踩
本人Verilog新手上路,以下是一些基础模块,实验中肯定会出现差错,欢迎指正。
代码如下:
- //选择器(mux4-1)的代码,
- module mux(
- IN0 , // input 1
- IN1 , // input 2
- IN2 , // input 3
- IN3 , // input 4
- SEL , // 选择
- OUT ); // 输出
- parameter WL = 16; // 输入输出数据信号位宽
- input [WL-1:0] IN0, IN1, IN2, IN3;// 选择器的两个输入数据信号
- input [1:0] SEL; // 通道选通的控制信号
- output[WL-1:0] OUT; // 选择器的输入数据信号
-
- reg [WL-1:0] OUT;
- // 生成组合逻辑的代码
- always @ (IN0 or IN1 or IN2 or IN3 or SEL) begin
- case(SEL)
- 2'b00: OUT = IN0;
- 2'b01: OUT = IN1;
- 2'b10: OUT = IN2;
- 2'b11: OUT = IN3;
- endcase
- end
- endmodule
- // endmodule mux
其中,资源消耗是2选1MUX的两倍。(编译报告显示:4选1MUX使用逻辑总元件数为32,2选1MUX使用逻辑总元件数为16)
代码如下:
- // module top, a 4x4 crossbar switch circuit
-
- module crossbar(
- IN0 , // input 1
- IN1 , // input 2
- IN2 , // input 3
- IN3 , // input 4
- SEL0 , // select the output0 source
- SEL1 , // select the output1 source
- SEL2 , // select the output2 sourse
- SEL3 , // select the output3 sourse
- OUT0 , // output data 0
- OUT1 , // output data 1
- OUT2 , // output data 2
- OUT3 ); // output data 3
-
- parameter WL = 2;
- input [WL-1:0] IN0, IN1, IN2, IN3;
- input [1:0]SEL0, SEL1, SEL2, SEL3;
- output[WL-1:0] OUT0, OUT1, OUT2, OUT3;
-
- reg [WL-1:0] OUT0, OUT1, OUT2, OUT3;
- // get the OUT0
- always @ (IN0 or IN1 or IN2 or IN3 or SEL0) begin
- case(SEL0)
- 2'b00: OUT0 = IN0;
- 2'b01: OUT0 = IN1;
- 2'b10: OUT0 = IN2;
- 2'b11: OUT0 = IN3;
- endcase
- end
- // get the OUT1
- always @ (IN0 or IN1 or IN2 or IN3 or SEL1) begin
- case(SEL1)
- 2'b00: OUT1 = IN0;
- 2'b01: OUT1 = IN1;
- 2'b10: OUT1 = IN2;
- 2'b11: OUT1 = IN3;
- endcase
- end
- // get the OUT2
- always @ (IN0 or IN1 or IN2 or IN3 or SEL2) begin
- case(SEL2)
- 2'b00: OUT2 = IN0;
- 2'b01: OUT2 = IN1;
- 2'b10: OUT2 = IN2;
- 2'b11: OUT2 = IN3;
- endcase
- end
- // get the OUT3
- always @ (IN0 or IN1 or IN2 or IN3 or SEL3) begin
- case(SEL3)
- 2'b00: OUT3 = IN0;
- 2'b01: OUT3 = IN1;
- 2'b10: OUT3 = IN2;
- 2'b11: OUT3 = IN3;
- endcase
- end
- endmodule
- // endmodule top
4*4交叉开关:编译报告显示,使用16个逻辑总元件
2*2交叉
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。