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

FPGA选型

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2023-2-21 09:35 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

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

x
工欲善其事必先利其器,开发FPGA的第一步,当然是选择一片符合你设计需求的芯片。& j1 x0 @. @- c! P4 P1 R. y
  但是芯片种类那么多,老板又要你越省越好,硬件工程师也天天问你到底该用哪块芯片,怎么办?
$ ~1 ?: ^  u1 }% r  今天正好可以跟大家聊聊这些问题,帮助大家从一个工程师走向一个设计师。
0 s' t( e; N3 R2 ?, P6 |  总而言之,遵循下面几个选型原则,基本上不会有大问题:
4 k/ L# \5 _& q, d) |  1. 器件特色  选片第一个关注的应该是FPGA器件的专用资源。, l& e: U  h) J. l3 {9 d
  例如是否需要高速接口,如果需要的话,需要多少个通道,各个通道需要的最高收发速度是多少。% Y/ ]$ C* ~+ A
  同样,如果需要实现运算量较大的算法模块时,则要求FPGA器件需要有大量的DSP模块,并拥有足够多的RAM块来配合这些DSP模块。# t' k* j5 k% r" y4 Y8 w, X
  
6 q/ A* B/ @' W8 \' q' [  2 规模大小  在选型时,因为FPGA设计还未开始,很难确定FPGA器件的规模。
4 ?, l  f+ |4 N9 K- I8 V  通常的做法是,针对本次设计中想要用的FPGA器件系列,重新编译之前的某些功能模块,以便获得一个大致正确的规模估计。, d# p! o9 L" m1 K0 t* I. j8 `
  如果设计中使用了IP,这些IP核也需要编译后,加入到总面积估算中。6 [: X- n; D: F
  再将需要加入的新功能进行设计估算。
6 E8 }. u8 y, O9 o3 _& A  两方面加起来后,在此基础上预估再增加20%-30%,基本上可以满足之后的设计需求。
9 S' H0 E: `# R9 }" ^. o' j! t% y  甚至有时,现有的嵌入式逻辑分析仪也需要耗费内部存储模块,调试过程的资源消耗可能也需要考虑在内。
7 P& a- v; w6 A. M9 O  若FPGA留有余量:! m! }0 M" L' T  p
  
  • 避免时序收敛对设计的影响,减少开发周期,快速进入板上调试阶段;
  • 则对设计后期修改或产品版本更新所增加的逻辑单元,就能比较容易的被接纳;! N) ]8 Q6 ], j

# A: `! m  H6 B6 D% q! |0 i  设计在FPGA上正常运行后,如果FPGA上有大量未使用的资源,此时可以考虑换区一个比较小的器件以降低成本,这时候要注意的就是引脚在移植代码时的修改问题。& V9 g* E; V- O, T1 f
  4 P6 k- @6 ]. m" q9 P
  3 速度需求  首先需要分析功能需求,然后在平衡资源与速度后,估计速度需求。, @9 ~' J( w/ J7 g5 G4 N' y
  同样也可以根据之前的设计来确定,根据FPGA供应商提供的datasheet,在最大速度的基础上,留出足够的安全余量,确定选型。; i! E' A  e/ A. C
  当然,也可以直接选择同类型的速度等级最高的器件,尽早的进入设计调试阶段。等功能完善之后,再选用一个较慢的FPGA器件来做降成本的设计。
) u$ u) y1 t$ p0 m% W  
9 K2 w: {6 J" n7 M9 ]3 {* |" i  4 引脚  设计需要I/O接口类型,直接影响到FPGA器件所需要的引脚数目和封装类型。在此必须知道I/O标准和驱动强度,以及外部的接口电气标准。
1 W$ R4 s! u0 d4 x" N% M& P  同时需要关注设计中的信号完整性问题,这些都需要与硬件工程师讨论后,进行确定。( Q: k7 W1 D2 ^
  甚至有时候调试阶段,也需要预留部分引脚作为调试引脚(内嵌逻辑分析仪的资源不够时)。* J  ?8 J' }7 A* P5 X1 u& t; z
  2 ^) e! u/ C3 k# h7 D  v
  5 IP的可用性  包括两方面:
& }* O+ ~+ z7 v4 e" p( c/ c, ]  一是芯片厂家的IP核的丰富性,如果提供足够多的IP核,覆盖我们的设计,当然是最好不过的;% @7 S# P1 i# f1 u& W+ Z" [( j
  二是芯片厂家是否愿意以可接受的价格(更多可能是免费)的方式将这些IP核提供给我们。" H7 m; E7 @. J0 p
  因为IP核的使用可以大大减少开发周期,缩短工时,降低开发成本,因此选型时也需要考虑这部分。
- V+ @$ b# |( F* h/ s7 |) q, u  f  
! m/ }# b5 z8 Q+ Y  6 器件的可用性  一些老旧器件可能会面临停产的风险,如果开发周期超过两年以上,建议选择最新或者次新的器件,因为几年后,目前最新或者次新的FPGA器件在经济上是比较划算的,也不用担心停产,导致供货不足影响产品出货;
0 U% F' [5 K, U- {8 p& u  . L& ]5 u2 n2 n/ r
  7 功耗  根据设计的功能需求,确定FPGA需要使用的电源。例如对IP核、I/O、transceiver等模块,提供各自独立的电源层,FPGA需要的电源个数越多,电路板上的元器件成本就越高。6 z; ^- F# E& T0 {; T( J7 p
  所以需要根据之前的设计、FPGA供应商提供的功耗评估软件等估算将要消耗的功耗,从而确定所需的器件。- G  F  F# B6 w6 I3 M8 `4 N9 z
  ' s( W: u# d8 k6 O; O! d
  8 其他  其他方面包括:: Y. \6 ]8 I# x% _; J1 z9 P4 r
  
  • 器件的工具软件易用性,对于一些国产的FPGA器件,其开发软件稳定性较低,可能会额外增加开发成本,提高风险,因此在选型时,需要注意;
  • 器件在高低温、强辐射等极端环境下的性能表现;
  • 产品的继承性,一些常用功能模块的可移植性,考虑选型时,可能需要多考虑可以继承上一代产品的可用器件。$ {7 q: u# ^9 V( a

( P/ S! I: L, w9 E8 x+ D; R3 p& k  / v7 {% I" x5 S' y( d
  最后小结一个,说了那么多,其实记住两点就行:# P7 [7 w6 g& k
  给老板和领导省钱;$ N7 n7 Z: r0 ]+ E' K" x7 q: f
  给自己和同事省事。
1 r: [$ w7 u% h$ C" ?  祝各位好运!
2 y+ {4 O, U. ?- _1 ~& W% j# p, T. \+ g0 C5 W! R

; U' S, R5 z$ q  N

该用户从未签到

2#
发表于 2023-2-21 10:44 | 只看该作者
首要的问题是对数字电路技术基础知识的掌握,然后就是对硬件描述语言的掌握(veirlog或者VHDL)

该用户从未签到

3#
发表于 2023-2-21 13:11 | 只看该作者
当真正掌握了FPGA设计的本质后,需要使用某一个厂家的某一种FPGA的时候,只需要针对这个厂家的该型号的FPGA做一些了解就可以了,设计的基础还是一样的,以往积累的大部分经验都可以应用得上。

该用户从未签到

4#
发表于 2023-2-21 13:43 | 只看该作者
选择主流厂家的流行的型号,这样更容易获取学习资源。

该用户从未签到

5#
发表于 2023-2-21 13:52 | 只看该作者
Xilinx 的主流FPGA分为两大类,一种侧重于低成本应用,容量中等,性能可以满足一般的逻辑设计要求,如Spartan系列;还有一种侧重于高性能应用,容量大,性能能满足各类高端应用,如Virtex系列。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-8-13 10:18 , Processed in 0.125000 second(s), 23 queries , Gzip On.

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

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

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