收藏 分享(赏)

自动转换量程频率计控制器.doc

上传人:hwpkd79526 文档编号:9209205 上传时间:2019-07-29 格式:DOC 页数:58 大小:697KB
下载 相关 举报
自动转换量程频率计控制器.doc_第1页
第1页 / 共58页
自动转换量程频率计控制器.doc_第2页
第2页 / 共58页
自动转换量程频率计控制器.doc_第3页
第3页 / 共58页
自动转换量程频率计控制器.doc_第4页
第4页 / 共58页
自动转换量程频率计控制器.doc_第5页
第5页 / 共58页
点击查看更多>>
资源描述

1、江 西 科 技 师 范 学 院毕业设计(论文)题 目: 自动转换量程频率计控制器设计系 院: 通信与电子学院专 业: 电子信息工程学生姓名: 陈 浩学 号: 20061628指导老师: 陈 亮 亮封面格式不对,封面格式电子档已放入群共享量程自动转换的数字式频率计的设计数字频率计是一种基本的测量仪器。它被广泛应用与航天、电子、测控等领域。它的基本测量原理是,首先让被测信号与标准信号一起通过一个闸门,然后用计数器计数信号脉冲的个数,把标准时间内的计数的结果,用锁存器锁存起来,最后用显示译码器,把锁存的结果用 LED 数码管显示出来。根据数字频率计的基本原理,本文设计方案的基本思想是分为四个模块来实

2、现其功能,即整个数字频率计系统分为分频模块、计数并自动换挡模块、锁存器模块和译码器模块,并且分别用 VHDL 对其进行编程,实现了闸门控制信号、计数电路、锁存电路、显示电路等。本设计方案还要求,被测输入信号的频率范围自动切换量程,控制小数点显示位置,并以十进制形式显示。整个频率计设计在一块 CPLD 芯片上,与用其他方法做成的频率计相比,体积更小,性能更可靠。频率计的测频范围:010MHz。该设计方案通过了 Max+plus软件仿真、硬件调试和软硬件综合测试。关键词:数字频率计;电子设计自动化;CPLD;格式不对,而且你怎么会用到 CPLD?目 录第一章 引 言 .11.1 研究背景 11.2

3、 频率计的发展情况 3第二章 设计所用工具与环境介绍 .42.1 BTYG-EDA 实验开发系统简介 .42.1.1 系统特点 .42.1.2 系统资源介绍 .42.2 CPLD 简介 .52.2.1 CPLD 器件结构简介 52.2.2 典型 CPLD 器件简述 82.2.3 CPLD 在新技术中的应用 112.3 VHDL 语言简介 122.3.1 VHDL 的发展情况与特点 .122.3.2 VHDL 语言结构 .14第三章 频率计的设计方案 .183.1 传统方法 183.2 现代方法 183.2.1 自顶向下的设计方法 .183.2.2 与传统的设计方法相比 EDA 的特点 193.

4、3 本设计的方法 21第四章 数字频率计的设计 .234.1 频率计的设计要求与原理 234.1.1 设计要求 .234.1.2 频率测量方法及原理 .234.2 频率计的硬件设计 254.2.1 电子设计的发展情况 .254.3 频率计的软件设计及其仿真 264.3.1 软件设计的实现 .264.3.2 功能模块的实现 .274.3.3 各模块基于 VHDL 的设计与仿真 .284.4 下载验证 374.4.1 管脚分配 .374.4.2 硬件调试 .394.4.3 软件调试 .404.4.4 数据下载与验证 .40第五章 实验测试与误差分析 .435.1 实验测试的方法 435.2 系统的

5、验证 435.3 频率测量精度分析 445.4 测量误差分析 45总结语 .47参考文献 .48Abstract.49附录 .50第一章 引 言1.1 研究背景近年来信息技术、电子技术获得了飞速的发展,在其推动下,现代电子产品几乎渗透了社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的大大提高。前几年的数字频率计一般由分离元件搭接而成,其测量范围、测量精度和测量速度都受到很大的限制。虽然单片机的发展与应用改善了这一缺陷,但由于单片机本身也受到工作频率及内部计数器位数等因素的限制,所以无法在此领域取得突破性的进展。随着新型可编程逻辑器件 FPGA/CPLD 技术的发展,能够将大量的逻

