FPGA技术课件_第1页
FPGA技术课件_第2页
FPGA技术课件_第3页
FPGA技术课件_第4页
FPGA技术课件_第5页
已阅读5页,还剩94页未读 继续免费阅读

下载本文档

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

文档简介

1、1FPGAFPGA技术技术黄成黄成2课程简介课程简介总学时数:总学时数:4848;其中,理论:;其中,理论:8 8,实验:,实验:4040学分:学分:3.03.0考核方式:作品验收考核方式:作品验收成绩评定:平时:作品:实验报告成绩评定:平时:作品:实验报告=3=3:4 4:3 3。31 可编程逻辑器件的发展历程可编程逻辑器件的发展历程70年代年代80年代年代90年代年代PROM 和和PLA 器件器件改进的改进的 PLA 器件器件GAL器件器件FPGA器件器件EPLD 器件器件CPLD器件器件内嵌复杂内嵌复杂功能模块功能模块的的SoPCFPGA硬件基础硬件基础4可编程逻辑器件分类可编程逻辑器件

2、分类:可按编程技术、集成度、逻辑单元结构以及阵列编程的:可按编程技术、集成度、逻辑单元结构以及阵列编程的不同分别进行分类。不同分别进行分类。按编程技术分类按编程技术分类:以实现:以实现PLD器件编程信息转换的物理技术不同进行分类,有器件编程信息转换的物理技术不同进行分类,有一次性编程一次性编程OTP(One Time Programmable)和多次编程两类。)和多次编程两类。OTP器件只允器件只允许对许对FPGA进行一次编程,编程之后不能再次修改。多次编程器件允许对进行一次编程,编程之后不能再次修改。多次编程器件允许对FPGA多次编程,使用方便,容易修改设计方案。多次编程,使用方便,容易修改

3、设计方案。按逻辑单元结构分类按逻辑单元结构分类:分为查找表型、多路选择器型和乘积项型结构。查找表:分为查找表型、多路选择器型和乘积项型结构。查找表型逻辑单元一般有型逻辑单元一般有4输入端,可产生任何输入端,可产生任何4输入逻辑函数,输出可以是寄存器型输入逻辑函数,输出可以是寄存器型或者组合型。查找表型逻辑单元能快速有效地实现数据通道、增强型寄存器、或者组合型。查找表型逻辑单元能快速有效地实现数据通道、增强型寄存器、数学运算及数字信号处理器的设计。多路选择器型逻辑单元通过多路数据选择数学运算及数字信号处理器的设计。多路选择器型逻辑单元通过多路数据选择器实现各种逻辑函数。乘积项型逻辑单元由与门阵列

4、、或门和触发器组成,乘器实现各种逻辑函数。乘积项型逻辑单元由与门阵列、或门和触发器组成,乘积项型结构适于实现复杂组合逻辑、状态机设计等。积项型结构适于实现复杂组合逻辑、状态机设计等。2 可编程逻辑器件的分类可编程逻辑器件的分类5按集成度按集成度(PLD)分类分类6n PLD是一种由用户根据需要而自是一种由用户根据需要而自行构造逻辑功能的数字集成电路。目前行构造逻辑功能的数字集成电路。目前主要有两大类型即:主要有两大类型即:n CPLD(Complex PLD)n FPGA (Field Programmable Gate Array)。 7PROM (Programmable Read Onl

5、y Memory)工作原理:)工作原理:1970年,出现了第一个最简单的可编程年,出现了第一个最简单的可编程逻辑器件逻辑器件PROM,最初,最初PROM只是作为计算机存储器使用,用来存储程序和数据。由于只是作为计算机存储器使用,用来存储程序和数据。由于PROM是是与或阵列形式,因此也能够方便地实现多输入多输出组合函数。与或阵列形式,因此也能够方便地实现多输入多输出组合函数。右图给出一个右图给出一个与阵列固定、或阵列可编程与阵列固定、或阵列可编程的的PROM示意图,只说明示意图,只说明PROM的工作的工作原理,不代表原理,不代表PROM的实际电路。的实际电路。图中与阵列是一个全译码的固定阵列,输

6、图中与阵列是一个全译码的固定阵列,输入入3个变量,输出为个变量,输出为2n 个最小项。或阵列个最小项。或阵列由用户编程,可以实现由用户编程,可以实现3输出的函数。每输出的函数。每一个输出可根据需要任意选择一些最小项一个输出可根据需要任意选择一些最小项相或,在输出端产生若干个最小项之和的相或,在输出端产生若干个最小项之和的组合函数。组合函数。8PLA (Programmable Logic Array)工作原理:)工作原理:PROM的进一步演化产生了与的进一步演化产生了与/或阵列均可编或阵列均可编程的可编程阵列逻辑程的可编程阵列逻辑PLA,1975年年PLA首次投入使用。首次投入使用。PLA与与

