High Level Modeling System Runtime Module Extension
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
High-level modeling systems (HLMS) for integrated circuit design lack flexibility and user-friendliness, particularly in creating complex system designs, due to limitations in hardware description languages (HDLs) such as VHDL or Verilog, which restrict dynamic behavior and adaptability of modules.
Innovation Solution
Implementing a method within an HLMS that uses extendable, higher-order functions for modules, allowing runtime extension, introspection, and dynamic modification of port interfaces, enabling recursive extension and late binding, which facilitates dynamic partial reconfiguration and adaptability of electronic system designs.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If hardware description languages (HDLs) are used to describe modules, then structural composition and behavioral properties can be defined, but flexibility and user-friendliness are reduced
Solution Approach 1:
The patent applies dynamics by enabling modules to be extended and modified at runtime through higher-order functions. The system transitions from static HDL descriptions to dynamic module compositions where modules can be created, extended, and bound during execution, allowing the design to adapt flexibly while maintaining ease of use through a user-friendly HLMS interface.
Solution Approach 2:
The patent changes the fundamental parameters of module definition from fixed compile-time HDL specifications to flexible runtime parameters. Modules can be parameterized with higher-order functions that accept other modules as arguments, enabling dynamic configuration and extension without recompilation, thus improving both flexibility and user-friendliness.
2Adaptability or versatility
If traditional HDLs are used for module description, then structural composition is defined, but dynamic behavior and adaptability are restricted
Solution Approach 1:
The patent introduces an intermediary layer (the HLMS with higher-order function mechanism) between the user and the underlying HDL implementation. This intermediary enables dynamic behavior by allowing modules to be extended and bound at runtime, while the HLMS manages the complexity of these operations, presenting a simplified interface to users and thus improving dynamic behavior without exposing excessive system complexity.
Solution Approach 2:
The patent extracts the dynamic extension and binding operations from the static HDL description process. By separating the module definition (in HDL) from the module extension and composition (through higher-order functions in the HLMS), the system enables dynamic behavior while managing complexity through a layered approach where each layer handles specific concerns.
3Adaptability or versatility
If modules are extended at runtime with extensions, then design flexibility is improved, but system complexity increases
Solution Approach 1:
The patent applies self-service by enabling modules to introspect the system template and automatically determine appropriate extensions and bindings. Modules can query the system state and self-configure by binding to appropriate other modules, which reduces the need for complex external control mechanisms and manages system complexity while maintaining design flexibility.
Solution Approach 2:
The patent implements feedback mechanisms where modules introspect the system template to determine their configuration and bindings. This feedback loop allows modules to automatically adapt to the current system state, enabling runtime extension and modification while the feedback information guides the extension process, thus improving design flexibility without proportionally increasing system complexity.
Data Source
AI summary
Within a high level modeling system (HLMS) comprising a processor and a memory, a method can include executing a system template comprising a plurality of modules of an electronic system, wherein each module represents a hardware component of the electronic system and is specified in the form of an extendable, higher order function, and extending, during runtime, a first module of the plurality of modules with a first extension by binding, via the processor, the first extension to the first module. The plurality of modules comprising the first extension to the first module can be stored within the memory.


