KR100266883B1 - 데이타 버퍼가 부착된 smp 메모리 제어기에 있어서의 대기시간이 짧은 제1 데이타 억세스 - Google Patents

데이타 버퍼가 부착된 smp 메모리 제어기에 있어서의 대기시간이 짧은 제1 데이타 억세스 Download PDF

Info

Publication number
KR100266883B1
KR100266883B1 KR1019980003571A KR19980003571A KR100266883B1 KR 100266883 B1 KR100266883 B1 KR 100266883B1 KR 1019980003571 A KR1019980003571 A KR 1019980003571A KR 19980003571 A KR19980003571 A KR 19980003571A KR 100266883 B1 KR100266883 B1 KR 100266883B1
Authority
KR
South Korea
Prior art keywords
data
bus
available
memory
memory controller
Prior art date
Application number
KR1019980003571A
Other languages
English (en)
Other versions
KR19980079687A (ko
Inventor
워렌 에드워드 마울
데이비드 웨인 빅터
Original Assignee
포만 제프리 엘
인터내셔널 비지네스 머신즈 코포레이션
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 포만 제프리 엘, 인터내셔널 비지네스 머신즈 코포레이션 filed Critical 포만 제프리 엘
Publication of KR19980079687A publication Critical patent/KR19980079687A/ko
Application granted granted Critical
Publication of KR100266883B1 publication Critical patent/KR100266883B1/ko

Links

Classifications

    • 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/1652Handling requests for interconnection or transfer for access to memory bus based on arbitration in a multiprocessor architecture
    • G06F13/1663Access to shared memory
    • 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/1668Details of memory controller
    • G06F13/1673Details of memory controller using buffers

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)
  • Memory System (AREA)

Abstract

컴퓨터 시스템에서 데이타를 버스에 제공하는 시스템 및 방법이 개시된다. 컴퓨터 시스템은 메모리를 포함한다. 버스는 복수의 프로세서를 위하여 사용된다. 상기 방법은 메모리에서 데이타가 억세스된 이후에 버스가 데이타를 전송하도록 사용 가능한지를 결정한다. 버스가 사용 가능하다면 상기 방법은 다음으로 데이타를 버스에 전송한다. 상기 방법 및 시스템은 제1 데이타 억세스에 대한 지연을 감소시키고 높은 유연성을 가지면서 데이타를 전송하여, 전체 시스템 성능을 개선한다.

Description