7、PROM相比,提高了芯片利用率,相比,提高了芯片利用率,缩小了系统体积。由于信号通过可编程连线所需时间比缩小了系统体积。由于信号通过可编程连线所需时间比PROM固定与阵列要长,因此器件工作固定与阵列要长,因此器件工作速度不够高。目前,速度不够高。目前,PLA已不常使用。已不常使用。PLA结构如图所示,与结构如图所示,与/或阵列均可编程。或阵列均可编程。与阵列可编程:采用部分译码方式,通过与阵列可编程:采用部分译码方式,通过编程使其产生所需要的乘积项,乘积项不一编程使其产生所需要的乘积项,乘积项不一定是全部定是全部n个输入的组合。个输入的组合。或阵列可编程:选择所需的乘积项相或,或阵列可编程:选

8、择所需的乘积项相或,在输出端产生乘积项之和的函数。在输出端产生乘积项之和的函数。9PAL (Programmable Array Logic)工作原理:)工作原理:20世纪世纪70年代末期,出现了与阵列可编程,或年代末期,出现了与阵列可编程,或阵列固定的阵列固定的PAL器件,这种结构不仅能实现多数逻辑功能,而且比器件,这种结构不仅能实现多数逻辑功能,而且比PLA速度快。速度快。 GAL (Generic Array Logic)工作原理:)工作原理: 1985年,年,Lattice公司设计的通用阵列逻辑公司设计的通用阵列逻辑GAL器件以器件以及随后出现的可擦除可编程逻辑器件及随后出现的可擦除可

9、编程逻辑器件EPLD(Erasable Programmable Logic Device)等都具有与)等都具有与PAL相似的结构。相似的结构。PAL结构:与阵列可编程或结构:与阵列可编程或阵列固定阵列固定10CPLD(Complex Programmable Logic Device)工作原理工作原理:1984年,年,Altear公司发明了基于公司发明了基于CMOS和和EPROM技术组合的技术组合的CPLD。CPLD总体结构:由简单可编程总体结构:由简单可编程逻辑单元块(逻辑单元块(SPLD块)、公共块)、公共可编程互连矩阵构成,互连矩可编程互连矩阵构成,互连矩阵实现各逻辑单元块之间的连阵实

10、现各逻辑单元块之间的连接。接。互连矩阵中的可编程开关可以互连矩阵中的可编程开关可以是是EPROM、E2PROM、Flash ROM或或SRAM,这取决于选择,这取决于选择的的CPLD制造商和器件系列。制造商和器件系列。11FPGA框架结构由三部分组成:框架结构由三部分组成:可编程输入可编程输入/输出模块输出模块I/OB (I/O Block)可配置逻辑模块可配置逻辑模块CLB (Configurable Logic Block)可编程内部连线可编程内部连线PI (Programmable Interconnect) I/OB:位于芯片内部四周,主要由逻辑门、位于芯片内部四周,主要由逻辑门、触发

11、器和控制单元组成。在内部逻辑阵列与外触发器和控制单元组成。在内部逻辑阵列与外部芯片封装引脚之间提供一个可编程接口。部芯片封装引脚之间提供一个可编程接口。CLB:是是FPGA的核心阵列,用于构造用户的核心阵列,用于构造用户指定的逻辑功能,不同生产厂商的指定的逻辑功能,不同生产厂商的FPGA器件器件其不同之处主要在核心阵列。每个其不同之处主要在核心阵列。每个CLB主要由主要由查找表查找表LUT(Look Up Table)、触发器、数据)、触发器、数据选择器和控制单元组成。选择器和控制单元组成。PI:位于位于CLB之间,用于传递信息。编程后之间,用于传递信息。编程后形成连线网络,提供形成连线网络,

12、提供CLB之间、之间、CLB与与I/OB之之间的连线。间的连线。FPGA基于基于SRAM工艺工艺 123、ASIC与FPGA,CPLD之间的关系: 专用集成电路专用集成电路ASIC(Application Specific Integrated Circuit),相对于标准集成电路或通用集成电路而言,是一种为用户专门),相对于标准集成电路或通用集成电路而言,是一种为用户专门设计和制造的专用集成电路,有全定制、门阵列和标准单元设计和制造的专用集成电路,有全定制、门阵列和标准单元ASIC之分。之分。 相对于可编程器件来说相对于可编程器件来说ASIC成本低,但通用性差,一般不具有现场或在成本低,但通

