7S{yKS
近年来,集成电路的蓬勃发展使数字电路的研究及应用出现了非常大的发展空间,FPGA功耗低、可靠性高、体积小、重量轻、价格低,具有用户可重复定义的逻辑功能即具有可重复编程的特点,因此,FPGA可使数字电路系统的设计非常灵活,并且大大缩短了系统研制的周期,缩小了数字电路系统的体积并减少了使用芯片的品种。FPGA已经普遍用于通信、雷达、导航、广播、电视、仪器、自动控制和计算机等领域。 pG^>y0
|Sv}/P-
FPGA设计流程和设计环境 ew&"n2r
7n[0)XR>
图1表示FPGA的整个设计流程,从设计输入到器件编程这四个阶段可在MAX+PLUS II提供的环境完成。与图1对应,图2是MAX+PLUS II所提供的设计流程。 J(5#fo{Q.g
qK)T#sh
f<;eNN
f_z]kA
+H
}2''}-Nc
";Q}Gs}
设计输入 X- j@#Qb
gLwrYG7@
MAX+PLUS II的输入可以有三种方式,即图形输入、文本输入和波形输入。图形输入即输入电路原理图,不仅可以使用MAX+PLUS II中丰富的图形器件库,而且可以使用几乎全部的标准EDA设计工具。如可识别标准EDIF网表文件、VHDL网表文件、OrCAD原理图以及Xilinx网表文件等,文本输入方式支持ALTERA公司的AHDL语言,同时兼容VHDL和Verlog HDL。波形输入最有特点,它允许设计者通过编辑输入波形,而由系统自动生成该功能模块。 /pWKV>tjj
7 &iav2q
此外,符号编辑器用于编辑用户自己的模块符号。通过底层编辑器可以观察实际器件的内部结构,并可以改变器件管脚分布,或者调整各模块在器件内部宏单元之间的分布、从而优化器件性能。 CsJ&,(s(
M%bD7naBq
设计实现 b/d1(B@
6lm<>#_
设计实现意味着在所选的FPGA器件内部物理地实现所需逻辑,这个过程用MAX+PLUS II中的核心部分编译器(Compiler)完成,它主要依据设计输入文件自动生成用于器件编程,波形仿真及延时分析所需的数据文件,包括以下几个步骤: S|O#KE
'F^1)Ga$
①选择目标器件及设定编译环境参数,这一步由电路设计者自行设计,以下各步骤由系统自动执行。 skF}_
fwi
-
②生成各个模块的二进制网表(.cnf)文件。 y=2nV
m>f8RBp]'
③连接所有CNF文件,建立数据库,用以描述整个设计。 t]hfq~Ft
+t8#rT ^B
④进行逻辑综合,计算所有布尔等式,并优化触发器设计等。 FK@Gd)(
0.&-1pw
⑤将整个设计映射到相应的器件内。 dN@C)5pm5`
tu^C<MV
⑥产生波形仿真文件及编程文件。 _Mi*Fvj
qS?^(Vt|R
设计仿真 ))6YOc
sn8l3h)
仿真器和时延分析器利用编译器产生的数据库文件自动完成逻辑功能仿真和延时特性仿真。在仿真文件中加载不同的激励信号,可以观察中间结果以及输出波形。必要时,可以返回设计阶段,修改设计输入,最终达到设计要求。 eyy%2>b
'>GPk5Nq77
器件编程与测试 j9R+;u/!
qG3MyK%O\
结果正确后,就可以进行器件编程,即通过编程器BYTEBLASTER电缆将设计下载到实际芯片中,最后测试芯片在系统的实际运行性能。 A&{eC
C
pp+z5
器件性能 ^;[^L=}8$
UlPhW~F)
器件框图 _FCg5F2U
oK3PA
EPF10K10内部框图如图3。 23X-h#w
Q!(qb
BD [<>Wm
,4r 4 <
n2Y a'YF
W^i[7 r
器件资源 _e "
l)f 2T@bHl
ALTERA公司推出的采用0.25μm CMOS ROM工艺规程的结构性能优良、高密度的FLEX10K系列器件产品,片内门数已经达到25万,其资源如表1。 /k KVIlO
GQYB2{e>
器件速度 @xr}(.
x_- SAyH
选用的EPF10K10已经满足频率综合器的要求,其速度等级如表2。 ~<"{u-q#K