|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
一、FPGA原理# E5 R) |. I" f9 q2 L
FPGA中的基本逻辑单元是CLB模块,一个CLB模块一般包含若干个基本的查找表、寄存器和多路选择器资源,因此FPGA中的逻辑表达式基于LUT的。
$ q2 [! A- Y$ _4 B6 ~* A! C1 H% Z, @6 t" q5 m" H6 ]' P4 L( ?* m: [
FPGA内部的编程信息一般存储在SRAM单元中,因此通常的FPGA都是基于SRAM的,所以掉电后信息会丢失,下次上电需要先配置才能使用。
3 {3 V0 f6 Q( M3 r/ x7 ^
8 s: X0 M+ \7 z: t着重介绍Xilinx FPGA,) j8 F, V0 P/ Q7 k5 \1 ^# i
/ l! a, ~( U& V' F2 C+ k二、FPGA产品的速度等级3 D" K4 M4 t$ I8 ~, }2 [' Y
速度等级一般反映一款芯片的性能,速度等级越高,说明芯片内的逻辑延时和布线延时越小,设计的性能要求也越容易达到,随之付出的成本也越大。" P& L; _" a$ f( m+ R; i- b
9 ?% S" M+ [/ R% X# X. J对Xilinx FPGA,速度等级一般有“-1”、“-2”、“-3”等,数字越大,速度等级越高,芯片价钱也越贵。
! _* Q, E/ y* `# M
K( V. K/ ~% d7 o$ f; N对Intel FPGA,速度等级一般有“-6”、“-7”、“-8”,数字越小表示速度等级越高、价钱越贵。& w6 V1 c; w- r5 _
6 X, W6 S1 T) @. w/ p. t, R# N三、FPGA内部资源
0 L% ~+ Z! }! x1 [, ]; V逻辑资源块是FPGA内部最重要的资源,Xilinx称其为CLB(configurable logic block);+ r& `1 c# n$ h! \. d7 h
" S5 o, I6 p2 Q* {8 z& w1 i
7系列中,FPGA内部三大主要资源:可编程逻辑单元、可编程I/O单元、布线资源
9 T$ ^0 E0 r1 g+ j3 N8 P% o v+ i
% q# D- J' `( p8 X" V, K* W1 |
, B% c0 i/ d& o, q3 d+ B+ v! G9 x7 k
1、可配置逻辑单元(configurable logic block)$ J% ]% x8 C+ s1 ~( J0 a
7 y$ j8 `8 R! z# \9 B6 M
CLB在FPGA中最为丰富,由两个SLICE构成,SLICE分为SLICEL(L ogic)和SLICEM(M:Memory),因此CLB可分为CLBLL和CLBLM两类;
& b+ Y4 c8 _/ G% c i K
) B8 Q6 ]+ P2 q5 W, I8 d
6 Z8 [! _, M$ @
! P; N& X; e2 ~, zSLICEL和SLICEM内部都包含4个6输入查找表(LUT6)、3个数据选择器(MUX)、1个进位链(carry chain)和8个触发器(Flip-Flop);
( v8 ^- b. R, p5 X. z. i
& ~6 K. `* U1 ~* c' q# A
- H( k; A7 T" w8 v; y
9 @/ D5 O+ q% d7 `3 z2 z2、存储单元(Block RAM)
5 C9 z/ e+ z( L+ A1 ?
3 i* I( L8 h5 U+ QBlock RAM可以被配置为同步、异步、单端口、双端口的RAM或FIFO,或者ROM;+ I/ ]2 S" E( m: M# O
; ^3 ?1 m7 z9 q. s5 U" S( Q3、运算单元(DSP48E1)# u) T/ K7 J( X* e3 d
& Q$ y i: h5 f ]) [( k9 L/ q当FPGA需要复杂的运算时,会使用DSP48E1,例如乘法;
1 g; E1 t& T2 j' n: R: h% L$ j- n5 k) r
/ V7 }! E7 h: O3 G3 \ |
|