FPGA简介
发布时间:2008/12/17 0:00:00 访问次数:1041
当今社会是数字化的社会,是数字集成电路广泛应用的社会。数字集成电路本身在不断地进行更新换代。它由早期的电子管、晶体管、小中规模集成电路,发展到超大规模集成电路(vlsic,几万门以上)以及许多具有特定功能的专用集成电路。但是,随着微电子技术的发展,设计与制造集成电路的任务已不完全由半导体厂商来独立承担。系统设计师们更愿意自己设计专用集成电路(asic)芯片,而且希望asic的设计周期尽可能短,最好是在实验室里就能设计出合适的asic芯片,并且立即投入实际应用之中,因而出现了现场可编程逻辑器件(fpld),其中应用最广泛的当属现场可编程门阵列(fpga)和复杂可编程逻辑器件(cpld)。
1. 发展历史
早期的可编程逻辑器件只有可编程只读存储器(prom)、紫外线可擦除只读存储器(eprom)和电可擦除只读存储器(e2prom)三种。由于结构的限制,它们只能完成简单的数字逻辑功能。
其后出现了一类结构上稍复杂的可编程芯片,即可编程逻辑器件(pld),它能够完成各种数字逻辑功能。典型的pld由一个“与”门和一个“或”门阵列组成,而任意一个组合逻辑都可以用“与—或”表达式来描述,所以pld能以乘积和的形式完成大量的组合逻辑功能。
这一阶段的产品主要有pal(可编程阵列逻辑)和gal(通用阵列逻辑)。 pal由一个可编程的“与”平面和一个固定的“或”平面构成,或门的输出可以通过触发器有选择地被置为寄存状态。pal器件是现场可编程的,它的实现工艺有反熔丝技术、eprom技术和e2prom技术。还有一类结构更为灵活的逻辑器件是可编程逻辑阵列(pla),它也由一个“与”平面和一个“或”平面构成,但是这两个平面的连接关系是可编程的。pla器件既有现场可编程的,也有掩膜可编程的。在pal的基础上又发展了一种通用阵列逻辑(gal,generic arraylogic),如gal16v8、gal22v10等。它采用了e'prom工艺,实现了电可擦除、电可改写,其输出结构是可编程的逻辑宏单元,因而它的设计具有很强的灵活性,至今仍有许多人使用。这些早期的pld器件的一个共同特点是可以实现速度特性较好的逻辑功能,但其过于简单的结构也使它们只能实现规模较小的电路。
为了弥补这一缺陷,20世纪80年代中期,altera和xilinx分别推出了类似于pal结构的扩展型cpld(complex programmable logic dvice)和与标准门阵列类似的fpga(fieldprogrammable gate array),它们都具有体系结构和逻辑单元灵活、集成度高以及适用范围宽等特点。这两种器件兼容了pld和通用门阵列的优点,可实现较大规模的电路,编程也很灵活。与门阵列等其他asic(application specific ic)相比,它们又具有设计开发周期短、设计制造成本低、开发工具先进、标准产品不需测试、质量稳定以及可实时在线检验等优点,因此被广泛应用于产品的原型设计和产品生产(一般在10 000件以下)之中。几乎所有应用门阵列、pld和中小规模通用数字集成电路的场合均可应用fpga和cpld器件。
fpga是英文field programmable gate arry的缩写,即现场可编程门阵列,它是在pal、gal、epld等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(asic)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。
2. fpga的基本特点
fpga采用了逻辑单元阵列(loa,logic cell arry)这样一个新概念,内部包括可配置逻辑模块(clb,configurable logic block)、输入输出模块(iob,input output block)和内部连线(interconnect)三个部分。fpga的基本特点主要有:
(1)采用fpga设计asic电路,用户不需要投片生产就能得到合用的芯片;
(2)fpga可做其他全定制或半定制asic电路的试样片:
(3)fpga内部有丰富的触发器和i/o引脚;
(4)fpga是asic电路中设计周期最短、开发费用最低、风险最小的器件之一;
(5)fpga采用高速chmos工艺,功耗低,可以与cmos、ttl电平兼容。
可以说,fpga芯片是小批量系统提高系统集成度和可靠性的最佳选择之一。
目前fpga的品种很多,有xilinx的xc系列、ti公司的tpc系列、altera公司的fiex系列等。
fpga是由存放在片内ram中的程序来设置其工作状态的。因此,工作时需要对片内的ram进行编程。用户可以根据不同的配置模式采用不同的编程方式。
加电时,fpga芯片将eprom中的数据读入片内编程ram中,配置完成后,fpga进入工作状态。掉电后,fpga恢复成白片,内部逻辑关系消失。因此,fpga能够反复使用。fpga的编程不需专用的fpga编程器,只需用通用的eprom、prom编程器即可。当需要修改fpga功能时,只需换一片eprom即可。这样,同一片fpga、不同的编程数据,可以产生不同的电路功能。因此,fpga的使用非常灵活。
fpga有下面4种配置
当今社会是数字化的社会,是数字集成电路广泛应用的社会。数字集成电路本身在不断地进行更新换代。它由早期的电子管、晶体管、小中规模集成电路,发展到超大规模集成电路(vlsic,几万门以上)以及许多具有特定功能的专用集成电路。但是,随着微电子技术的发展,设计与制造集成电路的任务已不完全由半导体厂商来独立承担。系统设计师们更愿意自己设计专用集成电路(asic)芯片,而且希望asic的设计周期尽可能短,最好是在实验室里就能设计出合适的asic芯片,并且立即投入实际应用之中,因而出现了现场可编程逻辑器件(fpld),其中应用最广泛的当属现场可编程门阵列(fpga)和复杂可编程逻辑器件(cpld)。
1. 发展历史
早期的可编程逻辑器件只有可编程只读存储器(prom)、紫外线可擦除只读存储器(eprom)和电可擦除只读存储器(e2prom)三种。由于结构的限制,它们只能完成简单的数字逻辑功能。
其后出现了一类结构上稍复杂的可编程芯片,即可编程逻辑器件(pld),它能够完成各种数字逻辑功能。典型的pld由一个“与”门和一个“或”门阵列组成,而任意一个组合逻辑都可以用“与—或”表达式来描述,所以pld能以乘积和的形式完成大量的组合逻辑功能。
这一阶段的产品主要有pal(可编程阵列逻辑)和gal(通用阵列逻辑)。 pal由一个可编程的“与”平面和一个固定的“或”平面构成,或门的输出可以通过触发器有选择地被置为寄存状态。pal器件是现场可编程的,它的实现工艺有反熔丝技术、eprom技术和e2prom技术。还有一类结构更为灵活的逻辑器件是可编程逻辑阵列(pla),它也由一个“与”平面和一个“或”平面构成,但是这两个平面的连接关系是可编程的。pla器件既有现场可编程的,也有掩膜可编程的。在pal的基础上又发展了一种通用阵列逻辑(gal,generic arraylogic),如gal16v8、gal22v10等。它采用了e'prom工艺,实现了电可擦除、电可改写,其输出结构是可编程的逻辑宏单元,因而它的设计具有很强的灵活性,至今仍有许多人使用。这些早期的pld器件的一个共同特点是可以实现速度特性较好的逻辑功能,但其过于简单的结构也使它们只能实现规模较小的电路。
为了弥补这一缺陷,20世纪80年代中期,altera和xilinx分别推出了类似于pal结构的扩展型cpld(complex programmable logic dvice)和与标准门阵列类似的fpga(fieldprogrammable gate array),它们都具有体系结构和逻辑单元灵活、集成度高以及适用范围宽等特点。这两种器件兼容了pld和通用门阵列的优点,可实现较大规模的电路,编程也很灵活。与门阵列等其他asic(application specific ic)相比,它们又具有设计开发周期短、设计制造成本低、开发工具先进、标准产品不需测试、质量稳定以及可实时在线检验等优点,因此被广泛应用于产品的原型设计和产品生产(一般在10 000件以下)之中。几乎所有应用门阵列、pld和中小规模通用数字集成电路的场合均可应用fpga和cpld器件。
fpga是英文field programmable gate arry的缩写,即现场可编程门阵列,它是在pal、gal、epld等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(asic)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。
2. fpga的基本特点
fpga采用了逻辑单元阵列(loa,logic cell arry)这样一个新概念,内部包括可配置逻辑模块(clb,configurable logic block)、输入输出模块(iob,input output block)和内部连线(interconnect)三个部分。fpga的基本特点主要有:
(1)采用fpga设计asic电路,用户不需要投片生产就能得到合用的芯片;
(2)fpga可做其他全定制或半定制asic电路的试样片:
(3)fpga内部有丰富的触发器和i/o引脚;
(4)fpga是asic电路中设计周期最短、开发费用最低、风险最小的器件之一;
(5)fpga采用高速chmos工艺,功耗低,可以与cmos、ttl电平兼容。
可以说,fpga芯片是小批量系统提高系统集成度和可靠性的最佳选择之一。
目前fpga的品种很多,有xilinx的xc系列、ti公司的tpc系列、altera公司的fiex系列等。
fpga是由存放在片内ram中的程序来设置其工作状态的。因此,工作时需要对片内的ram进行编程。用户可以根据不同的配置模式采用不同的编程方式。
加电时,fpga芯片将eprom中的数据读入片内编程ram中,配置完成后,fpga进入工作状态。掉电后,fpga恢复成白片,内部逻辑关系消失。因此,fpga能够反复使用。fpga的编程不需专用的fpga编程器,只需用通用的eprom、prom编程器即可。当需要修改fpga功能时,只需换一片eprom即可。这样,同一片fpga、不同的编程数据,可以产生不同的电路功能。因此,fpga的使用非常灵活。
fpga有下面4种配置
上一篇:FPGA开发工具ISE简介
上一篇:频域仿真