IP Library Granted Patent US 7,966,431
Granted Patent B2
US 7,966,431 · App. 12/869,867 · Granted Jun 21, 2011

Systems for implementing SDRAM controllers, and buses adapted to include advanced high performance bus features

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,966,431
App. No.
12/869,867
Granted
Jun 21, 2011
Kind
B2
Abstract

An arbitration logic including one or more modular priority encoders. Each modular priority encoder includes a first logic circuit, a comparator circuit, a second logic circuit, and an encoder circuit. The first logic circuit may be configured to generate a first output signal in response to a plurality of request signals. The comparator circuit may be configured to compare all possible pairs of a plurality of priority signals. The second logic circuit may be configured to generate a control signal in response to (i) the plurality of request signals and (ii) a result of comparing all possible pairs of the plurality of priority signals. The encoder circuit may be configured to generate a second output signal in response to the control signal.

Claims (40)

1. An arbitration logic including one or more modular priority encoders, each modular priority encoder comprising:

a first logic circuit configured to generate a first output signal in response to a plurality of request signals;

a comparator circuit configured to compare all possible pairs of a plurality of priority signals, wherein the comparator circuit is configured to receive the plurality of priority signals and generate a comparison signal representing the result of comparing all possible pairs of the plurality of priority signals;

a second logic circuit configured to generate a control signal in response to (i) the plurality of request signals and (ii) the result of comparing all possible pairs of the plurality of priority signals;

an encoder circuit configured to generate a second output signal in response to the control signal; and

a third logic circuit configured to generate a third output signal and a fourth output signal in response to the control signal, the plurality of priority signals, and a plurality of input signals.

2. The arbitration logic according to claim 1 , wherein said third logic circuit comprises:

a first multiplexer circuit configured to generate the third output signal in response to the control signal and the plurality of input signals; and

a second multiplexer circuit configured to generate the fourth output signal in response to the control signal and the plurality of priority signals.

3. The arbitration logic according to claim 1 , wherein the plurality of request signals comprises three or more request signals, the plurality of priority signals comprises three or more priority signals and a plurality of the modular priority encoders are coupled as levels of a tree.

4. The arbitration logic according to claim 1 , wherein the comparator circuit is biased to implement a tie breaking scheme.

5. The arbitration logic according to claim 4 , wherein the comparator circuit is configured such that masters with lower numbers win ties.

6. The arbitration logic according to claim 1 , wherein:

the order in which pairs of priority signals are compared is fixed.

7. The arbitration logic according to claim 1 , wherein the first logic circuit is configured to assert the first output signal in response to any of the plurality of request signals being asserted.

8. A method of arbitration comprising:

generating a first output signal in response to a plurality of request signals;

receiving a plurality of priority signals;

generating a comparison signal representing a result of comparing all possible pairs of the plurality of priority signals;

generating a control signal in response to (i) the plurality of request signals and (ii) the result of comparing all possible pairs of the plurality of priority signals;

generating a second output signal in response to the control signal; and

generating a third output signal and a fourth output signal in response to the control signal, the plurality of priority signals, and a plurality of input signals.

9. The method according to claim 8 , wherein generating said third output signal comprises selecting one of the plurality of input signals for presentation as said third output signal in response to said control signal.

10. The method according to claim 8 , wherein generating said fourth output signal comprises selecting one of the plurality of priority signals for presentation as said fourth output signal in response to said control signal.

11. The method according to claim 8 , wherein the plurality of request signals comprises three or more request signals, the plurality of priority signals comprises three or more priority signals and said arbitration is performed using a plurality of modular priority encoders coupled as levels of a tree.

12. The method according to claim 8 , wherein the step of comparing all possible pairs of the plurality of priority signals comprises breaking ties between masters having similar priorities.

13. The method according to claim 12 , wherein breaking ties between masters having similar priorities comprises assigning numbers to the masters and giving priority to the master having a lower number.

14. A memory controller configured to couple an Advanced High Performance Bus (AHB) and a synchronous dynamic random access memory (SDRAM), the memory controller comprising:

a write data path;

a read data path; and

an arbitration logic circuit configured to handle Advanced High Performance Bus (AHB) busy transactions without using buffers or queues, said arbitration logic circuit including one or more modular priority encoders, each modular priority encoder comprising

(a) a first logic circuit configured to generate a first output signal in response to a plurality of request signals,

(b) a comparator circuit configured to compare all possible pairs of a plurality of priority signals, wherein the comparator circuit is configured to receive the plurality of priority signals and generate a comparison signal representing the result of comparing all possible pairs of the plurality of priority signals,

(c) a second logic circuit configured to generate a control signal in response to (i) the plurality of request signals and (ii) the result of comparing all possible pairs of the plurality of priority signals,

(d) an encoder circuit configured to generate a second output signal in response to the control signal, and

(e) a third logic circuit configured to generate a third output signal and a fourth output signal in response to the control signal, the plurality of priority signals, and a plurality of input signals.

15. The memory controller according to claim 14 , wherein said arbitration logic circuit is configured to handle Advanced High Performance Bus (AHB) busy transactions using a clock enable input of the memory to suspend a flow of data.

16. The memory controller according to claim 14 , wherein said arbitration logic circuit is configured to handle Advanced High Performance Bus (AHB) busy transactions using a delayed write busy signal to inhibit a column address strobe (CAS).

17. The memory controller according to claim 14 , wherein said arbitration logic circuit is configured to handle Advanced High Performance Bus (AHB) busy transactions using a read busy signal to inhibit the column address strobe (CAS).

18. The memory controller according to claim 14 , wherein said arbitration logic circuit is configured to handle Advanced High Performance Bus (AHB) busy transactions using the read busy signal and a delayed version of the read busy signal to control loading of registers in the read data path.

Assignments (8)
CORRECTIVE ASSIGNMENT TO CORRECT THE PROPERTY NUMBERS PREVIOUSLY RECORDED AT REEL: 47630 FRAME: 344. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Mar 21, 2019
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 048883/0267 →
CORRECTIVE ASSIGNMENT TO CORRECT THE EFFECTIVE DATE OF MERGER TO 9/5/2018 PREVIOUSLY RECORDED AT REEL: 047196 FRAME: 0687. ASSIGNOR(S) HEREBY CONFIRMS THE MERGER. Recorded Oct 29, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047630/0344 →
MERGER Recorded Oct 4, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047196/0687 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Feb 3, 2017
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 041710/0001 →
PATENT SECURITY AGREEMENT Recorded Feb 11, 2016
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037808/0001 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS (RELEASES RF 032856-0031) Recorded Feb 2, 2016
From: DEUTSCHE BANK AG NEW YORK BRANCH, AS COLLATERAL AGENT
To: LSI CORPORATION; AGERE SYSTEMS LLC
Reel/Frame 037684/0039 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 3, 2015
From: LSI CORPORATION
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 035390/0388 →
PATENT SECURITY AGREEMENT Recorded May 8, 2014
From: LSI CORPORATION; AGERE SYSTEMS LLC
To: DEUTSCHE BANK AG NEW YORK BRANCH, AS COLLATERAL AGENT
Reel/Frame 032856/0031 →