电子设计自动化EDA_第1页
电子设计自动化EDA_第2页
电子设计自动化EDA_第3页
电子设计自动化EDA_第4页
电子设计自动化EDA_第5页
已阅读5页,还剩50页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1.1 引言1.2 EDA技术发展1.3 EDA系统构成1.4 EDA发展趋势1.5 常用EDA工具第1章 电子设计自动化综述1.1 引言 电子设计自动化:简称EDA(Electronic Design Automation) 从理论角度:EDA技术是以计算机和微电子技术为先导,汇集了数据库、计算机图形学、图论与拓扑逻辑、计算数学、优化理论以及微电子工艺与结构学等多种学科最新成果的先进技术。 从技术应用角度:EDA技术是以大规模集成电路为设计载体,以硬件描述语言为描述系统的主要表达方式,以计算机为设计环境,利用软件开发工具自动完成设计系统的编译、化简、综合、仿真、布局布线、优化,直至完成对特定

2、芯片的适配、映射、编程下载,最终将设计系统集成到特定的芯片中,完成专用集成电路芯片的设计。1.2 EDA技术发展 EDA技术伴随着计算机、集成电路、电子系统设计的发展,经历了三个发展阶段: 计算机辅助设计CAD(CAD:Computer Assist Design) 计算机辅助工程设计CAE(CAE: Computer Assist Engineering Design) 电子系统设计自动化ESDA(ESDA: Electronic System Design Automation)90年代后期,设计师逐步从使用硬件转向设计硬件,从电路级电子产品开发转向系统级芯片开发(即片上系统集成SOC:S

3、ystem on chip),后来发展的电子系统设计自动化ESDA(Electronic System Design Automation)工具则以系统级设计为核心,包括系统行为级描述与结构级综合,系统仿真与测试验证,系统划分与指标分配,系统决策与文件生成等一整套设计工具。 1.3 EDA系统构成 EDA技术研究的对象是电子设计的全过程,有系统级、电路级和物理级各个层次的设计;涉及的电子系统从低频、高频到微波,从线性到非线性,从模拟到数字,从通用集成电路到专用集成电路构造的电子系统,因此EDA技术研究的范畴相当广泛。如果从PLD开发与应用角度看,EDA系统应当包含以下子模块: 设计输入子模块

4、设计数据库子模块 分析验证子模块 综合仿真子模块 布局布线子模块等 1. 设计输入模块:接受用户的设计描述,并进行语义正确性、语法规则的检查,检查通过后,将用户的设计描述转换为EDA软件系统的内部数据格式,存入设计数据库备其它模块调用。该模块一般包含针对不同描述方式的编辑器,如图形编辑器、文本编辑器等,同时包含对应的分析器。 2. 设计数据库模块:存放系统提供的库单元以及用户的设计描述和中间设计结果。3. 分析验证模块:包括各个层次的模拟验证、设计规则的检查、故障诊断等。4. 综合仿真模块:包括各个层次的综合工具,理想的情况是:从高层次到低层次的综合仿真全部由EDA工具自动完成。5. 布局布线

5、模块:实现由逻辑设计到物理实现的映射,因此该模块与物理实现的方式密切相关。例如,最终的物理实现可以是门阵列、可编程逻辑器件等,由于对应的器件不同,因此各自的布局布线工具会有很大的差异。 全球提供EDA软件工具的厂商有近百家之多,可以分为两大类 一类是EDA专业软件公司开发的EDA软件工具; 另一类是半导体器件厂商,为了销售公司的产品开发的EDA软件工具。 1.4 EDA发展趋势1. 输入工具的发展早期的原理图输入方式80年代末,各种硬件描述语言描述为主的设计方式90年代EDA公司相继推出一批图形化免编程的设计输入工具,更加直观且人性化。2. 具有混合信号处理能力数字电路设计的EDA工具90年代

6、以来数/模混合信号设计工具的开发。 对数字信号的语言描述IEEE已经制定了VHDL标准 对模拟信号的语言描述正在制定AHDL标准 提出了对微波信号的MHDL描述语言。3. 更为有效的仿真工具 仿真的两个阶段 设计前期的系统级仿真:主要验证系统的功能; 设计过程中的电路级仿真:主要验证系统的性能,决定怎样实现设计所需的精度。 在整个电子设计过程中仿真是花费时间最多的工作,也是占用EDA工具资源最多的一个环节。提高仿真的有效性一方面是建立合理的仿真算法,另一方面是系统级仿真中系统级模型的建模,电路级仿真中电路级模型的建模。预计在下一代EDA工具中,仿真工具将有一个较大的发展。4. 更为理想的综合工

