fpga是英文fieldprogrammablegatearray的缩写,即现场可编程门阵列,它是在pal、gal、pld等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(asic)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。
fpga采用了逻辑单元阵列lca(logiccellarray)这样一个新概念,内部包括可配置逻辑模块clb(configurablelogicblock)、输出输入模块iob(inputoutputblock)和内部连线(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有多种配置模式:并行主模式为一片fpga加一片eprom的方式;主从模式可以支持一片prom编程多片fpga;串行模式可以采用串行prom编程fpga;外设模式可以将fpga作为微处理器的外设,由微处理器对其编程。