VHDL设计FPGA数字系统:电子万年历(3)

2019-08-31 17:44

VHDL设计FPGA数字系统:电子万年历

每个查找表连接到一个D触发器的输入端,触发器再来驱动其他逻辑电路或驱动I/O,由此构成了既可实现组合逻辑功能又可实现时序逻辑功能的基本逻辑单元模块,这些模块间利用金属连线互相连接或连接到I/O模块。FPGA的逻辑是通过向内部静态存储单元加载编程数据来实现的,存储在存储器单元中的值决定了逻辑单元的逻辑功能以及各模块之间或模块与I/O间的联接方式,并最终决定了FPGA所能实现的功能,FPGA允许无限次的编程。

它们的特点是直接面向用户,具有极强的灵活性和通用性,使用方便,硬件测试和实现快捷,开发效率高,成本低,上市时间短,工作可靠性好等。FPGA和CPLD的应用是EDA技术有机融合硬件电子设计技术、SOC和ASIC设计,以及对自动设计与自动实现最典型的诠释。 2.2.1FPGA组成

FPGA由六个部分组成,分别是可编程输入/输出单元、基本可编程逻辑单元、丰富的布线资源、嵌入式块RAM、内嵌专用硬核以及底层嵌入功能单元。 (1)可编程输入/输出单元:该单元为芯片和外部电路的接口,可以完成不同电气特性下的输入输出的匹配[3]。

(2)基本可编程逻辑单元:该单元式可编程逻辑器件的核心,实现可编程逻辑器件最基本的功能,也可以根据设计的灵活性改变它的内部连接和配置,以实现不同的逻辑功能[3]。

(3)丰富的布线资源:布线资源是器件内部非常重要的连接渠道,连接着驱动功能以及数据的传输速度。FPGA有着非常丰富的布线资源,它们从工艺、长度、宽度位置上被分为不同的等级,有专用的、有公用的[3]。

(4)嵌入式块RAM:采用嵌入式块RAM,大大扩展了FPGA的使用灵活性和应用范围[3]。

(5)内嵌专用硬核:内嵌的专用内核主要指那些通用性相对较弱的功能单元。FPGA中的内嵌专用内核主要是为了实现某些特定功能开发的[3]。

(6)底层嵌入功能单元:它主要是指由生产商在出产前嵌入在FGPA中的一些通用程度较高的功能模块[3]。

2.3VHDL语言概述

硬件描述语言发展至今已有几十年的历史,并已成功地应用到系统的仿真,验证和设计综合等方面。到20世纪80年代后期,已出现上百种硬件描述语言,它们对设计自动化起了促进和推动作用。但是,它们大多针对特定设计领域,没有统一的标准,从而使一般用户难以使用。广大用户期盼一种面向设计的多层次,

5

VHDL设计FPGA数字系统:电子万年历

宽领域且得到一致认同的标准硬件语言。80年代后期有美国国防部开发的VHDL语言(VHSIC Hardware Description Language)恰好满足上述要求,并在1987年12月由IEEE标准化VHDL(定为IEEE std 1076-1987标准,1993年进一步修订,被定为ANSI/IEEE std 1076-1993标准)。VHDL语言的出现为电子设计自动化(EDA)的普及和推广奠定了坚实的基础。据1991年有关统计资料表明,VHDL语言已被广大设计爱好者所接受,据称已有90%的设计者使用或即将使用VHDL语言设计数字系统。另外,众多CAD厂商也纷纷使自己新开发的电子设计软件与VHDL语言兼容。由此可见,使用VHDL语言来设计数字系统是电子设计技术的大势所趋。 2.3.1VHDL语言特点 (1)功能强大、设计灵活

VHDL具有功能强大的语言结构,可以用简洁明确的源代码来描述复杂的逻辑控制。它具有多层次的设计描述功能,层层细化,最后可直接生成电路级描述。VHDL支持同步电路、异步电路和随机电路的设计,这是其他硬件描述语言所不能比拟的。VHDL还支持各种设计方法,既支持自底向上的设计,又支持自顶向下的设计;既支持模块化设计,又支持层次化设计。 (2)支持广泛、易于修改

由于VHDL已经成为IEEE标准所规范的硬件描述语言,大多数EDA工几乎都支持VHDL,这为VHDL的进一步推广和广泛应用奠定了基础。在硬件电路设计过程中,主要的设计文件是用VHDL编写的源代码,因为VHDL易读和结构化,所以易于修改设计。

(3)强大的系统硬件描述能力

VHDL具有多层次的设计描述功能,既可以描述系统级电路,又可以描述门级电路。而描述既可以采用行为描述、寄存器传输描述或结构描述,也可以采用三者混合的混合级描述。另外,VHDL支持惯性延迟和传输延迟,还可以准确地建立硬件电路模型。VHDL支持预定义的和自定义的数据类型,给硬件描述带来较大的自由度,使设计人员能够方便地创建高层次的系统模型。 (4)独立于器件的设计、与工艺无关

设计人员用VHDL进行设计时,不需要首先考虑选择完成设计的器件,就可以集中精力进行设计的优化。当设计描述完成后,可以用多种不同的器件结构来实现其功能。

6

VHDL设计FPGA数字系统:电子万年历

(5)很强的移植能力

VHDL是一种标准化的硬件描述语言,同一个设计描述可以被不同的工具所支持,使得设计描述的移植成为可能。 (6)易于共享和复用

VHDL采用基于库(Library)的设计方法,可以建立各种可再次利用的模块。这些模块可以预先设计或使用以前设计中的存档模块,将这些模块存放到库中,就可以在以后的设计中进行复用,可以使设计成果在设计人员之间进行交流和共享,减少硬件电路设计。 2.3.2VHDL语言结构

