feature article
Subscribe Now

Software Defined Silicon

The Route to Consumer Electronics?

Move over SoCs, ASICs, ASSPs and FPGAs, there is a new acronym on the block: SDS. If the inventors deliver on the claims, then Software Designed Silicon will give consumer electronics designers the power and cost advantages of an SoC, the flexibility of an FPGA, and ease of design like nothing else. And if you have read the discussion of parallel processing by Iann Barron (READ IT HERE ), much of the approach will ring bells.

University Gate is a modern office block in the centre of the West of England city of Bristol, which bridges academe and the commercial world. On one side it faces a slightly grubby and bustling street, and on the other it links directly with the Computer Science Department building of Bristol University. Many of the companies that operate in University Gate are start-ups, and XMOS, the company behind Software Defined Silicon (SDS), is the epitome of university research passing into the commercial world, with David May, Professor of Computer Science, as the company’s CTO.

The basic idea of SDS is simple: define everything that you can for your system in software, including much that is traditionally implemented in hardware, and then run the result on an array of processors. Each task is a thread, and each processor executes a single thread, with no interrupts.

Much of the current debate about the difficulties of parallel processing arises because the multi-core hardware was designed by combining multiple instances of an existing processor architecture (for compatibility with legacy software) and only later trying to work out how to get the software to run on it. If, instead, you develop the processor, its compiler and the development environment together, all using the same model of parallelism, then the problems of programming a massively parallel array become a lot less. And while much software running on PCs is not inherently susceptible to parallelisation, much of what happens inside a piece of consumer electronics is inherently parallel.

That is why XMOS is targeting, not the traditional processor niche, but consumer electronics. The management team argues that the consumer electronics developer needs to create a product that is different from others in the same market sector. Getting that differentiation can be through several routes. The first is to use an SoC/ASIC, which is expensive, complex and time-consuming to develop, although volume costs mean individual devices are relatively cheap. The second route is to buy an ASSP, which will also, by definition, be in use by competitors, and add differentiation through software. Device costs are less but the software development can be difficult and expensive. A third route is to use an FPGA. Development and differentiation are all easier, but the unit cost can often rule this out for price-sensitive applications.

What XMOS is offering is a different route, which they claim will have a unit cost of around a dollar, be fast and efficient in design, and be flexible enough to meet any design requirement.

The silicon starting point is a small, event-driven, processor engine, the XCore. In use, May compares it to an athlete on the starting blocks: the starting gun goes off when an event occurs on a pin, and the XCore is instantly up and running. XCores communicate through XLinks, and, by integrating pin control within the XCore, the whole system, including interfaces, can be implemented in software. System resources for control processing, signal processing and I/O control can all be dynamically allocated, matching the processor to the task. In broad terms, a processor provides communications processing running at 200Mbps (Ethernet MAC and MII interface to Phy in software), signal processing running at approximately 7 MSPS (16-tap FIR), and control software running at 500 MIPS. Each XMOS SDS device will have multiple processors.

Ok, we now have a lot of computing power; how do we use it? The starting point is a simple integrated hardware/software development flow. Systems are built in C/C++ and XMOX C (XC), an extension to standard C that provides access to multithreading and I/O port control, making parallelism explicit. By choosing C, XMOS hopes to tap in to the huge base of experienced C users, and it also allows the use of legacy code for software stacks, etc.  The development flow provides compilers for C/C++ or XC, a linker/assembler, and a soft IP library. It uses the GDB debugger with an Eclipse ICE, and a development board will be available.

The XCore and its related compiler are the fruits of academic research, guided by May, and around this has been assembled a strong team, with senior management bringing experience from semiconductor leaders such as ARM, Oxford Semiconductor, Lucent and Connexant.  And, May points out, “A great bunch of young engineers.”
Although the prototype device is still in TSMC’s 90nm fab, XMOS has already been working with potential users — what CEO James Foster calls ‘teaching customers.’ They have implemented existing designs from ASICs and FPGAs on a simulated target device and given the approach a thorough workout.

The timetable is that in Q4 of this year the details of the architecture will be revealed, and beta versions of the tools will be available. The full launch will be in Q1 2008, with the first device family, the development tools and a library of soft IP all available.

Why is this important? It is clear that while Moore’s Law is making gates freely available, the tools for taking advantage of them are not keeping pace. May has previously said that software efficiency halves every eighteen months, (May’s Law) thus compensating for Moore’s law. And this fall in efficiency is also evident in the tools for designing silicon.

So, to take advantage of all these gates, we need a different approach. Parallelism holds out the possibility of being this, but the multicore approaches so far announced do not yet have the software tools in place that allow developers to take advantage of parallelism. Also, most multicore announcements are of replacement processors for computing applications, rather than controllers for embedded systems.

The SDS approach potentially allows developers of consumer electronics products to take advantage of parallelism with a relatively simple user interface, fast design cycle, and cheap silicon.

Leave a Reply

featured blogs
May 8, 2024
Learn how artificial intelligence of things (AIoT) applications at the edge rely on TSMC's N12e manufacturing processes and specialized semiconductor IP.The post How Synopsys IP and TSMC’s N12e Process are Driving AIoT appeared first on Chip Design....
May 2, 2024
I'm envisioning what one of these pieces would look like on the wall of my office. It would look awesome!...

featured video

Introducing Altera® Agilex 5 FPGAs and SoCs

Sponsored by Intel

Learn about the Altera Agilex 5 FPGA Family for tomorrow’s edge intelligent applications.

To learn more about Agilex 5 visit: Agilex™ 5 FPGA and SoC FPGA Product Overview

featured paper

Altera® FPGAs and SoCs with FPGA AI Suite and OpenVINO™ Toolkit Drive Embedded/Edge AI/Machine Learning Applications

Sponsored by Intel

Describes the emerging use cases of FPGA-based AI inference in edge and custom AI applications, and software and hardware solutions for edge FPGA AI.

Click here to read more

featured chalk talk

Industrial Internet of Things (IIoT)
Sponsored by Mouser Electronics and Eaton
In this episode of Chalk Talk, Amelia Dalton and Mohammad Mohiuddin from Eaton explore the components, communication protocols, and sensing solutions needed for today’s growing IIoT infrastructure. They take a closer look at how Eaton's circuit protection solutions, magnetics, capacitors and terminal blocks can help you ensure the success of your next industrial internet of things design.
Jun 14, 2023
38,192 views