您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > 数字电子技术Chart_7
数字系统设计第7章主要内容7.1数字系统设计概述7.2数字系统设计的常用工具7.3数字系统的实现方法7.4数字系统举例常用工具ASM图和MDS图的描述方法;硬件描述语言VHDL基本结构和设计方法、以及数字系统的实现方法。本章重点一、基本概念7.1数字系统设计概述图7.1数字系统组成框图输入接口控制子系统输出接口输入接口数据子系统输出接口控制信号状态信号控制流数据流时钟输入信息外部输入的控制信号输出信息外部输出的控制信号数字系统数字系统的组成什么是数字系统结构上的特点二、设计的一般过程自顶向下(Top-down)的设计方法明确系统功能确定总体方案导出系统结构编写控制算法系统仿真实现图7.2自顶而下的方法这里的“顶”指系统的功能;“向下”指将系统由大到小、由粗到精进行分解,直至可用基本模块实现。自顶向下设计方法的一般过程大致上可以分为五步7.2数字系统设计的常用工具一、ASM图和MDS图描述方法ASM图的基本符号和结构ASM(AlgorithmicStateMachineChart)图由状态框、判别框(条件分支框)、条件输出框和输入、输出路径构成。(a)ASM图状态框符号(b)状态框组成的ASM图图7.3ASM图的状态框IN-XAC-0Sr=1名称101000001010(P)(Q)(R)状态框一、ASM图和MDS图描述方法判别框(条件分支框)(a)条件分支框符号(b)条件分支表示法图7.4ASM图的条件分支框X10(A)(B)(C)一、ASM图和MDS图描述方法判别框(条件分支框)(a)条件分支框符号(b)条件分支表示法图7.4ASM图的条件分支框X10(A)(B)(C)(a)真值表图解分支法(b)变量优先级分支法图7.5三个分支表示法X1X2(P)11OX(Y)(V)(W)X1(P)10(Y)(V)(W)X210一、ASM图和MDS图描述方法条件输出框图7.6具有条件输出框的ASM图Z1X(P)10(Q)(R)Z2一、ASM图和MDS图描述方法ASM图硬件实现例7.1已知ASM图如图7.7所示,用PLA阵列和一定数量的D触发器实现。图7.7经过状态图分配的ASM图Z1X(P)10(Q)(R)001110Z2ASM图硬件实现根据ASM图,确定存在几种状态ASM图导出状态转换表现态次态输出0000011001111001Ф000010Ф000011Ф00002Q1QX12nQ11nQ1Z2Z表7.1状态转换表ASM图硬件实现由ASM图可得到输出方程最后得到硬件逻辑图121)(QQPZXQQXPZ122)(图7.8图7.7的PLA逻辑电路图D1Q1Q1D2Q2Q2XXZ1Z2CP一、ASM图和MDS图描述方法MDS图MDS图的基本符号和结构状态图到MDS图(a)状态图(b)有输出的MDS图图7.9状态图到MDS图的变化A/01B/11C/00ABCZ2Z2Z1有输出的状态图到MDS图一、ASM图和MDS图描述方法状态图到MDS图有条件输入的MDS图图7.11条件输出ABC1/10/0(a)ABCXX(b)Z=A·X一、ASM图和MDS图描述方法ASM图转换MDS图图7.12(a)ASM图至MDS一例计数器复位START?执行NOYES(A)(B)ABSTARTSTARTCROPR图7.12(b)ASM图至MDS另一例X?W?Z?(A)(B)(C)(D)YESNOYESNOYESNOBCDAXXWXWZ+XZASM图转换MDS图ASM图中的条件输出与MDS图中的条件输出相对应图7.13详细ASM图至MDS图的转换之二START?RUN(A)(B)(C)YESNOCBASTARTSTARTRUN=A·START图7.14详细ASM图至MDS图的转换之三*X?*TE?P?(A)(B)(C)YESNOYESNONOYESB*ACX·P+XX=P+X·P·TEX·P·TE(a)(b)(c)(d)*X?*TE?P?(A)(B)(C)YESNOYESNONOYES(D)B*DC*AP+XX·PTETE二、VHDL硬件描述语言硬件描述语言(HardwareDescriptionLanguage—HDL)RTL语言(RegisterTransferLanguage)GSAL语言(Group-SequentialAlgorithmslanguage)图7.15分组-按序算法·········VHDL语言(VHSICHardwaredescriptionLanguage)VHDL语言是硬件描述语言中抽象程度很高的一种语言,特别便于对整个系统的数学模型的描述。利用VHDL语言设计数字系统的特点利用VHDL语言设计数字系统的特点采用自上而下的设计方法系统可大量采用PLD芯片采用系统早期仿真降低了硬件电路设计难度主要设计文件是用VHDL语言编写的源程序VHDL语言实体(ENTITY),具体的格式如下:VHDL语言的基本结构一个完整的VHDL语言程序通常包含实体(Entity)、结构体(Architecture)、配置(Configuration)、程序包(Package)和库(Library)5个部分。ENTITY实体名IS[类属参数说明;][端口说明;]END实体名;PORT(端口名:方向数据类型;∶∶端口名:方向数据类型);端口说明:IEEE1076标准包中定义了以下常用的端口模式:IN输入,只可以读OUT输出,只可以写BUFFER输出INOUT双向,可以读或写VHDL语言例7.22输入端与非门的实体描述示例。LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYnandISPORT(a:INSTD_LOGIC;b:INSTD_LOGIC;c:OUTSTD_LOGIC);ENDnand;VHDL语言结构体(ARCHITECTURE)结构体分为两部分:结构说明部分和结构语句部分,其具体的描述格式为:ARCHITECTURE结构体名OF实体名IS--说明语句BEGIN--并行语句END结构体名;说明语句:用于对结构体内部使用的信号、常数、数据类型和函数进行定义。例如:ARCHITECTUREbehavOFmuxISSIGNALnel:STD_LOGIC;∶BEGIN∶ENDbehav;VHDL语言例7.3全加器的完整描述示例图7.16电路原理图VHDL语言结构体(ARCHITECTURE)结构体分为两部分:结构说明部分和结构语句部分,其具体的描述格式为:ARCHITECTURE结构体名OF实体名IS--说明语句BEGIN--并行语句END结构体名;说明语句:用于对结构体内部使用的信号、常数、数据类型和函数进行定义。例如:ARCHITECTUREbehavOFmuxISSIGNALnel:STD_LOGIC;∶BEGIN∶ENDbehav;VHDL语言结构体(ARCHITECTURE)结构体分为两部分:结构说明部分和结构语句部分,其具体的描述格式为:ARCHITECTURE结构体名OF实体名IS--说明语句BEGIN--并行语句END结构体名;说明语句:用于对结构体内部使用的信号、常数、数据类型和函数进行定义。例如:ARCHITECTUREbehavOFmuxISSIGNALnel:STD_LOGIC;∶BEGIN∶ENDbehav;VHDL语言程序包、库及配置库(LIBRARY)库是经编译后的数据的集合,用来存放程序包定义、实体定义、结构体定义和配置定义,使设计者可以共享已经编译过的设计结果。库的说明总是放自在设计单元的最前面:LIBRARY库名;程序包(PACKAGE)程序包由标题和包体两部分组成,其结构如下:VHDL语言数据类型的种类VHDL语言的数据对象VHDL语言的数据类型数据类型的转换VHDL语言的运算操作符VHDL语言的主要描述语句顺序语句并行语句VHDL语言的数据类型和运算操作符标号:BLOCK块头{说明部分}BEGIN{并行语句}ENDBLOCK标号;[进程标号:]PROCESS(敏感信号表)[IS][说明区]BEGIN顺序语句ENDPROCESS[进程标号];VHDL语言例7.4由时序逻辑电路构成的模10计数器7.3数字系统的实现方法数字系统通常可以用硬件(Hardware)、软件(Software)和微程序(Micro-Program)方法予以实现。一、硬件控制器的实现方法在MSI硬件实现方法中,常用计数器/移位寄存器模块、译码器模块和少量的逻辑门来实现控制子系统。一、硬件控制器的实现方法例7.5用4位二进制同步可预置加法计数器芯片74LS161(除是异步清0外,其它与74LSl63完全相同)及译码器实现前述数值计算系统的控制子系统。图7.17控制状态图S0S1S2S3S4st′stkk′{C8}{C1C2C5C9}{C6}{C7}{C3C4}一、硬件控制器的实现方法例7.5用4位二进制同步可预置加法计数器芯片74LS161(除是异步清0外,其它与74LSl63完全相同)及译码器实现前述数值计算系统的控制子系统。stkS4(C3,C4)S3(C7)S2(C6)S1(C1,C2,C5,C9)S0(C8)100000CPCLKCLROcSASBSCA0A1A2QAQBQCQDABCD174LS16174LS138Y0Y1Y2Y3Y4LDPT图7.18硬件控制器电路图二、微程序控制器的实现方法基本思想:将系统控制过程按一定的规则(算法)编制成指令性条目并将其存放在控制存储器中,然后一条条将它们取出并转化为系统的各种控制信号,从而实现预定的控制过程。二、微程序控制器的实现方法例7.6用微程序设计方法实现前述数值计算系统的控制子系统。解:该系统共有5个状态、2个条件(st,k)、9个控制信号。5个状态,需要3位二进制编码,即n=3;2个条件,9个控制信号,即p=2,m=9;所需ROM的地址为n+p=3+2=5位,ROM单元数为2n+p=25=32个(实际上,3位编码中,只用000~100五种,故实际只需要5×2×2=5×4=20个单元);ROM字长为n+m=3+9=12位,ROM容量为2n+p×(n+m)=32×12位。二、微程序控制器的实现方法二、微程序控制器的实现方法图7.20微程序控制器电路A0A1A2A4A3A5A6A7A8A9A10A11D2D4D0D1D3D5D6D7ACCGNDCSOEA0A1A2A4A3A5A6A7A8A9A10A11D2D4D0D1D3D5D6D7ACCGNDCSOE+5V+5VC1C2C3C4C5C6C7C8C9D2D0D1D3Q2Q0Q1Q3stkCPCLR2732(H)2732(L)74LS1757.4数字系统设计举例首先从系统级分析入手,确定初步方案;然后将设计细分,进行模块划分;直至用VHDL进行综合;编写控制算法,实现系统仿真。其过程大致分为三步:系统调研,确定初步方案;模块划分,确定详细方案;选用模块,完成具体设计。数字密码引爆系统设计实例系统概述数字密码引爆器的密码将采用三个十进制数字,当三个数字输入正确后,就可以正确引爆起爆装置。当输入密码不正确时,多一位或少一位十进制数据都不会引爆,将产生错误,使系统报警,增加了系统的可靠性。系统功能描述与使用要求输入信号及电路输出信号及电路确定系统的基本方案数字密码引爆系统设计实例设计步骤与过程数字密码引爆器顶层设计顶层方案设计输入电路描述引爆过程顶层实体的VHDL程序顶层结构体的设计及VHDL实现A0A1A2A3A4A5A6A7A8A9OSCCFIREREADYSETUPWAIT_TVCCLTRTA-G引爆系统图7.21数字密码引爆器顶层框图数字密码引爆系统设计实例图7.22数字密码引爆器部分结构框图A0A1A2A3A4A5A6A7A8A9A00A10A20A30A40A50A60A70A80A90A01A11A21A31A41A51A61A71A81A91A-GE1E2E3E4B1B2B3B4DepZ1Z
本文标题:数字电子技术Chart_7
链接地址:https://www.777doc.com/doc-71455 .html