X-One – Preliminary schematic v0.10

November 24, 2009

I’ve talked a few times about the X-One Xmos based console so I thought better put up a schematic to show how it all goes together. A Xmos XC-2 is found at the heart of the console with the rest of the circuit providing a R-2R video DAC, PWM audio and SD Card interface. Ethernet is provided by the XC-2 card its self. The software kernel is Yvo’s VDP video engine.

The pdf is here: XC-2 VGA 0v10

Xmos Development Board comparison

November 13, 2009

With all the recent Xmos development boards coming out I thought it would be a good idea to compile a comparison list. The full list is here (pdf) but a quick comparison of those boards costing less than $100 is shown below:

Feature Xmos





XS1-L1 64

Cost $99.00 $99.00** $49.95
Processor XS1-G4 XS1-L1 XS1-L1
# Pins 512 128 64
# Cores 4 1 1
Max MIPS 1600 MIPS 400 MIPS 400 MIPS
Memory – RAM 4x 64Kx8 64Kx8 64Kx8
SPI Flash 0 512Kx8 128Kx8
User I/O 60 I/O 24 I/O 32 I/O
User Interfaces USB none USB
User LED’s 12 4 2
User Switches 4 2 none
Programming I/F via USB JTAG JTAG
XSYS I/F none 2 1
Other I/F Speaker none none
Board Size 85 x 54mm 50 x 50mm 84 x 64mm


** Includes Xmos XTAG2 USB-JTAG programming adapter (costs $50)


Port details for the Sparkfun XS1-L1 64 Development Board

November 11, 2009

Port details for the Sparkfun XS1-L164 Development Board (pdf is here)

Ports for XS1-L1 64
Pin Name Pin ID 1-bit 4-bit 8-bit 16-bit Description
X0D0 16 P1A0 MISO
X0D1 15 P1B0 SS
X0D2 14 P4A0 P8A0 P16A0 JP15 #25
X0D3 12 P4A1 P8A1 P16A1 JP15 #24
X0D4 11 P4B0 P8A2 P16A2 JP15 #23
X0D5 10 P4B1 P8A3 P16A3 JP15 #22
X0D6 7 P4B2 P8A4 P16A4 JP15 #21
X0D7 5 P4B3 P8A5 P16A5 JP15 #20
X0D8 3 P4A2 P8A6 P16A6 JP15 #19
X0D9 2 P4A3 P8A7 P16A7 JP15 #18
X0D10 1 P1C0 SCK
X0D11 64 P1D0 MOSI
X0D12 63 P1E0 JP15 #17
X0D13 62 P1F0 JP15 #16
X0D14 59 P4C0 P8B0 P16A8 JP15 #15
X0D15 58 P4C1 P8B1 P16A9 JP15 #14
X0D16 57 P4D0 P8B2 P16A1 JP15 #13 / TXU1
X0D17 56 P4D1 P8B3 P16A1 JP15 #12 / TXU0
X0D18 55 P4D2 P8B4 P16A1 JP15 #11 / TXD0
X0D19 54 P4D3 P8B5 P16A1 JP15 #10 / TXD1
X0D20 51 P4C2 P8B6 P16A1 JP15 #9
X0D21 50 P4C3 P8B7 P16A1 JP15 #8
X0D22 49 P1G0 JP15 #7
X0D23 48 P1H0 JP15 #6 / TX-O
X0D24 47 P1I0 JP15 #5 / RX-I
X0D25 46 P1J0 JP15 #4
X0D26 45 P4E0 JP15 #3
X0D27 44 P4E1 JP15 #2
X0D32 36 P4E2 JP9 #5
X0D33 35 P4E3 JP9 #6
X0D34 34 P1K0 JP9 #7
X0D35 33 P1L0 JP9 #8
X0D36 42 P1M0 JP9 #1
X0D37 41 P1N0 JP9 #2
X0D38 39 P1O0 JP9 #3
X0D39 38 P1P0 JP9 #4

Sparkfun XS1-L164 Development Board

November 7, 2009

