The development of the PULPino open-source microprocessor
In future, it will be easier and cheaper for developers at universities and SMEs to build wearable microelectronic devices and chips for the IoT, 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 open-source software 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.
A prototype of a smartwatch in the laboratory of Luca Benini -- this shows a commercial processor, not PULPino. Credit: ETH Zurich / Frank K. Gurkaynak
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 IoT.
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.
An ETH scientist uses tweezers to mount a PULP microprocessor on to a test board for measurement. Credit: ETH Zurich / Frank K. Gurkaynak
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.
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 open-source hardware community this year.