微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 硬件工程师文库 > 工程师须知:FPGA 的演进、优势、设计、改进

工程师须知:FPGA 的演进、优势、设计、改进

时间:07-01 来源:互联网 点击:

本没有露出来的管脚。尤其是FPGA芯片, 256个管脚的BGA封装都算照顾你了,如果再增加一些功能,容量再大一些,一不留神就到1000多个管脚去了,光做原理图中的符号就要折腾你三天,完了还要拿着放大镜不断地检查,否则做回来的电路板极有可能是废的。这还不算,等你布局、布线的时候你会发现很多的线都是扭着的,一是难布,二是电气性能也不好,好在FPGA的管脚是可以重新配置的,修改一下管脚的定义就可以让芯片之间的联线能过做到最优。­

  当然系统的速度高了,对高速数字设计方面的知识要求就是必须的了,这里面有一个词叫"信号完整性",有几位美国大牛在这方面很有研究,其中有不少他们的著作翻译成中文了。如果你想真的理解并能够灵活应用,好好回炉去学扎实电磁场理论,不懂电磁理论,就不可能做好高速数字设计。FPGA支持各种高速串、并行总线并在很多系统中要和高速的数据、时钟进行连接,如果信号被你给搞得不完整了,整个系统性能会大大降低甚至不干活。­

  一般的系统都会有一个需要大电流的Core电压(1.2V或1.8V等,取决于工艺)和一个需要小电流的接口电压(一般是+3.3V),并且有多组不同的地。除了这些对工程师的布线提出挑战之外,还必须重视的一个部分就是锁相环(PLL/DLL),这个部分的布线是相当的关键,一旦有问题,整个系统的性能就会大打折扣,虽然数字的电路不是0就是1,可它就跑不快了。­

  2 逻辑设计:­

  最初用PLD/FPGA的时候还都是采用图形输入法,直观而原始。现在FPGA的用户基本都在采用更高级的语言 - VHDL或Verilog,这种语言高级得如同C,用起来非常容易。但是您千万不能把它当C来使唤,毕竟硬件和软件还是不同的。4年前在我做硬件工程师的时候,一个擅写DSP软件的兄弟写了一段FPGA的代码,他花了整整一页的篇幅实现了一个用硬件的思路只要4句话就可以完成的功能,搞得我苦笑不得。在这里面要时刻注意的是,FPGA内部多个功能模块都是可以并行操作的,如果用程序的思路去写,基本上会让他们排着队串着出来,当成DSP用了。­

  3 充分利用现有的资源:­

  无需争议,今天你已经不可能徒手把一个Spartan-3E中哪怕最小的系列给填满了,重新写一个I2C接口,重新做一个以太网的MAC作为锻炼还可以,在实际的项目中每个都自己去写是不可取的,如何利用现有的资源是非常重要的。首先在每个人的设计工作中要注意积累,把曾经用得不错的功能模块认真完善后写好文档以便今后自己或他人使用;再次FPGA的厂商都在配套的软件中内嵌一些免费的功能模块,根据自己的需求可以灵活地进行配置使用。当今互联网时代,信息分享成了主旋律,因此你可以方便地在一些开源的社区中找到自己需要的东西,比如在www.openhw.org社区中你就可以找到并下载很多其他FPGA同仁们开发并验证过的功能模块,如果有问题还可以在社区内同他们进行互动交流,咨询等,要把这些先进的手段都用上。当然如果公司有财力,又需要在最短的时间内推出产品,您可以到FPGA厂商的网站上,那里陈列着琳琅满目的商用IP, 这些都是FPGA厂商会同他们认证过的联盟厂商共同推出来的,您可以放心地使用。图3为Xilinx公司为消费电子领域的"数字显示屏"提供的系列IP示例。­

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top