6、辑功能集成在单个器件中,FPGA/CPLD 根据不同的需要所提供的门数可以从几十万到上百万门,从根本上解决了单片机的先天性不足。本课题所设计的量程自动转换的数字频率计不但集成度远远超过了以往的数字频率计,而且在基准频率等外部条件的允许下,可以根据不同场合的精度要求,对硬件描述语言进行一定的改动,使系统在精度提高的同时,而不增加系统硬件,从而降低系统的整体造价。随着 EDA 技术的发展,现代频率计的设计多采用基于 FPGA/CPLD 芯片的方法来实现频率计的设计,即通过 VHDL(Very High Speed Integrated Circuit Hardware Description La

7、nguage)硬件描述语言的设计,用 FPGA/CPLD 来实现。现代电子设计技术的核心是 EDA(Electronic DesignAutomation)技术。就是依赖功能强大的计算机,使设计者的工作仅限于利用软件的方式,即利用硬件描述语言和 EDA 软件来完成对系统硬件功能的实现。FPGA/CPLD 即现场可编程逻辑器件是由存放在片内 RAM 中的程序来设置其工作状态的,因此工作时需要对片内的 RAM 进行编程。用户可以根据不同的配置模式,采用不同的编程方式。加电时,FPGA/CPLD 芯片将 EPROM 中数据读入片内编程 RAM 中,培植完成后,FPGA/CPLD 进入工作状态。掉电后

8、,FPGA/CPLD 恢复成白片,内部逻辑关系消失,因此 FPGA 能够反复使用。FPG/CPLD A 的编程无须专用的 FPGA/CPLD 编程器,只需使用通用的 EPROM、PROM 编程器即可。当需要修改 FPGA/CPLD 功能时,只需换一片 EPROM 即可。这样,同一片 FPGA/CPLD,不同的编程数据,可以产生不同的电路功能。因此,FPGA/CPLD 的使用非常灵活。同时EDA 开发工具的通用性、设计语言(本设计为 VHDL)的标准化以及设计过程几乎与所用器件的硬件结构无关,所以设计成功的各类逻辑功能块软件有很好的兼容性和可移植性,可以在很短的时间内完成十分复杂的系统设计EDA

9、(电子设计自动化)技术就是以计算机为工具,在 EDA 软件平台上,对硬件语言 HDL 为系统逻辑描述手段完成的设计文件,自动的完成逻辑编译、逻辑化简、逻辑综合及优化、逻辑仿真,直至对特定目标芯片的适配编译、逻辑映射和编程下载等工作(文本选用的开发工具为 Altera 公司的 Max+plusII) 。EDA 的仿真测试技术只需要通过计算机就能对所设计的电子系统从各种不同层次的系统性能特点完成一系列准确的测试与仿真操作,大大提高了大规模系统电子设计的自动化程度。设计者的工作仅限于利用软件方式,即利用硬件描述语言(如 VHDL)来完成对系统硬件功能的描述。VHDL 语言(Very High Spe

10、ed Integrated Circuit Hardware Description Language,超高速集成电路硬件描述语言)诞生于 1982 年,是由美国国防部开发的一种快速设计电路的工具,目前已成为 IEEE(The Institute of Electrical and Electronics Engineers)的一种工业标准硬件描述语言,相比传统的电路系统的设计方法,VHDL 具有多层次描述系统硬件功能的能力,支持自顶向下(Top to Down)和基于库(Library-based )的设计特点,因此设计者可以不必了解硬件结构设计,从系统设计入手,在顶层进行系统方框图的划分和

11、结构设计,在方框图一级用 VHDL 对电路的行为进行描述,并进行仿真和纠错,然后在系统一级进行验证,最后再用逻辑综合优化工具生成具体的门级逻辑电路的网表,下载到具体的 CPLD 器件去,从而实现可编程的专用集成电路(ASIC)的设计。1.2 频率计的发展情况频率测量是电子测量中最为基本的测量之一。由于频率信号抗干扰能力强,易于传输,因此可以获得较高的测量精度。随着数字电子技术的发展,频率测量成为一项越来越普及的工作,测频原理和测频方法的研究正受到越来越多的关注。在电子工程、源勘探、仪表等相关应用中,率计是工程技术人员必不可少的测量工具。不少物理量的测量,如转速、振动频率等的测量都涉及到或可以转

12、化为频率的测量。目前,市场上有各种多功能、高精度、高频率的数字频率计,但价格不菲。为适应实际工作的需要,本文在简述频率测量的基本原理和方法的基础上,提供一种基于FPGA/CPLD 的数字频率计的设计和实现过程,本方案不但切实可行,而且具有成本低廉、小巧轻便、便于携带等特点。数字频率计是一种基本的测量仪器,是用数字显示被测信号频率的仪器,被测信号可以是正弦波,方波或其它周期性变化的信号。因此,它被广泛应用与航天、电子、测控等领域。它是数字电路中的一个典型应用,实际的硬件设计用到的器件较多,连线比较复杂,而且会产生较大的延时,造成测量误差、可靠性差。随着可编程逻辑器件(CPLD)的广泛应用,以 E

