FPGA研发牛人心得总结(DOC55页)12688.docx
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《FPGA研发牛人心得总结(DOC55页)12688.docx》由会员分享,可在线阅读,更多相关《FPGA研发牛人心得总结(DOC55页)12688.docx(68页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、FPGA研发之道FPGA是是个什么玩玩意?FPGA是是个什么玩玩意?首先来来说:FPPGA是一一种器件。其其英文名 feilld prrograamablle ggate arryy 。很长长,但不通通俗。通俗俗来说,是是一种功能能强大似乎乎无所不能能的器件。通通常用于通通信、网络络、图像处处理、工业业控制等不不同领域的的器件。就就像ARMM、DSPP等嵌入式式器件一样样,成为无无数码农码码工们情感感倾泻而出出的代码真真正获得生生命的地方方。只不过过,一样的的编程,却却是不一样样的思想。嵌嵌入式软件件人员看到到的是C。而而FPGAA工程师看看到是硬件件描述语言言,verrilogg或VHDDL
2、。软件件看到是函函数、对象象、重构。FFPGA工工程师则是是模块、流流水、复用用。从现象象上看,都都是代码到到下载程序序再到硬件件上运行。不不能只看现现象而忽略略本质。FFPGA 开发本质质上是设计计一颗ICC,“*的身子,丫丫鬟的命”不不是所有vverillog/VVHDL代代码,都能能获得青睐睐去流片成成为真正的的芯片,而而更多的则则成为运行行在FPGGA器件上上,成为完完成相同功功能的替代代品。其实实现的功能能却一点也也不逊色于于百万身价价流片的近近亲。从而而成为独树树一帜的行行业。FPPGA开发发的流程,是是通过veeriloog/VHHDL等硬硬件描述语语言通过EEDA工具具编译、综
3、综合、布局局布线成为为下载文件件,最终加加载到FPPGA器件件中去,完完成所实现现的功能。那那硬件描述述语言描述述的是什么么?这里描描述的就是是组合逻辑辑电路和时时序逻辑电电路。组合合逻辑电路路就是大家家所熟知的的 与门、或或门、非门门。时序逻逻辑电路则则是触发器器。数字芯芯片上绝大大部分逻辑辑都是这两两种逻辑实实现的。也也就是基本本上每个电电子行业的的人所学过过的数字电电路。顺便便说一下,感感谢香农大大师,在其其硕士毕业业论文就奠定定了数字电电路的的根根基。只不不过在FPPGA中,与与或非的操操作变成了了查找表的的操作。于于是所有的的数字电路路变成了查查找表和寄寄存器,这这就构成了了FPGA
4、A的基础。查查找表负责责逻辑实现现,寄存器器存储电路路状态。二二者配合,双双剑合璧,天天衣无缝。这这是最初的的FPGAA的雏形。 现代FPPGA内部部出了查找找表和寄存存器之外,还还有RAMM块,用于于存储大量量的数据块块,这是因因为RAMM块较寄存存器来存储储大量数据据更能节省省芯片实现现的面积。FFPGA内内部的时序序电路则需需要时钟的的输入,通通常FPGGA内部需需要时钟种种类较多,因因此需要在在片内产生生所需的的的相关的时时钟,如不不同频率,不不同相位的的时钟,因因此时钟管管理单元DDCM/PPLL也是是必不可少少的内部部部件。除此此之外,FFPGA内内部还包括括接口I/O,I/O分为
5、普普通I/OO和高速II/O,高高速I/OO支持例如如高速的SSERDEES,用于于实现XAAUI,PPCIE等等高速接口口,这些接接口动辄几几Gbpss到10GGbps以以上。此外外种类多种种多样的硬硬核IP也也是各FPPGA厂商商差异化竞竞争利器,例例如POWWERPCC、ARMM等硬核IIP。从而而构成CPPU+FPPGA于一一体的集可可编程性和和可重构的的处理平台台。因此,相相对来所,FFPGA虽虽然发展有有二三十年年的历史,其其基本架构构一直不变变不大。回回到问题开开始的地方方,FPGGA的英文文翻译过来来是现场可可编程门阵阵列。这是是相对ASSIC来说说的,ASSIC的硬硬件也可看
6、看做是门阵阵列,但是是其是非可可编程的器器件。流片片完成其功功能就固化化了,而FFPGA的的可编程性性就在其能能够重新下下载配置文文件,来改改变其内在在的功能,这这就是其可可编程性的的由来。从从前端开发发流程来说说,FPGGA和ASSIC开发发并无二至至。由于AASIC开开发一次性性投入成本本较高,FFPGA无无疑是一种种经济的替替代方案,用用于实现的的高速的数数据并行处处理。如业业务能够支支撑大规模模应用并且且协议固化化,则能够够分摊成本本的ASIIC实现就就有成本的的优势。 FPPGA作为为一种器件件,技术上上主要垄断断在少数大大公司手中中,那就是是双巨头AALTERRA和XIILINXX
7、。除此之之外还有一一些份额相相对较小的的公司,例例如ACTTEL和LLATTIICE。不不止是FPPGA的硬硬件芯片,其其配套的EEDA工具具技术壁垒垒更高。因因此相对于于CPU来来说,FPPGA的国国产化更不不乐观,不不过已经有有国内的厂厂商来从事事这一行业业,例如国国微和京微微雅格等,也也在一些细细分市场上上推出自己己的FPGGA产品。FPGA和和他那些小小伙伴们 (一) 系统架构构组成通常来讲,“一一个好汉三三个帮”,一一个完整的的嵌入式系系统中由单单独一个FFPGA使使用的情况况较少。通通常由多个个器件组合合完成,例例如由一个个FPGAA+CPUU来构成。通通常为一个个FPGAA+AR
8、MM,ARMM负责软件件配置管理理,界面输输入外设操操作等操作作,FPGGA负责大大数据量运运算,可以以看做CPPU的专用用协处理器器来使用,也也常会用于于扩展外部部接口。常常用的有AARM+FFPGA,DDSP+FFPGA,或或者网络处处理器+FFPGA等等种种架构构形式,这这些架构形形式构成整整个高速嵌嵌入式设备备的处理形形态。 不得不说说的是,随随着技术的的进步,现现在CPUU中集成的的单元也随随之增加,例例如TI的的“达芬奇奇”架构的的处理器内内部通常由由ARM+DSP构构成。同时时异构的处处理器形态态业逐渐流流行,如AARM9+ARM77的结构。这这类一个主主要处理系系统(ARRM9
9、)外外带辅助处处理系统(ARM77)的设计计,同样成成为现在处处理器设计计的流行方方向。主处处理系统运运行嵌入式式操作系统统,而辅助助处理单元元则专注某某一些的专专用领域的的处理。这这些系统的的应用减少少了FPGGA作为CCPU协处处理单元的的领域。因因为毕竟FFPGA相相比ARMM等流行嵌嵌入式处理理器价格要要相对较高高。 在这种情情形下,FFPGA的的厂商似乎乎也感受到到了压力,不不约而同推推出了带AARM硬核核的FPGGA,例如如ALTEERA的 和XIILINXX的ZYNNQ和ALLTERAA的SOCC FPGGA。这是是即是互相相竞争的需需要,也是是同众多CCPU厂商商一掰手腕腕的杰
10、总。即即使在这两两种在趋势势下,经典典的处理器器+FPGGA的设计计仍然可看看做为高性性能嵌入式式系统的典典型配置。 经典的的处理器+FPGAA的配置中中有多种的的架构形式式,即多个个处理器单单元,可能能是ARMM,MIPPS,或者者DSP,FFPGA也也可能是多多片的配置置,具体架架构形式于于具体处理理的业务相相关和目标标设备的定定位也相关关。因为FFPGA作作为简单业业务流大数数据量的处处理形态仍仍然是CPPU无可比比拟的优势势,FPGGA内部可可以开发大大量业务数数据并行,从从而实现高高速的数据据处理。 在实现高高速处理方方面,CPPU的另一一个发展趋趋势是多核核,多核处处理器也能能处理
11、大数数据量的业业务的并行行,例如业业界TERRILA已已推出644核的多核核处理器,采采用MIPPS处理器器,通过二二维MASSH网络连连接在一起起,形成NNOC的结结构。在性性能上已经经和现有的的高速FPPGA的处处理能力上上不相上下下。但是多多核处理器器的不得不不说的问题题就是,同同一业务流流分配到多多核处理上上后,如需需交互,例例如访问同同一资源,就就会造成读读写的缓存存一致的问问题,解决决的这一问问题的天然然思路是加加锁,即在在变量访问问上加自旋旋锁,但是是带来的问问题就是处处理性能的的急剧下降降。而FPPGA无论论并行处理理和同一变变量的访问问,都可以以变成工程程师的设计计水平的问问
12、题,没有有原理性的的挑战。 没有有一种器件件可以满足足全人类的的众多需求求,因此不不用担心FFPGA没没有用武之之地。必定定是一系列列产品的组组合。下面面主要介绍绍一下FPPGA可以以作为现今今热门场景景的几种应应用。(1)网络络存储产品品,特别是是现在的NNAS,或或者SANN设备上,其其存储的时时间、接口口、安全性性等都要求求较高,而而FPGAA无论处理理性能还是是扩展接口口的能力都都使其在这这一领域大大有作为。现现在高端FFPGA单单片就可以以扩展322个或者更更多4G或或者8G的的FC接口口。并且其其协议处理理相对的固固定,也使使FPGAA在这一领领域有大量量的可能应应用。(2)高速速
13、网络设备备,现在高高速网络设设备10GG、40/100GG以太网设设备领域,同同样FPGGA也是关关键的处理理部件。特特别是IPPv6的商商用化及大大数据对于于基础设施施的高要求求,都使这这一领域的的处理应用用会逐渐广广泛,这一一领域通常常是高速网网络处理器器(NP)+FPGAA的典型架架构。(3)4GG等通信设设备,对于于新一代通通信基站的的信号处理理,FPGGA+DSSP阵列的的架构就是是绝配。特特别是在专专用处理芯芯片面世之之前,这样样的架构可可以保证新新一代通信信基础设施施的迅速研研发和部署署。 没有完完美的架构构,只有合合适的组合合,各种芯芯片和架构构都是为应应用服务,互互相的渗透透
14、是趋势,也也是必然。FFPGA相相对处理器器的可编程程领域,仍仍然属于小小众(虽然然人数也不不少)。但但是正像一一则笑话所所说:大腿腿虽然比根根命根子粗粗,但决没没有命子重重要。这算算开个玩笑笑。FPGGA的实现现为以后的的芯片化留留下了许多多可能和想想象空间,从从而在应用用大量爆发发时通过芯芯片化来大大幅降低成成本,这这这也正是其其他可编程程器件所不不能比拟的的。FPGA和和他那些小小伙伴们 (二) 器件互联联系统架构确确定,下一一步就是FFPGA与与各组成器器件之间互互联的问题题了。通常常来说,CCPU和FFPGA的的互联接口口,主要取取决两个要要素: (11)CPUU所支持的的接口。 (
15、22)交互的的业务。 通常来来说,FPPGA一般般支持与CCPU连接接的数字接接口,其常常用的有EEMIF,PPCI,PPCI-EE,UPPP,网口(MMII/GGMII/RGMIII),DDDR等接接口。作为为总线类接接口,FPPGA通常常作为从设设备与CPPU连接,CCPU作为为主设备通通过访问直直接映射的的地址对FFPGA进进行访问。根根据是否有有时钟同步步,通常总总线访问分分为同步或或异步的总总线,根据据CPU外外部总线协协议有所不不同,但数数据、地址址、控制信信号基本是是总线访问问类型中总总线信号所所不能省略略的。CPPU手册中中会对信号号定义和时时序控制有有着详细的的说明,FFPG
16、A需需要根据这这些详细说说明来实现现相应的逻逻辑。同时时CPU还还可以对访访问时序进进行设置,比比如最快时时钟,甚至至所需的最最小建立时时间和保持持时间,这这些一般CCPU都可可以进行设设置,而这这些具体参参数,不仅仅影响FPPGA的实实现,也决决定总线访访问的速度度和效率。对对于同步总总线,只需需要根据输输入时钟进进行采样处处理即可,但但对于异步步总线,则则需要的对对进入的控控制信号进进行同步化化处理,通通常处理方方式是寄存存两拍,去去掉毛刺。因因此用于采采样的时钟钟就与CPPU所设置置的总线参参数相关,如如采样时钟钟较低,等等控制信号号稳定后在在译码后输输出,一个个总线操作作周期的时时间就
17、会相相对较长,其其处理的效效率也相对对较低;假假如采样时时钟过快,则则对关键路路径又是一一个挑战,因因此合理设设定采样频频率,便于于接口的移移植并接口口的效率是是设计的关关键点和平平衡点。 对于总总线型的访访问来说,数数据信号通通常为三态态信号,用用于输入和和输出。这这种设计的的目的是为为了减少外外部连线的的数量。因因为数据信信号相对较较多一般为为8/166/32位位数据总线线。总线的的访问的优优势是直接接映射到系系统的地址址区间,访访问较为直直观。但相相对传输速速率不高,通通常在几十十到1000Mbpss以下。这这种原因的的造成主要要为以下因因素(1)受受制总线访访问的间隔隔,总线操操作周期
18、等等因素,总总线访问间间隔即两次次访问之间间总线空闲闲的时间,而而总线操作作周期为从从发起到相相应的时间间。(2)不不支持双向向传输,并并且FPGGA需主动动发起对CCPU操作作时,一般般只有发起起CPU的的中断处理理一种方式式。这种总总线型操作作特点,使使其可以用用作系统的的管理操作作,例如FFPGA内内部寄存器器配置,运运行过程中中所需参数数配置,以以及数据流流量较小的的信息交互互等操作。这这些操作数数据量和所所需带宽适适中,可以以应对普通通的嵌入式式系统的处处理需求。 对于大数数据流量的的数据交互互,一般采采用专用的的总线交互互,其特点点是,支持持双向传输输,总线传传输速率较较快,例如如
19、GMIII/RGMMII、UUpp、专专用LVDDS接口,及及SERDDES接口口。专用SSERDEES接口一一般支持的的有PCII-E,XXAUI,SSGMIII,SATTA,Innterllakenn接口等接接口。GMMII/RRGMIII,专用LLVDS接接口一般处处理在1GGbpS一一下的业务务形式,而而PCI-E,根据据其型号不不同,支持持几Gbpps的传输输速率。而而XAUII可支持到到10Gbbps的传传输速率,llnterrlakeen接口可可支持到440Gbpps的业务务传输。 对于不不同所需的的业务形式式及处理器器的类型,则则可选择相相应的接口口形式,来来传输具体体的业务。
20、现现今主流FFPGA中中都提供的的各种接口口的IP。选选择FPGGA与各型型CPU互互联接口,一一般选择主主流的应用用交互方案案,特殊的的接口缺少少支撑IPP,导致开开发、调试试、维护和和兼容性的的成本都较较大,同时时注意系统统的持续演演进的需要要,如只在在本项目使使用一次,而而下一项目目或开发阶阶段已摒弃弃此类接口口,则需提提前规划技技术路线。毕毕竟一个稳稳定、高效效的接口互互联是一个个项目成功功的基础。 不是所有有的嵌入式式系统都需需要“高大大上”的接接口形式,各各类低速的的稳定接口口也同样在在FPGAA的接口互互联中有着着重要的角角色,其中中UARTT、SPII、I2CC等连接形形式也非
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- FPGA 研发 人心 总结 DOC55 12688
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内