网站导航

技术文章

当前位置:主页 > 技术文章 >
一文详解FPGA的设计与应用
时间:2023-05-25 00:46 点击次数:
本文摘要:FPGA(Field-ProgrammableGateArray),即现场可编程门阵列,它是在PAL、GAL、CPLD等可编程器件的基础上更进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半自定义电路而经常出现的,既解决问题了自定义电路的严重不足,又解决了原先可编程器件门电路数受限的缺点。所以,要想要你好FPGA,就必需解读FPGA内部的工作原理,自学如何利用这些单元构建简单的逻辑设计。

威尼斯欢乐娱人城官网

FPGA(Field-ProgrammableGateArray),即现场可编程门阵列,它是在PAL、GAL、CPLD等可编程器件的基础上更进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半自定义电路而经常出现的,既解决问题了自定义电路的严重不足,又解决了原先可编程器件门电路数受限的缺点。所以,要想要你好FPGA,就必需解读FPGA内部的工作原理,自学如何利用这些单元构建简单的逻辑设计。

  (一)FPGA的工作原理  FPGA一般来说比ASIC(专用构建芯片)的速度要快,无法已完成简单的设计,但是功耗较低。但是他们也有很多的优点比如可以较慢成品,可以被改动来修正程序中的错误和更加低廉的耗资。厂商也可能会获取低廉的但是编辑能力差的FPGA.因为这些芯片有较为劣的可编辑能力,所以这些设计的研发是在普通的FPGA上已完成的,然后将设计移往到一个类似于ASIC的芯片上。

  FPGA使用了逻辑单元阵列LCA(LogicCellArray)这样一个概念,内部还包括可配备逻辑模块CLB(ConfigurableLogicBlock)、输入输出模块IOB(InputOutputBlock)和内部连线(Interconnect)三个部分。现场可编程门阵列(FPGA)是可编程器件,与传统逻辑电路和门阵列(如PAL,GAL及CPLD器件)比起,FPGA具备有所不同的结构。

FPGA利用小型查询表格(161RAM)来构建人组逻辑,每个查询表格相连到一个D触发器的输出末端,触发器再行来驱动其他逻辑电路或驱动I/O,由此包含了既可实现人组逻辑功能又可实现时序逻辑功能的基本逻辑单元模块,这些模块间利用金属连线相互相连或相连到I/O模块。FPGA的逻辑是通过向内部静态存储单元读取编程数据来构建的,存储在存储器单元中的值要求了逻辑单元的逻辑功能以及各模块之间或模块与I/O间的连接起来方式,并最后要求了FPGA足以构建的功能,FPGA容许无限次的编程。  (二)FPGA设计的基础问题  FPGA的基础就是数字电路和VHDL语言,想要懂FPGA的人,建议床头都有一本数字电路的书,不管是哪个版本的,这个是基础,多理解也有助构成硬件设计的思想。

在语言方面,建议初学者自学Verilog语言,VHDL语言语法规范严苛,调试一起极快,Verilog语言更容易上手,而且,一般大型企业都是用Verilog语言,VHDL语言规范,易读性强劲,所以一般军工都用VHDL.  1、工具问题  熟知几个常用的就可以的,研发环境QuartusII,或ISE就可以了,这两个基本是相连的,不会了哪一个,另外的那个也就很Easy了。功能建模建议用于Modelsim,如果你是做到芯片的,就可以学学别的建模工具,做到FPGA的,Modelsim就充足了。综合工具一般用Synplify,初学再行不必过于关心这个,用Quartus综合就OK了。

  2、思想问题  对于初学者,尤其就是指软件切线来的,设计的程序既费资源又速度慢,而且很有可能综合没法,这就拒绝我们熟知一些相同模块的读音,可综合的模块很多书上都有,语言讲解上都有,不要想当然的用软件的思想去写出硬件。  3、习惯问题  FPGA自学要多锻炼,多建模,signaltapII是很好的工具,可以看见每个信号的现实值,建议初学者一定要自己多动手,光整天是不行的。关于英文文档问题,如果要学会QuartusII的所有功能,只要看它的handbook就可以了,很详尽,对于IT行业的人,大部分科学知识来源都是英文文档,一定要冷静看,不会借此进账很多的。

  4、算法问题  做到FPGA的工程师,最后一般都是专攻算法了,这些基础知识都是挑捏来的,如果你没作好做理论的打算,学FPGA一直不能逗留在初级阶段上。对于初学者,数字信号处理是基础,应当只想解读,往加深的方向,不必什么都习,根据你以后专门从事的方向,比如说通信、图像处理,雷达、声纳、导航系统定位等。  (三)FPGA的配备模式  FPGA有多种配备模式:分段主模式为一片FPGA特一片EPROM的方式;主从模式可以反对一片PROM编程多片FPGA;串行模式可以使用串行PROM编程FPGA;外设模式可以将FPGA作为微处理器的外设,由微处理器对其编程。  如何构建较慢的时序发散、降低功耗和成本、优化时钟管理并减少FPGA与PCB分段设计的复杂性等问题,仍然是使用FPGA的系统设计工程师必须考虑到的关键问题。

如今,随着FPGA向更高密度、更大容量、更加低功耗和构建更好IP的方向发展,系统设计工程师在从这些出色性能受益的同时,被迫面临由于FPGA前所未有的性能和能力水平而带给的新的设计挑战。  (四)FPGA设计的三大法则  第一面积与速度的交换  这里的面积所指的是FPGA的芯片资源,还包括逻辑资源和I/O资源等;这里的速度所指的是FPGA工作的最低频率(和DSP或者ARM有所不同,FPGA设计的工作频率是不相同的,而是和设计本身的延后密切连接)。在实际设计中,用于大于的面积设计出有最低的速度是每一个开发者执着的目标,但是鱼和熊掌不能兼得,取舍之间展出了一个开发者的智慧。

  1.速度换面积  速度优势可以交换条件面积的节约。面积就越小,就意味著可以用更加较低的成本来构建产品的功能。速度换面积的原则在一些较简单的算法设计中经常不会中用。

在这些算法设计中,流水线设计经常是必需中用的技术。在流水线的设计中,这些被重复使用但是用于次数有所不同的模块将不会闲置大量的FPGA资源。对FPGA的设计技术展开改建,将被重复使用的算法模块提炼出大于的适配单元,并利用这个大于的高速替换原设计中被重复使用但次数有所不同的模块。

当然,在改建的过程中必定不会减少一些其他的资源来构建这个替换的过程。但是只要速度具备优势,那么减少的这部分逻辑仍然需要构建减少面积提升速度的目的。  可以看见,速度换面积的关键是高速基本单元的适配。


本文关键词:威尼斯欢乐娱人城官网,一文,详解,FPGA,的,设计,与,应用,FPGA

本文来源:威尼斯wnsr888-www.88shangsheng.com

如果您有任何问题,请跟我们联系!

联系我们

Copyright © 2001-2022 www.88shangsheng.com. 威尼斯wnsr888科技 版权所有 备案号:ICP备98386283号-2

地址:陕西省渭南市分宜县最赛大楼7050号

在线客服 联系方式 二维码

服务热线

022-41363072

扫一扫,关注我们