资源预览内容
第1页 / 共214页
第2页 / 共214页
第3页 / 共214页
第4页 / 共214页
第5页 / 共214页
第6页 / 共214页
第7页 / 共214页
第8页 / 共214页
第9页 / 共214页
第10页 / 共214页
亲,该文档总共214页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
Verilog 语言教程逻辑及语法编辑课件数字系统设计的核心知识数字系统设计的核心知识数字系统设计的核心知识数字系统设计的核心知识 复杂数字系统的构成;复杂数字系统的构成;复杂数字系统的构成;复杂数字系统的构成;根本电路和根本电路和根本电路和根本电路和 Verilog Verilog Verilog Verilog 的对应关系;的对应关系;的对应关系;的对应关系;同步有限状态机在电路中的作用;同步有限状态机在电路中的作用;同步有限状态机在电路中的作用;同步有限状态机在电路中的作用;时钟树与自动综合技术时钟树与自动综合技术时钟树与自动综合技术时钟树与自动综合技术 编辑课件数字逻辑电路的构成数字逻辑电路的构成数字逻辑电路的构成数字逻辑电路的构成-组合逻辑:输出只是输入逻辑电平组合逻辑:输出只是输入逻辑电平组合逻辑:输出只是输入逻辑电平组合逻辑:输出只是输入逻辑电平的函数有延时,与电路的原始的函数有延时,与电路的原始的函数有延时,与电路的原始的函数有延时,与电路的原始状态无关。状态无关。状态无关。状态无关。时序逻辑:输出不只是输入的逻辑电时序逻辑:输出不只是输入的逻辑电时序逻辑:输出不只是输入的逻辑电时序逻辑:输出不只是输入的逻辑电平的函数,还与电路所处的状态有平的函数,还与电路所处的状态有平的函数,还与电路所处的状态有平的函数,还与电路所处的状态有关。关。关。关。同步时序逻辑是在同一时钟跳变节同步时序逻辑是在同一时钟跳变节同步时序逻辑是在同一时钟跳变节同步时序逻辑是在同一时钟跳变节拍的前提下,如输入条件满足,那拍的前提下,如输入条件满足,那拍的前提下,如输入条件满足,那拍的前提下,如输入条件满足,那么进入下一状态,否那么仍留在原么进入下一状态,否那么仍留在原么进入下一状态,否那么仍留在原么进入下一状态,否那么仍留在原来的状态的状态机。来的状态的状态机。来的状态的状态机。来的状态的状态机。编辑课件数字逻辑电路的构成数字逻辑电路的构成数字逻辑电路的构成数字逻辑电路的构成-组合逻辑:由与、或、非门组成的网络。常组合逻辑:由与、或、非门组成的网络。常组合逻辑:由与、或、非门组成的网络。常组合逻辑:由与、或、非门组成的网络。常用的有:多路器、数据通路开关、加法器、用的有:多路器、数据通路开关、加法器、用的有:多路器、数据通路开关、加法器、用的有:多路器、数据通路开关、加法器、乘法器等,没有记忆功能。乘法器等,没有记忆功能。乘法器等,没有记忆功能。乘法器等,没有记忆功能。-时序逻辑:时序逻辑:时序逻辑:时序逻辑:由多个触发器和多个组合逻辑由多个触发器和多个组合逻辑由多个触发器和多个组合逻辑由多个触发器和多个组合逻辑块组成的网络。常用的有:计数器、复杂的块组成的网络。常用的有:计数器、复杂的块组成的网络。常用的有:计数器、复杂的块组成的网络。常用的有:计数器、复杂的数据流动控制逻辑、运算控制逻辑、指令分数据流动控制逻辑、运算控制逻辑、指令分数据流动控制逻辑、运算控制逻辑、指令分数据流动控制逻辑、运算控制逻辑、指令分析和操作控制逻辑。同步时序逻辑的设计是析和操作控制逻辑。同步时序逻辑的设计是析和操作控制逻辑。同步时序逻辑的设计是析和操作控制逻辑。同步时序逻辑的设计是设计复杂的数字逻辑系统的核心。设计复杂的数字逻辑系统的核心。设计复杂的数字逻辑系统的核心。设计复杂的数字逻辑系统的核心。-存储器和存放器:用于暂时存储数据信息。存储器和存放器:用于暂时存储数据信息。存储器和存放器:用于暂时存储数据信息。存储器和存放器:用于暂时存储数据信息。编辑课件组合逻辑举例之一组合逻辑举例之一组合逻辑举例之一组合逻辑举例之一一个八位数据通路控制器一个八位数据通路控制器一个八位数据通路控制器一个八位数据通路控制器一个八位数据通路控制器一个八位数据通路控制器defineON1b1defineON1b1defineON1b1defineOFF1b0defineOFF1b0defineOFF1b0wireControlSwitch;wireControlSwitch;wireControlSwitch;wire7:0out,in;wire7:0out,in;wire7:0out,in;assignout=(ControlSwith=ON)?in:8h00assignout=(ControlSwith=ON)?in:8h00assignout=(ControlSwith=ON)?in:8h00in7in7in7ControlSwitchControlSwitchControlSwitchout7out7out7in0in0in0out0out0out0.编辑课件一个八位数据通路控制器的波形:一个八位数据通路控制器的波形:一个八位数据通路控制器的波形:一个八位数据通路控制器的波形:一个八位数据通路控制器的波形:一个八位数据通路控制器的波形:in 7:0in 7:0开开关关out7:0out7:0tttt3131 02021515 32326262 8888 02021515 3232 00 00 00 00in7in7in7ControlSwitchControlSwitchControlSwitchout7out7out7in0in0in0out0out0out0.编辑课件带存放器的八位数据通路控制器的波形带存放器的八位数据通路控制器的波形带存放器的八位数据通路控制器的波形带存放器的八位数据通路控制器的波形带存放器的八位数据通路控制器的波形带存放器的八位数据通路控制器的波形in7in7ControlSwitchControlSwitchout7out7CLOCKCLOCKDDQ7Q7CLOCKCLOCKin0in0ControlSwitchControlSwitchout0out0DDQ0Q0out7out7out0out0编辑课件带存放器的八位数据通路控制器的带存放器的八位数据通路控制器的带存放器的八位数据通路控制器的带存放器的八位数据通路控制器的带存放器的八位数据通路控制器的带存放器的八位数据通路控制器的VerilogVerilogVerilog描述描述描述描述描述描述defineON1b1defineON1b1defineON1b1defineOFF1b0defineOFF1b0defineOFF1b0wireControlSwitch;wireControlSwitch;wireControlSwitch;wireclockwireclockwireclockwire7:0out,in;wire7:0out,in;wire7:0out,in;always(posedgeclock)always(posedgeclock)always(posedgeclock)if(ControlSwith=ON)if(ControlSwith=ON)if(ControlSwith=ON)out=in;out=in;out=in;elseelseelseout=out;out=out;out=out;编辑课件带复位端和使能端的存放器带复位端和使能端的存放器带复位端和使能端的存放器带复位端和使能端的存放器带复位端和使能端的存放器带复位端和使能端的存放器 module regena(clock,ena,reset,R,Q);module regena(clock,ena,reset,R,Q);parameter n=8;parameter n=8;input n-1:0 R;input n-1:0 R;input clock,ena reset;input clock,ena reset;output n-1:0 Q;output n-1:0 Q;always(posedge clock or negedge reset)always(posedge clock or negedge reset)if(!reset)if(!reset)Q=0;Q=0;else if(ena)else if(ena)Q=R;Q=R;endmoduleendmoduleenaRclockD Q Qreset编辑课件具有并行置数和使能控制输入的移位存放器具有并行置数和使能控制输入的移位存放器具有并行置数和使能控制输入的移位存放器具有并行置数和使能控制输入的移位存放器具有并行置数和使能控制输入的移位存放器具有并行置数和使能控制输入的移位存放器R1enawclockD Q QresetQ1D QQ0R0load编辑课件具有并行置数和使能控制输入的移位存放器具有并行置数和使能控制输入的移位存放器module shiftregs(R,load,ena,w,clock,Q,reset);module shiftregs(R,load,ena,w,clock,Q,reset);module shiftregs(R,load,ena,w,clock,Q,reset);input 3:0 R;input 3:0 R;input 3:0 R;input w,load,ena,reset,clock;input w,load,ena,reset,clock;input w,load,ena,reset,clock;output 3:0 Q;output 3:0 Q;output 3:0 Q;reg 3:0 Q;reg 3:0 Q;reg 3:0 Q;integer k;integer k;integer k;always(posedge clock or negedge reset)always(posedge clock or negedge reset)always(posedge clock or negedge reset)if(!reset)Q=0;if(!reset)Q=0;if(!reset)Q=0;else if(load)Q=R;else if(load)Q=R;else if(load)Q=R;else if(ena)begin Q0=W;else if(ena)begin Q0=W;else if(ena)begin Q0=W;for(k=1;k4;k+1)for(k=1;k4;k+1)for(k=1;k4;k+1)Qk=Qk-1;Qk=Qk-1;Qk 7ns 7ns 7ns 7ns总延迟总延迟总延迟总延迟=Max2,3+4+1=8=Max2,3+4+1=8=Max2,3+4+1=8=Max2,3+4+1=8时钟周期必须时钟周期必须时钟周期必须时钟周期必须 4ns 4ns 4ns 4ns总处理数据的吞吐量增加总处理数据的吞吐量增加总处理数据的吞吐量增加总处理数据的吞吐量增加#1#1clock编辑课件为什么要设计有限状态机?为什么要设计有限状态机?为什么要设计有限状态机?为什么要设计有限状态机?如果能严格以时钟跳变沿为前提,按排好时时序,如果能严格以时钟跳变沿为前提,按排好时时序,如果能严格以时钟跳变沿为前提,按排好时时序,如果能严格以时钟跳变沿为前提,按排好时时序,如果能严格以时钟跳变沿为前提,按排好时时序,如果能严格以时钟跳变沿为前提,按排好时时序,来操作逻辑系统中每一个开关来操作逻辑系统中每一个开关来操作逻辑系统中每一个开关来操作逻辑系统中每一个开关来操作逻辑系统中每一个开关来操作逻辑系统中每一个开关SiSiSi,那么系统中数,那么系统中数,那么系统中数,那么系统中数,那么系统中数,那么系统中数据的流动和处理会按同一时钟节拍有序地进行,据的流动和处理会按同一时钟节拍有序地进行,据的流动和处理会按同一时钟节拍有序地进行,据的流动和处理会按同一时钟节拍有序地进行,据的流动和处理会按同一时钟节拍有序地进行,据的流动和处理会按同一时钟节拍有序地进行,可以控制冒险和竞争现象对逻辑运算的破坏,时可以控制冒险和竞争现象对逻辑运算的破坏,时可以控制冒险和竞争现象对逻辑运算的破坏,时可以控制冒险和竞争现象对逻辑运算的破坏,时可以控制冒险和竞争现象对逻辑运算的破坏,时可以控制冒险和竞争现象对逻辑运算的破坏,
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号