找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

巢课
电巢直播8月计划
查看: 77|回复: 0
打印 上一主题 下一主题

FPGA的几点总结,你同意吗?

[复制链接]

114

主题

136

帖子

1000

积分

四级会员(40)

Rank: 4Rank: 4Rank: 4Rank: 4

积分
1000
跳转到指定楼层
1#
发表于 2017-11-22 14:35 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您!

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

x
1.  FPGA编程语言为何叫硬件描述语言?
0 K+ Q# D# K, @4 X& g7 h        硬件即FPGA硬件,硬件描述语言,也就自然地告诉我们可以通过语言来描述FPGA内部硬件。如:用y=a&b来描述一个2输入的与门,用PLL来描述类似外部时钟管理芯片。
# u3 z) i" B& ~' k  j* i        因此,要想学好FPGA,你得用硬件的思维方式来编写代码,注重FPGA的系统结构设计,好的系统结构设计会带来质的飞跃,这就告诉我们RTL Coding其实是硬件结构设计,而非基于处理器架构的C语言程序开发,好的RTL Coding就是好的硬件结构。; j) {& g& S3 o( h3 _/ B
2.  FPGA设计是做串并操作的时序设计?
, c9 J, R) R' q0 y/ i& b+ c        FPGA内部硬件之间的通信为多对多节点通信,不仅存在无先后顺序的并行逻辑,而且还存在先后顺序的串行逻辑,这和CPU基于指令的顺序执行逻辑完全不同,嵌入式物联网等系统学习企鹅意义气呜呜吧久零就易,我们需要严格控制设计中各个信号之间的时间关系,以满足最终的时间上的需求,即时序要求。
       因此,FPGA设计就是针对既有串行操作,又有并行操作的时序设计,即FPGA串并操作的时序设计。
, Q$ e+ s2 G( x. e+ K4 k3.  FPGA串并操作,该如何理解?5 x/ m1 V. k# i' g, D* X" H- b7 Y
        a.执行完A后再执行B;8 i$ R; {. e4 N& @* @
        b.A和B之间并行执行,且没有关联;
; b) f5 S: N% o% G7 Z        c.A和B之间并行执行,且开始时有先后顺序,即串行逻辑;
2 x( v  R) S. e+ `4 w( U        d.FPGA的复杂系统包含上述多种灵活组合,设计时需多多琢磨思考,合理设计。6 @# R* ]2 Q9 C( `- c% K
4.  FPGA内部最基本硬件结构LUT,你理解吗?  ?( ?# g/ h! z3 f  }) p
        LUT的原理很简单,就是把各种可能的结果存起来标个号,每次根据输入的号来输出结果。如:一位加法器有4种可能输入对应3种结果,就只需要做一张表格,把所有的输入和输出一一对应即可。
file:///C:\Users\郭晓娟\AppData\Local\Temp\ksohtml\wpsEBD3.tmp.jpg   理解了LUT原理,我们可以用相同的思想来实现DDS、简单乘法、简单三角函数等,有时可以大大省资源,因为毕竟FPGA最终都是有多个LUT级联+Reg+其它 来实现各种复杂的硬件电路。
5.  FPGA设计关键在于结构的设计,你同意吗?! O8 G5 i" H% ^# S4 f# Y0 z4 U
       a.首先,清楚FPGA的内部结构,基本结构为LUT;
      b.然后,按照功能、时钟域、串并操作、数据流和控制流来综合考虑系统的结构;
      c.最后 ,根据面积、速度和功耗来不断优化系统结构,设计出最合理的系统结构。
, T6 Z4 X; {; |5 u9 w7 d
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 支持!支持! 反对!反对!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

巢课

技术风云榜

关于我们|手机版|EDA365 ( 粤ICP备18020198号 )

GMT+8, 2024-11-3 22:16 , Processed in 0.056025 second(s), 32 queries , Gzip On.

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

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

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