13、DA 工具为开发平台,运用 VHDL 语言,将使系统大大简化,提高整体的性能和可靠性。1.用单元电路或单片机技术设计的频率计电路复杂、稳定性差。采用 EDA 技术就能够克服这一点,它可以把具有控制功能的各个模块程序下载在一块芯片上。这一块芯片就能代替原来的许许多多的单元电路或单片机的控制芯片和大量的外围电路。大大的简化了电路结构的复杂性,又提高了电路的稳定性。2.以往的频率计测量范围都是有限的,为测量不同频率的信号都要专门的设计某一部分电路,这样很麻烦。我们采用 EDA 技术可以通过修改程序来达到改变测量范围的目的。第二章 设计所用工具与环境介绍本实验用用到的主要硬件是:BTYG-EDA 实验

14、箱,核心芯片是 CPLD,型号是FLEX10K20RC208-4。软件是用的 Max+plusII,使用 VHDL 语言进行编程后,放到此软件里进行编译和仿真,当没有错误的时候下载到实验箱,进行硬件调试,最后得以功能实现。2.1 BTYG-EDA 实验开发系统简介BTYG-EDA 实验开发系统是一种多功能、高配置、高品质的 EDA 教学与开发设备,适用于大学本科 EDA 教学,课程设计与毕业设计,也适用于其他项目开发使用。2.1.1 系统特点可编程器件的 I/O 接口与输入输出器件(开关、按键、数码管、发光二极管、信号源等)采用固定连接,在可编程器件的有限 I/O 资源下最大限幅的连接上输入输

15、出器件,使得该系统能满足从简单的数字电路基础实验到复杂的数字系统设计,并延伸到具有创新性的综合电子设计等项目的开发等方面。试验方法上可以大量减少传统试验中需要大量连线而带来的诸多不便,使得实验从传统的硬件搭接为主转移到了以软件设计、仿真调试上来,并将传统的硬件设计方式用 EDA 技术来实现。可以节省宝贵的设计时间,提高工作效率。2.1.2 系统资源介绍(1)主芯片采用 2 万门 208 引脚 CPLD,型号为 FLEX10K20RC208-4,提供 147条 IO 线。(2)设计有专用配置芯片插座,以便上电自动配置需要。(3)主时钟频率 4MHz。(4)单步时钟按键。(5)6 位七段数码显示。

16、(6)8 路开关输入,8 路按键输入。(7)20 路 LED 灯输出。(8)1 路 8 位高速模入通道:20MHz 采样频率,配有高输入阻抗放大器,直流偏移调整电平,触发电平调整和同步触发电路。(9)2 路 8 位高速模出通道:10MHz 更新速率,用于高速任意函数发生器。(10)1 个标准 RS-232C 串行接口。(11)1 个标准并行接口。(12)1 个 PS/2 借口。(13)1 个 VGA 接口。(14)1 个多功能扩展夹紧座。可扩接单片机、RAM、EPROM 等芯片和用户扩展模板,该座提供 38 个 IO 线和电源。(15)另外提供 79 条外扩 IO 线,并有主芯片引脚序号标明,

17、允许用户自主锁定,方便编程。(16)采用开关电源供电,除实验箱所需+/-5V 外,还提供一组+/-12V/1A 的备用电源。2.2 CPLD 简介2.2.1 CPLD 器件结构简介具有固定输入和输出数目的任何组合逻辑函数可以在可编程只读存储器(PROM)中,以输出为输入的查找表方式来实现,许多实现组合逻辑的结构变型已从这一简单的概念引伸出来,然后利用 VLSI 的密度产生更通用的,能实现 PCB 板上几个简单 PAL 互连功能的器件是 PAL/ PROM 这类范例的扩展,称为 PAL 构造的PLD,也就是说复杂可编程逻辑器件CPLD(Complex Programmable Logic Dev

18、ices). CPLD 的架构方块图,如图 2.9。图 2.9 CPLD 的架构方块图在考察 PAL 构造的 CPLD 之前,让我们先看一下或阵列可编、与阵列固定的可编程只读存储器。作为两级可编程逻辑较简单的概念,PROM 具有 n 个输入和 m 个输出,2 行的查找表,它有以下 3 个特点:(1)给定输入和输出的数目,允许在逻辑设计完成之前就开始 PCB 设计,也允许在 PCB 设计完成之后更改 PROM 的设计。(2)允许将时序校验从逻辑设计中分出来,因为通过此可编程器件的延时是固定的,与要实现的逻辑函数无关。(3)器件的功能可以在较高的级别上规定,如用一系列逻辑方程或真值表表示,这样做可

19、以加快设计。但是 PROM 的结构也有两个主要的缺点:(1)硅片面积和由此产生的成本以及封装和板的面积都是由乘积项的数量所决定,n 输入的 PROM 就有 2n 个乘积项。(2)通过 PROM 的延时正比与乘积项的数目,所以延时性能随输入数目增加成正比地加大而边坏。因此,PROM 仅适合必须完成输入信号译码等功能的场合,例如,由一种字符码变换为另一种字符码的查找表。在全定制设计中,与阵列和或阵列都可编程的 PAL 是实现中到大尺寸任意逻辑函数的主要方法。但是,因为可编程能力的额外层增加了延时,可编程 PLA 不在具有实现 n 个变量所有函数的 PROM 特性,必须在器件设计之前选择一个较小的确

