提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
前言
一、Build a circuit from a simulation waveform
1.Combinational circuit 1
Practice:This is a combinational circuit. Read the simulation waveforms to determine what the circuit does, then implement it.
翻译:
这是一个组合电路。读取仿真波形来确定电路的功能,然后实现它。
Solution(不唯一,仅供参考):
module top_module (
input a,
input b,
output q );//
assign q = a & b; // Fix me
endmodule
Timing Diagram
2.Combinational circuit 2
Practice:
This is a combinational circuit. Read the simulation waveforms to determine what the circuit does, then implement it.
翻译:这是一个组合电路。读取仿真波形来确定电路的功能,然后实现它。
Solution(不唯一,仅供参考):
module top_module (
input a,
input b,
input c,
input d,
output q );//
assign q = ~(a^b^c^d); // Fix me
endmodule
Timing Diagram
3.Combinational circuit 3
Practice:
This is a combinational circuit. Read the simulation waveforms to determine what the circuit does, then implement it.
翻译:
这是一个组合电路。读取仿真波形来确定电路的功能,然后实现它。
Solution(不唯一,仅供参考):
module top_module (
input a,
input b,
input c,
input d,
output q );//
assign q = (a|b)&(d|c); // Fix me
endmodule
Timing Diagram
4.Combinational circuit 4
Practice:This is a combinational circuit. Read the simulation waveforms to determine what the circuit does, then implement it.
翻译:这是一个组合电路。读取仿真波形来确定电路的功能,然后实现它。
Solution(不唯一,仅供参考):
module top_module (
input a,
input b,
input c,
input d,
output q );//
assign q = b|c; // Fix me
endmodule
Timing Diagram
5.Combinational circuit 5
Practice:This is a combinational circuit. Read the simulation waveforms to determine what the circuit does, then implement it.
翻译:这是一个组合电路。读取仿真波形来确定电路的功能,然后实现它。
Solution(不唯一,仅供参考):
module top_module (
input [3:0] a,
input [3:0] b,
input [3:0] c,
input [3:0] d,
input [3:0] e,
output [3:0] q );
always @(*)begin
case(c)
4'b0000: q=b;
4'b0001: q=e;
4'b0010: q=a;
4'b0011: q=d;
default: q=4'hf;
endcase
end
endmodule
Timing Diagram
6.Combinational circuit 6
Practice:
This is a combinational circuit. Read the simulation waveforms to determine what the circuit does, then implement it.
翻译:
这是一个组合电路。读取仿真波形来确定电路的功能,然后实现它。
Solution(不唯一,仅供参考):
module top_module (
input [2:0] a,
output [15:0] q );
always @(*)begin
case(a)
3'd0: q=16'h1232;
3'd1: q=16'haee0;
3'd2: q=16'h27d4;
3'd3: q=16'h5a0e;
3'd4: q=16'h2066;
3'd5: q=16'h64ce;
3'd6: q=16'hc526;
3'd7: q=16'h2f19;
default:;
endcase
end
endmodule
Timing Diagram
7.Sequential circuit 7
Practice:
This is a sequential circuit. Read the simulation waveforms to determine what the circuit does, then implement it.
翻译:
这是一个顺序电路。读取仿真波形来确定电路的功能,然后实现它。
Solution(不唯一,仅供参考):
module top_module (
input clk,
input a,
output reg q );
always @(posedge clk)begin
q<=!a;
end
endmodule
Timing Diagram
8.Sequential circuit 8
Practice:
This is a sequential circuit. Read the simulation waveforms to determine what the circuit does, then implement it.
翻译:
这是一个顺序电路。读取仿真波形来确定电路的功能,然后实现它。
Solution(不唯一,仅供参考):
module top_module (
input clock,
input a,
output reg p,
output reg q );
always @(*)begin
if(clock)
p<=a;
else
p<=p;
end
always @(negedge clock)begin
q<=p;
end
endmodule
Timing Diagram
9.Sequential circuit 9
Practice:
This is a sequential circuit. Read the simulation waveforms to determine what the circuit does, then implement it.
Read the simulation waveforms to determine what the circuit does, then implement it.
翻译:
这是一个顺序电路。读取仿真波形来确定电路的功能,然后实现它。
读取仿真波形来确定电路的功能,然后实现它。
Solution(不唯一,仅供参考):
module top_module (
input clk,
input a,
input b,
output q,
output state );
assign q=a^b^state;
always @(posedge clk)begin
if(a==b)
state<=a;
else
state<=state;
end
endmodule
Timing Diagram
继续加油!!!!!
继续加油!!!!!
继续加油!!!!!
继续加油!!!!!