fpga工程师年终总结.docx

上传人:b****1 文档编号:14339370 上传时间:2023-06-22 格式:DOCX 页数:24 大小:39.60KB
下载 相关 举报
fpga工程师年终总结.docx_第1页
第1页 / 共24页
fpga工程师年终总结.docx_第2页
第2页 / 共24页
fpga工程师年终总结.docx_第3页
第3页 / 共24页
fpga工程师年终总结.docx_第4页
第4页 / 共24页
fpga工程师年终总结.docx_第5页
第5页 / 共24页
fpga工程师年终总结.docx_第6页
第6页 / 共24页
fpga工程师年终总结.docx_第7页
第7页 / 共24页
fpga工程师年终总结.docx_第8页
第8页 / 共24页
fpga工程师年终总结.docx_第9页
第9页 / 共24页
fpga工程师年终总结.docx_第10页
第10页 / 共24页
fpga工程师年终总结.docx_第11页
第11页 / 共24页
fpga工程师年终总结.docx_第12页
第12页 / 共24页
fpga工程师年终总结.docx_第13页
第13页 / 共24页
fpga工程师年终总结.docx_第14页
第14页 / 共24页
fpga工程师年终总结.docx_第15页
第15页 / 共24页
fpga工程师年终总结.docx_第16页
第16页 / 共24页
fpga工程师年终总结.docx_第17页
第17页 / 共24页
fpga工程师年终总结.docx_第18页
第18页 / 共24页
fpga工程师年终总结.docx_第19页
第19页 / 共24页
fpga工程师年终总结.docx_第20页
第20页 / 共24页
亲,该文档总共24页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

fpga工程师年终总结.docx

《fpga工程师年终总结.docx》由会员分享,可在线阅读,更多相关《fpga工程师年终总结.docx(24页珍藏版)》请在冰点文库上搜索。

fpga工程师年终总结.docx

fpga工程师年终总结

fpga工程师年终总结

  篇一:

FPGA研发牛人心得总结

  FPGA研发之道

  FPGA是个什么玩意?

FPGA是个什么玩意?

  首先来说:

  FPGA是一种器件。

其英文名feildprogramablegatearry。

很长,但不通俗。

通俗来说,是一种功能强大似乎无所不能的器件。

通常用于通信、络、图像处理、工业控制等不同领域的器件。

就像ARM、DSP等嵌入式器件一样,成为无数码农码工们情感倾泻而出的代码真正获得生命的地方。

只不过,一样的编程,却是不一样的思想。

嵌入式软件人员看到的是C。

而FPGA工程师看到是硬件描述语言,verilog或VHDL。

软件看到是函数、对象、重构。

FPGA工程师则是模块、流水、复用。

从现象上看,都是代码到下载程序再到硬件上运行。

不能只看现象而忽略本质。

FPGA开发本质上是设计一颗IC,“**的身子,丫鬟的命”不是所有verilog/VHDL代码,都能获得青睐去流片成为真正的芯片,而更多的则成为运行在FPGA器件上,成为完成相同功能的替代品。

其实现的功能却一点也不逊色于百万身价流片的近亲。

从而成为独树一帜的行业。

  FPGA开发的流程,是通过verilog/VHDL等硬件描述语言通过EDA工具编译、综合、布局布线成为下载文件,最终加载到FPGA器件中去,完成所实现的功能。

那硬件描述语言描述的是什么?

这里描述的就是组合逻辑电路和时序逻辑电路。

组合逻辑电路就是大家所熟知的与门、或门、非门。

时序逻辑电路则是触发器。

数字芯片上绝大部分逻辑都是这两种逻辑实现的。

也就是基本上每个电子行业的人所学过的数字电路。

顺便说一下,感谢香农大师,在其硕士毕业论文就奠定了数字电路的的根基。

  不过在FPGA中,与或非的操作变成了查找表的操作。

