此外,随着芯片线宽的减小,芯片工作电压相应降低,I/O块具有兼容几种电压标准的能力,例如,1.5V的芯片,内芯和I/O使用不同的电压,在保证降低内部功耗的同时能与3.3V和5V的器件连接。[8]
2.1.2 FPGA基本原理与结构
FPGA的基本结构由六部分组成:可编程输入/输出单元、基本可编程逻辑单元、嵌入式块RAM、丰富的布线资源、底层嵌入功能单元和内嵌专用硬核等。可编程输入/输出单元简称I/O单元,是芯片和外部电路的接口部分,完成不同电器特性下对输入/输出的驱动与匹配需求;基本可编程逻辑单元是可编程逻辑的主体,可灵活改变其内部连接与配置,完成不同的逻辑功能;嵌入式块RAM大大拓展了FPGA的应用范围和使用灵活性;丰富的布线资源连通FPGA内部所有单元,连线的长度和工艺决定着信号在连线上的驱动能力和传输速度;底层嵌入功能单元是指通用程度较高的嵌入式功能模块,比如PLL(Phase Locked Loop)、DLL(Delay Locked Loop)、DSP、CPU等,这些模块被越来越多地嵌入到FPGA内部,以满足不同需求;内嵌专用硬核是指一些通用性相对较弱的硬核(Hard Cord),通过这些Hard IP(知识产权)可以完成某些高速复杂设计,提高系统的工作频率和效能,加速研发进程。
FPGA一般是基于查找表(LUT,Look Up Table)结构的。LUT本质上就是一个RAM,目前FPGA中多使用4输入的LUT,所以每一个LUT可以看成是一个有4位地址线的16×1的RAM。当用户通过原理图或HDL语言描述了一个逻辑电路以后,FPGA开发软件会自动计算逻辑电路的所有可能的结果,并把结果事先写入RAM,这样,每输入一个信号进行逻辑运算就等于输入一个地址进行查表,找出地址对应的内容,然后输出即可。[9]
2.1.3 FPGA的基本特点
⑴采用FPGA设计ASIC电路(专用集成电路),用户不需要投片生产,就能得到合用的芯片。
⑵FPGA可做其它全定制或半定制ASIC电路的中试样片。
⑶FPGA内部有丰富的触发器和I/O引脚。
⑷FPGA是ASIC电路中设计周期最短、开发费用最低、风险最小的器件之一。
⑸ FPGA采用高速CMOS工艺,功耗低,可以与CMOS、TTL电平兼容。
可以说,FPGA芯片是小批量系统提高系统集成度、可靠性的最佳选择之一。
FPGA是由存放在片内RAM中的程序来设置其工作状态的,因此,工作时需要对片内的RAM进行编程。用户可以根据不同的配置模式,采用不同的编程方式。
加电时,FPGA芯片将EPROM中数据读入片内编程RAM中,配置完成后,FPGA进入工作状态。掉电后,FPGA恢复成白片,内部逻辑关系消失,因此,FPGA能够反复使用。FPGA的编程无须专用的FPGA编程器,只须用通用的EPROM、PROM编程器即可。当需要修改FPGA功能时,只需换一片EPROM即可。这样,同一片FPGA,不同的编程数据,可以产生不同的电路功能。因此,FPGA的使用非常灵活[10]。源[自[751``论`文]网·www.751com.cn/
2.1.4 FPGA的分类
⑴ 按逻辑功能块的大小分类
可编程逻辑块是FPGA的基本逻辑构造单元。按照逻辑功能块的大小不同,可将FPGA分为细粒度结构和粗粒度结构两类。
⑵ 按互连结构分类
根据FPGA内部的连线结构不同,可将其分为分段互连型和连续互连型两类。
⑶ 按编程特性分类
根据采用的开关元件的不同,FPGA可分为一次编程型和可重复编程型两类。[11]
2.1.5 FPGA的设计方法与流程
完整的FPGA设计流程包括电路设计与输入、功能仿真、综合、综合后仿真、实现、布线后仿真与验证、板级仿真验证与下载调试等主要步骤。