IP Library Granted Patent US 6,963,961
Granted Patent B1
US 6,963,961 · App. 09/901,455 · Granted Nov 8, 2005

Increasing DSP efficiency by independent issuance of store address and data

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 6,963,961
App. No.
09/901,455
Granted
Nov 8, 2005
Kind
B1
Abstract

An improved method of operating a digital signal processor instruction pipeline and a memory interface for implementing the method. Memory store requests are separated into an address phase and a data phase. Store addresses are issued to the interface when ready and held in a queue until the corresponding store data is available. The store data is issued to the interface and held in a queue until its corresponding store address is to be coupled to memory. The pipeline operates more efficiently because it does not have to wait for store data before issuing the address and related control signals. Data coherency is maintained because load and store addresses are issued at the same pipeline stage and executed in the order issued.

Claims (64)

1. A method for operating an instruction pipeline in a processor comprising:

issuing a store address at a designated stage in a pipeline;

issuing a load address in said designated stage;

issuing store data associated with said store address at a different stage than the designated stage in said pipeline;

storing said store and load addresses in an address queue in the order in which they are issued;

storing store data in a data queue in the order in which it is issued;

coupling said addresses in said address queue to a memory; and

coupling store data in said data queue to said memory for each store address coupled to said memory.

2. A method of claim 1 wherein:

said issuing store data occurs at a stage later than said designated stage.

3. A method of claim 1 wherein:

said issuing store data occurs at the next stage following said designated stage.

4. The method of claim 1 wherein:

generating a store address at a stage prior to said designated stage.

5. The method of claim 4 wherein:

said generating a store address occurs at a fourth stage in said pipeline and

wherein said designated stage is a fifth stage in said pipeline.

6. The method of claim 1 wherein:

said issuing store data occurs in the last stage of said pipeline.

7. The method of claim 6 wherein:

said last stage of said pipeline is an eighth stage.

8. The method of claim 1 , further comprising:

using an address queue which is longer than said data queue.

9. Apparatus comprising:

a processor having an instruction pipeline issuing store addresses at a designated pipeline stage and issuing store data associated with each store address at a different pipeline stage; and

a memory interface coupled to said processor having at least one queue receiving said store addresses and associated store data and issuing each said store address and said associated store data to memory.

10. The apparatus of claim 9 wherein said pipeline issues store data at a pipeline stage later than said designated pipeline stage.

11. The apparatus of claim 9 wherein said pipeline issues store data at the next pipeline stage following said designated pipeline stage.

12. The apparatus of claim 9 wherein said processor:

generates store addresses at a stage prior to said designated stage.

13. The apparatus of claim 9 wherein said processor:

generates store addresses at a fourth stage in said pipeline and

wherein said designated stage is a fifth stage in said pipeline.

14. The apparatus of claim 9 wherein said processor:

issues store data occurs in the last stage of said pipeline.

15. The apparatus of claim 14 wherein:

said last stage of said pipeline is an eighth stage.

16. The apparatus of claim 9 wherein:

said pipeline issues load addresses at said designated pipeline stage.

17. The apparatus of claim 16 wherein said at least one queue comprises:

an address queue which stores said store addresses and said load addresses in the order in which they are issued by said pipeline, and

a data queue which stores said store data in the order in which said data is issued by said pipeline.

18. The apparatus of claim 17 wherein:

said address queue and said data queue are of different lengths.

19. The apparatus of claim 17 wherein:

said address queue is longer than said data queue.

20. A system for coupling data transaction requests from a processor to a memory comprising:

pipeline means for issuing store addresses at a designated pipeline stage and for issuing store data associated with each store address at a different pipeline stage; and

queue means for receiving store addresses and store data from said pipeline means and coupling each store address and its associated store data to a memory for processing.

21. The system of claim 20 wherein:

said pipeline means issues said store data at a stage later than said designated stage.

22. The system of claim 20 wherein:

said pipeline means issues said data at the next stage following said designated stage.

23. The system of claim 20 wherein:

said pipeline means generates store addresses at a stage prior to said designated stage.

24. The system of claim 20 wherein:

said pipeline means generates store addresses at a fourth stage in said pipeline and wherein said designated stage is a fifth stage in said pipeline.

25. The system of claim 20 wherein:

said pipeline issues store data in the last stage of said pipeline.

26. The system of claim 25 wherein:

said last stage of said pipeline is an eighth stage.

27. The system of claim 20 wherein:

said pipeline means further comprises means for issuing load addresses at said designated pipeline stage, and

said queue means further comprises means for storing said load addresses and for coupling said load addresses and said store addresses to said memory in the order in which they were issued by said pipeline means.

Assignments (4)
CHANGE OF ADDRESS Recorded Jan 8, 2021
From: VERISILICON HOLDINGS CO., LTD.
To: VERISILICON HOLDINGS CO., LTD.
Reel/Frame 054927/0651 →
CHANGE OF ADDRESS Recorded Mar 19, 2020
From: VERISILICON HOLDINGSCO., LTD.
To: VERISILICON HOLDINGSCO., LTD.
Reel/Frame 052189/0438 →
RELEASE OF SECURITY INTEREST Recorded Aug 6, 2019
From: LSI LOGIC CORPORATION
To: VERISILICON HOLDINGS CO., LTD.
Reel/Frame 049971/0525 →
CHANGE OF NAME Recorded Aug 6, 2019
From: VERISILICON HOLDINGS (CAYMAN ISLANDS) CO. LTD.
To: VERISILICON HOLDINGS CO., LTD.
Reel/Frame 050122/0833 →