13、用性差,一般不具有现场或在线编程能力;线编程能力; 开发开发ASIC是通过是通过FPGA/CPLD来进行初期的设计和验证。来进行初期的设计和验证。 FPGA/CPLD具有高度的灵活性,支出在线编程和现场可编程能力,在具有高度的灵活性,支出在线编程和现场可编程能力,在无需更改整体硬件电路结构的情况下就可以修改电路系统;一旦产品设计成熟,硬无需更改整体硬件电路结构的情况下就可以修改电路系统;一旦产品设计成熟,硬件测试成功,即可流片量产,成为件测试成功,即可流片量产,成为ASIC。 134、FPGA器件选择器件选择 FPGA器件种类多,选择一款性价比合理的器件种类多,选择一款性价比合理的FPGA芯片

14、,涉及多个方面。芯片,涉及多个方面。由于由于FPGA器件发展日新月异,更多更新的器件应查阅各公司提供的器件数据手册。器件发展日新月异,更多更新的器件应查阅各公司提供的器件数据手册。 设计系统的要求决定设计系统的要求决定FPGA的选用:的选用:系统将根据设计方案对器件提出如下基本要系统将根据设计方案对器件提出如下基本要求:器件容量、工作速度、工作电压、引脚数量、编程方式以及器件成本等。有些系求:器件容量、工作速度、工作电压、引脚数量、编程方式以及器件成本等。有些系统还会提出一些特殊的要求,如希望统还会提出一些特殊的要求,如希望FPGA器件内部含有存储器块、器件内部含有存储器块、DSP块、锁相环等

15、。块、锁相环等。 以以Altear公司常用公司常用FPGA器件性能为例:器件性能为例:该公司提供的该公司提供的FPGA有适用于低成本、有适用于低成本、大批量设计的大批量设计的ACEX1K、Cyclone等系列产品;也有适用于高端设计的等系列产品;也有适用于高端设计的APEX20K、Stratix等系列产品。这些器件的逻辑结构、配置方式、资源等方面有所不同。等系列产品。这些器件的逻辑结构、配置方式、资源等方面有所不同。14器件序列器件序列逻辑单元结构逻辑单元结构互连结构互连结构配置方式配置方式用户用户I/O引引脚脚典型可用门典型可用门FLEX6000查找表查找表快速互联通道快速互联通道SRAM7

16、12181.6万万2.4万万FLEX8000查找表查找表快速互联通道快速互联通道SRAM6820825001.6万万FLEX10K查找表查找表快速互联通道快速互联通道SRAM594701万万25万万ACEX1K查找表查找表快速互联通道快速互联通道SRAM663331万万10万万APEX20K查找表查找表&乘积项乘积项高级快速互联通道高级快速互联通道SRAM1288083万万150万万APEX20KC查找表查找表&乘积项乘积项高级快速互联通道高级快速互联通道SRAM25078010万万150万万APEXII查找表查找表&乘积项乘积项高级快速互联通道高级快速互联通道SRAM

17、492114060万万400万万Stratix 查找表查找表&乘积项乘积项高级快速互联通道高级快速互联通道SRAM426132840万万280万万Cyclone查找表查找表&乘积项乘积项高级快速互联通道高级快速互联通道SRAM10430110万万80万万Mercury查找表查找表&高速差分收发高速差分收发高级快速互联通道高级快速互联通道SRAM30348612万万35万万Excalibur查找表查找表&RISC处理器处理器高级快速互联通道高级快速互联通道SRAM17852110万万100万万Altear公司主要公司主要PLD器件性能对照器件性能对照 155、FP

18、GA器件编程器件编程 FPGA器件的编程或称配置:器件的编程或称配置:指的是通过一根编程电缆将计算机与指的是通过一根编程电缆将计算机与FPGA器件连接在一起,再器件连接在一起,再执行执行FPGA开发工具提供的器件编程命令,将编程数据文件下载到开发工具提供的器件编程命令,将编程数据文件下载到FPGA器件的过程。每个器件的过程。每个FPGA厂商都有自己特定的术语、技术和协议,厂商都有自己特定的术语、技术和协议,FPGA编程细节不完全一样。编程细节不完全一样。以以Altera公司的公司的FPGA器件编程为例:器件编程为例:根据编程电缆与计算机连接方式的不同分为串行、并行、根据编程电缆与计算机连接方式

19、的不同分为串行、并行、USB、主动、被动等配置模式。串行配置模式用、主动、被动等配置模式。串行配置模式用1条数据线,并行配置模式用条数据线,并行配置模式用8条数据线;主条数据线;主动模式由器件引导配置过程,被动模式由计算机或其它控制器控制配置过程。动模式由器件引导配置过程,被动模式由计算机或其它控制器控制配置过程。FPGA器件配置方式控制字设置器件编程方式有以下器件配置方式控制字设置器件编程方式有以下6种:种:(1)AS(Active Serial)方式(主动串行方式)方式(主动串行方式)(2)PS(Passive Serial)方式(被动串行方式)方式(被动串行方式)(3)PPS(Passi

20、ve parallel synchronous)方式(被动并行同步方式)方式(被动并行同步方式)(4)PPA(Passive parallel asynchronous)方式(被动并行异步方式)方式(被动并行异步方式)(5)JTAG(Joint Test Action Group)方式)方式(6)USB方式方式16Altera提供常用的编程连接电缆有提供常用的编程连接电缆有4种:种:(1)ByteBlaster配置电缆配置电缆(2)ByteBlasterMV配置电缆配置电缆(3)MasterBlaster/USB配置电缆配置电缆(4)BitBlaster配置电缆配置电缆串口连接时编程电缆选择:

