第八章可编程逻辑器件FPGA_第1页
第八章可编程逻辑器件FPGA_第2页
第八章可编程逻辑器件FPGA_第3页
第八章可编程逻辑器件FPGA_第4页
第八章可编程逻辑器件FPGA_第5页
已阅读5页,还剩97页未读 继续免费阅读

下载本文档

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

文档简介

1、单片机与嵌入式系统王浩 副教授中南大学信息科学与工程学院第八讲 嵌入式系统 FPGA技术基础2主要内容 什么是FPGA FPGA的典型应用 FPGA器件基本结构 FPGA电路设计与程序设计 FPGA设计流程 其它3什么是FPGAPart14什么是FPGAPart15什么是FPGA 门数介于低端的分离元件和高端的ASIC之间 可编程修改的集成电路芯片 Field Programmable Gate Array 现场可编程逻辑器件Part167历史上的可编程逻辑Part18历史上的可编程逻辑 CPLD,Complex Programmable Logic Device FPGA,Field Pro

2、grammable Gates ArrayPart1PLD、CPLD、FPGA、ASIC11器件参数示例 工作电源电压 5V 3.3V 2.5V IO电压 5V 3.3V(TTL) 速度 封装 管脚数量 逻辑资源数量(与非门)12Altera FPGA器件 Cyclone 低成本 Stratix 高性能 Max CPLD HardCopy 结构化ASICPart115Xilinx 简介 赛灵思公司(Xilinx)在半导体行业中增长最快的领域之一 可编程逻辑器件(PLD)市场中雄居领先地位。根据iSuppli 的数据,2006 年赛灵思公司占有可编程逻辑器件市场超过一半以上的份额。在范围更大的价

3、值160 多亿美元的ASIC 市场(其中包括PLD)中,赛灵思是全球第二大供应商。赛灵思公司在全球拥有7500 多家客户和每年5 万多个新设计。如今,赛灵思公司在全球有近3,000 名员工。公司近半数的工程师致力于软件开发。Part1FPGA器件的性能特点: 采用SRAM编程技术,具有高密度、高速度、高可靠性和低功耗的特性。 提供丰富的I/O端数和触发器,集成度远远高于PAL和GAL器件。 FPGA器件结构灵活,内部的各种资源(CLB、IOB和ICR)均可以编程,可以实现多个变量的任意逻辑。FPGA器件的性能特点:某些器件提供片内高速RAM,可用于FIFO等设计。使用FPGA器件时需要进行数据

