速记:FPGA-Based Prototyping Overview & Update
2010-09-21
由工业和信息化部指导,西安市科学技术局、西安市集成电路产业发展中心和中国电子报社主办,陕西省开云棋牌官网在线客服行业协会、西安软件园发展中心和西安地区科技交流中心协办的2010年(第二届)中国FPGA产业发展论坛于8月31日在西安市隆重举行。本次论坛的主题是“可编程技术加速中国科技创新”,来自国内外数十家企业、高等院校和科研机构的200余名代表参加了本次论坛。
图为:Synopsys 亚太区FPGA产品总监陈俊麟演讲。
Jimmy Chen:
从早上到现在,大家谈的都是FPGA的工艺上,还有它直接的应用上做生产和设计的方法,在这里我换一个角度来看FPGA的应用。现在越来越多在工业上把FPGA拿来做原型验证的方式,这个也是FPGA非常大的一个市场,所以从(英)这个角度来说我们也有一些做法,我在这边跟大家交流一下。
首先提到的包括几个方面:第一个,为什么要做FPGA为基础的原型验证平台?这里的验证平台包括你在演算法的初期的验证,然后再讨论一下(英)在这个地方所提出来的解决方案我们称之为(英)60的解决方案,然后把一些领先平台的做法跟大家分享一下。
现在不管设计一个SOC或者一个新的产品,举一个最普遍的例子里来看,像苹果的这个产品,一般来说在65纳米的工艺以下,这些公司已经在软件的开发方面有超过50%的支出,所以说不管在机构上、在IC的设计上,这个都不到它50%的总开销,在软件上面已经超过50%,所以这个变成一个产品成败的最重要的关键。在右边这一幅图,据先前的一些市场调查报告,这些做产品的公司一致认为在功能设计的错误上面是他们最不想看到的,也提到他们在功能设计的错误上面其实占有60%的失败的可能性。功能设计的上面除了硬件以外还包括软件,所以变成软件的开发跟验证,其实是现在最主要的一个课题。过去在软件的开发,通常是在硬件开发完成,而且在SOC的设计里面,样件回来以后才会真正地开始做,初期可能做一些软件开发,但是真正做验证会在样片回来以后。但是这种做法已经没有办法适合现在的商品竞争的原则,所以现在的做法已经都是在产品设计初期就开始规划这个硬件怎么设计、软件怎么设计,在这个时候也开始设计一个软、硬件协同验证的平台。所以,你可以看到,在左边一半下面的这个图,在投片的时候其实软件开发就已经完成,在这个样片回来大概在第一天或者第二天里面,软硬件整个系统的设计就马上照原来的计划来运转。所以这个方式主要用了FPGA为主的原型验证平台,这底下的图是原型验证平台的样子。大家看到这里面的好处,用FPGA,或者单一的FPGA,或者很多个FPGA,所能够达到的好处,就是能够把整个的设计做到FPGA的平台上面,而且能够接上实际的输入输出的信号,而且能够达到将来要达到目标的速度,而且它可以大量制造能够让许多用户一起来使用这个,所以能够达到这样的要求。在速度上面其实这是一个关键的技术,当然我们不管在做什么系统,SOC,或者做FPGA,或者在演算法的初期,我们都要考虑这个验证平台能不能够达到一定的速度,在仿真环节里面,其实不管是直接的仿真,或者是加上加速,这些速度都不够。主要的差别在哪里呢?差别在于一些界面的需求,你的原型验证平台的界面只要达到这个速度,你的整个平台才算完整,才能正常操作软件、硬件一起来做验证。所以这个是用FPGA做验证平台最大的好处。大家也都接受这个观念,但是在很多公司在考虑达到这个效果的时候,看法会比较不一样,有些公司会在内部成立一个组织,专门来做内部的验证平台设计FPGA为主的PC板,当然这里面也都可以达到我刚刚说的这些目标。从04、05年开始,有一些商业导向的验证平台的厂商,那个时候把一些验证平台也做得非常稳定,能够达到更高的效率。这些公司主要提供的价值就是让这些顾客们降低他内部设计的人数或者所要具备的知识,然后这些商品的验证也都事先透过几个主要的协同厂商,能够把这些技术验证得很好,而且在客户需要使用这个验证平台的时候,他能够马上交到客户的手里,所以这是商品化的FPGA厂商所提供的价值。在FPGA的领导厂商也有类似的产品提供,这里面Synopsys提供了更多的价值,它有整个软件,就是从工具上面来看,怎么样把原来的设计概念从(英)后转到你的代码FPGA里面,所以它提供的是一个更高的价值、更好的速度来提供给客户。这个原型验证平台它是一个硬件,上面有一颗、两颗,或者多颗的FPGA在上面,这些原型验证平台必须具备几个主要的功能。第一,它必须要能够把原来设计的代码成功的转换进来到这个平台里面;第二,因为原来的设计代码,原来都是做(英),所以这个原型验证平台必须要跟仿真能够沟通,也解决说在仿真的环境里面怎么把这个东西做到原型验证平台里面,而且反过来在原型验证平台里面又可以利用这个界面采取双方的好处,又可以做仿真、又可以做原型,这个变成一个必备的条件。第三,在右边的方块,因为所有的系统设计,或者SOC的设计,一定有它自己的界面,包括ODO、VDO(音)的界面,一定有一些M(英),一定要连接到这个平台上面,然后最重要的是你这个整个的原型平台做好了以后一定要能够调试,调试是最主要的目的,所以中间最底下的一格是调试的啊环节,所以一个原型的验证平台必须有这四个主要的接口。接下来要有一个调试的环节。另外,仿真的环节怎么转移过来,或者从原型再转移到仿真的环节里面,这也有一个对应的工具。它提供一个IP,它同时也提供了一个原型平台做法。可以看到,一个理想的原型验证平台能够适应现在需求的,就必须要有这些原件在里面。
这些东西实际上是已经存在的,我拿Introducing HAPS—60做例子。这个容量大家可以看到,64的容量就达到1800万门的逻辑,就逻辑的角度的门数来看,比如说你有AMC(英),它有一个接口给大家使用,之前的直板也供给大家使用。更好的是这个平台除了大片的平台,它还能够调节,它不管怎么放,它都有一个连接的方式,有8个FPGA一起来操作。这上面使用的器件,我们从上一代的产品HAPS5的系列,一直到现在HAPS6。这个上面其实是非常高的一个设计工艺,举例来说,从PC板上面它是40层的设计工艺在上面,它也考虑到它的速度,每一个节点都能跑到200兆的速度。因为所产生出来的散热问题,或者说怎么样控制它的功耗,也都有独特的设计在上面。除了这些以外,它必须跟 你原来的仿真环节能够连接,为什么要有这个要求呢?我们可以看到,右边的绿色方块,它能够在验证平台里面把里面的值事先储存,你设定它一个固定的值里面,然后看看这个原型平台的反应,你可以把(英)数据整串的丢进去,整串的抓出来,这些在硬件里面很难看到,但是你通过跟仿真的连接,你就可以看到。在接口上面,你可以把系统设计成你喜欢的设计环节,因为每个人的用法不一样,你今天用了,明天可能另外一个人要使用,只要在文档上面选择,依照哪一个文档来设定就可以了,所以这也是原型验证平台跟仿真环节整合的好处。仿真环节里面,你就可以在仿真跟硬件里面抓到双方的优点,硬件的速度是方针的大概100万倍,所以一些稳定的线路你就可以放到硬件上面加速,不稳定的,你可以尽量放在仿真的环节里面来调试。还有一个比较先进的做法,当然刚刚提到了,仿真的环境其实速度非常慢,硬件环境非常快,但是你硬要把它结合在一起,你所能够忍受的范围就是看仿真的速度了。为了解决这个问题,现在有一个比较新的做法,就等于一个指令一样,一个信号交换为主的基础来做仿真,也就是说我这个信号从仿真的环节绕到硬件我的信号交换的接口上面,我做完所有的事情一次把信号交过来,而不是像仿真的环节,我们说叫做(英)里面的一个信号转换它都会整个的操作一次,所以比较浪费时间。现在比较尖端的做法叫做(英)的这种做法,这个做法是针对硬件速度的优势发展出的一个新的技术。当然上面是一个仿真的环节,下面是一个硬件的环节,下面是代表验证的平台,仿真环节里面送出的信号是(英),而不是(英),在硬件里面又是平行的信号,而不是串极的信号,所以这里面还是要有一个转换,这里面要有两个转换,这个都包括在平台的里面。把它转换过来以后,你就可以开始做两边信号的交换。我们在细部的这种设计里面,通常在上验证平台以后,验证平台一上去,因为在它的速度优势下你可以测很多测不到的东西,因为它是实际的信号进来,这个时候你跟仿真的环节结合在一起,可以把里面特定的(英)值抓出来,当然在验证的时候以硬件的速度来做验证,跟软件一起协同验证之后,把它的资料放到仿真环境里面,用仿真的环境慢慢找出问题来,找出问题来还是要把你的设计代码修改以后,在仿真的环境里面再重新做一次,确定完全没有问题以后你再把他放到硬件里面来,所以这个接口是非常重要的。在一个理想的验证平台里面这些都是要能够支持的。在原型验证平台上面现在已经越来越重要,在所有产品的设计都需要做原型验证,这里面最重要的是把软件开发放在这里面,更重要的是把软件开发在你硬件还没确定之前就做好,比如说硬件投片之前就把这个芯片开发完成,不容许软件的任何错误。第二个,低成本、高效率。你要考虑到这个板要能够支持到所有所要的这种界面的速度,比如说USB3.0怎么样在(英)上面做原型验证,必须仔细选择一个好的验证平台。接下来必须选择一个低风险的原型验证平台,有一个世界级的支持团队、有世界及的口碑这样子的商品化原型验证平台,这样可以减低你内部的风险,提升你市场的竞争力。
所以这些就是我今天提出来跟大家分享的资料。