VL20. 数据选择器实现逻辑电路
描述
请使用此4选1数据选择器和必要的逻辑门实现下列表达式。
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
输入描述
input A ,输出描述
output wire LVerilog 解法, 执行用时: 0ms, 内存消耗: 0KB, 提交时间: 2022-08-06
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 ); wire y; data_sel u_data_sel( .S0 (C), .S1 (0), .D0 (A), .D1 (B), .D2 (), .D3 (), .Y (y) ); assign L = y | (A&B); endmodule
Verilog 解法, 执行用时: 0ms, 内存消耗: 0KB, 提交时间: 2022-08-06
`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 ); wire l; data_sel sev (.S0(A), .S1(B), .D0(C), .D1(C), .D2(C), .D3(C), .Y(l)); assign L = (B&l&(~A))+(A&(~B)&(~l))+(A&B&(~l))+(A&B&l); endmodule
Verilog 解法, 执行用时: 0ms, 内存消耗: 0KB, 提交时间: 2022-08-06
`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 ); wire N_C; not (N_C,C); data_sel ds( .S0(B), .S1(A), .D0('b0), .D1(C), .D2(N_C), .D3(1'b1), .Y(L) ); endmodule
Verilog 解法, 执行用时: 0ms, 内存消耗: 0KB, 提交时间: 2022-08-06
`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 u0( .S0 (C) , .S1 (B) , .D0 (A) , .D1 (1'b0) , .D2 (A) , .D3 (1'b1) , .Y (L) ); endmodule
Verilog 解法, 执行用时: 0ms, 内存消耗: 0KB, 提交时间: 2022-08-06
`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 data_sel_inst ( .S0(B), .S1(A), .D0(1'b0), .D1(C), .D2(~C), .D3(1'b1), .Y (L) ); endmodule