My understanding of the main parts of an SoC are:
- Microcontroller
- RAM (volatile memory)
- Flash/solid state RAM (permanent memory)
- Clock/Oscillator
- Ethernet NIC
- Power Management
- Bus (to connect everything above)
I Googled "open source X" for all the components above (substituting "X" for each item, e.g. "open source microcontroller", etc.) and, to my surpise, only found a single project, OpenCore, dedicated to the design of OSH components for SoCs.
The problem is, all the OpenCore sub-projects (for MCUs, RAM, Ethernet, etc.) haven't been updated since 2009 (it's currently 2015)! This indicates that the project has largely been abandoned.
So I have to ask:
- What are all the OSH components that would be required to produce an actual, modern open source SoC (if my list above is misleading or lacking); and
- Have I missed any other (active/modern) projects, besides OpenCore? If not, then why are there so few OSH projects for SoC componentry? Do patents get in the way or something?