基于FPGA的数字系统设计 1_第1页
基于FPGA的数字系统设计 1_第2页
基于FPGA的数字系统设计 1_第3页
基于FPGA的数字系统设计 1_第4页
基于FPGA的数字系统设计 1_第5页
已阅读5页,还剩86页未读 继续免费阅读

下载本文档

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

文档简介

1、1,基于FPGA的数字系统 设计 电子工程学院 窦 衡 联系地点:清水河科研楼 B425、沙河逸夫楼405 电话: 83207082 E-mail: ,2,教材: 美Michael D.Ciletti 著,3,教材: 美Michael D.Ciletti 著 张雅绮、李锵 等译,4,读者对象: 适用于学习高级数字设计课程的学生 教材的特点: (1)重点讨论现代数字电路系统的设计方法。 (2)讨论基于Verilog 2001和2005,且可综合的RTL描 述和算法建模的设计风格。 (3)明确指出了可综合和不可综合循环的区别。 (4)讲述了如何应用ASM和ASMD图进行行为级建模。 (5)深入论述

2、了基于Verilog 2001和2005的数字处理系 统、RISC计算机和各种数据通道控制器、异步和 同步FIFO设计的算法和架构及综合的设计实例。 (6)给出了150多个经过完全验证的设计实例。 (7)每章后均设计了一些涉及面广且难度高的习题。,5,第1章 数字设计方法概论,基于FPGA的数字系统设计: 工作平台: 计算机 开发平台: FPGA开发设计软件 (仿真、综合、布局布线等) 设计语言: 硬件描述语言、系统描述语言 验证、实现载体: FPGA可编程逻辑器件 实现目标:FPGA芯片构成的复杂电子系统 (SOPC系统),6,EDA(Electronic Design Automation

3、) 其广义定义范围包括: 半导体工艺设计自动化、 可编程器件设计自动化、 电子系统设计自动化、 印刷电路板设计自动化、 仿真与测试,故障诊断自动化、 形式验证自动化 统称为EDA工程,7,数字设计方法,经典设计方法: 基于电路原理图的人工设计法 现代设计方法: 基于计算机语言的EDA设计法,8,一、 数字设计方法发展历程,第一代:70年代 手工操作、PCB和IC版图的CAD阶段 第二代:80年代 仿真和自动布局布线等的CAE阶段 第三代:90年代 高级硬件描述语言、系统级仿真和综 合。实现“概念驱动工程”(Concept Driver Engineering, CDE )的梦想。,9,集成电路

4、设计方法的发展过程,10,二、数字系统设计的基本特征,1. 高级硬件描述语言(HDL)描述 2. Top-Down自上而下分层设计思想,11,1. 高级硬件描述语言,高级硬件描述语言(HDL_Hard Description Language)具有抽象的系统描 述能力,是现代EDA技术的切入点,是设 计者与设计自动化工具之间的桥梁。可实 现系统级的仿真和逻辑综合。据此实现大 规模集成电路的设计,可极大缩短Time- to-Market 时间。,12,HDL特点: (1)可实现系统级直至底层电路级的描述。 (2)可实现自顶向下的层次化设计。 (3)支持各种层次的仿真。 (4)可完成逻辑综合。 (

5、5)设计与工艺无关。 (6)技术齐全,设计方法灵活。 (7)语言标准、规范,易于共享和复用。,13,2. Top-Down自上而下分层设计思想,传统设计方法是自下而上(Buttom-Up) 上 上 设计分解 构造系统 下 下,14,设计分解: 1. 确定设计目标 2. 功能模块分解 3. 进一步细分,直至可用市面上买到 的元器件构建此模块为止 构造系统: 1. 用市面上可买到的元器件构建最底 层模块 2. 用较低一层模块构造较高一层模块 3. 构造顶层模块 4. 测试验证与分析,15,固定功能元件,电路板设计,完整系统构成,系统测试与性能分析,传统设计方法流程:,16,传统设计方法的缺点: 1

6、. 设计依赖于手工和经验。 2. 设计依赖于现有的通用元器件。 3. 设计后期的仿真和调试。 4. 自下而上设计思想的局限。 5. 设计实现周期长,耗时耗力,效率 低下。,17,现代设计方法是:自上而下设计(Top-Down) 逐层描述、逐层仿真,保证满足系统指标,系统指标规范,行为级描述,RTL级描述,逻辑综合,物理实现,设计流程,18,后仿真,行为级描述,逻辑综合,寄存器传输(RTL)级描述,ASIC,自动布局布线(物理实现),门级网表输出,CPLD/ FPGA,行为级仿真,门级仿真,RTL级仿真,系统指标规范,Top-Down 设计步骤,第三层次,第一层次,第二层次,第四层次,19,三、