21、串口连接时编程电缆选择:可以选择可以选择BitBlaster或或MasterBlaster配置电缆;配置电缆;并口连接时编程电缆选择:并口连接时编程电缆选择:可以选择可以选择ByteBlaster或或ByteBlasterMV配置电缆;配置电缆;USB连接时编程电缆选择:连接时编程电缆选择:选择选择MasterBlaster配置电缆。配置电缆。17Altera的的FPGA芯片常用配置引脚及其功能说明芯片常用配置引脚及其功能说明配置引脚名配置引脚名称称功能说明功能说明NCONFIG配置控制输入,上升沿时启动配置过程,低电平时器件复位。配置控制输入,上升沿时启动配置过程,低电平时器件复位。CONF

22、_DONE状态输出,配置期间为低电平,配置结束后,为高电平。状状态输出,配置期间为低电平,配置结束后,为高电平。状态输入,高电平引导器件初始化。态输入,高电平引导器件初始化。DCLK为外部数据提供的时钟输入。为外部数据提供的时钟输入。NSTATUS状态输出,加电后为低电平,状态输出,加电后为低电平,100ms后为高电平,配置出错后为高电平,配置出错时,器件将其拉为低电平。时,器件将其拉为低电平。DATA7.0一字节配置数据输入端。一字节配置数据输入端。DATA0一位配置数据输入端。一位配置数据输入端。18Altera的的FPGA芯片常用配置文件及其说明芯片常用配置文件及其说明文件类型文件类型文

23、件扩展文件扩展名名文件格文件格式式文件使用文件使用SRAM目标文目标文件件.sof二进制二进制SRAM型器件编程文件,可转换成其型器件编程文件,可转换成其它文件格式,通过它文件格式,通过ByteBlaster下载下载电缆下载到器件中。电缆下载到器件中。编程目标文件编程目标文件.pof二进制二进制MAX型器件的编程文件。型器件的编程文件。串行比特流文串行比特流文件件.sbf二进制二进制FLEX型器件型器件PS方式下的配置文件,方式下的配置文件,通过通过BitBlaster串行下载电缆下载到串行下载电缆下载到器件中。器件中。十六进制文件十六进制文件.hexASCII码码使用第三方编程硬件对并行使用

24、第三方编程硬件对并行EPROM编程的数据文件。编程的数据文件。二进制格式文二进制格式文件件.rbf二进制二进制FLEX型器件的配置文件,存储格式型器件的配置文件,存储格式为低位在前,可用计算机以为低位在前,可用计算机以PS或或PSA方式下载。方式下载。列表文件列表文件.ttfASCII码码FLEX型器件的配置文件,以逗号分型器件的配置文件,以逗号分割,以割,以PS、PPA、PPS方式下载。方式下载。19ByteBlasterMV配置:配置:下载电缆通过下载电缆通过PC机并口将编程数据配置到机并口将编程数据配置到FPGA中,与中,与PC机并机并口相连的是口相连的是25针插头,与针插头,与PCB板

25、相连的是板相连的是10针插头。提供针插头。提供PS方式和方式和JTAG方式两种下方式两种下载方式,载方式,PS方式用于方式用于Cyclone、APEX、APEX20K、ACEXlK、Mercury、Excalibur、FLEXl0K、FLEX8000和和FLEX6000等器件的配置;等器件的配置;JTAG方式用于编程方式用于编程或配置含有或配置含有JTAG接口的芯片。接口的芯片。ByteBlasterMV配置配置2025针插头连接,在针插头连接,在PS方式下和在方式下和在JTAG方式下的引脚信号名称不同。方式下的引脚信号名称不同。引脚引脚PS模式下的信号名称模式下的信号名称JTAG模式下的信号

26、名称模式下的信号名称2DCLKTCK3nCONFIGTMS8DATA0TDl11CONF_DONETDO13nSTATUS15VCCVCC1825GNDGND2110针插头连接,对应针插头连接,对应PS方式和方式和JTAG方式的引脚信号名称有所不同。方式的引脚信号名称有所不同。引脚引脚PS模式模式JTAG 模式模式信号名信号名功能描述功能描述信号名信号名功能描述功能描述1DCLK时钟时钟TCK时钟时钟2GND信号地信号地GND信号地信号地3CONF_DONE配置控制配置控制TDO器件输出数据器件输出数据4VCC电源电源VCC电源电源5nCONFIG配置控制配置控制TMSJTAG状态控制状态控制

