版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第一章电子系统设计概论1、数字系统与数字器件;数字器件:即数字IC芯片。是构成数字系统的基本部件。数字电子系统:是可以完成某种(或多种)特定的、功能不单一的一种电子系统。一般应包含某种控制器及受控单元。2、SOC 和 SOPC近来人们已经能够在单一半导体芯片上设计、制造百万个以上的晶体管,这种高集成度的IC芯片已经开始具备以往一个数字系统的全部特性与功能,这就产生了现代所谓的“单片 系统”(SOC,即System On a Chip)和SOPC。3、构建数字系统的方法以及他们的特点;1标准化的中、小规模数字集成电路特点:简单易用、价格低廉,应用广泛,集成度较低,功能受限。致使系统构成复杂、功耗
2、高、可靠性偏低。2.基于LSI(大规模集成电路)或VLSI的微处理器特点:CPU、MCU、DSP依靠执行指令(软件)可以方便的实现几乎任意的数字逻辑功能,其应用灵活性极强。¾一般需要一定的数字接口器件相配合;依靠执行软件来完成数字逻辑功能的工作方法导致其工作速度相对较慢,应用范围受到一定的限制。3.基于LSI或VLSI的专用集成电路ASIC (Application Specific Integrated Circuits )特点:需要专门设计、定制、大规模集成、性能强、功耗低、工作可靠性高、保密性高、大批量应用时成本也较低;¾功能专一且不能改变,不适宜在电子产品的研发阶段
3、予以使用。 较高的开发费用、设计与制造周期也较长。只适合在大批量工业应用的场合中使用。4.基于LSI/VLSI的可编程逻辑器件PLDa具有设计周期短、风险低、应用灵活系统功能强大、即改即用。4、PLD数字系统的特点;由用户自定义器件的功能、大规模集成。设计周期短、设计风险低、应用灵活、系统功能强大、功耗低。用PLD来进行数字系统的开发与设计已成为现代电子设计的一种方向与潮流。5、可编程逻辑器件PLD(什么是PLD、为什么会发展PLD、PLD器件的优点、PLD的发展趋势);1.可编程器件(PLD)2. 现有方法背景:理论和器件的局限性;生产技术背景:VLSI 开发技术背景:EDA,自上而下;市场
4、需求背景:客户需求3.1)PLD集成度高 2)降低功耗,提高可靠性 3)完善先进的EDA开发工具 4)提供语言、图形、波形等设计方法,灵活、方便 5)通过仿真工具来验证设计的正确性,提高设计的成功率6)可以反复地擦除、编程配置,方便进行设计修改和升级7)灵活地定义管脚功能,简化应用8)减轻设计工作量,缩短系统开发时间9)保密性好。4.向高集成度、高速度方向进一步发展; 向SOPC方向发展; 向低电压和低功耗方向发展;内嵌多种功能模块;向数、模混合可编程方向发展; IP内核得到不断发展6、PLD与MCU的区别;MCU是通过软件(指令)来实现预期的功能;PLD是通过内部硬件布线、以硬件来实现预期的
5、功能。所以PLD完成逻辑功能的工作速度比MCU要快得多。7、EDA的含义、EDA设计方法、EDA应用1.电子设计自动化EDA(Electronic Design Automation)是以电子计算机为设计工具和设计平台、以电子线路硬件描述语言HDL为主要系统描述手段,综合现代CAD(计算机辅助设计)、CAT(计算机辅助测试)、CAE(计算机辅助工程)技术,自动、高速的完成系统电路逻辑编译、逻辑化简、逻辑综 合、逻辑仿真、逻辑优化直至逻辑芯片版图实现,是一种自动化电子系统与IC设计的技术和设计工具。2 以电子线路硬件设计软件化的方法3 1)电子线路设计 2)PCB设计 3)IC设计8、用EDA开
6、发PLD时的设计输入、设计处理、设计验证包含哪些内容。原理图输入:HDL语言输入;波形输入;状态图输入 设计处理:优化和综合;映射;布局与布线;生成编程文件 .设计验证:功能仿真; 时序仿真;在线验证第二章 可编程逻辑器件基础1、阵列型简单PLD器件的种类及结构组成;按集成度分:低密度(SPLD)高密度(CPLD)按结构特点分:阵列型;单元型按编程次数分:多次可编程;一次可编程按编程和配置特性分:非易失性器件;易失性器件阵列型简单PLD器件可分成4大类型:名称与阵列或阵列输出PROM可编程存储器固定可编程固定PLA可编程逻辑阵列可编程可编程固定PAL可编程阵列逻辑可编程固定可组态GAL通用逻辑
7、阵列可编程固定可组态 含存储器PAL与GAL不同:用可编程的OLMC代替固定连接的或阵列OLMC结构:1、一个或门2、一个异或门3、一个D触发器4、四个可控多路选择器(2个2选1选择器2个4选1选择器)5、一个具有三态功能的非门。2、现代PLD使用的内部编程元件种类;(1)一次性编程的熔丝(Fuse)或反熔丝(Antifuse)开关;(2)基于浮栅技术的存储器。包括紫外线擦除电编程和电擦除电编程的EPROM、E2PROM与Flash Memory(闪速存储器,简称为闪存);(3)允许无限次编程使用的静态存储器SRAM。3、PAL器件的结构和输出类型;1.是一种与阵列可编程、或阵列固定的器件。2
8、.1)专用输出基本门阵列结构 2)可控极性输出结构3)可编程输入/输出结构4)寄存器输出结构4、简述GAL器件的基本结构、特点和工作原理。GAL16V8的组成,GAL的输出逻辑宏单元OLMC的几种组态和特点。1结构:一个可编程与阵列和一个固定的或门阵列2特点:有一个输出逻辑宏单元3原理:通过编程写入用户可将逻辑宏单元设置为不同的工作状态,从而具备了PAL的四种输出模式及输出类型。4 GAL16V8的组成:1个可编程的与阵列;8个输入缓冲器;8个输出/反馈缓冲器;8个三态输出缓冲器;8个输出逻辑宏单元OLMC;1个时钟输入CLK 缓冲器;1个输出使能缓冲器 5. a)专用输入模式在专用输入模式下
9、,引脚I/O只能作为输入使用,连接到I/O上的输入信号作用于相邻的OLMC,来自邻级输出的信号接到与逻辑阵列的输入上。b)专用组合输出模式这时输出三态缓冲器处于连通(工作)状态,异或门的输出经过OMUX 送到输出三态缓冲器。c)反馈组合输入输出模式在反馈组合输出模式下,三态缓冲器由第1乘积项选通的,且输出信号经过FMUX又反送到与逻辑阵列的输入线上。d)时序电路中的组合输出模式TSMUX 选择第一与项;三态缓冲器受第一与项控制;OMUX选择异或门输出;FMUX选择本级输出信号反馈或本端口输入信号。d)时序电路中的组合输出模式这时GALl6V8构成一个时序逻辑电路,这个OLMC是该时序逻辑电路中
10、的组合逻辑部分的输出。相邻的OLMC中至少会有 一个是寄存器输出模式。在这种工作模式下,异或门的输出不经过触发器而直接送到输出端。e)寄存器输出模式这时异或门的输出连接到触发器的D输入端,触发器的Q端经三态缓冲器送到输出端,同时/Q端又经过互补输出的缓冲器反 馈到了与逻辑阵列的输入端。输出三态缓冲器由外加的OE信号控制。时钟信号由引脚1输入,11号引脚接三态控制信号。时钟信号CLK和控制信号是给工作在寄存器输出模式下的那些OLMC共 同使用。第三章 CPLD/FPGA基础1、Altera 公司,主要的CPLD生产厂商2、Xilinx 公司,主要的FPGA生产厂商 3、Lattice公司,著名的
11、CPLD生产厂商4、ACTEL公司, 著名的CPLD生产厂商 1、CPLD/FPGA的中英文全称、CPLD/FPGA 的主要特点、SPLD和CPLD/FPGA的划分、1.CPLD(Complex Programable Logic Device)复杂可编程逻辑器件;FPGA(Field Programable Gate Array)现场可编程门阵列2. 1)芯片规模不断增大,能实现的功能不断增强,2)利用CPLD FPGA试制样片,能够以最短的时间占有市场,3)资金投入少,节省了许多潜在的花费。3.单片集成度的高低来划分它们,一般集成度在1000逻辑门以下为SPLD否则为CPLDFPGA, 2
12、、CPLD的组成及各部分的作用、CPLD的性能特点。Altera公司CPLD器件可编程内连线PI的特点。1 CPLD结构:(1)逻辑宏单元 :这种结构可提高内部资源利用率。(2)可编程内连线:PI负责信号传递,连接所有的逻辑宏单元,或I/O与宏单元的连接。(3)可编程的I/O控制块:I/O单元分布于器件的四周,提供器件外部引脚与内部逻 辑之间的连接。2. CPLD的性能特点可多次编程、改写和擦除;具有高密度、高速度、高可靠性和低功耗;集成度远远高于 PAL和GAL;有灵活多样的逻辑结构,可满足各种数字电路系统设计的需要;内部时间延迟与器件结构及逻辑连接等无关,可预测,易消除竞争冒险;有多位加密
13、位,因此可杜绝编程数据的非法抄袭。3. 1)在各个逻辑宏单元之间以及逻辑宏单元与I/O单元之间提供可 编程的信号连接网络;2)分为基于阵列的内连线和基于多路选择器内连线;3)CPLD中一般采用固定长度的线段来进行连接,因此信号传 输的延时是固定的,使得信号传输时间延时能够预测。3、FPGA的组成及各部分作用、查找表LUT作用和工作原理、FPGA的性能特点。Xilinx 公司的FPGA器件可编程互连线的种类与作用。1.<1>.可编程逻辑块CLB组成了 FPGA的核心门阵列,能完成用户指定的逻辑功能<2>.可编程输入输出块(IOB)位于芯片内部四周,在内部逻辑阵列与外部芯片
14、封装引脚之间提供一个可编程接口。<3>.可编程连线资源PIR位于芯片内部的逻辑块之间,经编程后形成连线网络,用于芯片内部逻辑间的相互连接,并在它们之间传递逻辑信息。2查找表(LUT)就是一个有N根(一般是4根)地址线的16x1的RAM存储器。N个输入的逻辑函数,需要2的N次方的容量的SRAM来实现. 一个LUT无法完成的N>4的多输入电路,就需要通过进位逻辑和级连的方法将多个LUT单元相连,这样FPGA就可以实现复杂的逻辑。作用:<1>.实现组合逻辑函数<2>.查找表级联可以实现复杂的逻辑。3.工作原理:当用户通过原理图或HDL 语言描述了一个4输入的
15、逻辑电路后,EDA软件就会按设计要求自动计算逻辑电路的所有可能的结果,并把该结果事先写入这个RAM存储器。这样,当输入变量作为RAM的地址信号输入时,预期的结果(输出逻辑函数)就作为RAM的存储数据输出了。4.特点:1)采用SRAM编程技术,具有高密度、高速度、高可靠性和低功耗;集成度远远高于PAL和GAL;结构灵活,内部的CLB、IOB和PI均可编程;强有力的组 合逻辑函数发生器,可实现多个变量的任意逻辑。可满足各种数字电路系统设计的需要。2)某些FPGA还提供片内高速RAM,可用于FIFO等的设计。3)每次上电时需进行数据配置;断电后,配置数据自动丢失。4)内部时间延迟与器件结构及逻辑连接
16、等有关,故信号传输时延不可预测。缺点。5. <1>.单长线:可控制开关矩阵将CLB与CLB,或者CLB 与I/OB连在一起。<2>.双长线:利用双长线可以使两个相隔(非相邻)的CLB连接。<3>.长线:主要用于长距离或多分支信号(如控制、时钟信号)的传送。CPLD与FPGA相同与区别:相同:(组成结构相同)1二维逻辑块阵列。器件的逻辑组成核心。2连接二维逻辑块的互联资源,有各种长度的连接。通常用来连接逻辑块之间和逻辑块和IO之间的连线。3输入输出单元,提供端口多种输出特性。不同: 不同点CPLDFPGA逻辑功能实现与或阵列查找表(LUT)存储形式EEPROM
17、SRAM(外带EEPROM)集成度相对低相对高(2万门以上)使用场合大规模组合逻辑电路大规模时序逻辑电路比较复杂算法芯片利用率内部宏单元的与或阵列较大,不易被完全使用,利用率较FPGA低CLB分块小,丰富连线资源,利用率高布线连续式布线。宏单元靠高速数据通道,数量有限,限制灵活性非连续式布线延时相对小且精确不易控制其他资源EAB,锁相环保密性可加密一般不能保密注:由于FPGA非连续性布线,每次编程即使实现相同功能,内部走线未必相同。CPLD命名规则:EPM7128SLC8410EPM7:产品系列为EPM7000系列128:128个宏单元;S:电压为5V,AE为3.3V,B为2.5VL:封装为P
18、LCC,Q代表PQFP等C:C:商业级(Commercial)070度,I:工业级(Industry),4085度M:军品级(Military),55125度84:管脚数目10:10nS信号延时,速度级别FPGA命名规则:EPF10K 10LC843EPF10K:产品为10K的FPGA产品10:10K个逻辑门;L:封装为PLCC,Q:PQFP84:管脚数目3:3ns延时,速度第四章 ALTERA的CPLD与FPGA器件1、ALTERA 产品系列、Altera 器件性能特点;所有的Altera器件系列均采用CMOS工艺,(1) MAX系列:Classic,MAX 3000A MAX 5000,M
19、AX 7000,MAX 7000S MAX 7000A,MAX 7000B MAX 9000,MAX FLEX系列:FLEX 6000,FLEX 8000,FLEX 10K, FLEX 10KA ,FLEX 10KB ,FLEX 10KV,FLEX 10KEAPEX系列:APEX 20K, APEX 20KE ,APEX Cyclone系列:Cyclone,Cyclone Stratix系列:Stratix,Stratix GX, Stratix ACEX系列:ACEX 1K, ACEX 2K (2)Altera 器件性能特点 :<1> 高性能<2>高密度逻辑集成<
20、;3> 较短的开发周期<4>高性能价格比<5> 丰富的优化宏函数<6>在系统可编程(ISP)EPM7128STC100-7EPM= 家族标识 (可擦除可编程MAX器件) 7128S= 器件类型 (128 = 单元数量)T= 封装类型 (L = PLCC, T = TQFP.)C= 使用环境 (商业Commercial,工业Industrial)100= 引脚数量 (number of pins on the package)-7= 速度级别( ns )速度级别后可能还有后缀 (作为特殊器件的特征)2、Altera MAX 7000 结构、MAX 700
21、0利用什么技术实现复杂逻辑函数、MAX 7000宏单元的组成。Altera公司MAX7000器件扩展乘积项的种类和作用。(1) MAX7000:逻辑阵列块(LAB);可编程连线阵列(PIA);I/O控制块(I/O)(2) 乘积项(Product-Term)结构(3)组成:逻辑阵列、乘积项选择矩阵、可编程触发器(4)并联扩展项:实现高速复杂的逻辑功能。共享扩展项:每个LAB有多达16个共享扩展项。共享扩展项就是由每个宏单元提供一个未投入使用的乘机项,将它们反相后,反馈到逻辑阵列,便于集中使用。3、FLEX 10K组成、特点,什么是嵌入式阵列EAB、作用。FLEX 10K利用什么技术实现复杂逻辑函
22、数,FLEX 10K器件LE的组成。(1)主要由嵌入式阵列EAB、逻辑阵列块LAB、 快速布线互连Fast Track和I/O单元等四部分组成。(2) FLEX 10K器件主要性能特点:具有实现宏函数的嵌入式阵列,能实现高效存储器和特 殊的逻辑功能;具有实现普通功能的逻辑阵列;高密度;低功耗;灵活的内部连接;功能强大的I/O引脚;多样的封装形式;多种配置方式;支持多功能电压I/O接口(3) 嵌入式阵列EAB (EAB : embedded array block):EAB是在PLD中嵌入的一大块RAM; (4) EAB的作用:实现RAM、ROM功能;查找表;实现FIFO功能(5) 逻辑单元(L
23、E)是FLEX10K结构中的最小单元,它以紧凑的尺寸提供高效的逻辑功能。 每个LE含有一个4输入查找表(LUT)、一个带有同步使能的可编程触发器、一个进位链和一个级联链。4、FLEX10K器件提供了两种类型的专用高速数据通道:进位链和级联链 它们连接相邻LE,但没有使用互连通道。进位链支持高速计数器和加法器。级联链可以在最小的延时情况下实现多输入逻辑。进位链和级联链连接到同行中所有LAB及LAB中的所有LE。大量使用进位链和级联链会降低布局布线的多样性,因此,使用进位链和级联链限于对速度有要求的关键部分的设计。5 MAX与FLEX10K器件的相同点: 1、 都是LSI器件; 2、 可按用户要求
24、编程使用; 3、 需在计算机上借助开发系统予以设计、使用; 4、 芯片功能强大,价廉物美。应用广泛。 不同点: MAX7000 FLEX10K 1、 是与或阵列型结构; 属LUT结构; 2、 编程单元是EEPROM 编程单元是SRAM 3、 无需外部配置,为非易失性器件;为易失性器件断电后芯片功能消失 4、 集成度相对较低; 集成度相对较高,可达10万门级6、什么是边界扫描测试、边界扫描测试的作用。标准的边界扫描测试用信号线。JTAG的全称(Joint Test Action Group)(1) 什么是边界扫描测试?边界扫描测试(简称为BST,Boundary Scan Testing),是
25、为了有效的进行大规模集成电路的在板测试而由联合测试行动 组织(JTAG,Joint Test Action Group) 提出来的一种新型测 试技术。(2) 边界扫描测试的作用:BST结构不需要使用外部的物理测试探针就能获得器件的功能数据,它可以在器件正常工作时进行。强行加入的测试数据串行地移入边界扫描单元,捕获的数据 串行移出并在器件外部同预期的结果进行比较,人们就能得出 该器件是否存在内部损坏的结论。(3)标准的边界扫描测试需要五根信号线,对电路板上:TDI测试数据输入,TDO测试数据输出,TMS测试模式选择,TCK测试时钟输入第五章 AHDL硬件描述语言1、AHDL的英文全称Altera
26、 Hardware Description Language (AHDL)2、MAX+PLUS的英文全称:MAX+PLUS II Alteras Multiple Array MatriX Programmable Logic User System. 3、什么是硬件描述语言HDL;HDL(Hardware DescriptionLanguage)是一种用形式化方法来描述数字电路和系统的语言,也是电子设计人员和电子设计自动化(EDA)工具之间的界面。AHDL语言AHDL是一种模块化的高级语言,并行执行语言,完全集成于MAX+PLUSSII系统。1用“-”注释一行,用“%.%”注释一段。2不区分
27、大小写3描述内容等效为一个数字电路4并发执行,不依赖描述的前后顺序5只支持加减运算,不支持乘除运算描述一个组合逻辑电路至少要:子设计段、逻辑段描述一个时序逻辑电路至少要:子设计段、变量段、逻辑段保留字关键字和保留标识符区别:当关键字被括在单引号中可当作符号名使用而保留标识符则不能。保留关键字和保留标识符都可以在注释中任意使用。AHDL数字:二进制(B)八进制(Q)十进制(无前缀)十六进制(H) ( 数值不能赋给节点,必须用VCC或GND)二元运算符:1、(a,b,c)#(d,e,f)会被解释为(a#d,b#e,c#f)2、a & b4.1被解释为(a&b4,a&b3,a
28、&b2,a&b1)3、在表达式(3#8)中,3和8分别被转换为二进制数B“0011”和B“l000”,该表达式的最终结果为B“1011” !4、(a,b,c)&1= (a,b,c)&(0,0,1)= (0,0,c)5、(a,b,c)&Vcc(a,b,c)布尔等式:1如果等式左右两侧组的长度不同,那么左侧组的位数一定要能被右侧组的位数整除2如果等式左侧位数多于右侧,则左侧各位将按顺序映射到右侧a4.1=b2.1 中a4=b2,a3=b1,a2=b2,a1b1;3如果一个数被赋给一个组,那么这个数值将被截断或带符号扩展至与那个组的长度相同(a,b)=1;即a
29、0;b1;4、集成电路的层次化设计;(1)系统级(2)行为级(3)寄存器传输级(RTL级) (4)逻辑门级(门级) (5)电路级(6)版图级5、软核、固核、硬核;(1)“虚拟器件”在EDA技术领域中,把用HDL语言建立、功能经过验证、可以综合实现、电路集成总门数在5000门以上的HDL模型称之为“软核”,而把由软核构成的器件称为“虚拟器件”。(2)“固核”(Firm Core):通常是指已在某一CPLD或FPGA器件上实现、经证明是正确的总门数在5000门以上电路结构编码文件。(3)“硬核”(Hard Core):已在某一种专用集成电路(ASIC)器件上实现、经证明是正确的总门数在5000门以
30、上的电路结构版图的掩膜。6、用HDL设计PLD数字系统的步骤;用HDL进行CPLD设计的优点(1) 用HDL语言开发CPLD/FPGA的完整流程主要包括6个步骤:<1>文本编辑<2>编译<3>功能仿真:(前仿真)<4>时序仿真(后仿真)<5>芯片配置下载:<6>实际工程测试与验证(2) 用HDL进行CPLD/FPGA设计的优点:<1>较容易进行复杂的设计<2>显著提高设计效率<3>改善设计质量<4>设计与器件/工艺无关<5>便于设计交流和设计的再利用<6&g
31、t;支持并行设计第六章 CPLD/FPGA的配置与下载1、什么是配置与下载、器件编程下载的分类、CPLD/FPGA器件的工作状态;(1) 把CPLD/FPGA设计代码送入芯片的过程称为对CPLD/FPGA器件的配置,也称为下载。(2)分类:<1>按使用计算机的通讯接口划分:串口下载;并口下载;USB接口下载<2>若按使用的CPLD/FPGA器件划分:CPLD编程;FPGA下载<3>按CPLD/FPGA器件在编程下载过程中的状态划分:主动配置方式;被动配置方式 (3) CPLD/FPGA器件按照正常使用和下载的三种状态<1>配置状态(Configu
32、ration mode )<2>初始化状态(Initialization)<3>用户状态2、用ByteBlaster配置的两种模式。1)被动串行模式(PS)配置常用来配置FLEX10K、FLEX 8000、FLEX 6000 和ACEX1K系列器件。2)边界扫描模式(JTAG)配置对具有边界扫描电路的器件进 行配置重构或在线编程。常用来对MAX系列器件进行编程配置。3、FLEXl0K系列器件的四种配置方式、工作原理、步骤。1主动串行配置方式: 2被动串行配置(PS)方式1)BitBlaster下载电缆控制主机:2)外接微处理器 3被动并行同步配置(PPS)方式4被动并行
33、异步(PPA)配置方式:4. MAX系列非易失性器件的下载配置:对于编程元件为E2PROM或闪存的CPLD器件(如MAX系列器件等),只需简单的利用专门的编程下载电缆(名为ByteBlaster或BitBlaster,可由用户自制)将编程配置数据下载到芯片中去即了解FPGA器件的几种配置方法:1使用JTAG下载方法进行配置(调电后丢失); 使用PS下载方法进行配置(调电后丢失); 使用EPC器件进行配置;(非易失性配置,在产品中多使用) (用编程器将代码下载到EPC器件中,非易失性配置) 使用单片机和EEPROM作为通讯/下载接口; (需要自己去设计串行通讯硬件电路及通讯收发软件) 2、掌握C
34、PLD/FPGA器件FLEX器件的基本配置引脚。 MAX器件的JTAG配置引脚:TCK/TDI/TDO/TMS TCK: 1; TDI: 9 Vcc: 4 TDO: 3; TMS: 5 GND: 2,10 FLEX器件的PS配置引脚: DCLK: 1 DATA0: 9 Vcc: 4 CONFIG_DONE: 3 NSTATUS: 7 GND: 2,10简答题GAL的OLMC和CPLD 宏单元 区别CPLD的逻辑宏单元主要包括与或阵列、触发器和多路选择器的电路,能独立的配置为组合或时序工作方式。GAL器件的逻辑宏单元与I/O单元做在一起,成为输出逻辑宏单元(OLMC);CPLD的逻辑宏单元都做在
35、内部,称为内部逻辑宏单元。CPLD的逻辑宏单元与GAL的OLMC结构非常类似,但 逻辑宏单元结构比GAL有所改进。1、乘积项共享结构,提高了各单元或门的使用效率,可实现较复杂的逻辑功能。2.多触发器和隐埋触发器结构,可提高内部资源利用率。3.触发器类型可编程结构,它们与逻辑宏单元相配合,可实现多种逻辑电路结构。硬件描述语言与计算机语言的区别HDL(Hardware Description Language)是一种用形式化方法来描述数字电路和系统的语言,也是电子设计人员和电子设计自动化(EDA)工具之间的界面。VHDL 是针对硬件电路设计的描述语言且描述的对象始终是客观的电路系统。利用VHDL
36、进行大系统的设计, 可以在脱离具体目标器件的情况下进行, 但在具体的工程设计中, 必须清楚软件程序和硬件构成之间的关系, 在考虑语句所能实现的功能的同时, 必须考虑实现这些功能可能付出的硬件代价, 要对这一程序可能耗费的硬件资源有一明确的估计。一项成功的VHDL工程设计, 除了满足功能的要求、速度的要求和可靠性要求等项指标外, 还必须占用尽可能少的硬件资源。所以VHDL 数据类型在定义和使用上与高级语言有所差别, 即尽可能声明变量的具体取值范围, 以节省电路结构, 这是VHDL 数据类型定义时的最显著的一个特点。动态扫描电路原理所谓数码管的动态驱动,就是把每个数码管的“段”对应并联,这样所有数
37、码管的“段驱动”只使用7根驱动线;同时用输出扫描脉冲控制每个数码管的COM端,在一个瞬时只让一个数码管被点亮且每个数码管被轮流点亮。(一个数码管一般点亮为15mS)。如此循环不断。由于人眼有视觉残留效应,若各数码管循环点亮的速度足够快,则人眼看到的是多个数码管都被点亮了起来。这就是数码管的动态扫描驱动显示工作原理。 数码管动态驱动电路图如见下: 称驱动数码管的“段”信号为“字形码”,控制数码管COM端的信号为“字位码”。对下图而言,使用的字位码中“1”的个数只有1个(使用了反相器) 动态驱动的优点:使用较少的引脚,电路功耗较低。动态驱动的缺点:驱动电路较复杂、数码管数量多时显示亮度降低。静态驱
38、动的优点:驱动电路简单,显示亮度较高 静态驱动的缺点:占用较多引脚、电路功耗较高5、ALTERA的编程文件; SRAM Object格式(.sof) Programming Object格式(.pof) Serial Bittream格式(.sbf)十六进制格式(.hex) ASCII码文本格式(.ttf) 二进制格式(.rbf)例1: 组合逻辑电路设计subdesign YMQ(a0,a1,b,d: input ;out1,out2: output ;)variabletemp: node ;begintemp=a0 & !a1 ; out1=temp & b ; out2=
39、temp & d ;end ;例2: 4位BCD计数器设计subdesign BCDCNT(inclk : input ;out3.0: output ;)variable count3.0:dff ;begincount .clk=inclk ;if count =9 then count =0 ;elsecount =count +1 ;end if ;out =count ;end ;例3: 8位比较器设计subdesign cmp8(a7.0,b7.0:input;dy,xy,equ:output;)beginif (a >b ) then dy=Vcc;elsif a=
40、b then equ=Vcc;else xy=vcc;end if;end;例4:优先权编码器的AHDL程序SUBDESIGN Priority(low,middle,high: INPUT;hightest_level1.0 :OUTPUT;) BEGINIF high THENhightest_level =3;ELSIF middle THENhightest_level =2;ELSIF low THENhightest_level =1;ELSE hightest_level =0;END IF;END;例5: 五人表决器设计SUBDESIGNVOTE5(a4.0:INPUT;out
41、:OUTPUT;)variablem2.0:node; BEGINm=(0,a4)+(0,a3)+(0,a2)+(0,a1)+(0,a0);k=(m>=3);END;例6:BCD 七段译码器设计SUBDESIGNBCDYMQ(in3.0:input;ot6.0:output;) BEGINTABLEin=>ot6,ot5,ot4,ot3,ot2,ot1,ot0; END TABLE;END;例7:根据输入来选取五个ASC代码中的一个代码。SUBDESIGNdefault1(i3.0:INPUT;ascii_code7.0:OUTPUT;) BEGINDEFAULTSascii_co
42、de=B“00111111”;%“?”的ASC码=3FH% ENDDEFAULTS;TABLEi3.0 => ascii_code;B“1000”=>B“01100001”;% “a”=61H%B“0100”=>B“01100010”;% “b”=62H%B“0010”=>B“01100011”;% “c”=63H%B“0001”=>B“01100100”;% “d”=64H%ENDTABLE; END;例9: 分频计数器subdesign fp(inclk:input; outputf:output;)variable fp23.0:dff; f :dff;be
43、gin fp.clk=inclk;f.clk=inclk; if fp=19999999 then fp=0; f=!f; else fp=fp+1; f=f; end if; outputf=f;end;例10: 4乘4Subdesign 44mult(a3.0,b3.0:input;C7.0: output; )Begin C=(0,a&b0)+(0,a&b1,0)+(0,a&b2,0,0)+(0,a&b3,0,0,0);End;例11: 四位全加器Subdesign fulladd4 (a3.0,b3.0,ci:input;C3.0,co : output
44、; )Begin(co,c)=(0,a)+(0,b)+(0,ci);End;带进位输出的2位BCD计数器设计SUBDESIGN BCDCNT(inclk:INPUT;b3.0,a3.0,CYY:OUTPUT; )VARIABLEb3.0,a3.0:dff ;BEGIN(b,a).clk=inclk;if(b=5)and(a=9)thenb=0;a=0;cyy=gnd;elsifa=9 thena=0;b=b+1;cyy=vcc;else a=a+1;b=b;cyy=vcc;endif;END;8 位串入串出移位寄存器设计该移位寄存器具有公共时钟输入端SUBDESIGN shift8( in,i
45、nclk :INPUT; out7.0,q7:OUTPUT; )VARIABLE a7.O:DFF;BEGIN a.clkinclk; a0.din; a7.1.d=a6.0.q; q7=a7.q out=a.qEND;带预置端的8位锁存器设计:要求当输入端load电平为高时,在时钟信号的上升沿把输入端d的数据锁存到输出端q。SUBDESIGN latch( clk,load,d7.0:INPUT; q7.0:OUTPUT; )VARIABLE ff7.0: DFFE; BEGIN ff.clk=clk; ff.ena=load; ff.d=d; q=ff;END;带使能端的16位计数器:SU
46、BDESlGN cnt16(clk,load,ena,clr,d15.0:INPUT; q15.0:OUTPUT; )VARIABLE count15.0:DFFE;BEGlN count.clk=clk; count.clrn=!clr; IF load THEN count=d; ELSIF ena THEN countcount+1; ELSE count=count; END IF; q=count;END; subdesignmealy(clk,reset,y:input;z:output;)variabless:machine wthstates(s0,s1,s2,s3);begi
47、n ss.clk=clk;ss.reset=reset;table ss,y=>z,s;s0,0=>0,s0;s0,1=>1,s1s1,0=>1,s1;s1,1=>0,s2;s2,0=>0,s2;s2,1=>1,s3;s3,0=>0,s3;s3,1=>1,s0;endtable;end;30%占空比脉冲subdesign zkb(inclk:input;out:output;)variablea3.0:dff;ot:dff;begina3.0.clk=inclk;ot.clk=inclk;if a=9 thena=0; else a=a+1
48、;if (a>=4 and a<=7) thenot=vcc; else ot=gnd;end if;end if;out=ot;end;串行扫描电路subdesign 7countx(inclk:input;outa6.0,outb6.0,bitout5.0,g:output;)variablea3.0,b3.0,c3.0,d3.0,e3.0,f3.0:dff;mda12.0,mdb9.0:dff;mseg3.0,mseh3.0,bitout5.0:dff;st2.0:dff;fpa,fpb:dff;beginfpa.clk=inclk;fpb.clk=fpa;mseg.clk=fpa;mseh.clk=fpa;(a,b,c,d,e,f).clk=fpb;mdb.clk=fpa;st.clk=fpa;mda.clk=inclk;bitout.clk=fpa; if mda=1999 then mda=0; fpa=!fpa; else mda=mda+1; fpa=fpa; end if; if mdb=499 then mdb=0; fpb=!fpb; else mdb=mdb+1; fpb=fpb; end if; if a=9 then a=0; if b=5 then b=0; if c=9 then c=0; if d=5 then d=0; if e=
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2026学年《口渴的样子》教案
- 2025湖南长沙市长沙县昌济教育集团公开招聘校医14人笔试历年典型考题及考点剖析附带答案详解试卷2套
- 2025湖南怀化市靖州苗族侗族自治县九苓经济建设投资有限公司招聘拟聘用人员笔试历年常考点试题专练附带答案详解试卷2套
- 2025湖北交通投资集团有限公司三季度社会招聘64人笔试历年典型考点题库附带答案详解
- 2025浙江省荣军医院公开招聘人员25人(第二批)笔试历年典型考题及考点剖析附带答案详解试卷2套
- 2025浙江富浙资产管理有限公司第五期招聘2人笔试参考题库附带答案详解2套试卷
- 2025江西赣江新区永修投资集团招聘3人笔试历年备考题库附带答案详解
- 2025江苏苏州地铁招聘34人(第二批次)笔试历年备考题库附带答案详解
- 2025江苏徐州市妇幼保健院公开招聘合同制医务人员25人笔试历年典型考题及考点剖析附带答案详解试卷2套
- 2025国家锦泰财产保险股份有限公司招聘非车险理赔管理岗等岗位笔试历年难易错考点试卷带答案解析试卷2套
- 航天禁(限)用工艺目录(2021版)-发文稿(公开)
- 中国重症加强治疗病房(ICU)建设与管理指南课件
- (外研版3起)英语四年级上册单词字帖书写练习(手写体)高清打印版
- 物流系统规划与设计说课
- 水果干制品(无核蜜枣、杏脯、干枣)HACCP计划
- 学前教育学第2版全套PPT完整教学课件
- 2023年高中学业水平合格考试英语词汇表(复习必背)
- 本科专业评估指标体系
- 2023版中国近现代史纲要课件第一专题历史是最好的教科书PPT
- DLT 802.7-2010 电力电缆用导管技术条件 第7部分:非开挖用改性聚丙烯塑料电缆导管
- 学习-八年级英语动词不定式
评论
0/150
提交评论