产、学 、研联手推动FPGA创新应用

2007-06-26 09:20:20 来源:大比特资讯

产、学 、研联手推动FPGA创新应用
Xilinx杯中国高校开放源码硬件创新大赛拉开帷幕

      2007年6月21日,北京 ——由中国电子学会主办、赛灵思公司(Xilinx, Inc. (NASDAQ:XLNX))承办的首届“Xilinx杯中国高校开放源码硬件创新大赛”日前在包括清华大学和复旦大学在内的全国高校隆重拉开帷幕。此次大赛在国内首次提出了“创建开放源码硬件社区”的口号,并为此推出了独立的开放源码社区www.openhard.org作为此次大赛的活动平台,以推动基于现场可编程门阵列(FPGA)的开放源码创新应用,营造“交流、奉献与分享”的开放社区精神,促进中国自主知识产权IP及芯片的发展。     本次创新大赛主要面向全国高校的在读研究生、博士生及大三、大四的本科生,设立一、二、三等奖及单项奖共20个。获奖者除获得丰厚的现金奖励外,还将有机会获得中国电子学会举办的电子设计高级研修班的免费培训。此次比赛中具有商业价值的获奖作品,将有可能进一步获得赛灵思亚太技术基金的后续资助。
      赛灵思公司中国区运营总经理吴晓东先生说:“从简单的数字逻辑、微处理器、DSP到IC设计,从电子玩具、自动控制、数据传输到高性能通信系统,FPGA的应用越来越广泛。由此带来的中国市场对FPGA人才的需求也非常迫切,对这类人才的培养关系到中国长期的自主创新及自主知识产权的发展。赛灵思公司将不断提高对中国高校人才的投入,通过对此类人才的培养实现对中国市场的长期承诺。”
      赛灵思全球大学计划高级总监Patrick Lysaght表示:“可编程逻辑技术特别适合采用开放源码模式。此次将建立开放源码硬件社区的概念引入到比赛中,是为了能够以此为契机,让未来的设计人员能够避免停留在重复的简单设计上,不断提高FPGA设计水平。我们期望此次比赛能够真正推动可编程技术的创新应用,让所有的参加者能够从中受益,并共建智慧共享 的openhard社区。”
本次竞赛中,赛灵思公司将为参赛团队免费提供CAD开发工具及业界领先的FPGA开发系统,其中包括公司先进的Spartan-3系列平台以及相关配套软件。同时,组委会还鼓励参赛的学生自制外围扩展板,如增加传感器及机械结构等,从而开发出完整的、具有实际应用价值的设计作品。
      为开阔参赛者的设计思路,真正体现创新的主题,本次竞赛特聘请了在FPGA领域拥有多年丰富设计经验的专家来设计竞赛题目,并通过openhard社区与参赛团队分享设计经验,比如用FPGA开发游戏,人脸识别,语音识别等。此次竞赛由与非网提供网络支持服务,嵌入式在线协助网络推广,赛灵思的大学计划合作伙伴合众达、智翔,依元素等协办,此项竞赛还得到了来自赛灵思公司生态系统中其他合作伙伴的大力支持,如IBM、美国国家仪器 (NI)、华桑电子,安富利、好利顺、世健,以及国际数码及嵌入式认证机构等。他们将在比赛推广、技术支持及作品评选等方面提供鼎力支持。
      此次竞赛的实施将充分利用openhard社区平台来进行。在初选中获胜的所有参赛团队都将进驻openhard社区,通过社区的平台进行设计项目的规划、讨论、实施和团队成员管理,同时,参赛团队还要利用社区论坛、参赛日志等途径进行自我宣传、参与社区共建,扩大团队在整个社区中的影响力和号召力。最后,晋级决赛的参赛队伍还要亲赴决赛现场,对设计作品进行现场演示及答辩。所有的竞赛规则,都是为了在FPGA设计技能和商场实战模拟这两个层面上使参赛选手得到一次真正的锤炼。
      本次比赛从即日起接受报名,参赛团队建议由2-6名学生及1-2名指导老师组成。报名截止日期为2007年9月16日。此后将进入初选、复赛、决赛阶段,2008年3月公布获奖名单。欲了解更多的详情,请登陆大赛的官方网站www.openhard.org


开放源码硬件简史
开放源码硬件史前时代
      早在六、七十年代,电子爱好者就开始互相交流电路设计,PCB版图, 形成了开放源码硬件的雏形。在中国,这个时期,出现了很多以业余无线电和电子设计为主题的书刊、杂志。
