WO2000026744A3 - Piplined memory controller - Google Patents

Piplined memory controller Download PDF

Info

Publication number
WO2000026744A3
WO2000026744A3 PCT/US1999/025640 US9925640W WO0026744A3 WO 2000026744 A3 WO2000026744 A3 WO 2000026744A3 US 9925640 W US9925640 W US 9925640W WO 0026744 A3 WO0026744 A3 WO 0026744A3
Authority
WO
WIPO (PCT)
Prior art keywords
memory controller
piplined
piplined memory
stage
command queue
Prior art date
Application number
PCT/US1999/025640
Other languages
French (fr)
Other versions
WO2000026744A2 (en
Inventor
Puthiya K Nizar
Michael W Williams
Original Assignee
Intel Corp
Puthiya K Nizar
Michael W Williams
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 Intel Corp, Puthiya K Nizar, Michael W Williams filed Critical Intel Corp
Priority to EP99971530A priority Critical patent/EP1135720A4/en
Priority to AU12417/00A priority patent/AU1241700A/en
Publication of WO2000026744A2 publication Critical patent/WO2000026744A2/en
Publication of WO2000026744A3 publication Critical patent/WO2000026744A3/en

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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • G06F13/161Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement
    • G06F13/1626Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement by reordering requests

Abstract

A piplined memory controller (105) that includes a decode stage, and a schedule stage, wherein the schedule stage includes a command queue (121, 123) to store multiple commands. In one embodiment, the schedule stage further includes look ahead logic (114) which can modify an order. Memory commands are stored in the command queue.
PCT/US1999/025640 1998-11-03 1999-11-01 Piplined memory controller WO2000026744A2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
EP99971530A EP1135720A4 (en) 1998-11-03 1999-11-01 Method and apparatus for providing a pipelined memory controller
AU12417/00A AU1241700A (en) 1998-11-03 1999-11-01 Method and apparatus for providing a pipelined memory controller

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/186,045 US6212611B1 (en) 1998-11-03 1998-11-03 Method and apparatus for providing a pipelined memory controller
US09/186,045 1998-11-03

Publications (2)

Publication Number Publication Date
WO2000026744A2 WO2000026744A2 (en) 2000-05-11
WO2000026744A3 true WO2000026744A3 (en) 2000-10-05

Family

ID=22683433

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US1999/025640 WO2000026744A2 (en) 1998-11-03 1999-11-01 Piplined memory controller

Country Status (7)

Country Link
US (1) US6212611B1 (en)
EP (1) EP1135720A4 (en)
KR (1) KR100543887B1 (en)
CN (1) CN1149489C (en)
AU (1) AU1241700A (en)
TW (1) TW449721B (en)
WO (1) WO2000026744A2 (en)

Families Citing this family (58)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4111472B2 (en) * 1998-05-15 2008-07-02 キヤノン株式会社 COMMUNICATION CONTROL METHOD AND DEVICE AND COMMUNICATION SYSTEM
US6542159B1 (en) * 1999-05-19 2003-04-01 Ati International S.R.L. Apparatus to control memory accesses in a video system and method thereof
US6469703B1 (en) * 1999-07-02 2002-10-22 Ati International Srl System of accessing data in a graphics system and method thereof
US6983350B1 (en) * 1999-08-31 2006-01-03 Intel Corporation SDRAM controller for parallel processor architecture
US6427196B1 (en) * 1999-08-31 2002-07-30 Intel Corporation SRAM controller for parallel processor architecture including address and command queue and arbiter
US6668317B1 (en) * 1999-08-31 2003-12-23 Intel Corporation Microengine for parallel processor architecture
US6606704B1 (en) * 1999-08-31 2003-08-12 Intel Corporation Parallel multithreaded processor with plural microengines executing multiple threads each microengine having loadable microcode
WO2001016702A1 (en) 1999-09-01 2001-03-08 Intel Corporation Register set used in multithreaded parallel processor architecture
US6532509B1 (en) 1999-12-22 2003-03-11 Intel Corporation Arbitrating command requests in a parallel multi-threaded processing system
US6694380B1 (en) 1999-12-27 2004-02-17 Intel Corporation Mapping requests from a processing unit that uses memory-mapped input-output space
US6625654B1 (en) * 1999-12-28 2003-09-23 Intel Corporation Thread signaling in multi-threaded network processor
US6307789B1 (en) * 1999-12-28 2001-10-23 Intel Corporation Scratchpad memory
US6631430B1 (en) * 1999-12-28 2003-10-07 Intel Corporation Optimizations to receive packet status from fifo bus
US6661794B1 (en) 1999-12-29 2003-12-09 Intel Corporation Method and apparatus for gigabit packet assignment for multithreaded packet processing
US6584522B1 (en) * 1999-12-30 2003-06-24 Intel Corporation Communication between processors
US6629253B1 (en) * 1999-12-30 2003-09-30 Intel Corporation System for efficient management of memory access requests from a planar video overlay data stream using a time delay
US6631462B1 (en) * 2000-01-05 2003-10-07 Intel Corporation Memory shared between processing threads
US7395399B2 (en) * 2000-08-25 2008-07-01 Stmicroelectronics S.A. Control circuit to enable high data rate access to a DRAM with a plurality of areas
US20040210730A1 (en) * 2000-08-25 2004-10-21 Stmicroelectronics S.A. Dram control circuit
US7681018B2 (en) 2000-08-31 2010-03-16 Intel Corporation Method and apparatus for providing large register address space while maximizing cycletime performance for a multi-threaded register file set
US6940816B2 (en) 2000-12-29 2005-09-06 Intel Corporation Method and apparatus for a slot-based memory controller
US7076627B2 (en) * 2001-06-29 2006-07-11 Intel Corporation Memory control for multiple read requests
US6868476B2 (en) * 2001-08-27 2005-03-15 Intel Corporation Software controlled content addressable memory in a general purpose execution datapath
US6820169B2 (en) 2001-09-25 2004-11-16 Intel Corporation Memory control with lookahead power management
US6510099B1 (en) 2001-09-28 2003-01-21 Intel Corporation Memory control with dynamic driver disabling
US7126952B2 (en) * 2001-09-28 2006-10-24 Intel Corporation Multiprotocol decapsulation/encapsulation control structure and packet protocol conversion method
US7194561B2 (en) * 2001-10-12 2007-03-20 Sonics, Inc. Method and apparatus for scheduling requests to a resource using a configurable threshold
US6578117B2 (en) * 2001-10-12 2003-06-10 Sonics, Inc. Method and apparatus for scheduling requests using ordered stages of scheduling criteria
US6804738B2 (en) * 2001-10-12 2004-10-12 Sonics, Inc. Method and apparatus for scheduling a resource to meet quality-of-service restrictions
US7895239B2 (en) 2002-01-04 2011-02-22 Intel Corporation Queue arrays in network devices
US6934951B2 (en) * 2002-01-17 2005-08-23 Intel Corporation Parallel processor with functional pipeline providing programming engines by supporting multiple contexts and critical section
JP2003216943A (en) * 2002-01-22 2003-07-31 Toshiba Corp Image processing device, compiler used therein and image processing method
US20030163654A1 (en) * 2002-02-22 2003-08-28 Eliel Louzoun System and method for efficient scheduling of memory
US7149857B2 (en) 2002-05-14 2006-12-12 Micron Technology, Inc. Out of order DRAM sequencer
US7471688B2 (en) * 2002-06-18 2008-12-30 Intel Corporation Scheduling system for transmission of cells to ATM virtual circuits and DSL ports
US7433307B2 (en) * 2002-11-05 2008-10-07 Intel Corporation Flow control in a network environment
US7225301B2 (en) 2002-11-22 2007-05-29 Quicksilver Technologies External memory controller node
AU2003900733A0 (en) * 2003-02-19 2003-03-06 Canon Kabushiki Kaisha Dynamic Reordering of Memory Requests
AU2004200593B2 (en) * 2003-02-19 2006-10-19 Canon Kabushiki Kaisha Dynamic Reordering of Memory Requests
US7370169B2 (en) * 2003-06-30 2008-05-06 Raytheon Company Efficient memory controller
WO2005006194A2 (en) * 2003-06-30 2005-01-20 Raytheon Company Efficient memory controller
US8504992B2 (en) * 2003-10-31 2013-08-06 Sonics, Inc. Method and apparatus for establishing a quality of service model
US7665069B2 (en) * 2003-10-31 2010-02-16 Sonics, Inc. Method and apparatus for establishing a quality of service model
US9087036B1 (en) 2004-08-12 2015-07-21 Sonics, Inc. Methods and apparatuses for time annotated transaction level modeling
CN1555005A (en) 2003-12-29 2004-12-15 ����ͨѶ�ɷ����޹�˾ Crossover type command submitting method of dynamic circulation streamline
US7213099B2 (en) * 2003-12-30 2007-05-01 Intel Corporation Method and apparatus utilizing non-uniformly distributed DRAM configurations and to detect in-range memory address matches
US8001353B2 (en) * 2005-06-10 2011-08-16 Hewlett-Packard Development Company, L.P. Apparatus and method for configuring memory blocks
US7644248B2 (en) * 2006-09-27 2010-01-05 Intel Corporation Mechanism to generate logically dedicated read and write channels in a memory controller
US8868397B2 (en) * 2006-11-20 2014-10-21 Sonics, Inc. Transaction co-validation across abstraction layers
KR101627321B1 (en) * 2009-01-13 2016-06-03 삼성전자주식회사 I/O request handling method and solid state drive using this
US8572322B2 (en) * 2010-03-29 2013-10-29 Freescale Semiconductor, Inc. Asynchronously scheduling memory access requests
US8560796B2 (en) * 2010-03-29 2013-10-15 Freescale Semiconductor, Inc. Scheduling memory access requests using predicted memory timing and state information
US8627021B2 (en) 2011-08-31 2014-01-07 Qualcomm Incorporated Method and apparatus for load-based prefetch access
US10310923B1 (en) 2014-08-28 2019-06-04 Seagate Technology Llc Probabilistic aging command sorting
US10089243B2 (en) * 2016-02-25 2018-10-02 SK Hynix Inc. Memory controller and system including variable address mapping tables and a fixed address mapping table
US10379940B2 (en) 2016-12-08 2019-08-13 Sandisk Technologies Llc Pipeline delay detection during decoding by a data storage device
US10831403B2 (en) 2017-05-19 2020-11-10 Seagate Technology Llc Probabalistic command aging and selection
US10275352B1 (en) 2017-12-28 2019-04-30 Advanced Micro Devices, Inc. Supporting responses for memory types with non-uniform latencies on same channel

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5940848A (en) * 1997-01-14 1999-08-17 Intel Corporation Computer system and method for efficiently controlling the opening and closing of pages for an aborted row on page miss cycle

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3255908B2 (en) * 1988-06-30 2002-02-12 エルジー・セミコン・カンパニー・リミテッド Memory control unit
US5058051A (en) 1988-07-29 1991-10-15 Texas Medical Instruments, Inc. Address register processor system
US5222223A (en) 1989-02-03 1993-06-22 Digital Equipment Corporation Method and apparatus for ordering and queueing multiple memory requests
US5060145A (en) 1989-09-06 1991-10-22 Unisys Corporation Memory access system for pipelined data paths to and from storage
US5280597A (en) 1990-03-30 1994-01-18 Mitsubishi Denki Kabushiki Kaisha Pipeline processor with self timed data transfer
JP3215105B2 (en) 1990-08-24 2001-10-02 富士通株式会社 Memory access device
JP2532300B2 (en) 1990-10-17 1996-09-11 三菱電機株式会社 Instruction supply device in parallel processing device
US5323489A (en) 1991-11-14 1994-06-21 Bird Peter L Method and apparatus employing lookahead to reduce memory bank contention for decoupled operand references
US5732236A (en) 1993-05-28 1998-03-24 Texas Instruments Incorporated Circuit and method for controlling access to paged DRAM banks with request prioritization and improved precharge schedule
US5546546A (en) 1994-05-20 1996-08-13 Intel Corporation Method and apparatus for maintaining transaction ordering and arbitrating in a bus bridge
US5721860A (en) 1994-05-24 1998-02-24 Intel Corporation Memory controller for independently supporting synchronous and asynchronous DRAM memories
US5617559A (en) 1994-08-31 1997-04-01 Motorola Inc. Modular chip select control circuit and method for performing pipelined memory accesses
EP0813709B1 (en) 1995-03-03 2007-10-17 Fujitsu Limited Parallel access micro-tlb to speed up address translation
US5680577A (en) 1995-04-27 1997-10-21 International Business Machines Corporation Method and system for processing multiple requests for data residing at the same memory address
US5696910A (en) 1995-09-26 1997-12-09 Intel Corporation Method and apparatus for tracking transactions in a pipelined bus
US5873119A (en) 1996-02-09 1999-02-16 Intel Corporation Method for parallel processing of dram read request in a memory-cache controller system
US5822772A (en) 1996-03-22 1998-10-13 Industrial Technology Research Institute Memory controller and method of memory access sequence recordering that eliminates page miss and row miss penalties
US5745913A (en) * 1996-08-05 1998-04-28 Exponential Technology, Inc. Multi-processor DRAM controller that prioritizes row-miss requests to stale banks
US5920898A (en) 1996-08-16 1999-07-06 Unisys Corporation Memory control unit providing optimal timing of memory control sequences between different memory segments by optimally selecting among a plurality of memory requests
US5903916A (en) 1996-12-16 1999-05-11 Intel Corporation Computer memory subsystem and method for performing opportunistic write data transfers during an access latency period within a read or refresh operation
US5983325A (en) * 1997-12-09 1999-11-09 Advanced Micro Devices, Inc. Dataless touch to open a memory page
US6052756A (en) * 1998-01-23 2000-04-18 Oki Electric Industry Co., Ltd. Memory page management

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5940848A (en) * 1997-01-14 1999-08-17 Intel Corporation Computer system and method for efficiently controlling the opening and closing of pages for an aborted row on page miss cycle

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
IBM TECHNICAL DISCLOSURE BULLETIN, vol. 36, no. 6B, 1 June 1993 (1993-06-01), NEW YORK, US, pages 45 - 46, XP000377294 *

Also Published As

Publication number Publication date
CN1149489C (en) 2004-05-12
US6212611B1 (en) 2001-04-03
AU1241700A (en) 2000-05-22
KR20010089392A (en) 2001-10-06
CN1332872A (en) 2002-01-23
EP1135720A2 (en) 2001-09-26
KR100543887B1 (en) 2006-01-20
EP1135720A4 (en) 2003-06-11
WO2000026744A2 (en) 2000-05-11
TW449721B (en) 2001-08-11

Similar Documents

Publication Publication Date Title
WO2000026744A3 (en) Piplined memory controller
EP0615184A3 (en) Nonvolatile memory.
WO2001050247A3 (en) Memory shared between processing threads
WO2002056188A3 (en) Method for programming memory controller in a high performance microprocessor
EP1826765A3 (en) Methods and systems for reducing heat flux in memory systems
DE69721346D1 (en) Dynamic torque pilot control for yaw control in space
AU4428997A (en) Nonvolatile writeable memory with program suspend command
EP0809846A4 (en) Nonvolatile magnetoresistive memory with fully closed-flux operation
WO2003010775A1 (en) Nonvolatile memory
TR199600819A2 (en) Reform in valves.
AU1530997A (en) Hierarchical scan logic for out-of-order load/store execution control
WO2000033180A3 (en) An instruction fetch unit aligner
AU2064397A (en) Simplified clocked dram with a fast command input
EP1375050A4 (en) Machining control method, machining control device, computer program for executing the method, and information storage medium having the computer program stored therein
HK1052237A1 (en) Controlling access to multiple isolated memories in an isolated execution environment.
WO2002027414A1 (en) Electronic watch and electronic watch control method
EP0626757A3 (en) Adiabatic dynamic logic.
EP0606769A3 (en) Nonvolatile semiconducteur memories.
AU6888098A (en) Self-configuring 1.8 and 3.0 volt interface architecture on flash memories
EP0609829A3 (en) A non-volatile semiconductor memory device and a method for fabricating the same.
AU5424999A (en) Method for implementing a queue in a memory, and memory arrangement
AU2002211716A1 (en) A system and method for grouped gating control logic
EP1338970A3 (en) Method and system to control access to EEPROMs as well as corresponding computer program product and computer readable storage medium
EP0638906A3 (en) Non-volatile semiconductor memory.
WO2002095592A3 (en) Method and apparatus to provide real-time access to flash memory features

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 99815325.7

Country of ref document: CN

ENP Entry into the national phase

Ref document number: 2000 12417

Country of ref document: AU

Kind code of ref document: A

AK Designated states

Kind code of ref document: A2

Designated state(s): AE AL AM AT AU AZ BA BB BG BR BY CA CH CN CR CU CZ DE DK DM EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG US UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): GH GM KE LS MW SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
AK Designated states

Kind code of ref document: A3

Designated state(s): AE AL AM AT AU AZ BA BB BG BR BY CA CH CN CR CU CZ DE DK DM EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG US UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A3

Designated state(s): GH GM KE LS MW SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

WWE Wipo information: entry into national phase

Ref document number: 1020017005544

Country of ref document: KR

WWE Wipo information: entry into national phase

Ref document number: 1999971530

Country of ref document: EP

REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

WWP Wipo information: published in national office

Ref document number: 1999971530

Country of ref document: EP

WWW Wipo information: withdrawn in national office

Ref document number: 1999971530

Country of ref document: EP