7、EDA工程的设计方法,1、行为描述法 行为描述:只描述系统模型的行为、功能, 而不管其实现的硬件结构。描述特点是设计文件 简洁、抽象。又称高层描述。 行为描述的语言:高层次硬件描述语言 行为描述的基本特征:将系统的外部行为和 内部的具体硬件实现分隔开来。 体现了现代EDA工程的魅力。,20,三、EDA工程的设计方法,2、IP复用法 IP Core (Intelligent Property Core) IP复用(IP Reuse)是指在集成电路设计过程中,通过继承、共享或购买所需的知识产权内核,然后再利用EDA工具进行设计、综合和验证,从而加速电子系统设计过程,降低开发风验。,21,IP核分为

8、: 硬核(Hard Core):经过流片验证过 的版图形式的设计模块。 软核(Soft Core):经过RTL级验证 的HDL代码形式的电路模块。 固核(Firm Core):以RTL级验证代 码和对具体工艺的网表混合描述形式的设 计模块。,22,23,IP复用的必要: 现代大规模电子系统、SOC(SOPC) 的特点是: 集成度高(数百万上千万门) 功能复杂(内含存储器、DSP、MCU等),千万门级的FPGA: Virtex-II/4/5/6/7、Stratix/II/III/IV/V,24,职业设计人才的设计能力平均为: 100 - 200门(人.天) IP核的设计与复用是SOC的基础和关键

9、。,SOC实例: Set-Top Box,25,各类IP资源库的建设和共享已形成一种规范,贯穿在系统设计的全过程。,有关的数据库系统,系统 数据库,知识产权IP 数据库,工艺规则 数据库,通用模块 数据库,系统定义,系统划分、综合实现、模块映射,模块生成器,指定工艺属性实现,系统级,结构级,电路级,可选的库资源是设计者能力的表征。,26,三、EDA工程的设计方法,3、ASIC设计方法 ASIC_Application Specific Integrated Circuit 是根据某种整机或电子系统 的要求而专门设计的IC。 优点:集成度高、速度快、可靠性好、保密 性好、体积小、功耗低、重量轻。

10、,27,ASIC分类:,IC 通用IC 专用IC-ASIC 专用定制ASCP 面向多用户、 特定领域ASSP 全定制ASIC 半定制ASIC,28,全定制ASIC: 设计师要定义芯片上所有晶体管的几何图形和工艺规则。 优点:芯片性能最优、速度快、功耗低。 缺点:开发周期长,费用高,只适合大批 量生产。 常用的半定制ASIC: 门阵列 (Gate Array) 标准单元 (Standard Cell) 可编程逻辑器件 (CPLD、FPGA),29,FPGA与全定制ASIC性能指标比较,30,ASIC的设计方法,掩膜方法 现场可编程方法,全定制设计方法 定制设计方法 半定制设计方法 硅编译法,可编

11、程逻辑器件法 (CPLD/FPGA),31,CPLD/FPGA设计ASIC的优点:,1没有投片风险 现场布局、布线,下载完成系统 功能实现。 2反复编程,反复擦除,反复使用 3成本低 4设计周期短,32,可编程逻辑器件(FPGA)的发展趋势: (1)更高密度、更大容量的千万门系统级。 (2)向低成本、低电压、微功耗、微封装和 环保型发展。 (3)IP资源复用理念将得到普遍认同并成为 主要设计方式。 (4)MCU、DSP、MPU等嵌入式处理器IP将 成为FPGA应用的核心。 SOPC成为FPGA的发展趋势,33,FPGA(SOPC)与ASIC的融合:,两种方式实现SOPC(可编程ASIC) 1、

12、在FPGA中嵌入CPU等内核,获得可编 程系统平台。(Xilinx的PPC405、440, Microblaze等, Altera的Nios II等) 2、将可编程模块置入ASIC之中,得到具 有可配置功能的ASIC。,34,三、EDA工程的设计方法,4、SOC设计方法 SOC代表当今电子设计的发展方向,其设计 方法称为高层次设计方法。 基本特征: (1) “自顶向下”的设计方法,对整个系统 进行方案设计和功能划分,在单个(或 少数几个)芯片上完成整个系统的功能。 (2)以IP核为设计基础和核心。,35,三、EDA工程的设计方法,4、SOC设计方法 基本特征: (3)以分层次的系统(硬、软件)

