木易

xMOS推出xCore-XA系列,集MCU、FPGA和DSP特点于一身

0
阅读(9100)

    就在ARM大行其道之时,英国又出现了一家做微控制器架构的公司——XMOS。
    XMOS是一家年轻的无晶圆厂半导体公司,其实时多核微控制器技术——xCore是从布里斯托大学分离出来的。据xMOS公司企业传播总监Andy Gothard介绍,xCore多核微控制器的响应灵敏度号称比传统的32位微控制器高100多倍!
    有点不可思议哈!那就让笔者细细道来。


xCore的三大特点——实时性、可预见性、灵活性

    xCore架构有别与以往所有微控制器的架构,不是8051 ,不是FPGA ,也不是ARM,但又具有他们的某些特质 。如图1所示。

图1 xCore内部架构

 

    xCore 就是它的逻辑核,可以多个32位处理器内核并行,每个xCore 都有自己一套独立的寄存器组,但是不公开的,用户无需知道。在运行过程中自动处理。核与核之间通过右侧的xConnect通信,也可以叫Channel 。这个Channel在芯片核与核之间可以提供高达1Gbps 的通信速率,对所有的核来说都是0延时的。另外他还有一个独特的地方,如果板子上有两颗芯片,也可以用xConnect 连起来,他们之间的通信速度可以达到500mbps ,也是0延时。而且这个距离可以几米远!对于软件工程师来说,假设用两个8核的芯片,就相当于在一个16个核的芯片上做开发。
    xMOS在实时性方面比传统的MCU 快很多,有美国丹佛大学研究报告为证,如图2所示。


 

图2  xMOS在实时性方面的优势

 

    同时xMOS还是一个时间可确定的架构,因为没有中断,不涉及出栈入栈的动作(用硬件实现),代码执行时间是完全可预测的。具体地说,代码从第一行执行到第100行需要多少时间,完全可以通过开发工具里面的时间分析工具算出来。

    xMOS芯片可用C/C++自由定义输入/出和外设。他是如何做到用软件去实现硬件外设的功能呢?在xMOS提供的xSOFTip里有很多外设,包括以太网的MAC 、CAN、MIDI、ADA等, 通过GPIO下载并添加到自己的项目中使用,不需要CPU 干预,大大减轻了CPU 的负担。这与传统的ARM芯片去软件模拟外设完全不一样。ARM芯片去模拟串口,需要CPU 一直处理GPIO , 还要结合中断响应,处理中断等。
    实时性、时间可确定性、灵活性是xMOS芯片的特点。目前xMOS有三个产品系列,通用、USB、模拟,超过100个客户,应用在音频、工业控制、马达控制、汽车等方面。

 

xCore-XA系列集MCU、FPGA和DSP特点于一身

 

    日期,xMOS发布了采用eXtended架构的xCORE器件产品中的xCORE-XA™系列。xCore-XA系列将多个xCore 32位处理器内核与Silicon Labs公司的一个超低功耗ARM Cortex-M3处理器结合在一起,创造了一种全新的低功耗可编程的SoC。


 

图3 xCore-XA内部架构

 

    xCore-XA系列由Cortex-M3负责控制类工作,xCore核负责算法、实时应用、输入/出等。通过xConnect,核与核之间可以互相通信,也可以与不同的RAM交换数据。

    xCore-XA可电池供电,各种模式下的电流如图4所示。

 

 
    谈到xCore-XA的定位,Andy认为xCore-XA既可以完成MCU的控制功能,也可以实现类似FPGA的标准时序,更能满足DSP的复杂数据运算处理,可谓集MCU、FPGA和DSP的特点于一身。xCore 500MIPS的处理能力,比传统MCU的 100MIPS处理能力高不少,可以完成普通MCU不能完成的事情;与市场上现有的中低端ARM+FPGA的SoC性能相当,但价格、功耗低许多。最新推出的XAU8-1024如果1K的量,每片$16.5。


    据笔者了解,赛灵思Zynq期望上量后的目标价格是每片$15。


    xCore-XA适用于工厂自动化、电站、变电站、便携式设备等对性能要求比较高、环境恶劣、电池供电的场合。

 

    Andy还进一步强调,工程师做FPGA厂商提供的ARM+FPGA的SoC开发,需要了解C/C++、VHDL/Verilog等语言。xCore-XA支持XC、C、C++和汇编的开发。xMOS提供的开发工具有时间分析功能,可以确定代码执行时间;其次是加密性能和代码可动态加载,多层代码支持等;工程师可在xMOS的开发环境里进行ARM和xCore的开发和调试。但需要工程师要用操作系统的概念去开发,从传统的流水线设计程序转到并发性设计,把单任务的代码分散到多任务,这是有一定挑战性的 。