存储 频道

双机备份的ORA 配置

    早在60,70 年代,电子爱好者就开始互相交流电路设计,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系统,为开放源码硬件和开放源码软件的社区融合打下了基础。
0
相关文章