Externally Programmable Memory Management Unit for Multi-Processor Systems
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In multi-processor devices, secondary processors are restricted from calculating configuration information independently due to security concerns, leading to potential data integrity issues and inefficiencies, as they rely on the primary processor for configuration, limiting their operational flexibility.
Innovation Solution
An externally programmable memory management unit (MMU) is introduced, allowing a primary processor to program configuration values for a secondary processor, enabling it to perform address translation without relying on the primary processor, and providing an internal interface for unrestricted operations.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If secondary processors are restricted from calculating configuration information independently, then data integrity is maintained, but operational flexibility and efficiency deteriorate
Solution Approach 1:
The configuration space is segmented into two distinct parts: secure configuration values that must be programmed by the primary processor, and flexible configuration values that the secondary processor can calculate independently. This segmentation allows the system to maintain data integrity for critical parameters while enabling operational flexibility for non-critical parameters.
Solution Approach 2:
Different quality requirements are applied to different configuration parameters. Critical security-related parameters are protected with restricted write access, while non-critical parameters allow independent calculation. This local differentiation resolves the contradiction by applying appropriate control levels to specific configuration areas.
2Reliability
If secondary processors rely on primary processor for configuration, then security is improved, but processing efficiency deteriorates
Solution Approach 1:
Configuration parameters are segmented into secure and flexible categories, allowing the secondary processor to independently configure non-critical parameters without waiting for the primary processor, thereby improving processing efficiency while maintaining security for critical parameters.
Solution Approach 2:
The secondary processor is empowered to self-configure flexible parameters independently without requiring primary processor intervention. This self-service capability improves processing efficiency by eliminating unnecessary communication overhead while the secure parameter programming mechanism maintains security requirements.
3Adaptability or versatility
If secondary processors are given full independence to calculate configuration information, then operational flexibility is improved, but data integrity deteriorates
Solution Approach 1:
Different integrity requirements are applied locally to different configuration parameters. Critical parameters maintain restricted access for data integrity, while non-critical parameters allow independent calculation for operational flexibility. This local quality differentiation resolves the contradiction.
Solution Approach 2:
The configuration space is divided into secure and flexible segments, allowing the secondary processor to independently configure non-critical parameters while the primary processor maintains control over critical parameters, thus preserving data integrity where needed while enabling flexibility where appropriate.
4Reliability
If primary processor programs all configuration values, then security control is improved, but device complexity increases
Solution Approach 1:
Configuration management is segmented into two streams: secure parameter programming by the primary processor and flexible parameter self-configuration by the secondary processor. This segmentation reduces configuration management complexity by eliminating the need for the primary processor to handle all configuration tasks while maintaining security control over critical parameters.
Solution Approach 2:
The secondary processor performs self-service for configuring flexible parameters, eliminating the need for primary processor involvement in non-critical configuration tasks. This reduces overall device complexity by distributing configuration responsibilities appropriately while the primary processor maintains security control over critical parameters.
Data Source
AI summary
A method includes reading, by a processor, one or more configuration values from a storage device or a memory management unit. The method also includes loading the one or more configuration values into one or more registers of the processor. The one or more registers are useable by the processor to perform address translation.