20、定数目的乘积项,不能在输入和输出变量数目的基础上单独选择器件。所以与 PLA 等效的可编程逻辑阵列未能充满可编程逻辑市场。类似地,要实现函数的任何改变可能不在适合所选的器件。CPLD 的集成度在千门 /片以上,其基本结构依然是由与阵列、或阵列、输入缓冲电路、输出宏单元组成。其与阵列比 PAL 大的多,但并非靠简单的增大阵列的输入、输出端口达到。阵列占用芯片的面积随其输出端数的增加而急剧增加,而芯片面积的增大不仅使芯片的成本增加,还使信号在阵列中传输延时加大而影响其运行速度。所以 CPLD 通常是由多个类似 PAL 的功能块组成,具有很长的固定于芯片上的布线资源,通过位于中心的互连矩阵连接在一起

21、。互连矩阵要将来自 I/O 的信号和逻辑块的输出布线到器件内任何逻辑块的输入。一般互连矩阵有两种形式:基于阵列的互连和基于多路开关的互连。基于阵列的互连是完全的纵横开关的实现方式,它允许任何输入到互连矩阵中的信号布线到任何逻辑块,是完全可布通的。基于多路开关的互连是对逻辑块的每个输入有一个多路转换器,输入到互连矩阵的信号被连接到每个逻辑块的大量多路开关的输入端,这些多路转换器的选择是可编程的,只允许其一个输入通过它进入逻辑块。所以不通率与多路转换器的输入宽度有关,宽度愈大,所占面积增加,性能降低。此外,CPLD 具有很宽的输入结构,适合于实现高级的有限状态机:具有 ISP 性能的 CPLD,可

22、以直接在系统内对其进行编程,因而类似与具有 ISP 性能的 SRAM 查找表类型的 FPGA。CPLD 的主要缺点是功耗比较大,15000 门以上的 CPLD 功耗要高于 FPGA、门阵列和分立器件。2.2.2 典型 CPLD 器件简述下面介绍几个厂家的一些典型 CPLD 器件。首先介绍下 Altera 公司的 CPLD,Altera 公司成立 10 余年来,一直致力于高密度可编程逻辑器件的开发生产,成为世界上的佼佼者。Altera 公司的 CPLD 器件具有良好的性能,极高的密度和非常大的灵活性,它通过高集成度、多 I/O 容量及最快速度,为用户的各种需求提供了有效的解决方案,极大的满足了用

23、户对“在一个可编程芯片上集成系统”日益增长的需求。Altera 的 CPLD 是从基于 PLA 的传统 PLD 结构演变来的,它的逻辑块是由 20 个到超过 100 个输入的宽扇入的与门馈送到带有 3 个8 个输入的或门组成的。Altera 的与非结构可以实现与-或逻辑电路,其输出馈送到一个异或门,这个基本电路可以用一个触发器和一个多路开关来扩充,此多路开关选择锁存的输出信号。可编程的非逻辑可以用异或门来获得,如果一个异或门的输入端是分离的,它的作用和或门相同,允许或门和异或门形成更大的或函数,用来实现其他算术功能,这个可编程的形式明显增加了逻辑块的功能性。Altera 的 CPLD 器件除了

24、具有 PLD 的一般特点外,还具有先进的结构、先进的处理技术、现代化的开发工具以及各种兆(Mega)功能等特点。1.高性能Altera 器件采用先进的 CMOS 计数,具有非常低的功耗和相当高的速度,采用连续式互联结构,在整个芯片内提供高速、连续的信号延时。对芯片内部电路的专业化改进也增加了系统性能。2.高密度逻辑集成为缩小印制板的尺寸和成本,设计人总是追求尽可能高的集成度,试图通过把更多的逻辑集成到更小的器件中来降低成本。此外,对现有的设计也经常需要进行二次开发。高逻辑集成度的 CPLD 为上述要求提供了很好的解决方案。Altera 器件密度从300 门到 100 万门,能够集成现有的各种逻

25、辑器件,包括小规模及大规模标准逻辑器件、PLD 、FPGA 或 ASIC 器件。3.较短的开发周期Altera 的快速、直观、易于使用的 Max+plusII 软件能够极大地缩短开发周期。使用 Max+plusII 软件设计项目、处理、校验以及对器件编程一共只需几个小时。在Max+plusII 环境下的一个典型的 PLD 开发周期图,如图 2.10 所示,途中标出了设计1 万门的逻辑器件说用的典型时间。设计思想设计输入 设计处理 设计仿真器件编程 系统测试少 于 一 小 时两 分 钟 两 小 时少 于 两 分 钟图 2.10 用 Altera 器件设计 1 万门逻辑器件典型开发周期图4.高性能

