|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
一、FPGA原理
: |' c, P- H% [' RFPGA中的基本逻辑单元是CLB模块,一个CLB模块一般包含若干个基本的查找表、寄存器和多路选择器资源,因此FPGA中的逻辑表达式基于LUT的。
$ p; W" Y; P5 [3 {8 k8 {* F/ |
) H" x9 z) ?, s- Z: HFPGA内部的编程信息一般存储在SRAM单元中,因此通常的FPGA都是基于SRAM的,所以掉电后信息会丢失,下次上电需要先配置才能使用。
1 ], u- g( f4 B' \& L G7 S0 C
8 T$ Y! Y* l7 q( |/ |5 ]. V9 U着重介绍Xilinx FPGA,
( V+ Z/ k0 a3 H
" S5 K' N3 ]' E9 K, `4 I6 r二、FPGA产品的速度等级
" X7 `8 }3 N" A2 o, R% B7 p速度等级一般反映一款芯片的性能,速度等级越高,说明芯片内的逻辑延时和布线延时越小,设计的性能要求也越容易达到,随之付出的成本也越大。" w1 T8 v# x' A5 L1 ? T- k8 L& ]
1 `6 h2 d" j1 g8 U2 w) v3 m1 W
对Xilinx FPGA,速度等级一般有“-1”、“-2”、“-3”等,数字越大,速度等级越高,芯片价钱也越贵。
7 N/ Q( Z$ ~# o1 ~0 J5 z$ w. S3 D$ A
对Intel FPGA,速度等级一般有“-6”、“-7”、“-8”,数字越小表示速度等级越高、价钱越贵。6 x: {/ V+ @, L5 H5 y4 H5 m! r
' _; b- ]0 ^( C; ~三、FPGA内部资源6 S% l9 n3 {0 E& q
逻辑资源块是FPGA内部最重要的资源,Xilinx称其为CLB(configurable logic block);& R2 f( U2 `. {
- C9 O& f* N4 p, V0 t1 J7系列中,FPGA内部三大主要资源:可编程逻辑单元、可编程I/O单元、布线资源
. q0 v- S, ?: @# Q1 V
5 L% l, T) g* O; D6 U
a' d' F" y, i- E
: P) y. H3 s- ]6 y! J8 b1、可配置逻辑单元(configurable logic block)
: x+ u5 x; c; H" _6 @
$ T* B) w7 }7 a3 a* V2 i, s0 XCLB在FPGA中最为丰富,由两个SLICE构成,SLICE分为SLICEL(L ogic)和SLICEM(M:Memory),因此CLB可分为CLBLL和CLBLM两类;
/ m1 X* f( q1 u1 V" ]3 G5 h
: {+ k9 n% h7 |9 N, I3 @) g$ q5 w8 o8 T8 }3 f8 J
* Y2 R2 J* w* PSLICEL和SLICEM内部都包含4个6输入查找表(LUT6)、3个数据选择器(MUX)、1个进位链(carry chain)和8个触发器(Flip-Flop);4 u& b8 x; y) w: z5 T) b& y5 m
4 d0 w Y$ r3 P5 E. N% z5 A6 `
1 J5 ]' N% o- J4 P N* G2 O
1 K( W% F5 g* v# a2、存储单元(Block RAM)
4 Y9 [1 N5 }: u3 O. j
, z( o2 L9 `% X7 u4 kBlock RAM可以被配置为同步、异步、单端口、双端口的RAM或FIFO,或者ROM;
/ |" K3 F5 I% Q$ o. U: z2 w& `7 {0 `, p- j8 V8 p+ L
3、运算单元(DSP48E1)
' r% J# n$ e1 ~* k, ]7 \5 l$ {/ P7 H' q- ^2 u0 N
当FPGA需要复杂的运算时,会使用DSP48E1,例如乘法;* e$ ^- W- E" G0 A: f
+ N9 b9 c7 g- G7 F
2 f6 E2 A6 o2 W; [' z* A |
|