于是所有的数字电路变成了查找表和寄存器,这就构成了FPGA的基础。

查找表负责逻辑实现,寄存器存储电路状态。

二者配合,双剑合璧,天衣无缝。

这是最初的FPGA的雏形。

现代FPGA内部出了查找表和寄存器之外,还有RAM块,用于存储大量的数据块,这是因为RAM块较寄存器来存储大量数据更能节省芯片实现的面积。

FPGA内部的时序电路则需要时钟的输入,通常FPGA内部需要时钟种类较多,因此需要在片内产生所需的的相关的时钟,如不同频率,不同相位的时钟,因此时钟管理单元DCM/PLL也是必不可少的内部部件。

除此之外,FPGA内部还包括接口I/O,I/O分为普通I/O和高速I/O,高速I/O支持例如高速的SERDES,用于实现XAUI,PCIE等高速接口,这些接口动辄几Gbps到10Gbps以上。

此外种类多种多样的硬核IP也是各FPGA厂商差异化竞争利器,例如POWERPC、ARM等硬核IP。

从而构成CPU+FPGA于一体的集可编程性和可重构的处理平台。

因此,相对来所,FPGA虽然发展有二三十年的历史,其基本架构一直不变不大。

  回到问题开始的地方,FPGA的英文翻译过来是现场可编程门阵列。

这是相对ASIC来说的,ASIC的硬件也可看做是门阵列,但是其是非可编程的器件。

流片完成其功能就固化了,而FPGA的可编程性就在其能够重新下载配置文件,来改变其内在的功能,这就是其可编程性的由来。

从前端开发流程来说,FPGA和ASIC开发并无二至。

由于ASIC开发一次性投入成本较高,FPGA无疑是一种经济的替代方案,用于实现的高速的数据并行处理。

如业务能够支撑大规模应用并且协议固化,则能够分摊成本的ASIC实现就有成本的优势。

FPGA作为一种器件,技术上主要垄断在少数大公司手中,那就是双巨头ALTERA和XILINX。

除此之外还有一些份额相对较小的公司,例如ACTEL和LATTICE。

不止是FPGA的硬件芯片,其配套的EDA工具技术壁垒更高。

因此相对于CPU来说,FPGA的国产化

  更不乐观,不过已经有国内的厂商来从事这一行业,例如国微和京微雅格等,也在一些细分市场上推出自己的FPGA产品。

  FPGA和他那些小伙伴们

(一)系统架构组成通常来讲,“一个好汉三个帮”,一个完整的嵌入式系统中由单独一个FPGA使用的情况较少。

通常由多个器件组合完成,例如由一个FPGA+CPU来构成。

通常为一个FPGA+ARM,ARM负责软件配置管理,界面输入外设操作等操作,FPGA负责大数据量运算,可以看做CPU的专用协处理器来使用,也常会用于扩展外部接口。

常用的有ARM+FPGA,DSP+FPGA,或者络处理器+FPGA等种种架构形式,这些架构形式构成整个高速嵌入式设备的处理形态。

  不得不说的是,随着技术的进步,现在CPU中集成的单元也随之增加,例如TI的“达芬奇”架构的处理器内部通常由ARM+DSP构成。

同时异构的处理器形态业逐渐流行,如ARM9+ARM7的结构。

这类一个主要处理系统(ARM9)外带辅助处理系统(ARM7)的设计,同样成为现在处理器设计的流行方向。

主处理系统运行嵌入式操作系统,而辅助处理单元则专注某一些的专用领域的处理。

这些系统的应用减少了FPGA作为CPU协处理单元的领域。

因为毕竟FPGA相比ARM等流行嵌入式处理器价格要相对较高。

  在这种情形下,FPGA的厂商似乎也感受到了压力,不约而同推出了带ARM硬核的FPGA,例如ALTERA的和XILINX的ZYNQ和ALTERA的SOCFPGA。

