首页 FPGA三国志

FPGA三国志

举报
开通vip

FPGA三国志 FPGA三国志-第一篇/不可不看的故事 CPLD的时代 我在 12年前,偶然接触 PLD,没有想到自己居然就在这个行当里安身下来。 可是这个行业也的确是个飞速发展的行业,十多年过去后,从当初的接近十家主 要供应商,到今天已经激烈搏杀后,只有差不多如文章题目一样,成为了今天三 足鼎立的局面。想来想去,决定以这个名字文章主题。同时也和大家分享我多年 来的一些经历和感受。 全局布线,ISP,PLD,宏单元机构,成为 PLD市场必备的武器。 CPLD时代,进入我国最早的供应商是 Latt...

FPGA三国志
FPGA三国志-第一篇/不可不看的故事 CPLD的时代 我在 12年前,偶然接触 PLD,没有想到自己居然就在这个行当里安身下来。 可是这个行业也的确是个飞速发展的行业,十多年过去后,从当初的接近十家主 要供应商,到今天已经激烈搏杀后,只有差不多如文章题目一样,成为了今天三 足鼎立的局面。想来想去,决定以这个名字文章主题。同时也和大家分享我多年 来的一些经历和感受。 全局布线,ISP,PLD,宏单元机构,成为 PLD市场必备的武器。 CPLD时代,进入我国最早的供应商是 Lattice,那个时候,也不是每个行业 都用的了这种产品。首先,软件是需要收费的。这个和今天你可以轻松下载到免 费的版本有很大的不同。另外,不同的授权,也决定你能使用不同的产品规模和 设计语言。 90年代中,是电信行业大发展的年代。同时也是专用应用领域大发展的时代。 当时 pld是解决一个逻辑粘连的功能。同时由于 Lattice很早进入市场, 推广 很成功。全局布线池的结构,对于布局布线要求不高。一度时间,很多大的通信 企业,研究所,都很快成为 Lattice的用户。但是,有句话说得好。“长江后浪 推前浪,前浪死在沙滩上。”太早的成功也孕育着。安则危! 94年 Altera已经有了一些用户。但是相对来说。还是很有局限性。另外过 去的信息远远不可以与今天同日而语. 但是用过 altera的工程师,已经为他的 界面和功能留下了深刻的印象。96年是 ALTERA在中国发力追赶的开始。当然, 乱世出英雄。当时的代理商是一家香港的公司。他们很快找出这种集成电路最好 的销售和支持模式。并且这种从大洋那边继承过来的方式,经过适当的改良,的 确收到很好的效果。代理商有专门负责的现场应用工程师。 这种方式极大方便 了设计者与供应商之间的信息交流。在推广初期是否有技术支持,变得非常重要。 这个时期在整个中国市场上涌现出很多非常优秀的现场技术工程师。今天已经有 很多人成为这个行业的领军人物。 Lattice首开 ISP技术先河,也就是今天常说的在线可编程,给所有设计者 带来很大的方便。芯片在电路板上,可以直接编程调试。不用每次拔插芯片,再 通过紫外线来擦写要方便得多。这个时候,Lattice还是明显占有上风的。毕竟 先入为主嘛。当时主要的型号集中在 Lattice ispLSI1032, 1016, Altera的 EPM7128E,不过 Altera已经做好了准备,因为,Altera毕竟是 pld的发明者。 而且也是最早采用Windows平台的开发工具。在美国市场上占有先机。他不会 轻易放弃这样一个市场 当时的应用在电信领域主要是将之前的 74系列的一些单元进行集成。同时 加入一些控制功能。不过这个时期的产品结构都是采用mc单元结构。每个mc 实际上就是相当于 32到 36个与非门,以 Altera EPM3032为例就是认为有 32*30到 256*30, 大致就是 7000门左右,因此产品命名为MAX7000,但 是当时的设计很多还在大量应用异步设计。因此,电路的结构如果能导致利用率 的上升,将是更加有竞争力的 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf 现。MC的结构就是采用先组合,后时序多个时 钟输入结构。Lattice是用 4个宏单元一组。altera 采用 8个一组。而且,altera 在利用率上,稍微占有上风。同时 Altera当时的maxplusII的良好界面。在 97,98年的两年时间里,已经奠定在中国的基础。更深层次,Altera已经看到 未来市场的需求,前面说到,成功太早有时候也不是好事。在MAX7000的铺 垫下,Altera已经有了进攻 Xilinx的武器,可 Altera一致宣称那不是 FPGA, 换以一个更加中性的名字---CPLD(复杂可编程逻辑器件)。 那什么是 Altera 的武器呢。FLEX8000!他的出现是 Altera奠定今天可以和 xilinx平分秋色的基 础。 在 1996,97年, 成都,西安多家做专业领域的公司和研究单位,也使用 了一些 Actel,Actel的产品和那个时候的 Quicklogic来说,都是属于 Antifuse 的技术。 使用他的最大好处在当时就是有防止辐射,就是说在航空产品中可以 用。 但是需要你认真的仿真。 如果你烧入进去设计, 就只能换下一片了。 而 且为了烧断里面的熔丝, 第三方的编程器支持的也不多。 但是他们有些军用温 度的产品。 还是在这个领域有不错的口碑。 Actel当时的策略结构是, 基本上和他们现在的论调也非常一致, 就是精 细颗粒, 所有的 DFF,还是可以靠独立的门来搭建。 这个在他早先的 A1020 等产品系列上可以看到。 而且芯片上有一部分是组合逻辑区, 有一部分是时序 逻辑区。 另外他们的软件也是多家 EDA工具的组合。 特别是库的一致性不是 特别通用。 Quicklogic的产品是 FPGA公司中最早嵌入 Synplify的商家,而且他们的 LE结构是基于Mux的,底层的 layout也可以清晰看到路由,资源消耗。输入 法和库的建立很特别。 但是也存在上面的问题。产品好像是 QLxxx的,我还 去应聘过一次这家公司,因为他们最早采用 Synplify。而且,当时我已经感觉 Synplify和 雷昂纳多(拼写忘记了),以及 exzampler??这个拼写也有问 题。我在做 FAE的时候,总是用这 3个工具都综合一次,看他们哪个强。后来 证明是对的。Sy是最平均的,而且简单的优点傻瓜。遗憾他也在今年被 Synopsys收购了。现在 Quicklogic也专注一些细分市场。 为什么要这样的结构-先组合,后时序多个时钟输入 随着科技的进步,有很多人已经忘记了很多细节,当然,我们也要遵循一个 原则。难事做易,大事做细!就像朱熹说的--“问渠哪得清如许,为有源头活水 来“,如果你不知道原理,碰到重要的问题,或者是设计的时候,即使成功,也 是不知不觉成功,同样呢,也是不知不觉失败。 拉回话题,当你设计一个扫描电路的时候,例如,你可以采用一个时钟,输 入一个计数器,然后计数器的输出,再驱动一个译码器,这样你的电路就出来了。 当然事情完成了一半。功能实现了,但是,有没有更好的办法。后者换句话说。 有没有适合 PLD的方法。实际上用另外一个角度看,这个设计是典型的, 先时 序模块,才是组合电路。这个实际上,不是很和 PLD本身的结构相符。还有一 个问题时,随着电路速度的提高,每个译码输出之间的抖动也成为问题。就是输 出的不一样的。 从资源的角度来说,一个计数器,要 3各单元。一个译码器, 由于有 8个输出,还是需要 8各单元。但是如果用一个移位寄存器的方式,可 以只需要 8个单元。或者用状态机的方式实现,也是消耗同样的资源。可是, 输出都是由于同一个时钟锁定,每个输出的延迟也比较一致。另外,当时对总线 数据的译码是经常有的事情,因此,每个单元的扇入数量都是很高的。都有 30 个以上。因此,你设计的时候,要有两个思想: 用同步设计模式,用先组合后 时序的模式。后来的 Xilinx的 95系列更是将扇入系数扩大到 90个。 也是这 个原因。当时 PLD厂商比较的也是这些指标。 Xilinx , FPGA的发明者 Xilinx实际上成立的日期,比 altera还晚了一年。但是他走的道路,从开始 就注定了有今天的成就。在 1996-1998,pld的高端市场,也就是 FPGA市场, 都是 Xilinx把持,主要是 xc3000/4000 ,当然 Xilinx开创了一个新的结构, 不过这种结构还是能够找到一些共同点,也是先组合,后时序。不过很重要的闪 亮点是: 细颗粒查找表结构,丰富的寄存器资源,以及分段式路由布线结构,电路上电 加载。 当然如果这个也算是的话,那就是,他的内部甚至直接集成了三态门。 这个特点是那个时代 Xilinx拥趸攻击 Altera,Lattice的重要工具。甚至有人说, 没有这个不能实现某些电路设计的障碍。 当然了,Altera, Lattice的 pld也是 具有三态门,不过是在输入输出管脚上。的确是不如 Xilinx的来的强大和直接。 有的人问了,这种结构有何好处。 1. 电路的规模得到空前的提高。 2. 适合做加加减减的,counter,comparter密集的设计。 3. 无限制的更新电路。 在那个时代,衡量一个 PLD很重要的指标,就是比谁的规模更大。从这个角 度来看。Xilinx无疑走到了最前面。当然,也有人说, 这样的设计不可靠。这 样的设计指标难以预测。还有地说这样的设计无法保密。但是市场的成功,应用 需求的推动,证明这些都是杂音。 我们可以从当时 xc3000的选型指南上看到。最大规模的产品,也就是今天 xilinx最小的 xc3s50a规模相当的东西。可是这个和当时 PLD流行的规模,实 在是一个飞跃。 Xilinx FPGA的架构。 Xilinx的成功,激励了 Altera的新产品的推出。同时也有了革命性的突破。 世界就是这么奇怪。中国古语。塞翁失马,焉知非福。实际上,如下所言,这款 产品因该 8282,具有 282个逻辑单元的。但是在中国基本上只是在 1995年有 个别公司使用。 1992 FLEX® 8000 FPGA Altera的第一款现场可编程门阵列(FPGA) 我本人经历我们开始在 1997年开始大规模推广 Flex10K, 同年 5月,位于 西安的邮电部 4所,是第一个采用 EPF10K50的用户,当时电子杂志的广告, 也有表明,Altera最先推出最大的 FPGA. 1996 FLEX 10K® FPGA 带有集成锁相环(PLL)的 FPGA 1995 FLEX 10K FPGA 带有嵌入式模块 RAM的 FPGA 实际上,这个时间就是 Lattice噩梦的开始,由于设计规模的迅速攀升,规 模已经是决定一个产品的关键因素。但是 Lattice一直没有代表作。市场份额已 经开始逐步被 Xilinx,Altera蚕食。Altera的结构到底是什么革新呢? Altera FPGA粗颗粒结构,嵌入式存储器,长联线结构. 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 的产品已经是势均力敌。因为中国是新兴的市场。这一点表现得很明显. 规模制胜的产物 世界是运动的,粗颗粒,也是好结构! 这里又回到了我们的主题,产品的内在结构。先说细颗粒结构。当时,Xilinx 的 3000是以 CLB为基本机构。 实际上,这个输入的个数是很有讲究的。当时,也有一种激烈的争论,就是 5输入的好,还是 4输入的好。在实际应用中,应该说,最小的逻辑单元是这样 的规模是合理的。但是要注意一点。Xilinx和 Lattice后面推出的 fpga一样, 两个寄存器是具有同一个时钟输入的。 粗颗粒结构,Altera还是依托自己以前在 PLD的经验的积累,他的 fpga有 很多他的 pld产品的血统。世界是基于以权制利的。因为这个时候如果已经有了 Wintel的名字一样。 数字电路以及 CPU的发展,都和 8以及 8的倍数有关系。 因此。这种大颗粒的结构确保: 1. 8个逻辑单元 LE为一组 LAB。 2. 每个 LAB内部有独立的布线资源。确保可以实现 8bit adder, shift reg, 8bit counter. 3. ESB,实现了存储器的资源和速度同时提高的可能。 4. 布局布线算法比细颗粒机构的算法简单。 5. 采用了非对称的结构,实现速度需求和控制需求的折衷。 Cyclone,Stratix,Vertex Cyclone 的出现和 FPGA的市场定位和产品定位 好的技术是需要,但是有效的市场定位和销售策略也要跟上。在 2002年左 右,为了更好服务各种不同市场的需要。而且当时的 DSP市场仍然不太明朗, 有的观望,也有大力投入。而且也有两种不同的策略。 一种是同一个器件平台,但是不同的应用区隔,例如 Vertex和 Spartan, 有一段时间,他们可能是同一个产品平台,只是 Spartan的东西就是 Vertex 屏蔽了一部分高级的性能,对于不使用的地方,也不需要检测,同时依靠同一个 平台来维持成本优势。 另外一种,就是 Altera的策略,完全依赖客人市场的需要,简化不需要的特 性,推出简化的结构,面向主要的逻辑集成和 LVDS信号链集成。推出 Cyclone, 市场反响非常强力,是 Altera有史以来,市场响应最快的产品。 FPGA三国志-第二篇/结构篇 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的应用中,又有了新的裁判规则,你不仅要够大,还有够快 这个时候的异步设计还是非常的多,而且板子上芯片间信号的互联也多起来 了,能够有效缩短 Tsu已经成为一个重要的话题. 实际上,就是在 IOC上要有 DFF,来进行快速锁存,同时也为所有进入 CPLD的总线信号进行第一次整理. 怎 么实现很多的异步设计,看了下面,你就明白了. 第 1点,就可以用所有信号的函 数输出作为 clk,第2点,有效的将没有用完的资源很好借用给其他的宏,来用对称 的结构实现非对称的应用!用简单的结构,应变不断的变化. 纵观当时其他的PLD,在结构上就落后很多了. 你想,让你和姚明来争篮板球, 如果你没有人家的身材,赢他恐怕也是嘴上的功夫了. 这个时代的强者就是---谁有最多的逻辑资源,或者memory,谁就是老大. 上面说到 Lattice已经在极力扩大自己的身材,但是他不是靠结构上的改变, 而是 Lattice收购了 Vantis,也就是 AMD的一个做 PLD的小部门. 当然在当 时,AMD的Mach就这样并入了 Lattice的家族. 新的问题就出现了. 好比我们 现在有人用什么大灵通,小灵通,GSM,CDMA,是有百花齐放的感觉,但是Lattice 就像变成了解放前的蒋介石,没有办法很好的用一套工具来统一使用不同的器件. 而且本身 Lattice自己当时的工具也是 3个独立的工具拼凑在一起的. 那个年代, 用过 Tango,后者 Orcad的人都知道,他们的图形输入是第一名的,但是和 MaxplusII比起来,自动识别对象链接,以及和 Office 95类似的快捷键,用过 Maxplusii的人,让他们转用 Viewlogic等 workoffice等,简直简直就是抹他们 的脖子. 还有当时 Lattice的销售团队,总是宣扬他们是最好的 PLD,有些人竟然 有 "我认为 64KROM,就可以应付未来所有的软件需求" 这样的论调,认为 PLD 必将击败 FPGA,事实上,市场的残酷,告诉他们那是个很冷的冬天. 于是他们又 一次在 2000年左右,如同水淹七军一样的结局,又急忙掉转船头,收购了 ORCA, 可惜了ORCA是出自 Lucent的一条好汉,由于没有良好的软件支撑,使得每个工 程师必须像哪吒一样. 对了,怎么会像哪吒? 因为你必须有三头六臂,如果你公 司有些产品需要从 32个宏单元到 2000个 LE的 FPGA的应用,你就必须学习 3 种工具来适应它. 你想想,你是不是一定要像哪吒呢! 再次谈结构以及方法学! 这里开始讲些看来与我们主题有点不搭界的东西. 1--两个人相遇,只握 1次手 2--三个人相遇,每人都握一次,握 3次手 3--4个呢?就是 2的结果加 3次,6次手 4--5个呢? 10次手. 5--16个呢,.......天,不少于... PLD就是这样的产物,当逻辑……你会发现,路由的面积都超过了有效的逻辑 面积. 而且,越大越糟糕. 可以下载这个简单的 PPT来发现一些小问题! advantagestruc.zip 什么样的数目比较好,对于 PLD的宏单元数目 实践是检验真理的唯一标准. 有人说了,256个是最好的结构,为什么呢,不然 怎么那么多厂商都是在这个范围呢. 实际上,他是由经济规律决定的,就是当时用 256个的宏单元结构的芯片的面积,和他们卖出的价钱,比较符合当时这些上市 公司的利润要求,所以.....就以这个最流行了. 但是 Altera进行了很好的变通. 中国有句话叫"玄之又玄,妙之又妙",什么是 玄? 玄就是变通的意思,也是变得意思. 实际上万事万物都是相通的. 那 Altera 就像我们的学校一样,每个年级分不同楼层,每个楼层分不同班级,每个班级上不 同的课. 但是用行列块的方式,达到既有规模,也有位置相关性. 而且路由的面积 也不会大到赚不到钱. 实际上你自己观察,近 10年 ,Altera的 FPGA的主要框 架是没有变化的! Xilinx 的 FPGA结构,实际上,有一个 5200系列,很向 Altera的 Flex6000, 但是没有多久这个东西就不见了. 总之,Xilinx的结构属于称为 "孤岛式"结构, 就是 CLB在中间,路由围着这个孤岛. 在一定的密度的时候 ,这种结构也还是不 错的,当然有一个很重要的结构就是,他是全对称的. 就是Xilinx的芯片的逻辑上 资源的密集度是上小左右对称的. 这个有好处,但是也有坏处. Altera的呢,是横 向资源丰富,纵向资源相对较少,但是,在局部的横向上,又可以进行级联 LE,DSP,Carry chain 等等. 好了,给大家举个简单的例子. 孤岛式的结构 Altera 的类似的结构,但是颗粒度大,从这张图,应该可以看出 altera在横 向资源是很丰富的. 就是同一行的资源远多于同一列的. 输入输出就更是了. 当 然,这个和管脚的封装脚的出位不是绝对一一对应的. Stratix的出现 在2001年,Altera推出了他们最伟大的产品,Stratix. 当时 FPGA的竞争规 则又发生了改变 1. Altera用 TRAM的形式和 Xilinx的分布式 RAM和 blockRAM竞争 2. Altera的 PLL性能超越对手 3. 布通率,利用率,表现突出. 但是上面这三点,都不是决定性的. 这个时候,数据通信对背板走线和背板总 线要求已经很高了. 实际上 FPGA也摇身变为系统级芯片了. 你不仅要有大的逻辑规模,合理的memory尺寸,相对丰富的时钟资源,还有 就是要有高速的 Serdes,缺少一项,你都会在系统级的应用中只能是亚军! 刚才说了系统级的应用,已经成了 FPGA最残酷的竞争市场. 那么 PLD呢,怎 么样了,实际上自然总是物竞天择!PLD已经变为这样的几种应用了 1. 输入输出的扩展! 2. 简单总线或者接口的 协议 离婚协议模板下载合伙人协议 下载渠道分销协议免费下载敬业协议下载授课协议下载 转换 3. 对系统级的模块进行配置,或者控制. 4. 上电初期的一些管理 就像一个国家的海军一样,PLD已经成为一些简单的驱逐舰,驰骋大洋的,可 以跨海作战的,绝对不是这样的产品可以涵盖的. 所以,你今天喝可乐的时候,不 会有太多的选择. 偶尔的一些牌子如同过眼烟云,很快就弹出你的视线了. 是的,十年前我的很多朋友,有在 Quicklogic,有在 Cypress,现在还有一些在 不断出产品的公司,当然,只能是剑走偏锋. 做些细分市场还是可以继续的.但是 三国鼎立的形式已经是不可撼动的事实了. 北京和深圳的差别? 你到过我们的首都北京吗?到过我们的特区深圳吗?这样打比喻是因为我在 深圳和北京都旅游或者工作过.实际上我也只是想借用这两个城市的布局来做个 比喻. 北京是比较对称的城市,有东直门,西直门. 有东单,西单等等. 总之,他的布 局就像 Xilinx,无数个胡同就是像 Xilinx围绕在 CLB的路由线. 这些资源在 Xilinx的数据手册中有: 但是这些胡同间的联线并不是十分充足. 特别是到了规模很大的时 候.Altera的呢?在深圳的人,如果你不认路,很简单,只要你走到"深南大道,滨河 大道,北环大道"上的任意一条,你就可以再从这些大道到你要去的地方. 但是前 提是 ,这 3条大道的宽度要够. 提示一点,这三条大道也是东西走向比较平行的. 而且整个深圳也是一个东西走向的城市,地下再有一条地铁,在同样资源的情况 下,布通率,和平均车速是非常好的. 而北京的地铁,是环形的.资源上不如深圳的 利用率高,这里无意于评价城市规划和道路设计. 只是比喻. Altera的 FPGA就是如同深圳的道路,他可以让你从列上很自如的转到宽阔 的行上,然后再到达你的目的地. 所以,可以告诉你一个经验. 1. Altera FPGA,布通率基本在 95%左右,没有太大问题,Stratix最大的产 品,有人有 99%的布通率 2. Lattice的 FPGA,规模超过 20KLEs,布通效率....有愿意透漏的吗? 3. Xilinx,规模越大,有所恶化. 另外,这个地方也有颗粒度大带来的好处. 所以,有些原来看似不精细的地方, 却在规则改变后,就变得反而是犀利无比. 运筹学也是很重要的! 经常有这样的情况,大家选择 FPGA的时候,就开始翻看每种 FPGA的选型手 册,然后对资源表. 有的甚至直接说:我这个是 10万门的. 你的那个是 6万门的, 实际上,这些都不是很正确的评估. 如同有人说,我家的房子 4室两厅,你家的房 子3室1厅双卫生间. 到底哪个更大呢? 到底哪个更节能呢. 厨房热水器之间离 得很远又是问题. 所以说,学会正确的评价资源是很重要的. 这个时候还要参照他的结构!!板式 的,还是砖混的!!! 可能你还听说过一个使用面积的问题. 实际上,有的房子看起来大,走道,不规 则的布局,导致很多的地方都不能用!下面看个例子: 左边的Hops代表跨一步的意思,就是路由转换一次的意思. 这个表什么意思 呢. 就是说在 S3的路由过程中,每个路由在第一次,就可以覆盖 850LEs中的一 个,V5是 132. 如果你的逻辑,经过 4跨,同样的路径覆盖的区域 A的是 X的 2 倍. 代表什么呢? 1. 编译速度更快,因为概率提高,路由成功率提高 2. 布通率更高 3. 速度更快!为什么,90nm以后,LE内部延迟已经不如路由延迟的时间长了. 所以经过的路由多,就会严重降低系统速度. 当然还有一些好事者,例如 (http://www.opencores.org) 有很多公开的 opencore,大家可以将它们同时尝试放在 A,X,L,看谁放的多,放的快,系统延迟 更小. 这方便数据就不多说了,可能都成为一门学科都不一定,因为不同的比对都 有 benchmark的不同标准. 最终我们应该很清楚的看到. 结构真的是很重要,我们能干,也要看是否站在巨人... 不过呢,很多时候,我们的朋友基本上都说: 结构和我无关,我要学好 VHDL, 我要....codingstyle. 这个设计属于系统工程! FPGA的真正命门和Know How实际上,能做 FPGA的公司太多了,但是能将 我们的设计通过算法成功放到这个芯片上,而且算出正确的时间和你的仿真要求 的. 就不多了,说的难听点. 有些领域甚至是没有亚军的竞争!选择小规模 PLD, 那些,不是太重要的问题. 本身就不够养活一票人的产品. Cyclone III 与 Spartan3 的对决--苹果对苹果? 目前,很多人都基本上对于新的中档设计都会集中在这个系列的竞争中,换言 之,在中国目前以成本为导向的第一要求下,实际上中小公司的产品选用 80%是 集中在这里. 经常有人说,为什么你们的 LEs数目相同,价格很不同. 做些解释,一家之言. 1. 在今天,尽管是可以编程的器件,还是有不灵活的地方. 例如,你的应用决 定你对什么资源敏感 2. 不同市场也有不同的关注. 没有哪个东西绝对适合,只能是系列之间互相 交叉来完成. 有一点要说,那些所谓我的是多少系统门的比较方式,是典型的大忽悠模式 比较产品有很多 benchmark. 这里列举一些. 不全的地方,可以大家补充. 1. 工艺 Cyclone III,65nm Spartan3,90nm 眼前看,90nm是主流工艺,但是未来降价空间在2009年中达到轨点, 另外,65nm的功耗不用说,35%的优势轻轻松松. 2. 设计学 CycloneIII ---LP工艺,有很多人不理解这个,同样的设计采用 LP和 不采用就很大不同. Spartan3--没有采用 3. 规模 Spartan3,3e,3a,3an,覆盖区域不同,从 1K到 40KLE左右 CycloneIII: 典型长中长焦距镜头,5K到 120K, 40K 以上,基本上 Spartan3没有产品,可以用 V5,V5定义为 Highend,S3定义为 Lowercost 无线,DSLAM,医疗,平均规模在 25KLE到 80KLEs为最 多,CycloneIII解决了有无问题 4. Memory 这个是 CycloneIII的幸运之处,当时可能设计上没有这么大吧. 9K块,总容量绝对平均高出 S为 30%,块数也同样. Sp3dsp例外,但 是他只有两个孩子.定焦镜头.要符合你的品味. memory多影响到: CPU速度的提高,DSP应用,DUC,DDC,FIR等, 级数上可以做更多. 速度高,还可以提高复用. 5. 乘法器,一个 18x18的乘法器,相当于 350-450个 LEs,当然流水的话要 另外算. 6. PLL: Altera是模拟的,X是数字的. 恢复性和收敛速度那毫无疑问,地球 人都知道模拟的好. A的时钟树更是多 7. 布局: 从左到有,基本符合多时钟域交叉, 如: LVDS入,经过第一级 FIFO,进行时钟域交叉,或者数据交叉,第一 次处理,然后经过中间逻辑加工,参数重加载等,然后进入乘法器,可以级联, 然后有通过通用逻辑池进行加工,再次通过FIFO或者RAM来对接下一级. 其他行可以独立构成 NiosII等,布局收敛性一流. 我尽量找个照片来 显示. 所以不是简单说我的苹果和你的苹果一样. S3只有销价处理才是真正的出 路. 如果你知道了结构,你会发现什么呢? 实际上,Altera一直在横向布线资源上浓墨重彩,因此,在 Cyclone一代系列 的时候,如果你的设计模块放在一个比较长的区域就更加容易跑出好性能. 如: 5行,5列的一个资源放置,不如在一个 4行 7列的区域中更好发挥性能. 到了 CycloneII,可能就是接近 1:1.2的样子. Statix,基本上接近正方形. 其他的你可能需要实验一下. 毕竟这个是动手的科学. 而且,每家FPGA厂商, 在关键布线资源方面,都是秘而不宣. 这个也是为什么 Synplicity要另嫁豪门的 原因!因为自己没有办法得到这些资源. 而综合技术已经被 FPGA厂商步步紧逼 了! Cyclone III的巧合. Cyclone III的诞生,可以说也是有划时代意义的.但是赢得偶然,其中已有些 必然.下面来说说这个东西. 前面有人说过 Xilinx的 V5不错,但是如果说 V5和 StatixIII带有 Serdes (串行器/解串器)的产品同时间面世的话. 作为设计者,可能问题就来了. 太多选 择就是难以选择 StratixIII 速度快,布线好,但是没有 Serdes V5速度布线都不错,出来的早,快人一步也是卖点. 但是呢?这两个产品都很贵. 由于 Xilinx很重视高端用户,因此他们也认为 Spartan3可以解决目前很多 需要,这个也对,因此他们计划在 45nm左右推出 Spartan的升级产品. Cyclone III,正好赶上高端DSP处理市场的繁荣,以前 Xilinx的website上 面也有这方面的迹象. 号称 Xilinx也是一个 DSP的公司. 这个也要得益于其他 生态链软件系统的发展,Matlab的 simulink, 另外,目前的有线系统中对Memory的需求也非常高,作为有效的缓冲也需要 更多的空间. 举例来说,一个 Video的应用. 需要一些滤波或者其他的应用,那需要的 FIR 的 Tap数目实际上是可大可小的. 但是以前他们认为逻辑资源的比例太多于 DSP的建立资源. 导致很多设计用 30万个 LE的资源的 FPGA,实际上,Logic 资源利用在 30%左右,而Memory仍旧显得很局促. 还有一个就是用DDR2的 设计也有增多的趋势, 还有就是中型设计的比重已经上升很快,就是在 3年前,大家很多集中在 6000个LE左右的资源. 而紧接着的趋势是200个500个左右的资源和10000 个 LE资源的迅速两级化. 另外一个增长就是 50000个 LE左右的区间,而这部 分长期以来都是 Stratix和 v4,v5的传统空间. 可是现在由于 memory,mulitiplier的增加,导致系统性能也可以用CycloneIII实现资源换取 速度和效率的 方案 气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载 . 因此 CycloneIII的资源也能利用低价格来和高端 FPGA分 一杯羹. 但是 CycloneIII尽管有价格优势,逻辑和memory的优势,可是在 Serdes 的应用上,还是一片空白. 这也是大家觉得他的缺憾所在. 总之,CycloneIII和 Spartan3 DSPA系列的推广,已经有一个暗示的信号, 就是 以多块,大容量memory,Serdes可选的特点将成为新的中级 FPGA市场 的标杆了. 为什么 Cyclone,或者说 Altera的粗颗粒有一定的好处? 大家都知道,Altera的结构可以说看起来是大开大合,实际上是粗中有细. 以前一个 LAB有 8个 LE,大家都可以理解,后来又发展成有 10个 LE,有 16 个 LEs 如果你有一个计数器,假定在 Cyclone里和 Spartan里面跑,Cyclone和 Spartan在做 8位计数器方面应该是不相上下,但是,当在 16位计数器还要跑同 样的速度,而且保证路由资源最简单的时候,Cyclone的优势,或者说 A家的优势 就来了. 大家都知道,计数器就是进位翻转的传递链路是他性能的关键路径,换句话 说,16位的计数器,就是两个 8位计数器的级联,唯一区别的复杂度就是 8位的传 递时间如果是 8x,那 16位的就是 16x了. 用另外一种方式来思考: 8位的计数器,在到达 FE这个数字的时候,就用一个 DFF进行一次隔离,提前 一个时钟节拍将进位准备好,这样就将一个 16位的计数器的复杂度降低到了 8 位一个样子. 可是原本 Cyclone的 LAB就有 10个 LE,因此为了防止毛刺的问 题以及刚才需要一个插入的 DFF(D触发器),就刚好放在一个 LAB里面,LAB (可配置逻辑模块(CLB))里面的路由是最快的,而且编译基本不太花时间. 同时也 为设计流水线的译码技术,提供两级的 DFF延迟,但是这些全部做到了放在一个 LAB. 大家回顾一下我们的设计,不就是计数器,加多选一,什么 FSM就是那几个玩 意来回的组合. 然后中间加流水,再平衡流水寄存器之间的路由. 没有新的发明, 只有新的组合. 但是 Altera这样的结构就相对来说..哈哈又要吹一下牛皮了. 过去 10年 FPGA产业的发展和 FPGA厂商的挑战? 过去 10年,FPGA产业发生了些重要变化,简要 3点: • 逻辑数量超过 10年前 50倍, • 存储容量超过 100倍 • Serdes速度接近 10G(Xilinx6.5G) • 消耗功耗只提高 10倍多些. =============================== • 编译算法和综合算法的提高 • 和结构结合的物理综合 • 编译平台多 CPU的支持,例如 4核 CPU的 PC • 递增编译和编译约束的更好支持 FPGA三国志-第三篇/SOPC篇 PLD的重新定义 PLD是什么,Programmable Logic Device. 当然今天应该 换个称呼了:Processor+ Logic+DSP了,世界就是这样不停的变化来维持 他的稳定。 表 1列出了 Altera®可编程解决方案的主要历史创新发展过程。,可以看到 在2000年的时候,FPGA的厂商已经开始在嵌入式微处理器方面开始崭露头脚。 当然起初引来的也有一片哗然。 说效率低下,难以开发。 新鲜事物的诞生总是 要经过这样的阵痛期。 在 2002年,就有众多厂家出来声称都支持嵌入式软核 CPU。 甚至也和当 时流行的 8051 turbo以及一些 ARM进行比较。 表 1. 在 PLD 业界的率先创新 年度 技术发展里程碑 在 PLD业界的率先创新 2008 Stratix ® IV FPGA 业界的首款 40-nm FPGA,具有最高的密度、最好的性能、最低的 功耗、最大的收发器带宽(高达 8.5-Gbps 的收发器),并为 PCI Express Gen 1/2提供硬核知识产权(IP)模块。 2007 ArriaTM GX FPGAs 业界的首款低成本,基于收发器的中端,协议优化的 FPGA。 2007 Cyclone® III FPGA 业界的首款低成本 65nm FPGA,前所未有地同时实现了低功耗、低 成本和高性能。 2006 Stratix III FPGA 65nm FPGA以更高的密度和性能支持高级集成,实现更复杂的产品。 2006 Quartus® II 软件 自然支持 SDC设计约束 2006 C2H 编译器 嵌入式处理器的首款自动 ANSI C至寄存器级(RTL)生成工具 2006 Stratix II GX FPGA 速度最快,密度最大的 90nm FPGA架构,含有工作在 622Mbps至 6.375Gbps的 20个低功耗收发器。 2005 HardCopy® II 结构 化 ASIC 精细粒度体系结构;从 90nm Stratix II FGPA原型无缝移植。 2005 Cyclone II FPGA 90nm FPGA,业界首款低成本 FPGA,成本降低 30%,密度提高 3 倍。 2004 Stratix II FPGA 90nm FPGA,含有名为 ALM的 8输入“分段式”查找表(LUT),以此 替代了 4输入 LUT体系结构。 2003 Quartus II 软件 可编程逻辑软件包,提供 Tcl脚本支持。 2003 Stratix GX FPGA 0.13µm FPGA,分块收发器体系结构。 2003 HardCopy 结构化 ASIC 业界唯一原型至量产 0.13µm的完整解决方案 2003 Stratix FPGA 0.13µm、300mm、高速高密度 FPGA 2002 Quartus II 软件 可编程逻辑设计工具包,支持 Linux。 2002 Cyclone FPGA 世界上成本最低的 FPGA(0.13µm) 2002 SOPC Builder 第一款 FPGA自动系统生成工具 2002 Stratix FPGA 世界上第一款带有嵌入式 DSP模块的 FPGA 2001 HardCopy APEX TM 结构化 ASIC FPGA 首次无缝移植至低成本结构化 ASIC 2001 系统互联架构 第一款自动生成的互联架构,支持同时主机/从机操作。 2001 Quartus II 软件 推出 Quartus II 设计软件 2001 MercuryTM FPGA 世界上第一款带有嵌入式收发器的 0.18µm FPGA 2000 基于 ARM® 的 Excalibur TM 器件 世界上第一款带有硬件嵌入式处理器的 FPGA 2000 Nios® 嵌入式处理器 世界上第一款嵌入式处理器,适合可编程逻辑应用。 处理器嵌入在 FPGA中,需要什么样的温床? 的确,在推出 Nios soft processor 两年之后,在我们周边也开始陆续有开 始吃螃蟹的了。 但是,还是回到结构的老话题上,来谈论一下为什么这个时候 出现了由 FPGA制造商推出的 CPU,实际上在 1997年,就已经有什么 FPGACPU的说法甚嚣尘上。 而且也有人在 Xilinx和 Altera上面分别实现了 原形。 开始在 FPGA嵌入大块 RAM的时候,很多人抨击这种结构,只是一个动物 园里面的老虎,实际上就是和猫差不多的杀伤力。 不可以否认,它不如分布式 RAM来的灵活,但是它可以作为一些 Cache(高速缓冲存储器),或者是紧耦合 的 RAM,还有就是它的规模在容量增加的时候,仍旧有很好的速度,那就可以 作为 CPU的 Cache了。 Altera的 RAM都是做在同一列的,很方便级联。 另 外总线宽度也很容易更改。 还有就是 CPU里面总是有很多总线,内部总线。 由于丰富的行联线的存在, 在几列行资源里,就可以轻松集成 RAM,CPU要的逻辑资源,以及总线的结构。 这样,CPU也就顺利的在 FPGA的世界里粉墨登场了。 虽然起初只是 16bit 的。 2002年,Altera的开发软件已经趋于稳定,可以说已经很适合自己产品的 结构,而且布线效率非常高。同时 Altera的 Nios也上升为 NiosII,这个时候 NiosII已经蜕变为美丽蝴蝶---一个 32bit的 RISC CPU(精简指令集计算机)。 而 且 Altera又采用了非对称的机构实现了革命性的 Avlon互联体系。 关于这个 体系的由非对称可以覆盖对称的,或不对称性的应用,我们以后详细聊。 总而 言之。 如果再有一款更好结构的低成本的 FPGA,那无异于在 FPGA市场上刮 起一场飓风! Xilinx有Microblaze,其他的有 ARM的核,实际上 FPGA上实现的 CPU, 不是由一个 CPU的内核来决定他的应用,而是谁有最好的互联体系,能和外围 设备,和 FPGA中的 RAM,乘法器,以及其他定制逻辑更好桥接,粘合成一个 SOPC,那才是真正意思上的软核。 那究竟什么样子才好呢? 1. 可以增加多个核来弥补自己速度上的缺陷,提高更多的并行处理 2. 灵活的总线结构,可以连接高速,慢速,master,salve的模块 3. 可以将客制化的逻辑,有效集成到 CPU的指令体系。 4. 有面向不同应用,可以进行裁剪的 CPU core 5. 方便片上调试的环境 6. 可以快速自动实现外设资源冲突仲裁的机制 7. 可以实现以软代硬,或者以硬代软,在软硬间转化速度与资源的偏重 如果有以上的特性,那相信留给设计者的只有是无限的遐想空间。 FPGA上的 CPU,有太多的元素,你知道吗? 我们从哪里开始讲呢,准备从算盘开始讲 CPU,很多人说,我是不是太无聊 了呢?听我明天说给你听!看似简单的算盘,绝对孕育着无比的大智慧。 看是 简单的 Avalon,也同样有很多玄机。 那就是变变变。 来自 Xilinx的消息,关于 CPU在 FPGA设计中的一些预测 神奇的算盘 上回说到算盘。 实际上大家应该都见过这个了不起的发明,只是他出现在你 的记忆中的次数越来越少,就忘记了,实际上,很多伟大之处在很早就有历史可 以证明的。 看看你平时见到的算盘。 算盘的妙处和 Altera的 LE排列布局非常相似,或许是巧合吧。 但是这里的偶然也有些必然。 或许我们有一天说,FPGA的结构最早是源于我 国的。 哈哈,玩笑啊。 1. 可以增加多个核来弥补自己速度上的缺陷,提高更多的并行处理 一个算盘是算盘,级联起来还是算盘,可以横向,也可以纵向 2. 灵活的总线结构,可以连接高速,慢速,master,salve的模块 算盘是平行也是并行结构,上面的有两个珠子,下面 5个,2也可以代表 10,5也可以代表 10,同时,进位时也可以暂时存储在高档位,也可以 留在本档。进位链和 Altera LE的进位布局也是一样。 看一个更久的照片,当然这个也可以代表 Cyclone的 layout了。 Avalon的奥秘 总线结构: 全交叉,部分交叉型(适合 FPGA中的嵌入总线!) Xilinx的是共享总线型。仍旧属于传统型设计,只是将其搬移到了 FPGA中。 处理器接口主要抽象为: 1. 共享寄存器 2. RAMs 3. FIFOs 回头看 Avalon: 上面看起来,这两个 softcore都差不多,看了下面的特点,你就有 答案 八年级地理上册填图题岩土工程勘察试题省略号的作用及举例应急救援安全知识车间5s试题及答案 了。 Selecting Hardware Architecture Bus • achieve relatively high clock frequencies • expense of little • no concurrency • common arbitration unit. • all masters compete for access to Full Crossbar Switch-NiosII Avalon • concurrent transactions • flexible • high throughput • large multiplexers • more masters and slaves are added • avoid large crossbar switches Partial Crossbar Switch--Avalon is okey • connectivity to a subset of the slaves • provides the optimal connectivity • operates at higher clock frequencies • interconnect fabric consumes fewer resources. • ideal for ASIC or • FPGA interconnect structures • slave side arbitration. Streaming-Avalon Streaming Map • high speed data transfers • point-to-point connections between source and sink • eliminating arbitration Dynamic Bus Sizing Understanding Concurrency Create Multiple Masters • General purpose processors, such
本文档为【FPGA三国志】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_718825
暂无简介~
格式:pdf
大小:2MB
软件:PDF阅读器
页数:39
分类:互联网
上传时间:2013-07-13
浏览量:51