Ring Bus Credit Allocation via Injection and State Tables
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In conventional unidirectional ring bus systems without a data buffer, the probabilistic method for credit signal allocation leads to unfair probability distribution among master modules, resulting in wasted system bandwidth and delayed credit signal acquisition for masters with requests.
Innovation Solution
A ring bus system with a slave module and multiple master modules, utilizing an injection table and state table to generate and manage credit signals with node identities and active codes, ensuring fair allocation by determining node identities and adjusting state codes to prioritize credit requests.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If a probabilistic method is used to send credit signals in a conventional ring bus, then the slave module can generate credit signals, but the probability for each master obtaining the credit signal becomes unfair and the credit signal rounds the ring bus in blank becomes very high
Solution Approach 1:
The patent implements a feedback mechanism where the slave module monitors the credit status of each master module and adjusts credit signal allocation accordingly. The slave module tracks which masters have credit requests and dynamically modifies the credit signal distribution to ensure fair allocation, preventing the credit signal from rounding the ring bus in blank and eliminating the unfair probability distribution of the probabilistic method.
2Device complexity
If a probabilistic method is used to allocate credits, then the system can operate without complex allocation logic, but the credit signal cannot be quickly obtained by masters with credit requests causing waste of system bandwidth
Solution Approach 1:
The patent applies preliminary action by having the slave module proactively identify masters with credit requests before credit signals are needed. The slave module maintains status information about each master's credit state and prepares credit signal allocation in advance, ensuring that masters with active credit requests receive credits quickly without waiting for random probabilistic events, thus improving credit acquisition speed while maintaining manageable complexity.
3Reliability
If the slave module uses idle entries to receive credit requests, then data loss can be avoided, but the system bandwidth is wasted when credit signals round the ring bus in blank
Solution Approach 1:
The slave module uses feedback from master modules indicating their credit request status to intelligently control credit signal injection. By monitoring which masters actually need credits, the slave module prevents injecting credit signals when no masters have requests, thereby eliminating bandwidth waste from blank rounds while maintaining the idle entry mechanism for reliable data reception when credits are genuinely needed.
Data Source
AI summary
A ring bus and a credit allocation method are provided. The ring bus includes a slave module and multiple master modules. The slave module includes an injection table and a state table, and is configured to generate a credit signal including a node identity and an active code. The master modules are coupled to the slave module to form a ring path. The slave module determines whether the credit signal is a newly injected credit signal, and determines the node identity of the credit signal according to the injection table or the state table. The slave module transmits the credit signal to the master module corresponding to the node identity through the ring path according to the node identity. The slave module uses a corresponding idle entry to receive a credit request signal provided by the master device consuming a credit of the credit signal.