这是即是互相竞争的需要,也是同众多CPU厂商一掰手腕的杰总。

即使在这两种在趋势下,经典的处理器+FPGA的设计仍然可看做为高性能嵌入式系统的典型配置。

  经典的处理器+FPGA的配置中有多种的架构形式,即多个处理器单元,可能是ARM,MIPS,或者DSP,FPGA也可能是多片的配置,具体架构形式于具体处理的业务相关和目标

  设备的定位也相关。

因为FPGA作为简单业务流大数据量的处理形态仍然是CPU无可比拟的优势,FPGA内部可以开发大量业务数据并行,从而实现高速的数据处理。

  在实现高速处理方面,CPU的另一个发展趋势是多核,多核处理器也能处理大数据量的业务的并行,例如业界TERILA已推出64核的多核处理器,采用MIPS处理器,通过二维MASH络连接在一起,形成NOC的结构。

在性能上已经和现有的高速FPGA的处理能力上不相上下。

但是多核处理器的不得不说的问题就是,同一业务流分配到多核处理上后,如需交互,例如访问同一资源,就会造成读写的缓存一致的问题,解决的这一问题的天然思路是加锁,即在变量访问上加自旋锁,但是带来的问题就是处理性能的急剧下降。

而FPGA无论并行处理和同一变量的访问,都可以变成工程师的设计水平的问题,没有原理性的挑战。

没有一种器件可以满足全人类的众多需求,因此不用担心FPGA没有用武之地。

必定是一系列产品的组合。

下面主要介绍一下FPGA可以作为现今热门场景的几种应用。

  

(1)络存储产品,特别是现在的NAS,或者SAN设备上,其存储的时间、接口、安全性等都要求较高,而FPGA无论处理性能还是扩展接口的能力都使其在这一领域大有作为。

现在高端FPGA单片就可以扩展32个或者更多4G或者8G的FC接口。

并且其协议处理相对的固定,也使FPGA在这一领域有大量的可能应用。

  

(2)高速络设备,现在高速络设备10G、40/100G以太设备领域,同样FPGA也是关键的处理部件。

特别是IPv6的商用化及大数据对于基础设施的高要求,都使这一领域的处理应用会逐渐广泛,这一领域通常是高速络处理器(NP)+FPGA的典型架构。

  (3)4G等通信设备,对于新一代通信基站的信号处理,FPGA+DSP阵列的架构就是绝配。

特别是在专用处理芯片面世之前,这样的架构可以保证新一代通信基础设施的迅速研发和部署。

  没有完美的架构,只有合适的组合,各种芯片和架构都是为应用服务,互相的渗透是趋势,也是必然。

FPGA相对处理器的可编程领域,仍然属于小众(虽然人数也不少)。

但是正像一则笑话所说:

大腿虽然比根命根子粗,但决没有命子重要。

这算开个玩笑。

FPGA的实现为以后的芯片化留下了许多可能和想象空间,从而在应用大量爆发时通过芯片化来大幅降低成本,这这也正是其他可编程器件所不能比拟的。

  FPGA和他那些小伙伴们

(二)器件互联系统架构确定,下一步就是FPGA与各组成器件之间互联的问题了。

通常来说,CPU和FPGA的互联接口,主要取决两个要素:

  

(1)CPU所支持的接口。

  

(2)交互的业务。

  通常来说,FPGA一般支持与CPU连接的数字接口,其常用的有EMIF,PCI,PCI-E,UPP,口(MII/GMII/RGMII),DDR等接口。

作为总线类接口,FPGA通常作为从设备与CPU连接,CPU作为主设备通过访问直接映射的地址对FPGA进行访问。

根据是否有时钟同步,通常总线访问分为同步或异步的总线,根据CPU外部总线协议有所不同,但数据、地址、控制信号基本是总线访问类型中总线信号所不能省略的。

