1、可编程逻辑器件的发展历程及概述可编程逻辑器件的发展历程及概述公布日期:2006-2-116:25:16 未知出处:不详当今社会是数字化的社会,是数字集成电路广泛应用的社会。数字集成电路本身在不断地进行更新换代。它由早期的电子管、晶体管、小中规模集成电路、进展到超大规模集成电路(VLSIC,几万门以上)以及许多具有特定功能的专用集成电路。然而,随着微电子技术的进展,设计与制造集成电路的任务已不完全由半导体厂商来独立承担。系统设计师们更情愿自己设计专用集成电路(ASIC)芯片,而且期望ASIC的设计周期尽可能短,最好是在实验室里就能设计出合适的ASIC芯片,同时赶忙投入实际应用之中,因而显现了现场
2、可编程逻辑器件(FPLD),其中应用最广泛的当属现场可编程门阵列(FPGA)和复杂可编程逻辑器件(CPLD)。 早期的可编程逻辑器件只有可编程只读存贮器(PROM)、紫外线可按除只读存贮器(EPROM)和电可擦除只读存贮器(EEPROM)三种。由于结构的限制,它们只能完成简单的数字逻辑功能。 其后,显现了一类结构上稍复杂的可编程芯片,即可编程逻辑器件(PLD),它能够完成各种数字逻辑功能。典型的PLD由一个“与”门和一个“或”门阵列组成,而任意一个组合逻辑都能够用“与一或”表达式来描述,因此, PLD能以乘积和的形式完成大量的组合逻辑功能。 这一时期的产品要紧有PAL(可编程阵列逻辑)和GAL
3、(通用阵列逻辑)。 PAL由一个可编程的“与”平面和一个固定的“或”平面构成,或门的输出能够通过触发器有选择地被置为寄存状态。 PAL器件是现场可编程的,它的实现工艺有反熔丝技术、EPROM技术和EEPROM技术。还有一类结构更为灵活的逻辑器件是可编程逻辑阵列(PLA),它也由一个“与”平面和一个“或”平面构成,然而这两个平面的连接关系是可编程的。 PLA器件既有现场可编程的,也有掩膜可编程的。 在PAL的基础上,又进展了一种通用阵列逻辑GAL (Generic Array Logic),如GAL16V8,GAL22V10 等。它采纳了EEPROM工艺,实现了电可按除、电可改写,其输出结构是可
4、编程的逻辑宏单元,因而它的设计具有专门强的灵活性,至今仍有许多人使用。 这些早期的PLD器件的一个共同特点是能够实现速度特性较好的逻辑功能,但其过于简单的结构也使它们只能实现规模较小的电路。 为了补偿这一缺陷,20世纪80年代中期。 Altera和Xilinx分别推出了类似于PAL结构的扩展型 CPLD(Complex Programmab1e Logic Dvice)和与标准门阵列类似的FPGA(Field Programmable Gate Array),它们都具有体系结构和逻辑单元灵活、集成度高以及适用范畴宽等特点。 这两种器件兼容了PLD和通用门阵列的优点,可实现较大规模的电路,编程也
5、专门灵活。与门阵列等其它ASIC(Application Specific IC)相比,它们又具有设计开发周期短、设计制造成本低、开发工具先进、标准产品无需测试、质量稳固以及可实时在线检验等优点,因此被广泛应用于产品的原型设计和产品生产(一样在10,000件以下)之中。几乎所有应用门阵列、PLD和中小规模通用数字集成电路的场合均可应用FPGA和CPLD器件。(注:不同厂家的叫法不尽相同,Xilinx把,基于查找表技术,SRAM工艺,要外挂配置用的EEPROM的PLD叫FPGA;把基于乘积项技术,Flash(类似EEPROM工艺)工艺的PLD叫CPLD; Altera 把自己的PLD产品:MAX
6、系列(乘积项技术,EEPROM工艺),FLEX系列(查找表技术,SRAM工艺)都叫作CPLD,即复杂PLD(Complex PLD),由于FLEX系列也是SRAM工艺,基于查找表技术,要外挂配置用的EPROM,用法和Xilinx的FPGA一样,因此专门多人把Altera的FELX系列产品也叫做FPGA.(8寸硅晶片,每一个小方格通过切割,封装后确实是一片芯片) FPGACPLD 概述 FPGA(现场可编程门阵列)与 CPLD(复杂可编程逻辑器件)差不多上可编程逻辑器件,它们是在PAL,GAL等逻辑器件的基础之上进展起来的。同以往的PAL,GAL等相比较,FPGACPLD的规模比较大,它能够替代
7、几十甚至几千块通用IC芯片。如此的FPGACPLD实际上确实是一个子系统部件。这种芯片受到世界范畴内电子工程设计人员的广泛关注和普遍欢迎。通过了十几年的进展,许多公司都开发出了多种可编程逻辑器件。比较典型的确实是Xilinx公司的FPGA器件系列和Altera公司的CPLD器件系列,它们开发较早,占用了较大的PLD市场。通常来说,在欧洲用Xilinx的人多,在日本和亚太地区用ALTERA的人多,在美国则是平分秋色。全球PLD/FPGA产品60%以上是由Altera和Xilinx提供的。能够讲Altera和Xilinx共同决定了PLD技术的进展方向。因此还有许多其它类型器件,如:Lattice,
8、Vantis,Actel,Quicklogic,Lucent等。 (99年Lattice收购了Vantis,成为第三大PLD供应商;同年Xilinx收购了Philips的PLD部门)1998年世界十大PLD公司排名公司销售额(亿美金)市场占有率1Altera5.9630.12Xilinx5.7429.03Vantis2.2011.14Lattice2.1811.05Actel1.397.06Luccent0.854.37Cypress0.442.28Atmel0.422.19Philips0.281.410Quicklogic0.241.2资料来源:99年4月电子产品世界 尽管FPGA,CPL
9、D和其它类型PLD的结构各有其特点和长处,但概括起来,它们是由三大部分组成的,一个二维的逻辑块阵列,构成了PLD器件的逻辑组成核心。输入输出块:连接逻辑块的互连资源。连线资源:由各种长度的连线线段组成,其中也有一些可编程的连接开关,它们用于逻辑块之间、逻辑块与输入输出块之间的连接。 典型的PLD的框图对用户而言,CPLD与FPGA的内部结构稍有不同,但用法一样,因此多数情形下,不加以区分。FPGACPLD芯片差不多上专门的ASIC芯片,它们除了具有ASIC的特点之外,还具有以下几个优点:随着VlSI(Very Large Scale IC,超大规模集成电路)工艺的不断提高单一芯片内部能够容纳上
10、百万个晶体管, FPGACPLD芯片的规模也越来越大,其单片逻辑门数已达到上百万门,它所能实现的功能也越来越强,同时也能够实现系统集成。FPGACPLD芯片在出厂之前都做过百分之百的测试,不需要设计人员承担投片风险和费用,设计人员只需在自己的实验室里就能够通过相关的软硬件环境来完成芯片的最终功能设计。因此, FPGACPLD的资金投入小,节约了许多潜在的花费。用户能够反复地编程、擦除、使用或者在外围电路不动的情形下用不同软件就可实现不同的功能。因此,用FPGAPLD 试制样片,能以最快的速度占据市场。 FPGACPLD软件包中有各种输入工具和仿真工具,及版图设计工具和编程器等全线产品,电路设计
11、人员在专门短的时刻内就可完成电路的输入、编译、优化、仿真,直至最后芯片的制作。 当电路有少量改动时,更能显示出FPGACPLD的优势。电路设计人员使用FPGACPLD进行电路设计时,不需要具备专门的IC(集成电路)深层次的知识, FPGACPLD软件易学易用,能够使设计人员更能集中精力进行电路设计,快速将产品推向市场。 PLD/FPGA结构与原理初步(一)公布日期:2006-2-116:21:35 未知出处:不详一.基于乘积项(Product-Term)的PLD结构 采纳这种结构的PLD芯片有:Altera的MAX7000,MAX3000系列(EEPROM工艺),Xilinx的XC9500系列
12、(Flash工艺)和Lattice,Cypress的大部分产品(EEPROM工艺)我们先看一下这种PLD的总体结构(以MAX7000为例,其他型号的结构与此都专门相似):图1 基于乘积项的PLD内部结构这种PLD可分为三块结构:宏单元(Marocell),可编程连线(PIA)和I/O操纵块。 宏单元是PLD的差不多结构,由它来实现差不多的逻辑功能。图1中兰色部分是多个宏单元的集合(因为宏单元较多,没有一一画出)。可编程连线负责信号传递,连接所有的宏单元。I/O操纵块负责输入输出的电气特性操纵,比如能够设定集电极开路输出,摆率操纵,三态输出等。 图1 左上的INPUT/GCLK1,INPUT/G
13、CLRn,INPUT/OE1,INPUT/OE2 是全局时钟,清零和输出使能信号,这几个信号有专用连线与PLD中每个宏单元相连,信号到每个宏单元的延时相同同时延时最短。宏单元的具体结构见下图:图2 宏单元结构左侧是乘积项阵列,实际确实是一个与或阵列,每一个交叉点差不多上一个可编程熔丝,假如导通确实是实现“与”逻辑。后面的乘积项选择矩阵是一个“或”阵列。两者一起完成组合逻辑。图右侧是一个可编程D触发器,它的时钟,清零输入都能够编程选择,能够使用专用的全局清零和全局时钟,也能够使用内部逻辑(乘积项阵列)产生的时钟和清零。假如不需要触发器,也能够将此触发器旁路,信号直截了当输给PIA或输出到I/O脚
14、。二.乘积项结构PLD的逻辑实现原理下面我们以一个简单的电路为例,具体说明PLD是如何利用以上结构实现逻辑的,电路如下图:图3 假设组合逻辑的输出(AND3的输出)为f,则f=(A+B)*C*(!D)=A*C*!D + B*C*!D ( 我们以!D表示D的“非”)PLD将以下面的方式来实现组合逻辑f:图4A,B,C,D由PLD芯片的管脚输入后进入可编程连线阵列(PIA),在内部会产生A,A反,B,B反,C,C反,D,D反8个输出。图中每一个叉表示相连(可编程熔丝导通),因此得到:f= f1 + f2 = (A*C*!D) + (B*C*!D) 。如此组合逻辑就实现了。 图3电路中D触发器的实现
15、比较简单,直截了当利用宏单元中的可编程D触发器来实现。时钟信号CLK由I/O脚输入后进入芯片内部的全局时钟专用通道,直截了当连接到可编程触发器的时钟端。可编程触发器的输出与I/O脚相连,把结果输出到芯片管脚。如此PLD就完成了图3所示电路的功能。(以上这些步骤差不多上由软件自动完成的,不需要人为干预)图3的电路是一个专门简单的例子,只需要一个宏单元就能够完成。但关于一个复杂的电路,一个宏单元是不能实现的,这时就需要通过并联扩展项和共享扩展项将多个宏单元相连,宏单元的输出也能够连接到可编程连线阵列,再做为另一个宏单元的输入。如此PLD就能够实现更复杂逻辑。这种基于乘积项的PLD差不多差不多上由EEPROM和Flash工艺制造的,一上电就能够工作,无需其他芯片配合。PLD/FPGA结构与原理初步(二)公布日期:2006-2-116:16:25 出处:一.查找表(Look-Up-Table)的原理与结构采纳这种结构的PLD芯片我们也能够称之为FPGA:如altera的ACEX,AP
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1