DE68928812T2 - Vorrichtung zur Auflösung von einer variablen Anzahl von möglichen Speicherzugriffskonflikten in einem Pipeline-Rechnersystem und Verfahren dazu - Google Patents

Vorrichtung zur Auflösung von einer variablen Anzahl von möglichen Speicherzugriffskonflikten in einem Pipeline-Rechnersystem und Verfahren dazu

Info

Publication number
DE68928812T2
DE68928812T2 DE68928812T DE68928812T DE68928812T2 DE 68928812 T2 DE68928812 T2 DE 68928812T2 DE 68928812 T DE68928812 T DE 68928812T DE 68928812 T DE68928812 T DE 68928812T DE 68928812 T2 DE68928812 T2 DE 68928812T2
Authority
DE
Germany
Prior art keywords
operand
write
addresses
delivers
resolving
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE68928812T
Other languages
English (en)
Other versions
DE68928812D1 (de
Inventor
Rickey C Hetherington
David B Fite
John E Murray
Tryggve Fossum
David A Webb
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Digital Equipment Corp
Original Assignee
Digital Equipment Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Digital Equipment Corp filed Critical Digital Equipment Corp
Application granted granted Critical
Publication of DE68928812D1 publication Critical patent/DE68928812D1/de
Publication of DE68928812T2 publication Critical patent/DE68928812T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline, look ahead
    • G06F9/3802Instruction prefetching
    • G06F9/3816Instruction alignment, e.g. cache line crossing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline, look ahead
    • G06F9/3824Operand accessing
    • G06F9/383Operand prefetching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline, look ahead
    • G06F9/3824Operand accessing
    • G06F9/3834Maintaining memory consistency
DE68928812T 1989-02-03 1989-07-17 Vorrichtung zur Auflösung von einer variablen Anzahl von möglichen Speicherzugriffskonflikten in einem Pipeline-Rechnersystem und Verfahren dazu Expired - Fee Related DE68928812T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US07/306,767 US5125083A (en) 1989-02-03 1989-02-03 Method and apparatus for resolving a variable number of potential memory access conflicts in a pipelined computer system

Publications (2)

Publication Number Publication Date
DE68928812D1 DE68928812D1 (de) 1998-10-15
DE68928812T2 true DE68928812T2 (de) 1999-04-29

Family

ID=23186747

Family Applications (1)

Application Number Title Priority Date Filing Date
DE68928812T Expired - Fee Related DE68928812T2 (de) 1989-02-03 1989-07-17 Vorrichtung zur Auflösung von einer variablen Anzahl von möglichen Speicherzugriffskonflikten in einem Pipeline-Rechnersystem und Verfahren dazu

Country Status (6)

Country Link
US (1) US5125083A (de)
EP (1) EP0380846B1 (de)
JP (1) JPH02206837A (de)
AT (1) ATE170995T1 (de)
CA (1) CA1325283C (de)
DE (1) DE68928812T2 (de)

Families Citing this family (68)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5226126A (en) * 1989-02-24 1993-07-06 Nexgen Microsystems Processor having plurality of functional units for orderly retiring outstanding operations based upon its associated tags
US5781753A (en) 1989-02-24 1998-07-14 Advanced Micro Devices, Inc. Semi-autonomous RISC pipelines for overlapped execution of RISC-like instructions within the multiple superscalar execution units of a processor having distributed pipeline control for speculative and out-of-order execution of complex instructions
JPH0328911A (ja) * 1989-06-26 1991-02-07 Mitsubishi Electric Corp マイクロプロセッサ
US5471591A (en) * 1990-06-29 1995-11-28 Digital Equipment Corporation Combined write-operand queue and read-after-write dependency scoreboard
US5432918A (en) * 1990-06-29 1995-07-11 Digital Equipment Corporation Method and apparatus for ordering read and write operations using conflict bits in a write queue
EP0463965B1 (de) * 1990-06-29 1998-09-09 Digital Equipment Corporation Sprungvorhersageeinheit für hochleistungsfähigen Prozessor
US5539911A (en) 1991-07-08 1996-07-23 Seiko Epson Corporation High-performance, superscalar-based computer system with out-of-order instruction execution
US5493687A (en) 1991-07-08 1996-02-20 Seiko Epson Corporation RISC microprocessor architecture implementing multiple typed register sets
JP2875909B2 (ja) * 1991-07-12 1999-03-31 三菱電機株式会社 並列演算処理装置
US5345569A (en) * 1991-09-20 1994-09-06 Advanced Micro Devices, Inc. Apparatus and method for resolving dependencies among a plurality of instructions within a storage device
US5379396A (en) * 1991-10-11 1995-01-03 Intel Corporation Write ordering for microprocessor depending on cache hit and write buffer content
EP0547769B1 (de) * 1991-12-18 1999-10-13 Sun Microsystems, Inc. Schreibüberlappung mit Verhinderung des Überschreibens
EP0636256B1 (de) 1992-03-31 1997-06-04 Seiko Epson Corporation Befehlsablauffolgeplanung von einem risc-superskalarprozessor
EP0638183B1 (de) * 1992-05-01 1997-03-05 Seiko Epson Corporation Vorrichtung und verfahren zum befehlsabschluss in einem superskalaren prozessor.
US5497470A (en) * 1992-05-18 1996-03-05 Sun Microsystems, Inc. Method and apparatus for providing a high through put cache tag controller
JPH05342084A (ja) * 1992-06-08 1993-12-24 Matsushita Electric Ind Co Ltd データ記憶装置及びデータ記憶方法
US5450561A (en) * 1992-07-29 1995-09-12 Bull Hn Information Systems Inc. Cache miss prediction method and apparatus for use with a paged main memory in a data processing system
US5619668A (en) * 1992-08-10 1997-04-08 Intel Corporation Apparatus for register bypassing in a microprocessor
JP3531166B2 (ja) 1992-12-31 2004-05-24 セイコーエプソン株式会社 レジスタ・リネーミングのシステム及び方法
US5628021A (en) 1992-12-31 1997-05-06 Seiko Epson Corporation System and method for assigning tags to control instruction processing in a superscalar processor
US5604912A (en) * 1992-12-31 1997-02-18 Seiko Epson Corporation System and method for assigning tags to instructions to control instruction execution
US5542061A (en) * 1993-01-21 1996-07-30 Nec Corporaiton Arrangement of controlling issue timing of a read instruction to a common block in a vector processor
US5481736A (en) * 1993-02-17 1996-01-02 Hughes Aircraft Company Computer processing element having first and second functional units accessing shared memory output port on prioritized basis
US5420990A (en) * 1993-06-17 1995-05-30 Digital Equipment Corporation Mechanism for enforcing the correct order of instruction execution
US6704861B1 (en) 1993-06-17 2004-03-09 Hewlett-Packard Development Company, L.P. Mechanism for executing computer instructions in parallel
US5428807A (en) * 1993-06-17 1995-06-27 Digital Equipment Corporation Method and apparatus for propagating exception conditions of a computer system
US5421022A (en) * 1993-06-17 1995-05-30 Digital Equipment Corporation Apparatus and method for speculatively executing instructions in a computer system
US5406504A (en) * 1993-06-30 1995-04-11 Digital Equipment Multiprocessor cache examiner and coherency checker
US5748937A (en) * 1993-08-26 1998-05-05 Intel Corporation Computer system that maintains processor ordering consistency by snooping an external bus for conflicts during out of order execution of memory access instructions
US5434987A (en) * 1993-09-21 1995-07-18 Intel Corporation Method and apparatus for preventing incorrect fetching of an instruction of a self-modifying code sequence with dependency on a bufered store
US5740398A (en) * 1993-10-18 1998-04-14 Cyrix Corporation Program order sequencing of data in a microprocessor with write buffer
US6219773B1 (en) 1993-10-18 2001-04-17 Via-Cyrix, Inc. System and method of retiring misaligned write operands from a write buffer
US5471598A (en) * 1993-10-18 1995-11-28 Cyrix Corporation Data dependency detection and handling in a microprocessor with write buffer
US5615402A (en) * 1993-10-18 1997-03-25 Cyrix Corporation Unified write buffer having information identifying whether the address belongs to a first write operand or a second write operand having an extra wide latch
US5608885A (en) * 1994-03-01 1997-03-04 Intel Corporation Method for handling instructions from a branch prior to instruction decoding in a computer which executes variable-length instructions
US5751986A (en) * 1994-03-01 1998-05-12 Intel Corporation Computer system with self-consistent ordering mechanism
US5465336A (en) * 1994-06-30 1995-11-07 International Business Machines Corporation Fetch and store buffer that enables out-of-order execution of memory instructions in a data processing system
IL110181A (en) * 1994-06-30 1998-02-08 Softchip Israel Ltd Install microprocessor and peripherals
JP3164732B2 (ja) * 1994-07-04 2001-05-08 富士通株式会社 データ処理装置
US5634073A (en) * 1994-10-14 1997-05-27 Compaq Computer Corporation System having a plurality of posting queues associated with different types of write operations for selectively checking one queue based upon type of read operation
US5867734A (en) * 1994-11-21 1999-02-02 Intel Corporation Multiple-reader multiple-writer queue for a computer system
US5649157A (en) * 1995-03-30 1997-07-15 Hewlett-Packard Co. Memory controller with priority queues
US5761712A (en) * 1995-06-07 1998-06-02 Advanced Micro Devices Data memory unit and method for storing data into a lockable cache in one clock cycle by previewing the tag array
US5751983A (en) * 1995-10-03 1998-05-12 Abramson; Jeffrey M. Out-of-order processor with a memory subsystem which handles speculatively dispatched load operations
US5764943A (en) * 1995-12-28 1998-06-09 Intel Corporation Data path circuitry for processor having multiple instruction pipelines
US6092184A (en) * 1995-12-28 2000-07-18 Intel Corporation Parallel processing of pipelined instructions having register dependencies
US5854914A (en) * 1996-02-13 1998-12-29 Intel Corporation Mechanism to improved execution of misaligned loads
US5903749A (en) * 1996-07-02 1999-05-11 Institute For The Development Of Emerging Architecture, L.L.C. Method and apparatus for implementing check instructions that allow for the reuse of memory conflict information if no memory conflict occurs
US6009516A (en) * 1996-10-21 1999-12-28 Texas Instruments Incorporated Pipelined microprocessor with efficient self-modifying code detection and handling
US5923900A (en) * 1997-03-10 1999-07-13 International Business Machines Corporation Circular buffer with n sequential real and virtual entry positions for selectively inhibiting n adjacent entry positions including the virtual entry positions
US6145038A (en) * 1997-10-31 2000-11-07 International Business Machines Corporation Method and system for early slave forwarding of strictly ordered bus operations
US6112270A (en) * 1997-10-31 2000-08-29 International Business Machines Corporation Method and system for high speed transferring of strictly ordered bus operations by reissuing bus operations in a multiprocessor system
US6145062A (en) * 1998-01-26 2000-11-07 Intel Corporation Selective conflict write flush
US6173307B1 (en) 1998-08-20 2001-01-09 Intel Corporation Multiple-reader multiple-writer queue for a computer system
US6237067B1 (en) 1998-08-31 2001-05-22 International Business Machines Corporation System and method for handling storage consistency conflict
US6301627B1 (en) 1998-12-18 2001-10-09 International Business Machines Corporation Method/system for identifying delayed predetermined information transfer request as bypassable by subsequently-generated information transfer request using bypass enable bit in bridge translation control entry
US6557084B2 (en) * 1999-07-13 2003-04-29 International Business Machines Corporation Apparatus and method to improve performance of reads from and writes to shared memory locations
US6748589B1 (en) 1999-10-20 2004-06-08 Transmeta Corporation Method for increasing the speed of speculative execution
US6732234B1 (en) * 2000-08-07 2004-05-04 Broadcom Corporation Direct access mode for a cache
US6848024B1 (en) 2000-08-07 2005-01-25 Broadcom Corporation Programmably disabling one or more cache entries
US6748492B1 (en) 2000-08-07 2004-06-08 Broadcom Corporation Deterministic setting of replacement policy in a cache through way selection
US6748495B2 (en) 2001-05-15 2004-06-08 Broadcom Corporation Random generator
US7266587B2 (en) * 2002-05-15 2007-09-04 Broadcom Corporation System having interfaces, switch, and memory bridge for CC-NUMA operation
US7440454B1 (en) * 2004-12-21 2008-10-21 Xilinx, Inc. Packet reshuffler and method of implementing same
US8677078B1 (en) * 2007-06-28 2014-03-18 Juniper Networks, Inc. Systems and methods for accessing wide registers
US9170944B2 (en) * 2013-06-25 2015-10-27 International Business Machines Corporation Two handed insertion and deletion algorithm for circular buffer
US9652230B2 (en) * 2013-10-15 2017-05-16 Mill Computing, Inc. Computer processor employing dedicated hardware mechanism controlling the initialization and invalidation of cache lines
US9811403B1 (en) * 2016-06-22 2017-11-07 Intel Corporation Method, apparatus and system for performing matching operations in a computing system

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3601809A (en) * 1968-11-04 1971-08-24 Univ Pennsylvania Addressable list memory systems
US3747072A (en) * 1972-07-19 1973-07-17 Sperry Rand Corp Integrated static mnos memory circuit
US4342081A (en) * 1979-12-12 1982-07-27 Honeywell Information Systems Inc. Tape device adapter
US4392200A (en) * 1980-01-28 1983-07-05 Digital Equipment Corporation Cached multiprocessor system with pipeline timing
US4345309A (en) * 1980-01-28 1982-08-17 Digital Equipment Corporation Relating to cached multiprocessor system with pipeline timing
JPS6057090B2 (ja) * 1980-09-19 1985-12-13 株式会社日立製作所 データ記憶装置およびそれを用いた処理装置
US4589067A (en) * 1983-05-27 1986-05-13 Analogic Corporation Full floating point vector processor with dynamically configurable multifunction pipelined ALU
US4642794A (en) * 1983-09-27 1987-02-10 Motorola Computer Systems, Inc. Video update FIFO buffer
FI86484C (fi) * 1984-04-27 1992-08-25 Honeywell Inf Systems Styrorgan i en digital datamaskin.
JPH0769818B2 (ja) * 1984-10-31 1995-07-31 株式会社日立製作所 デ−タ処理装置
US4803654A (en) * 1985-06-20 1989-02-07 General Datacomm Industries, Inc. Circular first-in, first out buffer system for generating input and output addresses for read/write memory independently
US4761731A (en) * 1985-08-14 1988-08-02 Control Data Corporation Look-ahead instruction fetch control for a cache memory
JPS62102344A (ja) * 1985-10-29 1987-05-12 Fujitsu Ltd バツフア・メモリ制御方式
US4949301A (en) * 1986-03-06 1990-08-14 Advanced Micro Devices, Inc. Improved pointer FIFO controller for converting a standard RAM into a simulated dual FIFO by controlling the RAM's address inputs
US4768148A (en) * 1986-06-27 1988-08-30 Honeywell Bull Inc. Read in process memory apparatus
EP0259095A3 (de) * 1986-08-27 1990-02-28 Amdahl Corporation Warteschlange für einen Cachespeicher
US4785415A (en) * 1986-08-29 1988-11-15 Hewlett-Packard Company Digital data buffer and variable shift register
US4894797A (en) * 1986-11-17 1990-01-16 Amp Incorporated FIFO data storage system using PLA controlled multiplexer for concurrent reading and writing of registers by different controllers
EP0275530B1 (de) * 1986-12-23 1993-09-29 Nec Corporation Steuereinrichtung zur Speicherung von Adressen in einem Adressenübersetzungspufferspeicher
US4922437A (en) * 1986-12-25 1990-05-01 Kabushiki Kaisha Toshiba Image information processing apparatus
US4890254A (en) * 1987-03-11 1989-12-26 Aristacom International, Inc. Clock disabling circuit
US4991090A (en) * 1987-05-18 1991-02-05 International Business Machines Corporation Posting out-of-sequence fetches

Also Published As

Publication number Publication date
CA1325283C (en) 1993-12-14
JPH02206837A (ja) 1990-08-16
EP0380846A2 (de) 1990-08-08
US5125083A (en) 1992-06-23
EP0380846B1 (de) 1998-09-09
DE68928812D1 (de) 1998-10-15
ATE170995T1 (de) 1998-09-15
EP0380846A3 (de) 1992-09-02

Similar Documents

Publication Publication Date Title
DE68928812D1 (de) Vorrichtung zur Auflösung von einer variablen Anzahl von möglichen Speicherzugriffskonflikten in einem Pipeline-Rechnersystem und Verfahren dazu
US5381536A (en) Method and apparatus for separate mark and wait instructions for processors having multiple memory ports
ATE150191T1 (de) Verfahren und datenverarbeitungseinheit zur vorverarbeitung von implizierten spezifizierern in einem pipeline-prozessor
DE69228380D1 (de) Verfahren zur erhöhung der datenverarbeitungsgeschwindigkeit in einem rechnersystem
ATE242508T1 (de) Ausnahmebehandlung in einem datenprozessor
JPH0131214B2 (de)
ATE162897T1 (de) Verfahren und gerät zur beschleunigung von verzweigungsbefehlen
DE69819849D1 (de) Anordnung zum willkürlichen Abtasten von Instruktionen in einer Prozessorpipeline
DE69424115T2 (de) Rechnersystem und Verfahren zur Verarbeitung von Vektordaten
DE3582962D1 (de) Verfahren und vorrichtung zum speicherzugriff in mehrprozessorsystemen.
DE69623146T2 (de) Verfahren und Vorrichtung zum Koordinieren der Benutzung von physikalischen Registern in einem Mikroprozessor
EP0264216A3 (de) Eingeschlossene Domänenadressierung
DE69636268D1 (de) Informationsverarbeitungsgerät zur Datenübertragung zu/von mehreren Registern durch Kurzwortbefehle
EP0287295A3 (de) Virtueller Rundruf von programmierten E/A-Befehlen auf einem vielfachen E/A-Bus
AU597980B2 (en) Apparatus and method for interprocessor communication
EP0299075A4 (de) Verarbeitungseinheit mit mindestens einem zusatzprozessor.
ATE220810T1 (de) Informationsverarbeitungssystem mit einem cachespeicher und vorrichtung zur datenvorausholung
DE69230528D1 (de) Vorrichtung und verfahren für schnelle e/a-übertragung
KR890012224A (ko) 정보처리장치
KR880003241A (ko) 데이타 처리 시스템
DE69025533D1 (de) Rechnersystem für Datenverarbeitungsgerät
DE29602812U1 (de) Programmlogik für eine Datenverarbeitungsanlage zur Abwicklung von Wetten
DE69132670D1 (de) Verfahren zum asynchronen zugriff zu einem gemeinsamen speicher
KR880004383A (ko) 마이크로 프로세서 시스템
EP0264215A3 (de) Schneller Emulationseintritt

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8328 Change in the person/name/address of the agent

Free format text: GRUENECKER, KINKELDEY, STOCKMAIR & SCHWANHAEUSSER, 80538 MUENCHEN

8339 Ceased/non-payment of the annual fee