收藏 分享(赏)

FPGA应用篇.ppt

上传人:dzzj200808 文档编号:3321701 上传时间:2018-10-13 格式:PPT 页数:53 大小:5.12MB
下载 相关 举报
FPGA应用篇.ppt_第1页
第1页 / 共53页
FPGA应用篇.ppt_第2页
第2页 / 共53页
FPGA应用篇.ppt_第3页
第3页 / 共53页
FPGA应用篇.ppt_第4页
第4页 / 共53页
FPGA应用篇.ppt_第5页
第5页 / 共53页
点击查看更多>>
资源描述

1、电子设计自动化应用技术 FPGA应用篇,EDA技术,第一讲 EDA技术概述,EDA是什么? 本课程要学什么? 怎样学?,前言(课程简介),EDA是什么?,EDA是电子设计自动化(Electronic Design Automation)的缩写 EDA的广义定义范围包括: 1、半导体工艺设计自动化; 2、可编程器件设计自动化; 3、电子系统设计自动化; 4、印刷电路板设计自动化; 5、仿真与测试、故障诊断自动化; 6、形式验证自动化。以上各部分统称为EDA工程,EDA技术的狭义定义:,以大规模可编程逻辑器件为设计载体,以硬件描述语言为逻辑描述的主要表达方式,以计算机、大规模可编程器件的开发工具软

2、件及实验开发系统为设计工具,自动完成用软件方式描述的电子系统到硬件系统的编译、化简、分割、综合及优化、布局布线、仿真,直至完成对于特定目标芯片的适配编译、逻辑映射、编程下载等工作,最终形成集成电子系统或专用集成芯片的一门多学科融合的新技术。,EDA技术的主要内容,实现载体:大规模可编程逻辑器件(PLD:Programmable Logic Device) 描述方式:硬件描述语言(HDL:Hard descripation Lauguage)VHDL、Verlog HDL等 设计工具:开发软件、开发系统 硬件验证:实验开发系统,EDA技术是:,一系列工具软件与硬件(芯片)的集合; 一个融合了多学

3、科最新成果的新技术; 代表了当今电子设计技术的最新发展方向 ;工程师设计电子系统进行工程应用的实现方式之一; 现代电子信息技术专业人才必备能力之一; 大学生就业的一块敲门砖; ,本课程要学什么?,1、掌握EDA技术基本知识, 1、2章 包括:熟练掌握至少一种工具软件开发环境, 4章学会使用一种硬件描述语言, 5、6章了解可编程逻辑器件工作原理以及硬件电路设计方面的相关知识 3、6章2、熟习专业领域及行业中如何应用 7章3、了解现代电子电路设计发展新技术 8章,怎么学?,教与学的关系 广泛阅读,培养兴趣多动手,勤实践关于教材几点要求1、保证上课出勤2、按时独立完成课后作业3、珍惜每一次实验考查形

4、式:平时出勤、作业, 30%实验过程检查, 30%大作业(上机实验+设计报告)40%,推荐课外教材,EDA技术实用教程科学出版社 EDA技术及应用清华大学出版社 EDA技术与VHDL清华大学出版社 数字系统设计与Verilog HDL 电子工业出版社 基于FPGA的嵌入式开发与应用电子工业出版社 硬件描述语言VHDL教程(基础篇 提高篇)西安交通大学出版社 FPGA数字信号处理实现原理及方法清华大学出版社 数字信号处理的FPGA实现清华大学出版社,一、EDA技术概述,1、EDA技术发展的三个阶段 1)、早期电子CAD阶段20世纪70年代,属EDA技术发展初期。利用计算机、二维图形编辑与分析的C

