Recherche Images Maps Play YouTube Actualités Gmail Drive Plus »
Recherche avancée dans les brevets | Images de page | Historique Web | Connexion

Brevets

  

United States Patent [w]

Zuravleff et al.

US005812799A [ii] Patent Number: [45] Date of Patent:

5,812,799 Sep. 22, 1998

[54] NON-BLOCKING LOAD BUFFER AND A MULTIPLE-PRIORITY MEMORY SYSTEM FOR REAL-TIME MULTIPROCESSING

[75] Inventors: William K. Zuravleff, Mountainview;

Mark Semmelmeyer, Sunnyvale;
Timothy Robinson, Boulder Creek;
Scott Furman, Union City, all of Calif.

[73] Assignee: Microunity Systems Engineering, Inc.,

Sunnyvale, Calif.

[21] Appl. No.: 480,738
[22] Filed: Jun. 7, 1995

[51] Int. C I. 1101.1 13/00

[52] U.S. CI 395/308; 395/837; 395/838;

395/840; 395/859; 395/876

[58] Field of Search 395/306, 307,

395/308, 292, 309, 438, 441, 479, 468, 469, 470, 250, 840, 841, 842, 847, 849, 859, 861, 864, 863, 872, 874, 876

[56] References Cited

U.S. PATENT DOCUMENTS

4,833,655 5/1989 Wolf et al 365/221

5,043,981 8/1991 Firoozmand et al. .

5,179,688 1/1993 Brown et al 395/425

5,208,490 5/1993 Yetter 307/452

5,249,297 9/1993 Brockmann et al 395/725

5,257,356 10/1993 Brockmann et al 395/725

5,289,403 2/1994 Yetter 365/49

5,299,158 3/1994 Mason et al 365/189.04

5.317,204 5/1994 Yetter 307/443

5,329,176 7/1994 Miller, Jr. et al 307/443

5,343,096 8/1994 Heikes et al 307/480

5,363,485 11/1994 Nguyen et al 395/250

5,367,681 11/1994 Foss et al 395/650

5,450,564 9/1995 Hassler et al 395/495

5,459,839 10/1995 Swarts et al 395/650

5,499,346 3/1996 Amini et al 395/308

5,507,032 4/1996 Kimura 395/826

5,526,508 6/1996 Park et al 395/449

5,535,340 7/1996 Bell et al 395/292

5.541,912 7/1996 Choudhury et al. .

5^542,055 7/1996 Amini et al 395/308

5,546,546 8/1996 Bell et al 395/292

5,548,791 8/1996 Casper et al 395/858

5,557,744 9/1996 Kobayakawa et al 395/200.01

5,568,620 10/1996 Sarangdhar et al 395/285

5,588,125 12/1996 Bennett 395/306

5,623,628 4/1997 Brayton et al 395/468

5,625,778 4/1997 Childers et al 395/287

OTHER PUBLICATIONS

Eric DeLano et al., "A High Speed Superscaler PA-RISC

Processor", IEEE, pp. 116-121, 1992.

Doug Hunt, "Advanced Performance Features of the 64-bit

PA-8000", IEEE, pp. 123-128, 1995.

Jonathan Lotz et al., "A CMOS RISC CPU Designed for

Sustained High Performance on Large Applications", IEEE

Journal of Solid-State Circuits, vol. 25, pp. 1190-1198, Oct.

1990.

Primary Examiner—Jack B. Harvey

Assistant Examiner—Raymond N. Phan

Attorney, Agent, or Firm—Burns, Doane, Swecker &

Mathis, L.L.P.

[57] ABSTRACT

A non-blocking load buffer for use in a high-speed microprocessor and memory system. The non-blocking load buffer interfaces a high-speed processor/cache bus, which connects a processor and a cache to the non-blocking load buffer, with a lower speed peripheral bus, which connects to peripheral devices. The non-blocking load buffer allows data to be retrieved from relatively low bandwidth peripheral devices directly from programmed I/O of the processor at the maximum rate of the peripherals so that the data may be processed and stored without unnecessarily idling the processor. I/O requests from several processors within a multiprocessor may simultaneously be buffered so that a plurality of non-blocking loads may be processed during the latency period of the device. As a result, a continuous maximum throughput from multiple I/O devices by the programmed I/O of the processor is achieved and the time required for completing tasks and processing data may be reduced. Also, a multiple priority non-blocking load buffer is provided for serving a multiprocessor running real-time processes of varying deadlines by prioritization-based scheduling of memory and peripheral accesses.

34 Claims, 9 Drawing Sheets

[blocks in formation]
[merged small][merged small][merged small][merged small][merged small][merged small][merged small][merged small][merged small][merged small][merged small][merged small][merged small][merged small][merged small][merged small][merged small][merged small][graphic]
[merged small][merged small][merged small][merged small][merged small][merged small][merged small][table][merged small][merged small][merged small][merged small][merged small][merged small][merged small][merged small][merged small][merged small][merged small][graphic][merged small][merged small][merged small][merged small][merged small][merged small]
[blocks in formation]
« PrécédentContinuer »