湖南理工职业技术学院PLD课件(冯鸥)1《数字系统设计与PLD应用技术》本课程是“数字电路与逻辑设计”课程的后续课程,主要阐述数字系统设计方法和PLD应用技术。目的是引导同学:1)从功能电路设计转向系统设计。2)由传统的通用集成电路的应用转向可编程逻辑器件的应用。3)从硬件设计转向硬件软件高度渗透的设计。湖南理工职业技术学院PLD课件(冯鸥)2《数字系统设计与PLD应用技术》---课程介绍在本课程中将介绍:1)数字系统设计方法。2)数字系统的描述方法。其中有a)算法流程图描述方法b)硬件描述语言VHDL(本课程重点)3)各种可编程逻辑器件PLD原理及应用。4)以及采用PLD设计数字系统的多个实例。湖南理工职业技术学院PLD课件(冯鸥)3实验过程中,将安排讲述Altera公司的fpga可编程逻辑设计软件的使用方法。《数字系统设计与PLD应用技术》---课程介绍在本课程的后半学期将安排多次实验。实验主要是让同学采用硬件描述语言VHDL及FPGA器件设计多个数字系统。通过本课程的学习和实验。使同学具备数字系统设计及相关软件编程的能力。从而使同学在完成学业后,可从事相关学科领域的研发工作。湖南理工职业技术学院PLD课件(冯鸥)4《数字系统设计与PLD应用技术》---第一章第一章数字系统设计方法首先介绍有关数字系统的基本概念。最后是“算法流程图”描述方法的介绍。然后讲述数字系统设计的一般步骤、方法。湖南理工职业技术学院PLD课件(冯鸥)5《数字系统设计与PLD应用技术》---第一章集成电路的发展经历了如下几个阶段:而数字系统的实现方法都是根据各个集成电路的时代而展开。小规模(SSI)中规模(MSI)大规模(LSI)超大规模(VLSI)湖南理工职业技术学院PLD课件(冯鸥)6《数字系统设计与PLD应用技术》---第一章随着大规模集成电路的工艺成熟及成本下降,各种数字集成电路经历了通用型--到专用型(ASIC)的变化过程。湖南理工职业技术学院PLD课件(冯鸥)7《数字系统设计与PLD应用技术》---第一章例:Intel的51系列8位单片机中,有通用的8051芯片和专用型的8031芯片。8051芯片是用户可编程的。8031芯片是用户把程序先提供给芯片制造厂家,由厂家在制作芯片的过程中把程序固化在芯片中。湖南理工职业技术学院PLD课件(冯鸥)8《数字系统设计与PLD应用技术》---第一章为了适应用户的需要,专用型集成电路(ASIC)又分为用户全定制和用户半定制两类。全定制适合于批量大的产品中。用户设计好一个系统,再由芯片制造厂直接制作到一个芯片中。半定制适合于批量小的产品,或产品的初级阶段。用户利用芯片制造厂的半成品,把设计的系统构造于半成品中。全定制成本低。半定制成本高。(用户可能只使用了半成品中的部分功能就实现了设计的系统功能。)湖南理工职业技术学院PLD课件(冯鸥)9《数字系统设计与PLD应用技术》---第一章可编程逻辑器件(ProgrammableLogicDevice,PLD)是半定制ASIC中的重要分支。可编程是指对逻辑电路可由用户设计(非软件中的程序编制)。用户可在现场对芯片编程,以实现用户所需的系统。湖南理工职业技术学院PLD课件(冯鸥)10《数字系统设计与PLD应用技术》---第一章1.11.1绪言1.1.1数字系统的基本概念数字系统(存储、传输、处理)X数字量输入Y数字量输出数字系统示意图湖南理工职业技术学院PLD课件(冯鸥)11《数字系统设计与PLD应用技术》---第一章1.1数字系统功能:对数字量的存储、传输、处理数字系统可以为小到只是一个特定的逻辑部件,大到一个大型的数字计算机系统。湖南理工职业技术学院PLD课件(冯鸥)12《数字系统设计与PLD应用技术》---第一章1.1数字系统构成:可以是逻辑门(74系列的SSI)或MSI、LSI等功能部件直至CPU系列湖南理工职业技术学院PLD课件(冯鸥)13《数字系统设计与PLD应用技术》---第一章1.1数字系统组成:(注意:有无控制部件是区分数字系统和数字逻辑的标志)必须要有一个控制部件,来调度各功能部件。按一定的程序和规则工作。大的数字系统可能由若干个数字子系统构成。湖南理工职业技术学院PLD课件(冯鸥)14《数字系统设计与PLD应用技术》---第一章1.1相对于数字系统的是模拟系统:模拟系统XY模拟量输入模拟量输出(对模拟信号量进行变换和处理)湖南理工职业技术学院PLD课件(冯鸥)15《数字系统设计与PLD应用技术》---第一章1.1数字系统的特点:1.稳定性:处理对象是电平高电平大于3.8V,表示“1”;低电平小于0.8V,表示“0”。2.精确性:可通过增加数据处理的位数,提高精度。3.可靠性:通过检错、纠错和编码等信息冗余技术,可增加多机系统并行工作,提高系统的可靠性。湖南理工职业技术学院PLD课件(冯鸥)16《数字系统设计与PLD应用技术》---第一章1.14.模块化操作:由于数字系统中处理的是“1”和“0”(高电平和低电平),只需进行基本的算术运算和逻辑操作,就可实现预定的逻辑功能。湖南理工职业技术学院PLD课件(冯鸥)17《数字系统设计与PLD应用技术》---第一章1.11.1.2数字系统的基本模型1.数字系统的动态模型采用传统的数字电路描述方法建立起来的系统模型。指用状态转换图、状态转换表、状态方程组、输出方程组、真值表、卡诺图。湖南理工职业技术学院PLD课件(冯鸥)18湖南理工职业技术学院PLD课件(冯鸥)19《数字系统设计与PLD应用技术》---第一章1.1例:有数字系统(DS)XZDSCP脉冲输入输出,时间的函数湖南理工职业技术学院PLD课件(冯鸥)20《数字系统设计与PLD应用技术》---第一章1.1时序图如下:0123456789Z(0)Z(2)Z(4)Z(5)Z(8)Z(1)Z(3)Z(6)Z(7)X(1)X(2)X(6)X(0)X(3)X(4)X(5)X(7)X(8)Z(t)X(t)CPttt湖南理工职业技术学院PLD课件(冯鸥)21《数字系统设计与PLD应用技术》---第一章1.1分析波形图得:CP123456789…X100111011…Z010100110…可看出,Z不仅与X的当前状态有关,还和X以前的状态有关。湖南理工职业技术学院PLD课件(冯鸥)22《数字系统设计与PLD应用技术》---第一章1.1因此可得,输出Z的函数即Z(t)=F1[X(t),S(t-1)]S(t):表示状态变量,记录X过去的输入这样Z(t)不仅是当前输入X(t)的函数,也是过去的S(t-1)的函数。同时又有状态转换方程(次态方程)S(t)=F2[X(t-1),S(t-1)]湖南理工职业技术学院PLD课件(冯鸥)23《数字系统设计与PLD应用技术》---第一章1.1用S0和S1分别表示X的状态,其中S0表示X的状态为0,S1表示X的状态为1。得出:X(t):100111011…S(t):S1S0S0S1S1S1S0S1S1…Z(t):010100110…湖南理工职业技术学院PLD课件(冯鸥)24《数字系统设计与PLD应用技术》---第一章1.110S1S0当前输入X(t)前态S(t-1)状态转换表为:现态S(t)/输出Z(t)状态方程组为:Z(t)=F1[X(t),S(t-1)]S(t)=F2[X(t),S(t-1)]S0/0S1/1S0/1S1/0湖南理工职业技术学院PLD课件(冯鸥)25《数字系统设计与PLD应用技术》---第一章1.1即:X发生变化时,输出Z为1,否则Z为0Z(t)={1若X(t1)到X(t)发生01,或10变化0其余情况得出,状态转换图:SiX/ZS0S11/10/10/01/0湖南理工职业技术学院PLD课件(冯鸥)26《数字系统设计与PLD应用技术》---第一章1.1状态转换图、状态转换表、状态方程组完整描述数字系统的动态过程,称作动态模型。而状态转换图、状态转换表、状态方程组是建立时序电路动态模型的工具。对组合电路而言,由于Z(t)仅取决于输入X(t),与过去的状态无关,故输出函数为Z(t)=F[X(t)],其建立动态模型的工具一般为真值表、卡诺图。湖南理工职业技术学院PLD课件(冯鸥)27例1.1例1.2湖南理工职业技术学院PLD课件(冯鸥)28x0x1s(t-1)S(t)/Z(t)s0S0/0S1/0S2/1S3/0S0/0s1s2100100s3S3/0S2/1S1/0S1/0S0/0S2/1S3/0湖南理工职业技术学院PLD课件(冯鸥)29s0s1s2s300/000/001/010/010/000/010/010/101/000/101/101/0SiX1X0/Z湖南理工职业技术学院PLD课件(冯鸥)30《数字系统设计与PLD应用技术》---第一章1.12.数字系统的算法模型一般来说动态模型只适合较简单的数字系统。而对于较复杂的数字系统,因输入变量、输出变量和状态数的急剧增加,动态模型较难适应。对于较复杂的数字系统,借鉴软件程序设计中的流程图方法,采用“系统算法模型”来描述和设计数字系统。湖南理工职业技术学院PLD课件(冯鸥)31《数字系统设计与PLD应用技术》---第一章1.1系统算法模型的基本思想:1.将功能对应于某种运算。2.将复杂运算尽量化解为一般简单运算。3.然后按一定的规律,顺序地或并行地执行这些简单运算湖南理工职业技术学院PLD课件(冯鸥)32《数字系统设计与PLD应用技术》---第一章系统算法模型的基本特征:1.含有若干个子运算,实现对欲处理数据或信息的转输、存储或加工处理。2.具有相应的控制序列,控制子运算按一定规律有序地进行。递归思想湖南理工职业技术学院PLD课件(冯鸥)33《数字系统设计与PLD应用技术》---第一章1.1例:有数字系统(DS)XZDSCP脉冲输入输出,时间的函数(采用算法模型设计)湖南理工职业技术学院PLD课件(冯鸥)34《数字系统设计与PLD应用技术》---第一章1.1各信号相互关系如下:0123456789Z(0)Z(2)Z(4)Z(5)Z(8)Z(1)Z(3)Z(6)Z(7)X(1)X(2)X(6)X(0)X(3)X(4)X(5)X(7)X(8)Z(t)X(t)CPttt湖南理工职业技术学院PLD课件(冯鸥)35《数字系统设计与PLD应用技术》---第一章1.1即:X发生变化时,输出Z为1,否则Z为0Z(t)={1若X(t1)到X(t)发生01,或10变化0其余情况采用算法模型设计的思想是,增设两个存储单元R1和R2,分别存放输入信号X在(t-1)和(t)时刻的数据,再增设一个比较器COM,对X(t-1)和X(t)的数值进行比较,从而根据结果使Z输出不同的值。即:X(t-1)=X(t)时输出Z=0X(t-1)=X(t)时输出Z=1湖南理工职业技术学院PLD课件(冯鸥)36编程思想:•设定2个寄存器R1、R2,分别存储当前时刻和前一时刻的输入数值;•按照时间I顺序,一个一个的读入输入数据X(I);•设立比较器,比较R1、R2,根据比较结果输出Z.湖南理工职业技术学院PLD课件(冯鸥)37《数字系统设计与PLD应用技术》---第一章1.1不提倡,在不同的时刻需读取同一个时刻的外部数据系统的算法流程图2:开始I=0Z=0R1X(i)ii+1R2X(i)比较R1和R2R1=R2?Z=0Z=1YesNo12345687tIX(I)R1R2Z00X(0)不确定不确定0tIX(I)R1R2Z00X(0)X(0)不确定0tIX(I)R1R2Z11X(1)X(0)不确定0tIX(I)R1R2Z11X(1)X(0)X(1)0tIX(I)R1R2Z1+△t1X1X(0)X(1)DIF(X0,X1)湖南理工职业技术学院PLD课件(冯鸥)38《数字系统设计与PLD应用技术》---第一章1.1系统的算法流程图:开始I=0Z=0R1X(i)R2R1ii+1R1X(i)比较R1和R2R1=R2?Z=0Z=1YesNo123456798IX(I)R1R2Z0X(0)不确定不