原创 那些年,我们拿下了FPGA(上)第1章-可编程器件的历史(2)

2012-8-24 12:52 2908 14 19 分类: FPGA/CPLD 文集: 那些年,我们拿下了FPGA

 

1.3 FPGA的崛起

       还是那句话,任何一件新事物的诞生都是有一定的历史背景和市场需求的。同样,FPGA也不例外。当时一边是具有可配型高、设计和调试时间短,但是相对来说实现功能简单的SPLD和CPLD,而另一边是支持极为大规模和复杂功能但是设计很耗时、开发周期长、昂贵、专对性强的ASIC。在20世纪80年代初,Xilinx开发了第一块FPGA,并于1984年投入市场。FPGA具有两者的共同点,针对不同大小及复杂度的功能,提供了不同规模的FPGA;同时它好比一张未开发的白纸,一方面可以设计成简单的,高度可配置性,设计调试快的PLD,另一方面它可以实现巨大和复杂的,在之前只有ASIC可实现的功能,但是有别于ASIC,依然可以重配置。实际上,现在做ASIC,都是在FPGA的平台上先做验证再做后面的工序。

那么有人会有疑问,现在依然有PLD、ASIC?这就涉及到成本问题。就像为什么现在有了ARM,为什么要有依然在用51单片机一样,PLD的价格相比FPGA来讲是要便宜,同样量产的ASIC也是比FPGA要便宜很多的。

FPGA的类型从内部实现机理来讲,是可以分为几类的,具体的区别将在后面章节叙述。最开始出现的FPGA是基于静态存储器SRAM查找表的,后来才陆续出现熔丝反熔丝与FLASH的FPGA。也正因为这个,现在的基于SRAM技术的FPGA要比其他技术类型的FPGA快一代。

1.4 SOPC的盛世

所谓SOPC就是System On a Programmable-Chip即片上可编程系统。可能很多人在接触嵌入式的时候碰到这个概念,嵌入式的确是SOPC,但是这里主要指以FPGA为核心展开,加或不加其他硬件资源构成的系统,确切的将应该算是FPGA平台。

       在具体介绍各种SOPC平台的之前,先讲一下SOPC产生的原由。最开始的FPGA雏形是只具备三大基本要素,即可编程逻辑块、可编程布线资源和可编程IO。对于要抢占PLD和ASIC的市场来说,这些还远远不够,完成不了复杂的功能。随着工艺的进步,FPGA的逻辑资源规模以及逻辑资源密度的提高,在FPGA内部放一个处理器的软核成为了可能,这样在达到以往单片处理器的效果的同时还能利用剩余资源做一些快速的接口粘合。这与以往的嵌入式开发很不一样,不需要额外的片子,在同一片FPGA内即可更好的做控制,同时可按照需求配置外设接口资源,灵活性很大,从成本上考虑可以节俭一块控制器,从空间上也可以节俭很大一面积。由于在FPGA上可以添加一些固有功能的硬件资源,随着各种各样的硬件资源的加入,FPGA也就从低端慢慢发展出一些功能强大的高端芯片,从单板FPGA架构扩展到单板FPGA+CPU/DSP架构,市场竞争力大大增强。

对于不同厂家的器件可以嵌入的软核不一样,在Altera大部分型号里支持嵌入NIOS软核,而在Xilinx大部分器件里支持microblaze(早期是picoblaze)软核。

片内从低端到高端的演进另一方面是可用资源的种类的提高,比如内嵌的乘法器,它可以使一些原来利用逻辑实现的消耗的量多速度又慢的算法得到很大的优化。如图XX,在这些硬乘法器周围一般紧邻一些内嵌的RAM块,这些内嵌RAM也是为了乘法器数据输入输出专配的,减小输入输出到乘法器的延时,更加减小乘法运算时间。还有一些FPGA包含硬加法器,这样一来,利用硬乘法、加法器构成的乘加器,就可以完成很多DSP利用包含的乘加(MAC)器完成的FFT和滤波器等算法了。

 

1.3——1.jpg
 
资源种类的增多还有一个典型的就是加入了这个硬吉比特传输模块。它是用来器件与器件传输大量数据的,在传统的器件大量数据传输方式是采用总线的,最开始采用的是8位宽的总线,后来由于传输数据量的需求变大,位宽也从16位变成32、64位等。但是问题也带来了,在电路板上把这么多线布得相同的长度就变得很困难,即使长度一样,由于不同方位对噪声的敏感度不一样,也很难保证总线的信号完整性。于是,在2000年初,FPGA厂家就推出了硬吉比特传输模块。这些模块的输入输出都是以差分对的形式传单比特的形式出现,如图XXX所示,由于工作于极高的速度,每秒能传以十亿计的比特。
 
1.3——2.jpg
 

随着FPGA应用领域的扩展,更很多硬资源的加入方便了我们使用FPGA,例如硬处理器核的添加,世界上第一个加入的硬处理器是ARM,是加在Excalibur TM器件上的,后来Xilinx也从IBM引进了这个PowerPC4硬核了。随着发展,相信还有很多各种各样的硬核会加入其中来,比如滤波器硬核等。

上面所讲述的只是FPGA本身各方面的发展,下面介绍常用的FPGA平台应用架构。主要分三种,一种是FPGA+处理器的架构,这种架构如果由处理器细分的话又可以分为基于FPGA+ARM、FPGA+CPU及FPGA+GPU等。如下图所示,这样的应用架构处理器主要做一些控制调度,FPGA主要做一些接口特别是高速接口的粘合,或者在FPGA内做一些快速算法,通信系统上做一些基带的调制解调、信道编解码等。

 

1.3——3.jpg
 

第二种是基于FPGA+DSP的应用架构,如图XX所示,是一个双通道的Xilinx V4+TI 6000系列的一个硬件平台,在通信系统中一路通道做上行一路做下行。这样的架构DSP主要是做一些复杂算法,更多的是一些FFT的算法、滤波器、RS卷积等等,FPGA主要做高速数据的采集、缓存以及做一些快速性的算法。

 

1.3——4.jpg

第三种是FPNA (Field Programmable Node Arrays),它是由很多不同种的可编程节点构成,这样的新概念器件在国外也只是近十年内的事根据FPNA的相关介绍,FPNA 芯片结合了信号处理器与FPGA 配合设计的灵活性及ASIC 的高性能,把FPGA看作是LEB或LAB的阵列的话,那么FPNA就可以看作FPGA、DSP、CPU等运算、控制节点的阵列。目前QuickSilver与Picochip公司已有相关产品,关于FPNA大家可以登入它们的官方网站查找更多相关介绍。FPNA的产生需求主要是一些基站、雷达等处理数据量巨大的场合,相信在不久的将来,它的应用与推广,也值得我们关注。

 

 

 

文章评论5条评论)

登录后参与讨论

用户1824638 2015-1-9 13:58

大三通信大菜狗,伤心

345002072_353389109 2015-1-8 09:46

华为OJ没有leetcode好,leetcode给出测试用例,并且有别人的答案给你参考。不过是英文,华为OJ中文

345002072_353389109 2015-1-8 09:45

进实验室,多画板子,看经典书,研究电路,明白原理,参加电赛

用户1780481 2015-1-1 17:26

楼主你好,我现在是通信研一学生,也想进华为,能具体说说oj和leetcode吗?

用户1824420 2014-12-26 00:51

大二了,打算走硬件!!不知出路如何,楼主指点一下,谢谢

阳光守望者 2014-12-2 23:14

谢谢,我也是这想法,边工作边学习

345002072_353389109 2014-12-2 09:25

建议不要停留在51、stm32上面,往linux驱动方面深挖,到时候就是企业急需的大牛了。这方面人才少

345002072_353389109 2014-12-2 09:23

过奖了

用户573499 2014-12-1 17:07

厉害,高手就是不一样

阳光守望者 2014-11-30 20:49

那只能靠自学了,现在工作是写单片机
相关推荐阅读
用户427466 2017-04-27 10:08
EXATA/Qualnet调试方法
1、exata5.3安装**** exata-5.3-windows-installer-64bit.exe或者exata-5.3-windows-installer-32bit.exe 默认安装路...
用户427466 2015-04-01 10:57
一个工程师说走就走的西藏之旅(九)
今年终于放下了手头的工作 背上背包 来一场说走就走的旅行 在这里让更多的朋友看到 路上的故事 路上的风景 路上的陌生人 川青大环线第九天 (实时状况关注微信) ...
用户427466 2015-03-28 23:50
一个工程师说走就走的西藏之旅(八)
今年终于放下了手头的工作 背上背包 来一场说走就走的旅行 在这里让更多的朋友看到 路上的故事 路上的风景 路上的陌生人 川青大环线第八天 (实时状况关注微信) ...
用户427466 2015-03-24 23:50
一个工程师说走就走的西藏之旅(七)
今年终于放下了手头的工作 背上背包 来一场说走就走的旅行 在这里让更多的朋友看到 路上的故事 路上的风景 路上的陌生人 川青大环线第七天 (实时状况关注微信) ...
用户427466 2015-03-24 23:40
一个工程师说走就走的西藏之旅(六)
今年终于放下了手头的工作 背上背包 来一场说走就走的旅行 在这里让更多的朋友看到 路上的故事 路上的风景 路上的陌生人 川青大环线第六天 (实时状况关注微信) ...
用户427466 2015-03-23 11:25
一个工程师说走就走的西藏之旅(三)
今年终于放下了手头的工作 背上背包 来一场说走就走的旅行 在这里让更多的朋友看到 路上的故事 路上的风景 路上的陌生人 川青大环线第三天 (实时状况关注微信) ...
我要评论
5
14
关闭 站长推荐上一条 /2 下一条