集成电路出现后,越来越多的功能集成在一个芯片中, 电路越来越复杂, 设计制造集成电路的门槛越来越高,开放和共享集成电路设计变得越来越困难。
      ISA(指令集构架)的出现,使得电子行业出现了软件和硬件大分工,硬件厂商大规模生产具有ISA的芯片(如微处理器),以取得芯片生产的规模效应, 软件厂商进行软件开发,以适应不同应用之间个性化的需要。 
      标准的ISA, 比如X86指令集,加上标准的硬件构架, 比如PC、使得软件开发人员可以在同一平台上互相交流软件设计,这导致了90年代开放源码软件的蓬勃发展。
      芯片设计,在80年代90年代, 随着EDA技术的日臻完善,硬件设计越来越自动化,以HDL语言为核心的芯片设计越来越像软件设计。 
      90年代末, 随着互联网以及开放源码软件的盛行,很自然地,人们就想到可以利用开放源码软件的理念进行硬件设计,尤其是芯片设计。 
      由于芯片设计的复杂性, 一次设计一个完整的系统难度是相当大的, 因此, 开放源码硬件社区通常采用的自底而上的方法进行,也就是,先设计小的功能模块(称为芯核,core, 或者IP), 每个功能模块都工作正常了,再搭建大的系统,比如片上系统(SOC)。
开放源码硬件的产生
      1998年,Delft University of Technology 的一些学生和老师在互联网上发起Open Design Circuits Group, 目的是开放电路设计并把它发布在网上,尽管这个小组的活动逐渐稀少, 但它启发了后来最著名的两个开放源码硬件网站的产生:Opencores 和 OpenIPcore.越来越多的学校学生选择把他们的设计公布到网上,并把许多功能集成到一起,以期完成很复杂的功能。 在2000年的时候,OpenIPcore并入Opencores. 
      Jamil Khatib是Opencores的中的教父级的人物,1975年出生的他,写了非常多的奠基性的文档,探讨开放源码硬件的定义以及商业模式,参与了最早的F-CPU,gEDA等项目的开发,2006年他在Brandenburg University大学念研究生。作为阿拉伯人,他还专门撰文探讨了开放源码硬件如何对阿拉伯世界的技术转移产生影响。他甚至还建议在互联网上除了http之外,还需要添加Hardware Computing Resource Protocol ,比如说 ``hcrp://'',专门用来进行硬件资源下载。
      随着芯片设计越来越大,芯片设计越来越向SOC方向迈进,也就是在一个芯片中集成很多现有的IP核,以达到快速设计出系统的目的。这时,IP核的可重用性和可更改性就成了最关键的问题。而开放源码的IP核无疑在这方面具有先天优势。因此,很多商业公司也逐渐加入了开放源码硬件的行列,例如,SUN公司,IBM公司。商业公司进行开放源码往往是有附加条件的,比如,对于学术界免费,但是如果商业应用,仍需要收费。
开放源码硬件现状
      目前,开放源码的硬件中比较著名的项目有:F-CPU是第一个在互连网上设计的处理器,OpenCores中的OpenRISC项目,试图开发一个完全免费的RISC构架的处理器以及之上的SOC, 欧洲航天局(ESA)开发的Sparc兼容的Leon2处理器。
      与开放源码软件的完全免费不同,开放源码硬件最终要物理实现才能验证其设计是否达到预期目的。可编程逻辑器件(PLD),特别是现场可编程门阵列(FPGA), 以其快速灵活,初期投入成本低廉,成为开放源码硬件最适合的开发平台。因此,Opencores的设计主要都是在FPGA上进行。
      为了让开放源码社区的项目易于共同开发和沟通,通常会提供统一的开发板使用,例如,Opencores 社区广泛使用的Micro FPGA Board和OCRP-1 board这两款开发板,就是统一采用Xilinx公司的Vertix系列FPGA设计的。大名鼎鼎的OpenRisc1000 就是在这块板上开发设计的。
近年来,很多开放源码的处理器及总线基本开发完成,下一步就是在上面运行操作系统,编写各种设备驱动程序, 并配上丰富的应用软件。目前,Leon2 和Openrisc 1200 均可以成功运行Linux系统,为开放源码硬件和开放源码软件的社区融合打下了基础。
中国开放源码硬件发展状况
      中国有案可查的开放源码硬件项目是2001年3月启动的OpenARM项目, OpenARM并不像他的名字所隐含的那样和ARM处理器的设计相关。实际上,这个项目只是利用了现成的ARM 芯片,外面加上一块MEMEC 公司2002年3月(现已被Avenet收购)捐赠的Xilinx FPGA作为外围扩展的模块。  FPGA的引入, 使得该设计可以很容易地用HDL 代码的形式进行管理和跟踪。该项目后期还充分引入了OpenCores社区已有的成果,如Wishbone总线。
      有趣的是,开放源码软件库sourceforge中也有一个OpenARM, 这个项目的ARM指的是”Application Response Measurement” ,而不是我们所说的ARM 处理器。
      在“中国芯“盛行的几年里,不少学校和研究单位参考开放源码的处理器设计了自己的微处理器,这个时期,中国利用开放源码硬件的资源进行IC设计的方法开始悄然流行。