26、的价格比Altera 公司不断改进产品的开发与制造工艺,10 多年积累的经验使其工艺计数及制造工艺非常先进,因此能够提供性能价格比合理的可编程逻辑器件,Altera 的 PLD的成本与门列阵相当。5.兆(Maga)功能模块Altera 的 CPLD 高达 100 万门的集成度,这使得在单个编程器件中实现一个完整的数字系统成为可能。为了推进这种高集成度器件的应用,进一步缩短设计周期,Altera 公司提供了兆功能模块并支持 AMPP 功能。兆功能模块具有高度的灵活性及固定功能器件所不能达到的功能,如可以实现高速有限冲击响应(FIR)滤波器。兆功能还可以实现总线协议(PCI 总线) 、DSP 、图

27、像处理、高速网络和微处理及微型外设等。作为复杂的系统级功能,Altera 的功能模块是由先验证过的硬件描述语言(HDL )设计的,兆功能模块应用范围包括从标准模块(如通用异步收发控制器)到利用 PLD 的特点进行改进实例设计。6.在系统可编程(ISP)Altera 器件在系统可编程性能提高了设计的灵活度,简化了样品之中过程及流水线的生产过程,并且可以对产品进行快速而有效的现场升级。Altera 的 ISP 使用IEEE1149.1 标准的 JTAG 测试端口,可以在一个独立的生产过程中对器件进行编程,并可以对印刷电路板(PCB )进行功能测试。Lattice 的 CPLDispLSI 系列是具

28、有 ISP 性能的器件,但是用标准的测试程序检验时,引脚锁定的能力较差,因而影响其 ISP 的性能。为了解决这个问题,在称为“布线池”的互连矩阵基础上,在 I/O 块和功能块之间增加 “辅助布线池” 。Lattice 的 ispLSI 器件有布线资源少和功能块扇入窄的缺点,Lattice 的适陪器软件利用逻辑资源作为直通来尽力完成设计的布线。但是,这样对性能和利用率的影响较显著,在某些情况下,适配器软件编译时间在引脚锁定之后要比引脚锁定之前慢 80%之多,宏单元数则增加 25%,所以,ispLSI 器件采用了较差的引脚锁定结构。Xilinx 的 XC9500 系列是采用创新 FastFLASH

29、 工艺制造的 CPLD,具有特殊的系统内编程(ISP)的能力,系统内编程/擦除的次数可以高达上万次,比其他 CPLD 的编程/ 擦除的次数高一至二个数量级,高的耐久程度使其可用于经常要求现场更改和再配置的应用场合,它的扩展 IEEE_1149.1 边界(JTAG)指令集允许器件编程模式变更扩展和实现系统内的诊断。XC9500 系列还提供整个产品寿命期间的支持措施和引脚锁定能力。在大多数 CPLD 器件中,每个 I/O 引脚的宏单元通过一个 I/O 块直接驱动,当设计要求引脚锁定时,EDA 软件的适配器强迫逻辑影射到专门的宏单元来保持引脚不变。XC9500XL 和 XC9500XV 器件为低电压

30、、低功耗的 CPLD 器件,使用XC9500XV 器件可以比使用 XC9500 器件节省 75%的功耗,而且成本也大大降低。低电压不仅具有最佳的系统性能,同时确保灵活性与不通率,可以很方便的设计出工作频率近 200MHz 的快速同步 DRAM 控制器以及与微处理器配合更紧密的借口。AMD 的 MACH5 器件具有不足的布线资源和差的适配器性能的缺点,窄的功能在引脚锁定之后总是重新布线,带来了由于分段延时引起的某些性能的降低。2.2.3 CPLD 在新技术中的应用1CPLD 的在系统编程技术传统的 CPLD 编程是在编程器上完成的,因为那时 CPLD 编程需要较高的电压和较特殊的波形。然而,由于

31、工艺的改进,对 CPLD 器件的编程可在其工作电压下进行。因此,可将 CPLD 芯片安装在系统中,在其工作环境下,依靠编程软件完成,这就是所谓在系统编程(In System Program) 。2片内存储器和其他片内逻辑在某些 CPLD 的芯片中,专门开辟了一个区,制作了一定容量的片内 RAM(包含 FIFO、双口随机型、单口随机型三种) ,为用户开发 DSP 功能(例如 FIR 滤波器、图像卷积等)提供条件。由于这是用 RAM 工艺制作的,占用面积小,所以其速度比逻辑单元配置 RAM 高。有些 CPLD 芯片中专门制作了 20 位高速计数器和高速阵列乘法器,可以很方便地得到高性能地器件。另外