7、具设计综合工具的目的:将设计者的精力从繁琐的版图设计和分析中转移到设计前期的算法开发和功能验证上。设计综合工具由最初的只能实现逻辑综合,逐步发展到可以实现设计前端的综合直至设计后端的版图综合以及测试综合的理想且系统的综合工具。 设计前端的综合工具也称高层次综合工具,可以实现从算法级的行为描述到寄存器传输级结构描述的转换,给出满足约束条件的硬件结构。逻辑综合的结果将作为版图综合的输入数据,进行版图综合。 版图综合则是将门级和电路级的结构描述转换成物理版图的描述,版图综合实现最佳的版图设计。 测试综合贯穿在设计过程的始终。测试综合时可以消除设计中的冗余逻辑、诊断不可测的逻辑结构、自动插入可测性结构

8、、生成测试向量,缩短设计周期,减少测试费用。5. IP复用 IP(Intellectual Property)的含义是指知识产权、著作权等,在电子设计领域IP核指的是完成某种功能的虚拟电路模块,一般将IP核分为软核和硬核。 软核指的是以硬件描述语言进行描述的设计模块,允许用户调用、或者重新定义关键性能参数的IP核。 硬核指的是以版图形式描述的设计模块,由于硬核基于一定的设计工艺,设计者不能再对其进行改动。 标准: 虚拟插座接口协会VSIA(Virtual Socket Interface Association),制定的关于IP产品的标准与规范。 虚拟元件交易所VCX,以加强IP信息的交流。6

9、. 片上系统 片上系统SOC(System On Chip)集成指的是把一个完整的系统集成在一个芯片上。由于微电子技术的进步,已经为SOC设计实现提供了硬件基础;而EDA软件技术的发展,则为SOC设计创造了必要的开发平台。 目前,使用PLD芯片完成SOC设计已经成为现实。如Altera公司推出的Excalibur系列器件就是嵌入了硬核RISC微处理器的PLD器件。Xilinx公司最新推出的Virtex系列产品可以完成SOC设计。Xilinx公司还提供了大量的软IP核,有PCI、存储器、通信模块和图像处理等,Virtex系列产品支持这些软IP核的应用,为SOC设计提供了可能。1.5 常用EDA工

10、具1. MAX+plusII MAX+plusII是Multiple Array Matrix and Programmable Logic Use System的缩写,是Altera公司的PLD软件开发工具。可以运行在多种操作平台上,提供一种与器件结构无关的设计环境,设计人员使用开发工具进行设计,通过设计软件提供的多种输入方式,编译、仿真和综合,最终将设计方案转化为PLD器件所需要的文件格式。MAX+plusII支持Altera公司的部分PLD系列器件的编程,如:Classic系列、MAX系列、FLEX系列和ACEX1K系列等。1.5.1 Altera公司的EDA工具2. QuartusII

11、 Altera公司最新推出的QuartusII设计软件 支持APEX系列、Cyclone系列、Stratix系列和Excalibur系列等新型系列器件的开发。 含有工作组计算、集成逻辑分析仪、EDA工具集成、多过程支持、增强重编译和IP集成等特性。 加强了网络功能。 支持高速I/O设计。1.5.2 Xilinx公司的EDA工具 ISE简介 ISE(Integrated System Configuration)是集成系统环境的简称,是Xilinx公司提供的一套完整的软件工具集,利用ISE可以完成FPGA/CPLD开发过程中的全部操作。 Xilinx公司提供的集成系统环境ISE,从设计输入、仿真

12、、编译、综合、布局布线直至下载都在ISE集成环境下完成。最新版本:ISE 6.x。 ISE工具分为输入工具、仿真工具、综合工具、实现工具和辅助工具等几大类。 1.5.3 Lattice公司的EDA工具 Lattice公司已经推出了第四代ispLSI器件的开发软件ispDesign EXPERT。在推出ispDesign EXPERT开发软件之前,先后有pDS开发软件、ispSynario System 开发软件和ispEXPERT System开发软件,这些开发软件均可对Lattice公司的所有ispLSI器件进行设计文件的输入、编译、仿真、下载。第2章 MAX+plusII 软件及应用 2.

13、1 MAX+plusII软件概述2.2 MAX+plusII 使用流程2.3 图形文件输入2.4 文本文件输入2.5 层次化设计2.6 参数化模块库的使用2.7 软件使用中常见错误及其排除MAX+plusII分为商业版、基本版和学生版。Altera公司推荐pc系统的使用配置: 奔腾系列计算机、WindowsNT4.0、Windows982000XP、有效内存,参考表2.1、与Microsoft Windows兼容的图形卡和17英寸彩色显示、CD-ROM驱动器、并口和RS232串口。 器件系列最小有效内存(Mbytes)最小物理内存(Mbytes)ACEX 1K256128FLEX 10K256

