이하, 본 발명에 따른 기억 소자의 일실시예를 도면에 의해 상세히 설명한다.
도 1은 본 발명에 따른 기억 소자의 일실시예의 구성을 나타내는 블럭도이다. 도 1에서, 1은 메모리 셀군, 3은 ROW 어드레스 디코더, 4는 COL(COLUMN) 어드레스 디코더, 7 ∼ 9, 16, 17은 셀렉터, 10은 ROW 어드레스 레지스터, 11은 COL(COLUMN) 어드레스 레지스터, 12는 기록 데이타 레지스터, 13은 가상 레지스터 번호/가상 워드 번호 레지스터, 14는 어드레스 어레이, 15는 데이타 레지스터 어레이, 18은 디코더, 19는 모드 레지스터군, 20은 변환 회로, 21은 COL 어드레스 갱신 회로, 22는 출력 데이타 레지스터, 30은 제어 회로, 61, 62는 선택 회로, 71, 81은 메모리 셀용 어드레스 레지스터, 91은 메모리 셀용 기록 데이타 레지스터이다.
도 1에 도시된 기억 소자는, RAM에 본 발명을 적용한 것이다. 기억 소자는, 메모리 셀 어레이를 구성하는 메모리 셀(1)과, 메모리 셀(1)에 기억된 데이타의 일부의 사본을 저장하기 위한 복수의 레지스터를 구비한 가변 구조의 데이타 레지스터 어레이(15)와, 데이타 레지스터 어레이(15)의 각 레지스터에 저장된 데이타의 메모리 셀(1) 내에서의 위치 정보(어드레스)를 보유하기 위한, 각 레지스터에 대응한 복수의 엔트리를 구비한 어드레스 어레이(14)와, 데이타 레지스터 어레이(15)로부터의 출력과 메모리 셀(1)로부터의 출력을 전환하는 셀렉터(17)와, 출력 데이타 레지스터(22)와, 데이타 레지스터 어레이(15)로의 기록 데이타를 선택하는 셀렉터(16)와, 외부로부터 공급되는 기록 데이타와 데이타 레지스터 어레이(15)의 출력을 전환하기 위한 셀렉터(9)와, 메모리 셀용 기록 데이타 레지스터(91)와, 외부로부터 공급되는 어드레스와 어드레스 어레이(14)의 출력을 전환하는 셀렉터(7, 8)와, 메모리 셀용 ROW 어드레스 레지스터(71)와, 메모리 셀용 COL 어드레스 레지스터(81)와, ROW 어드레스 디코더(3)와, COL 어드레스 디코더(4)와, ROW 어드레스 레지스터(10)와, COL 어드레스 레지스터(11)와, 기록 데이타 레지스터(12)와, 가상 레지스터 번호/가상 워드 번호 레지스터(13)와, 가상 레지스터 번호/가상 워드 번호를 절대 레지스터 번호/절대 워드 번호로 변환하는 변환 회로(20)와, 상기 가상 레지스터 번호/가상 워드 번호를 절대 레지스터 번호/절대 워드 번호로 변환하기 위해 사용되는 정보를 보유하는 모드 레지스터군(19)과, 데이타 레지스터 어레이(15)를 액세스하기 위한 디코더(18)와, 메모리 셀(1)로부터 데이타 레지스터 어레이(15)로의 분할 데이타 전송을 행하는 경우의 COL 어드레스 갱신 회로(21)와, 각 레지스터, 셀렉터에 제어 신호(30a)등을 발행시키는 제어 회로(30)를 구비한다.
또, 기억 소자는, 외부로부터 어드레스 신호(ROW 어드레스, COL 어드레스)가 공급되는 adress 입력 단자, 외부로부터 데이타 신호(기록 데이타)가 공급되는 data-in 단자, 외부로부터 Reg-NO (Register Number) 신호가 공급되는 Reg-NO 입력 단자, 외부로부터 CS(Chip select) /RAS (Row Address Strobe) /CAS (Column Address Strobe)/WE (Write Enable)/REGA (data REGister array Access) 신호등의 제어 신호가 공급되는 제어 신호 입력 단자군, 및 데이타 신호를 외부로 출력하기 위한 data-out 단자를 구비한다.
도 1에 도시된 기억 소자에 대한 READ, WRITE에 따른 동작의 베리에이션(variation)으로는 이하에 나타내는 것을 예로 들 수 있다.
READ 동작의 베리에이션:
(1) 데이타 레지스터 어레이로의 등록을 수반하지 않은 메모리 셀로부터의 판독
(2) 데이타 레지스터 어레이로의 등록을 수반하는 메모리 셀로부터의 판독
(3) 데이타 레지스터 어레이로부터의 판독
WRITE 동작의 베리에이션:
(1) 메모리 셀로의 기록(데이타 레지스터 어레이로의 액세스없음)
(2) 메모리 셀과 데이타 레지스터 어레이로의 기록
(3) 데이타 레지스터 어레이의 데이타의 갱신(메모리 셀로의 액세스없음)
(4) 데이타 레지스터 어레이로부터 메모리 셀로의 재기록
이하, 도 2 ∼ 도 5를 참조하여 본 발명의 일실시예에 따른 기억 소자의 판독, 기록의 각 동작에 대해 설명한다. 또한, 도 2 ∼ 도 5에 도시된 타임차트는, RAM의 인터페이스 신호로 표현한 것이다.
도 2, 도 3은 판독(READ)인 경우의 동작을 설명하는 타임차트, 도 4, 도 5는 기록(WRITE)인 경우의 동작을 설명하는 타임차트이다.
우선, 도 2를 참조하여 READ 동작을 설명한다.
도 2의 (a)에 도시된 타임차트는, 데이타 레지스터 어레이(15)로의 등록을 수반하지 않은 메모리 셀(1)로부터의 판독의 동작(이하, 제1 READ 동작이라고 함)을 나타내고 있다. 이 동작에서는, 우선 기억 소자 외부로부터 공급되는 CS/RAS 신호에 따라 제어 회로(30)에 의해 셋트 신호(30a)가 생성된다. 이 셋트 신호(30a)가 ROW 어드레스 레지스터(10)로 공급되고, 기억 소자 외부로부터 공급되는 ROW 어드레스가 ROW 어드레스 레지스터(10)에 취득된다. 취득된 ROW 어드레스는, 셀렉터(7)를 통해 메모리 셀용 ROW 어드레스 레지스터(71)에 취득되고, 메모리 셀용 ROW 어드레스 레지스터(71)로부터 ROW 어드레스 디코더(3)로 전해진다. ROW 어드레스는 ROW 어드레스 디코더(3)에 의해 디코드된다. 디코드된 ROW 어드레스가 메모리 셀(1)로 공급되고, ROW 어드레스로 지정된 메모리 셀(1) 내의 영역으로부터 ROW 데이타의 판독 동작이 기동된다. 기동된 판독 동작에 따라 판독된 ROW 데이타는 선택 회로(61)로 이송된다.
한편, 외부로부터 기억 소자로 공급되는 CS/CAS 신호에 따라 제어 회로(30)에 의해 셋트 신호(30a)가 생성된다. 이 셋트 신호(30a)가 COL 어드레스 레지스터(11)로 공급되고, 기억 소자 외부로부터 공급되는 COL 어드레스가 COL 어드레스 레지스터(11)에 취득된다. 취득된 COL 어드레스는, 셀렉터(8)를 통해 메모리 셀용 COL 어드레스 레지스터(81)에 취득되고, 메모리 셀용 COL 어드레스 레지스터(81)로부터 COL 어드레스 디코더(4)로 전해진다. COL 어드레스는 COL 어드레스 디코더(4)에 의해 디코드된다. 디코드된 COL 어드레스는 메모리 셀의 하류에 있는 선택 회로(61)로 공급된다.
선택 회로(61)에서, 판독된 ROW 데이타 중 COL 어드레스 디코더(4)로부터 공급된 COL 어드레스에 의해 지정되는 데이타가 검색되고, 판독 데이타가 선택된다. 선택된 판독 데이타는 셀렉터(17)로 이송된다.
또한, 셀렉터(17)에는 CS/RAS 신호를 수반하는 RAM 액세스인 것을 조건으로, 선택 회로(61)의 출력 데이타를 선택하도록 지시하는 선택 지시 신호가 제어 회로(30)에 의해 생성되고, 공급된다. 그 결과, 셀렉터(17)에서는 선택 회로(61)로부터 이송된 판독 데이타가 선택되고, 출력 데이타 레지스터(22)에 출력된다. 셀렉터(17)로부터 출력된 데이타는 출력 데이타 레지스터(22)에 셋트되고, 그 후 출력 데이타 레지스터(22)로부터 기억 소자 외부로 출력된다.
이상에 의해 제1 READ 동작이 종료한다.
도 2의 (b)에 도시된 타임차트는, 데이타 레지스터 어레이(15)로의 등록을 수반하는 메모리 셀(1)로부터의 판독의 동작(이하, 제2 READ 동작이라고 함)을 나타내고 있다. 이 제2 READ 동작은, 제1 READ 동작과 마찬가지로 판독 데이타가 메모리 셀(1)로부터 판독된다. 제2 READ 동작에서는, 외부로부터 CAS 신호와 동시에 공급되는 REGA 신호 및 Reg-NO 신호에 따라, 데이타 레지스터 어레이(15)의 Reg-NO 신호로 지정된 레지스터 번호 위치에 1워드(모드 레지스터군(19)에 나타내는 워드 길이)의 데이타가 저장되는 점에서, 제1 READ 동작과는 다르다.
우선, 제1 READ 동작과 마찬가지로 하여, 외부로부터 CS/RAS 신호, ROW 어드레스가 기억 소자로 공급되고, ROW 어드레스가 ROW 어드레스 레지스터(10)에 취득된다. 또한, CS/CAS 신호, COL 어드레스가 기억 소자로 공급되고, COL 어드레스가 COL 어드레스 레지스터(11)로 취득된다.
이 때, CS/CAS 신호와 동시에 외부로부터 공급되는 REGA 신호에 따라 제어 회로(30)에서는 셋트 신호(30a)가 생성된다. 이 셋트 신호(30a)가 가상 레지스터 번호/가상 워드 번호 레지스터(13)로 공급되고, 외부로부터 기억 소자로 공급되는 Reg-NO 신호가 가상 레지스터 번호/가상 워드 번호 레지스터(13)에 취득된다. Reg-NO 신호는, 데이타 레지스터 어레이(15) 상에 가상적으로 구성된 데이타 레지스터 어레이 내의 각 레지스터의 번호(가상 레지스터 번호)를 지정하는 신호이다.
Reg-NO 신호는, 가상 레지스터 번호/가상 워드 번호 레지스터(13)로부터 변환 회로(20)로 이송된다. 변환 회로(20)에서, 이송되어 온 Reg-NO 신호가 지정하는 가상 레지스터 번호가 절대 레지스터 번호로 변환되고, 디코더(18)로 전해진다. 절대 레지스터 번호는, 데이타 레지스터 어레이(15) 내의 어느 한 레지스터를 지정하는 정보이다. 절대 레지스터 번호는 디코더(18)에 의해 디코드되고, 데이타 레지스터 어레이(15)로 공급된다. 데이타 레지스터 어레이(15)에서는, 절대 레지스터 번호에 따라 지정된 레지스터 번호를 구비한 하나의 레지스터가 선택된다.
한편, COL 어드레스는, 데이타 레지스터 어레이(15) 상에 가상적으로 구성된 데이타 레지스터 어레이의 각 레지스터 내에 1이상 포함되어 있는 각 워드의 번호(가상 워드 번호)를 지정하는 정보를 포함한다. 그리고, COL 어드레스 레지스터(11)에 취득된 COL 어드레스 내의 가상 워드 번호 정보는 변환 회로(20)로 이송된다. 이송된 정보가 지정하는 가상 워드 번호는, 변환 회로(20)에 의해 절대 워드 번호로 변환되고, 셀렉터(16)로 전해진다. 절대 워드 번호는 셀렉터(16)로부터 데이타 레지스터 어레이(15)로 공급된다. 데이타 레지스터 어레이(15)에서는, 절대 레지스터 번호에 따라 지정된 레지스터 중의, 절대 워드 번호로 지정되는 영역이 선택된다.
또한, 이 실시예에서는 가상 워드 번호 정보는, COL 어드레스의 일부로서 외부로부터 address 입력 단자를 통해 기억 소자로 공급되지만, 기억 소자에 있는 address 입력 단자와는 다른 입력 단자를 통해 외부로부터 직접 가상 워드 번호 정보가 기억 소자로 공급되도록 하는 것도 가능하다. 이하의 설명에서도 동일하다.
제1 READ 동작과 마찬가지로, ROW 어드레스 및 COL 어드레스는 메모리 셀(1)로 공급된다. 메모리 셀(1)에서는, ROW 어드레스 및 COL 어드레스에서 지정되는 영역이 선택되고, 그 선택된 영역으로부터 데이타가 판독된다. 판독된 데이타는, 셀렉터(16)로 이송된다.
제어 회로(30)에서는, 외부로부터의 CS/CAS/REGA 신호에 따라, 메모리 셀(1)로부터 판독된 데이타와 기록 데이타 레지스터(12)로부터 이송되어 오는 기록 데이타 중 어느 하나를 선택하는 셀렉터(16)에 대해, 메모리 셀(1)로부터 판독된 데이타를 선택하도록 지시하는 선택 지시 신호가 생성되고, 셀렉터(16)로 공급된다. 또한, 제어 회로(30)에서는, CS/CAS/REGA 신호와 동시에 공급되는 WE 신호에 따라 기록지시 신호가 생성되고, 데이타 레지스터 어레이(15)로 공급된다.
셀렉터(16)에서는, 제어 회로(30)로부터 공급된 선택 지시 신호에 따라 메모리 셀(1)로부터 판독된 데이타가 선택되어, 데이타 레지스터 어레이(15)로 공급된다.
데이타 레지스터 어레이(15)에서는, 기록 지시 신호에 따라, 절대 레지스터 번호 및 절대 워드 번호에 따라 선택된 영역에 셀렉터(16)로부터 공급된 데이타가 저장된다.
또한, 이상의 동작에서, 절대 레지스터 번호가 데이타 레지스터 어레이(15)로 공급되면, 데이타 레지스터 어레이(15)에서 절대 레지스터 번호에 따라 지정되는 레지스터가 선택됨과 동시에, 어드레스 어레이(14)에서, 데이타 레지스터 어레이(15) 내의 선택된 레지스터에 대응하는 엔트리가 선택된다. 또한, ROW 어드레스 레지스터(10) 및 COL 어드레스 레지스터(11)에 취득된 ROW 어드레스, COL 어드레스는, 메모리 셀(1)이나 변환 회로(20)로 이송됨과 동시에 어드레스 어레이(14)에도 공급된다. 그리고, 데이타 레지스터 어레이(15)의 선택된 레지스터에 기록 데이타가 저장되는 것과 병행하여, 어드레스 어레이(14)의 선택된 엔트리에, 공급된 ROW 어드레스/COL 어드레스가 등록된다.
또한, 메모리 셀(1)로부터 판독된 데이타는, 데이타 레지스터 어레이(15)로의 저장 동작과 병행하여 셀렉터(17)에 의해 선택되고, 출력 데이타 레지스터(22)에 셋트된다. 그 후, 출력 데이타 레지스터(22)로부터 기억 소자 외부에 출력되지만, 이 동작은 제1 READ 동작과 동일하다.
이상에 의해, 제2 READ 동작이 종료한다.
도 2의 (c)에 도시된 타임차트는, 데이타 레지스터 어레이(15)로부터의 판독의 동작(이하, 제3 READ 동작이라고 함)을 나타내고 있다. 또한, 여기서의 판독 대상 데이타는, 상술된 제2 READ 동작이나 후술하는 제2 WRITE 동작에 따라 미리 데이타 레지스터 어레이(15)에 등록되게 한다. 이 동작은, RAS 신호가 기억 소자로 공급되지 않고, CS/CAS/REGA 신호가 기억 소자로 공급됨에 따라 개시된다.
제어 회로(30)에서는, CS/CAS/REGA 신호에 따라 셋트 신호(30a)가 생성되고, COL 어드레스 레지스터(11), 가상 레지스터 번호/가상 워드 번호 레지스터(13)로 공급된다. 이 셋트 신호(30a)에 의해 외부로부터 공급된 COL 어드레스가 COL 어드레스 레지스터(11)에 취득되고, Reg-NO 신호가 가상 레지스터 번호/가상 워드 번호 레지스터(13)에 취득된다.
Reg-NO 신호는, 가상 레지스터 번호/가상 워드 번호 레지스터(13)로부터 변환 회로(20)로 이송된다. Reg-NO 신호가 지정하는 가상 레지스터 번호는, 변환 회로(20)에 의해 절대 레지스터 번호로 변환되고, 디코더(18)로 전해진다. 절대 레지스터 번호는 디코더(18)에 의해 디코드되고, 데이타 레지스터 어레이(15)로 공급된다. 데이타 레지스터 어레이(15)에서, 절대 레지스터 번호에 따라 지정된 레지스터 번호를 구비한 하나의 레지스터가 선택되고, 그 레지스터내 데이타의 판독 동작이 기동된다. 기동된 판독 동작에 따라 그 레지스터로부터 판독된 데이타는 선택 회로(62)로 이송된다.
한편, COL 어드레스 레지스터(11)에 취득된 COL 어드레스 내의 가상 워드 번호 정보는, COL 어드레스 레지스터(11)로부터 변환 회로(20)로 이송된다. 이송된 정보가 지정하는 가상 워드 번호는, 변환 회로(20)에 의해 절대 워드 번호로 변환되고, 선택 회로(62)로 공급된다.
선택 회로(62)에서, 데이타 레지스터 어레이(15)로부터 판독된 데이타 중, 변환 회로(20)로부터 공급된 절대 워드 번호에 따라 지정되는 데이타가 선택된다. 선택된 데이타는 셀렉터(17)로 이송된다.
또한, 셀렉터(17)에는 선택 회로(62)의 출력 데이타를 선택하도록 지시하는 선택 지시 신호가 제어 회로(30)로부터 공급된다. 그 결과, 선택 회로(62)로부터 이송된 데이타가 셀렉터(17)에서 선택되고, 출력 데이타 레지스터(22)에 셋트된다. 출력 데이타 레지스터(22)에 셋트된 데이타는, 그 후 기억 소자 외부에 출력된다.
이상에 의해 제3 READ 동작이 종료한다.
상술된 본 발명의 일실시예에서의 READ 동작에서는, 메모리 셀(1)로의 액세스가 완료하지 않아도 데이타 레지스터 어레이(15)로의 액세스가 가능하다. 도 3에 나타내는 타임차트는, 이러한 메모리 셀(1)로의 액세스와 데이타 레지스터 어레이(15)로의 액세스를 병행하여 행하는 경우를 나타내고 있다. 타임차트 중의 "a"로 나타낸 부분은 제1 READ 동작(메모리 셀(1)로의 액세스)에 대응하고, "b"로 나타낸 부분은 제3 READ 동작(데이타 레지스터 어레이(15)로의 액세스)에 대응한다.
도 3에서, 우선 CS/RAS 신호 및 ROW 어드레스가 기억 소자로 공급됨에 따라 "a"로 나타내는 제1 READ 동작이 개시된다. ROW 어드레스는 ROW 어드레스 레지스터(10)로부터 셀렉터(7)를 거쳐, 메모리 셀용 ROW 어드레스 레지스터(71)로 이송되고, 메모리 셀용 ROW 어드레스 레지스터(71)로 보유된다. 그리고, ROW 어드레스는 ROW 어드레스 디코더(3)에 의해 디코드되어 메모리 셀(1)로 공급되고, 데이타의 판독 동작이 기동된다.
한편, 그 2사이클 후에 CS/CAS/REGA 신호, Reg-NO 신호 및 데이타 레지스터 어레이(15)에 대한 COL 어드레스가 기억 소자로 공급되어 "b"로 나타내는 제3 READ 동작이 개시된다. 이 때 공급된 Reg-NO 신호 및 COL 어드레스에 포함되는 가상 워드 번호 정보는, 각각 가상 레지스터 번호/가상 워드 번호 레지스터(13), COL 어드레스 레지스터(11)로부터 변환 회로(20)로 이송되고, 변환 회로(20)에 의해 절대 레지스터 번호, 절대 워드 번호로 변환된다. 절대 레지스터 번호는 디코더(18)에 의해 디코드되어 데이타 레지스터 어레이(15)로 공급되고, 데이타 판독 동작이 기동된다. 또한, 절대 워드 번호는 선택 회로(62)로 공급된다.
제3 READ 동작의 개시로부터 1사이클 후에 제1 READ 동작에서의 CS/CAS 신호 및 COL 어드레스가 기억 소자로 공급된다. 이 때의 COL 어드레스는 COL 어드레스 레지스터(11)로부터 셀렉터(8)를 통해, 메모리 셀용 COL 어드레스 레지스터(81)로 보유된다. 그리고, COL 어드레스는 COL 어드레스 디코더(4)에 의해 디코드되어 선택 회로(61)로 공급된다.
이 경우, 제3 READ 동작은 제1 READ 동작보다도 나중에 개시되지만, 선택 회로(62)에 대한 절대 워드 번호의 공급이, 선택 회로(61)에 대한 COL 어드레스의 공급보다도 먼저 행해지고, 선택 회로(62)에서의 판독 데이타의 선택이, 선택 회로(61)에서의 판독 데이타의 선택보다도 먼저 행해져 출력된다. 그 결과, 제3 READ 동작에 따른 판독 데이타가 제1 READ 동작에 의한 판독 데이타보다도 먼저 출력 데이타 레지스터(22)를 통해 출력된다.
또한, 상술된 바와 같이 제3 READ 동작은, 제1 READ 동작의 도중, 즉 메모리 셀(1)에 대한 액세스 동작의 도중에서 개시하는 것이 가능하다. 이것은, 메모리 셀용 ROW 어드레스 레지스터(71)가 ROW 어드레스 레지스터(10)와는 별도로 준비되고, 먼저 공급된 ROW 어드레스는 ROW 어드레스 레지스터(10)로부터 메모리 셀용 ROW 어드레스 레지스터(71)로 이송되고, 메모리 셀 액세스 완료까지 메모리 셀용ROW 어드레스 레지스터(71)로 보유되기 때문이다. 즉, 먼저 공급된 ROW 어드레스에 의한 메모리 셀 액세스의 도중이라도, ROW 어드레스 레지스터(10)에는 ROW 어드레스가 계속 보유될 필요가 없어, 그 내용은 변경 가능하다. 그로 인한, 메모리 셀 액세스의 완료를 대기하지 않고, ROW 어드레스 레지스터(10)를 이용하여 READ (또는 WRITE) 동작을 개시할 수 있는 것이다. COL 어드레스에 대해서도, 메모리 셀용 COL 어드레스 레지스터(81)가 COL 어드레스 레지스터(11)는 별도로 준비되어 있기 때문에, 메모리 셀 액세스의 도중이라도 마찬가지로 데이타 레지스터 어레이(15)에 대한 READ (또는 WRITE) 동작을 개시할 수 있다.
또한, 이러한 메모리 셀용 어드레스 레지스터(71, 81)를 이용함에 따라, 메모리 셀 액세스와 데이타 레지스터 어레이 액세스사이에서, 액세스순서의 역전(추월)이 가능해진다.
이어서, 도 4, 도 5을 참조하여 기록동작에 관해서 설명한다.
도 4의 (a)에 나타내는 타임차트는, 데이타 레지스터 어레이(15)로의 액세스를 행하지 않은 메모리 셀(1)로의 기록 동작(이하, 제1 WRITE 동작이라고 함)을 나타내고 있다. 이 동작에서는, 우선 외부로부터 기억 소자로 공급되는 CS/RAS 신호에 따라 제어 회로(30)에 의해 셋트 신호(30a)가 생성된다. 이 셋트 신호(30a)가 ROW 어드레스 레지스터(10)로 공급되고, 기억 소자 외부로부터 공급되는 ROW 어드레스가 ROW 어드레스 레지스터(10)에 취득된다. 취득된 ROW 어드레스는, 셀렉터(7)를 통해 메모리 셀용 ROW 어드레스 레지스터(71)에 취득되고, 메모리 셀용 ROW 어드레스 레지스터(71)로부터 ROW 어드레스 디코더(3)로 전해진다. ROW 어드레스는 ROW 어드레스 디코더(3)에 의해 디코드된다. 디코드된 ROW 어드레스는 메모리 셀(1)로 공급된다. 메모리 셀(1)에서는, ROW 어드레스로 지정되는 ROW 영역이 선택된다.
계속해서, 외부로부터 기억 소자로 공급되는 CS/CAS 신호에 따라 제어 회로(30)에 의해 셋트 신호(30a)가 생성된다. 이 셋트 신호(30a)가 COL 어드레스 레지스터(11)로 공급되고, 외부로부터 기억 소자로 공급되는 COL 어드레스가 COL 어드레스 레지스터(11)에 취득된다. 취득된 COL 어드레스는, 셀렉터(8)를 통해 메모리 셀용COL 어드레스 레지스터(81)에 취득되고, 메모리 셀용 COL 어드레스 레지스터(81)로부터 COL 어드레스 디코더(4)로 전해진다. COL 어드레스는 COL 어드레스 디코더(4)에 의해 디코드된다. 디코드된 COL 어드레스는 메모리 셀(1)로 공급된다. 메모리 셀(1)에서는, ROW 어드레스에 의해 지정된 ROW 영역 중의, COL 어드레스에서 지정되는 COL 영역이 선택된다.
또한, 제어 회로(30)에 의해 생성된 셋트 신호(30a)는 기록 데이타 레지스터(12)에도 공급되어, 외부로부터 기억 소자로 공급되는 기록 데이타가 기록 데이타 레지스터(12)에 취득된다. 취득된 기록 데이타는, 셀렉터(9)를 통해 메모리 셀용 기록 데이타 레지스터(91)에 취득되고, 메모리 셀용 기록 데이타 레지스터(91)로부터 메모리 셀(1)로 공급된다.
또한, 외부로부터 기억 소자로 공급되는 WE 신호에 따라 제어 회로(30)에 의해 기록 지시 신호가 생성되어, 메모리 셀(1)로 공급된다.
메모리 셀(1)에서는, 제어 회로(30)로부터의 기록 지시 신호에 따라, 메모리 셀용 기록 데이타 레지스터(91)로부터 공급된 기록 데이타가, ROW 어드레스 및 COL 어드레스에 의해 선택된 영역에 기록된다.
이상에 따라 제1 WRITE 동작이 종료한다.
도 4의 (b)에 나타내는 타임차트는, 메모리 셀(1) 및 데이타 레지스터 어레이(15)로의 기록 동작(이하, 제2 WRITE 동작이라고 함)을 나타내고 있다. 이 동작에서는, 제1 WRITE 동작과 마찬가지로 메모리 셀(1)로의 데이타의 기록 동작이 행해진다. 제1 WRITE 동작과 다른 것은, 메모리 셀(1)로의 데이타의 기록과 병행하여 데이타 레지스터 어레이(15)에도 동일한 데이타가 기록되는 점이다.
우선, 제1 WRITE 동작과 마찬가지로, 외부로부터 CS/RAS 신호, ROW 어드레스가 기억 소자로 공급되고, ROW 어드레스가 ROW 어드레스 레지스터(10)에 취득된다. 또한, CS/CAS 신호, COL 어드레스도 기억 소자로 공급되고, COL 어드레스가 COL 어드레스 레지스터(11)에 취득된다. 또한, 기록 데이타도 기억 소자로 공급되고, 기록 데이타 레지스터(12)에 취득된다.
이 때, CS/CAS 신호와 동시에 공급되는 REGA 신호에 따라 제어 회로(30)가 셋트 신호(30a)를 생성한다. 이 셋트 신호(30a)는 가상 레지스터 번호/가상 워드 번호 레지스터(13)로 공급되고, 외부로부터 기억 소자로 공급되는 Reg-NO 신호가 가상 레지스터 번호/가상 워드 번호 레지스터(13)에 취득된다. 이 취득은 COL 어드레스가 COL 어드레스 레지스터(11)에 취득되는 것과 동일한 타이밍으로 행해진다.
제1 WRITE 동작과 마찬가지로 ROW 어드레스 및 COL 어드레스는 메모리 셀(1)로 공급된다. 메모리 셀(1)에서는, ROW 어드레스 및 COL 어드레스로 조정되는 영역이 선택된다.
한편, Reg-NO 신호는, 가상 레지스터 번호/가상 워드 번호 레지스터(13)로부터 변환 회로(20)로 이송된다. 변환 회로(20)에서, 이송되어 온 Reg-NO 신호가 지정하는 가상 레지스터 번호가 절대 레지스터 번호로 변환되고, 디코더(18)로 전해진다. 절대 레지스터 번호는 디코더(18)에 의해 디코드되고, 데이타 레지스터 어레이(15)로 공급된다. 데이타 레지스터 어레이(15)에서는, 절대 레지스터 번호에 따라 지정되는 레지스터가 선택된다.
또한, COL 어드레스 레지스터(11)에 취득된 COL 어드레스 내의 가상 워드 번호 정보는 변환 회로(20)에도 이송된다. 이송된 정보가 지정하는 가상 워드 번호는, 변환 회로(20)에 의해 절대 워드 번호로 변환되고, 셀렉터(16)로 전해진다. 절대 워드 번호는 셀렉터(16)로부터 데이타 레지스터 어레이(15)로 공급된다. 데이타 레지스터 어레이(15)에서는, 절대 레지스터 번호에 따라 지정된 레지스터 중의, 절대 워드 번호로 지정되는 워드 영역이 선택된다.
기록 데이타 레지스터(12)에 취득된 기록 데이타는, 셀렉터(9) 및 메모리 셀용 기록 데이타 레지스터(91)를 통해 메모리 셀(1)로 공급되고, 이것과 병행하여 셀렉터(16)에도 이송된다.
제어 회로(30)에서는, 외부로부터의 CS/CAS/REGA 신호에 따라 기록 데이타 레지스터(12)로부터의 데이타를 선택하도록 지시하는 선택 지시 신호가 생성되어, 셀렉터(16)로 공급된다. 또, 제어 회로(30)에서는 CS/CAS/REGA 신호와 동시에 공급되는 WE 신호에 따라 기록 지시 신호가 생성되고, 데이타 레지스터 어레이(15) 및 메모리 셀(1)로 공급된다.
셀렉터(16)에서는, 선택 지시 신호에 따라 기록 데이타 레지스터(12)로부터 이송되어 온 기록 데이타가 선택되어, 데이타 레지스터 어레이(15) 공급된다.
데이타 레지스터 어레이(15)에서는, 기록 지시 신호에 따라, 절대 레지스터 번호 및 절대 워드 번호에 따라 선택된 영역에 셀렉터(16)로부터 공급된 기록 데이타가 저장된다. 이 데이타 레지스터 어레이(15)로의 저장 동작과 병행하여, 메모리 셀(1)에 대한 동일한 기록 데이타의 기록도 행해진다.
또한, 이상의 동작에서 절대 레지스터 번호가 데이타 레지스터 어레이(15)로 공급되면, 데이타 레지스터 어레이(15)에서 절대 레지스터 번호에 따라 지정되는 레지스터가 선택됨과 동시에, 어드레스 어레이(14)에서, 데이타 레지스터 어레이(15) 내의 선택된 레지스터에 대응하는 엔트리가 선택된다. 또한, ROW 어드레스 레지스터(10) 및 COL 어드레스 레지스터(11)에 취득된 ROW 어드레스, COL 어드레스는, 메모리 셀(1)이나 변환 회로(20)로 이송됨과 함께 어드레스 어레이(14)에도 공급된다. 그리고, 데이타 레지스터 어레이(15)의 선택된 레지스터에 기록 데이타가 저장되는것과 병행하여, 어드레스 어레이(14)의 선택된 엔트리에, 공급된 ROW 어드레스/COL 어드레스가 등록된다.
이상에 의해, 제2 WRITE 동작이 종료한다.
도 4의 (c)에 도시된 타임차트는, 메모리 셀(1)로의 액세스는 수반하지 않은 데이타 레지스터 어레이(15)에 대한 데이타의 갱신 동작(이하, 제3 WRITE 동작이라고 함)을 나타내고 있다. 또한, 이 갱신 동작의 대상이 되는 것은, 데이타 레지스터 어레이(15)에 이미 등록되어 있는 데이타이다. 그 때문에, 대상 데이타는, 상술된 제2 READ 동작이나 제2 WRITE 동작에 따라 미리 데이타 레지스터 어레이(15)에 등록되는 것으로 한다.
우선, 제3 WRITE 동작은, RAS 신호의 공급이 이루어지지 않고, CS/CAS/REGA 신호가 외부로부터 기억 소자로 공급됨에 따라 개시된다.
제어 회로(30)에서는, CS/CAS/REGA 신호에 따라 셋트 신호(30a)가 생성되고, COL 어드레스 레지스터(11), 가상 레지스터 번호/가상 워드 번호 레지스터(13)로 공급된다. 이 셋트 신호(30a)에 의해 외부로부터 공급된 COL 어드레스가 COL 어드레스 레지스터(11)에 취득되고, Reg-NO 신호가 가상 레지스터 번호/가상 워드 번호 레지스터(13)에 취득된다.
또한, 셋트 신호(30a)는 기록 데이타 레지스터(12)에도 공급되고, 외부로부터 기억 소자로 공급되는 갱신 데이타가 기록 데이타 레지스터(12)에 취득된다.
가상 레지스터 번호/가상 워드 번호 레지스터(13)에 취득된 Reg-NO 신호는, 가상 레지스터 번호/가상 워드 번호 레지스터(13)로부터 변환 회로(20)로 이송된다. 변환 회로(20)에서 이송되어 온 Reg-NO 신호가 지정되는 가상 레지스터 번호가 절대 레지스터 번호로 변환되고, 디코더(18)로 전해진다. 절대 레지스터 번호는 디코더(18)에 의해 디코드되고, 데이타 레지스터 어레이(15)로 공급된다. 데이타 레지스터 어레이(15)에서는, 절대 레지스터 번호에 따라 지정되는 레지스터가 선택된다.
COL 어드레스 레지스터(11)에 취득된 COL 어드레스 내의 가상 워드 번호 정보는, COL 어드레스 레지스터(11)로부터 변환 회로(20)로 이송된다. 이송된 정보가 지정하는 가상 워드 번호는, 변환 회로(20)에 의해 절대 워드 번호로 변환되고, 셀렉터(16)로 전해진다. 절대 워드 번호는 셀렉터(16)로부터 데이타 레지스터 어레이(15)로 공급된다. 데이타 레지스터 어레이(15)에서는 절대 레지스터 번호에 따라 지정된 레지스터 중, 절대 워드 번호로 지정된 워드 영역이 선택된다.
기록 데이타 레지스터(12)에 취득된 갱신 데이타는 셀렉터(16)로 이송된다. 셀렉터(16)에서는, 제어 회로(30)로부터 공급된 선택 지시 신호에 따라 기록 데이타 레지스터(12)로부터 이송되어 온 갱신 데이타가 선택되고, 데이타 레지스터 어레이(15)로 공급된다.
한편, 제어 회로(30)에서는 CS/CAS/REGA 신호와 동시에 공급되는 WE 신호에 따라 기록 지시 신호가 생성되고, 제어 회로(30)로부터 데이타 레지스터 어레이(15)로 공급된다.
데이타 레지스터 어레이(15)에서는, 기록 지시 신호에 따라 절대 레지스터 번호 및 절대 워드 번호에 따라 선택된 영역 내에 이미 저장되어 있는 데이타가 셀렉터(16)로부터 공급된 갱신 데이타로 치환된다.
이상에 의해 제3 WRITE 동작이 종료한다.
도 5의 (a)에 도시된 타임차트는, 데이타 레지스터 어레이(15)로부터 메모리 셀(1)로의 재기록의 동작(이하, 제4 WRITE 동작이라고 함)을 나타내고 있다. 이 동작에서는, 제1 WRITE 동작과 마찬가지로 메모리 셀(1)로의 데이타의 기록(갱신)이 행해진다. 단, 메모리 셀(1)로 기록되는 데이타가, 외부로부터가 아니고 데이타 레지스터 어레이(15)로부터 공급되는 점에서 제1 WRITE 동작과는 다르다.
우선, 제1 WRITE 동작과 마찬가지로 하여 외부로부터 CS/RAS 신호, ROW 어드레스가 기억 소자로 공급되고, ROW 어드레스가 ROW 어드레스 레지스터(10)에 취득된다. 또, CS/CAS 신호, COL 어드레스가 기억 소자로 공급되고, COL 어드레스가 COL 어드레스 레지스터(11)에 취득된다.
이 때, CS/CAS 신호와 동시에 공급되는 REGA 신호에 따라 제어 회로(30)가 셋트 신호(30a)를 생성한다. 이 셋트 신호(30a)는 가상 레지스터 번호/가상 워드 번호 레지스터(13)로 공급되고, 외부로부터 기억 소자로 공급되는 Reg-NO 신호가 가상 레지스터 번호/가상 워드 번호 레지스터(13)에 취득된다. 이 취득은 COL 어드레스가 COL 어드레스 레지스터(11)에 취득되는 것과 동일한 타이밍으로 행해진다.
제1 WRITE 동작과 마찬가지로, ROW 어드레스 및 COL 어드레스는 메모리 셀(1)로 공급된다. 메모리 셀(1)에서는, ROW 어드레스 및 COL 어드레스에서 지정되는 영역이 선택된다.
한편, Reg-NO 신호는, 가상 레지스터 번호/가상 워드 번호 레지스터(13)로부터 변환 회로(20)로 이송된다. 변환 회로(20)에서, 이송되어온 Reg-NO 신호가 지정하는 가상 레지스터 번호가 절대 레지스터 번호로 변환되고, 디코더(18)로 전해진다. 절대 레지스터 번호는 디코더(18)에 의해 디코드되고, 데이타 레지스터 어레이(15)로 공급된다. 데이타 레지스터 어레이(15)에서는 절대 레지스터 번호에 따라 지정되는 레지스터가 선택되고, 그 선택된 영역으로부터 데이타가 판독된다. 판독된 데이타는 셀렉터(9)로 이송된다.
제어 회로(30)에서는, 외부로부터의 CS/CAS/REGA 신호에 따라, 데이타 레지스터 어레이(15)로부터의 판독 데이타를 선택하도록 지시하는 선택 지시 신호가 생성되고, 셀렉터(9)로 공급된다. 또한, 제어 회로(30)에서는 CS/CAS/REGA 신호와 동시에 공급되는 WE 신호에 따라 기록 지시 신호가 생성되고, 메모리 셀(1)로 공급된다.
셀렉터(9)에서는, 선택 지시 신호에 따라 데이타 레지스터 어레이(15)로부터 이송되어 온 판독 데이타가 선택되고, 메모리 셀용 기록 데이타 레지스터(91)로 이송된다. 판독 데이타는 메모리 셀용 기록 데이타 레지스터(91)에 취득되고, 메모리 셀용 기록 데이타 레지스터(91)로부터 메모리 셀(1)로 공급된다.
메모리 셀(1)에서는, 제어 회로(30)로부터의 기록 지시 신호에 따라, ROW 어드레스 및 COL 어드레스에 의해 선택된 영역에 이미 저장되어 있는 데이타가 메모리 셀용 기록 데이타 레지스터(91)로부터 공급된 기록 데이타로 치환된다.
이상에 의해, 제4 WRITE 동작이 종료한다.
도 5의 (b)에 도시된 타임차트는, 데이타 레지스터 어레이(15)에 대응시켜 기억 소자 내부에 설치된 어드레스 어레이(14) 내의 어드레스 정보를 이용한 메모리 셀(1) 및 데이타 레지스터 어레이(15)에 대한 갱신 동작(이하, 제5 WRITE 동작이라고 함)을 나타내고 있다. 이 동작에서는, 제2 WRITE 동작과 마찬가지로 메모리 셀(1) 및 데이타 레지스터 어레이(15)로의 데이타의 기록(갱신)이 행해진다. 단, 메모리 셀(1)로 공급되는 어드레스가, 외부로부터가 아니라 어드레스 어레이(14)로부터 공급되는 점에서 제2 WRITE 동작과는 다르다.
여기서, 데이타 레지스터 어레이(15)에 이미 데이타가 저장되어 있는 경우에는, 그 데이타의 메모리 셀(1) 내에서의 어드레스도 어드레스 어레이(14)에 등록되어 있다. 따라서, 데이타 레지스터 어레이(15)에 저장된 데이타를 대상으로 한 기억 소자로의 액세스에는, ROW 어드레스나 COL 어드레스를 공급하지 않고, 메모리 셀(1)을 액세스하는 것이 가능해진다.
구체적으로는, 외부로부터 CS/RAS/CAS/REGA 신호가 동시에 기억 소자로 공급되고, 이들 신호에 따라 제어 회로(30)에 의해 셋트 신호(30a)가 생성된다. 셋트 신호(30a)는 COL 어드레스 레지스터(11) 및 가상 레지스터 번호/가상 워드 번호레지스터(13)로 공급되고, 외부로부터 기억 소자로 공급되는 COL 어드레스 및 Reg-NO 신호가 각각 COL 어드레스 레지스터(11)와 가상 레지스터 번호/가상 워드 번호 레지스터(13)로 취득된다.
Reg-NO 신호는, 가상 레지스터 번호/가상 워드 번호 레지스터(13)로부터 변환 회로(20)로 이송된다. 변환 회로(20)에서, 이송되어 온 Reg-NO 신호가 지정하는 가상 레지스터 번호가 절대 레지스터 번호로 변환되고, 디코더(18)로 전해진다. 절대 레지스터 번호는 디코더(18)에 의해 디코드되고, 데이타 레지스터 어레이(15) 및 어드레스 어레이(14)로 공급된다. 데이타 레지스터 어레이(15)에서는, 절대 레지스터 번호에 따라 지정되는 레지스터가 선택되고, 또한 어드레스 어레이(14)에서는 데이타 레지스터 어레이(15) 내의 선택된 레지스터에 대응하는 엔트리가 선택된다.
어드레스 어레이(14)에서는, 선택된 엔트리에 등록되어 있는 ROW 어드레스 및 COL 어드레스가 그 엔트리로부터 출력되고, ROW 어드레스는 셀렉터(7)로, COL 어드레스는 셀렉터(8)로 공급된다.
제어 회로(30)에서는, CS/RAS/CAS/REGA 신호에 따라 어드레스 어레이(14)로부터의 어드레스를 선택하도록 지시하는 선택 지시 신호가 생성되고, 셀렉터(7, 8)로 공급된다.
셀렉터(7, 8)에서는 선택 지시 신호에 따라 어드레스 어레이(14)로부터 공급된 어드레스가 선택되고, 메모리 셀용 ROW 어드레스 레지스터(71)와 메모리 셀용COL 어드레스 레지스터(81)로 이송된다.
그리고, 상기 이외의 메모리 셀(1) 및 데이타 레지스터 어레이(15)로의 데이타 기록 동작은 제2 WRITE 동작과 같이 행해지고, 메모리 셀(1) 및 데이타 레지스터 어레이(15) 내의 선택된 영역에 이미 저장되어 있는 데이타가 외부로부터 공급된 갱신 데이타로 치환되고, 제5 WRITE 동작이 종료한다.
이와 같이, 제5 WRITE 동작에서는 제2 WRITE 동작과 비교하여 외부로부터의 기억 소자로의 액세스 사이클수가 1사이클뿐이다.
도 5의 (c)에 도시된 타임차트는, 데이타 레지스터 어레이(15)에 대응시켜 기억 소자 내부에 설치된 어드레스 어레이(14) 내의 어드레스 정보를 이용한 데이타 레지스터 어레이(15)로부터 메모리 셀(1)로의 재기록의 동작(이하, 제6 WRITE 동작이라고 함)을 나타내고 있다. 이 동작에서는, 제4 WRITE 동작과 마찬가지로 데이타 레지스터 어레이(15)로부터 판독된 데이타가 메모리 셀(1)에 기록된다. 단, 메모리 셀(1)로 공급되는 어드레스가, 외부로부터가 아니고 어드레스 어레이(14)로부터 공급되는 점에서 제4 WRITE 동작과는 다르다.
구체적으로는, RAS/CAS 신호의 공급이 이루어지지 않고, CS/REGA 신호가 외부로부터 기억 소자로 공급된다. 이들 신호에 따라 제어 회로(30)에 의해 셋트 신호(30a)가 생성되고, 가상 레지스터 번호/가상 워드 번호 레지스터(13)로 공급된다. 이 셋트 신호(30a)에 의해 외부로부터 기억 소자로 공급되는 Reg-NO 신호가 가상 레지스터 번호/가상 워드 번호 레지스터(13)에 취득된다.
Reg-NO 신호는, 가상 레지스터 번호/가상 워드 번호 레지스터(13)로부터 변환 회로(20)로 이송된다. 변환 회로(20)에서, 이송되어 온 Reg-NO 신호가 지정하는 가상 레지스터 번호가 절대 레지스터 번호로 변환되고, 디코더(18)에 전해진다. 절대 레지스터 번호는 디코더(18)에 의해 디코드되고, 데이타 레지스터 어레이(15) 및 어드레스 어레이(14)로 공급된다. 데이타 레지스터 어레이(15)에서는, 절대 레지스터 번호에 따라 지정되는 레지스터가 선택되고, 한편 어드레스 어레이(14)에서는 데이타 레지스터 어레이(15) 내의 선택된 레지스터에 대응하는 엔트리가 선택된다.
어드레스 어레이(14)에서는, 선택된 엔트리에 등록되어 있는 ROW 어드레스 및 COL 어드레스가 그 엔트리로부터 출력되고, ROW 어드레스는 셀렉터(7)에, COL 어드레스는 셀렉터(8)로 공급된다.
제어 회로(30)에서는, CS/REGA 신호에 따라 어드레스 어레이(14)로부터의 어드레스를 선택하도록 지시하는 선택 지시 신호가 생성되고, 셀렉터(7, 8)로 공급된다.
셀렉터(7, 8)에서는 선택 지시 신호에 따라 어드레스 어레이(14)로부터 공급된 어드레스가 선택되고, 메모리 셀용 ROW 어드레스 레지스터(71)와 메모리 셀용COL 어드레스 레지스터(81)로 이송된다.
그리고, 상기 이외의 데이타 레지스터 어레이(15)로부터의 판독 동작 및 메모리 셀(1)로의 기록 동작은 제4 WRITE 동작과 같이 행해져, 제6 WRITE 동작이 종료한다.
이와 같이, 제6 WRITE 동작에서는, 제5 WRITE 동작과 마찬가지로 외부로부터의 기억 소자로의 액세스 사이클수가 1사이클뿐이다.
상술된 본 발명의 일실시예에서의 WRITE 동작이라도, READ 동작의 경우와 마찬가지로, 메모리 셀(1)로의 액세스가 완료하지 않아도 데이타 레지스터 어레이(15)로의 액세스를 메모리 셀(1)로의 액세스와 병행하여 행하게 하는 것이 가능하다.
이것은, 상술된 바와 같이 메모리 셀용 ROW 어드레스 레지스터(71),메모리 셀용 COL 어드레스 레지스터(81), 메모리 셀용 기록 데이타 레지스터(91)가 ROW 어드레스 레지스터(10), COL 어드레스 레지스터(11), 기록 데이타 레지스터(12)와는 별도로 준비되기 때문이다. 그리고, 이러한 메모리 셀용 레지스터(71, 81, 91)를 이용함에 따라, 메모리 셀 액세스와 데이타 레지스터 어레이 액세스사이에서, 액세스 순서의 역전(추월)이 가능해진다. 또한, READ 동작끼리나 WRITE 동작끼리뿐만 아니라, READ 동작과 WRITE 동작이 혼재한 상황에서도, 메모리 셀 액세스와 데이타 레지스터 어레이 액세스와의 병행 동작이나 액세스 순서의 역전이 마찬가지로 가능하다.
도 6은 데이타 레지스터 어레이(15)의 실제 구성과 가상 구성과의 예를 나타내는 도면이다. 이하, 도 6을 참조하여 데이타 레지스터 어레이(15)의 구성에 대해 설명한다.
도 6의 (a)은 데이타 레지스터 어레이(15)의 실제 구성예를 나타내고 있다. 본 예에서는, 데이타 레지스터 어레이(15)는, 각 레지스터의 사이즈(워드 길이)가 32인 8개의 레지스터로 구성되어 있다.
이어서, 이 실제 구성에 대한 가상 구성의 예를 도 6의 (b) ∼ 도 6의 (d)에 도시한다.
도 6의 (b)에 도시된 가상 구성 1에서는, 각 레지스터 사이즈(워드 길이)가 16인 16개의 레지스터에 의해 데이타 레지스터 어레이가 구성되는 것으로 한다.
도 6의 (c)에 도시된 가상 구성 2에서는, 각 레지스터 사이즈(워드 길이)가 64인 4개의 레지스터에 의해 데이타 레지스터 어레이가 구성되는 것으로 한다.
또한, 도 6의 (d)에 도시된 가상 구성 3에서는, 각 레지스터 사이즈(워드 길이)가 64인 2개의 레지스터와, 각 레지스터 사이즈(워드 길이)가 32인 4개의 레지스터에 의해 데이타 레지스터 어레이가 구성되는 것으로 한다.
여기서, 도 6의 (b) ∼ (d)에 도시된 모든 가상 구성에서도, 데이타 레지스터 어레이의 총 용량, 즉 「레지스터 사이즈(워드 길이) × 레지스터 갯수」의 값은, 도 6의 (a)에 도시된 실제 구성의 데이타 레지스터 어레이(15)의 총용량 「32×8」과 동일하다. 즉, 데이타 레지스터 어레이(15)의 실제 구성의 총용량, 즉 「레지스터 사이즈(워드 길이) × 레지스터 갯수」의 값의 범위 내에서 레지스터 사이즈(워드 길이)와 레지스터 갯수를 임의로 바꾸어 가상 구성을 설정하는 것이 가능하다.
이에 따라, 기억 소자에 대한 요청이 다수의 스트림(마스터)으로부터 발행되는 경우에는, 도 6의 (b)에 도시된 바와 같이 레지스터 1개당 사이즈(워드 길이)를 작게 하여, 레지스터 갯수를 확보할 수 있도록 가상 구성을 설정할 수 있다. 한편, 요청이 소수의 스트림(마스터)으로부터 발행되고, 또한 액세스 어드레스가 연속하는 경우에는 도 6의 (c)에 도시된 바와 같이 레지스터 갯수를 감하여, 레지스터 1개당 사이즈(워드 길이)를 크게 한 가상 구성을 설정할 수 있다. 또한, 상술된 양자의 요건을 도입한 것이 도 6의 (d)에 도시된 가상 구성이고, 상호 레지스터 사이즈(워드 길이)가 다른 레지스터가 혼재하도록 설정할 수도 있다.
도 7은 가상 레지스터 번호/가상 워드 번호로부터 절대 레지스터 번호/절대 워드 번호를 구하기 위한 연산식의 일례를 나타내는 도면이다. 이하, 도 1에 도시된 변환 회로(20)가, 가상 레지스터 번호/가상 워드 번호를, 절대 레지스터 번호/절대 워드 번호로 변환하는 방법의 일례에 대해 설명한다.
도 7에 도시된 바와 같이, 절대 레지스터 번호(절대 Reg#) /절대 워드 번호(절대W#)는, 실제 레지스터 사이즈(실제 RS)와, 가상 레지스터 사이즈(가상 RS)에 기초하여, Reg-NO 입력 단자로부터 입력되는 Reg-NO 신호에 따라 지정되면 가상 레지스터 번호(가상 Reg#)와, address 입력 단자로부터 입력되는 COL 어드레스의 일부에 의해 지정되는 가상 워드 번호(가상 W#)로부터 요구할 수 있다.
여기서, 실제 레지스터 사이즈(실제 RS)는, 실제 구성의 데이타 레지스터 어레이(15)에서의 각 레지스터의 레지스터 사이즈를 가리킨다. 이 실제 RS의 정보는 도 1에는 도시되지 않은 기억 소자 내의 레지스터(이하, 실제 RS 레지스터라고 함)로 보유된다. 또한, 가상 레지스터 사이즈(가상 RS)는, 데이타 레지스터 어레이(15)에 가상적으로 설정된 가상 구성에서의 각 레지스터의 레지스터 사이즈를 가리킨다. 이 가상 RS의 정보는 모드 레지스터군(19)의 어느 한 레지스터로 보유된다. 물론, 실제 RS가 모드 레지스터군(19) 중 어느 한 레지스터로 보유되도록 구성하는 것도 가능하다.
실제 RS는 고정치이고, 실제 RS 레지스터에는 미리 실제 RS의 정보가 설정되어 있다. 이 설정은, 예를 들면 기억 소자 자신의 동작 입상시(전원 ON 시간)에 제어 회로(30) 또는 그 밖의 회로에 의해 행해지는 것이 가능하다. 한편, 가상 RS는 가변이고, 기억 소자의 동작 중에서도 임의로 가상 RS를 설정할 수 있도록 하는 것이 바람직하다. 그로 인한, 가상 RS의 모드 레지스터군(19)로의 설정에 대해서는, 예를 들면 기억 소자 자신의 동작 입상시(전원 ON시)에 제어 회로(30) 또는 그 밖의 회로, 또는 외부로부터 미리 결정해 둔 가상 RS가 설정되도록 하는 것도 가능하고, 이 기억 소자가 사용되는 시스템에서 동작하는 어플리케이션(소프트웨어) 등에 의해, 임의의 시점에서 그 때마다 결정된 가상 RS가 설정되도록 하는 것도 가능하다.
변환 회로(20)는, 실제 RS 레지스터로부터 공급되는 실제 RS, 모드 레지스터군(19)으로부터 공급되는 가상 RS, Reg-NO 입력 단자로부터 가상 레지스터 번호/가상 워드 번호 레지스터(13)를 통해 공급되는 Reg-NO 신호에 따라 지정되면 가상 Reg#, address 입력 단자로부터 COL 어드레스 레지스터(11)를 통해 공급되는 COL 어드레스의 일부에 의해 지정되는 가상 W#을 수취하고, 후술된 바와 같은 연산식을 이용하여, 절대 Reg# 및 절대 W#를 구한다.
도 7의 (1)에 나타내는 식은, 도 6의 (b), 도 6의 (c)에 도시된 가상 구성과 같은 「가상 RS가 균일한 케이스」의 계산 방법을 나타내는 연산식의 일례이다. 또한, 도 7의 (2)에 나타내는 식은, 도 6의 (d)에 도시된 가상 구성과 같은 「가상 RS가 불균일한 케이스로서, 가상 RS가 변환하는 경계가 가상 구성 내에 한군데에만 존재하는 경우」의 계산 방법을 나타내는 연산식의 일례이다.
(1)에 도시된 바와 같이, 가상 RS가 균일한 경우, 절대 Reg#는, {가상 Reg# ÷ (실제 RS ÷ 가상 RS)}의 몫 + {가상 W# ÷ 실제 RS}의 몫으로 구할 수 있다.
또한, 절대 W#는, (가상 Reg# × 가상 RS) + 가상 W# - (절대 Reg# × 실제 RS)로서 구할 수 있다.
또한, (2)의 케이스에서는, 우선 가상 RS가 변환되는 경계(가상 RS 경계)를 넘지 않은 범위 내에 있는 가상 레지스터의 사이즈를 가리키는 가상 RS1과, 가상 RS 경계를 넘은 범위에 있는 가상 레지스터의 사이즈를 가리키는 가상 RS2가, 상술된 바와 같이 함으로써 모드 레지스터군(19)에 설정된다. 또한, 가상 RS 경계의 직전에 둔 가상 레지스터의 가상 Reg#도 모드 레지스터군(19)에 설정된다. 예를 들면, 도 6의 (d)에 도시된 가상 구성에서 말하면, 가상 Reg#이 Reg1인 가상 레지스터와, 가상 Reg#이 Reg2인 가상 레지스터 사이에 가상 RS 경계가 존재한다. 그리고, 이 가상 RS 경계를 넘지 않은 가상 레지스터 Reg0, Reg1의 가상 RS1=64와, 가상 RS 경계를 넘은 가상 레지스터 Reg2 ∼ Reg5의 가상 RS2=32와, 가상 RS 경계의 직전에 둔 가상 레지스터의 가상 Reg#=Reg1의 정보가 모드 레지스터군(19)에 설정된다.
이들 가상 RS1, 2, 가상 Reg#의 정보는 모드 레지스터군(19)으로부터 변환 회로(20)로 공급된다. 변환 회로(20)는, Reg-NO 입력 단자로부터 가상 레지스터 번호/가상 워드 번호 레지스터(13)를 통해 공급되는 Reg-NO 신호에 의해 지정되는 가상 Reg#과 모드 레지스터군(19)으로부터 공급되는 가상 Reg#을 비교하여, Reg-NO 입력 단자로부터의 가상 Reg#이 가상 RS 경계 직전에 있는 가상 레지스터의 Reg# 이하인지의 여부를 판정한다.
그리고, (2-1)에 나타낸 바와 같이 가상 Reg#이 가상 RS 경계 직전에 있는 가상 레지스터의 Reg# 이하의 경우, 절대 Reg#는, {가상 Reg# ÷ (실제 RS ÷ 가상 RS)}의 몫 + {가상W# ÷ 실제 RS}의 몫으로 구할 수 있다.
또한, 절대 W#는, (가상 Reg# × 가상 RS) + 가상 W#- (절대Reg# × 실제 RS)로 구할 수 있다.
또한, (2-2)에 도시된 바와 같이, 가상 Reg#가 가상 RS 경계 직후의 가상 레지스터의 Reg#보다 큰 경우, 절대 Reg#는, {경계를 넘은 가상 레지스터의 최소의 Reg# ÷ (실제 RS ÷ 가상 RS1)}의 몫 + {(가상 Reg# - 경계를 넘은 가상 레지스터의 최소의 가상 Reg#) ÷ (실제 RS ÷ 가상 RS 2)}의 몫 + {가상W# ÷ 실제 RS }의 몫으로 구할 수 있다.
또한, 절대 W#는, (경계를 넘은 최소의 가상 Reg# × 가상 RS1) + (가상 Reg# - 경계를 넘은 최소의 가상 Reg#) × 가상 RS2 + 가상W# - 절대 Reg# × 실제 RS로 구할 수 있다.
또한, 도 7의 (2)에서는 가상 RS 경계가 가상 구성 내에 한군데만 존재하는 경우만을 나타내고, 가상 RS를 2종류로 정식화하고 있다. 그러나, 가상 RS 경계는 한군데인만큼 한정되는 것이 아니고, 가상 RS도 2종류에 한정되는 것이 아니다.
상술된 바와 같이 함으로써 변환 회로(20)에 의해 구해진 절대 Reg#와 절대 W#는, 데이타 레지스터 어레이(15)의 레지스터 번호용의 디코더(18)나, 실제 레지스터 중의 데이타 위치를 특정하는 셀렉터(16)나 선택 회로(62)등으로 이송되어 처리된다.
그런데, 상술된 가상 RS가, 기억 소자에서 동시에 전송 가능한 실제의 데이타 폭보다도 큰 경우에는, 메모리 셀로부터 데이타 레지스터 어레이로, 또는 데이타 레지스터 어레이로부터 메모리 셀로의 가상 RS 분의 데이타 전송을 복수회로 나눠 행할 필요가 있다. 이러한 경우에 대해 설명한다. 기억 소자는, 도 1에는 도시되지 않은 기억 소자 내의 레지스터에 「메모리 셀에 대해 동시에 전송 가능한 워드 길이(MemW)」를 미리 보유하고 있다. 그리고, 메모리 셀(1)과 데이타 레지스터 어레이(15)사이에서 데이타 전송을 행할 때에, 기억 소자 내의 제어 회로(30)는, 그 레지스터로부터 공급되는 MemW, 모드 레지스터군(19) 중 어느 한 레지스터로부터 공급되는 가상 레지스터 하나당 워드 길이(RegW)(가상 RS와 같음)를 수취하여 비교한다. 제어 회로(30)는, 비교한 결과, RegW가 MemW보다도 크다고 판단하면, 데이타 전송을 메모리 셀(1)의 워드 길이(MemW)를 1단위로 하여 전송해야 할 데이타를 분할하여 복수회에 걸쳐 전송하도록, 제어 신호군을 생성하고, 데이타 전송을 실행하는 각 구성에 공급하여 제어한다.
여기서, COL 어드레스 갱신 회로(21)는 데이타를 분할하여 전송할 때에, 메모리 셀로 공급하는 어드레스를 자동적으로 MemW 수분 인크리멘트하기 위한 회로이다. COL 어드레스 갱신 회로(21)는, 상술된 레지스터로부터 MemW의 공급을 받고, 또한 COL 어드레스 레지스터(81)의 출력하는 어드레스를 수취한다. 그리고, 어드레스 레지스터(81)로부터 출력된 어드레스에 MemW를 가산한 결과를 새로운 어드레스로서 셀렉터(8)에 출력한다. 셀렉터(8)에서는, 제어 회로(30)로부터 공급되는 제어 신호에 따라, COL 어드레스 갱신 회로(21)로부터 출력된 어드레스가 선택되어 메모리 셀용 COL 어드레스 레지스터(81)로 이송된다. 이러한 방식으로 메모리 셀(1)로의 가상 RS 분의 데이타의 READ/WRITE 동작이 자동적으로 행해진다.
이상, 일실시예에 대해 상세히 설명한 기억 소자는, 예를 들면 도 8에 도시된 바와 같이 명령 프로세서와 기억 제어 장치와 기억 장치로 이루어지는 데이타 처리 시스템에서의 그 기억 장치를 구성함으로써 사용될 수 있다. 이 경우, 각 기억 소자는, 명령 프로세서로부터의 발행되는 요청에 따라 기억 제어 장치로부터 어드레스 신호, 데이타 신호 및 제어 신호군을 공급하고, READ 요청에 대해서는 데이타 신호를 출력한다. 따라서, 이 경우에는 상술된 설명에서의 외부는, 명령 프로세서나 기억 제어 장치, 또는 데이타 처리 시스템으로 동작하는 OS나 각종 어플리케이션을 가리킨다. 그리고, 이들 하드웨어나 소프트웨어로부터, 상술된 기억 소자의 address 입력 단자, data-in 단자, Reg-NO 입력 단자, 제어 신호 입력 단자군에 대해 어드레스 신호, 데이타 신호, Reg-NO 신호, CS/RAS/CAS/WE/REGA 신호등의 제어 신호가 공급되고, 또한 기억 소자 내의 모드 레지스터군(19)이나 다른 레지스터에 대해 가상 RS나 가상 Reg# 등의 정보가 설정된다. 이에 따라, 기억 소자는 상술된 READ 동작 및 WRITE 동작을 실행할 수 있다.
단, 도 8에 도시된 구성에 한정되지 않고, 여러가지 구성을 구비한 데이타 처리 시스템이나 정보 기기에서의 기억 장치에 상술된 기억 소자를 사용할 수 있다. 여기서, 데이타 처리 장치나 정보 처리 기기는, 예를 들면 범용 컴퓨터, 병렬 컴퓨터, 수퍼 컴퓨터, 서버, 워크스테이션, 퍼스널 컴퓨터나, 각종 프로세서 및 기억 장치를 포함한 시스템을 의미한다.