EDA技术实用教程.doc

上传人:创****公 文档编号:1855765 上传时间:2019-10-28 格式:DOC 页数:14 大小:273KB
返回 下载 相关 举报
EDA技术实用教程.doc_第1页
第1页 / 共14页
EDA技术实用教程.doc_第2页
第2页 / 共14页
点击查看更多>>
资源描述

《EDA技术实用教程.doc》由会员分享,可在线阅读,更多相关《EDA技术实用教程.doc(14页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、第第 1 章章 概概 述述本章首先介绍 EDA 技术和硬件描述语言及其发展过程,然后介绍基于 EDA 技术和 VHDL 的设计流程,以及 EDA 设计工具 Quartus II。1.1 电子设计自动化技术及其发展微电子技术的进步主要表现在大规模集成电路加工技术即半导体工艺技术的发展上, 使得表征半导体工艺水平的线宽已经达到了 60nm,并还在不断地缩小,而在硅片单位面 积上,集成了更多的晶体管。集成电路设计正在不断地向超大规模、极低功耗和超高速的 方向发展,专用集成电路 ASIC(Application Specific Integrated Circuit)的设计成本不断降 低,在功能上,现

2、代的集成电路已能够实现单片电子系统 SOC(System On a Chip) 。 现代电子设计技术的核心已日趋转向基于计算机的电子设计自动化技术,即 EDA(Electronic Design Automation)技术。EDA 技术就是依赖功能强大的计算机,在 EDA 工具软件平台上,对以硬件描述语言 HDL(Hardware Description Language)为系统 逻辑描述手段完成的设计文件,自动地完成逻辑编译、化简、分割、综合、布局布线以及 逻辑优化和仿真测试,直至实现既定的电子线路系统功能。EDA 技术使得设计者的工作 仅限于利用软件的方式,即利用硬件描述语言和 EDA 软

3、件来完成对系统硬件功能的实现, 这是电子设计技术的一个巨大进步。 EDA 技术在硬件实现方面融合了大规模集成电路制造技术、IC 版图设计、ASIC 测试 和封装、FPGA(Field Programmable Gate Array)/CPLD(Complex Programmable Logic Device)编程下载和自动测试等技术;在计算机辅助工程方面融合了计算机辅助设计 (CAD) 、计算机辅助制造(CAM) 、计算机辅助测试(CAT) 、计算机辅助工程(CAE) 技术以及多种计算机语言的设计概念;而在现代电子学方面则容纳了更多的内容,如电子 线路设计理论、数字信号处理技术、数字系统建模

4、和优化技术及长线技术理论等。因此, EDA 技术为现代电子理论和设计的表达与实现提供了可能性。正因为 EDA 技术丰富的内 容以及与电子技术各学科领域的相关性,其发展的历程同大规模集成电路设计技术、计算 机辅助工程、可编程逻辑器件,以及电子设计技术和工艺的发展是同步的。就过去近 30 年的电子技术的发展历程,可大致将 EDA 技术的发展分为 3 个阶段。 20 世纪 70 年代,在集成电路制作方面,MOS 工艺得到广泛的应用;可编程逻辑技 术及其器件问世,计算机作为一种运算工具在科研领域得到广泛应用。而在后期,CAD 的概念已见雏形,这一阶段人们开始利用计算机取代手工劳动,辅助进行集成电路版图

5、编 辑、PCB 布局布线等工作。 20 世纪 80 年代,集成电路设计进入了 CMOS(互补场效应管)时代,复杂可编程逻2EDA 技术与 VHDL辑器件进入商业应用,相应的辅助设计软件投入使用;而在 80 年代末,出现了 FPGA;CAE 和 CAD 技术的应用更为广泛,它们在 PCB 设计方面的原理图输入、自动布 局布线及 PCB 分析,以及逻辑设计、逻辑仿真、布尔方程综合和化简等方面担任了重要 的角色。特别是各种硬件描述语言的出现、应用和标准化方面的重大进步,为电子设计自 动化必须解决的电路建模、标准文档及仿真测试奠定了基础。 进入 20 世纪 90 年代,随着硬件描述语言的标准化进一步确

6、立,计算机辅助工程、辅 助分析和辅助设计在电子技术领域获得更加广泛的应用。与此同时,电子技术在通信、计 算机及家电产品生产中的市场需求和技术需求,极大地推动了全新的电子设计自动化技术 的应用和发展,特别是集成电路设计工艺步入了超深亚微米阶段,百万门以上的大规模可 编程逻辑器件的陆续面世,以及基于计算机技术的面向用户的低成本大规模 ASIC 设计技 术的应用,促进了 EDA 技术的形成。更为重要的是各 EDA 公司致力于推出兼容各种硬件 实现方案和支持标准硬件描述语言的 EDA 工具软件的研究,更有效地将 EDA 技术推向成 熟和实用。 EDA 技术在进入 21 世纪后,得到了更大的发展,突出表

7、现在以下几个方面:在 FPGA 上实现 DSP(数字信号处理)应用成为可能,用纯数字逻辑进行 DSP 模 块的设计,使得高速 DSP 实现成为现实,并有力地推动了软件无线电技术的实用 化和发展。基于 FPGA 的 DSP 技术,为高速数字信号处理算法提供了实现途径。嵌入式处理器软核的成熟,使得 SOPC(System On a Programmable Chip)步入大 规模应用阶段,在一片 FPGA 上实现一个完备的数字处理系统成为可能。在仿真和设计两方面支持标准硬件描述语言的功能强大的 EDA 软件不断推出。电子技术领域全方位融入 EDA 技术,除了日益成熟的数字技术外,传统的电路系 统设

8、计建模理念发生了重大的变化,如软件无线电技术的崛起、模拟电路系统硬 件描述语言的表达和设计的标准化、系统可编程模拟器件的出现、数字信号处理 和图像处理的全硬件实现方案的普遍接受以及软硬件技术的进一步融合等。EDA 使得电子领域各学科的界限更加模糊,更加互为包容,如模拟与数字、软件 与硬件、系统与器件、ASIC 与 FPGA、行为与结构等。基于 EDA 的用于 ASIC 设计的标准单元已涵盖大规模电子系统及复杂 IP 核模块。软硬 IP(Intellectual Property)核在电子行业的产业领域广泛应用。SOC 高效低成本设计技术的成熟。系统级、行为验证级硬件描述语言的出现(如 Syst

9、em C) ,使复杂电子系统的设计 和验证趋于简单。1.2 电子设计自动化应用对象一般地说,利用 EDA 技术进行电子系统设计,最后实现的目标是以下 3 种:3概 述 第 1 章全定制或半定制 ASIC。FPGA/CPLD(或称可编程 ASIC)开发应用。PCB(印制电路板) 。 实现目标的前两项可以归结为专用集成电路 ASIC 的设计和实现,ASIC 是最终的物 理平台,集中容纳了用户通过 EDA 技术将电子应用系统的既定功能和技术指标具体实现 的硬件实体。一般而言,专用集成电路就是具有专门用途和特定功能的独立集成电路器件。 根据这个定义,作为 EDA 技术最终实现目标的 ASIC,可以通过

10、下面 3 种途径来完成。1. 超大规模可编程逻辑器件FPGA 和 CPLD 是实现这一途径的主流器件,它们的特点是直接面向用户、具有极大 的灵活性和通用性、使用方便、硬件测试和实现快捷、开发效率高、成本低、上市时间短、 技术维护简单、工作可靠性好等。FPGA 和 CPLD 的应用是 EDA 技术有机融合软硬件电 子设计技术以及对自动化设计与自动化实现最典型的诠释。由于 FPGA 和 CPLD 的开发工 具、开发流程和使用方法与 ASIC 有相通之处,因此这类器件通常也被称为可编程专用 IC,或可编程 ASIC。2. 半定制或全定制 ASIC根据实现的工艺,基于 EDA 设计技术的半定制或全定制

11、 ASIC 可统称为掩模 (MASK)ASIC,或直接称 ASIC。ASIC 大致分为门阵列 ASIC、标准单元 ASIC 和全定 制 ASIC。门阵列 ASIC:门阵列芯片包括预定制相连的 PMOS 和 NMOS 晶体管行。设计中, 用户可以借助 EDA 工具将原理图或硬件描述语言模型映射为相应门阵列晶体管配 置,创建一个指定金属互连路径文件,从而完成门阵列 ASIC 开发。由于有掩模 的创建过程,门阵列有时也称掩模可编程门阵列(MPGA) 。但是 MPGA 与 FPGA 完全不同,它不是用户可编程的,也不属于可编程逻辑范畴,而是实际的 ASIC。MPGA 出现在 FPGA 之前,FPGA

12、技术则源自 MPGA。现在,Altera 的 HardCopy、HardCopy II 技术,可以提供一种把 FPGA 的设计转化为结构化 ASIC 的途径。标准单元 ASIC:目前大部分 ASIC 是使用库中的不同大小的标准单元设计的,这 类芯片一般称作基于单元的集成电路(Cell-based Integrated Circuits,CBIC) 。在 设计者一级,库包括不同复杂程度的逻辑元件,如 SSI 逻辑块、MSI 逻辑块、数 据通道模块、存储器、IP 以及系统级模块。库还包含每个逻辑单元在硅片级的完 整布局,使用者只需利用 EDA 软件工具与逻辑块描述打交道即可,完全不必关心 电路布局

13、的细节。在标准单元布局中,所有扩散、接触点、过孔、多晶通道及金 属通道都已完全确定,当该单元用于设计时,通过 EDA 软件产生的网表文件将单 元布局块“粘贴”到芯片布局之上的单元行上。标准单元 ASIC 设计与 FPGA 设 计开发的流程相似。全定制芯片:全定制芯片中,在针对特定工艺建立的设计规则下,设计者对于电4EDA 技术与 VHDL路的设计有完全的控制权,如线的间隔和晶体管大小的确定。该领域的一个例外 是混合信号设计,使用通信电路的 ASIC 可以定制设计其模拟部分。3. 混合 ASIC混合 ASIC(不是指数模混合 ASIC)主要指既具有面向用户的 FPGA 可编程功能和逻 辑资源,同

14、时也含有可方便调用和配置的硬件标准单元模块,如 CPU、RAM、ROM、硬 件加法器、乘法器、锁相环等。Xilinx、Atmel 和 Altera 公司已经推出了这方面的器件, 如 Virtex-4 系列、Excalibur(含 ARM 核)和 Stratix II 系列等。混合 ASIC 为 SOC 和 SOPC 的设计实现提供了便捷的途径。1.3 VHDL硬件描述语言 HDL 是 EDA 技术的重要组成部分,常见的 HDL 主要有 VHDL、Verilog HDL、ABEL、AHDL、SystemVerilog 和 SystemC。 其中 VHDL、Verilog 在现在的 EDA 设计中

15、使用最多,也拥有几乎所有主流 EDA 工 具的支持,而 SystemVerilog 和 SystemC 还处于完善过程中。本书将重点介绍 VHDL 的编 程方法和使用技术。 VHDL 的英文全名是 VHSIC(Very High Speed Integrated Circuit)Hardware Description Language,于 1983 年由美国国防部(DOD)发起创建,由 IEEE(The Institute of Electrical and Electronics Engineers)进一步发展,并在 1987 年作为“IEEE 标准 1076” 发布。从此,VHDL 成为

16、硬件描述语言的业界标准之一。自 IEEE 公布了 VHDL 的标准版 本(IEEE Std 1076)之后,各 EDA 公司相继推出了自己的 VHDL 设计环境,或宣布自己 的设计工具支持 VHDL。此后,VHDL 在电子设计领域得到了广泛应用,并逐步取代了原 有的非标准硬件描述语言。 VHDL 作为一个规范语言和建模语言,随着它的标准化,出现了一些支持该语言的行 为仿真器。由于创建 VHDL 的最初目标是用于标准文档的建立和电路功能模拟,其基本 想法是在高层次上描述系统和元件的行为。但到了 20 世纪 90 年代初,人们发现,VHDL 不仅可以作为系统模拟的建模工具,而且可以作为电路系统的设

17、计工具,可以利用软件工 具将 VHDL 源码自动地转化为文本方式表达的基本逻辑元件连接图,即网表文件。这种 方法显然对于电路自动设计是一个极大地推进。很快,电子设计领域出现了第一个软件设 计工具,即 VHDL 逻辑综合器,它可以标准地将 VHDL 的部分语句描述转化为具体电路 实现的网表文件。 1993 年,IEEE 对 VHDL 进行了修订,从更高的抽象层次和系统描述能力上扩展了 VHDL 的内容,公布了新版本的 VHDL,即 IEEE 标准的 1076-1993 版本。现在,VHDL 和 Verilog 作为 IEEE 的工业标准硬件描述语言,得到众多 EDA 公司的支持,在电子工程 领域

18、,已成为事实上的通用硬件描述语言。现在公布的最新 VHDL 标准版本是 IEEE 1076-2002。5概 述 第 1 章VHDL 语言具有很强的电路描述和建模能力,能从多个层次对数字系统进行建模和描 述,从而大大简化了硬件设计任务,提高了设计效率和可靠性。 VHDL 具有与具体硬件电路无关和与设计平台无关的特性,并且具有良好的电路行为 描述和系统描述的能力,并在语言易读性和层次化、结构化设计方面,表现了强大的生命 力和应用潜力。因此,VHDL 在支持各种模式的设计方法,如自顶向下与自底向上或混合 方法方面,以及在面对当今许多电子产品生命周期的缩短,需要多次重新设计以融入最新 技术、改变工艺等

19、方面都表现出了良好的适应性。用 VHDL 进行电子系统设计的一个很 大的优点是设计者可以专心致力于其功能的实现,而不需要对不影响功能的与工艺有关的 因素花费过多的时间和精力。1.4 EDA 的优势在传统的数字电子系统或 IC 设计中,手工设计占了较大的比例。一般都是先按电子 系统的具体功能要求进行功能划分,然后对每个子模块画出真值表,用卡诺图进行手工逻 辑简化,写出布尔表达式,画出相应的逻辑线路图,再据此选择元器件,设计电路板,最 后进行实测与调试。手工设计方法的缺点是:复杂电路的设计、调试十分困难。由于无法进行硬件系统仿真,如果某一过程存在错误,查找和修改十分不便。设计过程中产生大量文档,不

20、易管理。对于 IC 设计而言,设计实现过程与具体生产工艺直接相关,因此可移植性差。只有在设计出样机或生产出芯片后才能进行实测。 相比之下,EDA 技术有很大不同:用 HDL 对数字系统进行抽象的行为与功能描述到具体的内部线路结构描述,从而 可以在电子设计的各个阶段、各个层次进行计算机模拟验证,保证设计过程的正 确性,可以大大降低设计成本,缩短设计周期。EDA 工具之所以能够完成各种自动设计过程,关键是有各类库的支持,如逻辑仿 真时的模拟库、逻辑综合时的综合库、版图综合时的版图库、测试综合时的测试 库等。这些库都是 EDA 公司与半导体生产厂商紧密合作、共同开发的。某些 HDL 本身也是文档型的

21、语言(如 VHDL) ,极大地简化了设计文档的管理。EDA 技术中最为瞩目的功能,即最具现代电子设计技术特征的功能是日益强大的 逻辑设计仿真测试技术。EDA 仿真测试技术只需通过计算机就能对所设计的电子 系统从各种不同层次的系统性能特点完成一系列准确的测试与仿真操作,在完成 实际系统的安装后,还能对系统上的目标器件进行所谓边界扫描测试、嵌入式逻 辑分析仪的应用,这一切都极大地提高了大规模系统电子设计的自动化程度。无论传统的应用电子系统设计得如何完美,使用了多么先进的功能器件,都掩盖 不了一个无情的事实,即该系统对于设计者来说,没有任何自主知识产权可言,6EDA 技术与 VHDL因为系统中的关键

22、性器件往往并非出自设计者之手,这将导致该系统在许多情况 下的应用直接受到限制。基于 EDA 技术的设计则不同,由于用 HDL 表达的成功 的专用功能设计在实现目标方面有很大的可选性,它既可以用不同来源的通用 FPGA/CPLD 实现,也可以直接以 ASIC 来实现,设计者拥有完全的自主权,再无 受制于人之虞。传统的电子设计方法至今没有任何标准规范加以约束,因此设计效率低、系统性 能差、开发成本高、市场竞争能力小。EDA 技术的设计语言是标准化的,不会由 于设计对象的不同而改变;它的开发工具是规范化的,EDA 软件平台支持任何标 准化的设计语言;它的设计成果是通用性的,IP 核具有规范的接口协议

23、;良好的 可移植性与可测试性,为系统开发提供了可靠的保证。从电子设计方法学来看,EDA 技术最大的优势就是能将所有设计环节纳入统一的 自顶向下的设计方案中。EDA 不但在整个设计流程上充分利用计算机的自动设计能力、在各个设计层次上 利用计算机完成不同内容的仿真模拟,而且在系统板设计结束后仍可利用计算机 对硬件系统进行完整的测试。1.5 面向 FPGA 的开发流程完整地了解利用 EDA 技术进行设计开发的流程对于正确地选择和使用 EDA 软件、优 化设计项目、提高设计效率十分有益。一个完整的、典型的 EDA 设计流程既是自顶向下 设计方法的具体实施途径,也是 EDA 工具软件本身的组成结构。1.

24、5.1 设计输入图 1-1 所示是基于 EDA 软件的 FPGA 开发流程框图,下面将分别介绍各设计模块的 功能特点。对于目前流行的用于 FPGA 开发的 EDA 软件,图 1-1 所示的设计流程具有普 遍性。7概 述 第 1 章图 1-1 FPGA 的 EDA 开发流程将电路系统以一定的表达方式输入计算机,是在 EDA 软件平台上对 FPGA/CPLD 开 发的最初步骤。通常,使用 EDA 工具的设计输入可分为以下两种类型。1. 图形输入图形输入通常包括原理图输入、状态图输入和波形图输入等方法。 状态图输入方法就是根据电路的控制条件和不同的转换方式,用绘图的方法在 EDA 工具的状态图编辑器

25、上绘出状态图,然后由 EDA 编译器和综合器将此状态变化流程图形 编译综合成电路网表。 波形图输入方法则是将待设计的电路看成是一个黑盒子,只需告诉 EDA 工具该黑盒 子电路的输入和输出时序波形图,EDA 工具即能据此完成黑盒子电路的设计。 原理图输入方法是一种类似于传统电子设计方法的原理图编辑输入方式,即在 EDA 软件的图形编辑界面上绘制能完成特定功能的电路原理图。原理图由逻辑器件(符号)和 连接线构成,图中的逻辑器件可以是 EDA 软件库中预制的功能模块,如与门、非门、或 门、触发器以及各种含 74 系列器件功能的宏功能块,甚至还有一些类似于 IP 的功能块。2. 硬件描述语言文本输入这

26、种方式与传统的计算机软件语言编辑输入基本一致,就是将使用了某种硬件描述语 言(HDL)的电路设计文本,如 VHDL 或 Verilog 的源程序,进行编辑输入。1.5.2 综合综合(Synthesis) ,就其字面含义应该为把抽象的实体结合成单个或统一的实体。因 此,综合就是把某些东西结合到一起,把设计抽象层次中的一种表述转化成另一种表述的 过程。对于电子设计领域的综合概念可以表示为:将用行为和功能层次表达的电子系统转 换为低层次的便于具体实现的模块组合装配而成的过程。 事实上,设计过程中的每一步都可称为一个综合环节。设计过程通常从高层次的行为 描述开始,以最底层的结构描述结束,每个综合步骤都

27、是上一层次的转换。 (1)从自然语言表述转换到 VHDL 语言算法表述,是自然语言综合。 (2)从算法表述转换到寄存器传输级(Register Transport Level,RTL)表述,即从 行为域到结构域的综合,是行为综合。 (3)从 RTL 级表述转换到逻辑门(包括触发器)的表述,即逻辑综合。 (4)从逻辑门表述转换到版图表述(ASIC 设计) ,或转换到 FPGA 的配置网表文件, 可称为版图综合或结构综合。 一般地,综合是仅对应于 HDL 而言的。利用 HDL 综合器对设计进行综合是十分重要 的一步,因为综合过程将把软件设计的 HDL 描述与硬件结构挂钩,是将软件转化为硬件 电路的

28、关键步骤,是文字描述与硬件实现的一座桥梁。综合就是将电路的高级语言(如行 为描述)转换成低级的,可与 FPGA/CPLD 的基本结构相映射的网表文件或程序。 当输入的 HDL 文件在 EDA 工具中检测无误后,首先面临的是逻辑综合,因此要求8EDA 技术与 VHDLHDL 源文件中的语句都是可综合的。 在综合之后,HDL 综合器一般都可以生成一种或多种文件格式网表文件,如 EDIF、VHDL、Verilog 等标准格式,在这种网表文件中用各自的格式描述电路的结构, 如在 VHDL 网表文件中采用 VHDL 的语法,用结构描述的风格重新诠释综合后的电路结 构。 整个综合过程就是将设计者在 EDA

29、 平台上编辑输入的 HDL 文本、原理图或状态图形 描述,依据给定的硬件结构组件和约束控制条件进行编译、优化、转换和综合,最终获得 门级电路甚至更底层的电路描述网表文件。由此可见,综合器工作前,必须给定最后实现 的硬件结构参数,它的功能就是将软件描述与给定的硬件结构用某种网表文件的方式对应 起来,成为相应的映射关系。如果把综合理解为映射过程,那么显然这种映射不是唯一的, 并且综合的优化也不是单纯的或一个方向的。为达到速度、面积、性能的要求,往往需要 对综合加以约束,称为综合约束。1.5.3 布线布局(适配)适配器也称结构综合器,它的功能是将由综合器产生的网表文件配置于指定的目标器 件中,使之产

30、生最终的下载文件,如 JEDEC、Jam 格式的文件。适配所选定的目标器件必 须属于原综合器指定的目标器件系列。通常,EDA 软件中的综合器可由专业的第三方 EDA 公司提供,而适配器则需由 FPGA/CPLD 供应商提供,因为适配器的适配对象直接 与器件的结构细节相对应。 适配器就是将综合后网表文件针对某一具体的目标器件进行逻辑映射操作,其中包括 底层器件配置、逻辑分割、优化、布局布线操作。适配完成后可以利用适配所产生的仿真 文件作精确的时序仿真,同时产生可用于编程的文件。1.5.4 仿真在编程下载前必须利用 EDA 工具对适配生成的结果进行模拟测试,就是所谓的仿真。仿真就是让计算机根据一定

31、的算法和一定的仿真库对 EDA 设计进行模拟,以验证设 计,排除错误。仿真是在 EDA 设计过程中的重要步骤。图 1-1 所示的时序与功能门级仿 真通常由 PLD 公司的 EDA 开发工具直接提供(当然也可以选用第三方的专业仿真工具) , 它可以完成两种不同级别的仿真测试: (1)时序仿真。就是接近真实器件运行特性的仿真,仿真文件中已包含了器件硬件 特性参数,因而仿真精度高。但时序仿真的仿真文件必须来自针对具体器件的适配器。综 合后所得的 EDIF 等网表文件通常作为 FPGA 适配器的输入文件,产生的仿真网表文件中 包含了精确的硬件延迟信息。 (2)功能仿真。是直接对 VHDL、原理图描述或

32、其他描述形式的逻辑功能进行测试 模拟,以了解其实现的功能是否满足原设计要求的过程。仿真过程不涉及任何具体器件的9概 述 第 1 章硬件特性。不经历适配阶段,在设计项目编辑编译(或综合)后即可进入门级仿真器进行 模拟测试。直接进行功能仿真的好处是设计耗时短,对硬件库、综合器等没有任何要求。10EDA 技术与 VHDL1.5.5 下载和硬件测试把适配后生成的下载或配置文件,通过编程器或编程电缆向 FPGA 或 CPLD 进行下载, 以便进行硬件调试和验证(Hardware Debugging) 。 通常,将对 CPLD 的下载称为编程(Program) ,对 FPGA 中的 SRAM 进行直接下载

33、 的方式称为配置(Configure) ,但对于反熔丝结构和 Flash 结构的 FPGA 的下载和对 FPGA 的专用配置 ROM 的下载仍称为编程。 FPGA 与 CPLD 的分类主要是根据其结构特点和工作原理进行。通常的分类方法有以 下几种: (1)以乘积项结构方式构成逻辑行为的器件称为 CPLD,如 Lattice 的 ispLSI 系列、 Xilinx 的 XC9500 系列、Altera 的 MAX7000 系列和 Lattice(原 Vantis)的 Mach 系列等。 (2)以查表法结构方式构成逻辑行为的器件称为 FPGA,如 Xilinx 的 SPARTAN 系 列、Alte

34、ra 的 FLEX10K、ACEX1K 或 Cyclone 系列等。 当然也有从下载方式上分的。有关 FPGA/CPLD 下载的详细情况将在第 2 章中介绍。 最后是将含有载入了设计的 FPGA 或 CPLD 的硬件系统进行统一测试,以便最终验证 设计项目在目标系统上的实际工作情况,以排除错误,改进设计。1.6 Quartus II 概述本书给出的所有示例和实验都是基于 Quartus II 的,其应用方法和设计流程对于其他 流行 EDA 工具的使用具有一定的典型性和普遍性,所以在此对它作一些介绍。 Quartus II 是 Altera 提供的 FPGA/CPLD 开发集成环境,Altera

35、 是世界最大的可编程逻 辑器件供应商之一。Quartus II 在 21 世纪初推出,是 Altera 前一代 FPGA/CPLD 集成开发 环境 MAX+plus II 的更新换代产品,其界面友好,使用便捷。 在 Quartus II 上可以完成 1.5 节所述的整个流程,它提供了一种与结构无关的设计环境,使设计者能方便地进行设计输 入、快速处理和器件编程。 Altera 的 Quartus II 提供了完整的多平台设计环境,能满足各种特定设计的需要,也 是单芯片可编程系统(SOPC)设计的综合性环境和 SOPC 开发的基本设计工具,并为 Altera DSP 开发包进行系统模型设计提供了集

36、成综合环境。Quartus II 设计工具完全支持 VHDL、Verilog 的设计流程,其内部嵌有 VHDL、Verilog 逻辑综合器。Quartus II 也可以 利用第三方的综合工具,如 Leonardo Spectrum、Synplify Pro、FPGA Compiler II,并能直 接调用这些工具。同样,Quartus II 具备仿真功能,同时也支持第三方的仿真工具,如 ModelSim。此外,Quartus II 与 MATLAB 和 DSP Builder 结合,可以进行基于 FPGA 的 DSP 系统开发和数字通信模块的开发。 Quartus II 包括模块化的编译器。编

37、译器包括的功能模块有分析/综合器(Analysis & Synthesis)、适配器(Fitter)、装配器(Assembler)、时序分析器(Timing Analyzer)、11概 述 第 1 章设计辅助模块(Design Assistant)、EDA 网表文件生成器(EDA Netlist Writer)、编辑数 据接口(Compiler Database Interface)等。可以通过选择 Start Compilation 来运行所有的 编译器模块,也可以通过选择 Start 单独运行各个模块。还可以通过选择 Compiler Tool (Tools 菜单),在 Compiler

38、Tool 窗口中运行该模块来启动编译器模块。在 Compiler Tool 窗口中,可以打开该模块的设置文件或报告文件,或打开其他相关窗口。 此外,Quartus II 还包含许多十分有用的 LPM(Library of Parameterized Modules)模 块,它们是复杂或高级系统构建的重要组成部分,在 SOPC 设计中被大量使用,也可与 Quartus II 普通设计文件一起使用。Altera 提供的 LPM 函数均基于 Altera 器件的结构做了 优化设计。在许多实用情况中,必须使用宏功能模块才可以使用一些 Altera 特定器件的硬 件功能,例如各类片上存储器、DSP 模块

39、、LVDS 驱动器、PLL 以及 SERDES 和 DDIO 电路模块等。 图 1-2 所示的上排是 Quartus II 编译设计主控界面,它显示了 Quartus II 自动设计的各 主要处理环节和设计流程,包括设计输入编辑、设计分析与综合、适配、编程文件汇编 (装配) 、时序参数提取以及编程下载几个步骤。在图 1-2 所示下排的流程框图,是与上 面的 Quartus II 设计流程相对照的标准的 EDA 开发流程。 Quartus II 编译器支持的硬件描述语言有 VHDL(支持 VHDL87 及 VHDL97 标准) 、Verilog HDL 及 AHDL(Altera HDL) 。

40、Quartus II 支持层次化设计,可以在一个新的编辑输入环境中对使用不同输入设计方 式完成的模块(元件)进行调用,从而解决了原理图与 HDL 混合输入设计的问题。在设 计输入之后,Quartus II 的编译器将给出设计输入的错误报告。可以使用 Quartus II 带有的 RTL Viewer 观察综合后的 RTL 图。图形或 HDL编辑编程器设计输入 综合或编译 适配器件 下载 仿真 Analysis & Synthesis (分析与综合)Filter (适配器)Assembler (编程文件汇编)Timing Analyzer (时序分析器)图 1-2 Quartus II 设计流程

41、1.7 IP 核IP 就是知识产权核或知识产权模块的意思,在 EDA 技术和开发中具有十分重要的地 位。美国著名的 Dataquest 咨询公司将半导体产业的 IP 定义为用于 ASIC 或 FPGA/CPLD 中的预先设计好的电路功能模块。IP 分软 IP、固 IP 和硬 IP。12EDA 技术与 VHDL软 IP 是用 VHDL 等硬件描述语言描述的功能块,但是并不涉及用什么具体电路元件 实现这些功能。软 IP 通常是以硬件描述语言 HDL 源文件的形式出现,应用开发过程与普 通的 HDL 设计也十分相似,只是所需的开发软硬件环境比较昂贵。软 IP 的设计周期短, 设计投入少。由于不涉及物

42、理实现,为后续设计留有很大的发挥空间,增大了 IP 的灵活 性和适应性。软 IP 的弱点是在一定程度上使后续工序无法适应整体设计,从而需要一定 程度的软 IP 修正,在性能上也不可能获得全面的优化。 固 IP 是完成了综合的功能块。它有较大的设计深度,以网表文件的形式提交客户使 用。如果客户与固 IP 使用同一个 IC 生产线的单元库,IP 应用的成功率会高得多。 硬 IP 提供设计的最终阶段产品掩模。随着设计深度的提高,后续工序所需要做 的事情就越少,当然,灵活性也就越小。不同的客户可以根据自己的需要订购不同的 IP 产品。由于通信系统越来越复杂,PLD 的设计也更加庞大,这增加了市场对 I

43、P 核的需求。 各大 FPGA/CPLD 厂家继续开发新的商品 IP,并且开始提供“硬件”IP,即将一些功能在 出厂时就固化在芯片中。 实际上,IP 的概念早已在 IC 设计中使用,应该说标准单元库(Standard Cell library) 中的功能单元就是 IP 的一种形式。IC 生产厂家(Foundry)为扩大业务,提供精心设计并 经过工艺验证的标准单元,以吸引 IC 设计公司(往往是 Fabless,无生产线 IC 公司)成 为其客户,同时向客户免费提供相关的数据资料。于是 IC 设计师十分乐于使用成熟、优 化的单元完成自己的设计,这样既可以提高效率,又可以减少设计风险。设计师一旦以

44、这 些数据完成设计,自然也就必须要到这家 Foundry 去做工艺流片,这就使 Foundry 达到了 扩大营业的目的。 标准单元使用者除与 Foundry 签订“标准单元数据不扩散协议”之外,无须另交单元 库的使用费,因此 Foundry 并没有直接获取 IP 的收益,只是通过扩大营业间接收到单元 库的 IP 效益,这就是 IP 的初级形式。 今天的 IP 已远远超出了这个水平,它已经成为 IC 设计的一项独立技术,成为实现 SOC 设计的技术支撑以及 ASIC 设计方法学中的学科分支。 从集成规模上说,现在的 IP 库已经包含诸如 8051 和 ARM、PowerPC 等微处理器、 TMS

45、 320C50 等数字信号处理器、MPEG-II、JPEG 等数字信息压缩/解压器在内的大规模 IC 模块。这些模块都曾经是具有完整功能的 IC 产品,并曾广泛用来与其他功能器件一起, 在 PCB 上构成系统主板。如今微电子技术已经具有在硅片上实现系统集成的功能,因此 这些昔日的 IC 便以模块“核” (Core)的形式嵌入 ASIC 之中。 从设计来源上说,单纯靠 Foundry 设计 IP 模块已远不能满足系统设计师的要求,今 天的 IP 库需要广开设计源头,汇纳优秀模块,不论出自谁家,只要是优化的设计,与同 类模块相比达到芯片面积更小、运行速度更快、功率消耗更低、工艺容差更大,就自然会

46、有人愿意花钱使用这个模块的“版权” ,因此也就可以纳入 IP 库,成为 IP 的一员。 目前,尽管对 IP 还没有统一的定义,但 IP 的实际内涵已有了明确的界定:首先,它 必须是为了易于重用而按嵌入式应用专门设计的。即使是已经被广泛使用的产品,在决定 作为 IP 之前,一般来说也须要再做设计,使其更易于在系统中嵌入。比较典型的例子是 嵌入式 RAM,由于嵌入后已经不存在引线压点(PAD)的限制,所以在分立电路中不得13概 述 第 1 章不采取的措施,诸如数据线输入输出复用、地址数据线分时复用、数据串并转换以及行列 等分译码等,在嵌入式 RAM 中将被去除,不仅节省了芯片面积,而且大幅提高了读

47、写速 度。 其次是必须实现 IP 模块的优化设计。优化的目标通常可用“四最”来表达,即芯片 的面积最小、运算速度最快、功率消耗最低、工艺容差最大。所谓工艺容差大是指所做的 设计可以经受更大的工艺波动,是提高加工成品率的重要保障。这样的优化目标是普通的 自动化设计过程难以达到的,但是对于 IP 却又必须达到,因为 IP 必须能经受得起成千上 万次的使用。显然,IP 的每一点优化都将产生千百倍甚至更大的倍增效益。因此基于晶体 管级的 IP 设计便成为完成 IP 设计的重要途径。 再次,就是要符合 IP 标准。这与其他 IC 产品一样,IP 进入流通领域后,也需要有标 准。于是在 1996 年以后,

48、RAIPD(Reusable Application-specific Intellectual-property Developers) 、VSIA(Virtual Socket Interface Alliance)等组织相继成立,协调并制订 IP 重 用所需的参数、文档、检验方式等形式化的标准,以及 IP 标准接口、片内总线等技术性 的协议标准。虽然这些工作已经开展了多年,也制订了一些标准,但至今仍有大量问题有 待解决,例如,不同嵌入式处理器协议的统一、不同 IP 片内结构的统一等问题。 我国在 IP 设计方面尚处于起步阶段,但与 IP 的应用需求形成明显的不一致,这为我 国未来的 IP

49、 设计工程师提供了广阔的天地。1.8 EDA 技术的发展趋势随着市场需求的增长,集成工艺水平及计算机自动设计技术的不断提高,促使单片系 统,或称系统集成芯片成为 IC 设计的发展方向,这一发展趋势表现在如下几个方面:超大规模集成电路的集成度和工艺水平不断提高,深亚微米(Deep-Submicron) 工艺,如 0.13m、90nm 已经走向成熟,在一个芯片上完成的系统级的集成已成 为可能。由于工艺线宽的不断减小,在半导体材料上的许多寄生效应已经不能简单地被忽 略,这就对 EDA 工具提出了更高的要求。同时,也使得 IC 生产线的投资更为巨 大。可编程逻辑器件开始进入传统的 ASIC 市场。市场对电子产品提出了更高的要求,如必须降低电子系统的成本,减小系统的体 积等,从而对系统的集成度不断提出更高的要求。同时,设计的效率也成了一个 产品能否成功的关键因素,促使 EDA 工具和 IP 核应用更为广泛。高性能的 EDA 工具得到长足的发展,其自动化和智能化程度不断提高,为嵌入式 系统设计提供了功能强大的开发环境。计算机硬件平台性能大幅度提高,为复杂的 SOC

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > 教育教学

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