데이타 버퍼가 부착된 SMP 메모리 제어기에 있어서의 대기 시간이 짧은 제1 데이타 억세스
본 발명은 메모리 제어기의 데이타 억세스에 대한 방법 및 시스템에 관한 것으로, 특히 버퍼링된 메모리 제어기, 특히 SMP 메모리 제어기와 같은 복수개의 프로세서를 위해 사용되는 제어기에 있어서 대기 시간이 짧은 데이타 억세스를 제공하는 방법 및 시스템에 관한 것이다.
SMP 메모리 제어기와 같은 복수의 프로세서를 위해 사용되는 현재의 메모리 제어기는 일반적으로 전체 프로세서에 대해 단일 데이타 버스를 채용한다. 프로세서가 메모리로부터 데이타 판독을 시도할 때마다, 메모리 제어기는 프로세서가 어떻게 데이타 버스의 억세스를 승인할 것인지를 결정해야 한다. 동시에, 제어기는 다른 프로세서의 버스 사용을 고려해야 한다.
특정 프로세서에 대한 판독 명령이 수행되기 시작하면 데이타 버스가 리저브(reserve)될 수 있지만, 이는 판독 명령이 완료될 때까지 다른 프로세서가 버스를 사용하는 것을 차단한다. 그러한 시스템은 시스템 속도를 현저히 지연시킨다. 대신에, 프로세서는 일반적으로 버스를 조정하고 다중 경로선 버퍼를 사용하여 버스가 사용 가능하게 될 때까지 데이타를 저장한다.
데이타 요청의 개시시에는, 일반적으로 복수개의 프로세서를 위해 사용되는 데이타 버스가 언제 요청에 서비스를 제공하도록 사용 가능한지를 결정할 수 없다. 버스는 여러 가지 이유로 사용중인(busy) 상태일 수 있다. 대기중인 판독 요청이 있을 수 있다. 일반적으로, 어드레스와 데이타 버스는 독립적이다. 어드레스가 발생(issue)되는 경우, 태그(tag)를 가진다. 메모리로부터 판독된 데이타는 이와 관련된 대응 태그를 갖는다. 이로써, 시스템은 특정 요청에 대해 데이타가 복귀하는 것을 대기할 필요 없이 다중 어드레스를 내보내는 것이 가능하다. 또한, 데이타는 요청이 발생된 순서와 동일한 순서로 복귀할 필요는 없다. 그러므로, 언제든지 다수의 판독 요청이 대기중일 수 있다. 프로세서는 또한 기록 요청을 내보내고, 기록 데이타를 버스에 위치시킬 수 있다.
그러므로, 프로세서가 특정 판독 요청을 내보내는 경우, 언제 버스가 메모리로부터 판독된 데이타를 프로세서로 전송하도록 사용 가능한지를 알 수 없다. 버스가 사용 가능하게 될 시간을 알 수 없으므로, 종래의 시스템은 일반적으로 데이타를 일시적으로 버퍼내에 저장한다.
버퍼내에 저장함으로써 메모리 제어기는 복수의 프로세서를 위해 사용될 수 있지만, 단점이 있다. 메모리로부터의 데이타는 메모리 제어기로 입력되고 경로선 버퍼에 로드되어야 하므로, 프로세서에 의해 메모리 제어기로부터 수신된 제1 데이타는 지연된다. 이러한 데이타는 제어기가 버스를 조정할 수 있을 때까지 경로선 버퍼내에 잔류한다. 데이타는 버스가 즉시 사용 가능한지 여부에 관계없이 수 사이클 동안 버퍼내에 저장된다.
단일 프로세서를 위해 사용되는 종래의 메모리 제어기에서, 데이타는 버퍼되지 않는다. 복수의 프로세서를 사용하는 종래의 시스템에서 데이타가 버퍼되지 않는 경우, 프로세서는 판독된 데이타가 수신되는 것을 예견하여 버스를 요청할 수 있다. 버스는 그 프로세서를 위해 리저브될 것이다. 판독 동작에 의해 소요되는 전체 시간 동안 다른 프로세서는 버스에 억세스할 수 없다. 그러므로, 그러한 버퍼가 없는 구현은 다중-프로세서 시스템용으로는 적합하지 않다.
유사하게, 다중-프로세서 시스템에서 버퍼를 사용하지 않는 경우, 메모리로부터의 전송의 정확한 대기 시간을 안다면, 데이타 버스는 시간 윈도우로 분할될 수 있다. 버스가 요청되는 경우, 일정수의 사이클 후에 그러한 요청에 대해 버스가 사용될 것을 알 수 있다. 프로세서는 버스를 통한 데이타의 전송이 시작되기 훨씬 이전에 버스에 억세스를 요청해야 하므로, 언제 데이타가 프로세서로 전송될 수 있는지의 유연성은 제한된다. 일단 버스가 조정되는 경우, 그 다음부터는 다른 목적으로 사용될 수 없다.
따라서, 제1 데이타에 대해 지연이 적고 고 유연성을 가지면서 복수의 프로세서로 데이타를 제공하는 시스템 및 방법이 필요하다. 본 발명은 그러한 필요성에 대해 다룬다.
본 발명은 컴퓨터 시스템내의 버스에 데이타를 제공하는 방법 및 시스템을 제공한다. 컴퓨터 시스템은 메모리를 포함한다. 버스는 복수의 프로세서에 서비스를 제공한다. 상기 방법 및 시스템은 메모리내에서 데이타가 억세스된 후에 버스가 데이타를 전송하도록 사용 가능한지를 결정한다. 버스가 사용 가능하다면, 상기 방법은 다음으로 데이타를 버스에 전송한다.
본 명세서에 개재된 시스템 및 방법에 따라, 본 발명은 제1 데이타 억세스에 대한 감소된 지연 및 고 유연성을 갖는 데이타의 전송을 제공하여, 전체 시스템 성능을 증가시킨다.
도 1은 복수의 프로세서를 위해 사용되는 시스템의 개략적 블럭도.
도 2는 복수의 프로세서에 데이타를 공급하는 종래 시스템의 블럭도.
도 3은 본 발명의 방법 및 시스템에 따라 복수의 프로세서에 데이타를 공급하는 시스템의 블럭도.
* 도면의 주요부분에 대한 부호의 설명
10 : 어드레스 제어 칩
20 : 어드레스 흐름 칩
30 : 메모리
40 : 어드레스 버스
50 : 조정 버스
60 : 데이타 버스
70 : 버스
본 발명은 다중-프로세서 시스템의 개선에 관한 것이다. 아래의 설명은 당해 기술분야에서 통상의 지식을 가진자가 본 발명을 구현하고 실시할 수 있도록 제공되며, 특허 출원에 있어서 그 필수 요소로서 제공된다. 양호한 실시예의 다양한 변형은 당업자에게는 명백하며, 본원의 포괄적인 원리는 다른 실시예에 적용될 수 있다. 그러므로, 본 발명은 도시된 실시예에만 제한되는 것으로 의도되기 보다는 후술하는 원리 및 특징과 일관되는 최광범위에 걸쳐 일치되어야 할 것이다.
도 1은 SMP 시스템과 같은 복수의 프로세서(2)를 위해 사용되는 시스템(1)의 개략적 블럭도이다. 여기에는 제1 프로세서(2-1) 내지 제n 프로세서(2-n)인 n개의 프로세서가 있다. 각각의 프로세서는 어드레스 버스(40), 조정 버스(50), 및 데이타 버스(60)을 사용한다. 도 1에 도시된 시스템(1)에서, 어드레스 제어 칩(10)은 어드레싱을 제어한다. 데이타 흐름 칩(20)과 결합된 어드레스 제어 칩(10)은 메모리(30)로의 억세스를 제어한다.
데이타 흐름 칩(20)은 버스(60)를 사용하여 프로세서(2-1) 내지 프로세서(2-n)에 데이타를 제공하고, 버스(70)를 통해 메모리(30)로부터 데이타를 수신한다. 제1 프로세서(2-1)와 같은 프로세서(2) 중의 한 개체가 메모리로부터의 데이타의 판독을 시도할 때마다, 메모리 제어기(20)는 데이타 버스(60)로의 억세스를 승인하여야 한다. 언제 메모리 제어기(20)가 데이타 버스(60)로 억세스할 수 있는지를 결정하는데 있어서, 시스템(1)은 나머지 프로세서(2)에 의한 데이타 버스(60)의 사용을 고려해야만 한다.
데이타의 요청의 개시시에는, 일반적으로 언제 데이타 버스(60)가 요청에 서비스를 제공하도록 사용 가능한지가 결정될 수 없다. 버스는 다양한 이유로 사용중일 수 있다. 그러므로, 대기중인 판독 요청이 있을 수 있다. 일반적으로, 어드레스 버스(40) 및 데이타 버스(60)은 독립적이다. 이로써 시스템(1)은 특정 요청에 대해 데이타가 복귀하는 것을 대기할 필요없이 다중 어드레스를 내보내는 것이 가능하다. 또한, 데이타는 요청이 발생된 것과 동일한 순서로 복귀할 필요는 없다. 그러므로, 언제든지 수개의 대기중인 판독 요청이 있을 수 있다. 프로세서(2) 중의 하나는 또한 기록 요청을 내보낼 수 있고 버스 상에 기록 데이타를 위치시킬 수 있다.
도 2는 종래의 데이타 흐름 칩(20), 어드레스 제어 칩(10), 및 메모리(30)의 상세한 블럭도이다. 프로세서(2) 중의 하나가 특정 판독 요청을 발생하는 경우, 언제 데이타 버스(60)가 메모리(30)로부터 판독된 데이타를 전송하도록 사용 가능한지 알 수 없다. 데이타 버스(60)가 사용 가능한 시간을 알 수 없으므로, 데이타는 일반적으로 버퍼(26)내에 일시적으로 저장된다.
일반적으로, 메모리(30)로부터 판독된 데이타는 버스(70)를 통해 데이타 흐름 칩(20)내의 래치(21)에 전송된다. 다음으로 데이타는 ECC 검사/보정 로직(22)에서 에러를 검사한다. 다음으로, ECC 검사/보정 로직(22)는 데이타를 제2 래치(24)에 전송한다. 다음 클럭 사이클에서, 데이타는 버퍼(26)에 전송된다. 버퍼(26)는 데이타 버스(60)가 프로세서들(2)중의 적절한 하나로 데이타를 전송하는데 사용 가능하다는 것을 제어 로직(28)이 결정할 때까지 데이타를 저장한다.
일반적으로, 어드레스 제어 칩(10)은 언제 데이타 버스(60)가 데이타 흐름 칩(20)으로부터 데이타를 수신할 수 있는지를 제어 로직(28)으로 통지한다. 종래 시스템에서, 어드레스 제어 칩(10)은 주로 3개의 명령 - MEM_CMD, SYS_CMD, SYS_GRANT 명령 - 을 통해 데이타 흐름 칩(20)을 제어한다.
라인(91)을 통해 제공되는 MEM_CMD는 데이타가 메모리(30)로부터 버스(70)를 통해 도달하는 것을 데이타 흐름 칩(20)으로 통지한다. 라인(92)을 통해 제공되는 SYS_CMD는 데이타 버스(60)로 데이타를 제공해야 된다는 것을 데이타 흐름 칩(20)으로 통지한다. 라인(93)을 통해 제공되는 SYS_GRANT 명령은 데이타 버스(60)을 사용할 수 있게 되었음을 데이타 흐름 칩(20)으로 통지하며, 데이타 버스(60)에 제공되어야 하는 데이타의 양을 지정한다. 종래의 시스템에서는 어드레스 제어 칩(10)이 데이타 버스(60)를 조정한다. 데이타 버스(60)로 억세스하면, 어드레스 제어 칩(10)은 SYS_GRANT를 내보낸다. SYS_GRANT 명령은 데이타 버스(60)가 데이타를 수신하기 위해 사용 가능함을 데이타 흐름 칩(20)으로 통지한다.
버퍼가 없는 다중-프로세서 시스템도 가능하지만, 일반적으로 사용되지는 않는다. 종래의 버퍼가 없는 시스템(unbuffered system)에서, 메모리 제어기는 판독된 데이타가 수신되는 것을 예견하여 버스를 요청한다. 그러나, 전체 판독 동작 동안 버스는 그러한 전송을 위하여 리저브될 것이다. 유사하게, 메모리로부터의 전송의 대기 시간을 안다면 데이타 버스는 시간 윈도우로 분할될 수 있다. 판독이 요청된 경우, 선정된 수의 사이클 이후에 버스는 그러한 요청에 대해 사용될 것이다. 이는 시스템의 유연성을 제한한다. 그러므로, 버퍼가 없는 구현은 일반적으로 다중-프로세서 시스템에 적합하지 않다.
도1에 도시된 시스템(1)에서, 프로세서(2)는 상대적으로 충분히 신속하게 메모리(30)으로 억세스하지만, 당업자라면 버퍼(20)로 인한 단점이 있음을 알 것이다. 메모리(30)로부터의 데이타는 우선적으로 데이타 흐름 칩(20)으로 유입되어야 하며 버퍼(26)내로 로드되어야 하므로, 프로세서(2) 중의 하나에 의해 수신된 제1 데이타는 지연된다. 데이타는 어드레스 칩(10)이 버스(10)를 조정할 수 있을때까지 버퍼(26)내에 남는다. 데이타는 데이타 버스(60)가 즉시 사용 가능한지 여부에 관계없이 수 사이클 동안 버퍼(26)내에 저장된다. 이로써 메모리(30)로부터 프로세서(20) 중의 하나로 데이타의 제1 부분을 전송하는데 있어서 지연을 초래할 수 있다.
본 발명은 제1 데이타 억세스에 대해 감소된 대기 시간을 갖는 유연한 다중-프로세서 시스템을 제공하는 방법 및 시스템을 제공한다. 본 발명은 데이타 흐름 칩 및 어드레스 칩을 포함하는 메모리 제어기에 관해 설명될 것이다. 그러나, 당업자라면 이러한 방법 및 시스템이 다른 유형의 메모리 제어기에 대해서도 효율적으로 동작한다는 것을 용이하게 인지할 것이다.
본 발명에 따른 방법 및 시스템을 더욱 특징적으로 설명하기 위해, 그러한 시스템의 일 실시예(200)의 블럭도를 도시하는 도3을 참조한다. 본 발명의 실시예(200)는 종래 시스템과 유사한 일부 구성 요소를 포함한다. 결과적으로 이러한 구성 요소는 도2에 도시된 종래 구성 요소와 유사하게 번호가 매겨진다.
도3을 참조로, 메모리(30')로부터의 데이타는 데이타 흐름 칩(20')에 의해 수신된다. 양호한 실시예에서, 어드레스 제어 칩(10')은 데이타 흐름 칩(20')을 제어한다. 일 실시예에서, 데이타는 래치(21') 및 ECC 검사/보정 로직(22')에 제공된다. 시스템(200)은 다음으로 데이타 버스(60')가 데이타를 수신하는데 사용 가능한지를 결정한다. 양호한 실시예에서, 이는 SYS_GRANT 명령이 선(93')를 통해 수신되었는지를 결정하는 제어 로직(28')에 의해 수행된다.
바이패스 1(202)은 ECC 검사/보정 로직(222')로부터 직접 멀티플렉서(21)로 데이타를 제공한다. 데이타 버스(60')가 사용 가능하다면, 바이패스 1(202)로부터 멀티플렉서(206)로 입력되는 데이타는 데이타 버스(60')로 제공된다. 데이타 버스(60')가 즉시 사용 가능하지 않다면, 데이타는 래치(24')로 제공된다. 시스템(200)은 다음으로 데이타 버스(60')가 데이타의 수신에 사용 가능하게 되었는지를 결정한다. 양호한 실시예에서, 제어 로직(28')은 다시 SYS_GRANT 명령이 라인(93')을 통해 수신되었는지를 결정한다.
바이패스 2(204)로부터의 데이타가 멀티플렉서(206)으로 제공된다. 데이타 버스(60')가 사용 가능하게 된 경우, 바이패스 2(204)로부터 멀티플렉서(206)로 입력되는 데이타는 데이타 버스(60')로 제공된다. 양호한 실시예에서, 이는 데이타가 데이타 흐름 칩(20')으로 입력된 다음 1 사이클 이후에 발생한다. 데이타 버스(20')가 사용 가능하지 않은 경우, 데이타는 버퍼(26')로 제공된다. 데이타 버스(60')가 사용 가능해지는 경우, 멀티플렉서(206)로 제공되는 버퍼(26')로부터의 데이타는 데이타 버스(60')로 전송된다. 양호한 실시예에서, 이는 데이타가 데이타 흐름 칩(20')에서 수신된 다음 2 또는 그 이상의 사이클 이후에 발생한다.
시스템(200)은 도2에 도시된 종래의 버퍼 시스템을 갖는 관련 프로세서로 제공되는 제1 데이타 전송에 있어서의 불필요한 단점을 방지한다. 바이패스 1(202) 때문에, 프로세서(2) 중의 하나는 버퍼가 없는 시스템의 경우처럼 신속히 제1 데이타를 재수신한다. 시스템(200)은 또한 버스가 특정 판독 동작에 즉시 승인되지 않는 경우에도 적합하다.
데이타 버스(60')가 판독 동작에 대해 즉시 승인되지 않는 경우, 시스템(200)은 데이타를 1 사이클 전방으로 이동시키고, 데이타 버스(60')가 사용 가능한지를 결정하기 위해 재검사한다. 데이타 버스(60')가 사용 가능한 경우, 데이타는 데이타 버스(60')으로 전송된다. 그렇지 않다면, 시스템(200)은 데이타 버스(60')가 준비될 때까지 버퍼(26')내에 데이타를 보유할 수 있다. 결과적으로, 데이타는 가능한 한 신속히 프로세서(2) 중의 적절한 하나로 제공된다.
또한, 시스템(200)은 종래 버퍼가 없는 시스템보다 유연성이 크다. 데이타 버스(60')은 메모리(30')로부터의 데이타가 데이타 버스(60')로 전송되기 훨씬 이전부터 조정될 필요가 없다. 양호한 실시예에서, 시스템(200)이 어드레스 제어 칩(10')을 통해 데이타 버스(60')를 조정하는 경우, 버스는 필요한 만큼의 수 사이클 이후에 동작이 허용된다. 그러므로, 시스템(200)은 버스(60')를 사용하는 경우 선정된 길이의 윈도우로 분할되지 않는다.
본 발명에서는 제1 데이타 억세스에 대해 지연이 적고 높은 유연성을 가지면서 복수의 프로세서에 데이타를 제공하는 방법 및 시스템이 공지되었다.
본 발명이 도시된 실시예에 따라 설명되었지만, 당업자라면 실시예에 대해 변형이 가능하며 이러한 변형은 본 발명의 기술 사상 및 범위내에 있다는 것을 용이하게 인지할 것이다. 따라서, 당업자는 첨부된 청구 범위의 기술 사상 및 범위에서 벗어나지 않고 많은 변경이 가능할 것이다.

Claims (22)

  1. 메모리를 포함하는 컴퓨터 시스템에서 복수의 프로세서를 위해 사용되는 버스에 데이타를 제공하는 방법에 있어서, (a) 상기 메모리에서 상기 데이타가 메모리에 억세스된 이후 상기 버스가 상기 데이타를 전송하는데 사용 가능한지를 결정하는 단계와, (b) 상기 버스가 사용 가능한 경우 상기 데이타를 상기 버스에 전송하는 단계를 포함하는 방법.
  2. 제1항에 있어서, 상기 단계(b)는 (b1) 상기 버스가 사용 가능한 경우 상기 데이타를 상기 버스에 전송하는 단계와, (b2) 상기 버스가 사용 가능하지 않은 경우 상기 데이타를 래치(latch)로 전송하는 단계와, (b3) 상기 버스가 상기 데이타를 전송하는데 사용 가능하게 되었는지를 결정하는 단계와, (b4) 상기 버스가 상기 데이타를 전송하는 데 사용 가능하게 된 경우 상기 데이타를 상기 래치로부터 상기 버스에 전송하는 단계를 더 포함하는 방법.
  3. 제2항에 있어서, (c) 상기 버스가 사용 가능하지 않은 경우 상기 래치로부터의 상기 데이타를 저장하는 단계를 더 포함하는 방법.
  4. 제3항에 있어서, 상기 단계(c)는 (c2) 상기 버스가 사용 가능하게 된 경우 저장된 상기 데이타를 상기 버스에 제공하는 단계를 더 포함하는 방법.
  5. 제4항에 있어서, 상기 데이타는 레지스터(register)내에 저장되는 방법.
  6. 제5항에 있어서, 상기 데이타는 에러 검사 데이타(error checked data)를 더 포함하는 방법.
  7. 제6항에 있어서, 상기 단계(b2)는 상기 단계(a)의 1 사이클 후에 수행되는 방법.
  8. 제7항에 있어서, 상기 단계(c2)는 상기 단계(a)의 2 또는 그 이상의 사이클 후에 수행되는 방법.
  9. 제8항에 있어서, 상기 단계(a)는 (a1) 메모리 제어기가 상기 버스의 제어권을 획득했음을 표시하는 명령을 검색하는 단계를 더 포함하는 방법.
  10. 제9항에 있어서, 상기 버스가 사용 가능한지를 결정하는 상기 단계(a)는 (a2) 상기 버스에 제공될 수 있는 데이타의 양을 결정하는 단계를 더 포함하는 방법.
  11. 제10항에 있어서, 상기 단계(b3)는 (b3i) 메모리 제어기가 상기 버스의 제어권을 획득했음을 표시하는 명령을 검색하는 단계를 더 포함하는 방법.
  12. 제11항에 있어서, 상기 단계(c2)는 (c2i) 메모리 제어기가 상기 버스의 제어권을 획득했음을 표시하는 명령을 검색하는 단계를 더 포함하는 방법.
  13. 컴퓨터 시스템에서 복수의 프로세서를 위해 사용되는 버스에 데이타를 제공하는 시스템에 있어서, 상기 데이타를 수신하기 위한 수단과, 상기 수신 수단에 결합되어 있으며 상기 버스가 제1 선정된 주기내에서 사용 가능한 경우 상기 데이타를 상기 버스에 제공하기 위한 제1 바이패스(bypass)와, 상기 버스가 사용 가능한지를 결정하기 위해 상기 제1 바이패스에 결합되어 있는 결정 수단을 포함하는 시스템.
  14. 제13항에 있어서, 상기 수신 수단에 결합되어 있으며 상기 데이타를 보유(hold)하기 위한 래치와, 상기 래치에 결합되어 있으며 상기 버스가 제2 선정 주기내에서 사용 가능하게 되는 경우 상기 버스에 상기 데이타를 제공하기 위한 제2 바이패스를 더 포함하는 시스템.
  15. 제14항에 있어서, 상기 제2 바이패스 및 상기 래치에 결합되어 있으며, 상기 버스가 사용 가능하게 될 때까지 상기 데이타를 저장하기 위한 저장 수단을 더 포함하는 시스템.
  16. 제15항에 있어서, 상기 저장 수단은 레지스터를 더 포함하는 시스템.
  17. 제16항에 있어서, 상기 데이타를 수신하기 위한 수단은 데이타의 에러를 검사하고 에러를 보정하기 위한 수단을 더 포함하는 시스템.
  18. 제17항에 있어서, 상기 제1 선정된 주기는 상기 데이타가 에러 검사 및 보정을 완료한 직후인 시스템.
  19. 제18항에 있어서, 상기 제2 선정된 주기는 상기 데이타가 상기 수신 수단으로 입력되는 단계 다음의 1 사이클 이후인 시스템.
  20. 제19항에 있어서, 상기 버퍼로부터 전송된 상기 데이타는 상기 데이타가 상기 수신 수단으로 입력된 다음 2 또는 그 이상의 사이클 이후에 전송되는 시스템.
  21. 제20항에 있어서, 상기 결정 수단은 메모리 제어기가 상기 버스의 제어권을 획득했음을 표시하는 명령을 검색하는 수단을 더 포함하는 시스템.
  22. 제21항에 있어서, 상기 결정 수단은 상기 검색 수단에 결합되어 있으며 상기 버스에 제공될 수 있는 데이타의 양을 결정하는 수단을 더 포함하는 시스템.
KR1019980003571A 1997-04-04 1998-02-07 데이타 버퍼가 부착된 smp 메모리 제어기에 있어서의 대기시간이 짧은 제1 데이타 억세스 KR100266883B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US83513497A 1997-04-04 1997-04-04
US8/835,134 1997-04-04

Publications (2)

Publication Number Publication Date
KR19980079687A KR19980079687A (ko) 1998-11-25
KR100266883B1 true KR100266883B1 (ko) 2000-09-15

Family

ID=25268675

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019980003571A KR100266883B1 (ko) 1997-04-04 1998-02-07 데이타 버퍼가 부착된 smp 메모리 제어기에 있어서의 대기시간이 짧은 제1 데이타 억세스

Country Status (3)

Country Link
JP (1) JP3111052B2 (ko)
KR (1) KR100266883B1 (ko)
TW (1) TW387072B (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7117316B2 (en) 2002-08-05 2006-10-03 Micron Technology, Inc. Memory hub and access method having internal row caching
US7330992B2 (en) 2003-12-29 2008-02-12 Micron Technology, Inc. System and method for read synchronization of memory modules
US7188219B2 (en) 2004-01-30 2007-03-06 Micron Technology, Inc. Buffer control system and method for a memory system having outstanding read and write request buffers
US7519788B2 (en) 2004-06-04 2009-04-14 Micron Technology, Inc. System and method for an asynchronous data buffer having buffer write and read pointers
JP5233360B2 (ja) * 2008-03-27 2013-07-10 富士通株式会社 メモリ制御装置,メモリ制御装置の制御方法および情報処理装置

Also Published As

Publication number Publication date
JPH10283302A (ja) 1998-10-23
JP3111052B2 (ja) 2000-11-20
KR19980079687A (ko) 1998-11-25
TW387072B (en) 2000-04-11

Similar Documents

Publication Publication Date Title
US5003465A (en) Method and apparatus for increasing system throughput via an input/output bus and enhancing address capability of a computer system during DMA read/write operations between a common memory and an input/output device
KR100524575B1 (ko) 데이타 처리시스템에서 복수개의 메모리 억세스 리퀘스트신호를리오더링하는 방법
US4737932A (en) Processor
KR930006384B1 (ko) 큐 관리 방법 및 장치
KR100805603B1 (ko) 집적 회로
US5941964A (en) Bridge buffer management by bridge interception of synchronization events
AU598857B2 (en) Move-out queue buffer
EP2377026B1 (en) Resolving contention between data bursts
US20060218332A1 (en) Interface circuit, system, and method for interfacing between buses of different widths
US5313591A (en) Computer bus arbitration for N processors requiring only N unidirectional signal leads
US6496905B1 (en) Write buffer with burst capability
KR19990008093A (ko) 타이머 관리자
US6247101B1 (en) Tagged access synchronous bus architecture
US20030056075A1 (en) Shared memory array
JPH06309230A (ja) バススヌ−プ方法
KR19990082719A (ko) 기억장치의액세스대기시간을감소시키기위한시스템및그방법
KR100266883B1 (ko) 데이타 버퍼가 부착된 smp 메모리 제어기에 있어서의 대기시간이 짧은 제1 데이타 억세스
EP0437712B1 (en) Tandem cache memory
US6847990B2 (en) Data transfer unit with support for multiple coherency granules
WO2006011063A2 (en) Dmac issue mechanism via streaming id method
JP2537526B2 (ja) マルチプロセッサシステム
JP2001229074A (ja) メモリ制御装置と情報処理装置及びメモリ制御チップ
KR100454652B1 (ko) 하이파이버스시스템의주기억장치
JPS62226348A (ja) 主記憶装置兼主記憶制御装置
JPH07334455A (ja) データバス転送方法

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee