打印
[Actel FPGA]

转:从这里开始了解FPGA

[复制链接]
1887|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
3B1105|  楼主 | 2011-7-4 00:49 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

感谢liumnqti大侠

第一篇——不可不看的故事在这个论坛里,看到多数朋友在讨论技术问题。但是关乎产品结构的帖子相对来说很少。实际上,现在很多产品,包括FPGA产品在内,同质化的问题也同样存在。只是一个此消彼长的过程。但是它们产品结构的不同差异,对我们的设计还是有很多大影响。我很想就这个问题来个开篇。希望大家多拍砖

我们为什么应该对FPGA感兴趣?1 l+ o: @0 E  K# B4 s/ t9 M$ M2 l" U: }$ p
首先FPGA是数字电路,尽管目前有加入所谓的ADC的功能的FPGA,但是,从主流上说, FPGA就是数字电路。 当然早期不同的公司都赋予了很多花里胡哨的名字。 PLD,EPLD,CPLD,SPLD,其实在原理上都大同小异。今天的FPGA主要有下列市场, 正是在这些市场的竞争和争夺中,由群雄争霸逐渐形成今天的三国鼎立的局面。

ASIC市场  B. g3 |' `. H' g% Q8 r' j
   现在大家可以看到很多FPGA的设计正取代更多的ASIC. v  B% S1 J8 y$ b
DSP市场
    目前主要是高端的DSP应用,今天内嵌DSP元素的FPGA,像Xilinx的Spartan3ADSP, CycloneIII,CycloneII,Stratix和Vertex等, 都可以比最快的DSP再快上个500到几千倍5 O, o9 Y# l# b; o
嵌入式CPU
     这里说的是微控制器类型的处理器, 随着FPGA单位价格的不断下降, 例如, CycloneIII中的3C5这个最小身材的家伙也可以集成一个可选定的I/O的NiosII软核处理器。 因此做嵌入式控制应用的市场也成为FPGA的市场,在我写这段的时候, Altera公司也会近期举办一些SOPC的研讨会, 也许,我写完这个的时候, 有更多的人已经加入到了这个行列里来研究嵌入式在FPGA上的实现。

高速的通信接口, R' p$ ~8 |2 k9 c: e8 s; j
最早的FPGA应用主要是协议和物理层的通信, 例如:ArriaGX支持的接口有GbitEthernet,PCIE,RapidIO,所谓的高端FPGA就是带有多通道的高速Serdes的产品, 这样意味着很多设备可以集成很好的通信以及网络功能。

相关帖子

沙发
3B1105|  楼主 | 2011-7-4 00:56 | 只看该作者
为什么要这样的结构-先组合,后时序多个时钟输入随着科技的进步,有很多人已经忘记了很多细节,当然,我们也要遵循一个原则。难事做易,大事做细!就像朱熹说的--“问渠哪得清如许,为有源头活水来“,如果你不知道原理,碰到重要的问题,或者是设计的时候,即使成功,也是不知不觉成功,同样呢,也是不知不觉失败。# K( [7 Q8 J3 S8 f+ ]& x8 T