32、有些芯片(如 ALTERA 公司 APEX 等系列芯片)中包含有锁相电路,可以与外电路配合,完成信号源、通信等有关电路或系统地设计制作。此外,有些芯片在某些局部结构上形成自己的特色,如可在内部完成三态功能等。3.低电压、低功耗系列芯片随着集成工艺的改进,3.3V 供电的 CPLD 已进入应用领域,并逐渐成为主流,其他旨在降低功耗的产品(例如零支持功耗的芯片等)也有生产。内核电压为2.5V、1.8V 供电的产品也陆续问世。以上各种特色的芯片可供用户在需要时选用。4. IP 的使用和嵌入式模块随着芯片规模的日益扩大,系统功能的日益复杂,特别是片上系统的出现、如仍按常规的设计方法,开发周期将会很长,

33、设计质量也会受到影响。因此,IP(Intellectual Property 知识产权)应运而生。人们可以将合适的 IP 软核(Core)或其他形式的核,作为嵌入式模块装在自己的设计中,方便而快捷地完成一个系统地设计。对处理器类 IP 核的嵌入,须在芯片对外接口上有特殊的安排。现在,各半导体公司的 CPLD 新产品已注意到此问题,并有相应的产品问世。5.混合编程技术关于可编程模拟电路(PAC,Programmable Analog Circuit)正在研究之中,已有一些 PAC 的芯片问世,片中包含一些增益可调额的放大器和滤波器等,但目前还未到广泛使用,在不久的将来,带有放大器、比较器、A/D

34、 变换器、滤波器等模拟器件的混合可编程器件将进入应用领域。2.3 VHDL 语言简介2.3.1 VHDL 的发展情况与特点VHDL 诞生于 1982 年。在 1987 年底,VHDL 被 IEEE 和美国国防部确认为标准硬件描述语言。自 IEEE 公布了 VHDL 的标准版本,IEEE-1076(简称 87 版)之后,各EDA 公司相继推出了自己的 VHDL 设计环境,或宣布自己的设计工具可以和 VHDL接口。此后 VHDL 在电子设计领域得到了广泛的接受,并逐步取代了原有的非标准的硬件描述语言。而 VHDL 是由 GDA(Gateway Design Automation)公司的 PhilM

35、oorby 在1983 年末首创的,最初只设计了一个仿真与验证工具,之后又陆续开发了相关的故障模拟与时序分析工具。1985 年 Moorby 推出它的第三个商用仿真器 VXL,获得了巨大的成功,从而使得 VHDL 迅速得到推广应用。1989 年 CADENCE 公司收购了 GDA 公司,使得 VHDL 成为了该公司的独家专利。1990 年 CADENCE 公司公开发表了 VHDL,并成立 LVI 组织以促进 VHDL 成为 IEEE 标准,即 IEEE Standard 1364-1995。VHDL 语言主要用于描述数字系统的结构、行为、功能和接口,与其他硬件描述语言相比,VHDL 语言有如下

36、优越之处:(1)VHDL 语言支持自上而下(Top Down)和基于库(Library Base)的设计方法,还支持同步电路、异步电路、FPGA 以及其他随机电路的设计。(2)VHDL 语言具有多层次描述系统硬件功能的能力,可以从系统的数学模型直到门级电路,其高层次的行为描述可以与低层次的 RTL 描述和结构描述混合使用,还可以自定义数据类型,给编程人员带来较大的自由和方便。(3)VHDL 对设计的描述具有相对独立性,设计者可以不懂硬件的结构,也不必关心最终设计实现的目标器件是什么。(4)VHDL 具有电路仿真与验证功能,可以保证设计的正确性,用户甚至不必编写如何测试相量便可以进行源代码级的调

37、试,而且设计者可以非常方便地比较各种方案之间的可行性及其优劣,不需做任何实际的电路实验。(5)VHDL 语言可以与工艺无关编程。(6)VHDL 语言标准、规范,易于共享和复用。2.3.2 VHDL 语言结构图 2.11 VHDL 程序结构框图图 2.11 中是 VHDL 的全部结构,但实际上并不需要全部的结构,就像在许多设计项目中,大部分工程师只用到 VHDL 其中的 30%的语法。通常图 2.12 的结构才是基本和必需的。 USE义义 ENTITY义义 ARCHITECTURE义义 图 2.12 VHDL 程序基本结构(1)实体实体作为一个设计实体的组成部分,其功能是对这个设计实体与外部电路

