Interconnect Fabric Power-Down Circuit for Transaction Completion
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In semiconductor chip systems with multiple devices connected through an interconnect fabric like AXI or APB, powering down or rebooting a device while keeping other active devices operational is challenging due to outstanding transactions and the need for proper handling to avoid system hangs and increased design complexity.
Innovation Solution
A circuit with tracking logic and response generation logic is added between the interconnect fabric and target or master devices to ensure completion of outstanding transactions before powering down or rebooting, allowing the system to operate without knowing the device is inactive, thus reducing design complexity and chip area requirements.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a device is powered down or rebooted while other devices remain active, then power consumption is reduced or device functionality is updated, but outstanding transactions may be interrupted causing system hangs or errors
Solution Approach 1:
An intermediary circuit is inserted between the target device and the AXI fabric. This circuit includes tracking logic that monitors outstanding transactions and a control mechanism that gates the device's interface to the fabric. The intermediary ensures all outstanding transactions complete before the device is powered down or rebooted, preventing system hangs while keeping the power management logic simple.
2Reliability
If complex ordering queues and handshake logic are added to handle device power-down properly, then transaction ordering is preserved, but design complexity and chip area increase
Solution Approach 1:
The complex transaction tracking and ordering logic is extracted from the individual devices and concentrated in a single intermediary circuit located at the target device interface. This circuit contains the tracking logic and control mechanisms needed to preserve response ordering, while the rest of the system maintains simple, standard AXI interfaces. This extraction reduces the overall chip area compared to implementing such logic in multiple devices.
3Reliability
If all devices are kept active to avoid interrupting transactions, then system reliability is maintained, but power consumption increases
Solution Approach 1:
The system performs preliminary actions by tracking and completing all outstanding transactions before initiating the power-down or reboot sequence. The intermediary circuit monitors the transaction queue and only allows the device to be powered down when the queue is empty, ensuring no transactions are interrupted. This preliminary completion of transactions enables safe power-down while maintaining system reliability.
4Reliability
If device interface to fabric is gated during power-down, then new transactions are prevented, but completion status of outstanding transactions must be tracked
Solution Approach 1:
The intermediary circuit acts as a mediator between the device and the AXI fabric, containing all the tracking logic needed to monitor outstanding transactions. When the device interface is gated, the intermediary's tracking logic detects the gating signal and prevents new transactions from being sent to the device, while allowing completion of outstanding transactions. This centralized tracking approach maintains transaction integrity without requiring complex distributed tracking across multiple devices.
Data Source
AI summary
A circuit at an interface between a device and an interconnect fabric is configured to track outstanding transactions associated with the device and ensure the completion of the outstanding transactions before rebooting or powering down the device. In some embodiments, the circuit is also configurable to provide appropriate responses when the device is powered down or is being rebooted such that other devices in the system can still operate even without knowing that the device is inactive and would not hang because no response is received from the device.