27、6-NC(引脚悬空)(引脚悬空)-NC7nSTATUS配置的状态配置的状态-NC8-NC-NC9DATA0配置到器件的数据配置到器件的数据TDI配置到器件的数据配置到器件的数据10GND信号地信号地GND信号地信号地22ByteBlasterMV下载电缆中的数据转换电路:下载电缆中的数据转换电路:图中标示(图中标示(1)串联电阻的阻值均为)串联电阻的阻值均为100,标示(,标示(2)上拉电阻的阻值均为)上拉电阻的阻值均为2.2k。23被动串行被动串行PS配置方式:配置方式:配置数据通过下载电缆串行地送到配置数据通过下载电缆串行地送到PLD器件,配置数据的同步器件,配置数据的同步时钟由数据源提供

28、。时钟由数据源提供。PS方式下可以对单个或多个方式下可以对单个或多个FPGA器件进行配置。这里选择器件进行配置。这里选择FLEX10K器件的连接为例,单个器件的连接为例,单个FPGA器件与下载电缆的连接如图所示,器件配置文器件与下载电缆的连接如图所示,器件配置文件为件为SRAM目标文件(目标文件(.sof),该文件是),该文件是QuartusII编译时自动产生的,如果编译时自动产生的,如果DATA0引引脚在用户状态中被占用,在配置过程中该引脚应与用户电路隔离。脚在用户状态中被占用,在配置过程中该引脚应与用户电路隔离。24JTAG配置方式:配置方式:通过通过ByteBlasterMV电缆以及电缆

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

30、G两种下载方式。两种下载方式。MasterBlaster电电缆的一端与计算机串口或缆的一端与计算机串口或USB接口相连,另一端与电路板的标准接口相连,另一端与电路板的标准10针插座相连。编程针插座相连。编程数据从串口或数据从串口或USB口通过电缆下载到电路板上的口通过电缆下载到电路板上的FPGA中。中。SignalTap宏功能:宏功能:利用利用MasterBlaster配置电缆不仅可以将设计项目的编程数据下载配置电缆不仅可以将设计项目的编程数据下载到目标器件中,而且还可通过到目标器件中,而且还可通过SignalTap宏功能对特定器件进行在线调试。宏功能对特定器件进行在线调试。 SignalTa

31、p宏功能是一种嵌入式逻辑分析仪,能够在器件特定的触发点捕获数据并保存到器件内宏功能是一种嵌入式逻辑分析仪,能够在器件特定的触发点捕获数据并保存到器件内部的嵌入式系统块,数据通过与部的嵌入式系统块,数据通过与JTAG接口相连的接口相连的MasterBlaster电缆上传到电缆上传到Quartus波形编辑器中显示,对波形进行分析。波形编辑器中显示,对波形进行分析。26具有标准串行电缆的具有标准串行电缆的9针针D型插头连接器与型插头连接器与RS-232端端口相连,连接信号及说明如表所示。口相连,连接信号及说明如表所示。引引 脚脚信号名称信号名称信号说明信号说明2RX接收数据接收数据3TX发送数据发送

32、数据4DTR数据终端准备好数据终端准备好5GND信号地信号地6DSR数据设备准备好数据设备准备好7RTS要求发送要求发送8CTS清除发送清除发送27 MasterBlasterl0针插头的引脚信号名称针插头的引脚信号名称引脚引脚PS方式下的信号名称方式下的信号名称JTAG方式下的信号名称方式下的信号名称信号名信号名描述描述信号名信号名描述描述lDCLK时钟时钟TCK时钟时钟2GND信号地信号地GND信号地信号地3CONF-DONE配置控制配置控制TDO器件输出数据器件输出数据4VCC电源电源VCC电源电源5nCONFIG配置控制配置控制TMSJTAG状态机控制状态机控制6VIOMasterBl

33、aster输出驱动器参考电压输出驱动器参考电压VIOMasterBlaster输出驱动器参考电压输出驱动器参考电压7nSTATUS配置的状态配置的状态NC8NC(引脚悬空引脚悬空)NC9DATA0配置到器件的数据配置到器件的数据TDI配置到器件的数据配置到器件的数据10GND信号地信号地GND信号地信号地28MasterBlaster电缆供电方式:电缆供电方式:有多种方式,可以采用电路板提有多种方式,可以采用电路板提供的供的5.0V或或3.3 V供电;也可以由直流电源供电;还可以采用供电;也可以由直流电源供电;还可以采用USB电缆的电缆的5.0V供电。供电。MasterBlaster电缆供电优

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

35、 ByteBlasterMV电缆和电缆和MasterBlaster电缆可对单个和多个含有电缆可对单个和多个含有JTAG接口的芯片,如接口的芯片,如APEX、APEX20K、Mercury、ACEXlK和和FLEX10K等系列器等系列器件进行编程或配置。件进行编程或配置。引引 脚脚说说 明明功功 能能TDI测试数据输入测试数据输入测试和编程数据串行输入指示引脚,数据在测试和编程数据串行输入指示引脚,数据在TCK的上升沿输入。的上升沿输入。TDO测试数据输出测试数据输出测试和编程数据串行输出指示引脚,数据在测试和编程数据串行输出指示引脚,数据在TCK的下降沿输出。如的下降沿输出。如果不从器件中输出

36、数据,该引脚为三态。果不从器件中输出数据,该引脚为三态。TMS测试模式选择测试模式选择输入引脚,提供控制信号以确定输入引脚,提供控制信号以确定TAP控制器状态机的转换。状态机控制器状态机的转换。状态机内的转换发生在内的转换发生在TCK的上升沿,的上升沿,TMS必须在必须在TCK的上升沿前建立,的上升沿前建立,TMS在在TCK的上升沿赋值。的上升沿赋值。TCK测试时钟输入测试时钟输入时钟输入到边界扫描测试时钟输入到边界扫描测试BST电路,一些操作发生在电路,一些操作发生在TCK上升沿,上升沿,另一些操作发生在另一些操作发生在TCK下降沿。下降沿。TRST测试复位输入测试复位输入 (可选项可选项)

37、低电平有效异步复位低电平有效异步复位BST电路。根据电路。根据IEEE标准标准11491,TRST引引脚为可选项。如脚为可选项。如FLEXl0K器件的器件的144脚脚TQFP封装没有封装没有TRST引脚,引脚,此时可忽略此时可忽略TRST信号。信号。30MasterBlaster或或ByteBlasterMV的的JTAG配置连接如图所示,配置连接如图所示,其他其他I/O引脚在配置过程中均为三态。引脚在配置过程中均为三态。31FPGA采用采用JTAG配置时,其它常规配置引脚也应该正确连接,表中列举了需要连接的引脚。配置时,其它常规配置引脚也应该正确连接,表中列举了需要连接的引脚。信号信号说说 明

38、明nCE在器件链中所有含在器件链中所有含JTAG接口的接口的PLD芯片,芯片,nCE接地连接,得接地连接,得到低电平的驱动,可用一个电阻下拉或由一些控制电路驱动。到低电平的驱动,可用一个电阻下拉或由一些控制电路驱动。nSTATUS经过一个经过一个1k或或10k上拉电阻到上拉电阻到VCC。在相同的。在相同的JTAG器件链中器件链中对多器件进行配置时,每个对多器件进行配置时,每个nSTATUS应该单独上拉到应该单独上拉到VCC。CONG_DONE经过一个经过一个1k或或10k上拉电阻到上拉电阻到VCC。在相同的。在相同的JTAG器件链中器件链中对多器件进行配置时,每个对多器件进行配置时,每个CON

39、GDONE应该单独上拉到应该单独上拉到VCC。nCONFIG通过一个上拉电阻到通过一个上拉电阻到VCC,得到高电平驱动,或由一些控制,得到高电平驱动,或由一些控制电路驱动。电路驱动。MSLE0、MSLEl引脚不能悬空,如果仅仅使用引脚不能悬空,如果仅仅使用JTAG配置模式,应一起连到地。配置模式,应一起连到地。在非在非JTAG模式配置时将用到这些引脚。模式配置时将用到这些引脚。DCLK不能悬空,依方便而定,用高电平或低电平驱动。不能悬空,依方便而定,用高电平或低电平驱动。DATA0不能悬空,依照方便而定,用高电平或低电平驱动。不能悬空,依照方便而定,用高电平或低电平驱动。TRST该该JTAG引

40、脚不连接到下载电缆,应该以逻辑高电平驱动引脚不连接到下载电缆,应该以逻辑高电平驱动32课程内容课程内容1. FPGA硬件系统设计2. VHDL有限状态机 课题:串行存储器的读/写控制器3. 基于FPGA的DDS技术 课题:正弦波、三角波、方波发生器 拓展课题:拓展课题:DDS任意信号发生器33 FPGA硬件系统构成FPGA最小系统最小系统外围电路外围电路34FPGAFPGA最小系统构成最小系统构成?配置芯片35EP2C5 典型FPGA最小系统板 36 FPGA与与CPLD的的配置与编程方案配置与编程方案37 CPLD的编程方案的编程方案PCPC机机JTAGJTAG编程端口编程端口CPLDCPL

41、DPCPC机机ispisp编程端口编程端口CPLDCPLD编程适配电路编程适配电路编程适配电路编程适配电路JTAGJTAG编程信号:编程信号:TCKTCK、TDOTDO、TMSTMS、TDITDI38CPLDisp -IN-SYSTEM-PROGRAMMERBALELATTICE 的的isp下载方式下载方式 39ISP功能提高设计和应用的灵活性功能提高设计和应用的灵活性n 减少对器减少对器件的触摸件的触摸和损伤和损伤n 不计较器不计较器件的封装件的封装形式形式n 允许一般的允许一般的存储存储n 样机制造方样机制造方便便n 支持生产和支持生产和测试流程中测试流程中的修改的修改n 允许现场硬允许现

42、场硬件升级件升级n 迅速方便地迅速方便地提升功能提升功能未编程前先焊未编程前先焊接安装接安装系统内编程系统内编程-ISP在系统现场重在系统现场重编程修改编程修改40此接口既可作编此接口既可作编程下载口,也可作程下载口,也可作JTAG接口接口 ALTERA 的 ByteBlaster(MV)下载接口41 FPGA的配置方案的配置方案42FPGA的3种常用的标准下载配置模式1、Passive Serial Mode3、JTAG Mode2、Active Serial Mode43 FPGA配置配置JTAGJTAG配置端口配置端口FPGAFPGAPSPS配置端口配置端口PCPC机机配置适配电路配置适

43、配电路配置器件配置器件或配置电路或配置电路ASAS配置端口配置端口专用专用FLASHFLASH配置器件配置器件44CPLD的的JTAG方式编程方式编程CPLD编程下载连接图编程下载连接图TCK、TDO、TMS、TDI为为CPLD的的JTAG口口对CPLD编程45多多CPLD芯片芯片ISP编程连接方式编程连接方式CPLD的的ISP方式编程方式编程46使用使用PC并行口配置并行口配置FPGAFLEX10K PS模式配置时序模式配置时序 47多多FPGAFPGA芯片配置电路芯片配置电路48 FLEX、ACEX、APEX等系列 FPGA器件配置连线图 注意:1、不要忘了将多片配 置 控制信号nCE 引

44、 脚接地!2、作为PS配置模式, 不要忘了将配置模式 控制信号脚MSEL1和 MSEL0都接地!FLEX、ACEX、APEX系列系列FPGA 配置电路配置电路 FPGA Passive Serial Configuration 被动串行配置模式被动串行配置模式10针标准配置/下载接口通过配置电路后与PC机的并行接口相接对FPGA配置方案方案1:1:PSPS端口直接配置端口直接配置49主系统通用10针标准配置/下载接口目标板10针标准配置接口PIN1OTP配置器件配置器件插座插座50FPGA使用使用EPC配置器件的配置时序配置器件的配置时序 用专用配置器件配置用专用配置器件配置FPGA51OTP

45、配置器件配置器件:EPC1441、EPC1、EPC1213等等 方案方案2:2:PSPS端口端口OTPOTP专用器件配置专用器件配置缺点缺点:1 1、芯片价格高。、芯片价格高。2 2、只能一次编程。、只能一次编程。3 3、可配置的、可配置的FPGAFPGA规模小,不能用于规模小,不能用于SOPCSOPC系统配置。系统配置。4 4、无法用于实时多任务重配置、无法用于实时多任务重配置52选择配置器件生产商 打开通用编程器编程窗打开通用编程器编程窗选择器件类型选择器件型号53器件接插方式器件接插方式进入工程文件夹,选择编程文件选择编程文件双击编程文件后,进入双击编程文件后,进入“File type”

46、窗,选择文件类型为窗,选择文件类型为“POF”:Programming Output File54编程缓冲器中的DAC.POF文件码注意文件芯片型号是否对!打开编程窗口编程窗55开始编程56将编程完毕的配置器件插在相应的电路系统上57 用专用配置器件配置用专用配置器件配置FPGA EPC2配置配置FPGA的电路原理图的电路原理图EPC2可以多次重复编可以多次重复编程,且是程,且是isp方式编程方式编程外部上拉电阻1K X 558 DCLK nCSnINIT_CONF OE DATAPC机FPGAEPC2EPC2配置芯片配置芯片配置电路和JTAG编程端口DCLKCONF_DONEnCONFIGn

47、STATUSDATA0TCKTMSTDOTDITCKTMSTDOTDI配置配置编程编程利用利用FLASH结构的结构的EPC2为为FPGA作配置作配置方案方案3:3:PSPS端口端口E E平方专用器件配置平方专用器件配置缺点缺点:1 1、芯片价格高。、芯片价格高。2 2、可多次编程次数少。、可多次编程次数少。3 3、无法用于实时多任务重配置、无法用于实时多任务重配置59 FPGA的的ispFLASH配置器件配置器件 EPC2/4/8/16使用方法使用方法60EPC2器件EPC2的编程口61方案方案4:4:ASAS端口端口FLASHFLASH专用器件配置专用器件配置PC机Cyclone系列 FPG

48、AEPCSXEPCSX配置芯片配置芯片ByteBlasterII配置电路配置配置编程编程ASAS配配置端置端口口ByteBlaster(MV)ByteBlaster(MV)配置电路配置电路ByteBlasterIIByteBlasterII配置电路配置电路POFPOF硬件购建配硬件购建配置文件置文件NiosNios工作软件工作软件Nios嵌入式系统缺点缺点:1 1、只适合于、只适合于CycloneCyclone系列器件系列器件2 2、无法用于实时多任务重配置、无法用于实时多任务重配置62FPGA普通单片机普通单片机EPROM或串行E平方ROMPS配置端口DCLKCONF_DONEnCONFIG

49、nSTATUSDATA0方案方案5:5:PSPS端口单片机软件方式配置端口单片机软件方式配置单片机I/O端口单片机软件配置方案单片机软件配置方案缺点缺点:1 1、配置过程中易受干扰,可靠性低,不能用于可靠性要求高的领域。、配置过程中易受干扰,可靠性低,不能用于可靠性要求高的领域。2 2、配置速度慢,不能用于反应速度要求高的领域。、配置速度慢,不能用于反应速度要求高的领域。3 3、可配置的、可配置的FPGAFPGA规模小,无法用于大于规模小,无法用于大于10K3010K30乃至乃至SOPCSOPC领域的器件配置。领域的器件配置。4 4、电路面积比较大、电路面积比较大5 5、实验模式不规范、实验模

50、式不规范63单片机产生配置时序、读取EPROM中的配置数据EPROM中放置多个不同功能的配置文件对FPGA进行配置64使用单片机配置使用单片机配置FPGA图图3-54 MCU用用PPS模式配置模式配置FPGA电路电路65单片机使用单片机使用PPS模式配置时序模式配置时序66用用89C52进行配置进行配置67各种规模的FPGAASIC/CPLDASIC/CPLD大容量EPROMPS配置端口DCLKCONF_DONEnCONFIGnSTATUSDATA0方案方案6:6:PSPS端口端口ASIC/CPLDASIC/CPLD硬件高速配置方案硬件高速配置方案I/O端口缺点缺点:1 1、电路面积比较大、电

51、路面积比较大68PC机选择机选择JTAG下载模式下载模式掉电配置选择掉电配置选择PS下载模式下载模式掉电保护配置复位掉电保护配置复位40MHz配置时钟源配置时钟源掉电保护配置器件掉电保护配置器件配置文件配置文件ROM配置成功指示配置成功指示69FPGA的配置和重配置的配置和重配置 (RECONFIGURATION)70PC机FPGA应用电路系统应用电路系统CPU/CPLDCPU/CPLD 大容量大容量ROM/EPROM/ROM/EPROM/FLASHFLASH芯片芯片FPGA应用电路系统应用电路系统CPU/CPLDCPU/CPLD RAM RAM方案1方案21 1、通用编程器、通用编程器2 2

52、、通用仿真器、通用仿真器3 3、虚拟仪表、虚拟仪表 71规范的配置方案规范的配置方案JTAG端口FPGAPS配置端口PC机配置适配电路配置器件或配置电路FPGAPS配置端口PC机配置适配电路配置器件或配置电路不规范的配置方案不规范的配置方案72课题:串行存储器的读/写控制器课题:正弦波、三角波、方波发生器FPGA串行存储器显示器按键控制FPGA显示器D/A转换器按键控制73D/AD/A转换电路转换电路开关量输入电路开关量输入电路显示电路显示电路外围电路构成外围电路构成串行存储器串行存储器电路电路74开关量输入电路开关量输入电路75独立式键盘结构独立式键盘结构76独立式键盘结构独立式键盘结构FP

53、GA/CPLD芯片77显示电路显示电路LED数码管LED点阵LCD液晶模块78abcdefgh a b c d a f b e f g h g e c d(a) 外形图(b) 共阴极(c) 共阳极+VCCabcdefgh七段数码管:共阴极、共阳极七段数码管:共阴极、共阳极 79n在数字逻辑电路中,可用74LS48(共阳)/74LS49(共阴)译码驱动电路来控制LED显示。n在FPGA中,用硬件描述语言设计一个译码驱动器,例如进行一个74LS48的功能设计。 80FPGA实现LED静态显示控制当FPGA有相当多的引脚端资源,如果显示的位数N较少,可以直接使用静态显示方式,即将每一个数码管都分别连接到不同的8个引脚线上,共需要8N条引脚线控制。81FPGA实现LED动态方式显示的控制电路82library IEEE;use IEEE.STD_LOGIC_1164.ALL;use IEEE.STD_LOGIC_ARITH.ALL;use IEEE.STD_LOGIC_UNSIGNED.ALL;entity decoder

温馨提示

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

评论

0/150

提交评论