Securing Today’s Embedded Systems
For many years, MIPS and our customers have focused on providing secure solutions for products in our target markets. This includes home entertainment devices such as set-top boxes, where securing content is of primary importance to OEMs, broadcasters and cable operators.
Secure provisioning on embedded systems continues to grow in importance, as consumers increasingly access valuable assets such as multimedia content (e.g. video, audio and games), financial information and enterprise connectivity from mobile devices.
MIPS takes security seriously. We work closely with industry-leading partners to provide our customers with a range of security options that meet the stringent requirements of today’s home entertainment, networking, mobile and embedded products.
What is a Secure System?
A system is secure and reliable if it can ensure continued operation of any given application without unintended modification or loss of data. Applications that handle high-value content must ensure the security of cryptographic keys, decrypted multimedia content and sensitive financial data. In order to secure these assets, they must be isolated from the applications that run on rich operating systems. There also is a need to isolate each of these secure assets from each other.
What Constitutes a Secure SoC?
The key elements of a secure SoC include secure boot, secure key storage, trusted execution environment, secure data path and secure debug.
Key Elements of a Secure SoC
Implementing a Secure SoC
One way to isolate secure assets from non-secure applications is to contain them in a separate subsystem. A secure partition can be implemented with another MIPS core or by using solutions from MIPS partners such as Discretix or Elliptic.
Single core Secure Soc with Virtualization
Another method is to virtualize the single core to create multiple secure and non-secure partitions. Virtualization can be achieved with software only (para virtualized) or with hardware assistance.
Logical stack with Hypervisor and Virtualization
Security with Virtualization
Virtualization enables the creation of multiple execution environments (guests), which are either secure or non-secure, and are isolated from each other. A Hypervisor manages all of the privileged resources to define the access policies for each guest. The Hypervisor is the secure element that is authenticated via the secure boot process. Guests can communicate with the Hypervisor via secure APIs. The Hypervisor isolates each of the guests from one another. Secure applications demand multiple secure environments, and it is important to note that the Hypervisor can host multiple, secure environments that are isolated from each other. This also ensures the reliability of the system by allowing the rest of the guests to operate reliably even if one of the virtual machines crashes. Hypervisors have a smaller footprint compared to rich operating systems, and hence have an easier time achieving security certification.
A Virtualized Stack
The Hypervisor manages all memory I/O privileges of the subsystems. The figure below illustrates how the access policies are managed by the Hypervisor in a virtualized system.
Access policies are managed by the Hypervisor in a virtualized system.
Hypervisor
Pike OS from Sysgo runs on a range of MIPS cores and currently supports para virtualization. Salient features of Pike OS are:
- ARINC 653 and MILS (security) compliant architecture
- Provides different guest operating systems
- Supports multi core CPUs
- Highly portable
- Certifiable according to safety and security standards
- DO-178B, IEC-61508, ISO 26262, EN-50128, Common Criteria
- Modular certification package
- State of the art development environment
MIPS Security Partners