5、AD工具,完成布图布线等高度重复性的繁杂工作。典型设计软件如Tango布线软件。 2)、计算机辅助工程设计CAE阶段20世纪80年代初,出现了低密度的可编程逻辑器件(PAL_Programmable Array Logic 和GAL_Generic Array Logic),相应的EDA开发工具主要解决电路设计没有完成之前的功能检测等问题。 80年代后期,EDA工具已经可以进行初级的设计描述、综合、优化和设计结果验证。,3)、电子设计自动化(EDA)阶段,20世纪90年代,可编程逻辑器件迅速发展,出现功能强大的全线EDA工具。具有较强抽象描述能力的硬件描述语言(VHDL、Verilog HDL

6、)及高性能综合工具的使用,使过去单功能电子产品开发转向系统级电子产品开发(即SOC_ System On a Chip:单片系统、或片上系统集成)。,2 EDA技术及其发展,EDA技术在进入21世纪后,得到了更大的发展,突出表现在以下几个方面:,使电子设计成果以自主知识产权的方式得以明确表达和确认成为可能;,在仿真和设计两方面支持标准硬件描述语言的功能强大的EDA软件不断推出。,电子技术全方位纳入EDA领域;,EDA使得电子领域各学科的界限更加模糊,更加互为包容;,2 EDA技术及其发展(续),更大规模的FPGA和CPLD器件的不断推出;,基于EDA工具的ASIC设计标准单元已涵盖大规模电子系

7、统及IP核模块;,软硬件IP核在电子行业的产业领域、技术领域和设计应用领域得到进一步确认;,SoC高效低成本设计技术的成熟。,SoC: SYSTEM ON A CHIP 片上系统,SoPC: SYSTEM ON A PROGAMMABLE CHIP 可编程片上系统,CSoC: CONFIGURABLE SYSTEM ON A CHIP 片上可配置系统,注:以上三种系统可统称为片上系统,但是却存在一定区别:后两种更强调其可编程性能。,3、EDA技术应用领域,专用集成电路开发 汽车电子 仪器仪表 医疗设备 航空航天 消费电子 通信工程 宽带、无线 高速运算,信息处理 多媒体技术,传统设计方法:自下

8、而上(Bottom - up)的设计方法,是以固定功能元件为基础,基于电路板的设计方法。,固定功能元件,电路板设计,完整系统构成,系统调试、测试与性能分析,系统功能需求,输入,输出,4、EDA设计思想,1. 设计依赖于设计师的经验。2. 设计依赖于现有的通用元器件。3. 设计后期的仿真不易实现和调试复杂。4. 自下而上设计思想的局限。5. 设计实现周期长,灵活性差,耗时耗力,效率低下。,传统设计方法的缺点:,EDA设计方法:自上而下(Top - Down)的设计方法。其方案验证与设计、系统逻辑综合、布局布线、性能仿真、器件编程等均由 EDA工具一体化完成。,设计思想不同:自上而下(Top -

9、Down)的设计方法。自上而下是指将数字系统的整体逐步分解为各个子系统和模块,若子系统规模较大,则还需将子系统进一步分解为更小的子系统和模快,层层分解,直至整个系统中各个子系统关系合理,并便于逻辑电路级的设计和实现为止。 自上而下设计中可逐层描述,逐层仿真,保证满足系统指标。,系统规格设计,功能级描述,功能级仿真,逻辑综合、优化、布局布线,定时仿真、定时检查,输出门级网表,ASIC芯片投片、PLD器件编程、测试,ASIC:Application Specific Integrated Circuits, PLD: Programmable Logic Devices,传统方法与EDA方法比较:

10、,传统方法 1.从下至上 2.通用的逻辑元、器件 3.系统硬件设计的后期进行仿真和调试 4.主要设计文件是电原理图,EDA方法 1.自上至下 2.可编程逻辑器件 3.系统设计的早期进行仿真和修改 4.多种设计文件,发展趋势以 HDL描述文件为主 5.降低硬件电路设计难度,EDA技术极大地降低硬件电路设计难度,提高设计效率,是电子系统设计方法的质的飞跃。,5、EDA常用软件,电路设计与仿真工具:SPICE/PSPICE;multiSIM7(EWB);Matlab;SystemView PCB设计软件: Protel(Altium DXP)、OrCAD、Viewlogic、PowerPCB、Cad

11、ence PSD IC设计软件:设计输入工具 Cadence的composer , viewlogic的viewdraw设计仿真工具 Model Sim 综合工具 Synopsys的Design Compile 布局和布线 物理验证工具 PLD设计工具:其它EDA软件,按照主要功能与应用场合分类:,PLD设计工具:,代表性的PLD厂家 :Altera公司工具:MAX+plusII和QuartusII,Xilinx公司工具:早期的Foundation和目前的ISE 。Lattice公司工具:ispDesign EXPERT。,二、FPGA器件原理,1 可编程逻辑器件的发展历程,70年代,80年代

