"); //-->
嵌入式系统可被设计并编程用于完成一项(或几项)专门任务,这便是它们与PC和其他通用计算机的不同之处。由于成本、尺寸和功耗的原因,嵌入式计算机系统必须十分有效地利用其硬件和软件资源。硬/软件并行设计,即同时设计软件和硬件的能力,不仅可缩短产品的面市时间,而且也能加强硬件与软件资源间的结合。
不过,EDA工具供应商还必须付出相当的努力才能达到这一目的。在美国,允诺具有并行设计能力的IC设计工具越来越多,但实际上只能做到“并行验证”。也就是,它们能够仿真已开发出的硬件和软件模块(虚拟原)之间的相互作用。至今几乎尚未有工具能够做到系统级的硬/软件并行设计--即帮助设计者划分用硬件实现的系统任务和通过可二次编程的控制单元用软件实现的系统任务的工具。理想情况下,这些工具可帮助设计者选择实现软硬件模型间的最佳平衡。
亚洲工程师在进行嵌入式系统设计时,这些工具尤其有用。电机控制系统、办公设备(如激光打印机、传真机和台式扫描仪)、消费类电子产品(如VCR和DVD播放机)的磁头定位芯片,以及网络系统控制器都是嵌入式系统。随着中国自动化工业的崛起、韩国娱乐电子产品的飞跃以及新加坡磁盘驱动的继续发展,嵌入式系统技术对亚洲将会越来越重要。有着“世界母板之都”之称的台湾,在生产台式扫描仪方面也处于世界领先地位。
彩色台式扫描仪是一种较新的设备,在这种设备上具有很多硬/软件并行设计工具必须解决的设计问题类型。扫描仪的核心是一个数字化机械,即混合信号前端,它可放大来自电荷耦合器件(CCD)或接触式影象传感器(CIS,contact image sensor)的输入信号,并将其转换为数字量来表示每一象素点上红绿蓝(RGB)的亮度(或颜色深度)。但是扫描的图象并非逐点进行数字化,而是通过一个机械逐行扫描,将光感元素沿着轨道从一个象素点移到另一个象素点。
我们需要用一些微控制器元件的逐点数字化过程来协调扫描机械,并通过其双向并行口或SCSI接口将图象数据传送到主机。在许多系统中,模拟扫描元件与微控制器是分离的。然而,为了降低成本和功耗,提高电子器件的效率,越来越多的模拟前端与控制器集成为ASIC器件。数据转换器的制造商如National Semiconductor,Analog Devices和Exar Corp等都生产这种器件。
将混合信号处理元件和微控制器核心(如ARM或80C51)集成到一起是硬件和软件设计的一种实践,但这些过程间的协调则相当困难。其中一个问题是硬件模型通常要在设计周期的后期才能完成,从而延长了软件开发周期(因为软件设计者通常不能脱离硬件而先行完成设计)。另一个问题是即使最终完成了硬件(一种ASIC产品形式),在操作或修改方面也要比板级目标系统要困难得多。
正如可编程逻辑的专家们发现DSP功能一样,似乎将所有的逻辑功能进行硬件连接会得到最好的系统性能。但是它也会导致硅晶裸片尺寸增大、生产率降低以及产品面市时间延长等问题。类似地,通用微控制器相对便宜、容易编程并能快速投向市场,但是附加的封装会增加尺寸、功耗和生产成本。理想的硬/软件并行设计工具可帮助设计者分析平衡这些矛盾--至少在系统性能方面可如此。
引人注目的EDA工具
硬/软件并行设计加速了产品面市时间、加强了硬件与软件模块的联系并提高了最终电子产品的性能。因此,现在出现好些试图推动这种设计方法的芯片设计工具。这些工具可同时仿真硬件和软件的行为,使设计者大体能够了解软硬件功能的不同比例会带来不同的性能和资源平衡。
Mentor Graphics是首先提出硬件/软件并行设计问题的EDA工具生产商之一。该公司的“无缝并行设计”将早期的“无缝CVE”产品与来自Nu Thena系统的Foresight Codesign产品结合起来,从而使抽象模型实现为仿真组合。此外,Mentor还将Green Hills的多软件调试和指令集仿真集成入Codesigner的工具箱,从而允许在硬件设计周期进行一些基本的软件调试。Mentor的硬/软件并行验证工具的用户包括通信系统制造商Alcatel, Nokia、和Nortel以及网络系统供应商Ascend。
Cadence Design Systems和Synopsys也提供硬/软件并行验证工具。Cadence 的“Affirma”硬/软件并行验证产品具有精确的HDL处理器模型、调试能力和实时操作系统(RTOS)支持。20,000美元到25,000美元的处理器模型(与系统分开出售)包括ARM7和ARM-7TDMI内核、Fujitsu的SparcLite(MB86832)、Hitachi的SH- 和H8处理器以及大量NEC处理器内核。
这些工具将软件调试环境和快速处理器模型及HDL仿真(采用VHDL或Verilog模型)相结合,可在尚未生产出硬件之前对其虚拟模型进行一些早期调试;尽管HDL模型比实际的硬件运行起来要慢得多。但是,大多数工具都只是“并行验证”,即在系统任务划分完成后很长时间才仿真硬件和软件模块的相互作用。
为了使硬/软件并行设计达到更高的抽象级,Mentor Graphics帮助建立了以大学为基础的并行设计联合体(co-design consortium)。这一联合体包括美国的Princeton大学、Washington大学和Stanford大学、德国的Tubingen 大学以及意大利的电话公司Italtel。新成员包括Motorola、JRS研究实验室、西北大学和米兰工业学院。
该联合体会资助诸如宏结构的利弊分析、高性能和功率估计、接口综合和分布式仿真等领域的研究。例如,Washington大学发表了一项关于地理分布式并行仿真框架的研究。
其他商业产品
CoWare Inc.提供硬/软件并行仿真,但CoWare设计方法也有助于进行系统任务的划分。CoWare宣称其设计方法基于比利时研究院IMEC的前沿研究。使用该产品,用户可利用代表硬件-软件模块间的并行操作附加结构,用C语言设计可执行的规程。然后用户可通过仿真这一规程来探究不同划分方法,以发掘其功用和性能。
最后一步就是将规程映射为适当的硬件和软件模块。CoWare宣称其工具可进行“接口综合”,这意味着它能自动生成用于硬件粘合逻辑的可综合的VHDL和用于软件驱动程序的预定的可执行C代码。
Vast Systems Technology的并行验证工具(Comet 2.0)加速了通常为复杂过程的处理器建模过程。它承诺仿真速度可达150MIPS,适合于互连高层并行设计。
Comet的加速秘诀是其所谓的“虚拟处理器模型(VPMS)”,可用于ARM7, ARM9, Hitachi SH3, Intel 80386, Motorola 68000, MIPS R3000 和 R4000, Sparc V8 和 NEC 4100。它包括两个有效部分:一个“静态”模型,包括指令缓存器、指令集、管线线、管线事故和例外;以及一个“动态”模型,包括数据缓存器、虚拟存储器、中断、总线信号和其它仿真前不能确定的特征。通过自动分析写给处理器的应用代码,仿真的静态部分可进行预编译。
在操作Comet工具时,用户可设计一个可执行“虚拟模型”,用来代表硬件和软件。正如Mentors的无缝CVE和Synopsys的Eagle产品一样,Comet也将软件调试与VHDL或Verilog仿真结合起来,从而使得软件开发可在模型硬件生成前进行。
Vast声称其Comet产品可在软硬件任务划分前,甚至选择处理器之前开发硬件-软件的选择方案,系统功能可用C代码描述,然后通过Verilog的编程语言接口(PLI)或多数VHDL仿真器均可提供的等效方式联接到HDL仿真器中。 |
*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。