CPU手册中会对信号定义和时序控制有着详细的说明,FPGA需要根据这些详细说明来实现相应的逻辑。

同时CPU还可以对访问时序进行设置,比如最快时钟,甚至所需的最小建立时间和保持时间,这些一般CPU都可以进行设置,而这些具体参数,不仅影响FPGA的实现,也决定总线访问的速度和效率。

对于同步总线,只需要根据输入时钟进行采样处理即可,但对于异步总线,则需要的对进入的控制信号进行同步化处理,通常处理方式是寄存两拍,去掉毛刺。

因此用于采样的时钟就与CPU所设置的总线参数相关,如采样时钟较低,等控制信号稳定后在译码后输出,

  篇二:

最近也面试了很多FPGA工程师

  最近也面试了很多FPGA工程师,没找到合适,我觉得很多人从开始的时候就误入歧途了,对新手学习FPGA设计我也说一点看法吧。

我认为要从基础开始做,基础牢,才有成为高手的可能。

  我觉得有以下几步必须要走:

  第一步:

学习了解FPGA结构,FPGA到底是什么东西,芯片里面有什么,不要开始就拿个开发板照着别人的东西去编程。

很多开发板的程序写的很烂,我也做过一段时间的开发板设计,我觉得很大程度上,开发板在误人子弟。

不过原厂提供的正品开发板,代码很优秀的,可以借鉴。

只有了解了FPGA内部的结构才能明白为什么写Verilog和写C整体思路是不一样的。

  第二步:

掌握FPGA设计的流程。

了解每一步在做什么,为什么要那么做。

很多人都是不就是那几步吗,有什么奇怪的?

呵呵,我想至少有一半以上的人不知道synthesize和traslate的区别吧。

  了解了FPGA的结构和设计流程才有可能知道怎么去优化设计,提高速度,减少资源,不要急躁,不要去在为选择什么语言和选择哪个公司的芯片上下功夫。

语言只是一个表达的方式,重要的是你的思维,没有一个好的指导思想,语言用得再好,不过是个懂语言的人。

  第三步:

开始学习代码了。

我建议要学代码的人都去Altera或Xilinx的站上下原厂工程师的代码学习。

不要一开始就走入误区。

  个人愚见,欢迎大家讨论。

  做fpga主要是要有电路的思想,作为初学者,往往对器件可能不是熟悉,那么应该对于数字电路的知识很熟悉吧,fpga中是由触发器和查找表以及互联线等基本结构组成的,其实在我们在代码里面能够看到的就是与非门以及触发器,不要把verilog和c语言等同起来,根本就是不同的东西,没有什么可比性,在写一句程序的时候应该想到出来的是一个什么样的电路,计数器选择器三态门等等,理解时序,逻辑是一拍一拍的东西,在设计初期想的不是很清楚的时候可以画画时序图,这样思路会更加的清晰,还有就是仿真很重要,

  不要写完程序就去往fpga中去加载,首先要仿真,尤其是对比较大型一点的程序,想像自己是在做asic,是没有二次机会的,所以一定要把仿真做好,

  还有很多新手对于语言的学习不知道选vhdl好还是verilog好,个人偏好verilog,当然不是说vhdl不好,反正写出来的都是电路,那当然就不要在

  语言的语法上面花太多的功夫了,verilog言简意赅

  assignalwayscaseifelse掌握这些几乎可以写出90%的电路了,

  上面是我的一些愚见,希望对大家有所帮助做一块板子,实现一个协议,先从

  简单入手,譬如RS232,然后到复杂,PCI协议,然后再设计一些高速的,譬如ddrsdram,基本上你对fpga的了解就已经很深了

  能搞到51,MEGA,STM32的源码和相关库,就小CASE啦,编译--》综合--》下载,OL

  学习FPGA最重要的是要了解综合和时序仿真,你熟知你写的每个进程到RTL级中都会综合成什么样的电路,只有这样你才能使用有限的资源设计出好的逻辑硬件。

  篇三:

