题解 | #数据选择器实现逻辑电路#

数据选择器实现逻辑电路

https://www.nowcoder.com/practice/00b0d01b71234d0b97dd4ab64f522ed9

首先将L展开为标准最小项之和的形式:L = ABC+ABC'+AB'C'+A'BC

然后对比四选一选择器的输出

若令B=S1, C=S0,要想满足 L 表达式,可令D的取值变化以满足输出Y与L相等。

`timescale 1ns/1ns

module data_sel(
   input             S0     ,
   input             S1     ,
   input             D0     ,
   input             D1     ,
   input             D2     ,
   input             D3     ,
   
   output wire        Y    
);

assign Y = ~S1 & (~S0&D0 | S0&D1) | S1&(~S0&D2 | S0&D3);
     
endmodule

module sel_exp(
   input             A     ,
   input             B     ,
   input             C     ,
   
   output wire       L            
);
   
data_sel c1(
    .S0(C),
    .S1(B),
    .D0(A),
    .D1(0),
    .D2(A),
    .D3(1),
    .Y(L) );

endmodule

全部评论

相关推荐

头像
11-27 14:28
长沙理工大学
刷算法真的是提升代码能力最快的方法吗? 刷算法真的是提升代码能力最快的方法吗?
牛牛不会牛泪:看你想提升什么,代码能力太宽泛了,是想提升算法能力还是工程能力? 工程能力做项目找实习,算法也分数据结构算法题和深度学习之类算法
点赞 评论 收藏
分享
10-09 22:05
666 C++
找到工作就狠狠玩CSGO:报联合国演讲,报电子烟设计与制造
点赞 评论 收藏
分享
评论
1
收藏
分享
牛客网
牛客企业服务