Sparkfun have a new Xmos based development board. It features the powerful Xmos XS1-L1, multi-threaded processor. The processor is the XS1-L1-64 processor and is housed in a 64LQFP package and has the following features:

  • Event driven processing at 400MIPS
  • 64 kBytes of SRAM
  • 8 threads
  • 36 user I/O pins
  • 8 kBytes of OTP
  • power consumption typically 450µW/MHz

sparkfun XS1-L1-64 2

As well as the Xmos processor the SparkFun development board also features a USB interface based on FTDI FT232, external Flash EEPROM and a JTAG header. I/O is provided by 32 I/O pins brought out to pin headers next to a small prototyping area. Checking out its schematic, it looks like it can be powered form both a wall adapter and its USB port. The USB interface is to support a UART over USB and can’t be used to directly program the processor. Instead a 20-pin JTAG interface is provided. This looks to be compatible with Xmos’s own XK-1 JTAG interface and therefore Xmos new XTAG2. I’m hoping my XC-2 JTAG adapter will work with it as well.

Its competitively price at $50 or ~£30 but you still need to provide a JTAG adapter but these are available for $50. The only criticism I would make is I would liked to see the on board USB used to provide a programming (JTAG) interface as Xmos did with their XC-5 board but that said I’m hoping to get one soon and use it in my X-One console with Yvo’s VDP VGA video driver.

Manic Miner on X-One Console

November 3, 2009

As promised in my post of 15th October, here’s some screen shots of Manic Miner on my Xmos XC-2 based X-One console. So far I’ve only coded level 1 and I need to add code for the SNES controllers and game play and off course the rest of the 20 levels to finish it off.

Manic Miner Lvl 1

The graphics were hand coded by extracting the pixel data and colour attributes for the first level from a Manic Miner ZX spectrum binary. A very mandraulic process involving switching between two editors and a couple of editor macros but it got the job done. I used Andrew Broads and Icemans (Chris Wild) excellent web sites for the screen layout information. The video engine is Yvo’s VDP for the XC-2 which provides up to 2 backgrounds and up to 32 sprites (8×8, 16×16, 32×32, 64×64 etc)

Manic Miner on X-One
Watch this space more to come.


October 15, 2009

Its a year to the day that I first heard about Xmos and their cool multi-core multi-threaded processors and joined the Xlinkers community. So I want to share some pictures of a XC-2 project I’ve been working on.

X-One from Front

X-One from Front

X-One from above

X-One from above

I’ve used Yvo’s great VDP video driver to get VGA graphics working on the prototype with R-2R resistor DAC for the video and a couple of spare SNES controllers for the gaming inputs.

I’m porting a classic 80’s video game, so watch this space 😉


October 13, 2009

The XMOSLinkers site has another interesting project involving XMOS multicore processors. This time its Corin Rathbone from Bristol University NetScope that is worthy of blog mention.

NetScope is a multfunction instrument with a 2ch Oscilloscope and 8-ch Logic Analyser. The instruments specification is as follows:

  • * Analogue Channels: 2
    * Analogue Channels Maximum Sampling Rate: 40 Msps
    * Analogue Bandwidth: 20 MHz
    * Vertical Resolution: 12 bits
    * Dynamic Range: 72 dB
    * Analogue Input: 1M / 15pF BNC
    * Analogue Input Coupling: AC/DC (Software Controlled)
    * Analogue Input Voltage Range: -5V to +5V (In 1x Mode)
    * Analogue Input Absolute Maximum Voltage Range: -5.5 to 5.5V

    * Digital Channels: 8
    * Digital Channels Maximum Sampling Rate: 50 Msps
    * Digital Voltage Range: 0-5V
    * Digital Absolute Maximum Voltage Range: -0.5 to 5.5V
    * Digital Logic Level High: 2V

  • In addition the instrument has its own web server and user connects to it through a standard web browser. Standard HTML pages show the scope traces with data from the analogue or digital inputs is
    displayed to the user via scalable vector graphics (SVG).

    Corins prototype consisted of a XMOS XS1-G Development Kit (XDK) and a set of custom PCB’s for the fast ADC and signal condition electronics. His boards were designed and laid out using KiCad, with the majority of the components surface mount.