开放源码硬件展望
      摆在开放源码硬件支持者面前的一个颇有趣的问题是,”如果你要自己做一顿免费的晚餐,那么是否你做饭用米必须是自己种的,做饭用的锅碗瓢盆也必须是免费获得的 ?
      一部分开放源码的信仰者坚持认为上述问题的答案是肯定的。因此,有一些人坚持开发了例如gEDA 的开放源码EDA工具。另一部分人则认为,开放源码硬件也可以利用商业工具和商业原材料,只要在此基础上做的系统设计开放出来就可以了。
      在利用商业工具进行开放源码的设计方面,Xilinx 公司走在了业界前列, 例如,Xilinx公司开发的8位软处理器Picoblaze 是一种开放源码的8位处理器,而Xilinx公司的32位软处理器Micoblaze是在Xilinx公司EDK软件下支持的处理器,Xilinx公司给出了非常多的可供下载的参考设计,颇具参考价值。 再加上对uclinux的官方支持,可以在Xilinx提供的EDK工具的基础上,利用Xilinx的参考设计并加以改进, 迅速搭建嵌入式系统, 并在uclinux的基础上完成应用软件设计。
在Xilinx 率先宣布65nm 的FPGA量产时,广大开放源码硬件爱好者面临的是可以容纳数千万门的可编程逻辑。传统的自底而上的设计很难快速地构建如此大的系统。电子系统级设计(ESL) 可以用高层次语言来描述系统需求,并自动生成硬件设计。例如,Xilinx的XtremeDSP方案, 可以在Matlab中,用Simulink这种图形化的方式搭建复杂的数字信号处理系统(例如3G/B3G数字前端)。
      在开放源码硬件世界,也出现了诸如利用SystemC等高层次语言描述的系统(例如SystemCDES).可以预计,随着开放源码硬件进一步普及和成熟,软件,硬件,系统设计,算法设计等会在开放源码的旗帜下日趋融合,数年之后,可下载的硬件设计 (Downloadable Hardware)可以出现在每个人的掌上。
开放源码硬件遇到的挑战
      开放源码硬件从诞生到现在将近10年了,很多人为它的发展付出了大量的努力,但至今采用开放源码硬件运用在实际应用系统中的案例几乎没有。究其原因,开放源码硬件面临的问题和挑战主要有:
1)免费EDA工具的获取。
      尽管有Alliance 和 gEDA 等EDA工具可供使用,但它的功能和易用性和商业EDA软件相比还是不能相提并论。对于“非完美主义”的开放源码硬件设计者来说,适当采用商业软件是一个可以考虑的方案。在商业软件中,由于FPGA厂商的软件工具(比如XILINX的ISE, EDK,CHIPSCOPE,SYSTEM GENERATOR等)可以通过大学计划获得捐赠,使得利用强大商业软件的支持进行开放源码硬件设计变得可能。
2)板卡制造成本
      自己制作一块FPGA原型系统板的成本是相当可观的,
4)上市时间
      在电子产品数月就换代的时代,上市时间是电子系统设计的一个关键因素,即使是采用商业IP,  都有可能遇到意想不到的整合问题;而 目前开放源码硬件在文档完备性,稳定性上,技术支持方面存在的诸多问题,更是使务实的设计者望而却步。
5)软件丰富性和工具链问题
      如果采用开放源码的处理器,这就意味着从指令集到编译器到调试器都是重新开发的,几乎所有的软件都需要移植和重新编译,这使得开放源码的处理器的开发尤其困难。如果设计实际系统,人们更关心的是如何能解决问题。 商业处理器更能满足这种需要。
6)厂商支持
      Linux得以蓬勃发展,除了广大爱好者的奉献之外,IBM 等大公司的积极推动也起了非常大的作用。 而开放源码硬件的发展,也离不开相关硬件厂商的支持。
正是由于这些挑战的存在,开放源码硬件的活动目前更多的集中在大学和研究机构中,尤其在不发达国家中,更多得起着硬件设计知识传播的作用。

本文为哔哥哔特资讯原创文章,未经允许和授权,不得转载,否则将严格追究法律责任;
Big-Bit 商务网

请使用微信扫码登陆

x
凌鸥学园天地 广告