|
作为上次企划的后续,本次介绍一下FPGA的基础知识,为后面的内容分享打好基础
/ W0 a( c# C, t3 z7 m; G+ `5 \: {' R: h(欢迎访问老王论坛:laowang.vip)
一、定义
3 \9 ]' l. _ m rASIC:Application Specific Integrated Circuit 专用集成电路,如CPU、GPU、DSP
" `$ G" M% {' i2 `设计人员根据特定的应用需求,设计专用的逻辑电路,之后生成网表,交给芯片制造厂家(TSMC)流片6 X8 i8 n# n' w5 |- D/ N7 K(欢迎访问老王论坛:laowang.vip)
流片后,内部逻辑电路就固定了,芯片的功能也就固定的0 e- L: ^& _+ }8 E( P+ I(欢迎访问老王论坛:laowang.vip)
优点:
2 q9 I4 _6 r* G) ^" J1、性能优越8 E# a, Q& p7 c f, |8 v(欢迎访问老王论坛:laowang.vip)
2、可靠性高
' ~( w# J+ U- H8 e3、大批量下单位成本低 5 i: ~0 C" I, t- R(欢迎访问老王论坛:laowang.vip)
缺点:6 n: q1 A2 l2 R! [8 @. B5 \$ x(欢迎访问老王论坛:laowang.vip)
1、开发周期长、设计工具及设计流程复杂、快速进入市场的压力大 W- _) f, A1 ^# m w. s6 N4 e7 V(欢迎访问老王论坛:laowang.vip)
2、功能固定,不利修改和扩展* D1 H1 g' A2 g$ w3 i( b(欢迎访问老王论坛:laowang.vip)
3、NRE费用高
0 m% N9 U1 ?9 x3 y* [6 C2 N. G4、设计工具及开发人员昂贵: l+ T+ h( Q) H% D4 ], ?(欢迎访问老王论坛:laowang.vip)
用途:
% y; D( \8 K& f: `8 S( p6 c! i8 @1、设计规模大,复杂度高的芯片% I0 L7 L: l3 o3 h(欢迎访问老王论坛:laowang.vip)
2、成熟度高,产量大的产品* a5 _; M" @( |9 v(欢迎访问老王论坛:laowang.vip)
6 v7 r$ @6 m) S+ Q, E* E& {5 P% f1 w( j5 |$ N# ]0 e(欢迎访问老王论坛:laowang.vip)
FPGA:Field Programmable Gate Arrays 现场可编程门阵列,如Xilinx、Altera(Intel)
; T. P4 h+ M6 c/ I ?8 |设计人员根据需求选择FPGA器件,然后设计逻辑电路,下载到FPGA器件中去,
1 Z" S7 F& G6 A6 B$ ?实现需求的电路功能,随时可以修改电路功能
- ~5 V8 ?- ?3 s优点:2 o, `: W8 C$ ~+ `- a' K& P9 S(欢迎访问老王论坛:laowang.vip)
1、开发初期无投入资金壁垒
8 @% R! a' P) P* W) [8 c. Y" F0 R2、设计工具使用方便,设计简单快速
6 @! p. ]4 ^5 p4 j3、产品原型机开发时间短 管脚定义灵活,便于PCB布板" o8 M u7 {7 u& L7 R3 E(欢迎访问老王论坛:laowang.vip)
4、随时进行硬件功能设计修改
( s/ |- S) d6 Y缺点:' E5 c. u: N3 t; r(欢迎访问老王论坛:laowang.vip)
1、单位成本高 [) ~0 q7 x0 }0 ^& w V5 P(欢迎访问老王论坛:laowang.vip)
2、可靠性低/功耗大
/ T# y" P0 J0 B8 ?0 U% {; K7 ?3、性能低 - L& N1 R( {: n) i, h; v# k(欢迎访问老王论坛:laowang.vip)
用途:! O% }; S) y5 G, k(欢迎访问老王论坛:laowang.vip)
1、要求快速迭代或者小批量产品
2 E$ K, B S' o2 |6 j2、作为ASIC的算法验证加速
6 E2 W. s8 o, n, L' B m) x; f$ s7 O; ?(欢迎访问老王论坛:laowang.vip)
二、FPGA基本结构' i8 w* ~6 I) C' N2 [$ c(欢迎访问老王论坛:laowang.vip)
1、CLB, Configurable Logic Block:可配置逻辑块,主要的逻辑资源 。组合逻辑、时序逻辑和存储单元
; B, e7 N: Y h; L' \" W2、Programmable I/O Block:可编程的I/O模块,芯片与外部的接口;不同电气特性输入/输出信号的驱动和匹配
$ P4 t8 D: K, M4 q# ^! l( x3、Programmable Interconnect:CLB之间或CLB和IOB之间进行互连 8 t1 u, z, s G* }$ r0 G! g(欢迎访问老王论坛:laowang.vip)
4、Configuration Memory :通过写配置存储器实现系统功能,“可编程”的概念CLB实现的逻辑、CLB之间的互连、CLB和IOB之间互连;用户不可见;往配置存储器中写入不同的内容,实现不同的系统功能
4 I: o2 v3 S; F0 |& ]
0 M* J8 f: V2 e9 \
& J, ^3 k$ x- @, }0 u- v5、Block RAM:增加片上存储资源;单端口RAM、双端口RAM、FIFO等
. A* S, B/ s1 f) E* ?6、专用DSP模块:加法器、乘法器、累加器 @- j3 n A! g. g7 j& a(欢迎访问老王论坛:laowang.vip)
7、嵌入式处理核 :软核:PicoBlaze核、MicroBlaze核;硬核:ARM核、PowerPC核 9 Z e9 |0 n6 C" x(欢迎访问老王论坛:laowang.vip)
8、外设接口 :PCI-E接口;Ethernet结构
. o N+ M S6 L, Y, [8 E
7 n' |; S( m6 C$ e1 Z# G
/ w& _0 L& U5 }5 B- F Z0 ]
- e7 k7 [1 y9 w+ l7 {5 `三、查找表LUT; a( }+ L# k6 p3 D9 j* O y(欢迎访问老王论坛:laowang.vip)
对于一个n输入的逻辑运算,不管是与、或、非运算还是异或运算,最多只可能存在2^n种结果 # v$ q6 B, J* a4 ?2 t) J(欢迎访问老王论坛:laowang.vip)
如事先将相应的结果存放于一个存储单元,就相当于实现了逻辑运算电路的功能
# x% T* P1 U' B- @, M: Q9 [" N7 n5 G7 R& Q(欢迎访问老王论坛:laowang.vip)
7系列FPGA采用6-输入LUT结构:
/ ~# s1 i* C3 _& ?8 E5 w, F1、实现任意6-输入逻辑功能
: p- t) U7 v- o6 s! d2、4选1的多路选择器 / r: p+ ^. q& L# K+ Q% l(欢迎访问老王论坛:laowang.vip)
; B& x: x4 `+ p(欢迎访问老王论坛:laowang.vip)
多路选择器拼接 :实现更多输入的逻辑功能
9 l# f2 V! H9 Y9 `/ K: @& `6 U
8 d5 V) |7 ^$ S( o: h2 T两个LUT : ^) L) ^, [& |6 N6 B(欢迎访问老王论坛:laowang.vip)
1、任意7-输入逻辑功能 - K8 D* m% G2 E Z0 d) W$ [8 F4 @(欢迎访问老王论坛:laowang.vip)
2、8选1的多路选择器
0 H0 c& i# L. H. k& u. m* S# }
, R7 [9 w5 I9 C四个LUT
& l- ~& U# G" {1、任意8-输入的逻辑功能
0 _. M+ L( D2 D& Z2、16选1的多路选择器) Z8 Z, y. ^+ b6 G+ P3 r) A# ^(欢迎访问老王论坛:laowang.vip)
" [# o- @6 }* R% [/ ]" n(好累,就写到这儿了)
% L9 l; v+ J& k0 p1 H# g2 J, R D) `0 g- G(欢迎访问老王论坛:laowang.vip)
3 J; Y2 M& f; s' t6 ^& v(欢迎访问老王论坛:laowang.vip)
, }- ^/ r# a" i" L& }3 Z1 w2 V(欢迎访问老王论坛:laowang.vip)
( ]4 Z2 X$ ~0 Y7 `! ~$ @9 F/ e; g3 e4 E5 x2 Z4 q0 ~. L* e& G' E T(欢迎访问老王论坛:laowang.vip)
@: ^, D4 c$ q% n7 C- \
; J$ l3 p9 B$ n$ f$ m: X" W |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?免费注册
x
|