38、进行接口描述,它是设计实体的表层设计单元。实体说明部分规定了设计单元的输入输出接口信号或引脚,它是设计实体对外一个通信界面。就一个设计实体面言,外界所看到的仅仅是它的界面上的各种接口。它可以拥有一个或多个结构体,用于描述此设计实体的逻辑结构和逻辑功能,对于外界来主,这一部分是不可见的。不同逻辑功能的实体可以拥有相同的实体描述,这是因为实体类似于原理图中的一个部件符号,而其的逻辑功能是由设计实体中结构体的描述确定的。实体是 VHDL 的基本设计单元,它可以对一个门电路、一个芯片、一块电路板乃至整个系统进行接口描述。其结构:ENTITY 实体名 IS GENERIC(常数名:数据类型:设定值 ;常

39、数名:数据类型 :设定值 ) ;PORT(端口名:端口模式 数据类型;端口名:端口模式 数据类型 ) ;END ENTITY 实体名;(2)结构体结构体是实体所定义的设计实体中的一个组成部分。结构体描述设计实体的内部结构和实体端口间的逻辑关系。结构体由六部分组成:1.对数据类型、常数、信号、子程序和元件等元素的说明部分;2.描述实体逻辑行为的,以各种不同的描述风格表达的功能描述语句,它们包括各种形式的顺序描述语句和并行描述语句。其语句格式如下:ARCHITECTURE 结构体名;说明语句BEGIN功能描述语句END ARCHITECTURE 结构体名;3.块语句是由一个系列并行执行语句构成的组

40、成体,它的功能是将结构中的并行语句组成一个或多个模块。4.进程语句定义顺序语句模块,用以将从外部获得的信号值,或内部的运算数据向其它的信号进行赋值。5.信号赋值语句将设计实体内的处理结果向定义的信号或界面端口进行赋值。6.子程序调用语句用以调用过程或者函数,并将此元件的端口与其它的元件、信号或高层次实体的界面端口进行连接。图 2.13 结构体构造图系统电路的软件设计可采用工具软件 Max+plusII,用该工具软件所支持的语言义义 义义 ARCHITECTURE义 义义 BLOCK义 义义义 PROCES义 义义义 义义义义 义义义 义义义义 硬件描述语言 VHDL,以文本的方式进行编程输入。

41、在编程时分别对控制、计数、锁存、译码等电路模块进行 VHDL 文本描述,使每个电路模块以及器件都以文本的形式出现,然后通过编译、波形分析、仿真、调试来完善每个器件的功能。单个器件制作完成后,然后将它们生成库文件,并产生相应的符号,最后用语言将各个已生成库文件的器件的各个端口连接在一起,从而形成了系统主电路的软件结构。在连接器件时,也可以采用图形输入方式,即在图形输入界面中调出先制作好的库文件器件符号,再将每个器件符号的各端口直接连线,从而构成系统主电路。在上述工作的基础上,再进行波形分析、仿真调试便完成整个软件设计。第三章 频率计的设计方案3.1 传统方法传统的数字电子系统设计中,手工设计占了

42、较大的比例。一般先按电子系统的具体功能要求进行功能划分,然后对每个子模块画出真值表,用卡诺图进行手工逻辑简化,写出布尔表达式,画出相应的逻辑线路图,再据此选择元器件,设计电路板,最后进行实测与调试。手工设计方法的缺点是:(1)复杂电路的设计、调试十分困难。(2)如果某一过程存在错误,查找和修改十分不便。(3)设计过程中产生大量文档,不易管理。(4)对于集成电路设计而言,设计实现过程与具体生产工艺直接相关,因此可移植性差。(5)只有在设计出样机或生产出芯片后才能进行实测。传统的手工设计发展而来的自底向上的设计方法,在进行手式电路设计时,一个硬件系统的实现过程是从选择具体的元器件开始的。3.2 现

43、代方法随着集成电路发展,自底向上的设计方法已逐步被现代的自顶向下的设计方法所取代。所谓自顶向下的设计,就是设计者首先从整体上规划整个系统的功能和性能,然后对系统进行划分,分解为规模,较小、功能较为简单的局部模块,并确立它们之间的相互关系,这种划分过程可以不断地进行下去,直到划分得到的单元可以映射到物理实现。3.2.1 自顶向下的设计方法自顶向下的设计方法是随着硬件描述语言(HDL) 和 EDA 工具同步发展起来的。硬件描述语言可以在各个抽象层次上对电子系统进行描述,而且借助于 EDA 设计工具,可以自动实现从高层次到低层次的转换,这就使得自顶向下的设计过程得以实现。采用自顶向下的设计方法的优点

44、是显而易见。由于整个设计是从系统顶层开始的,结合模拟手段,可以从一开始就掌握所实现系统的性能状况,结合应用领域的具体要求,在此时就调整设计方案,进行性能优化或折衷取舍。随着设计层次向下进行,系统性能参数将得到进一步的细化与确认,随时可以根据需要加以调整,从而保证了设计结果的正确性,缩短了设计周期,设计规模越大,这种设计方法的优势越明显。自顶向下的设计方法的缺点就是需要先进的 EDA 设计工具和精确的工艺库的支持。3.2.2 与传统的设计方法相比 EDA 的特点(1)采用硬件描述语言作为设计输入。用 HDL 对数字电子系统进行抽象的行为与功能描述到具体的内部线路结构描述,从而可以在电子线路的各个