: f  n  I* i% x+ v/ B# G拉回话题,当你设计一个扫描电路的时候,例如,你可以采用一个时钟,输入一个计数器,然后计数器的输出,再驱动一个译码器,这样你的电路就出来了。当然事情完成了一半。功能实现了,但是,有没有更好的办法。后者换句话说。有没有适合PLD的方法。实际上用另外一个角度看,这个设计是典型的, 先时序模块,才是组合电路。这个实际上,不是很和PLD本身的结构相符。还有一个问题时,随着电路速度的提高,每个译码输出之间的抖动也成为问题。就是输出的不一样的。 从资源的角度来说,一个计数器,要3各单元。一个译码器,由于有8个输出,还是需要8各单元。但是如果用一个移位寄存器的方式,可以只需要8个单元。或者用状态机的方式实现,也是消耗同样的资源。可是,输出都是由于同一个时钟锁定,每个输出的延迟也比较一致。另外,当时对总线数据的译码是经常有的事情,因此,每个单元的扇入数量都是很高的。都有30个以上。因此,你设计的时候,要有两个思想: 用同步设计模式,用先组合后时序的模式。后来的Xilinx的95系列更是将扇入系数扩大到90个。 也是这个原因。当时PLD厂商比较的也是这些指标。
* {5 j6 `& W$ o4 H# p4 Q2 V( f+ F7 W
当然我现在之所以又开始补充些内容,好像是一些网友提醒我说没有说Actel等产品, 现在不妨也加入一些。 但是为了这个话题, 我不得不再说些比这个看起来更久远的事情。
. X. r" K8 a$ B# n9 _* X$ O* w" i' _7 w, W% d
反熔丝的技术在PLD一出现的时候就有了, 最早的有所谓熔丝技术,实际上他们都只是初始状态的定义不同。 1970年的时候, 就有Harris公司, 今天叫intersil的公司, 就已经有这样的技术, 不好意思, 那个时候, 我还没有出生呢,但这丝毫不妨碍我们谈论他。 后来Intel公司也有EPROM的技术, 从PAL和GAL的发明也都和这些能拉上些关系。 这些技术之所以诞生就是要替换这个熔丝技术。 毋庸置疑的是,今天的以SRAM为基本的配置技术的FPGA成为了市场的领导。 这个是市场选择。
7 M, N  J4 j) ^! Q. H1 K4 J( p& o" B
7 U# O* U0 A; g: qEPROM技术时代的PLD,例如Altera的MAX5000,但是这个东西的封装太贵, 这和以前你用的2716有些类似, 都是用个石英玻璃封装的, 擦除也不方便, 另外, 随着规模的递增, 有时候路由线可能影响透明照度, 所以规模大的器件,擦除的时间还长。
9 y1 V3 s+ s0 S+ w, R
/ m5 q' A3 a/ s. m' k/ j6 I# I6 V2 ?SRAM是有很多优点, 但是他不保密, 不过今天表示半导体工艺的先进, 总是和SRAM的制造会扯上关系,而基于其他工艺的Flash的FPGA,在工艺制造上远不如SRAM的更新速度, 基本上可以差上一到两个工艺节点。 或许还有人认为, Flash的功耗小, 不要单独看这些, 这主要表现的是他的静态功耗上, 另外,为这些Flash的FPGA的编程, 也需要在芯片上放上很多编程Flash的单元, 他不能在成本上带来什么好处。 3 B2 R+ s+ ~  C# A$ N% c* i

; V6 Y/ h* ?' t9 V: v# B9 H如果你在google上去搜索一些关于PLD的专利, 还有很多你今天都已经不存在的公司的名字。

使用特权

评论回复
板凳
3B1105|  楼主 | 2011-7-4 01:04 | 只看该作者
Flex10K,他的推出,已经表明,altera的思维已经非常清晰, 大规模的fpga将会是将来的王道!而且,高速的嵌入式块RAM是一个开创新的思维。当时,Xilinx凭借分布式RAM以及内置三态的结构,的确大有横扫千军的架势。但是Flex10K的出现,有效提升了Altera的FPGA产品的竞争力。在RAM需求应用不断上升的市场中。Altera迎来了市场的春天。

1--采用多选一,或者一对多的MUX结构,Altera推出应用指南。直到用户有效利用这种方式,实现了三态门的功能。
2--ESB的memory结构,是构建FIFO, DPRAM,大型查找表,都非常方便,
3--布线资源相对来说,以长联线资源为主。编译速度快。

Xilinx的分布式RAM尽管很灵活,但是随着RAM容量的增加,访问的速度也是递减。同时也要消耗大量的逻辑资源。这个时候,应该说Xilinx和Altera的产品已经是势均力敌。因为中国是新兴的市场。这一点表现得很明显.

规模制胜的产物

使用特权

评论回复
地板
3B1105|  楼主 | 2011-7-4 01:05 | 只看该作者
这里又回到了我们的主题,产品的内在结构。先说细颗粒结构。当时,Xilinx的3000是以CLB为基本机构。* U! p/ v' c4 D0 f7 l3 Y) j8 Q" e9 w# Z5 {
" G8 X0 ~7 r* n" q$ v/ C; P1 e4 I4 o! i6 v2 f' g
实际上,这个输入的个数是很有讲究的。当时,也有一种激烈的争论,就是5输入的好,还是4输入的好。在实际应用中,应该说,最小的逻辑单元是这样的规模是合理的。但是要注意一点。Xilinx和Lattice后面推出的fpga一样,两个寄存器是具有同一个时钟输入的。
6 S u9 q5 i2 Y7 \5 k5 x. E( p2 P& X3 x# l6 W" }/ m* Z+ K" R2 O7 l& o( l# i' D1 a# S( n
粗颗粒结构,Altera还是依托自己以前在PLD的经验的积累,他的fpga有很多他的pld产品的血统。世界是基于以权制利的。因为这个时候如果已经有了Wintel的名字一样。 数字电路以及CPU的发展,都和8以及8的倍数有关系。因此。这种大颗粒的结构确保:- T# H/ t' K' |. X
1--8个逻辑单元LE为一组LAB。+ l( G# S* N- x
2--每个LAB内部有独立的布线资源。确保可以实现8bit adder, shift reg, 8bit counter.
0 D/ i* v) G9 A% ~" y0 E3--ESB,实现了存储器的资源和速度同时提高的可能。7 m! j9 Y0 _6 W
4--布局布线算法比细颗粒机构的算法简单。$ H! }0 g' B+ R
5--采用了非对称的结构,实现速度需求和控制需求的折衷。. _( ~& ?1 z' L6 @5 E+ T

使用特权

评论回复
5
3B1105|  楼主 | 2011-7-4 01:11 | 只看该作者
目前CPLD主要有:
I/O Expander
protocal bridge
glue logic
config or power sequence management.

FPGA:

基本上已经可以构建很多SOPC的应用了,因为目前FPGA的发展也是
1--向32nm工艺前进
2--内置超过120万以上的LE (按照每个产品比前一代扩大一倍来算)
3--内置更多,而且不同容量的块RAM,实现更好的包通讯和DSP的数据缓冲
4--可以很容易放置软核CPU,来实现必要的调试和管理功能
5--具有100G以上的高速数据通路
6--可以接口目前先进的DDR3,DDR2等SDRAM产品。
7--有更多的乘法器支援,以及更好的内置PLL和更多的时钟网络
8--集成某些常用的组件IP,PCIExpress,USB,以太网接口等。 不排除也会集成ARM9,ARM11,MIPS

因此未来的FPGA

实际上,就是复杂点。

使用特权

评论回复
6
3B1105|  楼主 | 2011-7-4 01:13 | 只看该作者
Altera FPGA的速度没有Xilinx的速度快,错!当然这种非对称的结构,你必须有一定的了解,才可以更好的利用。也就是要遵循:

大的数据吞吐通道应该采用横向放置规划!
控制通路采用纵向放置规划!
Altera至此以后, 一直沿袭这种结构规划。因此,如果你想有效利用好Altera的产品,就应该遵守这个规则。但是要说明的, 真正能体现性能的东西, 也许就是你意识不到的一种小东西, 就是简单的就是最好的。Altera正是凭借这个简单而高效的布局结构实现了今天的王道!昨天说到这里今天继续开始。 又有很多时候没有提Lattice,在1998年的时候, Lattice和Altera同时都有成为PLD霸主地位的意图。什么可以证明呢, 那就是谁最先推出可以ISP的宏单元超过1000个的PLD。 当然在这个游戏过程中, Altera有一些变化,他有效的将他的Flex8000的布局结构和他的MAX7000进行结合。 从而实现了在PLD规模扩大的同时可以实现

1--规模的迅速扩大, 可以比肩Xilinx的FPGA
2--局部的快速布线,和ISP,使其在获得规模优势的同时, 保持布线延迟的稳定
3--沿用过去MAX7000的适配结构和FPGA的路由, 实现两者有效的统一。

Altera在推出他的最大的9560,具有560个宏单元的PLD,登上了无可争议的PLD冠军奖台。


当然有的人要说, Lattice有推出1000个左右, 怎么不提呢。 正是因为这点, 导致Lattice步入歧途。 实际上,FPGA世界的游戏规则已经改变了。

MAX9000的成功得益于以下的细微结构。这个时候Altera又一次将自己的颗粒度进行了扩容。 有16个宏聚集在一起, 在实现更多位的加法, 控制, 超前进位,大的多选一的应用中, 可以将这些模块一次性放入一个LAB,同时在LAB内完成路由。 现在已经露出一种迹象。 大的规模要有, 但是速度的需求已经开始了。 所以在FPGA,CPLD的应用中,又有了新的裁判规则, 你不仅要够大, 还有够快

纵观当时其他的PLD,在结构上就落后很多了。 你想, 让你和姚明来争篮板球, 如果你没有人家的身材,赢他恐怕也是嘴上的功夫了。

使用特权

评论回复
7
btiger2000| | 2011-7-4 08:26 | 只看该作者
沙发

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:http://yiguibugui.taobao.com/

315

主题

1645

帖子

4

粉丝