KR920005293B1 - 데이터 처리장치의 메모리 어드레스 할당 방법 및 장치 - Google Patents

데이터 처리장치의 메모리 어드레스 할당 방법 및 장치 Download PDF

Info

Publication number
KR920005293B1
KR920005293B1 KR1019900002367A KR900002367A KR920005293B1 KR 920005293 B1 KR920005293 B1 KR 920005293B1 KR 1019900002367 A KR1019900002367 A KR 1019900002367A KR 900002367 A KR900002367 A KR 900002367A KR 920005293 B1 KR920005293 B1 KR 920005293B1
Authority
KR
South Korea
Prior art keywords
address
memory
memory module
module
ram
Prior art date
Application number
KR1019900002367A
Other languages
English (en)
Other versions
KR900014988A (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 KR900014988A publication Critical patent/KR900014988A/ko
Application granted granted Critical
Publication of KR920005293B1 publication Critical patent/KR920005293B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Memory System (AREA)

Abstract

내용 없음.

Description

데이터 처리장치의 메모리 어드레스 할당 방법 및 장치
제1도는 본 발명의 일실시예를 나타낸 블럭도.
제2도는 제1도에 제어 모듈의 구체예를 나타낸 블럭도.
제3도는 물리 어드레스의 형식을 나타낸 도.
제4도는 제2도의 제어 레지스터에 세트되는 데이터의 서식을 나타낸 도.
제5도는 제1도의 모듈 선택 회로가 상태 설정회로의 구체예를 나타낸 블럭도.
제6도는 모듈 선택 회로와 상태 설정회로의 다른 구체예를 나타낸 블럭도.
제7도는 본 발명의 메모리 어드레스의 할당 방법의 일실시예를 나타낸 플로우챠트.
제8도는 제7도의 스탭 3의 상세를 나타낸 플로우 챠트.
제9도는 메모리 어드레스의 할당 처리를 설명하는 플로우챠트.
제10도는 메모리 어드레스의 할당 처리의 다른예를 설명하는 플로우챠트.
제11도는 본 발명의 다른 실시예를 나타낸 블럭도이다.
* 도면의 주요부분에 대한 부호의 설명
1 : 중앙처리장치 2 : 메모리 장치
3 : 제어 모듈 4 : 메모리 모듈
5 : 모듈 선택 6 : 상태 설정회로
7 : RAM 열 선택회로 8 : RAM 유닛
9 : 어드레스선 10 : 데이터선
13 : 어드레스선 14 : 데이터선
15 : 제어선 16 : 레지스터
22 : 라이트 데이터 레지스터 23 : 리이드 데이터 레지스터
24 : 책트 비트 생성회로 26 : 디코더
본 발명은 데이터 처리장치의 메모리 어드레스 할당 방법 및 장치에 관한 것이다.
데이터 처리장치에 있어서는, 처리장치에 메모리 장치가 접속된다. 메모리장치는 복수의 모듈을 포함하고, 각 메모리 모듈에 어드레스 0으로부터 순차적으로 어드레스가 할당된다. 메모리 장치는 메모리 모듈을 증설함으로써 메모리 용량을 증가할 수가 있고, 또 고장난 메모리 모듈을 제거하여 처리를 속행할 수가 있다. 이와같이, 메모리 모듈의 구성을 변경했을 경우, 메모리 어드레스의 할당을 행할 필요가 있다. 또, 메모리 모듈은 복수의 RAM 유닛을 포함하고, 각각 다른 기억 용량으로 할 수가 있어, 어드레스의 할당은, 이 각 메모리 모듈의 기억 용량에 따라 행할 필요가 있다.
일본국 특허공개소 63-10655호는 각 메모리 모듈에 기억 용량에 관한 정보를 유지해두고, 이것을 독출하여 각 메모리 모듈에 어드레스를 할당하는 방법을 개시하고 있다. 이 방법은, 미리 각 메모리 모듈의 기억 용량을 조사하여, 각 메모리 모듈에 유지해둘 필요가 있다.
일본국 특허 공개소 63-86050호는, 그 종래 기술로서, 시스템 기동시에 현실적으로 실장되고 있는 메모리의 전용량을 검출하는 방법을 개시하고 있다. 이 메모리 용량의 검출은, 중앙처리장치에 의한 각 메모리 보우드에의 기입/독출을 행한다. 즉 특정의 검사용 패턴 데이터를 메모리에 기입하고, 이것을 즉시 독출하여 기입 데이터와 독출 데이터를 비교하는 작업은, 메모리 보오드이 최소증설 단위별로 행하고, 양 데이터가 불일치가 된 어드레스 값으로부터 1을 뺀 어드레스가 최대 어드레스가 된다. 상기 특개소 63-86050호는 종래 기술로서 메모리의 전용량의 검출 방법을 개시하고, 각 메모리 보오드의 용량의 검출은 개시하고 있지 않다.
본 발명의 목적은 적어도 1개의 RAM유닛을 포함하는 복수이 메모리 모듈을 가지는 메모리에 자동적으로 어드레스 할당을 행하는 방법 및 장치를 제공하는데 있다.
본 발명은, 각각 적어도 1개의 RAM유닛을 포함하는 복수의 메모리 모듈로 이루어진 메모리의 어드레스 할당 방법으로서, 복수의 메모리 모듈의 하나를 지정하고, 이 메모리 모듈내의 RAM 유닛을 순차 억세스하여, 하나의 메모리 모듈의 실장(實裝)용량을 구한다. 이 처리를 모든 메모리 모듈에 대하여 행하고 이 구해진 각 메모리 모듈의 실장 용량에 의거하여 각 메모리 모듈에 어드레스를 할당한다.
또, 메모리 어드레스 할당 장치는, 처리장치와 메모리 모듈과의 사이에 제어 모듈을 갖는다. 제어 모듈은 메모리 모듈의 RAM 유닛의 하나와 억세스 모드를 지정하는 제어 레지스터와, 모드 지정에 따라 제어 레지스터가 보존 유지하는 메모리 모듈 및 RAM 유닛, 유닛 어드레스를 메모리 모듈에 가하는 수단을 갖는다. 그리고 처리장치는 제어 레지스터에 데이터를 세트하고, 각 메모리 모듈의 실장 용량을 구하고, 어드레스를 할당한다.
본 발명의 일실시예를 도면을 참조하여 상세히 설명한다.
제1도는 본 발명의 일실시예를 설명하는 데이터 처리장치를 나타낸다. 중앙처리장치(1)는 메모리장치(2)와 어드레스선(13), 데이터선(14) 및 제어선(15)를 개재시켜 접속되어 있다. 메모리장치(2)는 제어모듈(3)과 복수의 메모리 모듈(4)로 구성되고, 제어모듈(3)이 중앙처리장치(1)에 접속되고, 복수의 메모리 모듈(4)은 제어모듈(3)에 접속된다. 제어모듈(3)과 복수의 메모리 모듈(4)은 어드레스선(9), 데이터선(10), 모듈선택 강제 신호선(11) 및 어드레스 할당 신호선(12)을 거쳐 접속되어 있다. 어드레스선(9), 데이터선(10) 및 어드레스 할당 신호선(12)은 복수의 메모리 모듈(4)에 공통이고, 모듈 선택 강제 신호선(11)은 각 메모리 모듈 개별로 접속되어 있다.
메모리 모듈(4)은 모듈 선택회로(5), 상태 설정회로(6), RAM열 선택회로(7) 및 복수의 RAM 유닛(8)으로 구성되어 있다. 각 메모리 모듈(4)은 적어도 1개의 RAM 유닛(8)을 포함하고, 이 RAM 유닛(8)을 단위로 하여 중감 가능하고, 각각 다른 수이더라도 좋다. 상태 설정회로(6)는 이 메모리 모듈에 할당된 모듈 어드레스를 유지한다. 모듈 선택회로(5)는 어드레스선(9)을 거쳐 부여되는 모듈 어드레스와 상태 설정회로(6)에 유지된 모듈 어드레스를 비교하여, 자기 메모리 모듈이 지정되고 있는가를 검출하고, 지정되고 있으며, RAM 열 선택회로(7)를 구동한다. RAM열 선택회로(7)는 어드레스선(9)상의 RAM 열 어드레스를 디코드하여, RAM 유닛(8)의 하나를 구동한다.
제2도는 제어 모듈(3)의 구체예를 나타낸다. 어드레스선(13)은 게이트(21)를 거쳐 어드레스선(9)이 된다. 제3도는 통상의 R/W(Read/Write)모드시에 중앙처리장치(1)로부터 어드레스선(13)에 가해지는 물리(physical)어드레스 서식을 나타내고, 물리 어드레스는 메모리 모듈(4)을 나타내는 모듈 어드레스, 메모리 모듈내의 RAM 내의 유닛(8)을 나타내는 RAM 열 어드레스, 및 RAM 내의 어드레스를 나타내는 RAM 어드레스로 이루어진다.
데이터선(14) 및 (10)은 기록.데이터.레지스터(write data registor)(22), 리드·데이터 레지스터(read data registor)(23)가 접속되고, 중앙처리장치(1)로 메모리에의 기록.데이터는 데이터선(14), 기록.데이터.레지스터(22), 데이터선(10)을 거쳐 메모리에 가해진다. 기록.데이터.레지스터(22)에 세트된 데이터는 체커(checker)(22a)에서 에러 체크가 행해지고, 또 기록 데이터에는 첵크비트 생성회로(check bit generation circuit)(24)에서 발생된 첵크비트가 부가된다. 또, 메모리로 부터 중앙처리장치(1)에의 리드.데이터는 데이터선(10), 리드데이터 레지스터(23) 및 데이터선(14)을 거쳐 전송된다. 리드 데이터 레지스터(23)에 세트된 데이터는 체커(23a)에서 에러 체커가 행해지고, 다시 리드 데이터에는 체크비트 생성회로(25)에서 생성된 체크비트가 부가된다.
제어 레지스터(16)는 중앙처리장치(1)의 마이크로 프로그램이 제어선(15)을 "1"로하여 데이터선(14)을 거쳐 제 4 도에 나타낸 서식의 데이터가 세트된다. 제4도에 나타낸 바와 같이, 제어 레지스터(4)는 모듈 어드레스 지정 필드(31), RAM열 지정필드(32), 상태설정모드필드(33) 및 RAM열 강제 억세스 모드 필드(34)로 이루어진다. 통상의 R/W 모드시, RAM열 강제 억세스 모드 필드(34)에는 "0"이 세트되고, 이 경우 게이트(21)는 어드레스선(13)상의 어드레스를 선택하여 어드레스선(9)에 통과시킨다. 또한 디코더(26)를 가세 시키지 않는다. 즉, 필드(34)가 "0"일 때, 필드(31∼33)에는 유효한 데이터가 격납되지 않고, 중앙처리장치(1)로부터 어드레스선(13)에 출력되는 메모리 어드레스에 따라, 통상의 메모리 R/W 동작을 행한다.
RAM열 강제 억세스 모드(34)가 "1"일 때, 다이렉트 모드를 나타내고, 디코더(26)가 가세되어, 모듈 어드레스 지정 필드(31)의 모듈 어드레스를 디코드하고, 모듈 선택 강제 신호선(11)의 하나를 "1"로 한다. 선(11)의 각각은 각각 다른 메모리 모듈(4)에 접속되어있다. 필드(34)가 "1"일 때, 다시 게이트(21)는 RAM열 지정필드(32)의 RAM열 어드레스를 선택하고, 어드레스선(9)에 출력한다.
상태 설정 모드 필드(33)는 어드레스 할당 신호선(12)에 신호를 출력하고, 다음과 같이 설정 모드를 나타낸다. "0"일 때, 실장 어드레스를 구하는 모드이고, "1"일 때, 어드레스 할당을 행하는 모드를 나타낸다.
제5도는 메모리 모듈내의 모듈 선택회로(5) 및 상태 설정 회로(6)의 구체예를 나타낸다. 통상의 R/W모드시, 레지스터(51)에는 이 메모리 모듈에 할당되어 있는 모듈 어드레스가 세트되어 있고, 비교회로(53)에서 어드레스선(9)상의 모듈 어드레스와 비교된다. 양 어드레스가 일치하면, 비교회로(53)는 일치 신호를 출력하고, AND게이트(57), OR게이트(58)을 거쳐 RAM열 선택회로(7)에, 모듈 선택 신호를 출력한다. 다이렉트 모드(제2도 및 제4도의 필드(4)가 "1")때, 또 실장 어드레스를 구하는 모드(필드(33)이 "0")때, 어드레스 할당신호(12)는 "0"이므로, 모듈 선택 강제신호(11)가 "1"이면, AND게이트(56)가 가세되어, RAM열 선택회로(7)에 모듈 선택 신호를 출력한다. 54 및 55는 인버터이다. 다이렉트 모드이고 또 어드레스 할당 모드(필드(33)가 "1"), 어드레스 할당신호(12)가 "1"이고, 모듈 선택 강제신호(11)가 "1"이면, AND게이트(52)가 가세되어, 데이터선(10)상에 가해져 있는 데이터(할당 어드레스)가 레지스터에 세트된다.
제6도는 모듈 선택회로(5) 및 상태 설정회로(6)의 다른 구체예를 나타낸다. 제6도의 예는 모듈 선택을 대소 비교로 행하는 예로서, 상태설정 회로(6)에 이 모듈의 상한 및 하한 어드레스가 세트되는 하한 어드레스 레지스터(61) 및 상한 어드레스 레지스터(62)를 가지고, 대소 비교회로(63, 64)에 가해진다. 비교회로(63)는 A"≥L때에 "1"을 출력하고, 비교회로(64)는 A<L때에 "1"을 출력한다. 양 비교회로(63, 64)의 출력이 "1"이면, AND게이트(65, 57), OR게이트(58)를 거쳐 모듈 선택신호가 RAM열 선택회로(7)에 가해진다. 다른 동작은 제5도와 동일하다.
다음에, 다이렉트 모드에 있어서의 동작에 관하여 설명한다. 중앙처리장치(1)는, 그 마이크로 프로그램에 의하여 제7도에 나타낸 플로우챠트에 따라, 메모리장치(1)의 어드레스 할당을 행한다. 제7도에 나타낸 바와 같이, 전원 투입후(스텝 S1), 마이크로 프로그램은 중앙처리장치(1)의 내부의 자기 진단을 행하여 정상 종료된 경우(스텝 S2), 다이렉트 모드에 의한 각 메모리 모듈 실장 어드레스를 구하는 처리가 행해진다.(스텝 S3).
스탭(S3)에 있어서의 실장 어드레스를 구하는 처리는, 제8도에 나타낸 플로우 챠트에 따라 행해진다. 제8도는 상기한 다이렉트 모드에 의한 각 메모리 모듈 실장 어드레스를 구하는 처리를 나타내는 플로우챠트이다. 제8도에 나타낸 바와 같이, 먼저 마이크로 프로그램은 다이렉트 모드로 세트되고, 제4도에 나타낸 서식의 데이터가 제어 모듈(3)내의 제어 레지스터(16)에 세트된다(스텝 S501, S502). 제4도에 있어서, 모듈 어드레스 지정부(31)는, 실장 어드레스를 구하는 동작을 개시하는 메모리장치(2)내의 모듈을 지정하는 것으로, 통상 i=0이 세트된다. 또, RAM열 지정부(32)는, i번째의 메모리 모듈에 있어서, 실장 어드레스를 구하는 동작을 개시하는 RAM을 지정하는 것으로, 통상 j=0가 세트된다. 다시, 제4도에 있어서, 상태 설정 모드부(33)는 어드레스 할당을 행하는지 또는 실장 어드레스를 구하는 동작을 행하는가를 세트하는 영역이고, 이 경우에는 실장 어드레스를 구하는 것을 나타내는 "0"이 세트된다. 또, RAM열 강제 억세스 모드부(34)는, 통상의 R/W 모드가 다이렉트 모드 인가를 나타내는 것으로, 이 경우에 다이렉트 모드를 나타내는 "1"이 세트된다. 제1도에 있어서, 중앙처리장치(1)는, 제어선(15)을 거쳐 필요한 데이터를 제어 모듈(3)에 보내어, 상기한 제8도에 나타낸 각 데이터를 제어 레지스터(16)에 세트한다.
다음에, i번째의 메모리 모듈내의 j번째의 RAM에 대하여, 기억용량을 구하는 처리를 행한다(스탭 S503). 이 동작은, 다음과 같이 행해진다. 즉, 제어모듈(3)은, 제 i번째의 메모리 모듈을 강제적으로 동작 가능하게 하는 신호를 라인(11)에 출력하고, 다시 j번째의 RAM유닛을 선택하는 필드(32)의 어드레스와 중앙처리장치(1)로 부터의 RAM 어드레스를 어드레스선(9)에 출력한다. 이에 의하여 지정된 제 i번째의 메모리 모듈(4)의 제 j번째의 RAM유닛(8)이 중앙처리장치가 지정한 RAM 어드레스로 억세스하면 된다.
이와 같이 하여 마이크로 프로그램은 억세스되는 RAM(8)의 선두 어드레스에, R/W를 행하고, 기록데이터와 리드 데이터를 중앙처리장치에서 비교 체크한다. 비교체크의 결과, 정상이라고 판정된 경우에는, RAM(8)의 기본용량을 L라하면, L×b(b=1,2,3,....) 어드레스 마다에 순차 R/W하고, 비교체크를 행한다. 여기서 기본용량 L은, 예를들면 RAM(8)이 복수의 칩으로 구성되어 있는 경우, 1칩의 용량으로 해도 좋다. 마이크로 프로그램이 비교체크의 결과, 이상이라고 판정될때까지, 상기 R/W처리를 행하고, 최후에 정상이라고 판정된 어드레스에 의하여 RAM(8)의 기억 용량을 구한다. 다음에, 최초의 비교체크의 결과, 이상이라고 판정됐을 경우에는 미(未)실장으로 판정하고, RAM 실장용량이 구해진 경우에는, 실장완료로 판정한다(스탭 S504). 실장완료로 판정한 경우에는 j의 값을 +1하여 갱신하고(스탭 S505), 다시 스탭(S503)으로 되돌아가서, j번째의 메모리 모듈내의 다음의 RAM에 대하여 RAM용량을 구하는 처리를 행한다. j의 값을 갱신할 때, 제어 레지스터(16)의 재 세트를 행한다.
상기의 처리는, 스탭(S504)에서 미실장으로 판정될때까지 반복 실행된다. 스탭(S504)에서 미실장으로 판정됐을 경우, j가 "0"인가의 여부가 판정된다(스탭 S506)에서 YES로 판정됐을 경우에는, i번째의 메모리 모듈이 미실장이라는 뜻의 정보를 중앙처리장치(1)의 워크 영역에 격납한다(스탭 S507). 또 NO라고 판정됐을 경우에는, i번째의 메모리 모듈의 실장 용량을 중앙처리장치(1)의 워크 영역에 격납한다(스탭 S508).
다음에, i의 값을 갱신하여(스탭 S509), i의 값이 최종치가 될 때까지, 즉 모든 메모리 모듈의 실장 용량이 구해질때까지(스탭 S510), 스탭(S503) 내지 스탭(S510)의 처리를 반복한다.
다음에, 제7도의 스탭(S4)으로 되돌아가서, 메모리 모듈에 어드레스를 할당하는 처리를 행한다. 어드레스 할당 처리는 메모리 모듈을 선택하는 구성에 의하여 다르나, 먼저 제5도에 나타낸 구성의 경우에 대하여 제9도의 플로우 챠트에 따라 설명한다. 이 어드레스 할당의 처리에서는, 제4도의 상태 설정 모드필드(33)는 "1"로 세트된다. 제9도의 처리에서는, 실장 용량이 큰 메모리 모듈로부터 순차적으로 어드레스를 할당한다.
제9도의 스탭(S601)에서, 먼저 실장 용량을 비교하는 2개의 메모리 모듈을 나타내는 번호 i, I가 각각 초기치"0"와 "1"로 세트되고, 다시 i번째의 메모리 모듈의 어드레스에 대응하는 값(K)을 초기치 "0"으로 세트한다. 또, 스탭(S601)에서, RAM(8)의 기본용량(L)을 세트하고, 변수(m)를 초기치 "0"으로 세트한다. 여기서 m은 i번째의 메모리 모듈의 실장 용량을 기본용량(L)으로 나눈 값이고, 해당 메모리 모듈의 실장용량이 기본 용량(L)의 m배인 것을, 즉, RAM유닛을 m개 포함한는 것을 나타내는 값이다. 또, 상기 어드레스에 대응하는 값(K)은, 어드레스를 기본용량(L)을 단위로하여 나타낸 수이다. 또 스탭(S601)에 있어서, 값(n)이 초기치 "0"으로 세트된다. 여기서 변수(n)는, 해당 메모리 모듈이 실장 완료인지 미실장인지를 나타내는 값이고, "0"은 미실장을 나타내고, "1"은 실장 완료를 나타낸다.
다음에, i번째의 메모리 모듈의 실장요량(i)이 중앙처리장치(1)의 워크 메모리로부터 독출되고(스탭 S602), 실장용량(i)이 0인지 여부가 판정된다(스탭S603). (i)(I)는 메모리 모듈 i, I의 실장 용량을 의미한다.
스탭(S603)에서, 실장용량이 0이 아니라고 판정됐을 경우에는, I번째의 메모리 모듈이 실장용량(I)이 중앙처리장치(1)의 워크 메모리로 부터 독출되어 (스탭 S604), 실장용량(i)과 실장용량(I)의 대소가 비교된다(스탭 S605). 스탭(S605)에서, 실장용량(i)과 실장용량(I)의 대소가 비교된다(스탭 S605), 스탭(S605)에서, 실장용량 (I)이 실장용량(i) 보다 크다고 판정됐을 경우에는 i가 I로 치환되고(스탭 S607), 그후 스탭(S606)으로 진행한다. 스탭(S605)에서, 실장용량(i)이 실장용량(I)보다 크다고 판정됐을 경우에는, 즉시 스탭(S606)으로 진행하여, I의 값이 갱신된다. 상기한 스탭(S605, S606, S607)의 처리에 의하여, 실장 용량(i)은 실장용량이 큰 쪽의 값으로 세트된다. 다음에, I의 값이 최종치에 1을 가산한 값인지 여부가 판정되고(스탭 S608), 최종치가 아니라고 판정됐을 경우에는, 스탭(S602)로 되돌아가서, 상기한 스탭(S602) 내지 스탭(S608)의 처리가 반복된다.
스탭(S608)에서, I의 값이 최종치에 1을 가산한 값이라고 판정됐을 경우에는, i번째의 메모리 모듈(실장용량이 최대인 메모리 모듈)의 실장용량을 기본용량(L)으로 나누어, 값(m)을 구한다(스탭 S609). 다음에, i번째의 메모리 모듈의 상태 설정회로(6)(제1도 참조)에 값 K를 세트하고, i번째의 메모리 모듈의 실장용량(m×L)에 대하여 어드레스 할당을 행한다(스탭 S610, S611). 이 동작은 다음과 같이 행해진다. 즉 마이크로 프로그램이 제어 레지스터(16)의 모듈 어드레스부에 값(i), 상태설정모드(33)에 "1", RAM열 강제억세스모드 "1"를 세트한다. 그후, 값(K)을 데이터선(14)에 출력하면, 제어모듈(3)은, 제 i번째의 메모리 모듈을 강제적으로 동작 가능하게 하는 신호를 라인(11)에 출력하고, 다시 어드레스 할당 제어신호(12)를 출력함과 동시에, 데이터선(1)에 값(K)을 출력한다. 이에 의하여 지정된 메모리 모듈(4)의 상태설정회로(6)에 값(K)이 세트된다.
다음에, i번째의 메모리 모듈의 실장용량(i)을 0으로 세트하고(스탭 S612). 다시 값(i)를 "0", 값(I)를 "1", 값(n)을 "1"로 세트하고(스탭 S613), 스탭(S602)으로 되돌아간다. 어드레스 할당이 행해진 메모리 모듈의 실장 용량이 0으로 세트됨으로서, 스탭(S602) 이후의 처리에서 최대 실장용량의 메모리 모듈을 구하면, 제2번째에 실장 용량이 큰 메모리 모듈이 구해지고, 그 메모리 모듈에 어드레스 할당이 행해진다.
다음에, 스탭(S603)에 있어서, 메모리 모듈(i)의 실장 용량(i)이 "0"으로 판정된 경우에 대하여 설명한다. 이 경우에는, 스탭(S614)에서 i와 j의 값이 갱신되고, 스탭(S615)에서 I의 값이 최종치에 1을 가산한 값인가의 여부가 판정된다. I의 값이 최종치에 1을 가산한 값이 아니라고 판정됐을 경우에는, 모드 메모리 모듈에 대하여 처리가 종료되어었지 않기 때문에, 프로그램은 스탭(S602)으로 되돌아간다. I의 값이 최종치에 1을 가산한 값으로 판정됐을 경우에는, 값(n)이 0인지 여부가 판정된다(스탭 S616), 값(n)이 0이라고 판정됐을 경우에는, 해당 메모리 모듈이 미실장임을 의미하기 때문에, 에러 처리되고, 값이(n)이 1로 됐을 경우에는, 처리를 종료한다.
메모리 모듈을 선택하는 수단이, 대소 비교에 의한 경우의 어드레스 할당 처리의 제10도에 나타낸 플로우챠트에 따라 설명한다.
이 수단에 의한 경우는, 일치 비교에 의한 경우와는 달리, 실장되는 있는 순번으로 어드레스 할당을 행한다.
제10도의 스탭(S1001)에 있어서, 먼저 메모리 모듈의 번호(i)가 초기치 "0"으로 세트되도, 다시 i번째의 메모리 모듈의 하한 레지스터와 상한 레지스터에 설정하는 값 K와 h를 초기치 "0"으로 세트한다. 또 제9도의 스탭(S601)과 마찬가지로 L, m, n이 세트된다. 다음에 제9도의 스탭(S602, S603)과 같이 제10도의 스탭(S1002, S1003)이 실행된다.
스탭(S1003)에 있어서, 실장용량이 0이 아니라고 판정됐을 경우에는, i번째의 메모리 모듈의 실장용량을 기본용량(L)으로 나누어 값을(m)을 구하고(스탭 S1004), RM 값(m)으로부터, 상한 레지스터에 세트하는 값(h)을 구한다(스탭 S1005).
다음에 i번째의 메모리 모듈의 실장용량(mxL)에 대하여 어드레스 할당을 행한다(스탭 S1006). 이 동작은 제9도의 스탭(S610)의 동작에서 설명한 경우와 동일한 동작을 행한다. 이 동작은 2회 실행되며, 1회째는, 데이터선(10)에 값(h)을 출력하면, 상태설정회로(6)의 하한 어드레스 레지스터(91)에 값(h)이 세트된다. 다시 2회째의 동작에서 데이터선(10)에 값(k)을 출력하면 상태 설정회로(6)의 하한 어드레스 레지스터(91)에 값(k)이 설정됨과 동시에, 상한 어드레스 레지스터(92)에 값(h)이 세트된다.
다음에 값 k, 값i 를 갱신한 후(스탭 S1007, S1008), 값 n을 "1"로 세트하여(스탭 S1009), 스탭(S1002)으로 되돌아간다. 스탭(S1003)에서, 메모리 모듈(i)의 실장용량(i)이 "0"으로 판정됐을 경우의 처리는, 제9도의 스탭(S614) 내지 스탭(S616)과 동일하게 스탭(S1010)에서 스탭(S1012)이 행해진다. 단, 대소 비교를 하지 않기 때문에, I의 값은 사용하지 않고, 종료 판정도 i의 값에 의하는 것이 다르다.
어드레스 할당 처리가 종료된 후, 제어 레지스터(16)의 RAM열 강제 억세스 모드(34)의 비용을 "0"으로 세트하여, 다이렉트 강제 억세스 모드로 부터 통상 모드로 변경하고, 제7도에 나타낸 스탭(S5)의 처리를 행한다. 스탭(S5)에 있어서는, 어드래스 할당된 모든 메모리 모듈의 모든 RAM유닛에 대하여, R/W처리를 행하고, 다음에 기록 데이터와 리드 데이터를 비교하여, 메모리 장치(2)가 정상으로 동작하는지 여부를 확인한다. 스탭(S6)에 있어서, 에러가 검출되지 않했을 경우에는, 초기 프로그램 로드로 진행하고, 에러가 검출됐을 경우에는, 이상 내용을 로깅(logging)하고, 그 메모리 모듈을 미실장으로 취급하여 다시 메모리 어드레스의 할당을 행하여 스탭(S4)부터 다시 실행함으로서 축퇴(degeneracy)운용을 행한다.
제11도는, 메모리 장치의 다른예를 나타낸 블럭도이다. 제1도와 다른점은, 제어 모듈(3a)과 메모리 모듈(4a)의 구성 요소에 있다. 즉, 메모리 모듈(4a)의 구성을 RAM유닛(8)만으로하고, RAM(8)의 선택은, 모두 제어모듈(3a) 내의 RAM열 선택회로(17)가 RAM열 선택된(18)을 거쳐 행한다. 여기서, 유의할 점은, 각 메모리 모듈(4a)의 RAM용량과 RAM(8)의 수가, 각각 다르더라도 좋다는 것이다. 제1도의 예에서 모듈선택회로(5)가 없어졌다는 것 이외는, 기본적인 동작은 동일하다. 본예는, 메모리 모듈의 물량을 감소시키는 경우에 유리하다. 본 발명에 의하면, 전원 투입시에 메모리 모듈의 어드레스 할당을 행할수가 있으므로, 메모리 구성이 다르더러도 사람의 손을 거쳐 설정할 필요가 없다. 또 고장 검출시에도 축퇴시켜 운용할 수 있는 효과가 있다.

Claims (6)

  1. 복수의 모듈로 이루어지고, 상기 복수의 메모리 모듈(4)의 각각은 적어도 1개의 RAM유닛(8)을 포함하고, 상기 복수의 메모리 모듈의 하나를 지정하고, 그 메모리 모듈내의 상기 RAM우닛을 순차 억세스하고, 그 메모리 모듈의 실장 용량을 구하는 제1스탭과, 상기 제1의 스탭을 모든 메모리 모듈에 대하여 행하는 제2의 스탭과, 상기 제1 및 제2의 스탭에서 구해진 각 메모리 모듈의 실장 용량에 의거하여, 상기 각 메모리 모듈에 어드레스를 할당하는 제3의 스탭으로 이루어진 메모리의 어드레스 할당방법.
  2. 제1항에 있어서, 상기 제1의 스탭은 전원 투입에 응답하여 실행되는 메모리 어드레스 할당방법.
  3. 제1항에 있어서, 상기 제1의 스탭은, 지정된 1개의 메모리 모듈의 하나의 RAM유닛의 특정의 어드레스에 지정된 데이터를 기입하는 제4의 스텝과, 상기 제4의 스탭에서 기입된 어드레스와 동일 어드레스로 부터 데이터를 독출하는 제5의 스탭과, 제4의 스탭에서 기입한 상기 데이터와 제5의 스탭에서 독출한 상기 데이터를 비교하여 일치 여부를 판정하는 제6의 스탭과, 상기 제6의 스탭에서의 일치에 따라 동일 메모리 모듈 내의 다른 RAM유닛에 대하여 제4 내지 제6스탭을 반복하는 제7의 스탭과 상기 제6의 스탭에서의 불일치에 따라, 그 메모리 모듈의 실장 용량을 결정하고, 다른 메모리 모듈에 대하여 제4 내지 제6의 스탭을 반복하는 제8의 스탭으로 이루어진 메모리 어드레스 할당방법.
  4. 제1항에 있어서, 상기 제3의 스탭과, 상기 제1 및 제2 스탭에서 구해진 각 메모리 모듈의 실장용량에 의거하여 최대의 실장용량을 가지는 메모리 모듈 부터 순차적으로 어드레스를 할당하는 스탭으로 이루어진 메모리 어드레스 할당방법.
  5. 제1항에 있어서, 상기 복수의 메모리 모듈의 각각은 레지스터(6)를 포함하고, 상기 제3의 스탭은 상기 복수의 메모리 모듈의 각각에 할당된 어드레스를 상기 레지스터(6)에 세트하는 스탭을 포함하는 메모리 어드레스 할당방법.
  6. 처리장치와, 복수의 메모리 모듈의 각각은 적어도 1개의 RAM유닛(8)을 포함하는 복수의 메모리 모듈(4)과, 상기 처리장치와 상기 복수의 메모리 모듈과의 사이에 접속된 제어모듈(3)은, 상기 처리장치와 상기 복수의 메모리 모듈과의 사이에서 어드레스 및 독출/기입 데이터를 전송하는 수단 어드레스 및 독출/기입 데이터를 전송하는 수단(9, 10, 11, 13, 14)과, 1개의 모듈의 1개의 RAM유닛을 지정하는 제1의 필드와 억세스 모드를 지정하는 제2의 필드를 갖는 제어레지스터(16)와, 상기 제2의 필드가 지정하는 모드에 따라 상기 제1의 필드의 내용을 상기 어드레스 대신 메모리 모듈에 가하는 수단을 포함하고 상기 처리장치는 상기 제어 레지스터에 데이터를 세트하고, 상기 메모리 모듈의 실장용량을 구하고, 각 메모리 모듈에 어드레스를 할당하는 수단을 포함하는 것으로 이루어진 메모리 어드레스 할당장치.
KR1019900002367A 1989-03-20 1990-02-24 데이터 처리장치의 메모리 어드레스 할당 방법 및 장치 KR920005293B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP89-66307 1989-03-20
JP6630789 1989-03-20

Publications (2)

Publication Number Publication Date
KR900014988A KR900014988A (ko) 1990-10-25
KR920005293B1 true KR920005293B1 (ko) 1992-06-29

Family

ID=13312026

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019900002367A KR920005293B1 (ko) 1989-03-20 1990-02-24 데이터 처리장치의 메모리 어드레스 할당 방법 및 장치

Country Status (1)

Country Link
KR (1) KR920005293B1 (ko)

Also Published As

Publication number Publication date
KR900014988A (ko) 1990-10-25

Similar Documents

Publication Publication Date Title
US4051460A (en) Apparatus for accessing an information storage device having defective memory cells
US4191996A (en) Self-configurable computer and memory system
US4527251A (en) Remap method and apparatus for a memory system which uses partially good memory devices
EP0108346A2 (en) Memory reconfiguration method in a data processing system
JPH0668700A (ja) 半導体メモリ装置
EP0136178A2 (en) Automatic memory board reconfiguration
US5003506A (en) Memory capacity detection apparatus and electronic applied measuring device employing the same
US3887901A (en) Longitudinal parity generator for mainframe memories
US4296467A (en) Rotating chip selection technique and apparatus
EP0471532A2 (en) Method for determining the size of a memory
JPH01137349A (ja) 記憶アドレス変換システム
US4639915A (en) High speed redundancy processor
EP0669621A1 (en) Method and apparatus for controlling dynamic random acces memory devices
US4167778A (en) Invalid instruction code detector
KR920005293B1 (ko) 데이터 처리장치의 메모리 어드레스 할당 방법 및 장치
US6370594B1 (en) Method for testing data pins of a parallel communication port
US4513400A (en) Circuit for reading out address data applied to a memory in a one-chip microcomputer
JPH061445B2 (ja) マイクロコンピュータにおけるチェックサム回路
JPH0315955A (ja) メモリのアドレス割付方法及び装置
JPH05342113A (ja) 組み込み型システムのramの故障検出方法
JPS585681A (ja) 半導体メモリ試験装置
KR970029894A (ko) 가변 스텝 어드레스 발생기에 대한 장치 및 방법
SU936035A1 (ru) Резервированное запоминающее устройство
JPS63239547A (ja) メモリ機器
EP0178651A2 (en) Data retrieving apparatus

Legal Events

Date Code Title Description
A201 Request for examination
G160 Decision to publish patent application
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20050531

Year of fee payment: 14

LAPS Lapse due to unpaid annual fee