US5881256A - Bus interface unit capable of simultaneously proceeding with two bus cycles in a high-performance microprocessor - Google Patents
Bus interface unit capable of simultaneously proceeding with two bus cycles in a high-performance microprocessor Download PDFInfo
- Publication number
- US5881256A US5881256A US08/965,764 US96576497A US5881256A US 5881256 A US5881256 A US 5881256A US 96576497 A US96576497 A US 96576497A US 5881256 A US5881256 A US 5881256A
- Authority
- US
- United States
- Prior art keywords
- cycle
- bus
- interface unit
- state
- bus interface
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/36—Handling requests for interconnection or transfer for access to common bus or bus system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/0815—Cache consistency protocols
- G06F12/0831—Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means
- G06F12/0835—Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means for main memory peripheral accesses (e.g. I/O or DMA)
Definitions
- the present invention relates generally to a microprocessor and, more particularly, to a bus interface unit which can simultaneously proceed with two bus cycles as one among internal units in a high-performance microprocessor.
- peripheral units communicating with the internal core through a bus have been developed relatively slow due to their inherent specialty (since the speed of a semiconductor memory is much slower than that of a microprocessor, a great loss of cycle is produced even by one access of the memory though the internal execution is proceeding very quickly.). Accordingly, the importance of the bus interface unit for interfacing them has been extended.
- the bus interface unit which is an interface block between them should be improved.
- a bus interface unit of a pipeline microprocessor of a superscalar type including a core unit having an internal processing unit, a code cache, and a data cache, and the bus interface unit for interfacing the core unit with a plurality of peripheral units
- the bus interface unit comprising: bus cycle arbiter means for arbitrating a plurality of cycle requests inputted from the plurality of units; cycle information selecting means for selecting cycle information inputted from the units in response to an arbitration determination of the bus cycle arbiter means; a cycle queue for storing selected information; cycle generating means for generating a bus cycle in response to the information stored in the cycle queue; bus control means for controlling the bus interface unit as a whole; and a write buffer for enabling a next operation without waiting for the core unit to complete its write operation to improve a performance of a memory write cycle, wherein the bus interface unit simultaneously processes the bus cycle requests from respective pipelines of the microprocessor during one cycle.
- FIG. 1 is a block diagram of a pentium compatible microprocessor including a bus interface unit;
- FIG. 2 is a block diagram of the bus interface unit according to the present invention.
- FIG. 3 is a view illustrating conceptually a bus cycle pipelining for each pipeline
- FIG. 4 is a view illustrating the internal structure of the cycle queue according to the present invention.
- FIG. 5 is a state diagram of a state machine for processing a snoop cycle.
- FIG. 6 is a state diagram of a state machine for a write buffer.
- a bus interface unit of a high-performance microprocessor having two (i.e., X-pipe and Y-pipe) parallel pipeline structure such as a Pentium of the Intel microprocessor series.
- the bus cycle in the Pentium compatible microprocessor is briefly classified into seven kinds.
- an ⁇ interrupt acknowledge cycle ⁇ for bring an interrupt vector with respect to an external interrupt
- a ⁇ special cycle ⁇ for informing that the internal core unit executes a specified instruction or is in a specified state
- I/O (input/output) read cycle and I/O write cycle for performing read and write operations for I/O units
- memory read cycle and memory write cycle for reading and writing data in a memory
- a code read cycle for reading an instruction from the memory in distinction from the data.
- the memory-related cycles enable the burst operation of read and write under various conditions.
- FIG. 1 is a system block diagram showing the role of the bus interface unit of a Pentium compatible microprocessor.
- the reference numeral 40 denotes a core unit in the Pentium compatible microprocessor
- 10 denotes an internal processing unit of the processor
- 20 denotes a code cache
- 30 denotes a data cache
- 50 denotes a peripheral unit.
- the internal processing unit 10 intends to proceed with the cycle for the peripheral unit 50 such as a memory, I/O unit, disk, etc. as it executes the instruction through its two pipelines, i.e., X-pipeline and Y-pipeline, it requests the cycle through the data cache 30, or requests the cycle through the code cache 20 so as to bring the instruction to be executed in the respective pipeline. Accordingly, various cycle requests can pass from the core unit 40 to the bus.
- the peripheral unit 50 such as a memory, I/O unit, disk, etc.
- the code cache 20 is limited to bring the requests for the bus cycle and the instruction, and the data 30 is limited to bring the remaining cycle requests, resulting in that the protocol related to the request and the proceed of the bus cycle between the bus interface unit and other units becomes plain.
- the bus interface unit 100 receives and transfers the data coming from the external system (i.e., the peripheral unit) to the respective caches, and receives and transfers the snoop-related requests coming from the external unit to the data cache 30 and the code cache 20, so that the consistency of the cache data is guaranteed.
- the internally coming information there exist a BOFF# signal for floating all the buses to escape from a deadlock, a HOLD signal provided from a DMA (direct memory access) unit for floating all the buses after the proceeding bus cycle is completed, and an AHOLD signal for floating only an address bus for proceeding a snoop cycle.
- an NA# signal for informing that the bus cycle is available as an important signal related to the bus cycle pipeline.
- ⁇ # ⁇ represents low-active.
- FIG. 2 is a block diagram of the bus interface unit according to the present invention.
- the reference numeral 102 denotes a cycle arbiter for arbitrating a plurality of cycle requests coming from a plurality of units so as to simultaneously process the bus cycle requests coming from the respective pipelines
- 104 denotes a cycle multiplexer for selecting cycle information coming from the core unit 40 in accordance with a signal determined by the cycle arbiter 102
- 106 denotes a cycle queue for storing the selected information up to two
- 108 denotes a cycle generator for generating a bus cycle in accordance with the cycle queue information
- 110 denotes a bus controller for controlling all the blocks as described above
- 112 denotes a write buffer for enabling a next operation without waiting for the core unit 40 to complete its write operation to improve the performance of a memory write cycle
- 114 denotes a snoop controller in charge of snooping for the internal caches to maintain the consistency of the internal cache data in the high-performance micro
- the bus controller 110 receives signals coming from the core unit 40, external peripheral unit 50, and bus interface unit 100, and controls the whole operation of the bus interface unit. Specifically, the bus controller 110 controls the bus interface unit using a finite state machine having six states in accordance with the proceeding of the cycle. Referring to FIG. 2, it appears that each external pin of the processor can proceed with one cycle. However, if a next bus cycle is to proceed after waiting until the previously processed bus cycle is completed, the bus interface unit will be the bottleneck of the whole system. Thus, in order to simultaneously proceed with the two cycles under such hardware limitations, the concept of pipelining is introduced in the bus cycle, and a block for controlling the pipeline is employed. The bus controller 110 takes charge of such a control operation.
- FIG. 3 is a view explaining the bus cycle pipelining of a Pentium processor.
- ⁇ Ti ⁇ represents the state where the cycle is not currently processed on the bus. In this case, whenever any cycle request comes from the core unit to the cycle arbiter 102, the new bus cycle can start to proceed.
- ⁇ T1 ⁇ represents the stage for externally producing an address and a cycle control signal for the cycle to proceed
- ⁇ T2 ⁇ represents the state where the data is actually transferred or where the data is waiting for its transfer.
- a ⁇ T12 ⁇ state is produced so that a new second bus cycle goes to ⁇ T2 ⁇ while the previously processed first bus cycle is in the ⁇ T2 ⁇ state.
- a ⁇ T2P ⁇ state is produced when the two ⁇ T 2 ⁇ s are processed in parallel, i.e., when the first bus cycle has not yet been completed and is in the ⁇ T2 ⁇ state, and the second bus cycle is in the ⁇ T2 ⁇ state.
- a ⁇ Td ⁇ state is produced if it is required that the data bus drive is discontinued for at least one cycle, in case that the first bus cycle and the second bus cycle intend to transfer data in different directions from each other in the data bus, i.e., if the first and second bus cycles are a read cycle and a write cycle, respectively.
- the bus cycle arbiter 102 is a block in charge of arbitration of the bus cycle requests coming from the various units. If the cycle requests simultaneously come from the various units, the bus cycle arbiter 102 sends to the respective units the cycle acknowledge signals in accordance with a fixed priority algorithm.
- the arbitration priority is given as follows:
- the first priority is given to a write back buffer (In the data cache of the Pentium compatible processor are three write back buffers, whose priority orders are given as external snoop write back buffer>internal snoop write back buffer>replacement write back buffer).
- the second priority is given to the cycle queue (a request for the cycle discontinued by the BOFF# signal or for the second one of the misaligned cycles).
- the third priority is given to the write buffer (One write buffer exists in each of the X-pipe and the Y-pipe of the Pentium compatible processor. In case of the simultaneous write, the buffer in the X-pipe has a higher priority, and otherwise, the priority is given in the written order of them).
- the fourth priority is given to the data cache (all cycles except for the instruction read request the bus cycle to the data cache.).
- the fifth priority is given to the code cache (a request for the instruction prefetch).
- the cycle multiplexer 104 selects a block acknowledged by the cycle arbiter 104 to proceed with the cycle or information on the cycle from the unit (an address, a size of the operand, the kind of the cycle, whether or not to proceed with a locked cycle, etc.) so as to store the selected information in the cycle queue 106.
- the cycle queue 106 stores therein cycle information determined by the cycle multiplexer 104.
- the cycle queue 106 comprises two entries so as to enable two cycles at maximum to proceed simultaneously.
- the cycle queue 106 acts an important role in proceeding two cycles in parallel along with the bus controller 110 and the cycle arbiter 102.
- the cycle queue 106 is used for the restart of the cycle in case that the cycle is discontinued by the BOFF# signal coming from the external peripheral unit, as well as for producing two aligned cycles in the bus unit in case of the misaligned cycle which lies on the boundary of the data bus.
- FIG. 4 is a view showing the internal structure of the cycle queue according to the present invention, wherein the contents allocated to the respective two entries are illustrated.
- the meanings of the respective parts are as follows:
- Older a kind of flag indicating one of the two entries of the cycle queue which should be first processed.
- Halt a part indicating that a cycle discontinued by the backoff condition exists by activating the BOFF# pin by the external peripheral unit. If this bit is in a set state in case that the backoff condition is gone, the cycle stored in the cycle queue is processed with the highest priority.
- Addr an address of the cycle to be processed. Though only upper 29 bits of the address actually go out, all the 32 bits of the address are stored to produce a byte enable signal.
- OS the operand size of the cycle to be processed.
- the bus interface unit produces two bus cycles with respect to one cycle request, and F represents that the first one of the two cycles is now processed.
- I a part indicating the cycle lying on the boundary of the bus unit.
- bus cycle a part indicating the kind of cycle to be processed. It is composed of six bits in all.
- PCD a part for controlling an external cache in case that the external cache is used.
- V a valid bit indicating whether or not valid data exists in the cycle queue.
- the firstly written one of the two entries i.e., the cycle to be firstly processed, is indicated by utilizing Older.
- the two entries are named FQueue and BQueue. If Older is "1”, the cycle is firstly written in FQueue, while if Older is "0", the cycle is firstly written in BQueue.
- a new cycle is stored in the cycle queue as follows:
- the new cycle starts under the condition that the queue is empty, information related to the new cycle is unconditionally written in FQueue, Older indicates FQueue, and V (the valid bit) of FQueue is set.
- the new cycle is stored in the other entry which is not indicated by Older, and the valid bit of the entry is set. If the two entries are occupied, a new cycle cannot be received any more.
- the bus controller 110 checks whether the Halt bit is set, and it sends a control signal to the cycle arbiter 102 if the Halt bit is set.
- the cycle arbiter 102 receives the control signal and processes the request from the cycle queue 106 with the highest priority. Second, if the cycle lies on the boundary of the data bus and it cannot be processed as one cycle, i.e., if the ⁇ F ⁇ and ⁇ I ⁇ bits are set, it means that the current proceeding cycle is the first cycle of the misaligned cycles, and the bus controller 110 sends a signal to the cycle arbiter 102 to proceed with a next cycle. The cycle arbiter 102 also processes this request with the highest priority. Thereafter, in case of the second cycle processed as above, the ⁇ F ⁇ bit is cleared to indicate that the second cycle of the misaligned cycles is now proceeding.
- the cycle generator 108 generates cycle-related signals to mate with the bus protocol, based on the information stored in the cycle queue 106.
- the cycle-related signals are an A 31:3! signal which is the address of the current bus cycle, a BE 7:0!# signal indicating a valid byte in the data bus, M/IO#, D/C#, and W/R# signals indicating the kind of the bus cycle, a CACHE# signal indicating the length of the cycle, LOCK# and SCYC signals related to a locked cycle, and signals for driving PCD and PWT pins related to the control of an external cache.
- the snoop controller 114 performs a snoop operation for checking the internal caches by externally receiving their addresses to guarantee the consistency of the cache data in a processor using internal caches.
- the snoop operation is performed in such a manner that the address bus is floated utilizing the AHOLD, HOLD, and BOFF# pins, and a snoop address is provided with the EADS# signal to check the result. If a hit is generated on the modified line, the write back cycle is accompanied.
- a snoop address As a snoop address, upper 27 bits of the whole address bus, which ends at A 31:5!, are received, and lower 5 bits thereof will not be used since the size of the cache line is 32 bytes. This address is sent to the data cache, code cache, and write buffers in the bus unit to request the snoop operation. Also, the snoop controller receives the snoop results from the respective units, and informs them externally.
- the snoop controller 114 controls the snoop-related operations as described above using a state machine so called "SnpFSM".
- FIG. 5 is a state diagram of the state machine for processing the snoop cycle. Referring to FIG. 5, the contents of the respective states are as follows:
- IDLE a state where no operation related to the snoop exists.
- START a state where externally inputted snoop requests are sent to the internal units and their results are received.
- CHECK a state where a next operation is determined in accordance with the latched snoop results.
- WAIT a state where a snoop hit for a modified line in the data cache is generated, but another bus cycle is now proceeding, or where the write back cycle cannot be processed by the backoff or the bus hold.
- ARBI a state where arbitration is performed as the write back cycle can be processed.
- L2 a state after two clocks are passed after receiving the final BRDY# signal.
- "5" represents the state where the hit is generated with respect to the modified line, and the proceeding of the write back cycle is waited for since the present state is the backoff or bus hold state in which another bus cycle is now proceeding.
- "6” represents the state where if the hit is not generated for the modified line (i.e., a snoop miss is generated on the exclusive or modified line), a parity error is generated as a result of the parity check for the snoop address. In this state, the write back cycle is not accompanied.
- "7" represents the state where no proceeding bus cycle exists, and the hit is generated for the modified line. In this state, the write back cycle starts to proceed through the arbitration process.
- "8" is identical to "5".
- the write buffer 112 having the size of 64 bits is provided in each pipeline, i.e., X-pipe and Y-pipe, to improve the performance under the condition that the write operation is consecutively requested in both pipelines.
- the write buffer is used to externally proceed with the cycle if the write miss is generated for the internal cache, or the write it is generated on the line shared for the cache coherency.
- FIG. 6 is a state diagram of the state machine for the write buffer.
- the write buffer is composed of five states, the meanings of which are as follows:
- IDLE a state where the write buffer is empty and thus available for the write operation if the write miss or the write hit for the shared line is generated in the core unit.
- REQ a state where the memory write is stored in the write buffer. In this state, a cycle request signal is continuously sent to the cycle arbiter 102 to obtain the bus cycle, and it goes to a SERV state if the cycle acknowledge signal is received.
- BOFF a state where the proceeding write cycle is discontinued by externally activating the BOFF# signal. In this state, if a wakeup signal for re-proceeding with the cycle is received by inactivating the BOFF# signal in the cycle queue 106, it goes to the SERV state.
- UPDATE a state where if the write buffer is stored because of the write hit for the shared line, the state of the corresponding cache line is changed to an E (exclusive) or S (shared) state in accordance with the sampled value of the WB/WT# pin after the completion of the write cycle, and the result of the cache line change is informed to the data cache.
- the write buffer block plays a role of a temporary buffer for the write cycle. Thus, it receives and sends signals with the data cache, and it is internally connected to the cycle queue.
- the write buffer 112 requests a cycle to the cycle arbiter 102, causing two cycle request signal to be inputted to the cycle arbiter 102. Since the request from the write buffer 112 has a higher priority, the cycle arbiter 102 provides a cycle acknowledge signal to the write cycle of the memory.
- the cycle multiplexer 104 firstly stores the data cache cycle in the cycle queue 106 since the cycle acknowledge is given to the data cache. At this time, the bus controller 110 sends a signal for proceeding with the stored cycle to the cycle generator 108, and thus the cycle generator 108 firstly proceeds with the memory write cycle in accordance with the information stored in the queue.
- the cycle arbiter 102 gives an acknowledge signal to the cycle for reading the instruction. Thereafter, the cycle is stored in the queue, and then is processed under the control of the bus controller.
- the present invention provides a bus unit suitable for a high-performance microprocessor, and especially for the Intel Pentium compatible processor.
- bus units of all the microprocessors perform communication in accordance with their own bus protocols, and thus they can be used as the bus interface units of other high-performance microprocessors if the parts related to the peripheral units such as the cycle generator, bus controller, etc., are modified.
- the internal bus interface unit of a pipelined high-performance microprocessor of a superscalar type can simultaneously process the bus cycle's requests coming from the respective pipelines during one cycle, thereby improving the overall processing capability of the microprocessor.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
Description
Claims (12)
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019960052657A KR100190377B1 (en) | 1996-11-07 | 1996-11-07 | Bus interface unit of microprocessor |
KR199652657 | 1996-11-07 |
Publications (1)
Publication Number | Publication Date |
---|---|
US5881256A true US5881256A (en) | 1999-03-09 |
Family
ID=19481103
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US08/965,764 Expired - Fee Related US5881256A (en) | 1996-11-07 | 1997-11-07 | Bus interface unit capable of simultaneously proceeding with two bus cycles in a high-performance microprocessor |
Country Status (2)
Country | Link |
---|---|
US (1) | US5881256A (en) |
KR (1) | KR100190377B1 (en) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6199118B1 (en) * | 1998-08-18 | 2001-03-06 | Compaq Computer Corporation | System and method for aligning an initial cache line of data read from an input/output device by a central processing unit |
US6408417B1 (en) * | 1999-08-17 | 2002-06-18 | Sun Microsystems, Inc. | Method and apparatus for correcting soft errors in digital data |
US6499077B1 (en) * | 1999-12-30 | 2002-12-24 | Intel Corporation | Bus interface unit for reflecting state information for a transfer request to a requesting device |
US20040059881A1 (en) * | 2002-09-25 | 2004-03-25 | International Business Machines Corporation | Memory controller optimization |
US6745298B2 (en) * | 1999-06-16 | 2004-06-01 | Intel Corporation | Internal processor buffering for implicit writebacks |
US6754774B2 (en) * | 2001-07-06 | 2004-06-22 | Juniper Networks, Inc. | Streaming output engine facilitating data transfers between application engines and memory |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5398244A (en) * | 1993-07-16 | 1995-03-14 | Intel Corporation | Method and apparatus for reduced latency in hold bus cycles |
US5574937A (en) * | 1995-01-30 | 1996-11-12 | Intel Corporation | Method and apparatus for improving instruction tracing operations in a computer system |
-
1996
- 1996-11-07 KR KR1019960052657A patent/KR100190377B1/en not_active IP Right Cessation
-
1997
- 1997-11-07 US US08/965,764 patent/US5881256A/en not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5398244A (en) * | 1993-07-16 | 1995-03-14 | Intel Corporation | Method and apparatus for reduced latency in hold bus cycles |
US5574937A (en) * | 1995-01-30 | 1996-11-12 | Intel Corporation | Method and apparatus for improving instruction tracing operations in a computer system |
Non-Patent Citations (2)
Title |
---|
Iacobovici et al., "Balanced Microprocessor Design Keeps Performance Peaked", IEEE, 1989, pp. 371-375. |
Iacobovici et al., Balanced Microprocessor Design Keeps Performance Peaked , IEEE, 1989, pp. 371 375. * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6199118B1 (en) * | 1998-08-18 | 2001-03-06 | Compaq Computer Corporation | System and method for aligning an initial cache line of data read from an input/output device by a central processing unit |
US6745298B2 (en) * | 1999-06-16 | 2004-06-01 | Intel Corporation | Internal processor buffering for implicit writebacks |
US6408417B1 (en) * | 1999-08-17 | 2002-06-18 | Sun Microsystems, Inc. | Method and apparatus for correcting soft errors in digital data |
US6499077B1 (en) * | 1999-12-30 | 2002-12-24 | Intel Corporation | Bus interface unit for reflecting state information for a transfer request to a requesting device |
US6665756B2 (en) | 1999-12-30 | 2003-12-16 | Intel Corporation | Bus interface unit for reflecting state information for a transfer request to a requesting device |
US6754774B2 (en) * | 2001-07-06 | 2004-06-22 | Juniper Networks, Inc. | Streaming output engine facilitating data transfers between application engines and memory |
US20040059881A1 (en) * | 2002-09-25 | 2004-03-25 | International Business Machines Corporation | Memory controller optimization |
US6941428B2 (en) | 2002-09-25 | 2005-09-06 | International Business Machines Corporation | Memory controller optimization |
Also Published As
Publication number | Publication date |
---|---|
KR19980034568A (en) | 1998-08-05 |
KR100190377B1 (en) | 1999-06-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8037253B2 (en) | Method and apparatus for global ordering to insure latency independent coherence | |
US5893151A (en) | Method and apparatus for maintaining cache coherency in a computer system with a highly pipelined bus and multiple conflicting snoop requests | |
US6128711A (en) | Performance optimization and system bus duty cycle reduction by I/O bridge partial cache line writes | |
US5185878A (en) | Programmable cache memory as well as system incorporating same and method of operating programmable cache memory | |
US5524235A (en) | System for arbitrating access to memory with dynamic priority assignment | |
EP0617365B1 (en) | Fully pipelined and highly concurrent memory controller | |
US5953538A (en) | Method and apparatus providing DMA transfers between devices coupled to different host bus bridges | |
US6021456A (en) | Method for communicating interrupt data structure in a multi-processor computer system | |
US5787486A (en) | Bus protocol for locked cycle cache hit | |
EP0325419B1 (en) | Method and apparatus for caching interlock variables in an integrated cache memory | |
US6014728A (en) | Organization of an integrated cache unit for flexible usage in supporting multiprocessor operations | |
US6785776B2 (en) | DMA exclusive cache state providing a fully pipelined input/output DMA write mechanism | |
KR100190379B1 (en) | Processor for performance improvement of write cycle | |
US5822756A (en) | Microprocessor cache memory way prediction based on the way of a previous memory read | |
JPH08263430A (en) | Method for omission of bus turnaround cycle and computer system | |
US5963721A (en) | Microprocessor system with capability for asynchronous bus transactions | |
EP0325422B1 (en) | Integrated cache unit | |
US5881256A (en) | Bus interface unit capable of simultaneously proceeding with two bus cycles in a high-performance microprocessor | |
EP0428149A2 (en) | Cache controller | |
US6782456B2 (en) | Microprocessor system bus protocol providing a fully pipelined input/output DMA write mechanism | |
JP4565786B2 (en) | Minimizing the use of bus command code points to request the start and end of locks | |
US5895490A (en) | Computer system cache performance on write allocation cycles by immediately setting the modified bit true | |
US6122696A (en) | CPU-peripheral bus interface using byte enable signaling to control byte lane steering | |
US5949980A (en) | Bus interface unit for preventing deadlock | |
US5696938A (en) | Computer system permitting mulitple write buffer read-arounds and method therefor |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: HYUNDAI ELECTRONICS INDUSTRIES CO., LTD., KOREA, R Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:LEE, SUK JOONG;REEL/FRAME:009073/0600 Effective date: 19971030 |
|
FEPP | Fee payment procedure |
Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
FPAY | Fee payment |
Year of fee payment: 4 |
|
AS | Assignment |
Owner name: HYNIX SEMICONDUCTOR INC., KOREA, REPUBLIC OF Free format text: CHANGE OF NAME;ASSIGNOR:HYUNDAI ELECTRONICS INDUSTRIES CO., LTD.;REEL/FRAME:015242/0899 Effective date: 20010329 |
|
AS | Assignment |
Owner name: MAGNACHIP SEMICONDUCTOR, LTD., KOREA, REPUBLIC OF Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:HYNIX SEMICONDUCTOR, INC.;REEL/FRAME:016216/0649 Effective date: 20041004 |
|
REMI | Maintenance fee reminder mailed | ||
LAPS | Lapse for failure to pay maintenance fees | ||
STCH | Information on status: patent discontinuation |
Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362 |
|
FP | Lapsed due to failure to pay maintenance fee |
Effective date: 20070309 |