14、128FLEX 60006432FLEX 80006432MAX 90006432MAX 70004816表2.1 MAX+plusII软件运行的内存要求 使用MAX+plusII软件进行可编程逻辑器件的设计开发过程主要有四个阶段: 1. 设计输入:原理图设计输入、硬件描述语言设计输入 、波形图设计输入 、底层设计输入 、层次设计输入 2. 设计处理 3. 设计校验:包括仿真分析 、定时分析 4. 器件编程 2.1.1 MAX+plusII简介设置license: 双击MAX+plusII图标,进入MAX+plusII项目管理器界面。选择Options/License Setup命令,则出现L

15、icense Setup对话框,单击Browse按钮,在弹出的License File对话框中选择license.dat文件。如果授权许可文件正确,将看到License Setup对话框右侧栏目Unlicensed Feature的功能全部被移到左侧Licensed Feature栏目下,单击OK,则软件提供的所有功能可以使用。 2.1.2 MAX+plusII安装2.2 MAX+plusII使用流程目的:为方便设计模块的管理。 项目下的设计文件格式可以是原理图、文本文件、波形图、符号以及底层输入等不同形式。 1. 建立设计项目 在MAX+plusII项目管理器File菜单下选中Project

16、/Name,出现对话框,在项目命名对话框里,选择正确的驱动器、路径,输入设计项目名,按OK,MAX+plusII标题栏将会显示新建立的项目名称。 2.2.1 建立项目2. 输入设计文件 在MAX+plusII的项目管理器File菜单下选中New,出现新建文件对话框。根据设计文件需要选择对应的格式。在接着打开的编辑窗口输入设计文件,由于文件格式不同,打开的编辑窗口也有所不同。1.编译器在MAX+plusII菜单中选择Compiler项,出现编译窗口。 2.2.2 设计处理 编译网表提取数据库建立逻辑综合逻辑划分分配定时模拟网表装配 选择Start按钮,编译过程中如果出错,其错误及警告等信息将会显

17、示在自动打开的Message-Compiler窗口,可以定位错误。修改错误,再次运行编译,直至纠正全部错误。 编译结束,编译器将会产生相应的输出文件,输出文件的图标出现在对应模块框的下方,有*.rpt、*.snf和*.pof文件等。双击文件图标,可以打开输出文件。 3. 执行编译 2.2.3 设计检验 检验过程分: 仿真分析:需要输入激励信号,重点检查逻辑功能是否符合设计要求。 定时分析:重点检查设计的内部定时及器件的最高工作频率是否符合设计要求。 1. 仿真分析 步骤:打开波形图编辑窗口,建立波形图文件,接着在波形图中调入输入、输出引脚和中间节点,输入激励信号,进行仿真分析。原理:根据编译产

18、生的*.SNF文件中包含的逻辑信息和时间信息,读取输入的激励信号,进行中间信号和输出信号的分析和计算。仿真分析结束:生成仿真波形图文件*.SCF。(1) 打开波形图编辑窗口。(2) 从SNF文件中提取节点信息。(3) 波形图文件存盘。(4) 改变栅格宽度和结束时间 改变栅格宽度改变结束时间(5) 输入信号赋值。通过高电平 的或设置低电平 的按钮进行电平设置。通过 按钮进行时钟设置。设置时钟信号的起始值时钟信号的最小周期时钟周期的放大倍数常用按钮:不定状态 :将被选中的信号设置为不定状态。高阻状态 :将被选中的信号设置为高阻状态。逻辑取反 :将被选中的信号进行逻辑取反的操作。周期信号 :将被选中

19、的信号设置为周期信号。组群信号 :将被选中的组群信号或总线信号赋组值。(6) 仿真分析 完成输入信号的赋值,将仿真文件初始设置存盘后,在MAX+plusII菜单中选择Simulator,屏幕显示仿真分析对话框。 点击Start,当显示零错误和零警告,点击OK,屏幕则出现仿真结果波形图。波形可以以组的形式显示,也可以以单个信号的形式显示。 1 器件选择 在Assign菜单下选择Device命令项,出现Device对话框:选择器件系列选择器件2.2.4 器件选择与引脚锁定2 引脚锁定 引脚锁定的含义就是要将设计文件的输入输出信号分配到器件特定的引脚上,引脚锁定的方法有多种,可以采用执行Assign

