基于Quartus II的FPGA/CPLD设计实例精解
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.4 开发环境与硬件描述语言

随着现代材料的开发和工艺水平的提高,超大规模集成电路已经可以将一个很大的电路系统集成到一个很小的芯片内。随着高层次自动综合技术、混合模拟技术及可测试性技术理论的研究和应用,诞生了自顶向下的设计方法(Top-Down Design,TDD),它直接面向用户需要,从系统总体出发,根据电路系统的行为和功能要求,从上到下逐层完成相应的设计描述。然后经过综合与优化、模拟与验证,直到生成器件,完成系统的整体设计,同时它也推动了电子设计自动化EDA进入电子系统设计自动化时代。要进行自动化设计,就需要用形式化方法来描述电路,即用HDL硬件描述语言进行电路设计。目前,国际上越来越多的EDA工具都接受HDL语言作为设计输入,如Mentor Graphics的Autologic E、Cadence的SPW、Synopsys的VHDL/Design Compiler和Altera的Quartus等,都可以解决从系统的高层次行为描述直接生成ASIC器件的一系列技术问题。

VHDL的英文全名是Very-High-Speed Integrated Circuit Hardware Description Language,诞生于1982年。1987年底,VHDL被IEEE和美国国防部确认为标准硬件描述语言。自IEEE公布了VHDL的标准版本——IEEE-1076(简称87版)之后,各EDA公司相继推出了自己的VHDL设计环境,或宣布自己的设计工具可以与VHDL接口。此后VHDL在电子设计领域得到了广泛的应用,并逐步取代了原有的非标准的硬件描述语言。1993年,IEEE对VHDL进行了修订,从更高的抽象层次和系统描述能力上扩展VHDL的内容,公布了新版本的VHDL,即IEEE标准的1076-1993版本(简称93版)。现在,VHDL和Verilog HDL作为IEEE的工业标准硬件描述语言,又得到众多EDA公司的支持,在电子工程领域,已成为事实上的通用硬件描述语言。

VHDL主要用于描述数字系统的结构、行为、功能和接口。除了含有许多具有硬件特征的语句外,VHDL的语言形式和描述风格与句法十分类似于一般的计算机高级语言。VHDL的程序结构特点是将一项工程设计或设计实体(可以是一个元件、一个电路模块或一个系统)分成外部(或称可视部分及端口)和内部(或称不可视部分)两部分。在对一个设计实体定义了外部界面后,一旦其内部开发完成后,其他的设计就可以直接调用这个实体。这种将设计实体分成内、外部分的概念是VHDL系统设计的基本点。

应用VHDL进行工程设计有以下优点。

(1)与其他的硬件描述语言相比,VHDL具有更强的行为描述能力,从而决定了它成为系统设计领域最佳的硬件描述语言。强大的行为描述能力是避开具体的器件结构,从逻辑行为上描述和设计大规模电子系统的重要保证。

(2)VHDL丰富的仿真语句和库函数,使得在任何大系统的设计早期就能查验设计系统的功能可行性,随时可对设计进行模拟仿真。

(3)VHDL语句的行为描述能力和程序结构决定了它具有支持大规模设计的分解和已有设计的再利用功能,符合市场需求的大规模系统高效、高速地完成必须有多人甚至多个组共同并行工作。

(4)对于用VHDL完成的设计,可以利用EDA工具进行逻辑综合和优化,并自动把VHDL描述设计转变成门级网表。

(5)VHDL对设计的描述具有相对独立性,设计者可以不懂硬件的结构,也不必管最终设计实现的目标器件是什么,而进行独立的设计。

以下程序是一个简单的VHDL的例子(12位寄存器)。

            -- VHDL Example
            -- User-Defined Macrofunction
            ENTITY reg12 IS
            PORT(
            d: IN BIT_VECTOR(11 DOWNTO 0);
            clk : IN BIT;
            q: OUT BIT_VECTOR(11 DOWNTO 0));
            END reg12;
            ARCHITECTURE a OF reg12 IS
            BEGIN
            PROCESS
            BEGIN
            WAIT UNTIL clk = '1';
            q <= d;
            END PROCESS;
            END a;