Why you want OPEN System-on-Chips

Because microelectronics is what makes the world go round.

This post is a synthesis, in the simplest possible format, of the first part of a post from what I consider a really important Open Hardware project, called Precursor".

What is Precursor?

Precursor is a “System on Chip” (SoC), that is one of those really complex microelectronic chips, containing many millions of transistors, that power all the advanced electronics products, from missile guidance systems to game consoles.

What is important in Precursor is that it avoids all the risks described below by being implemented inside an FPGA. This makes Precursor extremely easy to patch, update, or substantially reconfigure, at really minimal cost. The same choice makes Precursor totally transparent for all the companies that would use it in their own products, because the whole internal design would be entirely visible. Finally, since it contains a RISC Core, Precursor would be a very interesting members of that family of regional processors that I consider crucial for Europe, and the rest of the world too.

The cost of this flexibility and openness is big: Precursor declares a 50x price increase of each chip, and a 5-10x decrease in speed. But it is still enough, and worthwhile, for plenty of applications.

The problem that Precursor wants to solve

Why you want OPEN System-on-Chips /img/system-on-chip.jpg

Today’s systems on chip are huge. They fit, in a few square millimeters, all the electronics that only two or three decades ago would have occupied three or four motherboards, each as big as sheets of paper.

The unavoidable price to pay for such a progress is huge complexity: “the full user’s manual for a modern SoC is thousands of pages long”, that can come with hundreds of pages of corrections and updates, and takes years of study to understand. The real problems, however, are that:

  • more often than not, all or most of that documentation is secret, if not lost, or legally unusable, thanks to rounds and rounds of company mergers, or bankrupts
  • many SOCs contain big blocks of disused silicon, that is a waste, and a serious security risc

Quoting from the post:

“Disused silicon is a thing because building chips is less like snapping together Legos, and more like a sculptor chiseling away at a marble block: adding a circuit is much harder than deactivating a circuit."

“But adding a circuit might cost around $1 million, and delay a project by about 70 days; with proper planning, deactivating a circuit may be [much, much simpler, and cheaper too]."

“As a result, even the best documented SoCs will have a non-trivial fraction of transistors that are disused and unaccountable," that is very worrysome from a security standpoint.

Last but not least, for… let’s say cost-saving reasons, the same buggy, undocumented, forgotten because (theoretically) deactivated block… may hide “into hundreds of millions of devices, even across competing brands and dissimilar product lines”, making all of them vulnerable to the first cracker with enough motivation and resources to do it.

This is why you want SOCs to be Open Source. They are all around you. They better be really inspectable.