完整的VHDL语言通常包含库(Library)声明区,实体(Entity)定义区,结构体(Architecture)定义区等三个部分。

(1)库(Library)内存放了可被其他VHDL程序调用的数据定义,器件说明,程序包等资源。

(2)实体(Entity)定义区用于定义电路的外观,即I/O端口的类型和数量,不涉及模块内部逻辑功能的实现。

(3)结构体(Architecture)主要描述设计模块的逻辑功能,结构体必须和实体相联系,确定实体定义的输入与输出信号的逻辑关系,一个设计实体可能有多个结构体[11]。

2.4Quartus II软件介绍

Quartus II 是Altera公司的综合性PLD/FPGA开发软件,支持原理图、VHDL、VerilogHDL以及AHDL(Altera Hardware Description Language)等多种设计输入形式,内嵌自有的综合器以及仿真器,可以完成从设计输入到硬件配置的完整PLD设计流程。

Quartus II可以在XP、Linux和Unix上使用,除了可以使用Tcl脚本完成设计流程外,还提供了完善的用户图形界面设计方式。它具有运行速度快,界面统一,功能集中,易学易用等特点。Quartus II支持Altera的IP核,包含了LPM/MegaFunction宏功能模块库,使用户可以充分利用成熟的模块,简化了设计的复杂性、加快了设计速度。除此,对第三方EDA工具的良好支持也使用户可以在设计流程的各个阶段使用熟悉的第三方EDA工具。此外,Quartus II 通过和DSP Builder工具与Matlab/Simulink相结合,可以方便地实现各种DSP应用系统和支持Altera的片上可编程系统(SOPC)开发。总之,Quartus II集系统级设计、

7

VHDL设计FPGA数字系统:电子万年历

嵌入式软件开发、可编程逻辑设计于一体,是一种综合性的开发平台。 Quartus II所支持的器件有:ACEX1K,EPF10K10,EPF10K10A,EPF10K20,EPF10K30A以及MAX?7000系列(含MAX7000A,MAX7000AE,MAX7000E,MAX7000S),EPM9320,EPM9320A,EPF8452A,EPF8282A,FLFX6000/A系列,MAX5000系列,ClassicTM系列等。基本设计流程为:首先设计输入,提供图形、文本和波形编辑器实现图形输入、AHDL、VHDL、Verilog HDL或波形的输入,也可以输入网表文件;然后项目编译,提供一个完全集成的编译器,它可直接完成从网表提取到的最后编程文件的生成,包含时序模拟、适配的标准文件;然后再进行项目校验,对设计项目的功能、时序进行仿真和时序分析,判断输入输出间的延迟;最后项目编程,将设计下载/配置到所选择的器件中去。

2.5ZY11EDA13BE实验系统介绍

2.5.1 ZY11EDA13BE实验系统的特点

(1)采用主板A基本实验系统+适配板(扩展板)的结构:

主板是一个标准配置系统,是一个最简EDA工具系统,包含了核心芯片A(EP1K30QC208),在主板系统基础上扩展了不同系统,比如主板+单片机+扩展板构成单片机系统,以及主板+扩展CPLD/FPGA等多重系统。 (2)主板中所有I/O口开放:

主芯片的I/O口分为三个部分使用,三个部分的I/O口无重合。第一部分连接到外部资源(数码管、译码器、时钟源、液晶、LCD、LED、按键、开关等),第二部分连接到试配板接口,第三部分连接到扩展版接口[18]。 (3)数字EDA与模拟EDA混合实验与开发:

除了主板的模数转换实验,如果配以模拟EDA器件适配板,就能在主板系统上完成模拟EDA实验或模数混合实验的开发。 (4)编程下载通用性强:

主板系统含FPGA/CPLD通用下载编程模块,可用于对Altera 、Lattice、Xilinx等多家国际著名的PLD公司几乎所有isp或现场配置的CPLD/FPGA进行编程下载。

(5)良好的混合电压(MV)兼容功能:

绿色能源电子系统要求器件低功耗、低噪声和高电磁兼容性。因此低电压器件的使用将更加重要和普遍,如笔记本电脑、嵌入式系统等,其中的主要器件皆为低电压器件 。

2.5.2ZY11EDA13BE实验系统主板组成

8

VHDL设计FPGA数字系统:电子万年历

ZY11EDA13BE实验系统主板,主要由以下几部分构成。通用编程模块、液晶显示模块、数码管显示模块、A/D、D/A转换模块、LED显示模块、数字可调信号源、滤波模块、信号调节模块、逻辑笔模块、配置模块、模式选择模块、模拟信号源、4×4键盘模块、开关按键模块、电源模块、分立元件模块、喇叭模块、I/O口插孔、核心芯片A、适配板B插座、扩展板C插座、40PIN插座。

本次设计中用到了通用编程模块即核心芯片EPF1K30QC208—2、数码管显示模块、LED显示模块、4×4键盘模块、开关按键模块、电源模块、喇叭模块。

2.6本章小结

本章主要对电子万年历设计过程中所用到的设计技术基础进行介绍,包括所用的软件、语言、器件等。对EDA技术进行了简单的介绍,了解了其作用、实现的功能、使用的方法、语言、工具等。本次设计使用VHDL语言来进行编程以实现电子万年历的功能,在Quartus II9.0平台上进行软件部分的编译、综合、优化、仿真、下载。

9


VHDL设计FPGA数字系统:电子万年历(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:生产安全事故风险评估报告 - 图文

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: