




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、可编程逻辑器件基础知识 大学本科电子类专业电子科学与技术电子信息科学与技术电子信息工程通信工程电子类专业就业方向发展方向(1)数字电子线路方向。从事单片机(8位的8051系列、32位的ARM系列等等)、FPGA(CPLD)、数字逻辑电路、微机接口(串口、并口、USB、PCI)的开发,更高的要求会写驱动程序、会写底层应用程序。单片机主要用C语言和汇编语言开发,复杂的要涉及到实时嵌入式操作系统(ucLinux,VxWorks,uC-OS,WindowsCE等等)的开发、移植。大部分搞电子技术的人都是从事这一方向,主要用于工业控制、监控等方面。(2)微电子方向。集成电路的设计和制造分成前端和后端,前
2、端侧重功能设计,FPGA(CPLD)开发也可以算作前端设计,后端侧重于物理版图的实现。(3)通信方向。一个分支是工程设计、施工、调试(基站、机房等)。另一分支是开发,路由器、交换机、软件等,要懂7号信令,各种通信相关协议,开发平台从ARM、DSP到Linux、Unix。(4)射频、微波电路。也就是无线电电子线路。包括天线、微波固态电路等等,属于高频模拟电路。是各种通信系统的核心部分之一。(5)电源。电源属于模拟电路,包括线性电源、开关电源、变压器等。电源是任何电路中必不可少的部分。 还有很多方向,比如多媒体方向, 信号处理。ARM、FPGA和和DSP的区别是什么的区别是什么? ARM(Adva
3、nced RISC Machines)是Acorn计算机有限公司面向低预算市场设计的第一款RISC微处理器。ARM架构基本是32位单片机的行业标准,它提供一系列内核、体系扩展、微处理器和系统芯片方案,四个功能模块可供生产厂商根据不同用户的要求来配置生产。由于所有产品均采用一个通用的软件体系,所以相同的软件可在所有产品中运行。目前ARM在手持设备市场占有90以上的份额,可以有效地缩短应用程序开发与测试的时间,也降低了研发费用。 ARM处理器的三大特点是:耗电少功能强、16位/32位双指令集和合作伙伴众多。 DSP(digital singnal processor)是一种特别适合于进行数字信号处
4、理运算的微处理器,有自己的完整指令系统,其主要应用是实时快速地实现各种数字信号处理算法。DSP采用的是哈佛设计,即数据总线和地址总线分开,使程序和数据分别存储在两个分开的空间,允许取指令和执行指令完全重叠。它不仅具有可编程性,而且其实时运行速度可达每秒数以千万条复杂指令程序,远远超过通用微处理器,是数字化电子世界中日益重要的电脑芯片。它的强大数据处理能力和高运行速度,是最值得称道的两大特色。由于它运算能力很强,速度很快,体积很小,而且采用软件编程具有高度的灵活性,因此为从事各种复杂的应用提供了一条有效途径。与通用微处理器相比,DSP芯片的其他通用功能相对较弱些。 FPGA是英文Field Pr
5、ogrammable Gate Array(现场可编程门阵列)的缩写,它是在PAL、GAL、PLD等可编程器件的基础上进一步发展的 产物,是专用集成电路(ASIC)中集成度最高的一种。FPGA采用了逻辑单元阵列LCA这样一个新概念,内部包括可配置逻辑模块CLB、输出输入模块IOB和内部连线三个部分。用户可对FPGA内部的逻辑模块和I/O模块重新配置,以实现用户的逻辑。它还具有静态可重复编程和动态在系统重构的特性,使得硬件的功能可以像软件一样通过编程来修改FPGA,能完成任何数字器件的功能,上至高性能CPU,下至简单的74电路,都可以用FPGA来实现。使用FPGA来开发数字电路,可以大大缩短设计
6、时间,减少PCB面积,提高系统的可靠性。FPGA的编程无须专用的FPGA 编程器,只须用通用的EPROM、PROM编程器即可。当需要修改FPGA功能时,只需换一片EPROM即可。这样,同一片FPGA,不同的编程数据,可以产生不同的电路功能。因此,FPGA的使用非常灵活。可以说,FPGA芯片是小批量系统提高系统集成度、可靠性的最佳选择之一。区别:区别: ARM具有比较强的事务管理功能,可以用来跑界面以及应用程序等,其优势主要体现在控制方面;ARM是32位的单片机,其内部硬件资源的性能较高,可以加载操作系统成为其主要特点,有了操作系统,就可以像pc机那样多任务实时处理,就是同一时间内能完成多个任务
7、,而且不会互相影响。 DSP主要是用来计算的,比如进行加密解密、调制解调等,优势是强大的数据处理能力和较高的运行速度; FPGA可以用VHDL或verilog HDL来编程,灵活性强,由于能够进行编程、除错、再编程和重复操作,因此可以充分地进行设计开发和验证。当电路有少量改动时,更能显示出FPGA的优势,其现场编程能力可以延长产品在市场上的寿命,而这种能力可以用来进行系统升级或除错。展望:展望: FPGA目前的趋势是有代替ARM及DSP的可能,在FPGA内部置入乘法器和DSP块,就具有高速的DSP处理能力。在FPGA内置入硬核CPU或软核CPU(Xilinx有powerpc硬核的产品,有mic
8、roblaze软核。Altera有NIOS II 软核)就可以成为既有能实现数字逻辑有适应嵌入式开发的综合性器件了。可编程器件的发展历程FPGA(Field Programmable Gate Array),即现场可编程门阵列,它是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。1、1947年12月23日,美国新泽西州贝尔实验室里研制出一种点接触型的锗晶体管。晶体管的问世,是20世纪的一项重大发明,是微电子革命的先声。2、1962年,在美国新泽西州的普林斯顿微电子研究所,一种叫做金属氧化物半导体场效应晶体管诞生了,这就是我们熟称的MOSFET,简称FET。3、70年代,熔丝编程
9、的只读存储器PROM(Programmable Read Only Memory)和可编程逻辑阵列PLA (Programmable Logic Array)的出现,标志着PLD的诞生。 PROM:采用固定的与阵列和可编程的或阵列组成的PLD,只能用于简单组合电路的编程。EPROM、EEPROM4、70年代末,AMD公司推出了可编程阵列逻辑PAL Programmable Array Logic)器件。 PAL与PLA相似,也由与阵列和或阵列组成,但在编程接点上与PAL不同,而与PROM相似,或阵列是固定的,只有与阵列可编程。以上可编程器件,都是乘积项可编程结构,都只解决了组合逻辑电路 的可编
10、程问题,对于时序电路,需要另外加上锁存器 ,触发器 来构成。5、80年代初,Lattice (莱迪思)公司开始研究一种新的乘积项可编程结构PLD。1985年,推出了一种在PAL基础上改进的通用阵列逻辑GAL(Generic Array Logic)器件。GAL器件首次在PLD上采用EEPROM工艺,能够电擦除重复编程,使得修改电路不需更换硬件,可以灵活方便地应用,乃至更新换代。在编程结构上,GAL沿用了PAL或阵列固定与阵列可编程结构,而对PAL的输出I/O结构进行了改进,增加了输出逻辑宏单元OLMC(Output Logic Macro Cell)。6、80年代中期,ALTERA(阿特喇)公
11、司推出了可擦除可编辑逻辑器件EPLD(Erasable PLD)器件,采用EPROM工艺或EEPROM工艺,可用紫外线或电擦除,适用于较大规模的可编程电路。7、1985年,Xilinx(西林克司)公司推出的全球第一款FPGA产品XC2064,FPGA是现场可编程门阵列(Field Programmable Gate Array)的英文缩写,现在已经成了大规模可编程逻辑器件中一大类器件的总称。8、80年代末,Lattice公司提出了在系统可编程(In-System Programmability,ISP)的概念,并推出了一系列具有ISP功能的CPLD器件。CPLD即复杂可编程逻辑器件(Compl
12、ex Programmable Logic Device)的英文缩写。FPGA背景背景以硬件描述语言(Verilog或VHDL)所完成的电路设计,可以经过简单的综合与布局,快速的烧录至 FPGA 上进行测试,是现代 IC设计验证的技术主流。系统设计师可以根据需要通过可编辑的连接把FPGA内部的逻辑块连接起来,就好像一个电路试验板被放在了一个芯片里。工作原理工作原理 FPGA采用了逻辑单元阵列LCA(Logic Cell Array)这样一个概念,内部包括可配置逻辑模块CLB(Configurable Logic Block)、输入输出模块IOB(Input Output Block)和内部连线
13、(Interconnect)三个部分。 现场可编程门阵列(FPGA)是可编程器件,与传统逻辑电路和门阵列(如PAL,GAL及CPLD器件)相比,FPGA具有不同的结构。FPGA利用小型查找表(161RAM)来实现组合逻辑,每个查找表连接到一个D触发器的输入端,触发器再来驱动其他逻辑电路或驱动I/O,由此构成了既可实现组合逻辑功能又可实现时序逻辑功能的基本逻辑单元模块,这些模块间利用金属连线互相连接或连接到I/O模块。FPGA的逻辑是通过向内部静态存储单元加载编程数据来实现的,存储在存储器单元中的值决定了逻辑单元的逻辑功能以及各模块之间或模块与I/O间的联接方式,并最终决定了FPGA所能实现的功
14、能,FPGA允许无限次的编程。基本特点1)采用FPGA设计ASIC电路(专用集成电路),用户不需要投片生产,就能得到合用的芯片。2)FPGA可做其它全定制或半定制ASIC电路的中试样片。3)FPGA内部有丰富的触发器和I/O引脚。4)FPGA是ASIC电路中设计周期最短、开发费用最低、风险最小的器件之一。5)FPGA采用高速CMOS工艺,功耗低,可以与CMOS、TTL电平兼容。加电时,FPGA芯片将EPROM中数据读入片内编程RAM中,配置完成后,FPGA进入工作状态。掉电后,FPGA恢复成白片,内部逻辑关系消失,因此,FPGA能够反复使用能够反复使用。FPGA的编程无须专用的FPGA编程器,
15、只须用通用的EPROM、PROM编程器即可。当需要修改FPGA功能时,只需换一片EPROM即可。SOPC System On a Programmable Chip可编程片上系统。 SOPC是用可编程逻辑技术把整个系统放到一块硅片上,来用于嵌入式系统的研究和电子信息处理。 SOPC是一种特殊的嵌入式系统,它是片上系统(SOC),即由单个芯片完成整个系统的主要逻辑功能。 SOPC设计技术涵盖了嵌入式系统设计技术的全部内容,除了以处理器和实时多任务操作系统(RTOS)为中心的软件设计技术、以PCB和信号完整性分析为基础的高速电路设计技术以外,SOPC还涉及以引起普遍关注的软硬件协同设计技术。常用的
16、FPGA平台应用架构。一种是FPGA+处理器的架构,可以分为基于FPGA+ARM、FPGA+CPU及FPGA+GPU等。FPGA主要做一些接口特别是高速接口的粘合,或者在FPGA内做一些快速算法,通信系统上做一些基带的调制解调、信道编解码等。第二种是基于FPGA+DSP的应用架构,DSP主要是做一些复杂算法,更多的是一些FFT的算法、滤波器、RS卷积等等,FPGA主要做高速数据的采集、缓存以及做一些快速性的算法。第三种是FPNA (Field Programmable Node Arrays),它是由很多不同种的可编程节点构成。FPNA 芯片结合了信号处理器与FPGA 配合设计的灵活性及ASI
17、C 的高性能。FPNA的产生需求主要是一些基站、雷达等处理数据量巨大的场合。FPGA的基本结构 FPGA基本由6个部分组成,分别为可编程输入/输出单元、基本可编辑逻辑单元、嵌入式块RAM、丰富的布线资源、底层嵌入功能单元和内嵌专用硬核等。 1、可编程输入/输出单元 I/O单元是芯片与外界电路的接口部分,完成不同电气特性下对输入/输出信号的驱动与匹配需求。I/O单元被设计为可编程模式,可以适配不同的电气标准与I/O物理特性;可以调整匹配阻抗特性,上下拉电阻;可以调整输出驱动电流的大小等。 2、基本可编程逻辑单元 FPGA一般基于SRAM工艺的,其基本可编辑逻辑单元由查找表(LUT,Look Up
18、 Table)和寄存器(Reigister)组成的。查找表一般为4输入,一般完成纯组合逻辑功能。寄存器结构,可以配置为带同步/异步复位或置位、时钟使能的触发器(FF,Flip Flop),也可以配置成为锁存器(Latch)。FPGA依赖寄存器完成同步时序逻辑设计。例如:Altera 可编程逻辑单元通常被称为LE(Logic Element,逻辑单元),有一个Register加一个LUT构成。Xilinx可编程逻辑单元叫Slice,它是由上下两个部分构成,每个部分都由一个Register加一个LUT组成,被称为LC(Logic Cell,逻辑单元)。3、嵌入式块RAM 目前大多数FPGA都有内嵌
19、的块RAM(Block RAM)。块RAM可被配置为单端口RAM、双端口RAM、内容地址存储器 (CAM)以及FIFO等常用存储结构。 FPGA中其实没有专用的ROM硬件资源,实现ROM的思路是对RAM赋予初值,并保持该初值。RAM是一种根据地址读、写数据的存储单元;而CAM和RAM恰恰相反,它返回的是与端口数据相匹配的内部地址。 4、丰富的布线资源。 布线资源连通FPGA内部所有单元,连线的长度和工艺决定着信号在连线上的驱动能力和传输速度。根据工艺、长度、宽度和分布位置的不同而划分为4类不同的类别。第一类是全局布线资源,用于芯片内部全局时钟和全局复位/置位的布线;第二类是长线资源,用以完成芯
20、片 Bank间的高速信号和第二全局时钟信号的布线;第三类是短线资源,用于完成基本逻辑单元之间的逻辑互连和布线;第四类是分布式的布线资源,用于专有时钟、复位等控制信号线。5、底层嵌入功能单元 内嵌功能模块主要指DLL(Delay Locked Loop)、PLL(Phase Locked Loop)、DSP和CPU等软处理核(SoftCore)。 DLL和PLL具有类似的功能,可以完成时钟高精度、低抖动的倍频和分频,以及占空比调整和移相等功能。Xilinx公司生产的芯片上集成了 DLL,Altera公司的芯片集成了PLL,Lattice公司的新型芯片上同时集成了PLL和DLL。 越来越多的高端F
21、PGA产品将包含DSP或CPU等软处理核,从而FPGA将由传统的硬件设计手段逐步过渡为系统级设计平台。例如Altera的Stratix、Stratix GX、Stratix II 等器件族内部集成了DSP Core,配合通用逻辑资源,还可以实现 ARM.MIPS.NIOS等嵌入式处理器系统;Xilinx的 Virtex II和 Virtex II Pro系列 FPGA内部集成了 Power PC450 的 CPU Core和 MicroBlaze RISC处理器 Core。这种CPU或 DSP比较适合实现 FIR滤波器、编码解码、FFT(快速傅里叶变换)等运算密集型应用。FPGA内部嵌入 CP
22、U或 DSP等处理器,使 FPGA在一定程度上具备了实现软硬件联合系统的能力, FPGA正逐步成为 SPOC (System On Programmalbe Chip) 的高速设计平台。6、内嵌专用硬核 指高端应用的可编程逻辑器件内部嵌入的专用硬核,是相对底层嵌入的软核而言的,指FPGA处理能力强大的硬核(Hard Core),等效于ASIC电路。不是所有FPGA器件都包含硬核。 例如:为了提高FPGA的乘法速度,主流的FPGA 中都集成了专用乘法器;为了适用通信总线与接口标准,很多高端的FPGA内部都集成了串并收发器(SERDES),可以达到数十Gbps的收发速度。 Xilinx公司的高端产
23、品不仅集成了Power PC系列CPU,还内嵌了DSP Core模块,其相应的系统级设计工具是EDK和Platform Studio,并依此提出了片上系统(System on Chip)的概念。可编程输入输出单元(IOB)可配置逻辑块(CLB)嵌入式块RAM(BRAM)FPGA 主要厂商及产品介绍一、FPGA与与CPLD的区别的区别CPLDFPGA组合逻辑的实现方法 乘积项(product-term),查找表(LUT,Look up table) 查找表(LUT, look up table) 编程元素 非易失性(Flash,EEPROM) 易失性(SRAM) 特点 非易失性 :即使切断电源,
24、电路上的数据也不会丢失 立即上电 :上电后立即开始运作 可在单芯片上运作 内建高性能硬宏功能 o PLLo 存储器模块 o DSP 模块 用最先进的技术实现高集成度,高性能 需要外部配置ROM应用范围 偏向于简单的控制通道应用以及组合逻辑 偏向于较复杂且高速的控制通道应用以及数据处理 集成度 小中规模 中大规模 一、XilinxXilinx(赛灵思)是全球领先的可编程逻辑完整解决方案的供应商。Xilinx公司成立于 1984年,Xilinx首创了现场可编程逻辑阵列(FPGA)这一创新性的技术。目前Xilinx满足了全世界对 FPGA产品一半以上的需求。1、开发软件 Foundation: Xi
25、linx公司早期的开发工具,逐步被ISE取代 ISE:Xilinx公司集成开发的工具 嵌入式开发套件(EDK):用于开发集成PowerPC硬核和MicroBlaze软核CPU的工具 System Generator for DSP :配合Matlab,在FPGA中完成数字信号处理的工具 Xilinx IP 核 : Xilinx公司拥有非常完整的IP库FPGA主要生产厂商主要生产厂商2、主要产品 Xilinx的主流FPGA分为两大类,一种侧重低成本应用,容量中等,性能可以满足一般的逻辑设计要求,如Spartan系列;还有一种侧重于高性能应用,容量大,性能能满足各类高端应用,如Virtex系列。
26、在性能可以满足的情况下,优先选择低成本器件。 3、Xilinx公司主流芯片介绍 (1)主流PLD产品 XC9500 Flash工艺PLD,常见型号有XC9536,XC9572,XC95144等。型号后两位表示宏单元数量。(2)、主流FPGA产品 Spartan系列当前主流的芯片包括:Spartan-2,Spartan-2E,Spartan-3, Spartan-3A,Spartan-3E,Spartan-6等种类。1)Spartan-2最高可达20万系统门;2)Spartan-2E最高可达60万系统门;3)Spartan-3最高可达500万门;4)Spartan-3A和Spartan-3E不仅
27、系统门数更大,还增强了大量的内嵌专用乘法器和专用块RAM资源,具备实现复杂数字信号处理和片上可编程系统的能力。5)Spartan-6系列的FPGA是Xilinx公司于2009年推出的新一代的FPGA芯片。 简评:成本低廉,总体性能指标不是很优秀,适合低成本应用场合,是Xilinx未来几年在低端FPGA市场上的主要产品,时下市场上中低容量型号很容易购买到,大容量相对少一些。 Virtex系列是Xilinx的高端产品,Xilinx公司正是凭借Vitex系列产品赢得市场,从而获得FPGA供应商领头羊的地位。 Virtex-II:2002年推出,0.15um工艺,1.5v内核,大规模高端FPGA产品
28、Virtex-II pro: 基于VirtexII的结构,内部集成CPU和高速接口的FPGA产品 Virtex-4:xilinx最新一代高端FPGA产品,采用90nm工艺制造,包含三个子系列:面向逻辑密集的设计:Virtex-4 LX,面向高性能信号处理应用:Virtex-4 SX,面向高速串行连接和嵌入式处理应用:Virtex-4 FX。 Virtex-5:65nm工艺的产品 Virtex-6:最新的高性能FPGA产品,45nm Virtex-7:2011年推出的超高端FPGA产品,工艺均为28nm XC3S2000-5FGG676C 命名规则XC3S是SPARTAN系列器件类型 2000是
29、200万个系统门-5是高性能 FGG676是676引脚FBGA封装 C是商用二 、Altera Altera阿尔特拉公司1983年发明世界上第一款可编程逻辑器件。Altera公司是世界上“可编程芯片系统”(SOPC)解决方案倡导者。1、开发软件、开发软件MAX+PLUSII:最优秀的PLD开发平台之一,适合开发早期的中小规模PLD/FPGA。QuartusII:Altera新一代FPGA/PLD开发软件,适合新器件和大规模FPGA的开发,已经取代MaxplusII。SOPC Builder: 配合QuartusII,可以完成集成CPU的FPGA芯片的开发工作DSP Builder: Quart
30、usII与Matlab的接口,利用IP核在Matlab中快速完成数字信号处理的仿真和最终FPGA实现2、主要产品 MAXII:新一代PLD器件,0.18um falsh工艺,2004年底推出,采用FPGA结构,配置芯片集成在内部,和普通PLD一样上电即可工作。 Altera 的主流FPGA分为两大类,一种侧重低成本应用,容量中等,性能可以满足一般的逻辑设计要求,如Cyclone,CycloneII; 还有一种侧重于高性能应用,容量大,性能能满足各类高端应用,如Startix,StratixII等。3、Altera公司主流芯片介绍(1)主流PLD产品: MAX II:新一代PLD器件,2004年
31、底推出,和普通PLD一样上电即可工作。MAXII采用2.5v或者3.3v内核电压,MAXII G系列采用1.8v内核电压。(2) 、主流FPGA产品 低端 : Cyclone FPGA系列是为了满足您对低功耗、低成本设计的需求。 Cyclone:2003年推出,0.13um工艺,1.5v内核供电,是一种低成本FPGA系列,性价比不错,是一种适合中低端应用的通用FPGA 。Cyclone II:2005年开始推出,90nm工艺,1.2v内核供电,提供了硬件乘法器单元。Cyclone III :2007年推出,采用台积电(TSMC)65nm低功耗(LP)工艺技术制造,以相当于ASIC的价格实现了低
32、功耗。Cyclone IV :2009年推出,60nm工艺,市场上成本最低、功耗最低的FPGA,现在还提供收发器型号产品。 。Cyclone V :2011年推出,28nm工艺,实现了业界最低的系统成本和功耗,其性能水平使得该器件系列成为突出您大批量应用优势的理想选择。为工业、无线、固网、广播和消费类应用提供市场上系统成本最低、功耗最低的FPGA解决方案。 中端:Arria 系列设计用于对成本和功耗敏感的收发器以及嵌入式应用。提供丰富的存储器、逻辑和数字信号处理(DSP)模块资源,结合收发器优异的信号完整性。Arria GX :Altera具有收发器的低成本90 nm FPGA系列。采用速率高
33、达3.125 Gbps的收发器,您可以链接现有模块和器件,支持PCIe、Gbps以太网、Serial RapidIO、串行数字接口(SDI)、XAUI等多种协议。Arria II :适用于对成本敏感的应用。Arria II FPGA基于40-nm全功能FPGA架构,它包括ALM、DSP模块和嵌入式RAM,以及硬核PCI Express (PCIe)知识产权(IP)内核。具有6.375 Gbps收发器、业界功耗最低的FPGA。Arria V :Arria V GZ器件在所有中端FPGA中提供了最大带宽。Arria V SX和ST 围绕双核ARM CortexTM-A9 MPCoreTM处理器的H
34、PS。HPS有丰富的硬核外设、6.5536 Gbps和10.3125低功耗收发器、硬核存储器接口、含有重新设计的自适应逻辑模块(ALM)的低功耗内核体系结构、精度可调DSP模块、分布式新的M10K嵌入式存储器模块,以及分段式时钟合成锁相环(PLL)等。Arria 10:在性能上超越了前一代高端FPGA,而功耗低于前一代中端FPGA,重塑了中端器件。采用了20 nm工艺技术、性能高达28.05 Gbps的高级串行接口技术、全面的低功耗产品。高端 Stratix 系列 : 帮助您以更低的风险和更高的效能尽快推出最先进的高性能产品。 Stratix 和 Stratix GX : Stratix FP
35、GA 系列中最早的型号产品。这引入了 DSP 硬核 IP 模块以及 Altera 应用广泛的 TriMatrix 片内存储器和灵活的 I/O 结构。Stratix II 和 Stratix II GX : 引入了自适应逻辑模块 (ALM) 体系结构,采用了高性能 8 输入分段式查找表 (LUT) 来替代 4 输入 LUT ,这也是 Altera 目前最新的高端 FPGA 所采用的结构。Stratix III :65-nm FPGA。Stratix IV : 40-nm FPGA 中,具有最大的密度、最好的性能和最低的功耗。 Stratix IV FPGA 系列提供增强型 (E) 和带有收发器
36、(GX和GT) 的增强型器件,满足了无线和固网通信、军事、广播等众多市场和应用的需求。 包含了同类最佳的11.3 Gbp收发器。Stratix V :28-nm ,实现了最大带宽和最高系统集成度。器件系列包括兼容背板,芯片至芯片和芯片至模块的14.1-Gbps(GS和GX)以及支持芯片至芯片和芯片至模块的28-G(GT)收发器,950K 逻辑单元(LE),以及3,926个精度可调数字信号处理(DSP)模块。 ALTERA的FPGA命名规则以EP2C35F672C6N为例做一个说明:EP2C:器件系列ALTERA EP典型器件 EPC 组成的EPROM器件EPF FLEX 10K或FLFX 60
37、00系列、FLFX 8000系列EPM MAX5000系列、MAX7000系列、MAX9000系列EPX 快闪逻辑器件35:逻辑单元数,35表示约有35k的逻辑单元;F:表示PCB封装类型, F是FBGA封装,E(EQFP)、Q(PQFP)、U(UBGA)、M(MBGA);672:表示引脚数量C:工作温度 C表示可以工作在0C到85C, I表示可以工作在-40到100C, A表示可以工作在-40C到125C;6:速度等级 6约最大是500Mhz,7约最大是430Mhz,8约最大是400Mhz;N:后缀,N表示无铅,ES工程样片。 三、Lattice 莱迪思(Lattice)半导体公司提供业界最
38、广范围的现场可编程门阵列(FPGA)、可编程逻辑器件(PLD)及其相关软件,包括现场可编程系统芯片(FPSC)、复杂的可编程逻辑器件(CPLD),可编程混合信号产品(ispPAC)和可编程数字互连器件(ispGDX)。Lattice ispLEVER是Lattice FPGA集成开发环境。四、Actel ACTEL公司成立于1985年,位于美国纽约。之前的20多年里,ACTEL一直效力于美国军工和航空领域,并禁止对外出售。国内一些特殊领域的企业都是采用其它途径购买军工级型号。开发平台是Libero五、atmel ATMEL在系统级集成方面所拥有的世界级专业知识和丰富的经验使其产品可以在现有模块
39、的基础上进行开发,保证最小的开发延期和风险。凭借业界最广泛的知识产权(IP)组合,Atmel提供电子系统完整的系统解决方案的厂商。 ATMEL公司是世界上高级半导体产品设计、制造和行销的领先者,产品包括了微处理器、可编程逻辑器件、非易失性存储器、安全芯片、混合信号及RF射频集成电路。Quartus 综合工具介绍Quartus II 是Altera公司的综合性PLD/FPGA开发软件,支持原理图、VHDL、VerilogHDL以及AHDL(Altera Hardware Description Language)等多种设计输入形式,内嵌自有的综合器以及仿真器,可以完成从设计输入到硬件配置的完整P
40、LD设计流程。综合:指将语言、原理图等设计输入翻译成由与、或、非门以及RAM、触发器等基本逻辑单元组成的逻辑连接,并根据目标及要求优化所生成的逻辑,最后输出edf或vqm网表文件供布局布线用。主要是五个模块:1、设计输入Design Entry2、综合Synthesis3、布局布线Fitter4、仿真Simulation5、编程与配置Programming & Configuration原理图/VHDL文本编辑综合FPGA/CPLD适配FPGA/CPLD编程下载编程下载FPGA/CPLD器件和电路系统时序与功能门级仿真1、功能仿真、功能仿真2、时序仿真、时序仿真逻辑综合器逻辑综合器结构
41、综合器结构综合器1、isp方式下载方式下载 2、JTAG方式下载方式下载 3、针对、针对SRAM结构的配置结构的配置 4、OTP器件编程器件编程 功能仿真功能仿真1、 FPGACPLD设计流程设计流程应用应用FPGA/CPLD的的EDA开发流程开发流程:1.1 设计输入设计输入(原理图原理图HDL文本编辑文本编辑)1. 1. 图形输入图形输入 图形输入图形输入 原理图输入原理图输入 状态图输入状态图输入 波形图输入波形图输入2. HDL文本输入文本输入1.1 设计输入设计输入(原理图原理图HDL文本编辑文本编辑) 这种方式与传统的计算机软件这种方式与传统的计算机软件语言编辑语言编辑输入基输入基
42、本一致。就是将使用了某种硬件描述语言本一致。就是将使用了某种硬件描述语言(HDL)(HDL)的的电路设计文本,如电路设计文本,如VHDLVHDL或或VerilogVerilog的源程序,进行的源程序,进行编辑输入。编辑输入。 可以说,应用可以说,应用HDLHDL的文本输入方法克服了上述的文本输入方法克服了上述原理图输入法存在的所有弊端,为原理图输入法存在的所有弊端,为EDAEDA技术的应用技术的应用和发展打开了一个广阔的天地。和发展打开了一个广阔的天地。1.2 综合综合 整个综合过程就是将设计者在整个综合过程就是将设计者在EDAEDA平台上编辑平台上编辑输入输入的的HDLHDL文本、原理图或状
43、态图形描述,依据文本、原理图或状态图形描述,依据给定的硬件结构组件和约束控制条件进行给定的硬件结构组件和约束控制条件进行编译、编译、优化、转换和综合优化、转换和综合,最终获得门级电路甚至更底,最终获得门级电路甚至更底层的电路描述层的电路描述网表文件网表文件。由此可见,综合器工作。由此可见,综合器工作前,必须给定最后实现的硬件结构参数,它的功前,必须给定最后实现的硬件结构参数,它的功能就是将软件描述与给定的硬件结构用某种网表能就是将软件描述与给定的硬件结构用某种网表文件的方式对应起来,成为相应互的映射关系。文件的方式对应起来,成为相应互的映射关系。1.3 适配适配 适配器也称结构综合器,它的功能
44、是将由综合器产生的适配器也称结构综合器,它的功能是将由综合器产生的网表文件配置于指定的目标器件中,使之产生最终的下载文网表文件配置于指定的目标器件中,使之产生最终的下载文件,如件,如JEDECJEDEC、JamJam格式的文件。适配所选定的目标器件格式的文件。适配所选定的目标器件(FPGA/CPLD(FPGA/CPLD芯片芯片) )必须属于原综合器指定的目标器件系列。必须属于原综合器指定的目标器件系列。 逻辑综合通过后必须利用适配器将综合后网表文件针对逻辑综合通过后必须利用适配器将综合后网表文件针对某一具体的目标器件进行逻辑映射操作,其中包括底层器件某一具体的目标器件进行逻辑映射操作,其中包括
45、底层器件配置、逻辑分割、逻辑优化、逻辑布局布线操作。适配完成配置、逻辑分割、逻辑优化、逻辑布局布线操作。适配完成后可以利用适配所产生的仿真文件作精确的时序仿真,同时后可以利用适配所产生的仿真文件作精确的时序仿真,同时产生可用于编程的文件。产生可用于编程的文件。1.4 时序仿真与功能仿真时序仿真与功能仿真时序仿真功能仿真 就是接近真实器件运行特性的仿真,就是接近真实器件运行特性的仿真,仿真文件中己包含了器件硬件特性参数,仿真文件中己包含了器件硬件特性参数,因而,仿真精度高。因而,仿真精度高。 是直接对是直接对VHDL、原理图描述或其他、原理图描述或其他描述形式的逻辑功能进行测试模拟,以了解描述形
46、式的逻辑功能进行测试模拟,以了解其实现的功能是否满足原设计的要求的过程,其实现的功能是否满足原设计的要求的过程,仿真过程不涉及任何具体器件的硬件特性。仿真过程不涉及任何具体器件的硬件特性。1.5 编程下载编程下载 通常,将对通常,将对CPLDCPLD的下载称为的下载称为编程编程(Program)(Program),对,对FPGAFPGA中的中的SRAMSRAM进行直接下载的方式称为进行直接下载的方式称为配置配置(Configure)(Configure),但对于,但对于OTP OTP FPGAFPGA的下载和对的下载和对FPGAFPGA的专用配置的专用配置ROMROM的下载仍称为编程。的下载仍
47、称为编程。 FPGAFPGA与与CPLDCPLD的辨别和分类主要是根据其结构特点和工作原的辨别和分类主要是根据其结构特点和工作原理。通常的分类方法是:理。通常的分类方法是:C 将以乘积项结构方式构成逻辑行为的器件称为将以乘积项结构方式构成逻辑行为的器件称为CPLDCPLD,如,如LatticeLattice的的ispLSIispLSI系列、系列、XilinxXilinx的的XC9500XC9500系列、系列、AlteraAltera的的MAX7000SMAX7000S系列和系列和Lattice(Lattice(原原Vantis)Vantis)的的MachMach系列等。系列等。C 将以查表法结
48、构方式构成逻辑行为的器件称为将以查表法结构方式构成逻辑行为的器件称为FPGAFPGA,如,如XilinxXilinx的的SPARTANSPARTAN系列、系列、AlteraAltera的的FLEX10KFLEX10K或或ACEX1KACEX1K系列等。系列等。1.6 硬件测试硬件测试 最后是将含有载入了设计的最后是将含有载入了设计的FPGAFPGA或或CPLDCPLD的硬件系统进行统一的硬件系统进行统一测试,以便最终验证设计项目在测试,以便最终验证设计项目在目标系统上的实际工作情况,以目标系统上的实际工作情况,以排除错误,改进设计。排除错误,改进设计。设计流程归纳步骤1:建立工作库文件夹步骤2
49、:输入设计项目原理图/VHDL代码步骤3:存盘,注意原理图/文本取名步骤4:将设计项目设置成Project步骤5:选择目标器件步骤6:启动编译步骤7:建立仿真波形文件步骤8:仿真测试和波形分析步骤9:引锁定并编译步骤10:编程下载/配置步骤11:硬件测试n 减少对器减少对器件的触摸件的触摸和损伤和损伤n 不计较器不计较器件的封装件的封装形式形式n 允许一般的允许一般的存储存储n 样机制造方样机制造方便便n 支持生产和支持生产和测试流程中测试流程中的修改的修改n 允许现场硬允许现场硬件升级件升级n 迅速方便地迅速方便地提升功能提升功能未编程前先焊未编程前先焊接安装接安装系统内编程系统内编程-IS
50、P在系统现场重在系统现场重编程修改编程修改2、PLD/FPGA的编程下载:此接口既可作编此接口既可作编程下载口,也可作程下载口,也可作JTAG接口接口 ALTERA 的 ByteBlaster(MV)下载接口CPLD的的JTAG方式编程方式编程图图3-47 CPLD编程下载连接图编程下载连接图TCK、TDO、TMS、TDI为为CPLD的的JTAG口口对CPLD编程FPGA的的JTAG/AS方式编程方式编程PLD/FPGA的器件结构请参见网页“PLD/FPGA基本原理”主系统通用10针标准配置/下载接口目标板10针标准配置接口PIN1OTP配置器件配置器件插座插座FPGA配置方式配置(confi
51、guration)是对FPGA的内容进行编程的过程。每次上电后都需要进行配置是基于SRAM工艺FPGA的一个特点,也可以说是一个缺点。FPGA配置过程如下:FPGA配置配置器件器件外部电路将配置数据载入片内配置RAM中外部电路FPGA配置完成配置配置RAM配置配置RAM中的中的配置数据配置数据:用于控制FPGA内部可编程的内部逻辑、内部寄存器和I/O寄存器初始化,I/O驱动器使能等。之后FPGA进入用户模式。一、 FPGA配置方式根据FPGA在配置电路中的角色,可以将配置方式分为三类:1.FPGA主动串行(AS-Active Serial)方式 2. JTAG方式3. FPGA被动(Passi
52、ve)方式EPCS系列系列配置数据FPGA主动串行主动串行(AS)方式方式1下载工具下载工具或或智能主机智能主机JTAG方式方式2EPC系列系列FPGA仅输出响应信号FPGAFPGA被动被动(Passive)方式方式3二、主动串行配置主动串行配置方式(AS)是将配置数据事先存储在串行配置器件EPCS中,然后在系统上电时Cyclone及Cyclone II FPGA通过串行接口读取配置数据(如果是压缩数据,还会进行解压缩处理)对内部的SRAM单元进行配置。因为上述配置过程中FPGA控制配置接口,因此通常称为主动配置方式。nCEnSTATUSnCONFIGCONFIG_DONEDATA0DCLKn
53、CSOASDOnCEOMSEL0MSEL1Cylone(Cyclone II) FPGAnCSDATAASDIDCLKEPCS串行配置器件10k10k10kVCCVCCVCCN.C.12345678910AS接口10kVCClow or high说明:说明:1.因为FPGA上的nSTATUS、CONFIG_DONE管脚都是开漏结构,所以都要接上拉电阻。FPGA的片选脚nCE必须接地。主动串行配置的电路原理图下载配置文件到下载配置文件到EPCSEPCS利用ByteBlasterII(或USB_Blaster)、AS接口、.pof配置文件以及QuartusII的Programmer可直接对EPCS
54、进行编程,这种方式速度快,但需要专门的AS接口。下载过程如下:编译前指定编译前指定AS方式和方式和EPCS类型类型EPCS的AS编程三、JTAG配置通过JTAG接口,利用Quartus II软件可以直接对FPGA进行单独的硬件重新配置。Quartus II软件在编译时会自动生成用于JTAG配置的.sof文件。如果同时使用AS方式和JTAG方式来配置FPGA,JTAG配置方式拥有最高的优先级,此时AS方式将停止,而执行JTAG方式配置。JTAG配置的电路原理图12345678910JTAG接口10k10kR1R2DATA0nCONFIGnCEMSEL0MSEL1DCLKCONF_DONEnSTA
55、TUSTCKTMSTDOTDICyclone(Cyclone II) FPGAVCCVIO(3)N.C.N.C.VCCVCCVCCVCC(1)(2)(2)(2)(2)(2)R3Cyclone: R1-R3 10KCyclone II: R1-R3 1K管脚描述功 能TDI测试数据输入指令、测试以及编程数据的串行输入。数据在TCK的上升沿移入。如果电路板上的JTAG不需要,可以将该管脚连接到VCC。TDO测试数据输出指令、测试以及编程数据的串行输出。数据在TCK的下降沿移出。在没有数据移出时,该管脚是高阻态。如果电路板上的JTAG不需要,可以不连接该管脚。TMS测试模式选择控制信号输入管脚,控制
56、信号决定测试访问端口控制状态的转换。状态的转换出现在TCK的上升沿。因此,TMS必须在TCK上升沿之前建立。如果电路板上的JTAG不需要,可以将该管脚连接到VCC。TCK测试时钟输入边界扫描测试(BST)电路的时钟输入。一些操作发生在其上升沿,一些发生在下降沿。如果电路板上的JTAG不需要,可以将该管脚连接到GND。 利用Quartus II软件和USB Blaster、ByteBlaster II等下载电缆可下载配置数据到FPGA。Quartus II软件可以验证JTAG配置是否成功。JTAG配置通过下载电缆使用SOF、Jam或者JBC文件直接对FPGA进行配置,这种配置方式只能用于调试阶段
57、,因为,掉电后FPGA中的配置数据将丢失。 JTAG各引脚功能描述各引脚功能描述1、配置的软件设置在Quartus II软件中,可以设置配置方式和配置芯片。配置选项卡配置方式配置方式(AS、PS)选择选择配置模式配置模式(本地或远程本地或远程)选择选择配置器件配置器件(EPCS系列、系列、EPC系列系列)压缩配置选项卡2、下载配置文件到FPGA要使用JTAG下载配置数据到FPGA,首先要生成可用于J TA G 下 载 的 配 置 数 据 文 件 , 这 些 配 置 数 据 文 件 包括:.sof、.Jam以及.JBC。一般来说,JTAG方式利用SOF文件即可,JAM和JBC可以不用。利用JAT
58、G接口下载配置数据到FPGA的过程,如下:JTAG下载配置数据过程JTAG下载配置数据过程3、硬件描述语言概述Verilog HDL和和VHDL的比较的比较 这两种语言都是用于数字电子系统设计的硬件描述语言,而且都已经是 IEEE 的标准。 VHDL 1987 年成为标准,而 Verilog 是 1995 年才成为标准的。这个是因为 VHDL 是美国军方组织开发的,而 Verilog 是一个公司的私有财产转化而来的。共同的特点:1、能形式化地抽象表示电路的行为和结构;2、支持逻辑设计中层次与范围地描述;3、可借用高级语言地精巧结构来简化电路行为和结构;具有电路仿真与验证机制以保证设计的正确性;
59、4、支持电路描述由高层到低层的综合转换;5、硬件描述和实现工艺无关;6、便于文档管理;7、易于理解和设计重用不同点Verilog: 1、比较接近寄存器传输级,语法较灵活,比较适合底层逻辑电路的描述; 2、容易掌握,只要有 C 语言的编程基础,通过比较短的时间可以掌握它。 3、Verilog就像C ,比较自由 VHDL: 1、比较接近系统级,语法比较死板,更适合于系统级描述。 2、 VHDL 设计相对要难一点,这个是因为 VHDL 不是很直观,需要有 Ada 编程基础,一般认为至少要半年以上的专业培训才能掌握。 3、VHDL就像PASCAL,比较严谨 目前在美国,高层次数字系统设计领域中,应用
60、Verilog 和 VHDL 的比率是 80 和 20 ;日本和台湾和美国差不多;而在欧洲 VHDL 发展的比较好。在中国很多集成电路设计公司都采用 Verilog ,但 VHDL 也有一定的市场。Verilog HDL语言写法module muxtwo(out,a,b,sel)模块名 input a,b,sel;/输入信号声明 output out; /输出信号声明 reg out;/定义寄存器变量 /功能描述 always(sel or a or b) if(! sel)out=a; else out=b;endmodule VHDL语言写法library ieee;/库use ieee.std_
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论