微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 行业新闻动态 > 多核发展势不可挡——ESC上细数支持多核处理的嵌入式工具

多核发展势不可挡——ESC上细数支持多核处理的嵌入式工具

时间:04-30 来源:电子工程专辑 点击:

对多核编程和调试的支持力度正在日益增加--这是不久前在硅谷举行的嵌入式系统会议(ESC)上发出的信号。实时操作系统(RTOS)和工具供应商也正在不断改进以模型为主导的设计、虚拟原型以及C语言编译。

QNX软件系统公司在会议中发布了一项声明,介绍了其针对多核处理器的首个安全的存储器和CPU分割功能。分割功能经常出现在安全性非常重要的应用中,因为它能确保CPU时间和存储器所用的资源,并保证当某一部分发生问题或受到入侵时,不会影响应用中的其余部分。

"分割目前仅限于单处理器,将分割信息传达给多核系统是一件很困难的事情,因为需要在多个处理器间复制分割信息。"QNX公司产品经理Kerry Johnson指出,"将所有信息转移到多核是项全新的尝试,这需要设计人员灵活地将分割信息映射到多核架构上。"

借助QNX公司的多核分割技术,Neutrino RTOS的用户可以将一个处理器分割成两个部分,Johnson指出。当然,用户也可以选择一个分割部分包含多个处理器。该技术可用于具有相似架构的对称多核系统。

Johnson表示,上述分割技术可以处理多达8个相同内核,而且针对某些架构,这个数字甚至可以高达32个。目前该技术支持ARM、MIPS、PowerPC和X86处理器。此外,用户还可选用QNX公司现有的"混合多处理(BMP)"功能,该功能将特定的线程或应用锁定在一个特定的CPU内核组内。QNX公司的Momentics套件提供的可视化工具,则有助于优化和调试多核设计。

风河系统公司目前也在其Workbench On-Chip Debugging Edition产品中加入了对多核的支持。该产品包含一个可联网、基于JTAG接口的在线仿真器,能支持多核和多处理应用。


图:QNX支持多核OS分割

"我们可以在单个扫描链上连接多达128个处理器,而且能同时调试多达8个这样的内核。"风河公司片上调试业务部副总裁Sandy Orlando介绍,"它能进行对称或非对称多处理。用户可以在单一调试环境中调试多个内核。"

支持更多种类的处理器

最新的Workbench 2.6.1 On-Chip Debugging Edition版本能支持更多数量的新型处理器,包括Broadcom SiByte系列中的几款、英特尔Xscale IOP342、飞思卡尔MPC8641D 2.0T以及PA Semi的PA6T-1682M。另外,该版本允许用户在不需要内核指令的情况下调试Linux内核、用户程序和共享库,而且它还提供新的Eclipse插件"浏览"工具。

ARM Realview开发环境同时支持单核和多核应用。在ESC上,ARM公司宣布了RealView开发工具套件3.1版的许多新增功能,其中包括首次支持最新的Cortex-M1处理器。Cortex-M1是针对FPGA而设计的一款ARM产品。

Realview 3.1还增强了对ARM CoreSight调试与跟踪技术的支持力度:为调试与跟踪增加多个跟踪数据流,并减少引脚数目;增加了用于ARM Neon SIMD架构的向量化编译器;提供用于微控制器应用的新型microlibC库。新版Realview还支持ARM DSP指令集扩展;性能有了更大的改进,并针对ARM处理器进行了调整;进一步增强了Eclipse项目管理。

澳大利亚Hi-Tech Software公司推出了一种新型编译器技术,该技术可能在今后会对多核设计有所帮助,但是目前,其主要瞄准的还是单处理器,特别是MCU。这种名为Omniscient Code Generation(OCG)的新技术,据称可以同时针对所有程序模块生成目标代码,从而提供真正的全局优化。

"在编译时,用户不需要逐一模块或逐一功能地检查程序,因为OCG可以查找整个程序。"Hi-Tech公司首席执行官Clyde Stubbs表示。对于拥有多个寻址空间的小型芯片来说,OCG可以帮助实现数据自动化分布;对拥有多个寄存器集的大型芯片来说,OCG可以执行完整的程序分析,并对寄存器分配进行优化。

OCG可以检查所有代码模块,收集寄存器、堆栈、指针、对象和变量声明上的数据,并利用这些信息来确保模块间的一致变量和对象声明、优化堆栈和寄存器分配,以及删除无用的变量和函数。

Stubbs表示,OCG技术所产生的代码比Hi-Tech公司现有编译器的代码紧凑20%,比竞争对手的编译器代码紧凑50%。"编程器可以编写看起来像标准ANSI C的代码,而不需要任何特别的扩展来处理内在架构。"他表示。

OCG适用于Microchip的PIC18 MCU系列以及Cypress的混合信号控制器。Hi-Tech公司还计划增加对所有Microchip其它MCU和DSP的支持,以及对基于ARM7的MCU和8051 MCU的支持。

Virtutech是一家为软件开发提供虚拟原型系统的公司,近日推出了新产品Simics VMP。Simics VMP是Simics开发套件中的一个模块,它能够借助英特尔和AMD处理器中的硬件虚拟化功能使代码自行运行。传统上被用于同一服务器以运行多个OS的片上虚拟化功能,被首次应用到软件开发中来,Virtutech公司营销副总裁Paul McLellan指出。

Virtutech公司还将推出Simics 3.2,该版本增加了一些新功能,可以帮助用户在现有流程中集成虚拟化软件开发。新版本改进了与第三方调试工具的集成,并增加了对符号表的支持。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top