VHDL语言的概述(诞生与发展)

一个完整的VHDL语言程序通常包含实体(Entity)、构造体(Architecture)、配置(Configuration)、包集合(Package)和库(Library)5个部分。

实体用于描述所设计的系统的外部接口信号;构造体用于描述系统内部的结构和行为;包集合存放各设计模块都能共享的数据类型、常数和子程序等;配置用于从库中选取所需单元来组成系统设计的不同版本;库存放已经编译好的实体、构造体、包集合和配置。

一、概述

硬件描述语言(Hardware Description Language),顾名思义,就是描述硬件电路功能、信号连接关系及定时关系的语言。它能比电路原理图更有效地表示硬件电路的特性。利用硬件描述语言可以进行数字电子系统的设计。

国外硬件描述的语言种类很多,在我国比较有影响的大概有3种硬件描述语言:VHDL语言、Verilog HDL语言和AHDL语言。前两种已成为IEEE标准语言。

电子设计自动化(Electronic Design Automatic,EDA)技术的理论基础、设计工具、设计器件的关系是这样的:设计师用硬件描述语言HDL描绘出硬件的结构和硬件的行为,用设计工具将这些描述综合映射成与半导体工艺有关的硬件工艺文件,半导体器件FPGA则是这些硬件工艺文件的载体。当这些FPGA器件加载,配置上不同的工艺文件时,这个器件便具有了相应的功能。在这一系列的设计、综合、仿真、验证、配置的过程中,现代设计理论和现代设计方法始终贯穿其中。

以HDL语言表达设计意图,FPGA作为硬件载体,计算机为设计开发工具,EDA软件为开发环境的现代电子设计方法日趋成熟。软件硬件协同开发缩短了电子设计周期,加速了电子产品更新换代步伐。毫不夸张地说:“EDA是电子产业的心脏起搏器,是电子产业飞速发展的原动力。”

二、VHDL硬件描述语言的诞生

VHDL语言的英文全称是Very High Speed Integrated Circuit Hardware Description Language,即超高速集成电路硬件描述语言。在利用EDA工具进行电子设计时,逻辑图、分立电子原件作为整个越来越复杂的电子系统的设计已不适应。任何一种EDA工具,都需要一种硬件描述语言来做为 EDA工具的工作语言。这些众多的EDA工具软件开发者,各自推出了自己的HDL语言。

由美国政府牵头,VHDL工作小组于1981年6月成立,提出了一个满足电子设计各种要求的能够作为工业标准的HDL。1983年第三季度,由IBM公司、TI公司、Intermetrics公司签约,组成开发小组,工作任务是提出语言版本和开发软件环境。1986年IEEE标准化组织开始工作,讨论VHDL语言标准,历时一年有余,于1987年12月通过标准审查,并宣布实施,即IEEE STD 1076-1987。1993年VHDL重新修订,形成新的标准即IEEE STD 1076-1993。

从此以后,美国国防部实施新的技术标准,要求电子系统开发商的合同文件一律采用

VHDL文档。即第一个官方VHDL标准得到推广、实施和普及。

三、电子器件的发展

1、CPLD或EPLD芯片

这类器件的使用特点是:芯片一经上电加载即已完成编程,不必在每次上电时重新进行加载,也就是当程序烧入芯片后,只有下一次需要再修改程序时才需要对芯片进行重新加载,否则将不会改变先前所烧入的代码,类似于大的GAL芯片。例如,Lattice的ispGAL芯片可以在系统进行编程加载程序,也可以与该公司的ispLSI芯片在同一个电路中加载程序。CPLD在结构上主要由可编程逻辑宏单元LMC(Logic Macro Cell)围绕中心的可编程互连矩阵单元组成,其中LMC的逻辑结构比较复杂,并具有复杂的I/O单元互连结构,可以由用户根据设计的需要生成特定的电路结构,完成一定的功能。

2、 FPGA芯片

这类器件不像CPLD或EPLD,每次上电使用时不管是否改变程序都需要对芯片进行加载。现在FPGA芯片的容量一般比CPLD或EPLD的容量大得多,更适合于做较大系统的复杂设计。FPGA芯片通常包含3类可编程资源:可编程的逻辑功能块、可编程I/O块和可编程的内部互连。可编程的逻辑功能块是实现用户功能的基本单元,它们通常排成一个阵列,遍布于整个芯片中;可编程I/O块完成芯片上的逻辑与外部封装管脚的接口,常围绕着阵列排列于芯片四周;可编程的内部互连包括各种长度的连接线段和一些可编程连接开关,它们将各个可编程逻辑块或I/O块连接起来,构成特定功能的电路。

Xilinx的XC系列器件采用的是现场可编程门阵列FPGA,现场可编程门阵列是一种类似门阵列的结构,它的基本单元以阵列的形式排列在芯片上,但它不像门阵列那样由连线掩膜确定其最终的逻辑功能,而是将规则的连线阵列也已做好,其逻辑功能由各连线节点的控制开关的通断来确定。这些节点的控制开关的值有各种不同的控制方法,如静态随机存储器控制(SRAM)、反熔丝(antifuse based)控制以及由闪存(Flash)控制等几大类。

SRAM控制的FPGA器件是用静态随机存储器中存储的数值来控制芯片中可编程节点的通断,以实现芯片的设计功能。这种FPGA在使用时,需要在系统加电时首先进行功能初始化,将存储器的内容加载到芯片的控制器中。

反熔丝控制的FPGA器件是用反熔丝单元来控制可编程器件内的可编程节点的通断,使芯片中每一部分具有应有的逻辑功能,以实现器件的设计功能。反熔丝单元是一个被动的两端器件,通常情况下处于开路状态,在施加充足的电压后,能够永久的导通。用于现场可编程器件的反熔丝其占用芯片面积非常小,速度也很高,这方面的性能几乎可以与门阵列相比。但这种FPGA在编程时需要专用的编程设备,而且芯片功能一经编程确定后,不能再修改,反熔丝控制的FPGA器件价格最低。

Flash控制的FPGA器件是用闪存的数值来控制FPGA节点的通断,实现现场可编程目的。这种FPGA的工作特性与SRAM-FPGA相似,但与SRAM-FPGA相比,它的单元面积小。由于Flash具有不挥发性,使用时不必在每次上电时都重新进行功能加载,所以使用较方便。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值