An embedded core is a core in an SoC that does not support a rich operating system (such as Linux). In this context ‘core’ will almost always refer to an instruction processor. Embedded cores are used in a broad range of embedded devices where power, area, and cost constraints take priority.
Why embedded cores?
Embedded cores are used in many different applications. Some examples include:
Firmware processors (for example in bigger processors such as GPUs and Neural Network Accelerators).
Microprocessors for controlling electromechanical systems (for example motors, suspension systems, or camera autofocus).
Common wireless interfaces such as Wi-Fi or Bluetooth (using embedded cores for handling the communications protocol).
Embedded cores are often used for a specific use case where optimal PPA for a specific application are required. While there are many predefined embedded cores available on the processor market, getting optimal features and PPA for a given use case is best achieved using an application specific processor.
Such an application specific processor can be obtained by optimizing Codasip embedded cores such as L11 and L31 with Codasip Studio.
The following diagram is an example simplified representation of an embedded core at block level (in this case, the example shows the Codasip L31 block diagram).