题解 | #四选一多路器#

四选一多路器

https://www.nowcoder.com/practice/cba4617e1ef64e9ea52cbb400a0725a3

`timescale 1ns/1ns
module mux4_1(
input [1:0]d1,d2,d3,d0,
input [1:0]sel,
output[1:0]mux_out
);
//*************code***********//
wire [1:0] line1;
wire [1:0] line2;
assign line1 = (sel[0]) ? d0 : d1;
assign line2 = (sel[0]) ? d2 : d3;
assign mux_out = (sel[1]) ? line1 : line2;
//*************code***********//
endmodule

首先没有看懂是通过哪一个信号来控制四选一的信号的(波形图吗?)。看帖子解释使用sel这个两位的信号来控制的,题目要求使用线网类型的输出,那就是要求使用组合逻辑电路设计,关键字是assign。

sel[0]可以选出来两个信号,当sel[0]为1的时候分别对应信号d0,d2,当sel[0]为0的时候又分别对应d1,d3。然后通过判断sel[1]是1还是0选择line1还是line2。

全部评论

相关推荐

11-08 10:39
门头沟学院 C++
点赞 评论 收藏
分享
10-07 20:48
门头沟学院 Java
听说改名就会有offer:可能是实习上着班想到后面还要回学校给导师做牛马,看着身边都是21-25的年纪,突然emo了了
点赞 评论 收藏
分享
点赞 1 评论
分享
牛客网
牛客企业服务