一个合格的FPGA工程师需要掌握哪些知识

  一个合格的FPGA工程师需要掌握哪些知识?

这里根据自己的一些心得总结一下,其他朋友可以补充啊。

  语言及其于硬件电路之间的关系。

  2.器件结构(最好熟练掌握Spartan3,Vertix4系列的器件结构,及其资源于Verilog行为描述方法的关系。

)。

  3.开发工具(熟练掌握Synplify,Quartus,ISE,Modelsim)。

  4.数字电路(组合电路,触发器,特别是D触发器构成分频器,奇数倍分频占空比为50%,时序电路,并且能用Verilog语言描叙。

)。

  5.熟悉FPGA设计流程(仿真,综合,布局布线,时序分析)。

  6.熟练掌握资源估算(特别是slice,lut,ram等资源的估算)。

  7.同步设计原理。

  8.熟练掌握基本概念(如建立时间,保持时间,流量(即所做FPGA设计的波特率)计算,延迟时间计算(所做FPGA设计),竞争冒险,消除毛刺的方法等等)。

  9.具备具体设计经验(对应届生而言如毕业设计)。

  10.良好的设计思路(流水线设计即熟称打拍子,在速率资源功耗之间的折中考虑)。

  一个合格的FPGA工程师至少在以下三个方面的一个非常熟悉:

  1.嵌入式应用

  应用

  3.高速收发器应用

  将自己的走过的弯路和总结的经验与大家分享一下,希望对您有一点点

  的参考价值。

  首先从先从如何成为一个合格的设计者说起吧!

初学者觉得一切都是挑战,一切都新鲜,不知从何处下手。

我总结了学习EDA逻辑设计的4个步骤,请拍砖!

  1。

首先,应该好好学习一下FPGA/CPLD的设计设计流程。

不要简单的以为就是设计输入-》仿真-》综合-》实现那么一回事,要抠细,要学精,要多问每个步骤的注意事项,区分相关步骤的联系和区别。

比如要搞清楚功能仿真、综合后仿真、Translate后仿真、Map后的仿真、布局布线后仿真的作用都是什么,什么时候应该做,什么时候可以不做这些仿真!

学习清楚了设计流程最大的好处就是有利于培养良好的EDA设计习惯,日后会受益非浅!

  2。

关于设计输入和CodingStyle。

  设计输入最好学习HDL语言,Verilog、VHDL都可以,可以把状态机输入和原理图输入作为补充内容,但不是重点。

我在前面的帖子已经反复强调了CodingStyle的重要性。

因为它是逻辑设计人员的一个基本业务素质。

而且CodingStyle不是看几篇文章,学几条原则就能够成为高手的,他需要您在工作中不断的体会和积累,在学习的最初,有CodingStyle的意识,设计者就会有意的积累,对日后发展很有好处。

反之则后患无穷。

  3。

培养硬件的意识,培养系统的观念。

  我也在交流和授课的时候很强调硬件意识,如果从形式上看,逻辑设计随着智能化和优化手段的不断发展最后会越来越灵活,越来越简单。

  如我们现在在使用大型FPGA时就很少谈如何用Floorplanner优化,手动布线,如果用手动方式,其工作量太大了啊!

一个设计的优劣,关键看其设计者的硬件意识,和系统意识。

硬件意识就是要求先做到对设计的硬件胸有成竹,HDL代码仅仅是一个表述心中硬件的工具。

系统意识要求设计者有宏观的观念,对设计的全局有个合适的安排,比如时钟域,模块复用,约束,面积,速度等问题。

要知道在系统上复用模块节省的面积远比在代码上小打小闹来的实惠得多。

  4。

最后才是工具软件的使用。

  现在EDA软件都越来越友好,越来越“傻瓜化”,如果您费了1年还没有基本摸清软件的使用,我敢说,那是一个比较烂的软件(起码在用户接口上),因为这是和EDA这种方式的理念背道而驰的。