13、描述语言 为系统功能和结构的主要描述手段。 (4)芯片的软件设计与硬件设计同步进行。 (5)各模块的综合与验证同步进行。,36,SOC芯片的一般设计流程,37,三、EDA工程的设计方法,5、e-DA网上设计方法 网上 e-service EDA方法的兴起,通 过网络将大的设计项目要求分发给多家 专业EDA设计公司,可更快得到设计结 果。充分利用网络技术资源, IP知识产 权、EDA人才资源共享,缩短产品开发 时间(time_to_market)。,38,三、EDA工程的设计方法,6、软、硬件协同设计方法 随着SOC的发展,SOC所包含的嵌入式软件 所占的比重和作用将越来越大。SOC上软硬件的

14、平衡及协同工作将变得更为重要。 设计方法学上的突破:软硬件协同设计。 系统描述语言: (VHDL、Verilog HDL) (C、C+),System C或其它,39,40,软硬件协同设计的一般流程图:,系统描述,HW/SW划分,协同综合,系统集成,协同仿真、验证,软件,硬件,问题:系统建模、系统描述语言、软硬件划分、性能 评估、协同综合、协同仿真、协同验证。,功能协同仿真,41,四、EDA工程理论基础,1、EDA工程的实现载体 全定制ASIC芯片、 半定制ASIC芯片、 可编程ASIC芯片、 可编程逻辑器件(CPLD、FPGA),42,FPGA的结构与ISP,I/O Block,43,四、E

15、DA工程理论基础,2、EDA工程的设计语言 硬件描述语言(HDL_Hard Description Language) VHDL、 Verilog HDL、SystemVerilog、 Superlog、 SystemC、 (软、硬件协同设计) SpecC,44,四、EDA工程理论基础,3、系统建模 数字系统的模型多种多样,如下模型将数字系统分为控制部分、执行部分和公共部分。,控制部分,执行部分,输 入,输 出,公共部分(电源、时钟、同步电路等),45,四、EDA工程理论基础,3、系统建模,把整个的功能划分为数据路径和控制路径,整个功能,数据路径,控制器,组合逻辑,时序逻辑,(FSM),46,

16、四、EDA工程理论基础,3、系统建模 数字系统的控制部分一般用状态机作为系统模型。状态机分为两种: MOORE型状态机 MEALY型状态机,47,四、EDA工程理论基础,4、高层次综合 数字系统可在不同层次上描述,如:算法层、 寄存器传输层、逻辑层、电路层和版图层。 在每个层次上有不同领域的描述,分为行为 领域描述、结构领域描述和物理领域描述。,48,数字系统各个层次的描述与综合的关系:,版图综合,49,数字系统设计的综合分为三个层次: (1)高层次综合(high-level synthesis) (2)逻辑综合(logic synthesis) (3)版图综合(layout synthesi

17、s) 高层次综合: 给定数字系统的算法级行为描述、约束条件和目标集合,在目标集合中找出一个满足约束条件、实现系统行为的结构。 即抽象的高层描述向具体的低层描述的自动转化。,50,高层次综合的意义: 1、对于超大规模芯片设计和上市时间的 压力,高层次综合是必由之路。可明显提高 设计速度,极大缩短设计周期。 2、对系统不同实现方案进行选择。 3、对系统不同实现方案的性能(资源、 速度等)作出初期评估。 例:Y=A+B+C+D 的实现,51,四、EDA工程理论基础,5、仿真验证 工作量占整个设计的60% 70% 主要手段:逻辑仿真技术、 静态时序分析技术、 (形式验证技术) 仿真(simulatio

18、n): 指从电路的描述抽象出 模型,然后将外部激励信号或数据施加于此模 型,通过观察该模型在外部激励信号作用下的 反应来判断该电子系统是否达到了设计目标。,52,仿真的层次与效率: 电路级仿真 仿真对象是用晶体管、电阻、电容组成的电路网路。工具如:SPICE 门级仿真 针对以逻辑门和功能块描述的电路系统。 寄存器传输级仿真 电子系统由寄存器、存储器、总线、运算单元等基本单元构成,并描述数据在这些元件中流动的条件和过程。 高层次仿真(行为仿真) 以行为算法和结构的混合描述为对象。,53,仿真验证的充分性:不是100% 逻辑仿真存在的问题: (1)仿真输入数据由用户给出,输入数据 的好坏决定了所能

19、查出错误的多少。 (2)输出结果的分析要由有经验的人来进行。 (3)由于输入数据难以穷举,不能保证查 出全部错误。验证是一穷举逼近过程。 (4)需设计复杂的测试向量。,54,仿真的效率问题:,仿真过程中,逻辑门一个数量级的增加会导致仿真所需的周期数3个数量级的增长。,55,四、EDA工程理论基础,6、形式验证 形式验证(formal verification): 是利用理 论证明的方法和数学推导的方法来验证设计结 果的正确性。形式验证基于严密的理论体系, 可解决逻辑仿真存在的问题。 验证的覆盖率可达100% Mentor: FormalPro; Synopsys: Formality; Cad

