三防平板定制中的EDA工具在EDA技术应用中占据着极其重要的位置,EDA的核心是利用计算机完成电子设计全程自动化,因此基于计算机环境的 EDA 软件支持是必不可少的。本节主要介绍当今广泛使用的、以开发FPGA和CPLD为主的EDA工具。
由于EDA的整个流程涉及不同技术环节,在每个环节中必须由对应的软件包或专用EDA工具独立处理,包括对电路模型的功能模拟、对 VHDL 行为描述的逻辑综合等,因此单个EDA工具往往只涉及EDA流程中的某一步骤。本节就以EDA设计流程中涉及的主要软件包为依据对EDA工具进行分类,并给予简要介绍。EDA工具大致可以分为设计输入编辑器、HDL综合器、仿真器、适配器(或布局布线器)、下载器(编程器)五种类型。
当然这种分类不是绝对的,还有些辅助的EDA工具没有在上面的分类中。
1.设计输入编辑器
三防平板定制中的设计输入编辑器可以接收不同的设计输入表达方式,如原理图输入方式、状态图输入方式、波形输入方式及HDL文本输入方式。在可编程逻辑器件生产厂商提供的EDA开发工具中,一般都包含设计输入编辑器,如Xilinx的ISE、Altera的MAX+PlusⅡ和QuartusⅡ等。
通常,专业的 EDA 工具供应商也提供相应的设计输入工具,这些工具一般与该公司的其他电路设计软件整合,这点尤其体现在原理图输入环境上。由于HDL(包括VHDL、Verilog HDL等)的输入方式是文本格式,所以它的输入实现要比原理图输入简单得多,用普通的文本编辑器即可完成。
2.HDL综合器
三防平板定制中的由于目前通用的HDL语言为VHDL、Verilog HDL,所以下面介绍的HDL综合器主要是针对这两种语言的。三防平板定制中的硬件描述语言诞生的初衷是用于电路逻辑的建模和仿真,但直到Synopsys公司推出了HDL综合器后,才可以将HDL直接用于电路的设计。
HDL综合器把可综合的VHDL/Verilog HDL语言转化成硬件电路,一般要经过两个步骤。
(1)HDL综合器对VHDL/Verilog HDL进行分析处理,并将其转成相应的电路结构或模块,这时无须考虑实际器件的实现,即完全与硬件无关,这个过程是一个通用电路原理图形成的过程。
(2)对实际实现的目标器件的结构进行优化,并使之满足各种约束条件,优化关键路径等。
HDL综合器的输出文件一般是网络表文件,如EDIF格式(Electronic Design Interchange Format),文件后缀是“.edf”,是一种用于设计数据交换和交流的工业标准文件格式的文件,是可直接用VHDL/Verilog HDL语言表达的标准格式即网络表文件,或者是对应FPGA器件厂商的网络表文件,如Xilinx的XNF网络表文件。
由于综合器只是完成EDA设计流程的一个独立设计步骤,往往会被其他EDA环节调用以完成全部的流程。它的调用方式一般有两种:一种是前台模式,在调用时显示的是最常见的窗口界面;另一种是后台模式或控制台模式,在调用时不出现图形界面,仅在后台运行。HDL综合器的使用也有图形和命令行(Shell模式)两种模式。
3.仿真器
三防平板定制中的仿真器有基于元件(逻辑门)的仿真器和基于 HDL 语言的仿真器两种,基于元件的仿真器缺乏HDL仿真器的灵活性和通用性,在此主要介绍HDL仿真器。
在 EDA 设计技术中,仿真的地位十分重要。行为模型的表达、电子系统的建模、逻辑电路的验证,以及门一级系统的测试,每一步都离不开仿真器的模拟检测。在 EDA 发展的初期,快速进行电路逻辑仿真是当时的核心问题,即使在现在,各设计环节的仿真仍然是整个 EDA 工程流程中最耗时间的一个步骤,因此仿真器的仿真速度、仿真的准确性、易用性也是衡量仿真器的重要指标。三防平板定制中的按仿真器对设计语言不同的处理方式分类,可分为编译型仿真器和解释型仿真器。
编译型仿真器的仿真速度较快,但需要预处理,不便于即时修改;解释型仿真器的仿真速度一般,但可随时修改仿真环境和条件。
按处理的硬件描述语言类型不同,HDL仿真器可分为VHDL仿真器、Verilog仿真器、Mixed HDL仿真器(混合HDL仿真器,可同时处理Verilog HDL与VHDL语言),以及其他HDL仿真器(针对其他 HDL语言的仿真),几乎各个 EDA厂商都提供基于 Verilog HDL/VHDL的仿真器。
4.适配器(布局布线器)
三防平板定制中的适配器的任务是完成目标系统在器件上的布局布线,适配即结构综合,通常都是由可编程逻辑器件的厂商提供的专门针对器件开发的软件来完成的,这些软件可以单独存在,也可以嵌入在厂商的针对自己产品的集成EDA开发环境中。
适配器最后输出的是各厂商自己定义的下载文件,用于下载到器件中以实现设计。例如,适配器可输出多种用途的文件,如时序仿真文件、适配技术报告文件、面向第三方 EDA 工具的输出文件、FPGA/CPLD编程下载文件。
5.下载器(编程器)
下载器的功能是把设计文件下载到对应的实际器件中,以实现硬件设计。软件部分一般都是由可编程逻辑器件的厂商提供的专门针对器件下载或编程软件来完成的。