找回密码
 注册
关于网站域名变更的通知
查看: 294|回复: 3
打印 上一主题 下一主题

浅谈FPGA的选型

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2022-11-28 10:41 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
工欲善其事必先利其器,开发FPGA的第一步,当然是选择一片符合设计需求的芯片。
4 H. B# ]  [' O. s, d器件特色9 Z' o( L9 t1 G! N. x2 n

7 K% S& \4 D2 N% q: ?1 q" }' }/ H  R选片第一个关注的应该是FPGA器件的专用资源。5 \" c7 G, F! ?
# J6 i0 Z  s* G4 @6 W& M0 v
例如是否需要高速接口,如果需要的话,需要多少个通道,各个通道需要的最高收发速度是多少。! Q9 T% d8 l! A8 t# a
9 y: n, K; ^5 ^3 h$ y$ Q- k
同样,如果需要实现运算量较大的算法模块时,则要求FPGA器件需要有大量的DSP模块,并拥有足够多的RAM块来配合这些DSP模块。+ v  {4 N" t& ]
规模大小% T# x! M' @* t

2 m5 }6 G/ o) ~
4 m0 W5 r* T- {8 t
; r3 c2 n" h$ m7 S5 }' X6 U& A在选型时,因为FPGA设计还未开始,很难确定FPGA器件的规模。' |. ^& |5 A* S8 A; Z( D
+ w( f8 f# G7 w% |, F
通常的做法是,针对本次设计中想要用的FPGA器件系列,重新编译之前的某些功能模块,以便获得一个大致正确的规模估计。
. U6 ^% R$ S% V
8 J, Y7 H" {- T$ |2 {" ~如果设计中使用了IP,这些IP核也需要编译后,加入到总面积估算中。2 m$ ?9 r& j) _+ N9 i" Z) H9 t

: l! {% ~+ |" K% ?: q再将需要加入的新功能进行设计估算。2 {6 \: x! i# V9 \- B% {
- E. `  O6 v+ [0 D) P$ S0 ~
两方面加起来后,在此基础上预估再增加20%-30%,基本上可以满足之后的设计需求。$ X2 s1 m* b1 {
0 y9 b/ N3 c* ^. y2 ^+ o- Y
甚至有时,现有的嵌入式逻辑分析仪也需要耗费内部存储模块,调试过程的资源消耗可能也需要考虑在内。
6 I; n5 b4 d* ~) I# x7 j3 z- X3 a6 b' T1 f2 e
若FPGA留有余量:5 ~7 H% Q8 c9 H, {+ m
& g+ n4 _5 q5 f% O, O# m  d3 z
避免时序收敛对设计的影响,减少开发周期,快速进入板上调试阶段;9 ^1 B" j* o7 u* E, ?* b# M
. C. c6 ~8 \# @7 U
则对设计后期修改或产品版本更新所增加的逻辑单元,就能比较容易的被接纳;
: M- ]. l% D2 O' N* q- `" i& t3 d5 H9 }2 {  B# S& j6 F  H
设计在FPGA上正常运行后,如果FPGA上有大量未使用的资源,此时可以考虑换区一个比较小的器件以降低成本,这时候要注意的就是引脚在移植代码时的修改问题。. t+ P  ^6 u* _/ P9 b4 \2 G3 o
速度需求
" x6 A$ v" l4 v- s$ E首先需要分析功能需求,然后在平衡资源与速度后,估计速度需求。同样也可以根据之前的设计来确定,根据FPGA供应商提供的datasheet,在最大速度的基础上,留出足够的安全余量,确定选型。
- g( ~1 a' w4 e0 J! n
. @0 V2 n. V0 B6 ]当然,也可以直接选择同类型的速度等级最高的器件,尽早的进入设计调试阶段。等功能完善之后,再选用一个较慢的FPGA器件来做降成本的设计。
' }* L7 Z; G" T# E! _& A7 X引脚
6 w. x3 R# {% y  \: d3 H5 k& E+ ?- h: j8 O& H% x
设计需要I/O接口类型,直接影响到FPGA器件所需要的引脚数目和封装类型。在此必须知道I/O标准和驱动强度,以及外部的接口电气标准。
0 a5 B1 f9 T& c( Q1 y  A% K2 \" S/ T  B, B& s
同时需要关注设计中的信号完整性问题,这些都需要与硬件工程师讨论后,进行确定。5 i  G$ K# Z; }3 f4 \* j
" j4 r% W: B$ x  I6 j' B' i
甚至有时候调试阶段,也需要预留部分引脚作为调试引脚(内嵌逻辑分析仪的资源不够时)。
  @* x6 X' S8 [' dIP的可用性
! Y2 b, |% e4 p& F4 {. ]$ K! f7 {
1 Q7 K8 M, @2 N5 G$ @* J包括两方面:
, v0 \' o% Q7 t. J4 `  L" h
: R* _- V) Y8 F$ W5 O3 u# [一是芯片厂家的IP核的丰富性,如果提供足够多的IP核,覆盖我们的设计,当然是最好不过的;
+ E; e, V( W% F8 S$ r% C) E
3 Z6 m' F6 H1 o) X! f: |7 \二是芯片厂家是否愿意以可接受的价格(更多可能是免费)的方式将这些IP核提供给我们。( c) k( E$ [# A/ g
. z% t; X9 W8 N
因为IP核的使用可以大大减少开发周期,缩短工时,降低开发成本,因此选型时也需要考虑这部分。
% K0 n& |# S8 P5 b器件的可用性. @# E3 r7 p+ h$ p% j
/ |4 I0 X) x  x7 F: n) U; k
一些老旧器件可能会面临停产的风险,如果开发周期超过两年以上,建议选择最新或者次新的器件,因为几年后,目前最新或者次新的FPGA器件在经济上是比较划算的,也不用担心停产,导致供货不足影响产品出货;8 x- g3 Q& B3 o
功耗" K# ?% ~5 O" C( ]$ |. ?1 |

5 a( C/ d: v' L3 V+ n根据设计的功能需求,确定FPGA需要使用的电源。例如对IP核、I/O、transceiver等模块,提供各自独立的电源层,FPGA需要的电源个数越多,电路板上的元器件成本就越高。
2 y* ~+ [  z) R' a4 u" _! H+ G3 X. ?8 R* h! ~- V- a0 j' m
所以需要根据之前的设计、FPGA供应商提供的功耗评估软件等估算将要消耗的功耗,从而确定所需的器件。
5 n/ h7 B& }2 H其他/ n: \6 T& d* ~5 X, P# B& `
9 `2 t  n5 r1 I5 [3 c
其他方面包括:, z6 ~% x) q3 c; n
- M0 {5 A" b9 X' }4 {+ f/ ^
器件的工具软件易用性,对于一些国产的FPGA器件,其开发软件稳定性较低,可能会额外增加开发成本,提高风险,因此在选型时,需要注意;
# C! |4 f) {+ {+ e0 t8 u, c: q" ]8 P% J. g4 z" s( L
器件在高低温、强辐射等极端环境下的性能表现;
6 x$ [; m8 n* n5 T. s# h7 ~/ B4 w. l
产品的继承性,一些常用功能模块的可移植性,考虑选型时,可能需要多考虑可以继承上一代产品的可用器件。
$ t: P  S, e7 P7 v+ w* N% J, d) e$ {5 `% R  ]4 }& N, r0 U! m
总之,在选型的时候,为自己和同事省事,为公司省成本。; j/ ^  |! {/ ^

$ D2 S6 A# }4 c8 t/ h: d$ h& E

该用户从未签到

2#
发表于 2022-11-28 13:32 | 只看该作者
时钟速度(逻辑时钟、IO时钟等),不同Family能达到的速度不同
8 T# w+ T) \6 S7 L6 E3 X' q- S时钟数量,不同Family的时钟资源不同9 R+ n$ [& A' e& i/ F1 Y( R% y
IO数目和支持的电平标准$ Y8 _1 @" Z/ p9 t1 ]  [; ]
板上封装(焊接方式、体积大小)

该用户从未签到

3#
发表于 2022-11-28 13:39 | 只看该作者
产品调试和升级扩容空间,比如调试时用较大的器件,完成后改用同样封装较小规模的器件,这样挺重要的!

该用户从未签到

4#
发表于 2022-11-28 14:09 | 只看该作者
Spartan-7 的定位为低成本应用,容量中等,性能仅为满足一般的逻辑设计要求。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-7-20 23:54 , Processed in 0.109375 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表