但是作为设计者,软件是工具,应该熟练掌握各个步骤不同方面的软件,这样才能最大程度地发挥您的聪明才智,才能使您如虎添翼!

需要对相关器件的要有一定的了解,对和这些器件之间的控制、数据交换等通信要清晰,对性能和功能清楚。

而且作为基本的素质要求要能看懂原理图,和PCB要不没法调试,呵呵。

  另外比较重要的一点是对FPGA设计的一些基本原则要有一个清晰的认识,比如:

  “面积和速度的互换”,“流水线设计方式”,“乒乓操作”。

  对最基本和最常用的模块要非常熟悉,比如单口/双口RAM,同步/异步FIFO等等。

  除了问题要多想想自己的设计。

虽然综合,布线工具的性能有差异,但是一个设计的优劣根本还是设计者的思路是否巧妙。

当我们的设计达不到要求或者性能太差的时候,请不要埋怨综合工具太滥,布线结果太差,因为工具不会想人那么聪明。

这时候,我们应该静下心,想一下自己的设计是不是有什么问题,结构是否合理,代码的风格是否符合工具的要求。

系统结构的改进带来的优化远远超过最好的优化工具所能达到的结果

  篇四:

FPGA工程师如何_写简历的几点建议

  FPGA工程师如何写简历的几点建议(转载)

  FPGA工程师如何写简历的几点建议(转载)

  rickyice发表于XX-11-1010:

18:

00

  本来是给下面一篇帖子的回复,写了写,觉得还是放在前面,看得人会多点。

  我做了10年的FPGA了,中间也做过ASIC(前端),DSP也有10年了,嵌入式短些,只有2年。

在小公司待过,也在大公司待过,给别人写过简历,也收过简历,有一点心得,写出来和大家分享

  1、首先要确认你的竞争力,下面的帖子在问是否会被大公司看中,你说的知名大公司指的是哪些公司?

各公司的业务范围和需求都不一样。

大小也很难从人数和资产上界定,我认识一个公司只有80人,但是在业界绝对是老大,别的公司设计产品都要借鉴一下他们的。

招聘的重点是看你是否能适应公司的业务,所以,写简历的第一点是简历要有侧重点,不能只有一份,ASIC工程师和FPGA工程师的要求就不一样,其中分前端工程师、后端工程师、编码工程师、算法工程师、测试工程师等等,要求不一样,你都投一份简历,就很难从HR那里被送到实际要招人的组长手里,HR会觉得你专业或经历不适合。

这是刚出校门的人简历最大的弊病。

  2、大部分人简历最大的问题是只有做过的项目简介,但是没有描述你的工作和最后的效果。

要知道真正招人的很关心

  你做过哪些项目,主要关心的是在项目中做了什么,达到了什么效果。

比如我以前收到的简历就有写做过ASIC的,但是一看时间只有3个月,根本不可能做完,再问问做的内容,主要是做测试,这样写是不行的。

  3、另外还有效果,每一个设计应该是功能和性能的结合。

最后要描述你实现了哪些功能和效率有多高。

这样人家起码会认为你是个严谨的工程师,无论ASIC还是FPGA,最后的性能报告都是很重要的。

比如E1的接口设计,很多人都会做,但是你能实现得比别人效率高、或者面积小,就能说明你的能力。

这也是面试时公司会去了解的重点,这样连后面的面试你也会占优势。

  4、一个公司的招聘流程(真正招人的,不是为了人才储备的)一般不会搞海选,HR把认为基本符合要求的简历给要人的组长,他看好了才会通知面试,而这些人都是资深工程师,你的项目他一看就知道有没有水分,一般有水分的都难以面试,因为组长需要的工程师是能干活少吹牛的,写明白你在以前的项目中做了什么有很多好处,没人指望刚毕业的就什么都会,只要组长觉得有潜质就有希望。

