Function Block Configuration Circuit for Real-Time Partial Reconfiguration
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing integrated circuit devices with programmable resources face challenges in efficient configuration and reconfiguration due to the need for large and memory/compute-intensive software to manage global snapshot states of tens of thousands of independent functional blocks, requiring hours to run on powerful computers.
Innovation Solution
A circuit and method for configuring function blocks of an integrated circuit device using addressable buses and distributed configuration memory arrays, with local control mechanisms like Programming Control and Status Registers (PCSR) for independent functional blocks, reducing the need for global control signals and enabling real-time software-driven reconfiguration.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If global control signals with local state elements (GSC bits) are used to control reconfiguration of independent functional blocks, then the device can achieve reconfiguration capability, but the software becomes very large and memory/compute intensive, requiring hours to run on powerful computers
Solution Approach 1:
The patent segments the monolithic global control system into distributed hierarchical control elements. Each functional block or group of blocks has its own local control registers that can be independently configured, eliminating the need for software to track the state of every GSC bit across the entire device. This segmentation reduces software complexity while maintaining reconfiguration capability.
Solution Approach 2:
The patent introduces intermediate control registers and control logic layers between the global configuration system and individual functional blocks. These intermediaries manage the state and configuration of groups of blocks, reducing the burden on software by providing abstraction and localized control management.
2Extent of automation
If global control signals are used to manage tens of thousands of independent functional blocks, then complete device control is achieved, but the configuration time becomes very long (hours)
Solution Approach 1:
The configuration process is segmented into independent regional configurations rather than a single global configuration pass. Each segment or region of functional blocks can be configured independently and in parallel, dramatically reducing total configuration time while maintaining complete device control.
Solution Approach 2:
The patent implements preliminary configuration of control registers and default states for functional blocks before full operation begins. This allows the device to start with pre-configured regions, reducing the time needed for complete configuration while ensuring proper control establishment.
3Extent of automation
If traditional global control systems are used for configuration, then comprehensive control of all functional blocks is achieved, but the overhead is very large and real-time reconfiguration is not feasible
Solution Approach 1:
The control system is segmented into distributed hierarchical levels where regional control registers can be modified independently of other regions. This enables real-time reconfiguration of specific device portions without requiring global control system updates, maintaining comprehensive control while enabling fast reconfiguration.
Solution Approach 2:
The patent implements dynamic reconfiguration capabilities where control registers can be updated in real-time during device operation. The hierarchical control structure allows certain regions to be reconfigured dynamically without affecting the entire device, enabling real-time adaptability while maintaining comprehensive control.
Data Source
Figure 1
Figure 2~3
Figure 4~5
AI summary
A circuit for configuring function blocks of an integrated circuit device is described. The circuit comprises a processing system; a peripheral interface bus coupled to the processing system; and a function block coupled to the peripheral interface bus, the function block having programming registers and a function block core; wherein the programming registers store data determining a functionality of the function block core and comprise programming control registers enabling a configuration of the function block core using the data. A method of configuring function blocks of an integrated circuit device is also described.