45、阶段、各个层次进行计算机模拟验验,保证设计过程的正确性。可以大大降低设计成本,缩短设计周期。(2)库(Library)的引入。EDA 工具之所以能够完成各种自动设计过程,关键是有各类库的支持。如逻辑仿真时的模拟库、逻辑综合时的综合库、版图综合时的版图库、测试综合时的测试库等。这些库都是 EDA 设计公司与半导体生产厂商紧密合作、共同开发的。(3)设计文档的管理。某些 HDL 语言也是文档型的语言(如 VHDL),极大地简化设计文档的管理。(4)强大的系统建模、电路仿真功能。EDA 技术中最为瞩目的功能,即最具现代电子技术特征的功能是日益强大的逻辑设计仿真测试技术。EDA 仿真测试技术只需通过计

46、算机,就能对所设计的电子系统从各种不同层次的系统性能特点完成一系列准确的测试与仿真操作,在完成实际系统安装后,还能对系统上的目标器件进行所谓边界扫描测试。这一切都极大地提高了大规模系统电子设计的自动化程度。如果与传统的使用专用功能器件等分离元件构成的应用电子系统的技术性能和设计手段相比,EDA 技术及其设计系统具有更加明显的优势。(5)具有自主知识产权。(6)开发技术的标准化、规范化以及 IP 核的可利用性。(7)适用于高效率大规模系统设计的自顶向下设计方案。从电子设计方法学来看,EDA 技术的最大优势就是能将所有设计环节纳入统一的自顶向下的设计方案中。传统的电子设计技术中,由于没有规范的设计

47、工具和表达方式,无法进行这种先进的设计流程。(8)全方位地利用计算机自动设计、仿真和测试技术。EDA 不但在整个设计流程上充分利用计算机的自动设计能力,在各个设计层次上利用计算机完成不同内容的仿真模拟,而且在系统板设计结束后仍可利用计算机对硬件系统进行完整的测试(边界扫描技术) 。对于传统的设计方法,如单片机仿真器的使用仅仅只能在最后完成的系统上进行局部的硬件仿真调试,在整个设计的中间过程是无能为力的。至于硬件系统测试,由于现在的许多系统主板不但层数多,而且许多器件都是 BGA(Ball-Grid Array)封装,所有引脚都在芯片的底面,焊接后普通的仪器仪表无法接触到所需要的信号点,因此无法

48、测试。(9)对设计者的硬件知识和硬件经验要求低。EDA 技术的标准化和 HDL 设计语言与设计平台对具体硬件的无关性,使设计者能更大程度地将自己的才智和创造力集中在设计项目性能的提高和成本的降低上,而将更具体的硬件实现工作让专业部门来完成。显然,高技术人才比经验性人才的培养效率要高得多。(10)高速性能好。这是与以 CPU 为主的电路系统相比。以软件方式控制操作和运算的系统速度显然无法与纯硬件系统相比,因为软件是通过顺序执行指令的方式来完成控制和运算步骤的,而用 HDL 语言描述的系统是以并行方式工作的。以对 A/D 进行数据采样控制为例,采样周期包括对 A/D 工作时序的控制和将每一次获得的

49、数据存入 RAM(或 FIFO)中。工作于 12MHZ 晶振频率的 MCS51 系列单片机对 A/D 控制的采样频率为 20KHZ 上下,即约每秒两万次。但若用 FPGA 中设计的状态机来完成同样的工作,如对于具有流水线采样工作时序的 A/D 来说,只需两个状态即可完成一次采样,状态间转换的时间仅为一个时钟周期,而如果 FPGA 的工作频率是 100MHZ,则采样速度可达 50MHZ。(11)纯硬件系统的高可靠性。大量事实表明,由 CPU(或单片机)为核心的系统的可靠性通常不高,而且与 CPU的种类关系不大,即任何由 CPU 为主控单元的系统,都不得不受到用户的特别关注。其主要原因是,以软件运行为核心的 CPU 的指令地址指针在外部干扰下,容易发生不可预测的变化,而使运行陷入不可预测的非法循环中,使系统瘫痪。事实上,许多要求高可靠的智能控制系统完全可以利用 EDA 技术以全应件来实现。例如状态机就是很好的选择。它的运行方式类似于 CPU,但却有良好的可靠性和高速的性能。因为在外部强干扰情况下,状态机的死寂机(进入非法装态)情况是可预测的,这包括非法状态的数量和进入状态的可预测性,以及是否已经进入的非法状态的可判断性。因为状态机的非法状态的编码方式和数量是明确的,从而确保了恢复正常状态各种措施的绝对可行性。3.3 本

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报