System on Chip Architecture Tutorial
-Aviral Mittal

Connect @


This techerature is about architectural level considerations when designing a System on Chip. Again, the scope is around the SoCs which will use ARM's Cortex-M class processors.

The first issue perhaps is Hosted Vs Hostless SoC:
Let us first learn a bit about what is a Hosted vs Hostless SoC
A Hosted SoC is the one which is typically a 'companion' chip to a large SoC. The large SoC is termed as the Host SoC: An example of Hosted SoC could be a small Blue-tooth + Display Driver SoC for a LTE SmartWatch, where the LTE SoC is the large Host, and this small Blue-tooth + Display Dirver is the Hosted SoC i.e. the companion SoC. The function of the small 'hosted' or the 'companion' SoC is quite dependent upon the Large Host SoC. Typically the Host SoC will have the main application processor, and the Operating System, and will control the small companion SoC via a chip-to-chip link e.g. PCIe or SPI etc, and thus the Hosted SoC would appear to the Host as a kind of peripheral device.
A Hostless SoC is quite self-sufficient, and is primarily the main SoC on the circuit board. It will typically have its own application processor and its own operating system. An example could be an Audio + Bluetooth SoC for headphone or a speaker. The function of this SoC isn't dependent upon any other SoC on the same circuit board, and it is the main SoC on the board. Typically the Micro-controller SoCs would also fall in this category.

So why it is important to consider Hosted Vs HostLess?
For Hosted SoC, the designer may use the resources on the system that are present for the large Host SoC for example, for a Hosted SoC, you may want to use the NVM memory of the Host SoC to store all the code, and the code can then be downloaded from the Host SoC to the Hosted SoC. This means that the Hosted SoC can be a SoC with no NVM. This means that the architecture of this SoC will be significantly different, now that the code is downloaded into its RAM. RAM is very fast as compared to NVM, so downloading the code directly to RAM and running from RAM may eliminate the need of a processor Cache memory for example.
This is just one example showing how the design of the SoC may be impacted by it being Hosted Vs Hostless. There can be numerous such examples.

There can be a SoC which can work both in Hosted or Hostless Mode. However these will be beyond scope of this techerature.

The Scope of this Techerature:
This tutorial will assume that the SoC is Host-less i.e. self-sufficient, and has minimum dependency upon other SoCs. A typical example could be a Audio SoC which has a Blue-Tooth and Wi-Fi functionality integrated. Or an IoT SoC again with BT and/or Wi-Fi integrated.

                                      Next => Which Cortex-M processor? Processor Selection for your SoC

Click Here to Make Comments or ask Questions