所以把你做的写清楚,组长才能看出你是否有潜质。

  5、简历里另一个误区是经验,每个公司都需要有经验的工程师,但是每个老板都知道,真正有经验的工程师报价不会低,老板可是要在能完成任务的前提下尽量解决开支的。

  以一个组常常是一个巨有经验的,带两个很有经验的,几个有点经验的,加上几个刚入门的。

所以不要夸大自己的经验,放低姿态,重点表现你的潜力,反而有利。

组长不太喜欢要很有经验的,因为会打破小组的平衡;更不喜欢巨有经验的,会踢了自己的饭碗;所以有点经验的是首选,刚入门也不错,因为比较好调教。

所以刚毕业的学生只要在简历中让人觉得有点经验就够了。

  6、简历要重点突出。

简历先给HR看,他们多半不懂技术,只是根据招人指标看是否符合,所以一定要把你符合招聘要求中的部分写成一个模块,比较靠前,HR一看见这部分就ok了,后面根本不看。

第二个看的人多半是你将来的上司,所以要把他关心的部分单独写几个模块,要详细:

你从哪毕业(学的什么就可以简略)、做过些什么、做得怎么样、会什么、程度如何、还有哪些辅助本领(技术上的),最后看的人是你的大老板,他就看看你的资历(好评价你的成本),有的企业文化好的地方会看看课外的爱好什么的(都不是主要的)。

所以要写得模块分明,字得间隔要大,标题要明显,让每个人看到他想看的,尽量少费话。

没话说宁可少说,起码给人一个简洁的映象。

要知道FPGA或者说硬件工程师大部分都是有些急脾气的,未必耐烦看完很长的简历。

  FPGA设计者的5项基本功

  得《佟林传》里,佟林练的基本功是“绕大树、解皮绳”,然后才练成了什么“鬼影随行、柳叶绵丝掌”。

  在我看来,成为一名说得过去的FPGA设计者,需要练好5项基本功:

仿真、综合、时序分析、调试、验证。

  需要强调的一点是,以上基本功是针对FPGA设计者来说的,不是针对IC设计者的。

对于IC设计,我不懂,所以不敢妄言.

  对于FPGA设计者来说,练好这5项基本功,与用好相应的EDA工具是同一过程,对应关系如下:

  1.仿真:

Modelsim,QuartusII(SimulatorTool)

  2.综合:

QuartusII(CompilerTool,RTLViewer,TechnologyMapViewer,ChipPlanner)

  3.时序:

QuartusII(TimeQues

  tTimingAnalyzer,TechnologyMapViewer,ChipPlanner)

  4.调试:

QuartusII(SignalTapIILogicAnalyzer,VirtualJTAG,AssignmentEditor)

  5.验证:

Modelsim,QuartusII(TestBenchTemplateWriter)

  掌握HDL语言虽然不是FPGA设计的全部,但是HDL语言对FPGA设计的影响贯穿于整个FPGA设计流程中,与FPGA设计的5项基本功是相辅相成的。

  对于FPGA设计者来说,用好“HDL语言的可综合子集”

  可以完成FPGA设计50%的工作——设计编码。

  练好仿真、综合、时序分析这3项基本功,对于学习“HDL语言的可综合子集”有如下帮助:

  1.通过仿真,可以观察HDL语言在FPGA中的逻辑行为。

  2.通过综合,可以观察HDL语言在FPGA中的物理实现形式。

  3.通过时序分析,可以分析HDL语言在FPGA中的物理实现特性。

  对于FPGA设计者来说,用好“HDL语言的验证子集”,可以完成FPGA设计另外50%的工作——调试验证。

  1.搭建验证环境,通过仿真的手段可以检验FPGA设计的正确性。

  2.全面的仿真验证可以减少FPGA硬件调试的工作

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 表格模板 > 合同协议

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2