Open-source microprocessor

March 30, 2016 by Fabio Bergamin, ETH Zurich
Open-source microprocessor
Series of PULP microprocessor chips on a tray. PULPino chips will be smaller, depending on technology and memory size as small as 1 x 1 millimeter. Credit: ETH Zurich / Frank K. Gurkaynak

In future, it will be easier and cheaper for developers at universities and SMEs to build wearable microelectronic devices and chips for the internet of things, thanks to the PULPino open-source processor, which has been developed at ETH Zurich and the University of Bologna.

Software source codes and hardware designs tend to be closely guarded trade secrets. Not so with open-source products. For instance, the code of is freely available to all: the best known example is the Linux operating system. Not only are interested developers able to use the software, they can also further develop it and adapt it to their own needs.

Open-source products also exist on the hardware side. Examples are open micro-controller boards such as Arduino or Raspberry Pi, of which blueprints are publicly available. However, these boards are based on commercial chips, whose internal architecture is not open-source. A few days ago, scientists at ETH Zurich and the University of Bologna, led by ETH Professor Luca Benini, open sourced the full design of one of their microprocessor systems - in a way that maximises the freedom of other developers to use and change the system, says Benini. "It will now be possible to build open source hardware from the ground up."

"In many recent examples of open-source hardware, usage is restricted by exclusive marketing rights and non-competition clauses," says Benini. "Our system, however, doesn't have any strings attached when it comes to licensing." The arithmetic instructions that the microprocessor can perform are also open source: the scientists made the processor compatible with an open-source instruction set - RISC-V - developed at the University of California in Berkeley.

Open-source microprocessor
A prototype of a smartwatch in the laboratory of Luca Benini -- this shows a commercial processor, not PULPino. Credit: ETH Zurich / Frank K. Gurkaynak

Processor for wearable microsystems

The new processor is called PULPino and it is designed for battery-powered devices with extremely low energy consumption (PULP stands for 'parallel ultra low power'). These could be for chips for small devices, such as smartwatches, sensors for monitoring physiological functions (which can communicate with a heart rate monitor, for instance) or sensors for the Internet of Things.

Benini offers an example from the research currently underway in his lab: "Using the PULPino processor, we are developing a smartwatch equipped with electronics and a micro camera. It can analyse visual information and use it to determine the user's whereabouts. The idea is that such a smartwatch could one day control something like home electronics." It is quite a challenge to accommodate all this in the smallest of spaces on a microprocessor with a tiny power draw of only a few milliwatts, particularly since the computing capacity for the image analysis must be sufficiently large.

Open-source microprocessor
An ETH scientist uses tweezers to mount a PULP microprocessor on to a test board for measurement. Credit: ETH Zurich / Frank K. Gurkaynak

Joint development

PULPino is also being used in other research projects that Benini is working on with Swiss and European research institutions, including Cambridge University. The fact that the processor is now open source in these projects gives the ETH professor great hope: "Until now, such research projects came about mainly as a result of personal contacts, and the partners had to negotiate a separate license agreement for each project. PULPino is now more easily available. We hope that there will be more collaborations in the future and that these will also be easier."

The scientists want to work with other project partners to jointly develop academically interesting extensions to PULPino; these would also be open source, thus allowing the number of the hardware's functional components to steadily grow.

Interesting for the industry

But PULPino should also be of benefit to the SME environment typical in Switzerland and Europe. "The production of microchips has become cheap in recent years because semiconductor manufacturers have built up large production capacities that they must use," explains Benini. More expensive is the design process: "It would be far too expensive in terms of engineering effort to design a complex chip from scratch, especially for SMEs. Instead, developers usually purchase pre-designed functional components that they integrate in the chip design. The licensing fees for such components are often a substantial portion of the overall production costs."

Development costs are reduced considerably with the open-source royalty-free design, which benefits SMEs as well as ETH, says Benini: "It could result in new research and development partnerships with industry to jointly develop novel chip components on the basis of PULPino." PULPino's developers are therefore planning to make their microprocessor more widely known to the hardware community this year.

Explore further: Open-source GPU could push computing power to the next level

Related Stories

Apple releases Swift programming language as open source

December 4, 2015

Apple today announced that its Swift programming language is now open source. As an open source language, the broad community of talented developers—from app developers to educational institutions to enterprises—can contribute ...

Tool chain for real-time programming

March 21, 2016

In aerospace, automation, and automotive technologies, smart electronic computer systems have to meet a number of security and real-time requirements. In case of critical incidents, for instance, the software's response time ...

Researchers study motivations of open-source programmers

November 18, 2015

Open source software development is a model that provides free public access to software packages and source code. Since programmers can freely contribute improvements, bug fixes and modifications, open source development ...

Recommended for you


Please sign in to add a comment. Registration is free, and takes less than a minute. Read more

Click here to reset your password.
Sign in to get notified via email when new comments are made.