The xCORE Multicore Microcontroller Architecture

THE xCORE DIFFERENCE


  • select your exact interfaces & peripherals
  • guaranteed real-time performance
  • sub 10ns response time

Today’s microcontroller market is crammed with me-too products. xCORE multicore microcontrollers take a different approach. When you design with xCORE, you get everything that you’d expect from a traditional microcontroller, such as a C-based design flow supported by a best-in-class development tool set and software libraries that implement common functions and many higher-level applications. The difference with xCORE is that our products are designed from the ground up to solve problems that are beyond traditional micros.

  • Multiple deterministic processor cores that can execute several tasks simultaneously and independently.
  • External interfaces and peripherals are implemented in software – you choose the exact combination of interfaces you need.
  • Perform static timing analysis and hardware-like simulations on your designs, using unique development tools that use the determinism of the architecture.
  • Test on real hardware and collect real-time data from a running application.

 

xCORE SILICON FAMILIES

xCORE devices are available as fixed function application specific processors or completely flexible multicore microcontrollers:


Our multicore microcontrollers, offering up to 32 logical cores and 4000MIPS processing power, with option for embedded flash. Ideal for platform developers.


Audio-specific processors that meet the demands of both high-resolution consumer audio and complex multichannel professional audio applications.

 

The xCORE Architecture Flyer details the unique features of the xCORE architecture,
and how it compares to traditional microcontrollers.

DOWNLOAD xCORE ARCHITECTURE FLYER

 

UNBEATABLE RESPONSIVENESS


  • Hardware-Response ports
  • 100x more responsive
  • no interrupts, no caches

The unparalleled responsiveness of the xCORE Hardware Response I/O ports is rooted in some fundamental features:

  • Single cycle instruction execution
  • No interrupts
  • No cache
  • Multiple cores allow concurrent independent task execution
  • Hardware scheduler performs 'RTOS-like' functions
  • Communication between tiles managed by the hardware xCONNECT switch
  • I/O ports programmable to wait for any number of input events

Data can be serialized and deserialized, and input ports can discard any data until a condition is met. Input and output can be done at an exact number of clock ticks in the future, and input signals can be time-stamped to ensure real-time performance is maintained.

Download Benchmark Methods to Analyze Embedded Processors and Systems benchmark

Read more about the xCORE responsiveness in the I/O response speed of microprocessors benchmark

DOWNLOAD I/O RESPONSE BENCHMARK

 

  • develop and deploy xCORE-based applications
  • C/C++ software development environment
  • free download for Windows, Mac OS X, Linux 32/64

Start programming xCORE multicore microcontrollers using xTIMEcomposer, our C/C++ based software development environment that delivers real-time performance with full timing validation.

  • Built on industry standard tools including GDB debugger and LLVM compilers
  • Guarantee you timing deadlines using XMOS Timing Analyzer
  • See what's happening using the real-time xSCOPE logic analyzer
  • Test and debug code on xCORE devices or simulator
  • Program and encrypt images to flash, and enable secure bootloaders
  • Integrated into Eclipse IDE; command line version available
  • Runs on Windows, Linux and Mac OSX platforms

Our Introduction to Programming XMOS devices provides a quick introduction to the key features of event driven programming and memory management using xCORE and xTIMEcomposer.

The xTIMEcomposer Studio Flyer explains the key tools of the tools suite, and the outlines the different features of the Community/Enterprise Editions.

DOWNLOAD xTIMEcomposer STUDIO FLYER

 

xSCOPE LOGIC ANALYSER


  • monitor state variables, control loops, I/O and data streams in real-time

The xSCOPE logic analyzer provides real-time, in-circuit instrumentation of user specified data probes, without affecting your design or device operation. Once the target device is connected to your host using an xTAG, xSCOPE behaves exactly like a traditional oscilloscope.

You have a time base control, multiple input channels, scales, triggers and a convenient "autoset" command to automatically choose the best scaling. Each probe outputs the user data, the formatting, a core ID (in case multiple cores are running the same code) and a 10ns time stamp. This provides a wealth of information and allows you to easily debug your complete system.

Finally, if you want to use traditional debug techniques, there's a fast printf mode you can apply to xCORE powered systems.

The xSCOPE application notes provide many examples of how to use the logic analyser.

SHOW xSCOPE APPLICATION NOTES

Import, build, run a project; output data stream using xSCOPE

 

XTA: TIMING ANALYZER


  • guarantee timing closure
  • deterministic architecture
  • integrate with build systems

Our XMOS Timing Analyser (XTA) analyzes your application binary and reports the worst and best case timing paths through your code. It provides 100% coverage of your code without the need for a test bench, and eliminates the need to over specify processing power or timing. The XTA reports any slack in the timing so you can add more functionality, or reduce operating frequency to save power.

XTA is a unique tool that uses the determinism of the xCORE architecture to guarantee the performance and behavior of your code. The XTA API lets you add the tool into your build systems, and verify application timing requirements every time you build your application.

Our XTA application notes contain many examples and executable code that you can quickly add to your project.

SHOW XTA APPLICATION NOTES