20、下Pin/location/chip命令方式,也可以调用底层编辑器,选择Layout/Device View,直接将引脚拖到引脚的位置上。 输入信号的名称引脚的属性引脚号 运行MAX+plusII编译器Compiler之后,将生成编程文件*.POF、*.JED或*.SOF,编程文件提供给MAX+plusII编程器Programmer,可以对Altera公司的可编程器件进行编程,编程器还可对器件进行校验、试验、检查器件是否空白、进行功能测试等。 在运行MAX+plusII编程器Programmer之前,首先将编程硬件与计算机相连,插入可编程逻辑器件,然后选择编程文件,运行编程器,将编译通过的编程

21、数据传送到可编程器件中。 2.2.5 器件编程1. 设置编程硬件 在MAX+plusII菜单下选择Programmer,系统进入编程状态。从菜单栏中选择Options/Hardware Setup命令,系统弹出Hardware Setup对话框,单击对话框中的下拉按钮,弹出几种编程硬件方式,常用的有BitBlaster串行下载硬件设置和ByteBlaster(MV)并行下载硬件设置。 2. 运行编程器 选择编程对话框Program 或Configure,编程模块将编程数据写入可编程器件中。如果编程器件选择的是MAX系列,则Program按钮有效;如果选择的编程器件是FLEX和ACEX系列,则C

22、onfigure按钮有效。 Examine:将编程数据读入缓冲区。 Verify:检验器件中的编程数据是否同编译生成的编程数据一致。如果设置了编程器件的保密位,则无法从器件中读入数据,此时不能检验。 Blank Check:测试器件是否未编程或已被擦除。 Test:用*.SCF或*.VEC文件进行功能仿真。 Security Bit:选中该项,则在器件中设置保密位。 3. 其他格式的编程文件 (1).sof文件:是SRAM Object文件,专门用于FLEX系列、ACEX系列等器件的串行下载BitBlaster或并行下载ByteBlaster方式的编程文件, (2).pof文件:是Progra

23、mming Object文件,主要用于的MAX器件的编程。 (3)ASCII码格式文件:有3种不同扩展名的ASCII码格式文件,分别是.jam、.jed和.ttf。(4)二进制格式文件:.jbc和.rbf文件。.jbc文件是Jam Byte-Code文件,可以供多数可编程逻辑器件使用。.rbf文件供FLEX系列器件使用的编程文件,该文件的数据是低位在前串行方式,因此可以用计算机或单片机等微处理器,以PS或PSA方式对器件进行在线编程。(5).sbf文件:针对FLEX系列器件使用BitBlaster串行下载方式且在PS方式下的配置文件。(6).hex文件:使用第三方编程器对并行EPROM编程的数

24、据文件。 产生其他格式的编程文件:在Files菜单下选择Convert SRAM Object Files,系统进入Convert SRAM Object Files对话框。对话框分为两部分,上半部分是转换的输入源文件,下半部分是转换的输出文件,点击OK则完成转换,在对应的目录下就可以查看到转换后的文件。 MAX+plusII提供了原理图编辑器,通过该编辑器可以建立并保存原理图文件。 原理图文件输入主要包括以下几个步骤: (1)原理图文件的建立 (2)原理图文件的编辑 (3)原理图文件的保存及错误检查 (4)建立默认逻辑符号 2.3 图形文件输入 MAX+plusII中的原理图文件后缀为*.g

25、df,在MAX+plusII的项目管理器File菜单下选中New,出现新建文件对话框。 在对话框中选择Graphic Editor file,即原理图输入文件,选择OK。 在无名称的原理图编辑窗口的File菜单下,选中Save或Save As,选择建立项目的目录,输入原理图文件名,按OK。 2.3.1 原理图文件的建立 编辑原理图的主要工作有:调用元器件、连接元器件、建立输入和输出引脚等。 1. 调用符号 调用符号有几种方法:一是在原理图编辑窗口的空白处,双击鼠标左键;二是原理图编辑窗口空白处单击鼠标右键,在出现的对话框内选择enter symbol项;三是在symbol菜单下选择 enter

26、 symbol。三种方法执行的结果均出现调用符号对话框, 2.3.2 原理图文件的编辑2. 逻辑符号之间的连接 逻辑符号之间的连接: 直接连线法:当鼠标移动至逻辑符号可以连接的引线处,鼠标标识变成十字形式,按住鼠标左键拖到另一逻辑符号的连接引脚处,即可实现逻辑符号对应引脚的连接。 命名法:通过对逻辑符号引脚的命名实现逻辑符号之间的连接。 连接线型的选择:在Options菜单下选择Line Style线型;或原理图空白处单击鼠标右键,在出现的对话框里选择Line Style。线型有几种,其中细实线类型为实际连接线;粗实线类型为总线连接线,表示一组信号。一般情况下,总线有线网名,如D7.0,表示有