12、,90年代,PROM 和PLA 器件,改进的 PLA 器件,GAL器件,FPGA器件,EPLD 器件,CPLD器件,内嵌复杂 功能模块 的SoPC,可编程逻辑器件分类:可按编程技术、集成度、逻辑单元结构以及阵列编程的不同分别进行分类。 按编程技术分类:以实现PLD器件编程信息转换的物理技术不同进行分类,有一次性编程OTP(One Time Programmable)和多次编程两类。OTP器件只允许对FPGA进行一次编程,编程之后不能再次修改。多次编程器件允许对FPGA多次编程,使用方便,容易修改设计方案。 按逻辑单元结构分类:分为查找表型、多路选择器型和乘积项型结构。查找表型逻辑单元一般有4输

13、入端,可产生任何4输入逻辑函数,输出可以是寄存器型或者组合型。查找表型逻辑单元能快速有效地实现数据通道、增强型寄存器、数学运算及数字信号处理器的设计。多路选择器型逻辑单元通过多路数据选择器实现各种逻辑函数。乘积项型逻辑单元由与门阵列、或门和触发器组成,乘积项型结构适于实现复杂组合逻辑、状态机设计等。,2 可编程逻辑器件的分类,按集成度(PLD)分类,PLD是一种由用户根据需要而自行构造逻辑功能的数字集成电路。目前主要有两大类型即:CPLD(Complex PLD)FPGA (Field Programmable Gate Array)。,PROM (Programmable Read Only

14、 Memory)工作原理:1970年,出现了第一个最简单的可编程逻辑器件PROM,最初PROM只是作为计算机存储器使用,用来存储程序和数据。由于PROM是与或阵列形式,因此也能够方便地实现多输入多输出组合函数。,右图给出一个与阵列固定、或阵列可编程的PROM示意图,只说明PROM的工作原理,不代表PROM的实际电路。 图中与阵列是一个全译码的固定阵列,输入3个变量,输出为2n 个最小项。或阵列由用户编程,可以实现3输出的函数。每一个输出可根据需要任意选择一些最小项相或,在输出端产生若干个最小项之和的组合函数。,PLA (Programmable Logic Array)工作原理:PROM的进一

15、步演化产生了与/或阵列均可编程的可编程阵列逻辑PLA,1975年PLA首次投入使用。PLA与PROM相比,提高了芯片利用率,缩小了系统体积。由于信号通过可编程连线所需时间比PROM固定与阵列要长,因此器件工作速度不够高。目前,PLA已不常使用。,PLA结构如图所示,与/或阵列均可编程。 与阵列可编程:采用部分译码方式,通过编程使其产生所需要的乘积项,乘积项不一定是全部n个输入的组合。 或阵列可编程:选择所需的乘积项相或,在输出端产生乘积项之和的函数。,PAL (Programmable Array Logic)工作原理:20世纪70年代末期,出现了与阵列可编程,或阵列固定的PAL器件,这种结构

16、不仅能实现多数逻辑功能,而且比PLA速度快。 GAL (Generic Array Logic)工作原理: 1985年,Lattice公司设计的通用阵列逻辑GAL器件以及随后出现的可擦除可编程逻辑器件EPLD(Erasable Programmable Logic Device)等都具有与PAL相似的结构。,PAL结构:与阵列可编程或阵列固定,CPLD(Complex Programmable Logic Device)工作原理: 1984年,Altear公司发明了基于CMOS和EPROM技术组合的CPLD。,CPLD总体结构:由简单可编程逻辑单元块(SPLD块)、公共可编程互连矩阵构成,互连

