verilog数字系统设计教程课件1优质PPT.ppt
《verilog数字系统设计教程课件1优质PPT.ppt》由会员分享,可在线阅读,更多相关《verilog数字系统设计教程课件1优质PPT.ppt(69页珍藏版)》请在冰豆网上搜索。
-时序逻辑时序逻辑时序逻辑时序逻辑:
输出不只是输入的逻辑电平输出不只是输入的逻辑电平输出不只是输入的逻辑电平输出不只是输入的逻辑电平的函数,还与电路所处的状态有关。
的函数,还与电路所处的状态有关。
同步时序逻辑是在同一时钟跳变节拍的前提下,同步时序逻辑是在同一时钟跳变节拍的前提下,同步时序逻辑是在同一时钟跳变节拍的前提下,同步时序逻辑是在同一时钟跳变节拍的前提下,同步时序逻辑是在同一时钟跳变节拍的前提下,同步时序逻辑是在同一时钟跳变节拍的前提下,如输入条件满足,则进入下一状态,否则仍留如输入条件满足,则进入下一状态,否则仍留如输入条件满足,则进入下一状态,否则仍留如输入条件满足,则进入下一状态,否则仍留如输入条件满足,则进入下一状态,否则仍留如输入条件满足,则进入下一状态,否则仍留在原来的状态的状态机。
在原来的状态的状态机。
数字逻辑电路的构成数字逻辑电路的构成数字逻辑电路的构成数字逻辑电路的构成-组合逻辑组合逻辑组合逻辑组合逻辑:
由与、或、非门组成的网络。
常用的有:
多路器、数据通路开关、加法器、乘法器等,没有记忆功多路器、数据通路开关、加法器、乘法器等,没有记忆功多路器、数据通路开关、加法器、乘法器等,没有记忆功多路器、数据通路开关、加法器、乘法器等,没有记忆功多路器、数据通路开关、加法器、乘法器等,没有记忆功多路器、数据通路开关、加法器、乘法器等,没有记忆功能。
能。
由多个触发器和多个组合逻辑块组成的网由多个触发器和多个组合逻辑块组成的网由多个触发器和多个组合逻辑块组成的网由多个触发器和多个组合逻辑块组成的网由多个触发器和多个组合逻辑块组成的网由多个触发器和多个组合逻辑块组成的网络。
计数器、复杂的数据流动控制逻辑、运算络。
计数器、复杂的数据流动控制逻辑、运算控制逻辑、指令分析和操作控制逻辑。
同步时序逻辑的设控制逻辑、指令分析和操作控制逻辑。
同步时序逻辑的设计是设计复杂的数字逻辑系统的核心。
计是设计复杂的数字逻辑系统的核心。
-存储器和寄存器存储器和寄存器存储器和寄存器存储器和寄存器:
用于暂时存储数据信息。
组合逻辑举例之一组合逻辑举例之一组合逻辑举例之一组合逻辑举例之一一个八位数据通路控制器一个八位数据通路控制器一个八位数据通路控制器一个八位数据通路控制器一个八位数据通路控制器一个八位数据通路控制器defineON1b1defineON1b1defineON1b1defineOFF1b0defineOFF1b0defineOFF1b0wirewirewireControlSwitchControlSwitchControlSwitch;
wire7:
0out,in;
assignout=(assignout=(assignout=(ControlSwithControlSwithControlSwith=ON)?
in:
8h00=ON)?
8h00in7in7in7ControlSwitchControlSwitchControlSwitchout7out7out7in0in0in0out0out0out0.一个八位数据通路控制器的波形:
一个八位数据通路控制器的波形:
in7:
0in7:
0开开关关out7:
0out7:
0tttt31310202151532326262888802021515323200000000in7in7in7ControlSwitchControlSwitchControlSwitchout7out7out7in0in0in0out0out0out0.带寄存器的八位数据通路控制器的波形带寄存器的八位数据通路控制器的波形带寄存器的八位数据通路控制器的波形带寄存器的八位数据通路控制器的波形带寄存器的八位数据通路控制器的波形带寄存器的八位数据通路控制器的波形in7in7ControlSwitchControlSwitchout7out7CLOCKCLOCKDDQ7Q7CLOCKCLOCKin0in0ControlSwitchControlSwitchout0out0DDQ0Q0out7out7out0out0带寄存器的八位数据通路控制器的带寄存器的八位数据通路控制器的带寄存器的八位数据通路控制器的带寄存器的八位数据通路控制器的带寄存器的八位数据通路控制器的带寄存器的八位数据通路控制器的VerilogVerilogVerilog描述描述描述描述描述描述defineON1b1defineON1b1defineON1b1defineOFF1b0defineOFF1b0defineOFF1b0wirewirewireControlSwitchControlSwitchControlSwitch;
wireclockwireclockwireclockwire7:
always(always(always(posedgeposedgeposedgeclock)clock)clock)if(if(if(ControlSwithControlSwithControlSwith=ON)=ON)=ON)out=in;
out=in;
elseelseelseout=out;
out=out;
带复位端和使能端的寄存器带复位端和使能端的寄存器带复位端和使能端的寄存器带复位端和使能端的寄存器带复位端和使能端的寄存器带复位端和使能端的寄存器modulemoduleregenaregena(clock,(clock,enaena,reset,R,Q);
reset,R,Q);
parametern=8;
inputn-1:
0R;
inputclock,inputclock,enaenareset;
reset;
outputn-1:
0Q;
always(always(posedgeposedgeclockorclockornegedgenegedgereset)reset)if(!
reset)if(!
reset)Q=0;
Q=0;
elseif(elseif(enaena)Q=R;
Q=R;
endmoduleendmoduleenaRclockDQQreset具有并行置数和使能控制输入的移位寄存器具有并行置数和使能控制输入的移位寄存器具有并行置数和使能控制输入的移位寄存器具有并行置数和使能控制输入的移位寄存器具有并行置数和使能控制输入的移位寄存器具有并行置数和使能控制输入的移位寄存器R1enawclockDQQresetQ1DQQ0R0load具有并行置数和使能控制输入的移位寄存器具有并行置数和使能控制输入的移位寄存器modulemodulemoduleshiftregsshiftregsshiftregs(R,load,(R,load,(R,load,enaenaena,w,clock,Q,reset);
w,clock,Q,reset);
input3:
inputw,load,inputw,load,inputw,load,enaenaena,reset,clock;
reset,clock;
output3:
regregreg3:
3:
integerk;
always(always(always(posedgeposedgeposedgeclockorclockorclockornegedgenegedgenegedgereset)reset)reset)if(!
if(!
elseif(load)Q=R;
elseif(elseif(elseif(enaenaena)beginQ0=W;
)beginQ0=W;
for(k=1;
k4;
k+1)for(k=1;
k+1)Qk=Qk-1;
Qk=Qk-1;
Qk7777nsnsnsns总延迟总延迟总延迟总延迟=Max2,3+4+1=8Max2,3+4+1=8Max2,3+4+1=8Max2,3+4+1=8时钟周期必须时钟周期必须时钟周期必须时钟周期必须4444nsnsnsns总处理数据的吞吐量增加总处理数据的吞吐量增加总处理数据的吞吐量增加总处理数据的吞吐量增加#1#1clock为什么要设计有限状态机?
为什么要设计有限状态机?
如果能严格以时钟跳变沿为前提,按排好时时序,如果能严格以时钟跳变沿为前提,按排好时时序,如果能严格以时钟跳变沿为前提,按排好时时序,如果能严格以时钟跳变沿为前提,按排好时时序,如果能严格以时钟跳变沿为前提,按排好时时序,如果能严格以时钟跳变沿为前提,按排好时时序,来操作逻辑系统中每一个开关来操作逻辑系统中每一个开关来操作逻辑系统中每一个开关来操作逻辑系统中每一个开关来操作逻辑系统中每一个开关来操作逻辑系统中每一个开关S