KR0129793B1 - 태그 비트를 사용한 메모리 엑세스 장치 및 방법 - Google Patents
태그 비트를 사용한 메모리 엑세스 장치 및 방법Info
- Publication number
- KR0129793B1 KR0129793B1 KR1019930024440A KR930024440A KR0129793B1 KR 0129793 B1 KR0129793 B1 KR 0129793B1 KR 1019930024440 A KR1019930024440 A KR 1019930024440A KR 930024440 A KR930024440 A KR 930024440A KR 0129793 B1 KR0129793 B1 KR 0129793B1
- Authority
- KR
- South Korea
- Prior art keywords
- memory
- tag
- board
- signal
- command
- Prior art date
Links
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/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
- G06F13/1652—Handling requests for interconnection or transfer for access to memory bus based on arbitration in a multiprocessor architecture
- G06F13/1657—Access to multiple memories
-
- 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/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
- G06F13/1642—Handling requests for interconnection or transfer for access to memory bus based on arbitration with request queuing
-
- 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/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
- G06F13/1689—Synchronisation and timing concerns
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multi Processors (AREA)
Abstract
본 발명은 다중 메모리 시스템에서 태그 비트(TAG BIT)를 사용하여 메모리 엑세스 시 병렬 처리가 가능토록 한 태그 비트를 사용한 메모리 엑세스 장치 및 방법에 관한 것으로, 종래 리드 혹은 라이트의 명령어에 접속되어 있는 하나의 중앙 처리 장치 보드가 버스 사용중 상태이면 데이타버스를 묶어두는 관계로 인해 다른 중앙처리 장치 보드들의 엑세스 시간이 길어지는 비능률적인 문제점을, 버스 제어 신호의 일부로 태그 비트를 사용한 프로토콜을 도입하여 메모리 접근의 중첩에 의한 주 기억장치 접근 시간을 줄이도록 하므로써, 리드/라이트 동작시 데이타가 전송되는 순간만 버스 사용중 상태이고, 그 외의 상태는 개방 상태를 유지하도록 하여 각 메모리 보드의 독립적인 동작에 따른 다중 엑세스를 가능케 해 제품의 처리속도를 증가시키는 잇점이 있다.
Description
제1도는 종래 메모리 엑세스 방법의 예시도.
제2도는 본 발명 태그 비트를 사용한 메모리 엑세스 방식을 구현한 시스템 구성도.
제3도는 제2도에서 메모리 제어 보드의 상세 구성도.
제4도는 제2도에서 메모리 보드 내부의 메모리 보드 인터페이스 논리부의 상세 구성도.
제5도는 메모리 제어 보드와 메모리 보드부내의 각 메모리 보드의 메모리 보드 인터페이스 논리부간의 제어 신호 흐름도.
제6도는 (a) 내지 (i)는 본 발명 태그 비트를 사용한 메모리 엑세스 방식을 구현한 시스템의 동작을 나타내는 타이밍도이다.
* 도면의 주요부분에 대한 부호의 설명
1 : 시스템 제어 보드 2 : 중앙 처리 장치 보드부
3 : 메모리 보드부 4 : 메모리 제어 보드
41 : 식별자 제어 논리부 42 : 출력 데이타 레지스터 파이프
43 : 연산 코드 레지스터 44 : 명령어 분석 및 제어부
45 : 큐 제어부 46 : 어드레스 레지스터 파이프
47 : 입력 데이타 레지스터 파이프 5 : 메모리 보드 인터페이스 논리부
51 : 래치부 52 : 리턴 레지스터
53 : 비교기 54 : 송/수신기
6 : 중앙 처리 장치 보드 7 : 메모리 보드
본 발명은 다중 처리 및 병렬 처리 컴퓨터의 메모리 관리 방법에서 메모리를 엑세스하는 장치 및 방법에 관한 것으로, 특히 다중 메모리 시스템에서 태그 비트(TAG BIT)를 사용하여, 메모리를 엑세스 할 때 명령어의 병렬 처리 및 다중 처리(메모리 접근의 중첩)가 가능하도록 한, 태그 비트를 사용한 메모리 엑세스 장치 및 방법에 관한 것이다.
일반적으로 중대형 컴퓨터 시스템과 같은 중형급 이상의 컴퓨터에서는 여러장의 주기억 장치 보드(메모리 보드)가 소요된다. 이로 인해 각 주기억 장치 보드들을 엑세스하여 작업을 처리할 때 작업에 필요로 되는 주기억 장치 보드(메모리 보드)를 구분하여 엑세스 하는데 소모되는 시간이 길어지게 되는 문제가 발생하였다. 따라서, 상기와 같은 문제점을 해결하기 위하여(주기억 장치(메모리)에 대한 접근 시간을 줄이기 위한 방법으로) 종래에는 시스템 구조에 따라 조금씩 차이가 있으나 일반적으로 제1도에 도시된 바와 같이 메모리 번지를 여러장의 메모리 보드상에 분산시키는 인터 리빙(Inter Leaving)방식을 주로 사용하였다.
그러나, 상기와 같은 종래 사용되던 인터 리빙 방식은, 리드 혹은 라이트의 명령어에 접속되어 있는 하나의 중앙 처리 장치 보드가 버스 사용중(비지(busy)) 상태이면, 실제 데이타의 송/수신이 이루어지지 않더라도 데이터 버스를 묶어 두는 관계로 인해 다른 중앙 처리 장치 보드들의 엑세스 시간이 길어져 비능률적이고, 또한 이를 개선시키기 위한 방법으로 중앙 처리 장치 보드내에 캐쉬 메모리를 많이 사용하여야 하는 문제점이 있었다. 이에 따라, 본 발명은 상기와 같은 종래 문제점을 감안하여, 버스 제어 신호의 일부로 태그 비트를 사용한 프로토콜을 도입하므로써, 메모리 접근의 중첩(명령어의 병렬 처리 및 다중 처리)에 의한 주 기억 장치 접근 시간을 줄이도록 함을 본 발명의 목적으로 한다.
즉, 메모리 버스상에 펜디드 프로토콜(Pended Protocal)을 사용하여 리드/라이트 동작시 데이타가 전송되는 순간만 버스 사용 중 상태이고, 그 외의 상태는 개방 상태를 유지하도록 한 것이다.
이하 본 발명의 일 실시예를 첨부된 도면을 참조하여 상세히 설명하면 다음과 같다.
본 발명 태그 비트를 사용한 메모리 접근 방식을 구현한 시스템 구성도는 제2도에 도시된 바와 같이, 전체 시스템의 동작을 제어, 처리하는 시스템 제어보드(1)와 ; 상기 시스템 제어보드(1)에서 출력되는 제어 신호에 의해 실제 명령어의 수행 및 제어기능을 담당하는 중앙 처리 장치 보드(6)들로 이루어진 중앙 처리 장치 보드부(2)와 ; 메모리 제어보드(4)와 메모리 보드(7)간의 인터페이스 기능을 수행하기 위한 메모리 보드 인터페이스 논리부(5)를 포함하는 데이타 저장 매체인 메모리 보드(7)들로 이루어진 메모리 보드부(3)와 ; 상기 중앙 처리 장치 보드부(2)에서 출력되는 제어 신호에 의해 메모리 보드부(3)를 제어하는 메모리 제어 보드(4)로 구성된다.
상기에서 시스템 제어 보드(1)와 중앙 처리 장치 보드부(2)의 각 중앙 처리 장치 보드(6) 및 메모리 제어 보드(4)는 중앙 처리 장치(CPU)버스를 통해 접속되고, 메모리 제어 보드(4)와 메모리 보드부(3)의 각 메모리 보드(7)는 메모리 버스를 통해 접속된다.
상기에서 메모리 제어 보드(4)는 제3도에 도시된 바와 같이, 중앙 처리 장치 보드부(2)내의 중앙처리 장치 보드(6)들의 각 고유 넘버인 단일 식별자(Identifier : 이하 ID라고 칭함)를 래치하여 저장하고 있는 식별자 제어 논리부(41)와 ; 중앙 처리 장치 보드(6)에서 데이타 요구시 메모리 보드(7)에서 메모리 버스를 통해 전송한 데이타를 CPU 버스를 통해 중앙 처리 장치 보드부(2)의 해당 중앙 처리 장치 보드(6)로 전송하는 출력 데이터 레지스터 파이프(42)와 ; 중앙 처리 장치 보드부(2)의 각 중앙 처리 장치 보드(6)에서 CPU 버스를 통해 전송되는 명령어 대한 연산 코드를 입력 받아 메모리 버스를 이용하여 메모리 보드부(3)내의 메모리 보드(7)와 명령어 분석 및 제어부(44)로 전송하는 연산 코드 레지스터(43)와 ; 상기 연산 코드 레지스터(43)에 저장되는 연산 코드를 분석하여 이에 해당하는 제어 신호(연산 코드 분석 결과 : 명령어 데이타)를 큐 제어부(45)로 출력하는 명령어 분석 및 제어부(44)와 ; 상기 명령어 분석 및 제어부(44)에서 분석된 결과(명령어 데이터)에 의해 대기중인 처리될 명령어의 행렬(Queue)을 제어하여 해당 메모리 보드(7)로 전송하는 큐 제어부(45)와 ; 중앙 처리 장치 보드부(2)의 중앙 처리 장치 보드(6)에서 지정한 리드 라이트 신호(*RD/WR)에 대한 메모리 보드(7)의 어드레스를 중앙 처리 장치로부터 CPU 버스를 통해 입력 받아 메모리 버스를 통해 메모리 보드부(3) 내의 메모리 보드(7)로 전송하는 어드레스 레지스터 파이프(46) 및 ; 중앙 처리 장치 보드부(2)의 중앙 처리 장치 보드(6)에서 메모리에 데이타를 라이트하고자 할 때 중앙 처리 장치로부터 라이트 할 데이타를 입력받아 메모리 버스를 이용하여 메모리 보드(7)로 전송하는 입력 데이타 레이스터(47)를 포함하여 구성된다.
상기에서 메모리 버스를 통한 메모리 보드부(3)내의 각 메모리 보드(7)들과 메모리 제어 보드(4)간에 이루어지는 인터페이스는 메모리 보드(7)내의 메모리 보드 인터페이스 논리부(5)를 통해 이루어진다.
상기 메모리 보드 인터페이스 논리부(5)는 제4도에 도시된 바와 같이, 시스템 클럭 인가시 메모리 제어 보드(4)의 큐 제어부(45)로부터 입력되는 명령어 태그(CMD TAG)를 래치하여 비교기(53)와 리턴 레지스터(52)로 전송하는 래치부(51)와 ; 상기 래치부(51)에 래치된 명령어 태그에 대해 메모리 보드(7)가 준비된 상태일 때 메모리에서 입력되는 준비신호(*READY)에 따라 명령어 태그(CMD TAG)를 메모리 제어 보드(4)내의 큐 제어부(45)로 리턴하는 리턴 레지스터(52)와 ; 상기 래치부(51)에 래치된 명령어 태그(CMD TAG)와, 리턴 레지스터(52)에서 입력되는 신호에 의해 메모리 제어 보드(4)내의 큐 제어부(45)에서 출력되는 응답 태그(RESP TAG)를 비교하여 일치할 경우 송/수신기(54)를 인에이블 시키는 부합신호(*MATCH)를 송/수신기(54)로 입력하는 비교기(53) 및 ; 상기 비교기(53)에서 입력되는 인에이블 신호(부합 신호임)에 의해 메모리 보드(7)에서 출력되는 데이터를 입력 받아 메모리 버스를 이용하여 메모리 제어 보드(4)내의 출력 데이터 레지스터 파이프(42)로 전송하는 송/수신기(54)를 포함하여 구성된다.
상기와 같이 구성된 본 발명의 시스템 상에서 이루어지는 동작 과정을 간략히 설명하면 다음과 같다.
중앙 처리 장치 보드부(2)내의 중앙 처리 장치 부드(6)와 메모리 보드부(3)내의 메모리 보드(7)는 메모리 제어 보드(4)를 통해 N개까지 연결 가능하며, 중앙 처리 장치 보드(6)상에서 전송되는 제어 신호에 의해 메모리 제어 보드(4)내의 명령어 분석 및 제어부(44)와 큐 제어부(45)에서 각 리드 명령어에 명령어 태그 비트를 유일하게 할당하여 메모리 버스를 통해 메모리 보드부(3)로 전송하고, 이때 전송되는 데이타(명령어 태그)는 메모리 보드부(3)의 메모리 보드(7)내의 메모리 보드 인터페이스 논리부(5)로 전송되며, 메모리 보드 인터페이스 논리부(5)의 래치부(51)에서 해당 명령어 태그를 래치하여 리턴 레지스터(52)에 전송하고, 리턴 레지스터(52)에서는 메모리 보드(7)가 명령어에 대한 응답 준비가 완료되면 할당 태그값을 메모리 버스를 이용하여 준비신호(READY)와 함께 메모리 제어 보드(4)의 큐 제어부(45)로 전송한다. 이때, 각 메모리 보드(7)에 대해 명령어 태그 비트값이 유일하게 할당되기 때문에 서로 다른 명령어 태그 비트값을 이용하여 다수의 메모리 보드(7)에 대해 동시에 명령어를 줄 수 있다. 즉, 명령어의 다중 처리가 가능해진다.
상기 메모리 보드 인터페이스 논리부(5)의 리턴 레지스터(52)에서 리턴된 명령어 태그값과 준비 신호(READY)를 입력받은 메모리 제어 보드(4)의 큐 제어부(45)는 상기에 대한 응답 태그(RESP TAG)값을 메모리 보드(3)내의 메모리 보드 인터페이스 논리부(5)의 비교기(53)로 출력하며, 상기 비교기(53)에서 래치부(51)에 기 저장된 명령어 태그값과 메모리 제어 보드(4)의 큐 제어부(45)에서 입력되는 응답 태그값을 비교하여 그 결과가 상호 매칭되는 메모리 보드(7)는 중앙 처리 장치 보드(6)가 요구한 데이타를 데이타 버스를 통해 메모리 보드 인터페이스 논리부(5)의 송/수신기(54)로 전송하고, 상기 메모리 보드 인터페이스 논리부(5)의 송/수신기(54)는 메모리 보드(7)에서 입력되는 중앙 처리 장치 보드(6)가 요구한 데이타를 메모리 버스를 통해 메모리 제어 보드(4)내의 출력 데이타 레지스터 파이프(42)로 전송하며, 이 데이타는 메모리 제어 보드(4) 내의 출력 데이타 레지스터 파이프(42)에서 정렬되고, 상기 출력 데이타 레지스터 파이트(42)에서 정렬된 데이타는 메모리 제어 보드(4)내의 식별자 제어 논리부(41)에 저장되 있던 중앙 처리 장치 식별자(CPU ID)와 함께 CPU 버스를 경유 해당 중앙 처리 장치 보드로 전송되어 동작이 종료된다.
그리고, 상기에서 동작이 완료된 명령어 비트는 다른 중앙 처리 장치 보드(6)의 리드 명령어에 대해 다시 재 사용되며, 이렇게 이루어지므로 인해 메모리 보드부(3)에 명령어 비트 라인 수 만큼 메모리 버스로 명령어를 중첩시켜 전송할 수 있게 되므로써 명령어에 대한 병렬 처리 및 다중 처리(메모리 접근의 중첩)가 가능해진다.
이처럼 실행되는 과정을 제5도 및 제6도에 첨부한 신호 흐름도와 타이밍도를 참조하여 상세히 설명하면 아래와 같다.
전체 시스템에 시스템 클럭 신호(SYSCLK)가 인가되어 시스템이 동작하면, 중앙 처리 장치 보드(6)들은 메모리 제어 보드(4)로 제어 신호를 전송하고, 메모리 제어 보드(4)에서는 중앙 처리 장치 보드(6)들로부터 입력되는 제어 신호에 의해 메모리 보드(7)를 엑세스하기 위해 리드, 라이트 신호(RD/WR)와 어드레스 신호(ADDR[31. . . 0])를 메모리 보드(7)로 전송하며, 이 때, 메모리 제어 보드(4)의 큐 제어부(45)에서 4비트의 명령어 태그(CMD TAG[3. . . 0]를 사용하여 각 명령어마다 1, 2, 4, 8 디지트 라인(DIGIT LINE)을 구동해 메모리 보드(7)의 단일 식별자(UNIQUE ID)를 부여한 명령어 태크 신호(CMD TAG)를 함께 전송한다.
상기에서 명령어 태그(CMD TAG[3. . . 0])는 리드일 경우에만 부여하며, 라이트일 경우에는 부여하지 않는다. 이는 메모리 버스는 펜디드 프로토콜을 사용하기 때문에 어드레스 혹은 데이타 라인상에 유효 데이타(VALTD DATA)가 구동되는 경우에만 버스 사용중 신호(BUSY)가 엑티브(ACTIVE)되고, 메모리 보드(7)에서 해당되는 보드(BOARD)가 이상없이 수신(RECEIVE)한 경우 메모리 버스로 메모리 승인 신호(MEMACK)를 액티브 시키기 때문이며, 이와 같은 메모리 승인 신호(MEMACK)는 어드레스 신호(ADDR[31. . . .0])와, 리드라이트 신호(RD/WR)와, 명령어 태그 신호(CMD TAG) 및, 버스 사용중 신호(BUSY)를 비활성화(DEACTIVE)시키기 때문이다.
여기서 리드 명령어에 대한 메모리 제어 보드(4)와 메모리 보드(7)간 동작 상태를 보면, 중앙 처리 장치 보드(6)에서 메모리 보드(7)로 메모리 제어 보드(4)를 통해 어떠한 데이타의 리드를 요구하면, 상기 리드 하고자 하는 데이타가 저장된 메모리 보드(7)의 어드레스 신호(ADDR[31. . . 0])와, 리드라이트 신호(RD/WR)와, 명령어 태그 신호(CMD TAG) 및 기본적으로 제공되는 신호들이 메모리 보드(7)로 입력된다(제4도 참조).
상기와 같이 입력되는 신호 중 명령어 태그 신호(CMD TAG)는 제5도에 도시된 각 메모리 보드(7)내의 메모리 보드 인터페이스 논리부(5)의 래치부(51)에서 래치된다.
이러한 상태에서 메모리 보드(7)가 중앙 처리 장치의 리드 명령어에 대하여 응답(RESPONSE)할 준비가 완료되면 제6도의 (i)와 같은 준비 신호(READY)와, 상기 메모리 보드 인터페이스 논리부(5)의 래치부(51)에 래치되어 있던 명령어 태그값(제6도의 (e))이 동시에 메모리 제어 보드(4)의 큐 제어부(45)로 전송되는데, 이 때 상기 명령어 태그값을 다시 메모리 제어 보드(4)의 큐 제어부(45)로 리턴하는 역활은 상기 메모리 보드 인터페이스 논리부(5)의 래치부(51) 출력 단자에 연결되어 있는 리턴 레지스터(52)에서 수행되는 것으로, 상기 리턴 레지스터(52)는 메모리 보드(7)가 중앙 처리 장치의 명령어에 대해 응답할 준비가 완료되어 준비 신호(READY)가 엑티브될 때 이 신호(준비 신호)룰 출력 인에이블(OE) 신호로 입력받아 상기 준비 신호(READY)와 함께 래치부(51)에 저장되어 있던 명령어 태그 신호(CMD TAG)를 메모리 제어 보드(4)로 리턴한다.
상기 신호(준비 신호와 리턴된 명령어 태그 신호)를 입력받은 메모리 제어 보드(4)의 큐 제어부(45)는 이에 대해 응답 태그 신호(RESP TAG)를 메모리 보드 인터페이스 논리부(5)내의 비교기(53)로 출력하며, 상기 비교기(53)에서는 상기 메모리 제어 보드(4)의 큐 제어부(45)에서 입력되는 응답 태그(RESP TAG) 신호와, 래치부(51)에 래치되어 있던 명령어 태그(CMD TAG)값을 비교하여 일치하면 부합 신호(MATCH)를 송/수신기(54)로 전송하고, 이 때 비교기(53)에서 송/수신기(54)로 전송되는 부합 신호는 송/수신기(54)의 출력 인에이블(OE)단자로 입력되어 송/수신기(54)의 작동을 인에이블 시키는 인에이블 신호로 사용되며, 상기 인에이블 신호(부합 신호)가 송/수신기(54)의 출력 인에이블 단자에 입력되면 송/수신기(54)는 메모리 보드(7)에서 출력되는 데이타를 데이타 버스를 통해 입력받아 메모리 버스를 통해 메모리 제어 보드(4)내의 출력 레지스터 파이프로 전송하며, 메모리 제어 보드(4)내의 출력 레지스터 파이프에서는 메모리 보드 인터페이스 논리부(5)의 송/수신기(54)에 전송되는 데이타를 메모리 제어 보드(4)내의 식별자 제어 논리부(41)에 저장되어 있던 중앙 처리 장치 식별자와 함께 해당 중앙 처리 장치 보드(6)로 전송하여 데이터의 리드가 완료된다.
중앙 처리 장치에서 메모리에 데이타를 라이트 하고자 할 때는, 상기와 같은 과정에서 메모리 제어 보드(4)의 출력 데이타 레지스터 파이프(42)를 사용하지 않고, 입력 데이타 레지스터 파이프(47)를 사용하여 수행되며, 메모리 보드 인터페이스 논리부(5)내의 송/수신기(54)에서는 메모리 제어 보드(4)내의 입력 데이타 레지스터 파이프(47)로부터 전송되는 데이타를 메모리 보드(7)의 해당 어드레스 영역에 저장하여 데이타의 라이트 동작을 완료한다. 상기와 같은 과정을 통해 데이타의 송/수신이 이루어진다.
참고로, 중앙 처리 장치에서 메모리에 데이타를 라이트 할 경우는 메모리 보드(7) 동작 후(데이타가 메모리에 라이트 된 후) 메모리 보드(7)에서 메모리 제어 보드(4)로, 또한 메모리 제어 보드(4)에서 중앙 처리 장치로 리턴하여 전송되는 신호가 없다.
상기와 같이 이루어지는 본 발명의 동작 과정을 제6도의 타이밍도를 들어 요약해 보면, (a)에 도시된 바와 같은 시스템 클럭(SYSCLK)의 주기에 따라 모든 동작이 이루어지는 것으로, 중앙 처리 장치 보드(6)에서 메모리에 저장된 데이타의 리드를 요구하면, 시스템 클럭에 맞추어(b)의 리드라이트 신호(RD/WR)가 로우 상태로 변화하여 메모리 제어 보드(4)에 리드 상태임을 알려준다. 그러면, 메모리 제어 보드(4)에서는 중앙 처리 장치가 리드 상태임을 인지하고서 상기 (b)의 리드/라이트 신호(RD/WR)와, 이 때의 메모리 보드(7)에 대한 어드레스 신호(c)와, (d)의 명령어 태그 신호(CMD TAG)를 메모리 보드(7)로 출력한다. 이어 메모리 보드(7)에서 중앙 처리 장치의 데이타 리드 요구에 대해 응답할 준비가 완료되면 상기에서 설명한 바와 같이 (i)의 준비 신호(READY)와, (d)의 오른쪽에 위치한 명령어 태그 신호가 (a)의 시스템 클럭에 맞추어 동시에 메모리 제어 보드(4)로 출력되고, 메모리 제어 보드(4)에서는 이에 대한 응답 신호로써 (e)와 같은 응답 태그 신호(RESP TAG)를 메모리 보드(7)로 재 전송한다.
이 때, 상기 명령어 태그 신호(CMD TAG)와 응답 태그 신호(RESP TAG)는 서로 동일한 값을 가진다. 메모리 보드(7)에서는 상기 응답 태그 신호(RESP TAG)를 수신하면 (f)에 도시된 바와 같이 메모리 보드(7)에서 준비 신호(READY)와 명령어 태그 신호(CMD TAG)가 출력되고 난 다음의 시스템 클럭 에지에 맞추어 데이터를 출력한다. 또한, (h)에 도시된 비지 신호(BUSY)는 각 신호가 액티브 상태일때 로우로 액티브되어 현재 동작중임을 알리고, (i)의 메모리 승인 신호(MEMACK)는 메모리 제어 보드(4)에서 출력된 신호를 메모리 보드(7)에서 이상없이 수신(RECEIVE)한 경우 액티브 시켜 메모리 버스로 출력하는 신호로써, 이와 같은 메모리 승인(MEMACK) 신호는 상기에서도 언급한 바와 같이 어드레스 신호(ADDR[31 . . . .0])와, 리드라이트 신호(RD/WR)와, 명령어 태그 신호(CMD TAG) 및, 비지(BUSY) 신호를 비활성화(DEACTIVE) 시킨다.
한편, 데이타 전송 완료 및 비지 신호(BUSY)를 비활성화 시키는 데이타 라이트(WRITE)의 경우는 메모리 보드(7)의 동작 후에 메모리 제어 보드(4)로 리턴(RETURN)되는 어떠한 과정이 없으므로 상기에서도 기술한 바와 같이 명령어를 출력할 때의 명령어 태그 비트는 부여하지 않는다.
이상에서 상세히 설명한 바와 같이 본 발명은, 명령의 병령 충첩 처리를 가능하게 하기 위해 각 리드 명령어에 태그 비트 값을 할당하여, 각 보드가 자신의 번지 영역 내 일 경우에만 명령어에 응답하도록 하므로써, 각 보드의 독립적인 동작에 따른 다중 엑세스를 가능케 해 제품의 처리속도롤 증가시키는 잇점이 있다.
Claims (6)
- 전체 시스템의 동작을 제어, 처리하는 시스템 제어보드(1)와 ; 상기 시스템 제어보드(1)에서 출력되는 제어 신호에 의해 실제 명령어의 수행 및 제어 기능을 담당하는 중앙 처리 장치 보드(6)들로 이루어진 중앙 처리 장치 보드부(2)와 ; 데이타 저장 매체인 메모리 보드(7)들로 이루어진 메모리 보드부(3)와 ; 상기 중앙 처리 장치 보드부(2)에서 출력되는 제어 신호에 의해 메모리 보드부(3)를 제어하는 메모리 제어 보드(4)로 구성되고 ; 상기 메모리 보드부(3)의 각 메모리 보드(7)는 메모리 제어 보드(4)와 메모리 보드(7)간의 인터페이스 기능을 수행하기 위한 메모리 보드 인터페이스 논리부(5)를 포함하여 이루어짐을 특징으로 하는 태그 비트를 사용한 메모리 엑세스 장치.
- 제1항에 있어서, 메모리 제어 보드(4)는, 중앙 처리 장치 보드(2)들의 각 고유 넘버인 단일 식별자(ID)를 래치하는 식별자 제어 논리부(41)와 ; 메모리 버스를 통해 로딩된 데이타를 CPU 버스로 출력하는 출력 데이타 레지스터 파이프(42)와 ; CPU 버스를 통해 입력되는 연산 코드를 저장하여 메모리 버스상으로 출력하는 연산 코드 레지스터(43)와 ; 상기 연산 코드 레지스터(43)에 저장되는 연산 코드를 분석하여 이에 해당하는 제어 신호를 출력하는 명령어 분석 및 제어부(44)와 ; 상기 명령어 분석 및 제어부(44)에서 분석된 명령어 의해 처리될 명령어의 대기 행렬(Queue)을 제어하는 큐 제어부(45)와 ; CPU 버스를 통해 입력되는 리드라이트 신호(RD/WR)에 대한 어드레스를 메모리 버스상으로 전송하는 어드레스 레지스터 파이프(46) 및 ; 데이타 라이트시 라이트 할 데이타를 입력 받아 메모리 버스 상으로 출력하는 입력 데이타 레지스터(47)로 구성됨을 특징으로 하는 태그 비트를 사용한 메모리 엑세스 장치.
- 제1항에 있어서 상기 메모리 보드 인터페이스 논리부(5)는, 시스템 클럭 인가시 큐 제어부(45)로부터 입력되는 명령어 태그(CMD TAG)를 래치하여 비교기(53)와 리턴 레지스터(52)로 전송하는 래치부(51)와 ; 상기 래치부(51)에 래치된 명령어 태그에 대해 해당 메모리 보드(7)가 준비된 상태일 때 메모리에서 입력되는 준비신호(READY)에 따라 명령어 태그(CMD TAG)를 메모리 제어 보드(4)내의 큐 제어부(45)로 리턴하는 리턴 레지스터(52)와 ; 상기 래치부(51)에 래치된 명령어 태그(CMD TAG)와, 리턴 레지스터(52)에서 입력되는 신호에 의해 메모리 제어 보드(4)내의 큐 제어부(45)에서 출력되는 응답 태그(RESP TAG)를 비교하여 일치할 경우 송/수신기(54)를 인에이블 시키는 부합 신호(MATCH)를 송/수신기(54)로 입력하는 비교기(53) 및 ; 상기 비교기(53)에서 입력되는 인에이블 신호(부합 신호임)에 의해 메모리 보드(7)에서 출력되는 데이타를 입력받아 메모리 버스를 이용하여 메모리 제어 보도(4)내의 출력 데이타 레지스터 파이프(42)로 전송하는 송/수신기(54)로 구성됨을 특징으로 하는 태그 비트를 사용한 메모리 엑세스 장치.
- 중·대형 컴퓨터 시스템의 메모리 엑세스 방법에 있어서, 버스 제어 신호로 명령어 태그(CMD TAG) 비트를 설정하고, 상기 설정된 명령어 태그 신호(CMD TAG)비트를 설정하고, 상기 설정된 명령어 태그 신호(CMD TAG)를 이용해 중앙처리 장치 보드(2) 내의 각 중앙처리 장치에서 출력되는 다수의 리드 명령어에 대한 처리를 병렬 처리케 하므로써, 메모리 보드(7)의 다중 엑세스 처리를 구현함을 특징으로 하는 태그 비트를 사용한 메모리 엑세스 방법.
- 제4장에 있어서, 상기 명령어 태그(CMD TAG) 비트를 이용하는 방법은, 메모리 제어 보드(4)의 큐 제어부(45)를 통해 다수의 중앙처리 장치에서 병렬 출력되는 각 리드 명령어에 상기 명령어 태그 신호(CMD TAG)를 부여하여 각각 구분하고 ; 상기 명령어 태그 신호(CMD TAG)를 부여한 다수의 리드 명령어를 동시에 메모리 보드(7)로 전송하며 ; 상기 신호를 입력받은 각 메모리 보드(7)의 메모리 보드 인터페이스 논리부(5)에서는 상기 신호 중 자신의 번지에 속하는 명령어를 판별해 내 그에 대응하는 작업만 처리토록 하므로서, 다중 엑세스를 가능케 함을 특징으로 하는 태그 비트를 사용한 메모리 엑세스 방법.
- 제5항에 있어서, 상기 메모리 보드(7)의 메모리 보드 인터페이스 논리부(5)에서 자신의 번지 내에 속하는 명령어를 판별해 내는 방법은, 메모리 제어 보드(4)에서 입력되는 각 명령어를 메모리 보드 인터페이스 논리부(5)의 래치부(51)에서 래치하여 저장한 후, 명령어에 대한 응답 준비가 완료된 상태를 알리는 준비 신호(READY)와 함께 상기 입력받은 명령어 태그 비트를 메모리 제어 보드(4)의 큐 제어부(45)로 전송하고 ; 상기 신호에 대한 응답으로 메모리 제어 보드(4)의 큐 제어부(45)에서 입력되는 응답 태그 신호(RESP TAG)와 상기 메모리 보드 인터페이스는 논리부(5)의 래치부(51)에 저장된 명령어 태그 신호(CMD TAG)를 메모리 보드 인터페이스 논리부(5)의 비교기(53)에서 비교하여 값이 동일하면 ; 상기 태그 신호에 해당되는 메모리 보드(7)의 어드레스에서 데이타를 리딩하여 출력토록 하는 것을 특징으로 하는 태그 비트를 사용한 메모리 엑세스 방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019930024440A KR0129793B1 (ko) | 1993-11-17 | 1993-11-17 | 태그 비트를 사용한 메모리 엑세스 장치 및 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019930024440A KR0129793B1 (ko) | 1993-11-17 | 1993-11-17 | 태그 비트를 사용한 메모리 엑세스 장치 및 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR950015095A KR950015095A (ko) | 1995-06-16 |
KR0129793B1 true KR0129793B1 (ko) | 1998-04-15 |
Family
ID=19368248
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019930024440A KR0129793B1 (ko) | 1993-11-17 | 1993-11-17 | 태그 비트를 사용한 메모리 엑세스 장치 및 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR0129793B1 (ko) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100354911B1 (ko) * | 2000-06-07 | 2002-10-05 | 주식회사 호남금속 | 반지사이즈 측정기구 |
-
1993
- 1993-11-17 KR KR1019930024440A patent/KR0129793B1/ko not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR950015095A (ko) | 1995-06-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4698746A (en) | Multiprocessor communication method and apparatus | |
US6026464A (en) | Memory control system and method utilizing distributed memory controllers for multibank memory | |
EP0121373B1 (en) | Multilevel controller for a cache memory interface in a multiprocessing system | |
US5485594A (en) | Apparatus and method using an atomic fetch and add for establishing temporary ownership of a common system resource in a multiprocessor data processing system | |
US3996564A (en) | Input/output port control | |
CA2119174C (en) | Fully pipelined and highly concurrent memory controller | |
US4821185A (en) | I/O interface system using plural buffers sized smaller than non-overlapping contiguous computer memory portions dedicated to each buffer | |
US5499346A (en) | Bus-to-bus bridge for a multiple bus information handling system that optimizes data transfers between a system bus and a peripheral bus | |
US4737932A (en) | Processor | |
US5327570A (en) | Multiprocessor system having local write cache within each data processor node | |
US6662253B1 (en) | Shared peripheral architecture | |
US5038275A (en) | Status transfer structure within a data processing system with status read indication | |
US20020052987A1 (en) | Host controller interface descriptor fetching unit | |
JPS62156752A (ja) | 多重プロセツサ計算システム | |
KR0129793B1 (ko) | 태그 비트를 사용한 메모리 엑세스 장치 및 방법 | |
US5408612A (en) | Microprocessor system for selectively accessing a processor internal register when the processor has control of the bus and partial address identifying the register | |
US4885679A (en) | Secure commodity bus | |
US4594658A (en) | Hierarchy of control stores for overlapped data transmission | |
JPH0227696B2 (ja) | Johoshorisochi | |
KR950003877B1 (ko) | 캐쉬 업데이트(Cache Update)장치 및 방법 | |
JPH10283302A (ja) | 複数のプロセッサに接続されたバスにデータを供給する方法およびシステム | |
EP0923031B1 (en) | Method for reading data from a shared memory in a multiprocessor computer system | |
KR0145932B1 (ko) | 고속중형 컴퓨터시스템에 있어서 디엠에이제어기 | |
KR100259585B1 (ko) | 디엠에이 콘트롤러 | |
US5581793A (en) | System for bypassing setup states in a bus operation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
AMND | Amendment | ||
E601 | Decision to refuse application | ||
J2X1 | Appeal (before the patent court) |
Free format text: APPEAL AGAINST DECISION TO DECLINE REFUSAL |
|
B701 | Decision to grant | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20021018 Year of fee payment: 6 |
|
LAPS | Lapse due to unpaid annual fee |