第3章CPLD与FPGA基础 yy

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第三章CPLD/FPGA基础CPLD/FPGA的主要特点„CPLD/FPGA是一种半定制的ASIC,属LSI或VLSI逻辑器件;其主要特性是:1、采用LSI/VLSI技术制造,高集成度(最高已达千万门级);2、支持各种组合逻辑和时序逻辑电路设计,甚至实现“片上系统”(SOC);3、可编程改变芯片的逻辑功能,芯片可重复使用,具有ISP或ICR特性。(ISP:InSystemProgramming,在系统编程)(ICR:InCircuitReconfigable,在电路重构)4、有很高的逻辑布线能力,可以预测信号延迟,便于使用计算机进行逻辑功能仿真与时序仿真。5、有良好的设计加密功能,便于保护知识产权(IP)。6、有强大的EDA开发工具(软件)支持,与ASIC设计相比,易学易用。7、研制、开发时间较短,费用相对少。8、必须借助CPLD开发系统,才能设计、开发CPLD/FPGA系统。中国矿大信电学院编写:FHSCPLD/FPGA与SPLD„一般认为,复杂可编程逻辑器件CPLD/FPGA单片集成度大于1000门,而简单可编程逻辑器件SPLD(SimpleProgramableLogicDevice)的单片集成度小于1000门。„目前FPGA的单片集成度已超过1千万门,达Intel公司最新奔腾ⅣCPU的集成度。可以在这种高集成度的FPGA芯片上设计CPU/DSP,实现SOPC。„GAL/PAL芯片属于SPLD,但目前它们已较少用。中国矿大信电学院编写:FHS„经过了最近20年的发展,许多IC设计公司都开发出了CPLD/FPGA。„Altera公司的CPLD系列和Xilinx公司的FPGA系列,全球知名度高、应用面广,开发系统成熟,占据了世界PLD市场的较大分额。„全球CPLD/FPGA产品60%以上是由Altera和Xilinx提供的。可以讲Altera和Xilinx共同决定了CPLD技术的发展方向。中国矿大信电学院编写:FHSCPLD/FPGA的叫法„不同的厂家,对自己生产的可编程逻辑器件叫法不尽相同。„PLD(ProgrammableLogicDevice)是可编程逻辑器件的总称。PAL、GAL等是早期的SPLD芯片。„FPGA(FieldProgrammableGateArry,现场可编程门阵列)是Xilinx公司发明的。Xilinx公司把基于查找表技术、SRAM存储工艺的可编程逻辑器件叫FPGA;把基于乘积项技术、E2PROM(或FlashMEM)存储工艺的可编程逻辑器件叫CPLD;„Altera公司把自己生产的可编程逻辑器件都叫作CPLD,即杂PLD(ComplexPLD),但分为MAX系列CPLD(乘积项技术、E2PROM存储工艺)和FLEX/ACEX/APEX系列CPLD(查找表技术、SRAM存储工艺)。„由于FLEX等系列是基于查找表技术、采用SRAM存储工艺的器件,其使用方法和Xilinx的FPGA一样,所以人们也把FLEX/ACEX/APEX系列的CPLD产品叫做FPGA。中国矿大信电学院编写:FHS如何使用CPLD/FPGA?„开发、使用CPLD需要掌握三部分的知识:1、熟悉、了解CPLD/FPGA芯片;2、掌握CPLD/FPGA开发系统(软件);3、能对CPLD/FPGA芯片进行编程配置(加载设计代码)。„由于CPLD/FPGA开发系统已发展得相当完善,用户甚至可以不用详了解CPLD/FPGA的内部结构,就可以用自己熟悉的方法(如原理图入法/HDL语言输入法/波形输入法)来完成要求的CPLD/FPGA设计。„但是若要很好的掌握CPLD/FPGA设计与应用技术,懂得必要的CPLD/FPGA结构组成、特性参数与基本工作原理还是必要的。另能熟练操作、使用一种CPLD/FPGA开发系统、至少掌握一种HDL语也是必要的,这将有助于提高设计的效率和可行性。„目前主要的CPLD/FPGA生产商都提供适合自己产品开发、应用的EDA开发软件。也有许多第三方EDA软件公司提供CPLD/FPGA开发系统,且性能优良。如CANDENCE公司的SPW系统、Altec公司的Active系统。中国矿大信电学院编写:FHSCPLD/FPGA设计流程用户输入开发系统利用计算机进行处理用户测试中国矿大信电学院编写:FHS主要的CPLD/FPGA生产厂商„目前世界上有多家公司生产CPLD/FPGA,主要的CPLD/FPGA生产厂商有:1、Altera公司,主要的CPLD生产厂商2、Xilinx公司,主要的FPGA生产厂商3、Lattice公司,著名的CPLD生产厂商4、ACTEL公司,著名的CPLD生产厂商5、Cypress公司,著名的CPLD生产厂商6、Atemal公司,著名的IC/MCU公司,也设计生产PLD产品.7、Luccent公司,著名的通讯企业,也设计生产PLD产品.中国矿大信电学院编写:FHS国外主要的CPLD/FPGA开发系统有:„Altera:MAX+PlusII、QuartusII„Xilinx:Foundation、ISE、Alliance„Lattice:Synario、ispDesignEXPERT、Vantis„Altec:ActiveCAD„CPRESSWRAP„OrCAD:OrCAD/2000中国矿大信电学院编写:FHSCPLD/FPGA的结构分类„对于CPLD产品,按结构一般可分为:基于乘积项(Product-Term)技术、EEPROM(或FlashMemory)存储工艺的CPLD,和基于查找表(Look-Uptable)技术、SRAM存储工艺的FPGA。„基于EEPROM存储工艺的CPLD集成度相对小一点,多于2万门规模以下的设计,适合实现较复杂的组合逻辑,如编、译码设计。„基于SRAM工艺的FPGA,集成度较高,内部触发器多用于1万门以上的大规模系统设计,适合做复杂的时序逻辑设计,如数字信号处理和各种算法。„已有基于FPGA的SOPC器件问世,并得到广泛关注。中国矿大信电学院编写:FHS基于乘积项(Product-Term)的CPLD结构„采用这种结构的PLD芯片有:Altera的MAX7000/MAX9000/MAX3000系列(E2PROM工艺),Xilinx的XC9500系列(Flash工艺)和Lattice,Cypress的大部分产品(E2PROM/Flash工艺)„这种CPLD的基本结构如下所示:(以MAX7000结构组成为例,其他型号CPLD的结构与此非常相似)。中国矿大信电学院编写:FHSCPLD内部结构(Altera的MAX7000S系列)逻辑阵列块中包含多个宏单元逻辑阵列块(LAB)可编程I/O控制块可编程连线资源中国矿大信电学院编写:FHS逻辑宏单元的基本结构„逻辑宏单元是PLD的基本结构,由它来实现基本的逻辑功能。一般8/16个逻辑宏单元构成一个逻辑阵列块LAB。„上图中的兰色部分就是LAB。„可编程连线PIA负责信号传递,连接所有的逻辑宏单元。„I/O控制块(IOB)负责输入输出引脚的电气特性控制,比如可以设定集电极开路输出,摆率控制,三态输出等。„逻辑宏单元的具体结构见下图:中国矿大信电学院编写:FHS乘积项逻辑阵列乘积项选择矩阵可编程触发器宏单元的内部结构中国矿大信电学院编写:FHS中国矿大信电学院编写:FHS„上图的左侧是乘积项阵列,实际就是一个与阵列,每个交叉点都是一个可编程点。通过“与阵列”产生乘积项(最小项)。后面的或门把按要求产生的乘积项“加”起来,得到需要的输出组合逻辑函数。„图右侧是一个可编程D触发器,它的时钟端和清零输入端都可以编程选择,可以使用专用的全局清零和全局时钟。„图中的异或门用来控制组合逻辑函数的极性。„由图可见,CPLD的宏单元(也可称为逻辑单元LE)与GAL的OLMC结构非常类似。中国矿大信电学院编写:FHS开发系统对MAX7064SLAB的描述中国矿大信电学院编写:FHS可编程的I/O控制块„使引脚能兼容TTL和CMOS多种接口和电压标准;„可将引脚配置为输入、输出、双向、集电极开路和三态等形式;„能提供适当的驱动电流;„降低引脚接口功耗,防止脉冲过冲和减少电源噪声„支持多种接口电压(降低芯片功耗)●1.2~0.5um,5V●0.35um,3.3V●0.25um,internal2.5V,I/O3.3V●0.18um,internal1.8V,I/O2.5Vand3.3V中国矿大信电学院编写:FHS可编程连线阵列PIA„在各个逻辑宏单元之间以及逻辑宏单元与I/O单元之间提供可编程的信号连接网络;„CPLD中一般采用固定长度的线段来进行连接,因此信号传输的延时是固定的,使得信号传输时时间延时能够预测。中国矿大信电学院编写:FHSFPGA的结构与工作原理„FPGA都采用查找表(Look-Up-Table,LUT)来实现逻辑函数。如Altera的FLEX/ACEX/APEX系列器件和Xilinx的多数器件。„FPGA的编程配置元件都是SRAM。„由于SRAM较易制造,且其可重复编程使用的次数几乎无限,所以目前高集成度的可编程逻辑器件几乎都是FPGA。中国矿大信电学院编写:FHSXilinxFPGA基本结构组成图CLB包含1个或2个逻辑单元IOB可编程连线资源(PIR)„XilinxFPGA的内部结构称为LCA(LogicCellArray),由三个基本部分组成:1、可编程逻辑块(CLB)2、可编程输入输出块(IOB)3、可编程连线资源(PIR)„CLB中包含1个或2个逻辑单元(LE)中国矿大信电学院编写:FHSFPGA的基本组成„可编程逻辑块CLB组成了FPGA的核心门阵列,能完成用户指定的逻辑功能;每个CLB中包含1个或2个逻辑单元(LE)。LE主要由一个组合逻辑函数发生器、几个触发器、若干个多路选选择器及控制电路组成。„可编程的输入/输出块IOB位于芯片内部四周,在内部逻辑阵列与外部芯片封装引脚之间提供一个可编程接口,它主要由逻辑门、触发器和控制单元组成。„可编程连线资源PIR位于芯片内部的逻辑块之间,经编程后形成连线网络,用于芯片内部逻辑间的相互连接,并在它们之间传递逻辑信息。中国矿大信电学院编写:FHS什么是查找表(Look-Up-Table,LUT)?▲查找表(LUT)就是一个有N根(一般是4根)地址线的16x1的RAM存储器。▲当用户通过原理图或HDL语言描述了一个4输入的逻辑电路后,CPLD/FPGA开发软件就会按设计要求自动计算逻辑电路的所有可能的结果,并把该结果事先写入这个RAM存储器。这样,当输入变量作为RAM的地址信号输入时,预期的结果(输出逻辑函数)就作为RAM的存储数据输出了。▲利用这种查表的方法实现逻辑函数输出是一种简单、高效的方法。这就是存储器可用作逻辑函数发生器的原理。▲N个输入的逻辑函数,需要2的N次方的容量的SRAM来实现中国矿大信电学院编写:FHS查找表(LUT)的工作原理与组成中国矿大信电学院编写:FHS查找表(LUT)的工作原理与组成中国矿大信电学院编写:FHS查找表结构的FPGA逻辑实现原理以这个电路为例:▲4个输入端(A,B,C,D)经FPGA芯片的管脚进入可编程连线,然后作为地址线连接到LUT。由于LUT中已事先写入了所有可能的逻辑结果,这样通过地址查找,就能够得到预期的逻辑数据输出,这样组合逻辑就实现了。中国矿大信电学院编写:FHS▲该电路利用一个4输入的LUT,能够实现任意4输入的组合逻辑函数输出。▲LUT后面的D触发器用来实现数据寄存。时钟信号CLK由I/O脚输入后进入芯片内部的时钟专用通道,直接连接到触发器的时钟端。触发器的输出与I/O脚相连,把结果输出到芯片管脚。这样PLD就完成了前图所示的电路功能。▲可见:LUT+触发器就能完成任意4输入变量的组合/时序逻辑电路。▲对于一个LUT无法完成的4输入的组合逻辑电路,可通过进位与级连逻辑将多个LUT单元相连,以实现复杂的数字逻辑。中国矿大信电学院编写:FHS查找表工作原理▲N个输入的逻辑函数需要2的N次方的容量的SRAM来实现。▲一个L

1 / 51
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功