More in

XMOS blends its xCORE architecture with a Cortex-M3 core

4 mins read

It's fair to say that Bristol based XMOS has had a bumpy ride since it made its debut in the middle of 2007. At the time, the company made a play of providing a different way of meeting engineers' product needs: software defined silicon.

The term may sound familiar: it's possible to describe an fpga in this way, but XMOS has always maintained its products offer a better 'bang for your buck' and lower power consumption. To a certain extent, it's also had asics in its sights, believing it can offer better design turn around times. At the heart of its technology is the xCore, something which it describes as a scalable multicore microcontroller which can also handle parallel processing tasks. But the fact that it isn't a microcontroller in the true sense of the word is said to suit xCore to a range of demanding embedded applications in the consumer, industrial and automotive worlds. XMOS has had success with its earlier products, particularly in some consumer audio applications, and notes Sony amongst its customers. With some 1000 active customers and 5000 downloads of its design tools, the company is now 'growing rapidly'. Around 200 of its customers have spent 'significant amounts' and chief executive Nigel Toon says it feels like the company has momentum, adding there is a 'strong pipeline' of new customers and projects, with three times the number of 'major customers' compared to 2012. "There are a lot of indicators that we're heading in the right direction," he asserted. But the one market which appears to have largely eluded XMOS is embedded systems. While the XMOS architecture has some notable features, one drawback to its wider application is the lack of compatibility with an embedded world dominated by ARM. That apparent drawback has been addressed with the recent launch of the xCORE-XA range. XA – or extended architecture – brings an ARM Cortex-M3 core into the fold and creates what Toon calls 'the next wave in programmable SoC products'. "What is xCORE good for?," he asked rhetorically. "It allows hardware to be developed in software. Designers can build deterministic software and create complex control schemes with some level of dsp that can't be done in a microcontroller."
He admitted ARM is the big player in the market at which XMOS is looking. "It has a huge ecosystem. But should we be looking to replace ARM in the market or should we form a partnership?" Logically, Toon chose the latter route, but not with ARM itself. Instead, it has entered a technology partnership with Energy Micro which provides access to the latter's EFM32 Gecko mcu: which boasts one of the lowest power consumptions of all Cortex-M3 based devices. "Rather than reinvent things," Toon continued, "we went to Energy Micro, not only getting access to the core, but also to its lower energy peripherals. There is no overlap between us. " And then Energy Micro was acquired by Silicon Labs, although this move has not affected product development. "We did look at the M4," Toon admitted, "but there's more code available for the M3." "We have been working closely with XMOS over the last 12 months to help bring this new class of product to market," said Energy Micro founder Geir Forre, now general manager of Silicon Labs' microcontroller product business. "It is exciting to see our EFM32 Gecko mcu technology being used in a leading multicore microcontroller architecture that delivers such flexibility." The xCORE/Cortex-M3 combination has been launched in the shape of the XA family and the first member is the XA-U8-1024 (see fig 1). The part integrates seven xCORE logical cores and a Cortex-M3. It also comes with 192k of sram – 64k for the xCORES and 128k for the M3 – and 1Mbyte of flash. The two apparently different worlds of xCORE and ARM are linked through the xCORE interconnect. The benefit of bringing together the two worlds, said Toon, is to allow embedded system designers to create a device which has exactly the right features for their project. But the difference between now and then is that they can now bring with them legacy ARM binary code. "We believe xCORE-XA represents a completely new class of programmable SoC," Toon continued. "Now we can bring system level programmable configuration with hardware levels of real time performance to low energy battery powered applications, configured and programmed completely in software." XA products are two die solutions: one integrates the M3 and hard peripherals; the other has the xCOREs and hardware response ports. The combination of the two dice is claimed to bring high computing performance with low power consumption. According to Toon, the U8-1024 offers a performance of 500MIPs, of which 60MIPs comes from the Cortex-M3. "It's balanced from a processing point of view," Toon opined. However, it does so with frugal energy requirements. Five power modes are supported, ranging from deep sleep to performance modes. "In deep sleep mode," said Toon, "the device draws about 100nA: that's five orders of magnitude better than the best fpga solution." The M3 core is turned on in low power mode and the xCOREs are turned on in performance mode. "When the device is running at 500MIPs with all its peripherals turned on, it will draw about 200mW from a 3.3V supply," he added. The inclusion of seven xCOREs in the first XA device is simply a matter of timing within the interconnect, said Toon. "The ARM core becomes another channel within the xCORE architecture." Future additions to the XA family will include six core variants: five xCOREs and an M3. Similarly, variants will be available with 512k of flash. And a potential future product could integrate rf functionality. Energy Micro had been working to bring a microcontroller range with integrated rf to market, but that hadn't happened by the time it was acquired. XMOS can supply a range of development tools, but will also provide a GNU compiler maintained by ARM. "We've learned from the fpga market," Toon contended. "The tools will allow users to program the ARM core or the xCOREs and to share variables. They can start from wherever they want." With applications such as smart control and real time networks in mind, Toon said the vision for XA is to enable performance, real time applications that are hard to do on a basic mcu. "We can deliver the performance needed," he said. XA devices will be in full production by the middle of 2014, said Toon, and will cost around $16 through distribution. "They will allow embedded engineers to develop the system they want, but entirely in software," he concluded. XMOS has launched startKIT based on the XS1-A8-64-DEV, a 500MIPS device with eight 32bit logical processing cores. In addition to the xCORE, startKIT includes an array of leds, a pushbutton switch, two capacitive sense sliders and a sliceCARD connector. Designed to allow quick evaluation of xCORE devices, startKIT comes with header connections that make it a real time I/O solution for Raspberry Pi projects.