17、矩阵实现各逻辑单元块之间的连接。 互连矩阵中的可编程开关可以是EPROM、E2PROM、Flash ROM或SRAM,这取决于选择的CPLD制造商和器件系列。,FPGA框架结构由三部分组成: 可编程输入/输出模块I/OB (I/O Block) 可配置逻辑模块CLB (Configurable Logic Block) 可编程内部连线PI (Programmable Interconnect),I/OB:位于芯片内部四周,主要由逻辑门、触发器和控制单元组成。在内部逻辑阵列与外部芯片封装引脚之间提供一个可编程接口。 CLB:是FPGA的核心阵列,用于构造用户指定的逻辑功能,不同生产厂商的FPGA

18、器件其不同之处主要在核心阵列。每个CLB主要由查找表LUT(Look Up Table)、触发器、数据选择器和控制单元组成。 PI:位于CLB之间,用于传递信息。编程后形成连线网络,提供CLB之间、CLB与I/OB之间的连线。,FPGA基于SRAM工艺,3、ASIC与FPGA,CPLD之间的关系:,专用集成电路ASIC(Application Specific Integrated Circuit),相对于标准集成电路或通用集成电路而言,是一种为用户专门设计和制造的专用集成电路,有全定制、门阵列和标准单元ASIC之分。相对于可编程器件来说ASIC成本低,但通用性差,一般不具有现场或在线编程能力

19、;开发ASIC是通过FPGA/CPLD来进行初期的设计和验证。FPGA/CPLD具有高度的灵活性,支出在线编程和现场可编程能力,在无需更改整体硬件电路结构的情况下就可以修改电路系统;一旦产品设计成熟,硬件测试成功,即可流片量产,成为ASIC。,4、FPGA器件选择,FPGA器件种类多,选择一款性价比合理的FPGA芯片,涉及多个方面。由于FPGA器件发展日新月异,更多更新的器件应查阅各公司提供的器件数据手册。设计系统的要求决定FPGA的选用:系统将根据设计方案对器件提出如下基本要求:器件容量、工作速度、工作电压、引脚数量、编程方式以及器件成本等。有些系统还会提出一些特殊的要求,如希望FPGA器件

20、内部含有存储器块、DSP块、锁相环等。以Altear公司常用FPGA器件性能为例:该公司提供的FPGA有适用于低成本、大批量设计的ACEX1K、Cyclone等系列产品;也有适用于高端设计的APEX20K、Stratix等系列产品。这些器件的逻辑结构、配置方式、资源等方面有所不同。,Altear公司主要PLD器件性能对照,5、FPGA器件编程,FPGA器件的编程或称配置:指的是通过一根编程电缆将计算机与FPGA器件连接在一起,再执行FPGA开发工具提供的器件编程命令,将编程数据文件下载到FPGA器件的过程。每个FPGA厂商都有自己特定的术语、技术和协议,FPGA编程细节不完全一样。 以Alte

21、ra公司的FPGA器件编程为例:根据编程电缆与计算机连接方式的不同分为串行、并行、USB、主动、被动等配置模式。串行配置模式用1条数据线,并行配置模式用8条数据线;主动模式由器件引导配置过程,被动模式由计算机或其它控制器控制配置过程。 FPGA器件配置方式控制字设置器件编程方式有以下6种: (1)AS(Active Serial)方式(主动串行方式) (2)PS(Passive Serial)方式(被动串行方式) (3)PPS(Passive parallel synchronous)方式(被动并行同步方式) (4)PPA(Passive parallel asynchronous)方式(被动

22、并行异步方式) (5)JTAG(Joint Test Action Group)方式 (6)USB方式,Altera提供常用的编程连接电缆有4种: (1)ByteBlaster配置电缆 (2)ByteBlasterMV配置电缆 (3)MasterBlaster/USB配置电缆 (4)BitBlaster配置电缆 串口连接时编程电缆选择:可以选择BitBlaster或MasterBlaster配置电缆; 并口连接时编程电缆选择:可以选择ByteBlaster或ByteBlasterMV配置电缆; USB连接时编程电缆选择:选择MasterBlaster配置电缆。,Altera的FPGA芯片常用配