20、ence: FormalCheck,56,形式验证的优点: (1)更早发现设计缺陷,降低周期和成本。 (2)无需编写复杂的测试向量。 (3)100%覆盖率,提高验证质量。 (4)可与其它验证方法结合使用。 形式验证的不足: (1)只适合模块级或中小系统级的验证。 (2)验证的完整性取决于特性是否被全面准 确地表达。,57,五、HDL硬件描述语言,1、硬件描述语言 HDL语言是当今EDA技术发展的突出代表。是EDA技术的切入点,是设计者与自动化工具之间的桥梁。 特点:用HDL设计电路能够获得非常抽象的描述。 用HDL描述电路设计,在设计的前期就可以 完成电路功能级的验证。可实现逻辑综合。 流行的

21、HDL:VHDL (善于更高层设计) Verilog HDL(善于更低层设计),58,VHDL,Verilog HDL,59,VHDL与Verilog HDL的比较:,60,61,五、HDL硬件描述语言,2、VHDL/Verilog语言的产生及发展 VHDL:Very High Speed Integrated Circuit Hardware Description Language VHDL由美国国防部组织开发 两个版本:VHDL87 称为IEEE1076-1987 VHDL93 称为IEEE1076-1993 96年 IEEE1076.3 成为综合标准 最新版本:VHDL2002,62,

22、Verilog HDL: 1983年由GDA(GateWay Design Automation)公司的Phil Moorby所创。 Phil Moorby后来成为Verilog-XL的主要设计者和Cadence公司的第一个合伙人。 19841985年,Moorby设计出了第一个Verilog-XL的仿真器。 1986年,Moorby提出了用于快速门级仿真的XL算法。 1990年,Cadence公司收购了GDA公司 1991年,Cadence公司公开发表Verilog语言,成立了OVI(Open Verilog International)组织来负责Verilog HDL语言的发展。 版本:V

23、erilog HDL IEEE1364-1995 Verilog HDL IEEE1364-2001 Verilog HDL IEEE1364-2005,63,五、HDL硬件描述语言,3、HDL语言的特点 优点: VHDL/Verilog是一种全方位的硬件描述语言。 具有强大丰富的语言结构,系统硬件描 述能力强、设计效率高; 具有较高的抽象描述、多层次描述能力; 支持库和设计复用,支持模块化设计; 既可仿真也可综合。,64,一个可置数的16位计数器的电原理图:,65,用VHDL描述的可置数16位计数器:,66,用Verilog描述的可置数16位计数器:,67,HDL语言可读性强,易于修改和发现

24、错误。 具有电路仿真与验证机制以保证设计的正确。 特别是对HDL源代码进行行为、功能仿真。 支持电路描述由高层到低层的综合和转换。 HDL语言可实现与工艺无关编程、与器件 无关设计。 移植性好。 HDL语言标准、规范,支持广泛,易于共 享和移植复用。 容易实现ASIC移植。 用于产品开发,上市时间快,成本低。,68,缺点: (1)VHDL放弃对电路级实现的控制,代之 抽象、高层描述。(向电路级描述的扩 展工作正在进行) Verilog系统级描述能力稍弱。 出现SystemVerilog等系统级描述语言。 (2)HDL不是100%能被综合。 (3)综合器综合出的电路性能不完美。 (4)综合的效果

25、随工具的不同而不同。,69,五、HDL硬件描述语言,4、HDL语言的开发环境 分为: HDL模拟器(仿真器) HDL综合器 相应软件:仿真软件和综合软件,70,仿真类: Model Tech公司的Modelsim Aldec 公司的 Active HDL Cadence公司的NC-Verilog、NC-VHDL、 NC-SIM 综合类: Synplicity公司的Synplify/Synplify Pro Synopsys公司的FPGA compiler 、 Design Compiler、 Behavior Compiler Mentor公司的 LeonardoSpectrum,71,Altera 公司:Quartus、Maxplus系列 Xilinx 公司:ISE、Foundation、Aillance系列 Lattice 公司:ispEXPERT、ispLEVER 系列,集成化的开发系统(CPLD、FPGA),72,六、基于FPGA的设计流程,73,设计规范,设计规范描述设计实现的功能特性。包括: 功能、 定时、 硅面积、 功耗、 可测试性、 故障覆盖率 等设计准则的详细说明书,74,六、基于FPGA的设计流程,75,设计划分,划分过程: 把一个复杂设计逐步划分成

温馨提示

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

评论

0/150

提交评论