设计中心 电子设计自动化技术 教师:李平教授(博导) Email: pli@uestc.edu.cn Tel: 83201794 2005年 5月 设计中心 电子设计自动化技术 课程介绍 ? 学习VHDL/Verilog HDL 知识 ? 学会FPGA/CPLD 验证设计 ? 学会ASIC APR 设计 设计中心 电子设计自动化技术 第一章 EDA与 HDL 设计中心 本章要点 ? 理解什么是正向设计方法 ? HDL在EDA设计中的作用 ? VHDL的特点 ? VHDL的应用范围 ? 形成以下概念:VHDL 是EDA设计的基础,学习 VHDL的目的是掌握一种电路与系统设计的先进设 计方法 ? EDA设计的物理实现形式 ? FPGA/CPLD、ASIC ? IP--软核、固核、硬核 ? FPGA/CPLD在EDA设计中的基础作用 设计中心 引言 ? 电子设计自动化(EDA )方法的诞生和 推广应用是 20世纪 90年代在数字电路设 计方法上的一次革命性变革。 ? 随着芯片的复杂程度越来越高,数万门 以至数十万门的电路设计的需求越来越 多。传统的基于电路图的设计方法已不 堪承受,采用 VHDL这样的硬件描述语 言( HDL)的设计方式应运而生。 设计中心 ? 自顶向下的Top-down 设计方法开始被广泛 采用。 ? 电路与系统的 Top-down设计由功能级、行 为级描述开始;寄存器传输( RTL)级描 述为第一个中间结果; RTL级描述由逻辑 综合得到网表( Net-list)或电路图;由网 表在 EDA工具帮助下自动生成现场可编程 门阵列( FPGA) /复杂可编程逻辑器件 ( CPLD)或专用集成电路( ASIC)的版 图,完成设计。 设计中心 Top_Down设计流程 行为级描述 RTL级描述 逻辑综合 物理实现 仿真不通过 仿真不通过 仿真不通过 仿真不通过 通过通过 通过 通过 通过 第三层次 后仿真 后仿真 第一层次 第二层次 第四层次 行为级描述 (对电子系统的数学模型描述) 图 1 Top-down 设计步骤 逻辑综合 (将 RTL级描述自动转换成门级网表) 寄存器传输( RTL)级描述 (又称数据流方式描述) ASIC 形成硬核 自动布局布线(物理实现过程) 门级网表输出(形成软核) FPGA/CPLD 行为级仿真 门级仿真 RTL级仿真 形成固核 设计中心 Top_Down第一层次 ? 第一层次是行为级描述。行为级描述实 质上是对整个系统的数学模型的描述。 在行为级描述阶段,并不真正考虑实际 的操作和算法用什么方法实现,考虑更 多的是系统的结构及其工作过程能否达 到系统设计规则书(设计目的)的要求。 在这一层次,运算语句和控制语句被用 来组织输入、输出以及各种运算。这一 层次的典型描述方法是行为有限状态机、 控制流图、数据流图和控制数据流图。 设计中心 Top_Down第二层次 ? 第二层次是寄存器传输(RTL)级描述。 寄存器级的最基本的设计单元是寄存器、计 数器、多路选择器、算术逻辑单元(ALU) 等。寄存器级设计的结构描述是其基本单元 的互连。要想得到硬件的具体实现,必须将 抽象程度很高的行为级描述的 VHDL程序改 写为RTL 方式描述的VHDL 程序,这样才能 导出系统的逻辑表达式,才能进行逻辑综合。 有时在这一层次用数据流图描述硬件的行为, 它反映了流经实际硬件的数据分布。 设计中心 Top_Down第三层次 ? 第三层次是逻辑综合。逻辑综合这一阶段是利用 逻辑综合工具软件,将RTL方式描述的VHDL源 程序转换成用基本逻辑元件表示的文件(门级网 表)。这是一个把高层次的与工艺无关的描述转 换成低层次的与特定工艺相关的描述的转换。在 逻辑门设计时,电路的基本单元通常是与门、或 门、异或门、反相器等逻辑门,有时还带有少量 晶体管构成的开关以及D触发器、J-K触发器、 锁存器等逻辑单元。如果需要,可以将逻辑综合 的结果以逻辑原理图方式输出。为了分析整个设 计的性能,需要仿真工具软件完成门级仿真,也 需要时序分析工具。 设计中心 Top_Down第四层次 ? 第四层次为物理实现。 ? 物理实现分为:FPGA/CPLD和ASIC两种。 ? FPGA/CPLD物理实现在元件库文件支持下, ASIC物理实现在工艺库文件支持下, ? 由EDA工具,将网表作为输入,进行自动 布局布线最终生成FPGA/CPLD的目标文件 或ASIC的版图文件。 设计中心 Top_Down第四层次(续) ? 接下来,还需对布局布线后的结果进行寄生参 数提取和后仿真,以便验证布局布线后,由于 寄生参数(寄生电阻、电容等)的存在是否改 变了前端逻辑仿真的结果。如果未改变前仿真 结果,则由FPGA/CPLD目标文件下载到 FPGA/CPLD得到设计结果;或由ASIC的版图文件 (GDS-II)文件送交制版,代工工厂(Foundry) 使用光刻掩膜版对硅片进行一系列加工得到设 计结果。如果由于寄生效应使后仿真不能与前 仿真一致,则必须对前端设计进行必要的改动, 而后重新进行后仿真。 设计中心 Top-down的特点 ? 四个层次可以分别进行仿真,即行为层 次仿真,RTL层仿真、门级层次仿真和后 仿真。四级仿真贯穿系统硬件设计全过 程。上一层次的仿真结果为下一层次的 仿真提供有用信息。因此,在系统设计 早期就能发现设计中存在的问题,并尽 可能在高层次设计阶段就解决这些问题。 这是Top-down设计方法的突出特点之一 。 设计中心 Top-down的优势 1. 在系统设计早期发现设计中存在的问题,提 高了设计的一次成功率。 2. 大大缩短系统设计的周期,减少系统开发所 耗用的时间。 ? 3. 方便了从系统划分并管理整个项目,使得几 十万门甚至几百万门规模的复杂数字电路的设计 成为可能。 ? 4. 设计效率提高,可减少设计人员。 ? 5. 通过设计共享,避免不必要的重复设计。 设计中心 VHDL的特点 ? 工艺无关( Technology Independent) ? 抽象层次多(Behavioral/RTL/Structural ) ? 行为描述见长,可进行系统早期仿真 ? 结构化语言,易于交流,便于管理 ? 既能仿真( simulation)又能综合( synthesis) ? 通用性好、重用性好、可靠性好 设计中心 FPGA/CPLD的优缺点 ? FPGA和CPLD都是由加工厂完成了集成电路工艺 制造并完成了封装测试的集成电路成品。它们 名称中可编程(Programmable)的含义是设计 工程师自己就可以通过编程改变FPGA/CPLD器件 内部配置实现自己所需要的功能。具体一点讲, 这一过程是:VHDL程序经综合形成网表;网表 经EDA工具处理形成目标文件;目标文件输入进 FPGA/CPLD中,使FPGA/CPLD器件内部配置发生 改变,从而使FPGA/CPLD具有了设计者的VHDL所 要求的功能。这一过程就是从VHDL描述到 FPGA/CPLD实物的转换过程,即FPGA/CPLD的EDA 设计的全过程。 设计中心 1) FPGA/CPLD的优点 ? ①. 资金投入小、风险小 ? FPGA芯片在出厂之前都做过百分之百的测试,不 需要设计人员承担投片风险和费用,设计人员只 需在自己的实验室里就可以通过相关的软硬件环 境来完成芯片的最终功能设计。所以,开发 FPGA/CPLD的资金投入小,节省了许多潜在的花 费。 ? ②. 开发周期与面市时间(Time to Market)短 ? 系统工程师可以反复地编程、擦除、使用或者在 外围电路不动的情况下用不同软件就可实现不同 的功能。 设计中心 ? ③. 改动灵活 ? FPGA/CPLD软件包中有各种输入工具、仿真工具、 编程器及烧录器等全线产品,电路设计人员在 很短的时间内就可完成电路的输入、编译、优 化、仿真,直至最后芯片的制作。 当电路有少 量改动时,更能显示出FPGA/CPLD的优势。 ? ④. 易学易用 ? 电路设计人员使用FPGA/CPLD进行电路设计时, 不需要具备专门的集成电路深层次的知识。 FPGA/CPLD软件易学易用,可以使设计人员更 能集中精力进行系统设计、电路设计。 设计中心 2) FPGA/CPLD的缺点 ? ①. 芯片成本高、价格贵 ? FPGA/CPLD器件可写可擦可编程的特点也使其付出 了代价,即它们的芯片成本高、价格贵,一般不适 合在整机产品中大规模使用。 ? 但是,在通讯产品中有例外。有两方面原因使然, 其一,由于通讯产品的利润率较高,可以接受 FPGA/CPLD成本;其二,由于通讯产品的协议经常 升级换代,FPGA/CPLD可以方便地重新写入。 ? ②. 嵌入电路困难 ? 不能由电路与系统工程师嵌入传感电路、模拟电路 或功率输出电路。 设计中心 ASIC的优点 ? ①. 价格优势 ? 由于采用半导体平面工艺,几十支与几万支 ASIC芯片的研制、生产成本几乎是一样的,因 此它特别适合大规模使用。用量愈大,价格愈 低,在大规模使用时ASIC具有价格优势。 ? ②. 频率优势(性能优势) ? ASIC具有频率优势。在半导体工艺条件相同前 提下,ASIC芯片的频率高于FPGA芯片。 设计中心 ? ③. 嵌入优势 ? ASIC可以由电路与系统工程师嵌入传感电路、 模拟电路或功率输出等外围电路。这些电路加 上核心的数字电路,如微控制器(MCU)核, 则可构成片上系统(SoC-System on a Chip)。 ? 值得指出的是:采用 ASIC实现方式并不是像 看上去那样困难和价格昂贵。版图数据文件 ( GDS-II)文件可以送交多目标芯片(MPW ) 组织, 2个月后即可获得封装好的几十只ASIC 样品。 设计中心 ASIC的缺点 ? ASIC的缺点正好对应FPGA/CPLD的优点。 ? ①. 资金投入大。如果不采用MPW加工方式, Mask和工艺流片费用都是昂贵的。 ? ②. 研发投片制作具有一定的失败风险。FPGA /CPLD完全没有这种风险。 ? ③. 面市时间较长。ASIC设计完成后等待加工 结果两个月与FPGA/CPLD现场烧录不可比。 ? ④ . 改动困难。一旦改动,意味着新的 Mask和工 艺流片费用和失败风险。 设计中心 知识产权核(IP 核) ? FPGA/CPLD和ASIC技术都在迅猛发展。这一发展 过程实际上也是发挥各自长处,弥补各自缺点的 过程。在这一过程中知识产权核,或称智核、IP 核(IP Core, Intellectual Property Core)的 概念被提了出来。 ? FPGA/CPLD正在增加功能,FPGA/CPLD厂商正在 为电路与系统工程师在FPGA/CPLD中预先嵌入IP 核, 如微控制器(MCU/MPU),数字信号处理电路 (DSP),典型模拟电路,A/D 、D/A转换电路等 等。FPGA/CPLD正在向可编程片上系统(PSoC) 方向发展。 ? ASIC则强调采用IP复用(IP Reuse)设计方法来 缩短其面市时间,降低其投片试制风险。 设计中心 IP核分类 ? IP核可分为软核、固核、硬核三种。 ? 1. 软核 ? 软核是指我们前面所说的EDA芯片设计的第三 层次,即寄存器级(RTL级)的设计结果。它 经过了RTL级仿真验证。 ? 2. 固核 ? 固核是指我们前面所说的EDA芯片设计的第四 层次的结果,即经过了FPGA实物验证的设计结 果。 设计中心 ? 3. 硬核 ? 硬核同样是所说的EDA芯片设计的第四层次的 结果,但特别针对经过了ASIC实物验证的设计 结果。 ? 从FPGA 的角度固核最有价值。 ? 从ASIC 角度则硬核最有价值,因为要将固核转 化成硬核具有我们已提到过的投片风险。 ? 软核则由于它与工艺和器件均无关,具有高度 的灵活性,从而具有其独特的价值。 设计中心 FPGA/CPLD在EDA设计中的基础作用 ? 1. VHDL程序通过FPGA/CPLD可以得到EDA 设计的最终产品。 ? 2. VHDL程序通过FPGA/CPLD验证可以形 成固核,具有一定的商品价值。 ? 3. VHDL程序的FPGA/CPLD验证实验是一 种ASIC设计的硬件仿真手段。 ? 鉴于FPGA/CPLD在EDA设计中的这种基础作 用,本课程着重介绍了FPGA/CPLD设计的 相关内容,兼顾ASIC设计的内容。 设计中心 作业