4、配置,断电后,配置数据自动丢失。内部时延与器件结构和逻辑连接有关,传输时延不可预测。20主要内容 什么是FPGA FPGA的典型应用 FPGA器件基本结构 电路设计与程序设计 FPGA设计流程 其它25主要内容 什么是FPGA FPGA的典型应用 FPGA器件基本结构* FPGA电路设计与程序设计 FPGA设计流程 其它表8-4-1 XC4000系列器件主要特征 FPGA一般是由以下四部分组成: 一、可配置逻辑模块 CLB(Configutable Logic Blocks) 二、输入/输出模块 IOB(Input/Output Blocks) 三、互连资源 ICR (Interconnect

5、 Capital Resource) (含可编程开关矩阵) 四、一个用于存放编程数据的静态存储器SRAM。 FPGA组成图 XC4000系列FPGA基本结构CLBCLBCLBCLBCLBCLBCLBCLBCLBCLBCLBCLBCLBCLBCLBCLB可编程开关矩阵可编程输入/输出模块IOB互连资源ICR可配置逻辑模块CLBFPGA器件基本结构器件基本结构IOB提供内部逻辑阵列与外部引出线之间的编程接口;I C R 经 编 程 实 现C L B 与 C L B 以 及CLB与IOB之间的互连。可配置逻辑模块(可配置逻辑模块(CLB)每个CLB由4个触发器(C)、两个独立的4输入组合逻辑函数发生

6、器(F、G)和由数据选择器组成的内部控制电路(K)构成。CLB有13个输入和4个输出,输入与输出可与CLB周围的互连资源相连,如图所示。两个组合逻辑函数发生器F和G为查找表结构。其工作原理类似于用ROM实现多种逻辑函数 ,F 和 G 的 输 入等效于R O M 的 地 址 码 , 通 过 查 找ROM中的地址表,即可得到相应的组合逻辑函数输出。图 CLB与互连资源互连关系开关矩阵开关矩阵开关矩阵开关矩阵F4 C4 G4YoutYG3C3F3G2C2F2XoutG1C1KF1X互连资源FPGA 的IOB结构C11DQ触发器C11DQ触发锁存器延时摆率控制上拉/下拉电阻VCC输出缓冲器输入缓冲器O

7、E输出输出时钟I1I2输入时钟I/O可编程I/O模块(IOB)FPGA IOB由输入触发器、输入缓冲器和输出触发/锁存器、输出缓冲器组成,每个IOB控制一个外部引出端(管脚)。可编程内部互连资源(可编程内部互连资源(ICR)ICR由纵横分布在CLB阵列之间的金属线网络金属线网络和位于纵横线交叉点上的可编程开关矩阵可编程开关矩阵组成。FPGA使用的是分层连线资源结构,根据应用的不同,ICR一般提供3种连接结构,即通用单通用单/双长线连接双长线连接、长线连接长线连接和全全局连接局连接。通用单通用单/双长线连接双长线连接主要用于CLB之间的连接,任意两点间的连接都要通过开任意两点间的连接都要通过开关

8、矩阵。关矩阵。它提供了相邻CLB之间的快速互连和复杂互连的灵活性,但传输信号每通过一个可编程开关矩阵,就增加一次时延。因此,FPGA内部时延与器件结构和逻辑布线有关,它的信号传输时延不可确定时延不可确定。图 通用单/双长线连接结构F4 C4 G4 YQYG3C3F3G2C2F2XQG1C1KF1X开关矩阵开关矩阵开关矩阵开关矩阵CLBCLBCLBCLB开关矩阵(a)(b)CLB通用单长线连接结构通用单长线相邻的通用单长线通用双长线连接结构通用双长线通用双长线可连接两个非相邻的CLB图 通用单/双长线连接结构(c)(d)PSMPSMPSMPSMCLBCLB2CLBCLB3CLBCLBCLB4CL

9、B1CLB双长线单长线可编程开关矩阵每个开关矩阵的连线点上有5个选通晶体管通用单/双长线连接结构通用单长线连接相邻CLB通用双长线连接非相邻CLB可编程开关矩阵的结构2.长线连接长线连接在通用单/双长线的旁边还有3条从阵列的一头连到另一头的线段,称为水平长线和垂直长线水平长线和垂直长线。这些长线不经过可编程开关矩阵,信号延时时间小,长线主要用于长距离或多分支信号的传送长距离或多分支信号的传送。3. 全局连接全局连接8条全局线贯穿条全局线贯穿FPGA器件器件,可达到每个CLB。全局连接主要用于传送一些公共信号,如全局时钟信号、公用控制信号。34主要内容 什么是FPGA FPGA的典型应用 FPG

10、A器件基本结构 FPGA电路设计与程序设计 FPGA设计流程 其它35FPGA设计与程序设计 数字电路设计(同步时序电路) 作原始状态表 状态表的简化 状态分配 作激励函数和输出函数 画逻辑图36现代数字系统设计方法 EDA 计算机辅助设计 原理图,印刷电路板设计 基于硬件描述语言的设计 系统设计 集成电路设计 计算机仿真Part237FPGA电路设计 两种设计方法 图形设计方法 放置可用资源元件(布局) 连接元件(布线) HDL描述 时钟、条件、操作 逻辑运算、连接Part239HDL语言概述 HDL是Hardware Description Language 的缩写 为硬件仿真的目的而设计

11、的语言 需要能够描述电路的事件、行为 沿用程序设计语言不是总能解决问题 总线周期局限,如何描述小于总线周期的信号 难以描述电路事件,并发,连接Part2HDL语言概述 我们将设计用HDL描述出来,EDA工具将这些HDL代码转换为物理实现(综合) 我们可以使用HDL对设计进行仿真、验证等 ABEL 这是一种早期的硬件描述语言。支持逻辑电路这是一种早期的硬件描述语言。支持逻辑电路的多种表达形式,其中包括逻辑方程,真值表和状的多种表达形式,其中包括逻辑方程,真值表和状态图。态图。 ABEL语言从早期可编程逻辑器件(语言从早期可编程逻辑器件(PLD)的设计中发展而来,早期的设计中发展而来,早期ABEL

12、-HDL被广泛用于被广泛用于各种可编程逻辑器件的逻辑功能设计。如各种可编程逻辑器件的逻辑功能设计。如GAL 、Lattice isp EXPERT,Xilinx的的Foundtion和和Webpack等等EDA软件中。从长远来看,软件中。从长远来看,ABEL-HDL只会在较小的范围内继续存在。只会在较小的范围内继续存在。 AHDL ALTERA公司发明的公司发明的HDL, ALTERA公司企业标准。特点是非常易学易用,学公司企业标准。特点是非常易学易用,学过高级语言的人可以在很短的时间(如几过高级语言的人可以在很短的时间(如几周)内掌握周)内掌握AHDL。 缺点缺点 :移植性不好,通常只用于:

13、移植性不好,通常只用于ALTERA自己的开发系统。自己的开发系统。Verilog Verilog HDL就是在应用最广泛的就是在应用最广泛的C语言的语言的基础上发展起来的一种件描述语言。基础上发展起来的一种件描述语言。1990年年CADENCE公司公开发表了公司公开发表了Verilog HDL,并成并成立立LVI组织以促进组织以促进Verilog HDL成为成为IEEE标准,标准,即即IEEE Standard 1364-1995。 特点:特点: 1、语法自由、语法自由 2、国内资料相对较少、国内资料相对较少 3、IC设计中,设计中,90%的公司使用的公司使用 4、利用、利用EDA工具进行逻辑

14、综合和优化工具进行逻辑综合和优化 VHDL 全称:全称:Very-High-Speed Integrated Circuit Hardware Description Language 诞生于诞生于1982年。年。1987年底,年底,VHDL被被IEEE和和美国国防部确认为标准硬件描述语言美国国防部确认为标准硬件描述语言 。 有有IEEE-1076和和IEEE标准的标准的1076-1993版本。版本。 特点:特点: 1、发展较早,语法严格、发展较早,语法严格 2、可以利用可以利用EDA工具进行逻辑综合和优化工具进行逻辑综合和优化 3、VHDL丰富的仿真语句和库函数丰富的仿真语句和库函数VHDL

15、简介 电路基本结构都由实体说明(Entity Declaration)和构造体(Architecture Body)两部分构成 实体说明部分规定了设计单元的输入输出接口信号和引脚 构造体部分定义了设计单元的具体构造和行为 47VHDL的历史 1980 VHSIC项目(Very High Speed IC) 1983 IBM、TI和Intermetrics发展语言和仿真工具 1987 DOD(美国国防部)要求所有数字电路用VHDL描述 F-22战斗机项目采用战斗机项目采用VHDL 1987 IEEE1076 1993 IEEE1164 1996基于IEEE1164的仿真和综合工具问世 VHDL-

16、200 xPart248FPGA开发流程设计输入(编程)HDLSchematic(原理图)Finite State Machine(状态机)功能仿真综合布局布线时序仿真Part349主要内容 什么是FPGA FPGA的典型应用 FPGA器件基本结构 电路设计与程序设计 FPGA设计流程 其它综合(Synthesis) To check a design file for syntax and semantic errors, check a design for errors and perform elaboration on the design. 将逻辑功能描述转换为电路功能模块(与门、

17、非门及其组合)及其连接的过程。Part355布局(Placement) 将综合中使用的元件用FPGA中的合适的区域实现 Size & AreaPart356布局(Placement) Size and Area 集成电路中,功能是形状和面积的函数 Function = f(size, area)Part357布线(Route) 与PCB布线相同 将功能部件连接起来 导线对信号的影响 信号从一个7cm长的线一端传到另一端会怎样 影响电路工作速度Part358时序仿真 包含时序信息的仿真 需要FPGA芯片厂商提供相关参数 同功能仿真的区别 功能仿真在设计输入完毕后即可进行 时序仿真必须在适

18、配完成后进行 存在信号传输和逻辑计算延迟 时序仿真需要厂商器件参数Part3处理外围和处理内部的关系、直接和间接的关系63646566676869STEP1:建立 工作库文件夹STEP2:输入设计项目VHDL文本代码STEP3:存盘,注意文本取名STEP4:将设计项目设置成ProjectSTEP5:选择目标器件 STEP11: 硬件测试STEP9:引脚锁定并编译STEP8:仿真测 试和波形分析STEP7:建立仿真波形文件STEP6:启动编译STEP10:编程 下载/配置VHDL文本输入设计流程文本输入设计流程 Step1 建立工作库文件夹建立工作库文件夹为设计全加器新建一个文件夹作工作库文件夹

19、名取为文件夹名取为My_prjctStep2 编辑输入并保存编辑输入并保存VHDL源文件源文件新建一个设计文件使用文本输入方法设计,必须选择打开文本编辑器Step3 Step3 在文本编辑窗中输入在文本编辑窗中输入VHDLVHDL文件及存盘文件及存盘 建立文本编辑器对话框建立文本编辑器对话框文本编辑窗用键盘输入设计文件:多路选择器存盘文件名必须取为:mux21a.vhd注意,要存在自己建立的文件夹中文件存盘后,关键词将改变颜色!否则文件名一定有错!Step4 将当前设计设定为工程将当前设计设定为工程首先点击这里然后选择此项,将当前的原理图设计文件设置成工程最后注意此路径指向的改变首先选择这里器件系列选择窗,选择ACEX1K系列根据实验板上的目标器件型号选择,如选EP1K30注意,首先消去这里的勾,以便使所有速度级别的器件都能显示出来Step5 选目标器件选择编译器编译窗Step6 编译及纠错 选择选择VHDL文本编译版本号和排错文本编译版本号和排错选择此项选择VHDL1993项编译出错! 确定设计文件中的错误确定设计文件中的错误打开错误提示窗错误所在错误所在改正错误完成编译!完成编译!首先选择此项,为仿真测试新建一个文件Step7 建立波形文件建立波形文件选择波形编辑器文件从从SNF文件中文件中输入

温馨提示

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

评论

0/150

提交评论