版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第2章 EDA设计流程及其工具 课程讲义,合肥工业大学 彭良清,本章内容,EDA设计的一般步骤 常用EDA工具软件 使用MAX+PLUS II软件设计过程 使用Quartus II软件设计过程 硬件设计和软件设计的时间协调 设计的几个问题,EDA设计的一般步骤,电路的模块划分 设计输入 器件和引脚指配 编译与排错 功能仿真和时序仿真 编程与配置,设计代码的芯片运行,电路的模块划分,人工 根据电路功能 进行 模块划分 合理的模块划分 关系到 电路的性能 实现的难易程度 根据模块划分和系统功能 确定: PLD芯片型号 模块划分后,就可以进行 具体设计 了,设计输入,一般EDA软件允许3种设计输入:
2、 HDL语言 电路图 波形输入,何为 ? 器件和引脚指配,器件指配 为设计输入 选择合适的PLD器件型号 何谓引脚指配 将设计代码(图形)中的端口(PORT) 和 PLD芯片的引脚 (PIN) 对应起来的. 指配文件 MAX+PLUS II: “ *.acf ” Quartus II: “ *.qsf ”,器件和引脚指配的方法,方法有2种 在软件的菜单界面中指配 修改指配文件(是文本文件),菜单界面中 指 配,修改指配文件,CHIP io_2d_lock BEGIN |iVD :INPUT_PIN = 7; |iHD :INPUT_PIN = 8; |iDENA :INPUT_PIN = 6;
3、 |iCLK :INPUT_PIN = 211; |oCLK :OUTPUT_PIN = 237; |oVD :OUTPUT_PIN = 234; |oHD :OUTPUT_PIN = 233; |oDENA :OUTPUT_PIN = 235; . DEVICE = EPF10K30AQC240-2; END; .,编译与排错,编译过程有2种,作用分别为: 语法编译:只是综合并输出网表 编译设计文件,综合产生门级代码 编译器只运行到综合这步就停止了 编译器只产生估算的延时数值 完全的编译:包括编译,网表输出,综合,配置器件 编译器除了完成以上的步骤,还要将设计配置到ALTERA的器件中去 编
4、译器根据器件特性产生真正的延时时间和给器件的配置文件,功能仿真和时序仿真,仿真的概念: 在设计代码下载到芯片前,在EDA软件中对设计的输出进行波形仿真。 常用的2种仿真模式 功能仿真 对设计的逻辑功能进行仿真 时序仿真 对设计的逻辑功能和信号的时间延时进行仿真。 仿真前还要做的工作 输入信号的建立,Quartus II软件中 关于仿真的原文,2种 仿真文件,矢量波形文件: a Vector Waveform File (.vwf) 文本矢量文件 a text-based Vector File (.vec),编程与配置,最后, 如果仿真 也正确 的话, 那我们就可以 将设计代码 配置或者编程
5、到 芯片 中了 编程的文件类型 对于CPLD或者EPC2,ECS1等配置芯片,编程文件扩展名为:“ *.POF “ 配置的文件类型 对于FPGA芯片,配置文件扩展名为:“ *.SOF “,硬件设计和软件设计的时间协调,软件模块划分,器件的初步信号确定(主要是根据需要的I/O引脚的数量) 软件设计,硬件外围电路设计和器件选择 软件仿真 仿真完成后,器件信号的重新审核,进行硬件电路图设计 综合调试 完成,设计的几个问题,如何组织多个设计文件的系统?,项目的概念。 时钟系统如何设计? 电路的设计功耗 高速信号的软件和硬件设计,The end.,以下内容为正文的引用,可不阅读。,常用EDA工具软件,E
6、DA软件方面,大体可以分为两类: PLD器件厂商提供的EDA工具。较著名的如: Altera公司的Max+plusII和QuartusII、 Xilinx公司的FoundationSeries、 Latice-Vantis公司的ispEXERTSystem。 第三方专业软件公司提供的EDA工具。常用的有: Synopsys公司的FPGACompilerII、 ExemplarLogic公司的LeonardoSpectrum、 Synplicity公司的Synplify。 第三方工具软件是对CPLD/FPGA生产厂家开发软件的补充和优化,如通常认为Max+plusII和QuartusII对VHD
7、L/VerilogHDL逻辑综合能力不强,如果采用专用的HDL工具进行逻辑综合,会有效地提高综合质量。,ALTERA 公司的EDA合作伙伴,硬件描述语言:起源,是电子电路的文本描述。 最早的发明者:美国国防部,VHDL,1983 大浪淘沙,为大者二: VHDL 和 Verilog HDL 其他的小兄弟: ABEL、AHDL、System Verilog、System C。,一个D触发器的VHDL代码例子,- VHDL code position: p83_ex4_11_DFF1 - - LIBARY IEEE; - USE IEEE.STD_LOGIC_1164.ALL; ENTITY DFF
8、1 IS PORT (CLK:INBIT; D:INBIT; Q:OUTBIT ); END ENTITY DFF1; ARCHITECTURE bhv OF DFF1 IS BEGIN PROCESS(CLK) BEGIN IF CLKEVENT AND (CLK=1) AND ( CLKLAST_VALUE = 0) THEN - 严格的CLK信号上升沿定义 Q = D; END IF; END PROCESS; END ARCHITECTURE bhv;,代码实体(510),代码结构体(1120),如何使用VHDL来设计电路?,VHDL设计电路的的5步曲 语言编码 逻辑综合 功能和时序仿
9、真 器件适配 器件编程,使用MAX+PLUS II软件的设计过程,MAX+PLUS II设计过程说明,Compiler Netlist Extractor(编译器网表提取器): 通过该过程生成设计项目的网表文件, Database Builder(数据库构建器 ): 用于将所有的设计文件集成到项目数据库中 如果指定端口的实体已被抽取. 则从盘中读取. cnf文件信息就可以了, 因而节省了时间. Logic Synthesizer (逻辑综合器): 选择合适的逻辑化简算法, 去除冗余和无用逻辑, 有效使用器件的逻辑资源. Fitter(适配器) 将电路适配到某个PLD器件中。 Timing SN
10、F Extractor(时序SNF文件提取器) 产生用于时序仿真的网表文件 Assembler(汇编器) 产生用于器件编程的目标代码,其他的HDL综合工具,Altera公司 MAX+PLUS II 10.2(已经停止发行,新器件不支持) QUARTUS II 5.0(推荐使用) Xilinx 公司 ISE 7.0:Xilinx公司集成开发的工具 Foundation: Xilinx公司早期开发工具,逐步被ISE取代 ISE Webpack: Webpack是xilinx提供的免费开发软件,功能比ISE少一些,可以从xilinx网站下载,有了HDL语言后?,硬件设计人员 的工作过程 已经 类似与
11、 软件设计人员,那么 这种模式的好处是? 让我们先看看原来是如何做的,Compiler Netlist Extractor(编译器网表提取器),The Compiler module that converts each design file in a project (or each cell of an EDIF Input File) into a separate binary CNF. The filename(s) of the CNF(s) are based on the project name. Example The Compiler Netlist Extractor
12、 also creates a single HIF that documents the hierarchical connections between design files. This module contains a built-in EDIF Netlist Reader, Verilog Netlist Reader, VHDL Netlist Reader, and converters that translate ADFs and SMFs for use with MAX+PLUS II. During netlist extraction, this module
13、checks each design file for problems such as duplicate node names, missing inputs and outputs, and outputs that are tied together. 返回,Database Builder(数据库构建器 ):,The Compiler module that builds a single, fully flattened project database that integrates all the design files in a project hierarchy. The
14、 Database Builder uses the HIF to link the CNFs that describe the project. Based on the HIF data, the Database Builder copies each CNF into the project database. Each CNF is inserted into the database as many times as it is used within the original hierarchical project. The database thus preserves t
15、he electrical connectivity of the project. The Compiler uses this database for the remainder of project processing. Each subsequent Compiler module updates the database until it contains the fully optimized project. In the beginning, the database contains only the original netlists; at the end, it c
16、ontains a fully minimized, fitted project, which the Assembler uses to create one or more files for device programming. As it creates the database, the Database Builder examines the logical completeness and consistency of the project, and checks for boundary connectivity and syntactical errors (e.g.
17、, a node without a source or destination). Most errors are detected and can be easily corrected at this stage of project processing. 返回,Logic Synthesizer,The Compiler module that synthesizes the logic in a projects design files. Using the database created by the Database Builder, the Logic Synthesiz
18、er calculates Boolean equations for each input to a primitive and minimizes the logic according to your specifications. For projects that use JK or SR flipflops, the Logic Synthesizer checks each case to determine whether a D or T flipflop will implement the project more efficiently. D or T flipflop
19、s are substituted where appropriate, and the resulting equations are minimized accordingly. The Logic Synthesizer also synthesizes equations for flipflops to implement state registers of state machines. An equation for each state bit is optimally implemented with either a D or T flipflop. If no stat
20、e bit assignments have been made, or if an incomplete set of state bit assignments has been created, the Logic Synthesizer automatically creates a set of state bits to encode the state machine. These encodings are chosen to minimize the resources used. 返回,Fitter(适配器),The Compiler module that fits th
21、e logic of a project into one or more devices. Using the database updated by the Partitioner, the Fitter matches the logic requirements of the project with the available resources of one or more devices. It assigns each logic function to the best logic cell location and selects appropriate interconn
22、ection paths and pin assignments. The Fitter attempts to match any resource assignments made for the project with the resources on the device. If it cannot find a fit, the Fitter allows you to override some or all of your assignments or terminate compilation. The Fitter module generates a Fit File t
23、hat documents pin, buried logic cell, chip, clique, and device assignments made by the Fitter module in the last successful compilation. Each time the project compiles successfully, the Fit File is overwritten. You can back-annotate the assignments in the file to preserve them in future compilations
24、. 返回,Timing SNF Extractor(时序SNF文件提取器),The Compiler module that creates a timing SNF containing the logic and timing information required for timing simulation, delay prediction, and timing analysis. The Timing SNF Extractor is turned on with the Timing SNF Extractor command (Processing menu). It is
25、also turned on automatically when you turn on the EDIF Netlist Writer, Verilog Netlist Writer, or VHDL Netlist Writer command (Interfaces menu). The Timing SNF Extractor cannot be turned on at the same time as the Functional SNF Extractor or the Linked SNF Extractor. A timing SNF describes the fully
26、 optimized circuit after all logic synthesis and fitting have been completed. Regardless of whether a project is partitioned into multiple devices, the timing SNF describes a project as a whole. Therefore, timing simulation and timing analysis (including delay prediction) are available only for the
27、project as a whole. Neither timing simulation nor functional testing is available for individual devices in a multi-device project. Functional testing is available only for a single-device project. 返回,Assembler(汇编器),The Compiler module that creates one or more programming files for programming or co
28、nfiguring the device(s) for a project. The Assembler module completes project processing by converting the Fitters device, logic cell, and pin assignments into a programming image for the device(s), in the form of one or more POFs, SOFs, Hex Files, TTFs, Jam Files, JBC Files, and/or JEDEC Files. POF
29、s and JEDEC Files are always generated; SOFs, Hex Files, and TTFs are always generated if the project uses ACEX 1K, FLEX 6000, FLEX 8000 or FLEX 10K devices; and Jam Files and JBC Files are always generated for MAX 9000, MAX 7000B, MAX 7000AE or MAX 3000A projects. If you turn on the Enable JTAG Sup
30、port option in the Classic & MAX Global Project Device Options dialog box (Assign menu) or the Classic & MAX Individual Device Options dialog box, the Assembler will also generate Jam Files and JBC Files for MAX 7000A or MAX 7000S projects. After compilation, you can also use SOFs to create differen
31、t types of files for configuring FLEX 6000, FLEX 8000 and FLEX 10K devices with Convert SRAM Object Files (File menu). The programming files can then be processed by the MAX+PLUS II Programmer and the MPU or APU hardware to produce working devices. Several other programming hardware manufacturers al
32、so provide programming support for Altera devices. 返回,Simulation Mode,Functional Simulates the behavior of flattened netlists extracted from the design files. You can use Tcl commands and scripts to control simulation and to provide vector stimuli. You can also provide vector stimuli in a Vector Waveform File (.vwf) or a text-based Vector Fil
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 质量保证协议书
- 装修返点协议书
- 自然灾害协议书
- 总承包合同范本
- 屋基调换协议书
- 艺校合作协议书
- 小孩周岁协议书
- 舞团合伙协议书
- 闸机购买合同范本
- 英语短语协议书
- 2025新疆交通投资(集团)有限责任公司所属公司招聘26人笔试参考题库附带答案详解(3卷)
- 生化肝功项目解读课件
- 北京林业大学《线性系统理论基础》2025-2026学年第一学期期末试卷
- 2025贵州六盘水市水城区招聘城市社区工作者162人备考考点题库及答案解析
- 2025年山东省检察院书记员考试试题及答案
- 2025天津大学管理岗位集中招聘15人笔试考试参考题库及答案解析
- 外卖运营面试攻略与技巧全解析
- 2025浙江杭州地铁商业经营管理有限公司招聘11人(第四批)笔试历年参考题库附带答案详解
- 2025年人工智能培训项目可行性研究报告及总结分析
- 小班数学课件《挂灯笼》课件
- 安全三日管理制度
评论
0/150
提交评论