23、置引脚及其功能说明,Altera的FPGA芯片常用配置文件及其说明,ByteBlasterMV配置:下载电缆通过PC机并口将编程数据配置到FPGA中,与PC机并口相连的是25针插头,与PCB板相连的是10针插头。提供PS方式和JTAG方式两种下载方式,PS方式用于Cyclone、APEX、APEX20K、ACEXlK、Mercury、Excalibur、FLEXl0K、FLEX8000和FLEX6000等器件的配置;JTAG方式用于编程或配置含有JTAG接口的芯片。,ByteBlasterMV配置,25针插头连接,在PS方式下和在JTAG方式下的引脚信号名称不同。,10针插头连接,对应PS方式

24、和JTAG方式的引脚信号名称有所不同。,ByteBlasterMV下载电缆中的数据转换电路: 图中标示(1)串联电阻的阻值均为100,标示(2)上拉电阻的阻值均为2.2k。,被动串行PS配置方式:配置数据通过下载电缆串行地送到PLD器件,配置数据的同步时钟由数据源提供。PS方式下可以对单个或多个FPGA器件进行配置。这里选择FLEX10K器件的连接为例,单个FPGA器件与下载电缆的连接如图所示,器件配置文件为SRAM目标文件(.sof),该文件是QuartusII编译时自动产生的,如果DATA0引脚在用户状态中被占用,在配置过程中该引脚应与用户电路隔离。,JTAG配置方式:通过ByteBlas

25、terMV电缆以及JTAG信号TCK、TMS、TDI和TDO完成FPGA器件配置。JTAG方式下单个FLEX10K器件与下载电缆的连接如图所示,所有其它I/O引脚在配置过程中均为三态。其他FPGA器件的JTAG连接基本相同。,MasterBlaster/USB配置,MasterBlasterUSB配置:配置电缆通过PC机RS-232串口或USB接口将编程数据配置到目标器件中。MasterBlaster电缆提供PS和JTAG两种下载方式。MasterBlaster电缆的一端与计算机串口或USB接口相连,另一端与电路板的标准10针插座相连。编程数据从串口或USB口通过电缆下载到电路板上的FPGA中

26、。 SignalTap宏功能:利用MasterBlaster配置电缆不仅可以将设计项目的编程数据下载到目标器件中,而且还可通过SignalTap宏功能对特定器件进行在线调试。 SignalTap宏功能是一种嵌入式逻辑分析仪,能够在器件特定的触发点捕获数据并保存到器件内部的嵌入式系统块,数据通过与JTAG接口相连的MasterBlaster电缆上传到Quartus波形编辑器中显示,对波形进行分析。,具有标准串行电缆的9针D型插头连接器与RS-232端口相连,连接信号及说明如表所示。,MasterBlasterl0针插头的引脚信号名称,MasterBlaster电缆供电方式:有多种方式,可以采用电

27、路板提供的5.0V或3.3 V供电;也可以由直流电源供电;还可以采用USB电缆的5.0V供电。 MasterBlaster电缆供电优先级:优先选择电路板供电,当电路板上的5.0V或3.3V电源无效时,MasterBlaster电缆能够由直流电源或USB电缆供电。 MasterBlaster电缆的输出驱动:将电路板上的VCC和GND连接到MasterBlaster电缆的VCC、VIO和GND引脚。,JTAG配置,JTAG配置方式:配置是经过JTAG接口信号TCK、TMS、TDI和TDO完成的, JTAG接口信号说明如表所示。 ByteBlasterMV电缆和MasterBlaster电缆可对单个

28、和多个含有JTAG接口的芯片,如APEX、APEX20K、Mercury、ACEXlK和FLEX10K等系列器件进行编程或配置。,MasterBlaster或ByteBlasterMV的JTAG配置连接如图所示,其他I/O引脚在配置过程中均为三态。,FPGA采用JTAG配置时,其它常规配置引脚也应该正确连接,表中列举了需要连接的引脚。,作业一:,1、上网下载QuartusII软件6.0及以上版本,自学软件安装、申请授权、基本功能使用; 2、下载并阅读至少3篇涉及EDA技术在通信工程领域应用的相关文章,结合文章写一篇300字左右的读后感;在文后标清所看文章题目及出处; 另外,写对本课程的建议与想法。 作业上交邮箱: ,作业内标清姓名、班级、学号,严禁抄袭,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 大学课件

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报