27、一个8位总线D7、D6、D0。 连接线的删除:选中待删除的连接线,按DEL键。 3. 建立输入和输出信号 输入和输出引线的调用:利用调用符号的方法,在调用符号对话框的Symbol Name处,输入input或output,按OK,输入或输出引线则出现在原理图上。 输入和输出线的命名:指向input或output的默认名“PIN_NAME”,双击鼠标,键入自定义的名称。按回车键,自动指向下一条引线的“PIN_NAME”处,继续对下一条引线命名。 4. 图纸尺寸的修改选择File菜单下的Size,屏幕出现Size对话框。Orientation:指明图纸方向。Sheet Size:选择图纸尺寸。Au

28、tomatic:自动选择图纸尺寸。 在File菜单下选择Project/Save & Check命令保存文件,同时打开MAX+plusII编译器窗口,检查该文件的错误并给出报告。若无错误和警告,选择OK,返回原理图编辑窗口;若有错误,错误提示信息列在Message - Compiler窗口。双击错误信息行Error: ,MAX+plusII自动打开原理图编辑器,并定位在错误点。 2.3.3 原理图文件的处理 原理图输入文件检查无误,可根据需要将其建立一个默认逻辑符号,供其它原理图文件调用。操作如下:在File菜单下选择Create Default Symbol建立默认符号。该逻辑符号的

29、调用方法与其它逻辑符号的调用方法相同。2.3.4 建立默认符号 MAX+plusII软件平台接受的文本设计文件:硬件描述语言HDL编写的文件,包括:VHDL、Verilog HDL或AHDL。VHDL文件后缀为.vhd,AHDL文件后缀为*.tdf,Verilog HDL文件后缀为.v。2.4.1 VHDL文件的建立 在MAX+plusII管理器的File菜单下,调入项目或新建项目。 在MAX+plusII的项目管理器File菜单下,选择New,在对话框中选择Text Editor file,即文本输入文件,选择OK,未命名的文本编辑窗口被打开。 在文本编辑窗口的File菜单下,选中Save或

30、Save As,在接着出现的窗口下,选择建立项目的目录,输入VHDL文件名,按OK,建立一个新文本文件。 2.4 文本文件输入2.4.2 VHDL文件的编辑 直接编辑利用模板编辑AHDL TemplateVHDL TemplateVerilog Template VHDL文件的错误检查为了保证输入的VHDL文件的正确性,应检查文件的句法错误:选择FileProject/Save & Check。 建立默认逻辑符号 VHDL文件格式描述的逻辑设计同样可以建立一个同名的逻辑符号,以方便其它逻辑设计的调用。VHDL逻辑符号建立的方法与原理图逻辑符号建立的方法完全一样。首先将VHDL文件调入,

31、选File菜单下Create Default Symbol ,建立一个与VHDL文件*.vhd相同文件名,不同后缀的符号文件*.sym。 MAX+plusII支持多级层次化设计,也就是说允许在一个设计方案中,支持多层设计结构,每层中的设计文件可以是不同格式的设计文件,因此,也称为混合输入法。 在MAX+plusII提供的Hierarchy Display层次显示窗口,可以灵活地进入每层设计文件的编辑窗口。 2.5 层次化设计步骤如下: 建立顶层图形文件 调用已建立的符号 进行符号之间的连接 顶层文件的编译处理、仿真检测、器件选择、引脚锁定、下载编程等各种操作与其他文件的处理相同。2.5.1 层

32、次化设计文件的输入 对于已建立的层次化设计文件,在MAX+plusII菜单下选择Hierarchy Display命令,屏幕将显示该项目的层次结构。每个文件名旁是该文件的格式,用图标和文字给出,点击图标可以进入该文件的编辑器同时打开该文件。图标上方若有亮条,表示该文件已被打开。 首先打开顶层文件,双击顶层文件中的某个底层符号,打开底层文件的编辑窗口及其文件,对该底层文件进行编译和仿真。 2.5.2 层次化设计文件的管理MAX+plusII提供了两种调用LPM的方法:在图形编辑器中调用、利用LPM管理器调用1. 图形编辑器下调用LPM打开MAX+plusII的图形编辑器,在空白处双击鼠标左键,选择LPM所在目录maxplus2max2libmega_lpm,所有LPM符号的名称,即宏单元名称出现在窗口中,设计者选择所需要的LPM符号。当LPM符号出现在图形编辑器窗口,双击参数框,可以设置LPM符号的参数。2.6.2 参数化模块库的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论