KR100859183B1 - 반도체 집적 회로 및 반도체 기억 장치 - Google Patents

반도체 집적 회로 및 반도체 기억 장치 Download PDF

Info

Publication number
KR100859183B1
KR100859183B1 KR1020070105670A KR20070105670A KR100859183B1 KR 100859183 B1 KR100859183 B1 KR 100859183B1 KR 1020070105670 A KR1020070105670 A KR 1020070105670A KR 20070105670 A KR20070105670 A KR 20070105670A KR 100859183 B1 KR100859183 B1 KR 100859183B1
Authority
KR
South Korea
Prior art keywords
memory
data
byte
address
input
Prior art date
Application number
KR1020070105670A
Other languages
English (en)
Other versions
KR20080059028A (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 KR20080059028A publication Critical patent/KR20080059028A/ko
Application granted granted Critical
Publication of KR100859183B1 publication Critical patent/KR100859183B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/4063Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
    • G11C11/407Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
    • G11C11/408Address circuits
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/39Control of the bit-mapped memory
    • G09G5/393Arrangements for updating the contents of the bit-mapped memory
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/39Control of the bit-mapped memory
    • G09G5/395Arrangements specially adapted for transferring the contents of the bit-mapped memory to the screen
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/4063Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
    • G11C11/407Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
    • G11C11/408Address circuits
    • G11C11/4082Address Buffers; level conversion circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/4063Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
    • G11C11/407Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
    • G11C11/408Address circuits
    • G11C11/4087Address decoders, e.g. bit - or word line decoders; Multiple line decoders
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/4063Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
    • G11C11/407Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
    • G11C11/409Read-write [R-W] circuits 
    • G11C11/4093Input/output [I/O] data interface arrangements, e.g. data buffers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/4063Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
    • G11C11/407Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
    • G11C11/409Read-write [R-W] circuits 
    • G11C11/4096Input/output [I/O] data management or control circuits, e.g. reading or writing circuits, I/O drivers or bit-line switches 
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/12Group selection circuits, e.g. for memory block selection, chip selection, array selection

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Dram (AREA)
  • Memory System (AREA)

Abstract

본 발명은 이차원 배열 데이터의 직사각형 영역에의 액세스를 효율적으로 행할 수 있는 화상 메모리, 화상 메모리 시스템 및 메모리 컨트롤러를 제공하는 것을 목적으로 한다.
메모리 장치는 어드레스에 의해 선택되는 복수의 메모리 단위 영역을 갖는 메모리 셀 어레이와, 복수의 입출력 단자와, 메모리 셀 어레이와 복수의 입출력 단자 사이에 설치되는 입출력 유닛을 포함한다. 메모리 단위 영역 내에는 상기 복수의 입출력 단자에 대응하는 복수의 바이트 또는 비트의 데이터가 기억되고, 또한 메모리 셀 어레이와 입출력 유닛은 제1 동작 코드에 응답하여, 입력 어드레스와 바이트 또는 비트의 조합 정보에 기초하여, 입력 어드레스에 대응하는 제1 메모리 단위 영역과 그에 인접한 제2 메모리 단위 영역 내의 복수의 바이트 또는 비트에 액세스하며, 액세스한 제1 및 제2 메모리 단위 영역의 복수의 바이트 또는 비트로부터 조합 정보에 기초한 조합의 복수의 바이트 또는 비트를 복수의 입출력 단자에 대응시킨다.

Description

반도체 집적 회로 및 반도체 기억 장치{SEMICONDUCTOR INTEGRATED CIRCUIT AND SEMICONDUCTOR MEMORY DEVICE}
본 발명은 디지털 화상 데이터를 비롯한 이차원 배열 데이터를 기록하는 메모리 장치, 그 메모리 장치의 메모리 컨트롤러, 및 메모리 시스템에 관한 것으로, 특히 단위 시간에 처리할 수 있는 데이터 수를 의미하는 대역폭을 실효적으로 크게 하는 메모리 장치, 메모리 컨트롤러 및 메모리 시스템에 관한 것이다.
디지털 화상 데이터 등의 이차원으로 배열된 데이터를 기록하는 메모리 장치는 디지털 방송이나 인터넷에 의한 동영상 배신 등의 보급에 따라 점점 큰 시장 규모가 되고 있다. 디지털 화상 데이터는 화소의 계조 정보를 복수 비트(예컨대, 8비트, 256계조)로 구성한 데이터군이며, 예컨대 하이비전 방송용 화상 데이터는 1프레임이 1920× 1040 화소의 화상 데이터로 구성된다. 그리고, 이 프레임 단위의 화상 데이터가 소정의 맵핑 방법에 따라 화상 메모리 내의 어드레스 공간 내에 배치된다.
이 메모리 맵핑은 현재 보급되어 있는 동기형 DRAM(SDRAM)의 메모리 구성과 동작에 기초하여, 가장 효율적인 액세스를 할 수 있도록 정해져 있다. 예컨대, SDRAM은 복수의 뱅크를 가지며, 각 뱅크가 복수의 워드선 및 비트선과 이들의 교차 위치의 복수의 메모리 셀과 비트선에 대응하는 센스 앰프를 갖고, 복수의 뱅크가 독립적으로 액티브 동작을 실행할 수 있다. SDRAM에 있어서 액티브 동작이란, 로우 어드레스에 기초하여 워드선을 선택하여 센스 앰프를 활성화하는 일련의 동작이다. 또한, SDRAM의 리드 동작이란, 칼럼 어드레스에 기초하여 센스 앰프에서 증폭된 비트선 전위를 리드 데이터로서 입출력 단자에 출력하는 일련의 동작이며, 라이트 동작이란, 입출력 단자로부터 입력된 선택된 라이트 데이터를 칼럼 어드레스에 기초하여 선택된 비트선에 입력하는 일련의 동작이다.
SDRAM에 있어서 메모리 내의 어드레스 공간은, 뱅크 어드레스와 로우 어드레스로 선택 가능한 복수의 페이지 영역으로 구성되고, 각 페이지 영역은 칼럼 어드레스로 선택 가능한 비트군 또는 바이트군을 갖는다. 이 칼럼 어드레스에 의해 선택된 바이트군(또는 비트군)이 복수의 입출력 단자를 통해 입출력된다.
그리고, 일반적인 맵핑 방법에 의하면, 디지털 화상 데이터의 화소가 페이지 영역 내의 칼럼 어드레스로 선택 가능한 바이트군(또는 비트군)의 각 바이트(또는 비트)에 대응된다. 또한, 이 맵핑 방법에 의하면, SDRAM의 각 뱅크가 독립적으로 액티브 동작과 리드 또는 라이트 동작을 실행할 수 있기 때문에, 디지털 화상 데이터의 화소의 배치에 대응되는 복수의 페이지 영역은 화상 상의 상하 좌우로 인접한 페이지 영역이 다른 뱅크 어드레스에 대응하도록 배치된다. 예컨대, SDRAM이 4뱅크 구성의 경우, 홀수행에는 뱅크 어드레스 BA=0, 1의 페이지 영역을 교대로 배치하고, 짝수행에는 뱅크 어드레스 BA=2, 3의 페이지 영역을 교대로 배치한다. 이와 같 이 배치함으로써, 1프레임의 화상 데이터의 리드 또는 라이트를 행하는 경우, 다른 뱅크를 교대로 또한 시간적으로 오버랩하여 액티브 동작 및 리드 또는 라이트 동작을 실행할 수 있고, 단위 시간당 처리 가능한 화소수인 대역폭을 비약적으로 높일 수 있다.
일본 특허 공개 제2001-312885호 공보, 일본 특허 공개 평08-180675호 공보에는 화상 데이터를 기억하는 반도체 메모리에 있어서, 복수의 행에 동시에 액세스 가능하게 하여 액세스 효율을 높이는 것이 기재되어 있다.
디지털 화상 데이터 등을 저장하는 메모리 장치에서는 화상 데이터의 기록과 판독을 매트릭스형 화소의 배치 순으로 행하는 수평 액세스와, 매트릭스형 화소의 부분적인 직사각형 영역에 대하여 행하는 직사각형 액세스가 요구된다. 수평 액세스는, 예컨대 1프레임의 화상 데이터를 수평 스캔을 반복하여 기록하거나 판독하는 래스터 스캔 동작에 대응한다. 또한 직사각형 액세스는, 예컨대 MPEG 등의 인코드 동작에 있어서, 작은 직사각형 형상 블록의 화상 데이터를 판독하여 이동벡터를 구하거나 하는 동작이나, 디코드 동작에서의 화상 재생에 있어서, 블록의 화상 데이터를 판독하거나 기록하는 동작에 대응한다.
그러나 전술한 메모리 맵핑에 의해 메모리의 어드레스 공간 내에 화소의 화상 데이터가 기억되기 때문에 직사각형 액세스에 있어서 실효적인 대역폭의 저하가 문제가 된다. 첫째로, 뱅크 어드레스와 로우 어드레스로 선택되는 페이지 영역 내에 있어서, 칼럼 어드레스에 의해 바이트군, 즉 복수 바이트(또는 복수 비트)가 동시에 액세스된다. 그러나, 직사각형 액세스에 있어서 액세스하고 싶은 직사각형 화상 영역과 칼럼 어드레스에 의해 선택되는 복수 바이트(또는 복수 비트)가 일치하지 않는 경우는, 하나의 칼럼 어드레스에 의한 액세스에 있어서 쓸데없는 입출력 데이터가 발생한다. 둘째로, 직사각형 액세스에 있어서 액세스하고 싶은 직사각형 화상 영역과 어드레스 공간 내의 페이지 영역이 일치하지 않는 경우는 페이지 영역의 경계를 넘어 복수의 페이지 영역에 대하여 액세스하는 것이 요구되고, 복잡한 메모리 제어가 요구된다.
상기 첫째 및 둘째의 문제점은, 즉 액세스 대상의 직사각형 화상 영역이 페이지 영역과도 일치하지 않으면서 칼럼 어드레스로 선택되는 복수 바이트(또는 복수 비트)와도 일치하지 않는 경우는, 메모리 제어가 복잡해지고, 실효적인 대역폭의 저하를 초래한다.
따라서 본 발명의 목적은, 메모리 장치의 직사각형 액세스에 있어서의 상기한 문제점을 해결한 메모리 장치, 메모리 장치의 메모리 컨트롤러, 및 메모리 시스템을 제공하는 것에 있다.
상기의 목적을 달성하기 위해 본 발명의 제1 측면에 의하면, 어드레스에 의해 선택되는 복수의 메모리 단위 영역을 포함하는 메모리 셀 어레이와,
복수의 입출력 단자와,
상기 메모리 셀 어레이와 복수의 입출력 단자 사이에 설치되는 입출력 유닛을 포함하고,
상기 메모리 단위 영역 내에는 상기 복수의 입출력 단자에 대응하는 복수의 바이트 또는 비트의 데이터가 기억되며,
또한, 상기 메모리 셀 어레이와 입출력 유닛은 제1 동작 코드에 응답하여, 입력 어드레스와 상기 바이트 또는 비트의 조합 정보에 기초하여, 상기 입력 어드레스에 대응하는 제1 메모리 단위 영역과 그에 인접한 제2 메모리 단위 영역 내의 복수의 바이트 또는 비트에 액세스하며, 상기 액세스한 제1 및 제2 메모리 단위 영 역의 복수의 바이트 또는 비트로부터 상기 조합 정보에 기초하는 조합의 복수의 바이트 또는 비트를 상기 복수의 입출력 단자에 대응시키는 것을 특징으로 하는 메모리 장치이다.
상기 제1 측면에 의하면, 메모리 장치는 입력 어드레스와 함께 부여되는 제1 동작 코드에 응답하여, 입력 어드레스와 조합 정보에 기초하여, 임의의 조합의 복수 바이트(또는 복수 비트)의 데이터를 동시에 입출력할 수 있기 때문에, 메모리 단위 영역의 경계를 넘는 직사각형 액세스에 있어서 실효적인 대역폭의 저하를 방지할 수 있다.
상기의 목적을 달성하기 위해 본 발명의 제2 측면에 의하면, 메모리 시스템은 제1 측면의 메모리 장치와, 상기 제1 동작 코드와 함께, 상기 어드레스와 상기 바이트 또는 비트의 조합 정보를 상기 메모리 장치에 공급하여, 상기 메모리 장치 내의 제1 및 제2 메모리 단위 영역 내의 복수의 바이트 또는 비트에 액세스하는 메모리 컨트롤러를 포함한다.
상기의 목적을 달성하기 위해 본 발명의 제3 측면에 의하면, 제1 측면의 메모리 장치를 제어하는 메모리 컨트롤러에 있어서, 상기 제1 동작 코드와 함께, 상기 어드레스와, 상기 바이트 또는 비트의 조합 정보를 상기 메모리 장치에 공급하여, 상기 메모리 장치 내의 제1 및 제2 메모리 단위 영역 내의 복수의 바이트 또는 비트로 액세스한다.
메모리 장치에 대한 액세스 대상 영역이 입력 어드레스에 의해 선택되는 메 모리 단위 영역을 넘어 있어도, 바이트 또는 비트의 조합 정보를 이용하여 인접한 2개의 메모리 단위 영역 내의 임의 조합의 복수의 바이트 또는 비트로 액세스할 수 있다.
이하, 도면에 따라 본 발명의 실시예에 대해서 설명한다. 단, 본 발명의 기술적 범위는 이들 실시예에 한정되지 않고, 특허청구범위에 기재된 사항과 그 균등물까지 포함하는 것이다.
[화상 메모리의 메모리 맵핑과 문제점]
도 1은 본 실시예에 있어서 화상 메모리의 메모리 맵핑을 도시한 도면이다. 도 1에 있어서, 표시 장치(10)를 포함하는 화상 처리 시스템에 있어서의 표시 화상 데이터는 화상 메모리(15) 내에 기억된다. 표시 화상 데이터는 각 화소의 휘도 신호(Y)와 색차 신호(Ca, Cb)나, 각 화소의 RGB 계조 신호 등의 데이터로 구성되고, 각 신호는 예컨대 8비트(1바이트)의 데이터로 구성된다.
한편, 화상 메모리(15)는 일반적으로 SDRAM 등의 반도체 기판 상에 집적 회로가 형성된 대용량이며 고속의 반도체 메모리 장치로 이루어진다. 이러한 화상 메모리는 복수의 뱅크(Bank 0 내지 3)(도 1에서는 4개의 뱅크)로 구성되고, 각 뱅크(Bank 0)는 복수의 블록(BLK-0)을 가지며, 각 블록은 복수의 워드선(WL)과 비트선(BL)과 그 교차 위치의 메모리 셀(MC)을 갖는다. 메모리 셀은 도시하지 않았지만, 워드선에 게이트가 접속된 MOS 트랜지스터와 트랜지스터에 접속된 커패시터로 구성된다. 그리고, 도 1의 예에서는, 4개의 뱅크는 뱅크 어드레스 BA0-BA3에 대응 되고, 워드선은 로우 어드레스 RA0-RA7에 대응되고, 비트선은 칼럼 어드레스 CA0-CA127에 대응된다. 뱅크 어드레스(BA)와 로우 어드레스(RA)의 조합인 뱅크 내의 워드선이 선택되고, 칼럼 어드레스(CA)에 의해 비트선이 선택된다. 뱅크 어드레스(BA), 로우 어드레스(RA), 칼럼 어드레스(CA)에 의해 4바이트 BY0-3의 데이터가 액세스된다. 1바이트는 8비트로 구성되기 때문에, 1회의 액세스로 4바이트, 즉 4× 8=32비트의 데이터가 메모리의 입출력 단자에 관련되어 판독 또는 기록이 행해진다. 일반적으로, 상기의 1바이트 데이터(8비트 데이터)가 화소의 신호에 대응한다. 한번의 액세스로 4바이트 데이터를 입출력함으로써, 화상 메모리에 대한 단위 시간에 처리할 수 있는 화소수를 의미하는 대역폭을 크게 할 수 있다.
표시 화상 데이터에 대한 메모리 맵핑(12)에 의하면, 뱅크 어드레스(BA)와 로우 어드레스(RA)에 의해 특정되는 페이지 영역(14)이 행렬로 배치된다. 그리고, 하나의 페이지 영역(14)은 확대 영역(14E)으로 도시되는 바와 같이, 칼럼 어드레스 CA0-127로 특정되는 128개의 메모리 단위 영역을 가지며, 각 메모리 단위 영역은 4바이트 BY0-3의 데이터를 기억한다. 이 4바이트 BY0-3의 데이터가 메모리의 입출력 단자 DQ0-7, DQ8-15, DQ16-23, DQ24-31의 합계 32개의 입출력 단자를 경유하여 입출력된다. 이 각 바이트의 8비트 데이터가 화소의 신호 데이터에 대응한다.
상기의 메모리 맵핑(12)은 복수 뱅크 구성의 SDRAM 등의 화상 메모리(15)를 고속 동작시키는 데 적합하다. SDRAM은 뱅크 어드레스(BA)와 로우 어드레스(RA)와 함께 부여되는 액티브 커맨드에 응답하여, 선택된 뱅크 내의 선택된 워드선을 구동하고, 메모리 셀의 데이터를 비트선에서 판독하며, 비트선에 대응된 센스 앰프를 활성화하여 비트선 전위를 증폭하는 액티브 동작을 행하고, 그 후 칼럼 어드레스(CA)와 함께 부여되는 리드 커맨드에 응답하여, 선택된 비트선으로부터 데이터를 판독하는 리드 동작을 행한다. 또는, SDRAM은 액티브 동작 후에 칼럼 어드레스(CA)와 기록 데이터와 함께 부여되는 라이트 커맨드에 응답하여, 선택된 비트선에 기록 데이터를 기록하는 라이트 동작을 행한다. 리드 동작 또는 라이트 동작 후에 프리차지 커맨드에 의한 프리차지 동작이 행해지고, 재차 액티브 동작, 리드 또는 라이트 동작이 이루어진다. 이와 같이 SDRAM에서는, 각 뱅크가 독립적으로 액티브 동작, 리드 동작, 라이트 동작을 행할 수 있다.
도 1의 메모리 맵핑(12)에 의하면, 상하 좌우로 인접한 페이지 영역(14)에는 다른 뱅크 어드레스 BA0-3가 대응된다. 즉, 메모리 맵핑(12)의 홀수행에는 뱅크 어드레스 BA0, 1가 교대로 배치되고, 짝수행에는 뱅크 어드레스 BA2, 3가 교대로 배치된다. 또한, 메모리 맵핑(12)의 래스터 방향(행방향)에서는 로우 어드레스 RA0-7가 2개씩 반복하면서 증가되어, 메모리 맵핑(12)의 각 행은 4개의 로우 어드레스 RA0-3, RA4-7로 절첩되어 있다.
이와 같이 화상 상의 페이지 영역을, 메모리 상에 있어서, 동일 뱅크의 페이지 영역이 로우 방향과 칼럼 방향 중 어디에도 인접하지 않도록 할당하는 메모리 맵핑을 채용하면, 화상 메모리에의 대표적인 액세스인 수평 액세스, 즉 페이지 영역(14)을 행방향으로 이동하여 선택하는 액세스에서는 2개의 뱅크에서 동시에 액티브 동작과 리드·라이트 동작을 실행시키면서 액세스할 수 있으며, 액세스 효율을 높일 수 있다. 또한, 수직 방향으로 액세스하는 경우에도 마찬가지다.
도 2는 화상 메모리에 있어서 2개의 액세스를 도시한 도면이다. 도 2의 (A)의 수평 액세스는 영상의 프레임 화상의 입출력시에 많이 발생하는 액세스로, 화상을 좌측 위로부터 우측 아래를 향해 수평 방향(20)으로 액세스하는 래스터 스캔에 해당한다. 한편, 도 2의 (B)의 직사각형 액세스는 MPEG 등의 화상의 압축과 신장 처리에서 많이 발생하는 액세스로, 임의의 종횡비의 직사각형(22) 내를 좌측 위로부터 우측 아래를 향해 화살표(24)와 같이 액세스하는 동작에 해당한다. 직사각형 영역(22)은 MPEG의 이동벡터 추출 대상의 블록 등에 대응한다.
일반적으로, 화상 메모리를 사용하는 화상 시스템에서는, 프레임 메모리인 화상 메모리의 전송 레이트가 화면 표시 동작보다 빠르게 설정되고, 화상 메모리의 수평 액세스로 판독된 화상 데이터를 화면 표시하고 있는 동안에 직사각형 액세스에 의해 새로운 프레임 데이터를 작성하며, 끊기는 일 없이 프레임 데이터의 작성과 프레임 데이터의 출력을 행할 수 있도록 되어 있다. 이 때문에, 실제 화상 시스템에서는 수평 액세스와 직사각형 액세스가 혼재하게 된다.
수평 액세스에서는 수평 방향(20)으로 스캔되기 때문에, 인접한 뱅크를 동시에 액티브시키면서 효율적으로 메모리 엑세스를 행할 수 있다. 한편, 직사각형 액세스에서는 액세스되는 직사각형 영역(22)의 위치가 단일 뱅크를 넘지 않도록 하고, 뱅크 내의 페이지 영역을 더 넘지 않도록 함으로써, 뱅크 어드레스(BA)와 로우 어드레스(RA)를 지정하는 1회의 액티브 동작으로 직사각형 영역(22) 내의 데이터를 액세스할 수 있기 때문에, 수평 액세스와 마찬가지로 효율적인 메모리 엑세스를 행할 수 있다.
도 3은 수평 액세스의 과제를 도시한 도면이다. 전술한 메모리 맵(12)에 있어서 수평 방향(20)으로 액세스하는 수평 액세스의 타이밍 차트(30)가 나타나 있다. 이 타이밍 차트에서는 메모리 맵(12)의 4행째의 페이지 영역 BA0/RA4, BA1/RA4, BA0/RA5, BA1/RA5을 수평 액세스(도면 중의 20)하고 있을 때에, 자동 리프레시 커맨드(AREF)가 발생하고 있다. 타이밍 차트(30)에는 커맨드(CMD), 클록(CLK), 뱅크 어드레스(BA), 로우 어드레스(RA), 칼럼 어드레스(CA), 입출력 단자(DQ)가 도시되어 있다.
전제로서 버스트 길이(BL)는 4로 설정되어 있다. 액티브 커맨드(ACT)(32)로 BA0/RA4의 페이지 영역이 액티브 동작하고, 리드 커맨드(RD)(33)로 BA0/CA0의 판독이 지시되면 소정의 레이턴시(도면에서는 4 클록) 후에 4조의 32비트 데이터가 입출력 단자(DQ)로부터 4 클록 사이클로 연속하여 출력된다. 즉, 페이지 영역 BA0/RA4 내의 칼럼 어드레스 CA0 내지 CA3에 있어서 4조의 32비트 데이터가 4회에 걸쳐 연속 출력된다. 이 버스트 동작은 SDRAM이 규격상 요구되어 있는 동작이다. 도 1의 확대된 페이지 영역(14E)의 칼럼 어드레스 CA0 내지 CA3의 각 4바이트(32비트) 데이터가 4회에 걸쳐 연속 출력되는 것을 의미한다.
다음으로, 액티브 커맨드(ACT)(34)와 리드 커맨드(RD)(35)로 페이지 영역 BA1/RA4의 4바이트 데이터가 출력된다. 마찬가지로, 액티브 커맨드(ACT)(36)와 리드 커맨드(RD)(37)로 페이지 영역 BA0/RA5의 4바이트 데이터가, 액티브 커맨드(ACT)(38)와 리드 커맨드(RD)(39)로 페이지 영역 BA1/RA5의 4바이트 데이터가 각각 출력된다.
이 시점에서, 로우 어드레스 RA6를 지정하는 자동 리프레시 커맨드(AREF)(40)가 발생하면, 화상 메모리를 구성하는 SDRAM 메모리는 내장한 모든 뱅크, 4뱅크 BA0-3에서 리프레시 동작을 병렬로 실행한다. 즉, 4뱅크 내의 로우 어드레스 RA6의 워드선이 동시에 구동되고, 센스 앰프가 활성화되며, 재기록이 행해지고, 프리차지 동작이 행해진다. 이 리프레시 동작은 도 3의 메모리 맵(12) 중의 4개의 페이지 영역(31)에 대하여 행해지는 것을 의미한다. 이로 인해 리프레시 동작 기간(tREF) 동안, 수평 액세스(화살표 20)는 일시적으로 정지한다. 그리고, 리프레시 동작 기간(tREF) 후에, 재차 액티브 커맨드(ACT)(41)와 리드 커맨드(RD)(도시 생략)에 의해 다음 페이지 영역 BA0/RA6을 액세스함으로써, 수평 액세스를 재개한다.
자동 리프레시 커맨드(AREF)에 의한 리프레시 동작이 4뱅크 동시에 행해지기 때문에, 수평 액세스 동안에 리프레시 커맨드가 발생하면 수평 액세스가 일시적으로 중단하게 되고, 실효적인 대역폭이 좁아진다. 이것이 수평 액세스에 있어서의 과제이다.
도 4는 직사각형 액세스의 제1 과제를 도시한 도면이다. 도 4의 (A)에 수평 액세스의 예가 도시되고, 도 4의 (B)에 직사각형 액세스의 예가 도시된다. 모두 칼럼 어드레스(CA)로 선택되는 메모리 단위 영역(4바이트 영역)(45)의 경계를 넘는 액세스이다. 전술한 바와 같이, 일반적인 메모리 맵에 의하면, 뱅크 어드레스(BA)와 로우 어드레스(RA)로 특정되는 페이지 영역(14) 내는 칼럼 어드레스 CA0-127로 선택되는 복수의 메모리 단위 영역(45)으로 구분되고, 하나의 칼럼 어드레스(CA)에 의해 4바이트 BY0-3의 데이터가 동시에 액세스된다. 각 바이트의 8비트 데이터가 화소의 신호에 대응한다.
이로 인해, 수평 액세스에서는 비교적 낭비 없이 액세스가 행해지지만, 직사각형 액세스에서는 쓸데없는 데이터의 입출력이 발생하여 실효적인 대역폭이 저하된다.
도 4의 (A)의 수평 액세스에서는 영역(22A)을 액세스하는 경우, 페이지 영역 BA0/RA0을 지정하는 액티브 커맨드(ACT)에 이어서, 4개의 리드 커맨드(RD)가 칼럼 어드레스 CA0-3에 대해서 발행되고, 칼럼 어드레스 CA0-3 각각의 4바이트 데이터 BY0-3가 연속하여 입출력된다. 이 경우, 영역(22A)은 칼럼 어드레스 CA0의 바이트 BY2, 3에서 칼럼 어드레스 CA3의 바이트 BY0, 1까지를 포함하기 때문에, 칼럼 어드레스 CA0에 대응하는 4바이트의 입출력(DQ) 중 바이트 BY0, 1의 데이터는 필요하지 않고, 칼럼 어드레스 CA3에 대응하는 4바이트의 입출력(DQ) 중 바이트 BY2, 3의 데이터도 필요하지 않다. 따라서, 유효 출력 데이터는 12바이트/16바이트이다.
이에 대하여, 도 4의 (B)의 직사각형 액세스에서는 직사각형 영역(22B)을 액세스하는 경우, 페이지 영역 BA0/RA0을 지정하는 액티브 커맨드(ACT)에 이어서, 6개의 리드 커맨드(RD)가 칼럼 어드레스 CA0, 1, 4, 5, 8, 9에 대해서 발행되고, 이들의 칼럼 어드레스 CA0, 1, 4, 5, 8, 9 각각의 4바이트 데이터 BY0-3가 연속하여 입출력된다. 그러나, 직사각형 영역(22B)이 칼럼 어드레스로 선택되는 메모리 단위 영역(4바이트 영역)(45)의 경계와 일치하지 않으면서 4바이트 영역의 경계를 넘어 있기 때문에, 각 4바이트 데이터 BY0-3 중 각각의 반은 필요없는 데이터가 된다. 즉, 유효 출력 데이터는 12바이트/24바이트이다. 도 4의 (B)는 최악의 경우를 도시하고 있다.
이와 같이, 동일한 바이트 수의 데이터라도, 상기의 직사각형 액세스는 6회의 리드 커맨드(RD)에 의해 24바이트의 데이터를 입출력해야 하지만, 수평 액세스에서는 4회의 리드 커맨드(RD)에 의해 16바이트의 데이터를 입출력하면 좋다. 따라서, 하나의 칼럼 어드레스로 선택되는 4바이트 영역(메모리 단위 영역)(45)의 경계를 넘는 직사각형 영역의 액세스는 실효적인 대역폭이 저하된다. 이것이 직사각형 액세스의 제1 과제이다.
도 5는 직사각형 액세스의 제2 과제를 도시한 도면이다. 직사각형 액세스는 임의의 직사각형 영역에 대한 액세스이며, 직사각형 영역이 인접한 페이지 영역(14)의 경계(14BOU)를 넘는 경우가 있다. 도 5에는 직사각형 영역[22(A)]이 동일한 페이지 영역 BA1/RA6 내의 16바이트 영역의 경우와, 직사각형 영역[22(B)]이 4개의 인접한 페이지 영역 BA3/RA2, BA2/RA3, BA1/RA6, BA0/RA7에 걸치는 16바이트 영역의 경우가 도시되어 있다.
직사각형 영역[22(A)]의 경우는 타이밍 차트에 나타낸 바와 같이, 페이지 영역 BA1/RA6에 대한 1회의 액티브 커맨드(ACT)(도면 중 50)와, 칼럼 어드레스 CA6, 7, 10, 11에 대한 4회의 리드 커맨드(RD)(도면 중 52)를 발행하면, 16바이트의 데이터를 입출력할 수 있다.
한편, 직사각형 영역[22(B)]의 경우는 타이밍 차트에 나타낸 바와 같이, 페이지 영역 BA3/RA2, BA2/RA3, BA1/RA6, BA0/RA7에 대한 4회의 액티브 커맨드 (ACT)(도면 중 54)와, 칼럼 어드레스 CA127(BA3), CA124(BA2), CA3(BA1), CA0(BA0)에 대한 4회의 리드 커맨드(RD)(도면 중 56)를 발행하지 않으면, 16바이트의 데이터를 입출력할 수 없다. 즉, 직사각형 영역(22)이 인접한 페이지 영역을 포함하는 경우는, 다른 뱅크를 액티브 동작시키기 위해, 복수회의 액티브 커맨드(ACT)를 발행하고 각각의 뱅크 내의 칼럼 어드레스 리드(RD) 또는 라이트 커맨드(WR)를 발행해야 한다. 따라서, 단위 시간당으로 액세스할 수 있는 데이터가 줄고, 실효적인 대역폭이 좁아진다.
도 5의 직사각형 영역[22(B)]이 칼럼 어드레스로 선택되는 메모리 단위 영역(4바이트 영역)의 도중에서 구획되는 경우에는 도 4에서 도시한 제1 과제도 동시에 갖게 되어, 복수회의 액티브 커맨드를 필요로 하는 것에 추가로(제2 과제), 리드 커맨드에 대한 입출력 데이터(DQ) 내에 필요하지 않은 데이터가 포함됨으로써(제1 과제), 한층 더 실효적인 대역폭의 저하를 초래한다.
이상과 같이, 화상 메모리에 있어서 SDRAM의 구조상의 특성을 이용한 메모리 맵핑을 채용한 경우, 첫째로 수평 액세스 중의 리프레시 커맨드의 발생으로 액세스가 중단된다고 하는 과제, 둘째로 직사각형 액세스 영역이 칼럼 어드레스로 선택되는 메모리 단위 영역(4바이트 영역)의 경계를 넘는 경우에 입출력 데이터에 낭비가 생긴다고 하는 과제, 셋째로 직사각형 액세스 영역이 뱅크 어드레스로 특정되는 페이지 영역의 경계를 넘는 경우에 복수의 뱅크 액티브 커맨드를 발행할 필요가 생긴다고 하는 과제 등을 갖는다.
[본 실시예의 개략적인 설명]
이하, 이들 과제를 해결하는 구성과 동작에 대해서 개략적으로 설명한다.
본 실시예에서는 리프레시 동작에 기인하는 액세스의 중단, 직사각형 액세스에 의한 액세스 효율의 저하 등을 해결하는 것으로, 첫째로 수평 액세스 시에는 액세스 동작과 평행하여 백그라운드에서 리프레시 동작을 가능하게 하고, 둘째로 직사각형 액세스 시에 칼럼 어드레스로 선택되는 메모리 단위 영역(4바이트 영역)을 벗어난 영역 또는 메모리 단위 영역을 넘는 영역에의 액세스를 효율적으로 행하는 기능을 가능하게 하고, 셋째로 직사각형 액세스 시에 페이지 영역의 경계를 넘어 복수의 페이지 영역을 포함하는 직사각형 영역에의 액세스를 더 효율적으로 행하는 기능을 가능하게 한다.
도 6은 본 실시예에 있어서 전체의 동작을 도시한 도면이다. 전술한 바와 같이, 화상 메모리를 이용하는 화상 시스템에서는 화상 메모리에의 수평 액세스와 직사각형 액세스가 혼재하여 발생한다. 도 6의 예는 메모리 맵(12)의 1행째의 뱅크 어드레스 BA0, BA1의 페이지 영역에 대한 수평 액세스(20-1)와, 2행째의 페이지 영역 BA2/RA2에 대한 직사각형 액세스(22)와, 2행째의 뱅크 어드레스 BA2, BA3의 페이지 영역에 대한 수평 액세스(20-2)가 순서대로 발생하는 예이다. 직사각형 액세스(22)에서는 하나의 페이지 영역 BA2/RA2 내의 메모리 단위 영역(4바이트 영역)(45)의 경계를 넘은 직사각형 영역에 대하여 액세스가 행해지고 있다.
이 경우, 직사각형 액세스에서는 메모리의 임의의 뱅크에 액세스가 발생하지만, 수평 액세스에서는 소정의 일정 기간은 정해진 뱅크에만 액세스가 발생한다. 예컨대, 메모리 맵(12) 내의 1행째의 수평 액세스 동안은 뱅크 BA0, 1에만 액세스 가 발생하고, 2행째의 뱅크 BA2, 3에는 액세스는 발생하지 않는다. 반대로, 2행째의 수평 액세스 동안은 뱅크 BA2, 3에만 액세스가 발생하고, 1행째의 뱅크 BA0, 1에는 액세스는 발생하지 않는다.
그래서, 수평 액세스(20-1)에 있어서, 메모리 엑세스에 들어가기 전에 이후 잠시 액세스가 발생하지 않는 뱅크를 지정하는 백그라운드·리프레시 커맨드(BREN)를 발행하여, 액세스가 발생하지 않는 뱅크 정보 SA=2/3를 메모리에 통지한다. 즉, 백그라운드·리프레시 커맨드(BREN)에서 지정된 뱅크(SA)에는, 그 후의 자동 리프레시 동작을 허가한다. 따라서, 리프레시 동작이 지정된 뱅크 SA=2, 3에의 통상 액세스는 금지된다.
도 6의 수평 액세스(20-1)에서는 백그라운드·리프레시 커맨드(BREN)(도면 중 60)와 함께 그 후의 리프레시 동작을 허가하는 리프레시 뱅크 정보(SA)(도면 중 61)가 발행되고, 그 후 액티브 커맨드(ACT)로 페이지 영역 BA0/RA0이 액티브 동작되며, 리드 커맨드(RD)(BA0, CA0)로 칼럼 어드레스 CA0의 4바이트 데이터 BY0-3가 입출력 단자(DQ)에 출력된다. 마찬가지로, 액티브 커맨드(ACT)로 페이지 영역 BA1/RA0이 액티브 동작되며, 리드 커맨드(RD)(BA1, CA0)로 칼럼 어드레스 CA0의 4바이트 데이터 BY0-3가 입출력 단자(DQ)에 출력된다. 단, 도 6에서는 BL=4에 대응하는 4조의 4바이트 데이터의 출력은 생략되어 있다.
이 수평 액세스(20-1)의 기간 내에 있어서, 화상 메모리 내에서 백그라운드 리프레시 커맨드(BREN)에 의해 궤도되는 자동 리프레시 요청(도시 생략)이 발행되면, 뱅크 BA2, 3에 대한 리프레시 동작이 개시된다. 그러나, 수평 액세스는 뱅크 BA0, 1에 대한 액세스만 발행하면서, 또한 SDRAM에서는 다른 뱅크는 독립적으로 액티브 동작 가능하기 때문에 뱅크 BA2, 3에서의 리프레시 동작에 의해 수평 액세스가 방해되어 중단하는 경우는 없다.
다음으로, 도 6의 직사각형 액세스에서는 직사각형 영역(22)이 동일한 페이지 영역 BA2/RA2 내로, 칼럼 어드레스 CA0 내의 후반의 2바이트 BY2, 3와, 칼럼 어드레스 CA1의 전반의 2바이트 BY0, 1를 포함하고 있다. 이 경우, SDRAM의 일반적인 리드 커맨드에 의하면, 칼럼 어드레스 CA0, 1에 대하여 2회의 리드 커맨드(RD)를 발행해야 한다.
그러나, 본 실시예에서는 칼럼 어드레스 CA0(도면 중 63)에 대한 리드 커맨드(RD)(도면 중 62)를 발행하고, 그 액세스에서의 바이트 조합 정보(SB)(도면 중 64)를 공급함으로써, 바이트 조합 정보(SB)에 대응하는 4바이트를 자동적으로 입출력 단자(DQ)에 대응할 수 있다. 상기의 예에서는, 바이트 조합 정보(SB)로서 2바이트 시프트하는 바이트 시프트 정보 SB=2를 지정함으로써, 칼럼 어드레스 CA0의 4바이트 데이터 중 2 바이트 시프트한 바이트 BY2, 3의 데이터와, 그 옆의 칼럼 어드레스 CA1의 4바이트 데이터 중 처음의 2바이트의 바이트 BY0,1 데이터를 자동적으로 출력한다.
도 6의 직사각형 액세스에서는 페이지 영역 BA2/RA2에 대한 액티브 커맨드(ACT)에 이어서, BA2/CA0(도면 중 63)를 지정하는 리드 커맨드(RD)(62)가 바이트 조합 정보 SB=2(도면 중 64)와 함께 발행된다. 이 바이트 조합 정보 SB=2는 4 바이트 영역 내의 2 바이트 시프트한 바이트 BY2로부터 4바이트의 데이터의 조합을 의 미하고 있다. 또는, 이 바이트 조합 정보 SB=2는 4바이트 영역 내의 처음의 바이트 위치(스타트 바이트)가 BY2인 것을 의미하고 있다. 이에 응답하여, 화상 메모리는 칼럼 어드레스 CA0의 4바이트 데이터 중, 2바이트 시프트한(또는 스타트 바이트 BY2부터의) 바이트 BY2, 3의 데이터와, 칼럼 어드레스 CA1의 바이트 데이터 BY0, 1의 데이터를 4바이트의 입출력 단자(DQ)에 대응시켜 출력한다. 메모리 컨트롤러는 칼럼 어드레스 CA0, 1에 대한 리드 커맨드(RD)를 2회 발행할 필요는 없다. 더욱이, 4바이트의 입출력 단자(DQ)에는 모두 필요한 데이터만이 출력되고, 불필요한 데이터는 출력되지 않아 액세스 효율이 높아진다.
또한, 화상 메모리는 BA2/CA4를 지정하는 리드 커맨드(RD)가 조합 정보 SB=2와 함께 발행되면 칼럼 어드레스 CA4, 5 내 각각의 2바이트로 이루어지는 4바이트 데이터를 출력하고, BA2/CA8를 지정하는 리드 커맨드(RD)가 조합 정보 SB=2와 함께 발행되면 칼럼 어드레스 CA8, 9 내 각각의 2바이트로 이루어지는 4바이트 데이터를 출력하고, BA2/CA12를 지정하는 리드 커맨드(RD)가 조합 정보 SB=2와 함께 발행되면 칼럼 어드레스 CA12, 13 내 각각의 2바이트로 이루어지는 4바이트 데이터를 출력한다.
그 결과, 직사각형 액세스 영역(22)이 8개의 칼럼 어드레스 CA0, 1, 4, 5, 8, 9, 12, 13의 메모리 단위 영역(4바이트 영역)을 포함하고 있어도 리드 커맨드(RD)는 칼럼 어드레스 CA0, 4, 8, 12에 대하여 4회만 발행하여도 되고, 또한 입출력 단자에는 불필요한 데이터의 출력은 없으며, 액세스 효율을 2배로 높일 수 있다.
직사각형 액세스 후의 수평 액세스(20-2)에서는 메모리 맵(12)의 2행째의 페이지 영역에의 액세스이기 때문에, 당분간은 뱅크 BA0, 1에의 통상 액세스는 발생하지 않는다. 그래서, 전술한 바와 마찬가지로, 백그라운드·리프레시 커맨드(BREN)(도면 중 65)와 함께 리프레시 동작을 허가하는 뱅크 정보(SA)(도면 중 66)로서 SA=0/1이 지정되고, 그 후의 뱅크 BA2, 3에의 통상 액세스에 평행하여 뱅크 BA0, 1에의 자동 리프레시 동작이 허가된다.
이상과 같이, 수평 액세스(20-1, 20-2)에서는 통상 액세스 중에 백그라운드에서의 자동 리프레시를 허가하고, 직사각형 액세스에서는 백그라운드에서의 자동 리프레시를 허가하지 않는다. 그 결과, 수평 액세스(20-1)에서는 뱅크 BA0, 1에서의 통상 액세스 동작, 뱅크 BA2, 3에서의 리프레시 동작이 평행하여 가능하게 되고, 수평 액세스(20-2)에서는 뱅크 BA2, 3에서의 통상 액세스 동작, 뱅크 BA0, 1에서의 리프레시 동작이 평행하여 가능하게 된다. 이에 따라, 리프레시 동작에 의한 수평 액세스의 방해를 방지할 수 있고, 실효적인 대역폭의 저하를 억제할 수 있다.
또한, 직사각형 액세스에서는 백그라운드 리프레시 동작을 금지한다. 이에 따라, 임의의 영역에의 직사각형 액세스가 리프레시 동작에 의해 중단되는 것을 방지할 수 있다. 따라서, 전체의 실효적인 대역폭의 저하를 억제할 수 있다.
그리고, 직사각형 액세스에서는 바이트의 조합 정보(SB)를 리드 커맨드와 함께 지정함으로써, 리드 커맨드의 칼럼 어드레스(CA)를 선두로서 임의의 바이트의 조합으로 조합된 바이트 데이터를 4바이트의 입출력 단자(DQ)에 출력할 수 있다. 바이트의 조합 정보(SB)는 액티브 커맨드에 앞서 모드 레지스터를 설정하는 커맨드 와 함께 지정하는 것도 가능하다.
도 7은 본 실시예에 있어서 전체 동작의 다른 예를 도시한 도면이다. 이 예는 메모리 맵의 1행째의 페이지 영역에의 수평 액세스(20-1)와, 직사각형 액세스(22)와, 메모리 맵의 2행째의 페이지 영역에의 수평 액세스(20-2)가 순서대로 행해지는 예이다. 그리고, 직사각형 액세스(22)에서는 직사각형 영역(22)이 페이지 영역의 경계(14BOU)를 넘어 4개의 페이지 영역 BA3/RA2, BA2/RA3, BA1/RA6, BA0/RA7을 포함하고 있다.
수평 액세스(20-1, 20-2)에서는, 도 6과 마찬가지로, 백그라운드·리프레시 커맨드(BREN)와 함께 리프레시 뱅크 정보(SA)를 발행함으로써, 그 뱅크에 그 후의 자동 리프레시 동작을 허가하여 수평 액세스가 리프레시 동작으로 방해되는 것을 방지한다. 그리고, 복수 페이지 영역, 즉 복수 뱅크를 포함하는 직사각형 영역(22)에의 직사각형 액세스에서는 동시에 액티브 동작시키는 뱅크 정보로서 멀티 뱅크 정보(SA')를 액티브 커맨드(ACT)와 함께 발행한다. 이에 응답하여, 화상 메모리는 액티브 커맨드(ACT)와 함께 발행되는 어드레스 정보(BA, RA)를 좌측 위로 하여 멀티 뱅크 정보(SA')로 지정된 복수 뱅크의 페이지 영역을 동시에 액티브 동작한다. 그 결과, 1회의 액티브 커맨드(ACT)에 응답하여 복수 뱅크를 동시에 액티브 동작할 수 있고, 그 후에는 각 뱅크에 대한 리드 커맨드(RD)를 뱅크 어드레스(BA)와 칼럼 어드레스(CA)와 함께 발행함으로써, 각 뱅크 내의 칼럼 어드레스(CA)로 선택된 메모리 단위 영역(4뱅크 영역)의 4뱅크 데이터를 입출력 단자(DQ)에 출력할 수 있다.
도 7의 직사각형 액세스의 예에서는 액티브 커맨드(ACT)(도면 중 70)와 함께 좌측 위의 페이지 영역을 특정하는 어드레스 정보 BA3, RA2(도면 중 71)가 발행되고, 이와 동시에 멀티 뱅크 정보 SA'=0-3(도면 중 72)도 발행되고 있다. 이에 응답하여, 화상 메모리는 좌측 위의 페이지 영역의 뱅크 BA3를 선두로 하여, 멀티 뱅크 정보(SA')로 지정된 4뱅크 BA3, BA2, BA1, BA0를 동시에 액티브 동작하고, 이에 이어지는 4개의 리드 커맨드(RD)로 지정된 뱅크(BA)/칼럼 어드레스(CA)의 4바이트 데이터를 순서대로 출력한다. 라이트 커맨드의 경우도 마찬가지다. 도면 중에서는 4개의 리드 커맨드(RD)에 대하여, BA3/CA127, BA2/CA124, BA1/CA3, BA0/CA0가 공급되고, 각각의 4바이트 데이터가 출력되어 있다.
멀티 뱅크 정보(SA')가 「횡방향의 2뱅크」이면 액티브 커맨드(ACT)로 공급되는 뱅크 어드레스(BA)에 대응하는 좌측 위 뱅크의 우측의 뱅크도 동시에 액티브 동작되고, 「종방향의 2뱅크」이면 좌측 위 뱅크의 하측의 뱅크도 동시에 액티브 동작된다. 마찬가지로, 멀티 뱅크 정보(SA')가 「종횡 4뱅크」이면 좌측 위 뱅크의 우측, 하측, 우측 아래의 4개의 뱅크도 동시에 액티브 동작된다. 따라서, 멀티 뱅크를 자동적으로 액티브 동작시키기 위해서는, 메모리 맵의 각 행의 로우 어드레스(RA)가 어떻게 배치되어 있는지, 구체적으로는 로우 어드레스(RA)가 어떤 단위로 각 행을 반복하고 있는지의 정보(로우 어드레스 스텝 정보)를 미리 레지스터 등에 설정해 두는 것이 바람직하다.
도 7의 직사각형 액세스에 있어서, 액티브 커맨드(ACT) 시의 멀티 뱅크 정보(SA')에 추가하여, 도 6에서 설명한 바이트 조합 정보(SB)가 리드 커맨드(RD)와 함께 지정되면, 페이지 영역(14)의 경계(14BOU)를 넘으면서, 또한 칼럼 어드레 스(CA)로 선택되는 메모리 단위 영역(4뱅크 영역)의 일부 바이트의 조합에 대해서 자동적으로 입출력 단자(DQ)에 대응할 수 있다.
도 8은 본 실시예에 있어서 화상 처리 시스템의 구성도이다. 화상 처리 시스템은 메모리 컨트롤러에 대응하는 화상 처리 칩(80)과, 화상 처리 대상의 화상 데이터를 기억하는 화상 메모리 칩(86)으로 구성된다. 화상 처리 칩(80)과 메모리 칩(86)은 반도체 칩이며, 각각 단일 반도체 기판에 집적 회로가 형성되어 있다.
화상 처리 칩(80)은, 예컨대 MPEG의 화상 압축과 신장에 대응하는 인코더, 디코더 등의 화상 처리를 행하는 화상 처리 제어부(81)와, 화상 처리 제어부(81)로부터의 화상 영역의 지정을 포함한 메모리 엑세스 요구에 응답하여 화상 메모리 칩(86)으로의 액세스 제어를 행하는 메모리 제어부(82)를 포함한다. 메모리 제어부(82)는 수평 액세스에서의 백그라운드 리프레시 동작을 제어하는 백그라운드 리프레시 제어부(84)와, 직사각형 액세스에서 메모리 단위 영역(4바이트 영역) 내의 임의의 바이트의 조합의 액세스를 제어하는 바이트 경계 제어부(85)와, 직사각형 액세스에서 복수의 페이지 영역을 포함하는 액세스를 제어하는 멀티 뱅크 활성화 제어부(83)를 포함한다. 이들 제어에 의해 각각의 동작에 필요한 커맨드와 뱅크 어드레스, 로우 어드레스, 칼럼 어드레스, 바이트 조합 정보(SB), 리프레시 뱅크 정보(SA), 멀티 뱅크 정보(SA') 등을 화상 메모리(86)에 발행한다.
화상 메모리(86)는 메모리 코어(92) 내에 복수의 뱅크 Bank0-3를 가지며, 이들 메모리 코어(92)에 대하여, 주로 액티브 동작의 제어를 행하는 로우 제어부(87)와, 리드나 라이트 동작의 제어를 행하는 칼럼 제어부(90)와, 백그라운드 리프레시 제어부(89)를 포함한다. 로우 제어부(87)는 멀티 뱅크 활성화 제어부(88)를 포함하고, 칼럼 제어부(90)는 바이트 경계 제어부(91)를 포함한다. 또한, 각 뱅크(Bank 0-3) 내에는 로우 디코더(Row Dec)와, 칼럼 디코더(Col Dec)와, 메모리 어레이(MA)와, 센스 앰프군(SA)과, 메모리 어레이(MA)와 입출력 단자(DQ)를 대응하는 입출력 유닛(93) 등이 포함된다.
도 9는 본 실시예에 있어서 화상 메모리의 구성도이다. 화상 메모리 칩(86)은, 외부 단자군(93)에는 클록(CLK)에 추가하여 RAS, CAS, WE, CS로 이루어지는 커맨드 단자, 뱅크 어드레스 단자(BA0, BA1), 리프레시 뱅크 정보 단자(SA0, SA1), 복수개의 어드레스 단자(Add), 소정 비트수의 바이트 조합 정보 단자(SB), 소정 비트수의 데이터 입출력 단자(DQ), 그리고 도시하지 않은 멀티 뱅크 정보 단자(SA') 등이 포함된다.
또한, 전술한 바이트 경계 기능, 멀티 뱅크 엑세스 기능, 백그라운드 리프레시 기능에 필요한 단자(SB, SA', SA)는 공통의 특수 핀에 의해서도 실현 가능하다. 이들 정보는 다른 커맨드와 함께 공급되기 때문에, 공급 커맨드에 따라 특수 핀 입력 데이터를 대응하는 레지스터에 설정하면 좋다.
또한, 이들 단자(SB, SA', SA)는 사용되지 않는 단자로 실현 가능하다. 예컨대 리드 동작에 있어서, 로우 어드레스가 어드레스 단자 Add 0 내지 12에 입력되고, 칼럼 어드레스가 어드레스 단자 Add 0 내지 9에 입력된다고 하면, 칼럼 어드레스가 입력될 때 어드레스 단자 Add 10 내지 12는 사용되지 않는다. 따라서, 칼럼 어드레스 입력시에 사용되지 않는 어드레스 단자 Add 10 내지 12로부터 제어 데이 터(SB, SA', SA)를 입력할 수 있다.
이들 외부 단자군(93)에는 각각 버퍼(94)를 통해 내부 회로에 접속된다. 상기의 커맨드군은 커맨드 제어부(95)에 입력되고, 커맨드에 대응한 제어 신호가 내부 회로에 공급된다. 또한, 모드 레지스터 세트 커맨드에 응답하여, 커맨드 제어부(95)는 어드레스 핀(Add)에 공급되는 설정 데이터에 기초하여 모드 레지스터(96)에 소정의 설정값을 설정한다. 모드 레지스터(96)에 설정된 설정 정보는 내부 회로에 공급된다. 로우 제어부(87)는 멀티 뱅크 활성화 제어부(88)를 가지며, 또한 멀티 뱅크 활성화에 필요한 로우 어드레스 연산부(97)를 갖는다. 멀티 뱅크 활성화 제어부(88)로부터는 활성화해야 하는 뱅크에 액티브 펄스가 공급된다. 또한, 로우 어드레스 연산부(97)로부터는 활성화해야 하는 로우 어드레스가 각 뱅크에 공급된다. 그리고, 뱅크(Bank) 내에는 뱅크 내의 리프레시 대상의 로우 어드레스를 지시하는 리프레시 로우 어드레스 지시부(98)가 설치된다. 리프레시 로우 어드레스 지시부(98)는, 예컨대 리프레시 카운터를 가지며, 자동 리프레시 커맨드 발생시에 필요한 로우 어드레스를 생성한다. 뱅크 내의 구성은 전술한 바와 같다.
이하, 도 6 및 도 7에서 설명한 바이트 경계 기능과, 멀티 뱅크 액티브 기능과, 백그라운드·리프레시 기능에 대해서 순서대로, 화상 메모리와 메모리 컨트롤러를 상세하게 설명한다.
《바이트 경계》
도 10은 바이트 경계 기능을 설명하는 도면이다. 이 도면은 소정의 뱅크 내의 로우 어드레스(RA)와 칼럼 어드레스(CA)에 의해 선택되는 바이트군(또는 비트 군)을 도시하고 있다. 전술한 바와 같이, 이 예도 로우 어드레스(RA)와 칼럼 어드레스(CA)에 의해 4바이트의 데이터 영역(메모리 단위 영역)이 선택되고, 32비트의 입출력 단자 DQ0-31와 관련된다. 따라서, 로우 어드레스(RA)와 칼럼 어드레스(CA)의 교차 위치의 「0123」은 각각 바이트 BY0, BY1, BY2, BY3를 의미하고 있다. 또는, 4바이트 대신에 4비트이어도 좋다. 이 경우는, 로우 어드레스(RA)와 칼럼 어드레스(CA)에 의해 4비트의 데이터 영역(메모리 단위 영역)이 선택되고, 4비트의 입출력 단자 DQ0-3와 관련된다. 이하는, 간단하게 하기 위해 4바이트의 예로 설명한다.
도 10의 (A)는 종래예에 대응하고, 로우 어드레스(RA)와 칼럼 어드레스(CA)에 의해 4바이트의 데이터 영역이 일의로 결정되며, 항상 4바이트 영역(메모리 단위 영역)(100, 101)의 32비트가 입출력 단자 DQ0-31와 관련된다.
이에 대하여, 도 10의 (B)는 본 실시예에 대응하고, 로우 어드레스(RA)와 칼럼 어드레스(CA)로 특정되는 4바이트 영역을 선두로 하여, 임의의 바이트의 조합으로 입출력 단자 DQ0-31와 관련지을 수 있다. 도면 중, RA=0, CA=0으로 선택되는 4바이트 영역(100)은 모두 그대로 입출력 단자 DQ0-31와 관련되어 있다. 한편, RA=2, CA=1로 선택되는 4바이트 영역 내의 2바이트 시프트한 3바이트째부터 연속하는 4바이트의 영역(102)을 입출력 단자 DQ0-31와 관련짓고 있다. 이 경우는 RA=2, CA=1로 선택되는 4바이트 영역 내의 어느 바이트를 선두로 할지의 제1 정보(스타트 바이트)와, 그 선두 바이트로부터 업 방향으로 4바이트 연속인지 다운 방향으로 4바이트 연속인지 업방향으로 하나 간격인지 다운 방향으로 하나 간격인지 등의 제2 정보(빅 엔디안 또는 리틀 엔디안)가 리드 커맨드나 라이트 커맨드와 함께 부여된다.
그리고, 상기의 제1 및 제2 정보로 이루어지는 바이트 조합 정보에 기초하여, 화상 메모리의 입출력 유닛은 페이지 내의 다른 칼럼 어드레스(CA)에 대응하는 바이트 데이터 중 합계로 4바이트를 추출하고, 입출력 단자 DQ0-31에 관련된다. 그리고, 필요한 4바이트의 데이터를 32비트의 입출력 단자(DQ)로부터 1회로 입출력한다.
도 11은 바이트 경계 기능에 있어서 타이밍 차트를 도시한 도면이다. 이 예는 메모리 맵(12) 내의 4바이트(102)를 액세스하는 예이다. 우선, 액티브 커맨드(ACT)(도면 중 110)와 함께 뱅크 어드레스 BA=0와 로우 어드레스 RA=2가 부여되고, 대응하는 페이지 영역이 액티브 동작되며, 리드 커맨드(RD)(도면 중 111)와 함께 뱅크 어드레스 BA=0와 칼럼 어드레스 CA=1(도면 중 112)가 부여되며, 바이트의 조합 정보(113)로서 바이트 시프트량 또는 스타트 바이트를 나타내는 제1 정보 SB=2(도면 중 114)와 조합 패턴을 나타내는 제2 정보 BMR=UP(도면 중 115)가 더 부여된다.
화상 메모리는, 이 바이트 조합 정보(SB=2, BMR=UP)에 기초하여, 칼럼 어드레스 CA=1로 선택되는 4바이트 영역 후반의 2바이트 데이터 BY2, 3와, 칼럼 어드레스 CA=2로 선택되는 4바이트 영역 전반의 2바이트 데이터 BY0, 1를 각각 입출력 단자 DQ16-23, DQ24-31, DQ0-7, DQ8-15에 도시되는 바와 같이 대응시킨다. 이 대응은, 예컨대 도 9의 바이트 경계 제어부(91)에 의해 입출력 유닛(93)에서 행해진다. 따라서, 다른 칼럼 어드레스의 데이터임에도 불구하고, 리드 커맨드(RD)를 1회 부여하는 것만으로 임의의 조합의 4 바이트 데이터를 입출력 단자(DQ)에 대응시킬 수 있다. 라이트 커맨드의 경우도 마찬가지이다.
도 11에 있어서, 로우 어드레스(RA)와 칼럼 어드레스(CA)에 의해 선택되는 4바이트 영역은 4비트 영역이라도 마찬가지의 바이트 경계 기능을 적용할 수 있다. 이 경우는 입출력 단자 DQ0-3에 4비트 영역의 4비트 데이터가 대응된다.
도 12는 다른 맵핑에 대한 바이트 경계 기능을 설명하는 도면이다. 도 12에서는 간단하게 하기 위해 로우 어드레스(RA)와 칼럼 어드레스(CA)에 의해 선택되는 메모리 단위 영역이 4비트로 구성되어 있다. 도 12의 좌측에는 화상의 화소와 메모리 공간의 대응을 나타내는 메모리 맵핑(12-1, 12-2)이, 중앙에는 메모리의 논리 공간(15-1, 15-2)이, 그리고 우측에는 이들에 대응하는 타이밍 차트가 도시되어 있다.
중앙의 메모리 논리 공간(15-1, 15-2) 내에는 로우 어드레스(RA)와 칼럼 어드레스(CA)로 선택되는 4비트 영역 내의 4비트를 나타내는 「0-3」이 도시되고, 입출력 단자 DQ0-3에 대응한다. 또한, 좌측 메모리 맵핑(12-1, 12-2) 내에도 화상의 화소에 대응하는 메모리 논리 공간 내의 4비트를 나타내는 「0-3」이 도시되어 있다. 즉, 화상의 각 화소가 메모리의 입출력 단자 DQ0-3에 어떻게 대응되는지가 메모리 맵핑에 도시되어 있다.
화상 시스템에서는 화상의 화소를, 소정의 어드레스(BA, RA, CA)로 동시에 액세스되는 4비트의 입출력 단자 DQ0-3 중 어디에 대응시킬지는 시스템 설계자의 자유이다. 맵핑(12-1)은 도면 중 좌측으로부터 우측의 4개의 화소를 어드레스의 진행 방향(좌측으로부터 우측)과 동일한 방향의 입출력 단자 DQ0-3에 맵핑하는 예로, 빅 엔디안으로 불리고 있다. 한편, 맵핑(12-2)은 4개의 화소를 어드레스의 진행 방향과 역방향의 입출력 단자 DQ3-0에 맵핑하는 예로, 리틀 엔디안으로 불리고 있다.
그리고, 맵핑(12-1, 12-2)에 있어서 모두, 화상의 좌측 위 코너로부터 6화소부터 9화소까지의 4화소(123, 127)에 직사각형 액세스가 발생하고 있다. 그러나, 이들 맵핑은 메모리 내의 4비트와 역방향으로 맵핑되어 있기 때문에, 각각 다른 액세스가 요구된다. 즉, 맵핑(12-1)의 경우는 화살표(120)와 같이, 화상의 좌측으로부터 우측의 화소에 대하여, CA=1 내의 DQ1, CA=1 내의 DQ2, CA=1 내의 DQ3, CA=2 내의 DQ0의 순서로 데이터를 입출력해야 한다. 한편, 맵핑(12-2)의 경우는 화살표(124)와 같이, 화상의 좌측으로부터 우측의 화소에 대하여, CA=1 내의 DQ2, CA=1 내의 DQ1, CA=1 내의 DQ0, CA=2 내의 DQ3의 순서로 데이터를 입출력해야 한다.
이러한 다른 맵핑에 대응하기 위해 비트 조합 정보(SB, BMR)가 이용된다. 즉, 맵핑(12-1)의 경우는 도면 중 121과 같이, 리드 커맨드(RD)와 함께 BA=0, CA=1로 이루어지는 선두 어드레스와, SB=1, BMR=UP으로 이루어지는 비트 조합 정보가 발행되고, 이에 응답하여 도면 중 122와 같이, CA=1의 3비트 DQ1, 2, 3과 CA=2의 DQ0가 동시에 출력된다.
한편, 맵핑(12-2)의 경우는, 도면 중 125와 같이, 리드 커맨드(RD)와 함께 BA=0, CA=1로 이루어지는 선두 어드레스와, SB=1, BMR=DOWN으로 이루어지는 비트 조합 정보가 발행되고, 이에 응답하여 도면 중 126과 같이, CA=1의 3비트(DQ0, 1, 2)와 CA=2의 DQ3가 동시에 출력된다.
이와 같이, 빅 엔디안과 리틀 엔디안이라는 다른 메모리 맵핑에 대응하여 비트 조합 정보(SB, BMR)를 지정함으로써, 화상 메모리는 시스템 측의 메모리 맵핑에 대응하여 4비트 동시에 입출력할 수 있다. 이 비트 조합 정보의 종류를 늘림으로써, 여러 가지 맵핑에 대하여 유연한 4비트 액세스를 실현할 수 있다.
도 13은 도 12의 빅 엔디안과 리틀 엔디안을 설명하는 도면이다. 도 13은 좌우 양쪽 모두 출력 비트 폭이 4비트의 메모리를 사용하고 있는 화상 처리 시스템으로, 좌측이 메모리의 입출력 단자(DQ)의 DQ0에서 DQ3으로의 방향을 순방향으로서 취급하는 빅 엔디안의 시스템, 우측이 메모리의 DQ의 DQ3에서 DQ0으로의 방향을 순방향으로서 취급하는 리틀 엔디안의 시스템이다.
화면 상의 화소 위치 X0-X11는 모두 동일한 화면 상의 물리 위치를 나타내고 있다. 그리고, 각 화소 위치가 가지고 있는 「각 화소의 정보」는 양 시스템 모두 동일한 "A" 내지 "L"이며, 이것은 어느 시스템도 동일한 화상을 표시하고 있는 것을 의미하고 있다.
빅 엔디안의 시스템에서는 화소 위치 X0 내지 X3를 메모리의 어드레스 CA0의 DQ0 내지 DQ3에, 화소 위치 X4 내지 X7를 메모리의 어드레스 CA1의 DQ0 내지 DQ3에, 화소 위치 X8 내지 X11를 메모리의 어드레스 CA2의 DQ0 내지 DQ3에 대응시키고 있다.
한편, 리틀 엔디안의 시스템에서는 화소 위치 X0 내지 X3를 메모리의 어드레스 CA0의 DQ3 내지 DQ0에, 화소 위치 X4 내지 X7를 메모리의 어드레스 CA1의 DQ3 내지 DQ0에, 화소 위치 X8 내지 X11를 메모리의 어드레스 CA2의 DQ3 내지 DQ0에 대응시키고 있다.
즉, 양쪽의 시스템을 비교하면, 화상 처리 시스템 내의 화소 X0 내지 X3와 입출력 단자 T0 내지 T3의 대응 관계가 빅 엔디안과 리틀 엔디안에서 반대의 관계로 되어 있다. 따라서, 화소 위치(X0)의 화소 정보 "A"는 빅 엔디안의 시스템과 리틀 엔디안의 시스템에서는 각각 다른 메모리 셀의 물리 위치 CA0의 DQ0와 CA0의 DQ3에 저장되게 된다.
여기서, 화상 처리 시스템이 화소 위치 X5-X8의 화소 정보 "F-G-H-I"에 대한 직사각형 액세스(도면 중 130)를 발생한 경우, 빅 엔디안의 시스템과 리틀 엔디안의 시스템에서, 메모리는 각각 다른 메모리 셀의 물리 위치(132, 134)에 액세스해야 한다. 이로 인해 메모리에 공급되어야 하는 최소한의 정보는, 시스템이 빅 엔디안(Up)이거나 리틀 엔디안(Down)이라는 정보(BMR)와, 기점이 되는 비트가 포함되는 어드레스(CA)와, 기점이 되는 비트의 어드레스 내에서의 위치 정보(SB)의 3개이다.
상기의 빅 엔디안과 리틀 엔디안은 어드레스(RA, CA)로 액세스되는 메모리 단위 영역이 4바이트 영역(바이트군)의 경우도 동일하다. 도 14는 특수한 메모리 맵핑에 있어서 바이트 경계 기능을 설명하는 도면이다. 도 14도 도 12와 마찬가지로, 좌측에 메모리 맵핑(12)을, 중앙에 메모리 논리 공간(15)을, 그리고 우측에 대응하는 타이밍 차트를 도시한다.
도면 중, 좌측의 메모리 맵핑(12)에는 프레임 화상 내의 각 화소에 메모리의 어떤 비트를 할당하고 있는지의 상태를 도시하고 있다. 이 예에서는 1화소가 2비트 의 정보로 구성되어 있고, 예컨대 짝수 비트는 휘도, 홀수 비트는 색차를 나타내는 데이터를 유지하고 있다.
그래서, 그룹핑(Grouping)-1은 좌측 위 코너의 2화소째부터 5화소째에 있어서의 휘도 정보(짝수 비트)만을 모으는 직사각형 액세스이며, 그룹핑-2는 좌측 위 코너의 2화소째부터 5화소째에 있어서의 색차 정보(홀수 비트)만을 모으는 직사각형 액세스를 의미하고 있다. 이 경우, 그룹핑-1/2 모두, 화상의 좌측 위 코너의 2화소째부터 5화소째에 걸친 직사각형 액세스지만, 화살표(140)와 같은 휘도(짝수 비트)와 화살표(144)와 같은 색차(홀수 비트)의 차이가 있기 때문에, 타이밍 차트에 도시되는 바와 같이, 화상 처리 시스템으로부터 메모리에의 액세스와 입출력 단자(DQ)는 이하와 같아진다.
그룹핑-1: CA=0/SB=2로, BMR=AL(1비트 간격으로 4비트를 모으는 지정)(도면 중 141)의 액세스에 대하여, 입출력 단자(DQ0-3)에는 CA=1의 DQ0, CA=2의 DQ0, CA=0의 DQ2, CA=1의 DQ2가 대응된다(도면 중 142).
그룹핑-2: CA=0/SB=3으로, BMR=AL(1비트 간격으로 4비트를 모으는 지정)(도면 중 145)의 액세스에 대하여, 입출력 단자(DQ0-3)에는 CA=2의 DQ1, CA=1의 DQ1, 3, CA=0의 DQ3이 대응된다(도면 중 146).
이와 같이, 다른 칼럼 어드레스의 4비트 영역 내에서 동일한 DQ(예컨대, 그룹핑-1에서는 DQ0이나 DQ2)를 동시에 액세스하기 때문에, 그 데이터를 입출력 단자(DQ)에 전송하는 입출력 유닛에서, 일부 데이터에 대해서는 단자를 교체하는 처리, 즉 다른 DQ의 데이터 버스를 사용하는 처리가 요구된다.
도 15는 도 14의 특수한 메모리 맵핑을 설명하는 도면이다. 도 15는 입출력 비트폭이 4비트의 메모리를 사용하고 있는 화상 처리 시스템으로, 특히 메모리의 짝수 DQ를 각 화소의 휘도 정보에, 홀수 DQ를 각 화소의 색차 정보에 이용하는 화상 처리 시스템이다. 그리고, 도 15의 (A)는 휘도 정보만 액세스하는 경우를 도시하고, 도 15의 (B)는 색차 정보만 액세스하는 경우를 도시한다.
화면 상의 화소 위치 X0-X5는 좌우 양쪽 모두 동일한 화면 상의 물리 위치를 나타내고 있다. 또한, 각 화소 위치는 「휘도 정보」로서 "A, C, E, G, I, K"를, 「색차 정보」로서 "B, D, F, H, J, L"을 유지하고 있다.
여기서, 화상 처리 시스템이 화소 위치 X1-X4의 휘도 정보 "C-E-G-I"에 대한 직사각형 액세스(151)를 발생한 경우는, 도 15의 (A)와 같이, 메모리는 짝수 DQ에만 액세스하고(도면 중 153), 색차 정보 "D-F-H-J"에 대한 직사각형 액세스(152)를 발생한 경우는 도 15의 (B)와 같이, 메모리는 홀수 DQ에만 액세스(도면 중 154)해야 한다.
이로 인해, 메모리가 최소한으로 얻을 필요가 있는 정보는, 시스템이 휘도 정보를 짝수 DQ에, 색차 정보를 홀수 DQ에 유지하는 방식을 채용하고 있는지(1DQ 간격의 액세스가 필요한지의 여부)를 나타내는 정보 BMR=AL와, 기점이 되는 비트가 포함되는 어드레스(CA)와, 그 어드레스의 4비트 영역 내에 있어서 기점이 되는 비트의 위치 정보(SB)의 3개이다. 이들의 칼럼 어드레스(CA)와 비트 조합 정보(SB, BMR)에 대해서는 도 14에서 이미 설명하였다.
또한, 이 경우, 다른 어드레스로 동일한 DQ(예컨대, 그룹핑-1에서는 DQ0이나 DQ2)를 동시에 액세스하기 때문에, 그 데이터를 입출력 단자에 전송하는 입출력 유닛에서, 일부 데이터에 대해서는 다른 DQ의 데이터 버스를 사용하도록 단자를 교체하는 처리가 요구된다. 이로 인해, 메모리 내에 흰 원과 검은 원으로 도시한 복수의 스위치가 설치되고, 상기의 정보(SB, BMR)에 기초하여 이들 스위치가 제어된다.
도 16은 직사각형 액세스에 있어서 바이트 경계 기능을 도시한 타이밍 차트이다. 이 직사각형 액세스는 도 6의 직사각형 영역(22)을 액세스하는 예이다. 전술한 바와 같이, 직사각형 액세스에 있어서, 칼럼 어드레스(CA)로 선택되는 메모리 단위 영역(4바이트 영역 또는 4비트 영역) 내의 임의의 바이트 위치(또는 비트 위치)로부터 임의의 조합의 바이트 데이터(비트 데이터)를 판독하기 위해서는, 선두의 칼럼 어드레스(CA)와, 바이트의 조합 정보(166)로서 제1 정보(SB)와 제2 정보(BMR)가 필요하다.
도 16의 (A)에서는 이들의 바이트 조합 정보(SB, BMR)가 리드 커맨드(RD)와 함께 공급되는 예이다. 액티브 커맨드(ACT)(도면 중 161)로 뱅크 어드레스 BA=2와 로우 어드레스 RA=2가 공급되고, 이어지는 리드 커맨드(RD)(도면 중 162)와 뱅크 어드레스 BA=2, 칼럼 어드레스 CA=0와 함께, 선두 바이트(선두 비트) 위치를 나타내는 제1 정보 SB=2(도면 중 163)와, 바이트(비트)의 조합을 나타내는 제2 정보 BMR=V(도면 중 165)가 공급된다. 이에 따라, 도 6의 직사각형 영역(22)의 처음의 4바이트(4비트)가 입출력 단자(DQ)에 출력된다. 직사각형 영역(22)의 나머지 3조의 4바이트(4비트)도 마찬가지의 뱅크 어드레스(BA), 칼럼 어드레스(CA)와 바이트 조합 정보(SB, BMR)에 의해 특정된다.
도 16의 (B)에서는 바이트 조합 정보(SB, BMR) 중, 제2 정보(BMR)(도면 중 165)는 액티브 커맨드(ACT)가 발행되기 이전에, 레지스터 액세스 모드에서 모드 레지스터 세트 커맨드(EMRS)(도면 중 167)와 동시에 공급되고, 이 제2 정보(BMR)는 메모리 내의 모드 레지스터 내에 기록된다. 그리고, 그 후의 직사각형 액세스에서는 이 제2 정보(BMR)에 기초하여, 칼럼 액세스가 행해진다. 직사각형 액세스에서의 액티브 커맨드(ACT)(도면 중 161)와 리드 커맨드(RD)(도면 중 162)는 제2 정보(BMR)를 제외하여 도 16의 (A)과 동일하다.
상기의 제2 정보 BMR=V는 빅 엔디안(V=UP), 리틀 엔디안(V=DOWN), 휘도 정보를 짝수 DQ에 색차 정보를 홀수 DQ에 저장하는 경우(V=AL) 등의 여러 가지 정보를 가질 수 있다.
화상 시스템은 도 16의 (A), (B) 중 어느 하나의 방식으로도, 직사각형 액세스에 있어서의 바이트 경계 기능을 실현할 수 있다.
도 17은 바이트 경계 기능을 실현하기 위한 화상 처리 시스템의 구성도이다. 도 8과 마찬가지로, 화상 메모리(86)에 대하여 그것을 제어하는 메모리 제어부(82)가 설치되고, 메모리 제어부(82)로부터는 어드레스 정보(BA, RA, CA)와, 그에 의해 선택되는 4바이트 영역(또는 4비트 영역) 내의 선두 바이트(선두 비트)를 나타내는 제1 정보(SB)와, 바이트의 조합을 나타내는 제2 정보(BMR)로 이루어지는 바이트 조합 정보(비트 조합 정보)(166)와, 동작 커맨드(ACT, RD, EMRS)가 화상 메모리(86)에 공급된다.
전술한 바와 같이, 타이밍 차트(A)에서는 리드 커맨드(RD), 또는 도시하지 않은 라이트 커맨드(WT)와 동시에 바이트 조합 정보(SB, BMR)(도면 중 166)가 공급된다. 또한, 타이밍 차트(B)에서는 모드 레지스터 세트 커맨드(EMRS)(도면 중 167)와 동시에 제2 정보(BMR)가 리드 커맨드(RD), 또는 도시하지 않은 라이트 커맨드(WT)와 함께 제1 정보(SB)가 공급된다.
도 18은 바이트 경계 기능을 도시한 도면이다. 이 도면은 도 6의 직사각형 액세스와 동일하다. 도 10 이후에서는, 칼럼 어드레스(CA)로 선택되는 메모리 단위 영역이 4비트 영역인 경우를 예로 하여 설명하였다. 그러나, 전술한 바와 같이 메모리 단위 영역이 4바이트 영역인 경우도 마찬가지로 바이트 경계 기능에 의해 직사각형 액세스가 가능하다. 도 18은 그것을 새로이 도시하고 있다.
도 18의 예에서는 페이지 영역(14) BA=0, RA=0 내의 직사각형 영역(22)을 효율적으로 액세스하기 위해, 리드 커맨드(RD)(도면 중 167)와 함께, 뱅크 어드레스(BA), 칼럼 어드레스(CA)와, 제1 정보(SB)와 제2 정보(BMR)로 이루어지는 바이트 조합 정보(166)가 발행된다. 이에 응답하여, 직사각형 영역(22) 내의 4바이트의 데이터 BY0-3가 입출력 단자(DQ)에 동시에 출력된다. 라이트 커맨드(WT)의 경우도 마찬가지의 동작이 행해진다. 즉, 입출력 단자(DQ)의 4조의 4바이트 단자 BY0-3에는, 처음의 리드 커맨드(RD)에 대응하여 CA1, CA1, CA0, CA0 내의 각 바이트 데이터가 대응되고, 다음의 리드 커맨드(RD)에 대응하여 CA5, CA5, CA4, CA4 내의 각 바이트 데이터가 대응된다. 나머지의 리드 커맨드(RD)에 대응하는 칼럼 어드레스와 입출력 단자와의 대응은 도시되는 바와 같다.
이와 같이, 입출력 단자(DQ)가 4비트 폭의 경우도 32비트(4바이트) 폭의 경 우도, 동일하게 비트 경계, 바이트 경계의 기능을 실현할 수 있다.
도 19는 간소화된 바이트 경계 기능을 실현하는 화상 처리 시스템의 구성도이다. 전술한 바와 같이, 시스템 설계에 있어서, 빅 엔디안과 리틀 엔디안의 2 종류의 메모리 맵핑 중 어느 하나가 선택 가능하다. 이에 대응하여, 전술한 실시예에서는 바이트 조합 정보의 제2 정보(BMR)에 빅 엔디안용의 BMR=UP과, 리틀 엔디안용의 BMR=DOWN을 지정하여 바이트 시프트한 직사각형 액세스라도, 화상 상의 화소와 메모리 공간 내에서의 바이트 위치가 대응되도록 하였다.
도 19의 예는, 메모리 맵핑(12)에서는 리틀 엔디안에 대응한 구성에 설계되는 경우, 메모리 공간(15) 내에서는 빅 엔디안에 대응하는 바이트 경계 기능밖에 대응할 수 없어도, 화상 메모리(86)와 메모리 제어부(82) 사이에 입출력 단자군의 교체 수단(190)을 설치함으로써, 시스템 전체가 리틀 엔디안에 대응한 바이트 경계 기능을 실현할 수 있다.
즉, 시스템측의 메모리 맵핑이 리틀 엔디안인 경우는, 교체 수단(190)을 설치하여 양자의 입출력 단자군의 0부터 3을, 3부터 0으로 교체하도록 한다. 이 결과, 화상 메모리로부터 보면 시스템측이 빅 엔디안 대응으로 간주하기 때문에, 제2 정보 BMR=UP만으로 대응하는 메모리의 구성이라도 리틀 엔디안의 바이트 경계 기능을 실현할 수 있다.
도 20은 도 19의 간소화된 바이트 경계 기능을 실현하는 화상 처리 시스템을 설명하는 도면이다. 도 20의 (1)은 화상 처리 시스템(80)과 화상 메모리(86)가 서로의 입출력 단자 T0-T3를 교체하지 않고 접속하는 접속 유닛(200)으로 접속된 예 이며, 도 20의 (2)는 교체 접속하는 접속 유닛(190)으로 접속된 예이다. 어느 하나의 경우도, 화상 메모리(86)는 빅 엔디안 대응의 비트 경계 기능만을 가지며, 화상 처리 시스템(80)은 입출력 비트 폭의 4비트의 데이터를, 화소 위치 X0-X3를 입출력 단자 T3-T0에 대응시키는 리틀 엔디안 타입이다.
도 20의 (1)에 있어서, 어드레스 단위의 액세스를 하고 있는 경우 (A)에서는 화면 상의 화소 위치 X0-X7와 메모리측의 어드레스 CA가 1대1(X0-X3과 CA=0, X4-X7과 CA=1)로 대응하고 있기 때문에 문제없다. 그러나, 신호 SB를 지정하여 비트 단위의 액세스를 하고자 하는 경우 (B)는 빅 엔디안 대응의 비트 경계 기능(BMR=UP만) 밖에 존재하지 않는 메모리에서는 화소 위치의 시프트[X1-X4(BCDE), 도면 중 200]와 메모리 셀의 물리 위치의 시프트(CBAH, 도면 중 201)의 관계가 일치하지 않고, 잘못된 데이터 CBAH가 전송되어 버린다. 이 경우는 리틀 엔디안 대응의 비트 경계 기능(BMR=DOWN)이 있으면, 메모리 셀 상의 BCDE를 출력할 수 있다. 그러나, 빅 엔디안과 리틀 엔디안의 양쪽 모두에 대응 가능한 비트 경계 기능을 메모리에 갖게 하는 것은 비용 상승을 초래한다.
그래서, 도 20의 (2)과 같이, 시스템 측과 메모리 측에서 입출력 단자를 크로스 접속하는 접속 유닛(190)을 설치하여, 화상 상의 화소 X0-X3가 메모리 셀 상에서도 DQ0-DQ3에 대응하도록 하면, 리틀 엔디안의 화상 처리 시스템(80)이 외관상, 메모리(86)로부터는 빅 엔디안의 시스템으로 보이도록 되기 때문에 화소 위치의 시프트(200)와 메모리 셀의 물리 위치의 시프트(202)의 관계가 일치하고, 빅 엔디안 대응의 비트 시프트한 액세스를 행하여도 정상적인 데이터 BCDE를 전송할 수 있다.
이상과 같이, 교체 접속하는 크로스 변환 가능한 접속 유닛(190)을 이용함으로써, 빅 엔디안 대응의 비트 경계(또는 바이트 경계) 기능 밖에 없는 메모리라도, 리틀 엔디안 대응의 화상 처리 시스템에 대하여 비트 경계(또는 바이트 경계) 기능을 실현할 수 있다. 또한, 빅 엔디안과 리틀 엔디안의 양쪽에 대응하는 비트 경계(또는 바이트 경계) 기능을 갖는 메모리의 경우는 교체 접속하지 않는 접속 유닛(200)으로 메모리와 시스템을 접속하면 좋다.
도 21은 바이트 경계 기능을 갖는 메모리 구성의 개념을 도시하는 도면이다. 이 메모리는 1 이상의 임의수(Nb)의 비트로 비트군을 구성하고, 상기 임의수(Nb)의 비트의 2 이상의 배수(N)의 입출력 단자(Nb x N)를 가지며, 상기 소정의 배수(N)보다 많은 복수의 비트군(Ng)으로 전체 기억 영역(Nb x Ng)을 구성하고, 제1 동작 코드에 동기하여 복수의 비트군(Ng) 내의 임의의 하나를 선택할 수 있는 어드레스 정보를 수취하며, 상기 어드레스 정보로 선택된 임의의 하나의 비트군을 기점으로 소정의 규칙에 따라 배수(N)와 같은 수의 비트군을 선택하고, 상기 선택된 비트군에 속하는 복수의 비트(Nb x N)는 입출력 단자(Nb x N)를 통해 동시에 기억 정보의 교환을 행한다.
상기의 임의수의 비트(Nb)란, 비트 단위와 바이트 단위의 양쪽 모두를 포함하는 개념으로, 전술한 실시예에 따르면 Nb=8(1바이트)이다. 또한, 배수(N)란 하나의 어드레스로부터, 임의수의 비트(Nb)의 몇 배의 데이터를 액세스할지를 표현한 것으로, Nb× N이 입출력 단자수에 대응한다. 전술한 실시예에 따르면, N=4로, 4바 이트분의 입출력 단자수를 갖는다. 즉, 보다 정확하게는 입출력 단자수는 Nb× N이 되고, 입출력 단자수=32(=8x4)가 된다.
또한, 복수(Ng)의 비트군의 Ng란, 메모리가 갖는 모든 비트 또는 바이트의 집단(Nb 비트의 비트군)의 수로, 전체 기억 영역의 용량을 Nb로 나눈 숫자와 등가이다. 통상, 한번에 입출력되는 비트군의 수인 배수(N)보다 훨씬 큰 숫자가 된다. 예컨대, 64M 비트의 메모리에 있어서, Nb=1이면 Ng=64M, Nb=8이면 Ng=8M이다. 지금까지의 예에 따라, 64M 비트의 메모리로 생각하면 Nb=8로 Ng=8M이 된다. 임의의 하나의 비트군을 선택할 수 있는 어드레스 정보란, 지금까지의 예를 따르면 어드레스(BA, RA, CA)와 기점이 되는 비트를 나타내는 정보(SB)이며, 어드레스(BA, RA, CA)에 의해 4바이트로 추린 데이터를, 또한 기점이 되는 바이트를 나타내는 정보(SB)에 의해 기점이 되는 바이트로 더 한정하고 있었다.
규칙에 따라 배수(N)와 같은 수의 비트군을 선택이란, 지금까지의 예에 따르면, 기점이 되는 바이트와 동시에 액세스되는 바이트의 조합에 관한 정보(BMR)에 따라 복수 바이트를 선택하는 것으로, N=4이므로 BMR=Up으로 하면 어느 임의의 바이트로부터 Up 방향으로 연속한 4바이트를 동시에 액세스하게 된다.
이 임의의 하나의 비트군(지금까지의 예에 따르면 1바이트)을 선택할 수 있는 정보(BA, RA, CA)와, 기점이 되는 바이트의 정보(SB)와 동시에 액세스되는 바이트의 조합에 관한 정보(BMR)에 의해 선택된 4바이트는 32비트(=NbxN)의 입출력 단자를 통해 화상 처리 시스템으로 액세스된다.
도 21에 도시된 메모리 장치는 메모리 용량이 64비트이다. 따라서, Nb=8비트 로 이루어지는 비트군이 Ng=8군 존재한다. 그리고, 어드레스(BA, RA, CA)와 스타트 바이트(SB)가 합계 3비트로 구성되고, 따라서 Ng=8의 비트군으로부터 하나의 비트군이 선택된다. 또한, 동시에 액세스되는 N=4군의 비트군은 조합 정보(BMR)에 의해 결정된다. 따라서, 도 21의 예에서는 어드레스(BA, RA, CA)와 스타트 바이트(SB)로 제2군이 선택되고, 조합 정보(BMP=UP)에 의해 제2군으로부터 연속하는 4군(2 내지 5군)이 동시에 입출력 단자로부터 액세스된다.
만약, 동일한 64비트의 메모리 용량에 있어서, 어드레스가 1 비트 증가하면 Nb=4비트 단위의 비트군이 Ng=16군 존재하고, 입출력 단자가 Nb× N=32인 채로 하면 소정의 배수 N=8이 되며, 조합 정보(BMR)에 의해 다른 7개의 비트군이 선택되게 된다.
[바이트 경계 기능을 갖는 메모리]
다음으로, 바이트 경계 기능을 갖는 화상 메모리의 구성을 상세히 설명하다. 바이트 경계 기능은 칼럼 어드레스로 선택할 수 있는 메모리 단위 영역(4바이트 영역)의 경계를 넘어 4바이트의 데이터에의 액세스를 가능하게 한다. 이로 인해, 메모리 내에서는 필요한 4바이트의 데이터를 입출력하는 기능이 부가된다. 이하의 설명에서는, 간단하게 하기 위해 바이트 조합 정보로서 제1 정보(SB)(스타트 바이트 또는 스타트 비트라고 칭함)만이 부여되는 경우를 예로 하여 설명한다. 제2 정보(BMR)는 UP 고정의 예이다.
[내부 칼럼 제어예]
우선, 메모리 내부의 칼럼 제어의 구체적인 예를 몇 개 설명한다.
도 22는 바이트 경계 기능을 갖는 화상 메모리의 제1 예를 도시한 도면이다. 또한, 도 23은 도 22의 동작을 설명하는 도면이다.
도 22에 있어서, 도 9의 화상 메모리와 동일한 구성 요소에는 동일한 인용 번호가 부여되어 있다. 어드레스 신호(A)는 멀티플 방식으로 입력되고, 로우 어드레스(RA)는 로우 어드레스 버퍼(94R)에, 칼럼 어드레스(CA)는 칼럼 어드레스 버퍼(94C)에 각각 래치된다. 로우 제어부(87)는 선택된 메모리 뱅크(92)의 로우 디코더(223)에 로우 어드레스(RA)를 공급한다. 또한, 칼럼 버퍼(94C) 내의 칼럼 어드레스(CA)도 선택된 메모리 뱅크 내의 칼럼 디코더(222)에 공급된다.
메모리 뱅크(92)는 4개의 메모리 블록인 바이트 영역 Byte0-3으로 분할되고, 각 바이트 영역은 메모리 셀 어레이(224)와, 제2 앰프(225)와, 한 쌍의 데이터 래치(226, 227)와, 데이터 버스 스위치(228)를 가지며, 1회의 액세스로 1바이트(8비트)의 데이터를 입출력한다. 4개의 바이트 영역으로부터 합계로 32비트(4바이트)의 데이터가 입출력 버스(I/O bus)에 입출력된다. 입출력 버스(I/O bus)는 32비트의 입출력 단자 DQ0-31에 버퍼를 통해 접속된다. 또한, 도 22에는 하나의 메모리 뱅크(92)만 도시되고, 나머지 3개의 메모리 뱅크는 생략되어 있다.
칼럼 제어부(90)는 칼럼 디코더(222)의 동작 타이밍을 제어하는 칼럼 타이밍 컨트롤러(220)와, 데이터 래치 회로(226, 227)와 데이터 버스 스위치(228)를 제어하는 데이터 래치 셀렉터(221)를 갖는다. 데이터 래치 셀렉터(221)는 칼럼 어드레스(CA)와 스타트 바이트(SB)에 따라, 각 바이트 영역(Byte0-3) 내의 데이터 래치 회로(226, 227)와 데이터 버스 스위치(228)를 제어한다.
도 23에 도시되는 바와 같이, 로우 어드레스 RA0의 페이지 영역 내에 있어서, 칼럼 어드레스 CA0의 2바이트째에서 칼럼 어드레스 CA1의 1바이트째까지의 4바이트 데이터를 액세스하는 것으로 가정한다. 따라서, 스타트 바이트 SB=1이다.
도 23의 메모리 칩(86)에는 메모리 공간과 입출력 단자(DQ)와의 관계가 도시되어 있다. 도 23에서는, 칼럼 어드레스(CA)에 의해 한번에 선택되는 메모리 단위 영역의 4바이트 데이터를 Q00 내지 Q15로 도시하고 있다. 즉, 칼럼 어드레스 CA0에 의해 4바이트 데이터 Q00-03가 선택되고, 칼럼 어드레스 CA1에 의해 4바이트 데이터 Q04-07가 선택된다.
도 23의 우측에는 타이밍 차트가 도시되어 있다. 우선, 액티브 커맨드(ACT)와 함께, 도시하지 않은 뱅크 어드레스와 함께 로우 어드레스 RA0가 부여되고, 대응하는 뱅크 내의 워드선이 구동되어 센스 앰프가 활성화된다. 그 후, 리드 커맨드(RD)와 함께 칼럼 어드레스 CA0와 뱅크 조합 정보로서 스타트 바이트 신호 SB=1가 부여된다. 이에 응답하여, 선택된 메모리 뱅크(92) 내의 칼럼 디코더(222)는 칼럼 어드레스 CA0에 대응하는 내부 디코드 신호(222D)와, CA0를 +1 증가한 CA1에 대응하는 내부 디코드 신호(222D)를 시분할로 4개의 바이트 영역 Byte0-3에 출력하고, 각 바이트 영역에서는 CA0과 CA1에 대응하는 2조의 1바이트 데이터를 데이터 래치 회로(226, 227)에 캐시한다. 그리고, 데이터 버스 스위치(228)는 각 바이트 영역에서의 CA0와 SB1의 조합에 따라 선택되는 1바이트 데이터를 어느 하나의 데이터 래치 회로(226, 227)로부터 입출력 버스(I/Obus)에 출력한다. 즉, CA0의 데이터 Q01, Q02, Q03와, CA1의 데이터 Q04가 입출력 버스(I/Obus)에 출력된다. 라이트 동 작일 때는, 입출력 버스로부터 어느 하나의 데이터 래치 회로에 1바이트의 데이터가 입력된다.
즉, 칼럼 디코더는 1회의 액세스로 각 바이트 영역에서 1바이트분의 칼럼선(비트선)을 선택한다. 리드 동작에서는 각 바이트 영역의 메모리 셀 어레이(224)로부터 1바이트분의 데이터가 선택되어 제2 앰프(225)로 증폭되어 데이터 래치 회로(226, 227)에 캐시된다. 이 때, 각 바이트 영역에서는 동일한 칼럼 어드레스(CA)에 맵핑된 메모리 셀에 액세스한다. 칼럼 어드레스로 선택할 수 있는 메모리 단위 영역(4바이트 영역)의 경계를 넘는 바이트 경계 액세스를 실현하기 위해, 칼럼 디코더(222)는 1회째의 액세스 종료 후에 재차 칼럼선의 선택을 행한다. 이 칼럼선의 어드레스는 전회의 어드레스 CA0보다 1번지 진행한 CA1이다. 메모리 셀 어레이(224)로부터 판독된 1바이트의 데이터는 제2 앰프로 증폭되고, 1회째의 액세스와는 다른 데이터 래치 회로(227)에 캐시된다.
따라서, 데이터 래치 회로(226, 227)에는 1회의 액세스에서 입출력 단자(DQ)가 필요로 하는 4바이트의 2배인 8바이트분의 데이터가 존재하기 때문에, 데이터 버스 스위치(228)는 각 바이트 영역의 데이터 래치 회로에 캐시된 2바이트분의 데이터로부터 절반의 1바이트분의 데이터를 선택하고, 입출력 버스(I/Obus)에 전송한다. 데이터 래치 셀렉터(221)는 칼럼 어드레스 CA0와 스타트 바이트 신호 SB=1에 따라, 각 바이트 영역 내의 데이터 래치 회로(226, 227)에의 캐시 동작과, 데이터 버스 스위치(228)에서의 스위치 동작을 제어한다. 이에 의해, 각 바이트 영역으로부터 다른 칼럼 어드레스 CA0, CA1에 대응하는 바이트 데이터를 입출력 버 스(I/Obus)에 전송할 수 있다.
그 결과, 도 23에 도시되는 바와 같이, 입출력 버스(I/Obus)를 경유하여 입출력 단자(DQ)에는 4바이트의 데이터 Q04, Q01, Q02, Q03가 각각 전송된다. 이와 같이, 제2 앰프(225), 데이터 래치 회로(226, 227), 데이터 버스 스위치(228)로 입출력 유닛(93)이 구성된다.
도 24는 바이트 경계 기능을 갖는 화상 메모리의 제2 예를 도시한 도면이다. 또한, 도 25는 도 24의 동작을 설명하는 도면이다.
도 24에 있어서, 도 22와 다른 구성은 메모리 뱅크(92) 내의 각 바이트 영역(Byte0-3)에 있어서, 메모리 셀 어레이가 2개의 어레이(224-0, 224-1)로 분할되어, 각각 제2 앰프(225), 데이터 래치 회로(226, 227)가 설치되어 있다. 한쌍의 메모리 셀 어레이(224-0, 224-1)는 칼럼 어드레스(CA)가 짝수(CA[0]=0)와, 홀수(CA[0]=1)에 대응하고 있다. 그리고, 칼럼 디코더(222)는 부여된 칼럼 어드레스 CA0로부터, CA0와 CA1의 디코드 신호를 시분할로 출력하는 것이 아니라, 이들 2개의 디코드 신호(222D0, 222D1)를 동시에 분할된 한 쌍의 메모리 셀 어레이(224-0, 224-1)에 출력한다. 이에 응답하여, 한 쌍의 메모리 셀 어레이는 각각 1바이트 데이터를 데이터 래치 회로(226, 227)에 출력한다. 이에 의해, 각 바이트 영역은 공급된 칼럼 어드레스(CA)와 +1 증가한 칼럼 어드레스의 2바이트의 데이터를 동시에 캐시하게 된다. 그리고, 데이터 래치 셀렉터(221)가 칼럼 어드레스(CA)와 스타트 바이트 신호(SB)에 따라 데이터 버스 스위치(228)의 전환을 제어하고, 필요한 1바이트 데이터를 입출력 버스에 전송한다. 4개의 바이트 영역이 각각 1바이트씩의 데 이터를 출력하고, 합계로 4바이트의 데이터가 입출력 단자(DQ)로부터 출력된다.
라이트 커맨드의 경우는, 입출력 단자(DQ)에 공급된 4바이트의 데이터가 칼럼 어드레스(CA)와 스타트 바이트 신호(SB)에 따라 전환 제어된 데이터 버스 스위치(228)를 통해, 2개의 데이터 래치 회로(226, 227)에 저장되고, 2개의 메모리 셀 어레이(224-0, 224-1)에 기록된다.
도 25에는 스타트 바이트 신호 SB=1, 버스트 길이 BL=4의 경우의 동작이 도시되어 있다. 리드 커맨드(RD)와 동시에 칼럼 어드레스 CA0와 스타트 바이트 신호 SB=1가 공급되고, 버스트 길이 BL=4가 모드 레지스터에 설정되어 있다고 하면, 칼럼 디코더(222)가, 칼럼 어드레스 CA0와 그것을 +1 증가한 CA1에 대응하는 디코드 신호(222D0, 1)를 동시에 각 바이트 영역(Byte0-3)에 공급한다. 이에 응답하여, 각 바이트 영역의 한 쌍의 메모리 셀 어레이(224-0, 224-1)가 제2 앰프(225)를 통해, 각각 1바이트의 데이터를 데이터 래치 회로(226, 227)에 출력한다. 이에 의해, 각 바이트 영역으로부터 2바이트의 데이터가 캐시된다. 그리고, 데이터 래치 셀레터(221)가 칼럼 데이터(CA)와 스타트 바이트 신호(SB)에 기초하여, 각 바이트 영역에 있어서 어느 하나의 데이터 래치 회로의 데이터를 선택할지의 제어 신호(S221)(4개의 바이트 영역에 1비트씩 합계 4비트)를 데이터 버스 스위치(228)에 공급하고, 데이터 버스 스위치 내의 스위치 동작을 제어한다. 그 결과, 처음의 사이클에서는 4바이트의 데이터 Q04, Q01-03가 입출력 버스(I/Obus)에 전송된다.
도 25에서는 버스트 길이 BL=4이기 때문에, 칼럼 타이밍 컨트롤러(220)의 제어에 따라서 칼럼 디코더(222)는 칼럼 어드레스 CA2, CA3에 대응하는 디코드 신 호(222D0, 222D1)를 발행하고, 8바이트의 데이터를 데이터 래치 회로(226, 227)에 더 캐시한다. 데이터 래치 회로(226, 227)는 CA0, CA1의 8바이트 데이터도 유지해야 하기 때문에, 각 데이터 래치 회로는 각각 2바이트의 데이터를 유지할 수 있는 구성으로 되어 있다. 그 결과, 새롭게 8바이트 데이터 Q08-Q15가 데이터 래치 회로에 래치된다. 그리고, 전의 클록 사이클에서 유지하고 있었던 8바이트 데이터 Q00-Q07과 현재의 클록 사이클에서 유지한 8바이트 데이터 Q08-Q15로부터, 4바이트 데이터 Q05-Q08가 데이터 버스 스위치(228)에 의해 입출력 버스에 전송된다. 따라서, 이 경우의 데이터 래치 셀렉터(221)의 셀렉트 신호(S221)는 8비트(각 바이트 영역에 2비트)로 구성된다.
그리고, 다음 클록 사이클에서, 칼럼 디코더(222)는 칼럼 어드레스 CA4, CA5에 대응하는 디코드 신호(222D0, 222D1)를 발행하고, 8바이트의 데이터 Q16-Q23를 데이터 래치 회로에 더 캐시한다. 그리고, 데이터 버스 스위치(228)는 4바이트의 데이터 Q09-Q12를 전송한다. 그리고, 다음의 클록 사이클에서는 데이터 버스 스위치(228)가 4바이트 데이터 Q13-Q16를 입출력 버스에 더 전송한다. 이 때는 메모리 셀 어레이로부터 새롭게 8바이트 데이터를 캐시할 필요가 없다.
라이트 동작도, 전술한 바와 마찬가지로, 버스트 길이 BL=4의 경우는 4사이클에서 4바이트 데이터가 입출력 단자(DQ)에 공급되고, 데이터 버스 스위치(228)를 통해 데이터 래치 회로(226, 227)에 저장된다. 그리고, 칼럼 디코더(222)로부터의 칼럼 어드레스 CA0, 1, CA2, 3, CA4, 5의 디코드 신호에 응답하여, 합계로 16바이트 데이터가 3사이클에서 메모리 셀 어레이 내에 기록된다.
도 26은, 바이트 경계 기능을 갖는 화상 메모리의 제2 예의 제1 변형예의 동작을 도시한 도면이다. 도 25의 예에서는 각 바이트 영역(Byte0-3)이 2바이트의 데이터를 한 쌍의 데이터 래치 회로(226, 227)에 동시에 캐시하고 있었다. 이에 대하여, 도 26의 변형예에서는 리드 커맨드(RD) 후의 처음의 칼럼 제어에서는, 칼럼 디코더(222)가 칼럼 어드레스 CA0, CA1의 내부 디코드 신호(222D0, 222D1)를 동시에 발행하고, 각 바이트 영역에서 2바이트의 데이터를 한 쌍의 데이터 래치 회로에 동시에 캐시한다. 그리고, 그 후의 캐시 동작에서는 칼럼 디코더(222)가 짝수측(CA2, CA4)의 내부 디코드 신호(222D0)와 홀수측(CA3)의 내부 디코드 신호(222D1)를 교대로 발행하고, 각 바이트 영역은 1바이트 데이터를 한 쌍의 데이터 래치 회로(226, 227)에 교대로 캐시한다.
즉, 처음에는 8바이트 데이터 Q00-Q07를 캐시하고, 다음부터는 4바이트 데이터 Q08-Q11, Q12-Q15, Q16-Q19를 데이터 래치 회로에 캐시한다. 그리고, 데이터 버스 스위치(228)가 전송해야 하는 4바이트 데이터 DQ1-DQ4, Q05-Q08, Q09-Q12, Q13-Q16를 입출력 버스에 순서대로 전송한다. 이 경우도, 데이터 래치 셀렉터(221)의 셀렉트 신호(S221)는 8비트(각 바이트 영역에 2비트)로 구성된다. 이상과 같이, 리드 동작에 있어서, 칼럼 어드레스의 디코드 신호에 의한 메모리 셀 어레이로부터의 데이터의 데이터 래치 회로에의 캐시 동작은 4사이클로 행해지고, 데이터 래치 회로로부터 입출력 버스에의 데이터 전송 동작도 4사이클로 행해진다.
기록 동작의 경우도, 4사이클로 4바이트 데이터가 입출력 단자(DQ)에 공급되고, 4사이클로 데이터 버스 스위치(228)를 통해 데이터 래치 회로(226, 227)에 저 장된다. 그리고, 칼럼 디코더(222)로부터의 칼럼 어드레스 CA0/1, CA2, CA3, CA4의 디코드 신호에 응답하여, 합계로 16바이트 데이터가 4사이클로 메모리 셀 어레이 내에 기록된다.
도 27은 바이트 경계 기능을 갖는 화상 메모리의 제2 예의 제2 변형예의 동작을 도시한 도면이다. 이 예는 DDR(Double Data Rate)에 적용되는 예이다. DDR의 SDRAM은 클록(CLK)의 상승 에지와 하강 에지의 양쪽에서 DQ 단자로부터 데이터의 입출력을 행한다. 즉, 상승 에지에서 4바이트 데이터 Q05-Q08, 하강 에지에서 4바이트 데이터 Q09-Q12가 각각 입출력된다.
이와 같이 입출력 레이트가 2배가 되기 때문에, 메모리 내부의 캐시하는 데이터량도 2배로 해야 한다. 도 27의 예에서는 리드 커맨드(RD) 후의 처음의 캐시 사이클에서 16바이트의 데이터 Q00-Q03, Q04-Q07, Q08-Q11, Q12-Q15가 동시에 데이터 래치 회로에 캐시되고, 16바이트 데이터로부터 4바이트 데이터 Q05-Q08가 클록의 상승 에지에서 I/O 버스에 전송되며, 다음의 4바이트 데이터 Q09-Q12가 클록의 하강 에지에서 I/O 버스에 전송된다.
도 27과 같은 16바이트 데이터의 일괄 캐시를 가능하게 하기 위해, 메모리는 도 24의 바이트 영역 Byte0-3 내에서, 4개의 메모리 셀 어레이로 분할되어, 각각에 제2 앰프, 데이터 래치 회로가 설정된다. 그리고, 각 바이트 영역에서 칼럼 데이터(222)는 선두 칼럼 어드레스 CA1에 대응하여 칼럼 어드레스 CA0-3의 내부 디코더 신호를 4개의 메모리 셀 어레이에 공급하고, 4바이트 데이터가 4개의 데이터 래치 회로에 캐시된다. 그리고, 4개의 데이터 래치 회로로부터 데이터 래치 셀렉트 신 호(S221)에 의해 데이터 버스 스위치(228)에 의해 선택된 데이터 래치 회로의 1바이트 데이터가 입출력 버스에 전송된다. 도면 중, 코어 버스(Core bus)는 메모리 셀 어레이의 입출력 버스에 대응하고, 이들 데이터는 데이터 래치 회로에 캐시된다.
또한, 도 27의 예에서는, 입력 칼럼 어드레스(CA)의 LSB(CA[0])를 무시하는 구성으로 되어 있고, 입력 칼럼 어드레스 CA0, CA1 중 어떤 경우라도 항상 칼럼 어드레스 CA0-3에 대응하는 데이터가 액세스된다. 즉, 입력 칼럼 어드레스가 홀수, 짝수에 관계없이 페어링되는 칼럼 어드레스는 고정적으로 되어 있다.
또한, 다음의 클록 사이클에서는, 칼럼 디코더(222)가 칼럼 어드레스 CA4-7의 내부 디코드 신호를 4개의 메모리 셀 어레이에 발행하고, 4바이트 데이터를 4개의 데이터 래치 회로에 더 캐시한다. 이에 의해, 16바이트 데이터 Q16-Q31가 데이터 래치 회로에 래치되고, 그 중에서 선택된 4바이트 데이터 Q13-Q16와, 4바이트 데이터 Q17-Q20가 클록의 상승 에지와 하강 에지에서 각각 출력된다.
라이트 동작에서는, 상기와 역방향으로 기록 데이터가 입출력 단자(DQ)로부터 데이터 래치 회로를 통해 메모리 셀 어레이 내에 기록된다.
도 27의 경우도, 데이터 래치 셀렉트 신호(S221)는 각 바이트 영역에 2비트, 합계로 8비트의 제어 신호이다. 이와 같은 데이터 래치 셀렉트 신호는 칼럼 제어부(90) 내의 데이터 래치 셀렉터(220)가 칼럼 어드레스(CA)와 스타트 바이트 신호(SB)에 따라 생성한다.
도 28은 바이트 경계 기능을 갖는 화상 메모리의 제2 예의 제3 변형예의 동 작을 도시한 도면이다. 이것도 도 27과 마찬가지로 DDR에 대응하는 동작예이며, 도 27과 다른 점은 입력 칼럼 어드레스(CA)가 홀수인지 짝수인지에 따라 동시에 칼럼 액세스되는 어드레스의 조합이 다르다. 즉, 입력 칼럼 어드레스(CA)와 이에 +1, +2, +3한 CA에 대응하는 데이터가 동시에 액세스된다. 즉, 입력 칼럼 어드레스 CA1의 경우는 CA1, CA2, CA3, CA4의 데이터가 액세스된다. 즉, 칼럼 디코더는 입력 칼럼 어드레스(CA)의 LSB(CA[0])를 감시하여 동시 액세스해야 하는 칼럼 어드레스를 결정한다.
도 28에 도시되는 바와 같이, 입력 칼럼 어드레스 CA1에 대하여, 칼럼 디코더는 CA1-CA4의 내부 디코드 신호(222D0-3)를 생성하고, 각 바이트 영역에서 4바이트 데이터, 합계로 16바이트 데이터가 데이터 래치 회로에 캐시된다. 그리고, 다음의 클록 사이클에서는 CA5-CA8의 내부 디코드 신호(222D0-3)를 생성하고, 16바이트 데이터가 더 캐시된다. 따라서, 캐시되는 16바이트 데이터가 도 27과 4바이트만큼 벗어나 있다.
따라서, 도 28의 리드 동작 및 라이트 동작도 도 27과 같은 메모리 구성으로 실현할 수 있다.
도 29는 바이트 경계 기능을 갖는 화상 메모리의 제3 예를 도시한 도면이다. 또한, 도 30은 도 29의 동작을 설명하는 도면이다. 제3 예에서는 바이트 경계 기능에 의해 입출력되는 4바이트 데이터 Q01-Q04를 각 바이트 영역(Byte0-3)에의 1회의 칼럼 액세스에 의해 액세스하여, 입출력 버스에 전송한다. 즉, 전술한 제1, 제2 예와 같이 인접한 칼럼 어드레스의 메모리 단위 영역에 대한 4 바이트 데이터의 액세 스를 위해, 그보다 많은 8바이트 데이터 또는 16바이트 데이터를 인접 칼럼 어드레스의 복수 메모리 단위 영역으로부터 캐시를 하지 않는다.
도 29에 도시되는 바와 같이, 칼럼 제어부(90)는 칼럼 어드레스 컨트롤러(290)를 가지며, 메모리 뱅크(92) 내의 각 바이트 영역(Byte0-3) 내의 칼럼 시프터 회로(291)에, 칼럼 어드레스(CA)를 +1 시프트해야 하는지 여부의 시프트 제어 신호(S290)를 공급한다. 각 바이트 영역은 칼럼 시프터(291)와, 그 출력을 디코드하는 칼럼 디코더(222)와, 내부 디코드 신호(222D)에 의해 1바이트 데이터를 입출력하는 메모리 셀 어레이(224)와, 제2 앰프와, 데이터 래치 회로(226)와, 데이터 버스 스위치 회로(228)를 갖는다. 각 바이트 영역 내의 칼럼 시프터(291)는 시프트 제어 신호(S290)에 응답하여, 칼럼 어드레스(CA)를 +1 시프트하거나 또는 시프트하지 않고 칼럼 어드레스를 칼럼 디코더(222)에 출력한다. 데이터 래치 회로(226)는 1바이트 데이터만 유지할 수 있으면 좋다. 따라서, 데이터 버스 스위치 회로(228)는 데이터 래치 회로(226) 내의 1바이트 데이터를 항상 선택하여 입출력 버스(I/Obus)에 전송할 뿐이다.
도 30의 동작을 도시하는 도면에 의하면, 칼럼 어드레스 컨트롤러(290)가 입력 칼럼 어드레스(CA0)와 스타트 바이트 신호(SB)에 따라, 바이트 영역 Byte0의 칼럼 시프터(291)에 칼럼 어드레스 CA0를 +1 시프트하여 CA1을 생성시키도록 제어하고, 다른 바이트 영역 Byte1-3의 칼럼 시프터에는 +1 시프트시키지 않도록 제어한다. 그 결과, 바이트 영역 Byte0에서는 칼럼 어드레스CA1에 대응하는 내부 디코드 신호(222D)에 기초하여 1바이트 데이터 Q04가 액세스되고, 데이터 래치 회로(226) 에 래치된다. 또한, 다른 바이트 영역 Byte1-3에서는 칼럼 어드레스 CA0에 대응하는 내부 디코드 신호(222D)에 기초하여 각 1바이트 데이터 Q01, Q02, Q03가 액세스되고, 데이터 래치 회로(226)에 래치된다.
상기와 같이, 도 29 및 도 30의 제3 예에서는 메모리 내부에서 칼럼 어드레스를 액세스 대상의 4바이트 데이터에 대응시켜 발생하고 있기 때문에 그만큼 칼럼 디코더 측이 복잡한 구성이 되지만, 4바이트보다 많은 바이트 데이터의 캐시 동작을 없앨 수 있기 때문에 입출력 유닛(93)에서의 구성이 단순화되며, 또한 메모리 뱅크 내의 소비 전력을 삭감할 수 있다.
리드 동작에서는, 각 바이트 영역에서 칼럼 디코더(222)로부터의 칼럼 어드레스에 대응하는 1바이트 데이터를 데이터 래치 회로(226)에 출력하고, 데이터 버스 스위치(228)를 통해 입출력 단자(DQ)에 전송한다. 라이트 동작에서는, 입출력 단자(DQ)에 입력된 4바이트 데이터가 각 바이트 영역에서 데이터 버스 스위치(228)를 통해 데이터 래치 회로(226)에 래치된다. 그리고, 각 바이트 영역에서 칼럼 디코더(222)로부터의 칼럼 어드레스에 대응하는 메모리에 래치된 데이터가 기록된다.
상기의 도 22 내지 도 31에 도시한 뱅크 내의 4개의 바이트 영역은, 칼럼 어드레스로 선택되는 메모리 단위 영역이 4비트로 구성되는 경우는 4개의 비트 영역이 되고, 각 비트 영역으로부터는 1비트 단위의 데이터가 복수조 또는 단수조로 액세스된다.
[입출력 단자와의 대응 제어]
다음으로, 화상 메모리 내에 있어서의 입출력 단자(DQ)와 메모리 셀 어레이 내의 버스 또는 데이터 래치 회로와의 대응 제어 예에 대해서 설명한다.
도 31은 바이트 경계 기능을 갖는 화상 메모리의 입출력 단자와의 대응 수단을 도시한 도면이다. 도 32는 도 31의 동작을 도시한 도면이다. 이 입출력 단자와의 대응 수단으로는, 도 32에 도시되는 바와 같이, 메모리 공간 내의 칼럼 어드레스(CA)에 대응하는 4바이트 데이터는 항상 동일한 입출력 단자군 DQ[7:0] 내지 DQ[31:24]에 대응되고, 동적으로 대응 관계를 교체하는 것은 행하지 않는다. 즉, 입출력 단자(DQ)와 메모리 내의 버스[메모리 셀 어레이(224)의 입출력 버스]와의 대응 관계(할당 관계)는 스타트 바이트 신호(SB)의 영향을 받지 않고 항상 고정적이다. 따라서, 라이트 시와 리드 시에 스타트 바이트 신호(SB)가 달라도, 라이트 시에 입력되는 입출력 단자(DQ)와 리드 시에 출력되는 입출력 단자(DQ)는 동일한 단자이다.
도 31에는, 칼럼 어드레스(CA)로 선택되는 4바이트 영역의 경계를 넘는 4바이트 액세스하는 경우의 DQ 단자와의 접속 방법이 도시되어 있다. 이 도면에서는 칼럼 어드레스(CA0) 내의 4바이트 영역의 Byte1(Q01)부터의 리드 동작(SB=1)을 가정하고 있다.
입출력 단자(DQ)의 교체를 행하지 않는 경우, Byte1의 데이터로서 기억한 데이터는 스타트 바이트 신호(SB)에 의존하지 않고 반드시 Byte1에 대응하는 DQ 단자에 출력된다. 이로 인해 메모리 셀 어레이(224)와 입출력 버퍼(94I/O)의 접속은 항상 고정적으로 할당된다. 따라서, 스타트 바이트 신호(SB)의 지정은 단순히 메모리 셀 어레이(224)의 어떤 칼럼 어드레스(CA)의 버스를 입출력 버퍼(94I/O)에 접속해 야 하는지의 판별에 이용된다.
도 31의 예는, 도 22의 제1 예, 도 24의 제2 예에 대응하는 구성예로, 각 바이트 영역(Byte0-3)이 한 쌍의 영역(홀수 칼럼 어드레스, CA[0]=0과, 짝수 칼럼 어드레스, CA[0]=1)으로 분할되어 있다. 즉, 도 24와 마찬가지로, 칼럼 어드레스(CA)가 홀수와 짝수 2개의 메모리 셀 영역이 존재하고, 그 안이 4개의 Byte 영역으로 더 분할되어 있다. 바이트 영역(Byte0 영역 내지 Byte3 영역)은 칼럼 디코더로부터 데이터 래치 회로까지를 포함하는 것으로 한다. 리드 동작의 경우, 1회의 액세스에 필요한 데이터의 2배의 데이터가 Byte 영역으로부터 출력되고, 데이터 버스 스위치(228)의 스위치군(도면 중 8개의 사각형)에서 그 절반인 4바이트 데이터가 입출력 버퍼(94I/O)에 접속된다.
이와 같이, 입출력 단자(DQ)의 교체를 행하지 않는 경우, 메모리 셀의 Byte1 영역로부터 출력된 데이터 Q01는 입출력 버퍼(94I/O)의 Byte1에 해당하는 입출력 단자 DQ[15:8]에 반드시 접속된다. 따라서, 바이트 스타트 신호(SB)를 이용한 데이터 버스 스위치(228)의 제어는 2개의 칼럼 어드레스(CA)에 대응하는 영역 중 어느 하나의 데이터 래치 회로를 입출력 버퍼(94I/O)와 접속하는지의 제어이다.
도 24에 있어서의 4개의 바이트 영역 Byte0-3 내의 데이터 버스 스위치(228)가 도 31의 데이터 버스 스위치(228)에 정리하여 도시되어 있다. 따라서, 각 바이트 영역의 데이터 버스 스위치(228)는 도 31 내의 동일한 입출력 단자(DQ)에 대응하는 한 쌍의 스위치로 구성된다.
도 33은 바이트 경계 기능을 갖는 화상 메모리의 입출력 단자와의 대응 수단 을 도시한 도면이다. 도 34는 도 33의 동작을 도시한 도면이다. 이 입출력 단자와의 대응 수단으로는, 도 34에 도시되는 바와 같이, 메모리 공간 내의 칼럼 어드레스(CA)에 대응하는 4바이트 데이터는 스타트 바이트 신호(SB)에 따라 선두 바이트로부터 순서대로 입출력 단자군 DQ[7:0] 내지 DQ[31:24]에 대응되고, 메모리 셀 어레이(224)와 입출력 단자군(DQ) 사이에서 동적으로 대응 관계가 교체된다. 즉, 입출력 단자군(DQ)과 메모리 내의 버스와 대응 관계(할당 관계)는 스타트 바이트 신호(신호SB)의 영향을 받아 동적으로 변화한다. 따라서, 라이트 시와 리드 시에 스타트 바이트 신호(SB)가 다르면, 라이트 시에 입력되는 입출력 단자군(DQ)과 리드 시에 출력되는 입출력 단자군(DQ)은 다른 단자가 된다.
도 34로부터 명백한 바와 같이, 스타트 바이트 신호 SB=1의 경우는 메모리 내의 데이터 Q01-Q04가 입출력 단자군 DQ[7:0] 내지 DQ[31:24]에 대응된다. 즉, 스타트 바이트 신호(SB)에 따라 메모리 셀 어레이 내의 버스 또는 데이터 래치 회로와 입출력 단자군과의 대응을, 선두 바이트 데이터는 입출력 단자 DQ[7:0]에, 나머지 3바이트 데이터는 나머지의 입출력 단자(DQ)에 순차 대응하도록 한다. 이로 인해, 도 33의 데이터 버스 스위치(228)에는 입출력 버스군(I/Obus)과 메모리 셀 어레이(224)의 버스 또는 데이터 래치 회로와의 모든 교차 위치에 스위치가 설치된다. 그리고, 이들 스위치군을 데이터 래치 셀렉터(221)로부터의 데이터 래치 셀렉트 신호(S221)에 의해 온·오프 제어함으로써, 상기와 같은 동적인 대응을 실현할 수 있다.
이와 같이, 스타트 바이트 신호(SB)에 따라서, 메모리 셀 어레이 내의 버스 또는 데이터 래치 회로에 대하여 입출력 단자(DQ)의 교체를 행한다. 구체적으로는, 메모리 셀 어레이 내의 바이트 영역(Byte1)으로부터 출력된 바이트 데이터 Q01는 SB="1"의 경우에는 입출력 버퍼(94I/O)의 Byte0에 해당하는 DQ[7:0]에 접속되고, SB="0"의 경우는 DQ[15:8]에 접속된다. 바이트 영역 Byte1의 바이트 데이터 Q05는 SB="3"의 경우는 DQ[23:16]에 접속되고, SB="2"의 경우는 DQ[31:24]에 접속된다. 즉, 도 33중의 폐쇄한 상태의 4개의 스위치의 위치가 스타트 바이트 신호(SB)에 따라 우측 방향으로 벗어나게 된다.
다음으로, 입출력 단자와의 대응 제어에 있어서, 빅 엔디안과 리틀 엔디안에의 대응 제어에 대해서 설명한다.
도 35는 바이트 경계 기능을 갖는 화상 메모리로서 엔디안에 대응 가능한 화상 메모리의 제1 구성도이다. 이 예는 도 19, 도 20에서 설명한 화상 메모리와 마찬가지로, 메모리 코어(350) 내의 구성은 빅 엔디안(업모드)에만 대응하고 있다. 즉, 바이트 경계 동작에 있어서, 스타트 바이트 신호(SB)에 대응하는 바이트 위치로부터 4바이트 데이터를 업모드로 액세스하는 기능 뿐이다. 이 경우라도 데이터 버스 스위치(228)의 스위치군을 제어함으로써, 빅 엔디안 대응의 화상 시스템도 리틀 엔디안 대응의 화상 시스템도 옳은 데이터의 입출력을 실현할 수 있다.
도면 중, 모드 레지스터(96)에는 업모드인지 다운모드인지를 나타내는 바이트 조합 정보의 제2 정보(BMR)가 부여되어, 어느 하나의 모드로 설정된다. 다만, 도 29 등의 칼럼 디코더, 메모리 셀 어레이, 제2 앰프를 포함하는 메모리 코어(350)는 업모드 제어로밖에 대응하지 않는다. 즉, 칼럼 제어 회로에는 업모드 컨 트롤러(351)만을 가지며, 다운모드 컨트롤러는 갖지 않는다.
도 35의 (A)는 업모드의 경우의 데이터 버스 스위치(228)를 도시하고 있다. 즉, 빅 엔디안인 업모드의 경우는, 메모리 코어(350)는 업모드 컨트롤러(351)에 의해 업모드로 제어된다. 따라서, 데이터 버스 스위치(228)는 데이터 래치 회로(226)의 4바이트의 데이터 Byte0-3를 그대로 입출력 버퍼(94I/O)에 접속한다. 즉, 메모리 코어(350)의 코어 데이터 버스 cdb00z 내지 cdb31z가 I/O 데이터 버스 pdb00z 내지 pdb31z에 스트레이트로 접속된다.
한편, 도 35의 (B)는 다운모드로 설정된 경우의 데이터 버스 스위치(228)를 도시하고 있다. 즉, 리틀 엔디안인 다운모드의 경우, 메모리 코어(350)는 업모드 컨트롤러(351)에 의해 업모드로 제어되지만, 데이터 버스 스위치(228)는 데이터 래치 회로(226)의 4바이트 데이터 Byte0, 1, 2, 3를 크로스하여 입출력 버퍼(94I/O)의 4바이트 Byte3, 2, 1, 0에 대응시킨다. 이 경우는 바이트 단위로 코어 버스 cdbxxz와 I/O 버스 pdbxxz가 전환된다.
도 35의 (B)의 데이터 버스 스위치(228)는 도 19, 20에 도시한 입출력 단자군의 교환 수단(190)과 동일한 것을, 화상 메모리(86) 내에 설치한 예이다. 이와 같이, 메모리 코어의 구성은 빅 엔디안과 리틀 엔디안 중 어느 하나에 대응 가능한 구성으로 하고, 상기와 같은 데이터 버스 스위치(228)를 설치하여 그 스위치를 다운 모드 또는 업모드에 따라 전환함으로써, 양쪽의 엔디안에 대응하는 것이 가능해진다.
도 36은 바이트 경계 기능을 갖는 화상 메모리로서 엔디안에 대응 가능한 화 상 메모리의 제2 구성도이다. 이 화상 메모리는 도 35와 마찬가지로, 업모드 제어에만 대응 가능한 메모리 코어 구성을 가지며, 데이터 버스 스위치(228)를 모드 레지스터(96)에서 설정된 제2 정보(BMR=UP/DOWN)에 따라 전환함으로써, 어느 모드에도 대응 가능하게 하고 있다. 그리고, 도 35와 다른 점은, 데이터 버스 스위치(228)에 의한 데이터의 교체는 MSB(DQ31)와 LSB(DQ00)가 교체되도록 행해진다. 즉, 4바이트의 교체에 추가하여, 각 바이트의 8비트의 데이터도 교체된다.
도 37은 바이트 경계 기능을 갖는 화상 메모리로서 엔디안에 대응 가능한 화상 메모리의 제3 구성도이다. 이 화상 메모리는 도 29의 화상 메모리에 대응하고, 메모리 코어(350) 내의 4개의 바이트 영역에의 칼럼 어드레스의 조합을 동작 모드에 대응하여 변경 제어하고, 스타트 바이트 신호(SB)에 대응한 바이트로부터 업방향 또는 다운방향의 4바이트 데이터를 4개의 메모리 어레이로부터 입출력한다.
예컨대, 도 30에 도시한 바와 같이 칼럼 어드레스 CA0, 스타트 바이트 SB=1의 경우는, 4개의 바이트 영역 Byte0-3의 내부 칼럼 어드레스는 업모드이면 CA1, CA0, CA0, CA0가 되고, 데이터 Q04, Q01, Q02, Q03가 4바이트의 입출력 단자(DQ)로부터 입출력된다. 한편, 다운모드이면 CA0, CA0, CA1, CA1이 되고, 데이터 Q00, Q01, Q06, Q07이 4바이트의 입출력 단자(DQ)로부터 입출력된다.
이와 같이, 칼럼 시프터(291)에 의해 업모드와 다운모드로, 메모리 코어 내의 4개의 바이트 영역 Byte0-3에 부여하는 칼럼 어드레스를 전환한다. 그리고, 스타트 바이트 신호(SB)와 모드 신호(BMR)에 의해 일의로 결정되는 칼럼 어드레스의 조합이 칼럼 시프터(291)를 통해 메모리 코어(350) 내의 각 바이트 영역에 공급된 다. 이 칼럼 시프터(291)는 칼럼 어드레스 제어부(90A)로부터의 4개의 칼럼 어드레스 caby0z-caby3z 중 전환이 필요한 2개 중 어느 하나를 업모드·다운모드(Up/Dowm)에 따라 선택한다. 즉, 바이트 영역 Byte0에서는 caby0z, caby3z 중 어느 하나가 선택되고, 바이트 영역 Byte1에서는 caby1z, caby2z 중 어느 하나가 선택되고, 바이트 영역 Byte2에서는 caby1z, caby2z 중 어느 하나가 선택되고, 바이트 영역 Byte3에서는 caby0z, caby3z 중 어느 하나가 선택된다.
싱글 데이터 레이트(SDR)의 경우는, 1회의 액세스로 4바이트 데이터를 입출력할 수 있으면 좋기 때문에 도 29에서 설명한 바와 같이, 각 바이트 영역에 대응하는 데이터 래치 회로에 유지된 1바이트 데이터를 그대로 입출력 버스에 전송하면 좋다.
한편, 더블 데이터 레이트(DDR)의 경우는 1회의 액세스로 8바이트 데이터를 4바이트씩 입출력해야 한다. 따라서, 도 29의 구성에 있어서, 각 바이트 영역(Byte0-3) 내에 짝수 칼럼 어드레스(CA[0]=0)의 블록과 홀수 칼럼 어드레스(CA[0]=1)의 블록을 가지며, 이들 한 쌍의 블록에 스타트 바이트 신호(SB)와 모드 신호(BMR)에 의해 일의로 결정되는 조합의 칼럼 어드레스를 칼럼 시프터(291)로부터 공급하고, 데이터 버스 스위치(228)에 의해 필요한 4바이트 데이터를 선택하여 입출력 버스(I/Obus)에 전송한다. 이 경우는, 데이터 버스 스위치(228) 내의 각 스위치는 데이터 래치 셀렉터(221)로부터의 제어 신호(dabyaz-dabydz)에 따라, 짝수 블록이나 홀수 블록의 데이터를 선택하여 입출력 버스(I/Obus)에 전송한다. 이로 인해, 데이터 래치 셀렉터(221)에는 칼럼 어드레스 제어부(90B)로부터 데이터 버스용 칼럼 어드레스 daby0z-daby3z가 공급되고, 데이터 래치 셀렉터(221)가 업모드·다운모드(Up/Down)에 따라 4개의 바이트 영역 중으로부터 전환이 필요한 2개 중 어느 하나를 선택한다. 이 전환 후보의 조합은 전술한 칼럼 시프터(291)와 동일하다.
도 37과 같이 칼럼 어드레스의 조합을 제어함으로써, 데이터 버스 스위치(228)의 스위치군의 스위치 수를 줄일 수 있다. 즉, 도 35, 36에 도시한 데이터 버스 스위치에서는 입출력 단자(DQ) 수가 N 바이트의 경우, 2N*8개의 스위치가 필요하다. 그러나, 도 37과 같이 칼럼 어드레스의 조합을 제어함으로써, 칼럼 시프터(291)와 데이터 버스 스위치(228)에 각각 2N개의 스위치가 필요하고, 합계로 4N개의 스위치가 필요하다. 따라서, 도 35, 36보다도 스위치 수를 1/4로 줄일 수 있다.
도 38은 도 37의 DDR 메모리에 있어서의 업모드의 동작 타이밍 차트도이다. 이 예는 칼럼 어드레스 CA1와 스타트 바이트 신호 SB=1의 예이며, 빅 엔디안으로 메모리(86)에 기억한 데이터 Q05-Q08를 판독하는 예이다. 즉, 메모리(86) 내의 칼럼 어드레스에 대한 데이터 Q00-Q19와 입출력 단자(DQ)와의 관계는 도시되는 바와 같다.
전술한 바와 같이, DDR 메모리의 경우는 메모리 셀 어레이 내의 각 바이트 영역이 짝수 칼럼 어드레스의 블록(CA[0]=0)과 홀수 칼럼 어드레스의 블록(CA[0]=1)을 가지며, 이들의 블록에 제어된 조합의 칼럼 어드레스 caby가 공급되고, 데이터 버스 스위치(228)에 제어된 조합의 데이터 버스 전환용 칼럼 어드레스 daby가 공급된다.
즉, 기점이 되는 칼럼 어드레스(CA)로서 CA1을 입력한다. 이에 따라, 각 바이트 영역(Byte0-3) 내의 짝수 블록(CA[0]="0")과 홀수 블록(CA[0]="1")에 공급되는 칼럼 어드레스(CA)가 제어되고, 짝수 블록(CA[0]="0")의 영역은 칼럼 어드레스 CA2의 칼럼선이 활성화되며, 홀수 블록(CA[0]="1")의 영역은 바이트 영역 Byte0에서는 칼럼 어드레스 CA3의 칼럼선이 활성화되고, 바이트 영역 Byte1, 2, 3에서는 칼럼 어드레스 CA1의 칼럼선이 활성화된다.
이 결과, 메모리 코어의 코어 버스에는 데이터 Q05 내지 Q12가 출력된다. 즉, 짝수 블록의 코어 버스에는 데이터 Q08-Q11가 출력되고, 홀수 블록의 코어 버스에는 데이터 Q5-Q7, Q12가 출력된다.
DDR 메모리에서는 이 8바이트의 데이터로부터 입출력 버스(I/Obus)에 4바이트 데이터를 전송해야 한다. 그래서, 데이터 버스 스위치가 스타트 바이트 신호(SB)와 칼럼 어드레스(CA)에 기초하여, 바이트 영역 Byte0만 짝수 블록(CA[0]="0")의 데이터를 선택하고, 그 결과 데이터 Q05 내지 Q08를 입출력 단자(DQ)에 출력할 수 있다.
여기서 짝수, 홀수(CA[0]="0"/"1")의 각 영역에서, 내부 칼럼 어드레스 cabyaz는 caby0z를 선택하고, 내부 칼럼 어드레스 cabybz는 caby1z를, cabycz는 caby2z를, cabydz는 caby3z를 각각 선택하고 있다. 마찬가지로, 짝수, 홀수(CA[0]="0"/"1")의 각 영역에서 데이터 버스용 칼럼 어드레스 dabyaz는 daby0z를 선택하고, 마찬가지로, dabybz는 daby1z를, dabycz는 daby2z를, dabydz는 daby3z를 각각 선택하고 있다.
도 39는 도 37의 DDR 메모리에 있어서의 다운모드의 동작 타이밍 차트도이다. 이 예는 칼럼 어드레스 CA1와, 스타트 바이트 신호 SB=2의 예이며, 리틀 엔디안으로 메모리(86)에 기억한 데이터 Q05-Q08를 판독하는 예이다.
즉, 메모리(86) 내의 칼럼 어드레스에 대한 데이터 Q00-Q19와 입출력 단자(DQ)의 관계는 도시되는 바와 같다. 도 38과는, 4바이트의 데이터와 입출력 단자(DQ)와의 관계가 역방향으로 되어 있다.
이 경우는, 기점이 되는 칼럼 어드레스(CA)로서 CA1을 입력한다. 이에 따라, 각 바이트 영역(Byte0-3) 내의 짝수 블록(CA[0]="0")과 홀수 블록(CA[0]="1")에 공급되는 칼럼 어드레스(CA)가 제어되고, 짝수 블록(CA[0]="0")에는 칼럼 어드레스 CA2의 칼럼선이 활성화되며, 홀수 블록(CA[0]="1")에서는 바이트 영역 Byte3은 칼럼 어드레스 CA3의 칼럼선이 활성화되고, 바이트 영역 Byte2, 1, 0의 각 영역은 칼럼 어드레스 CA1의 칼럼선이 활성화된다.
이 결과, 메모리 코어의 코어 버스에는 데이터 Q05 내지 Q12가 출력된다. 즉, 짝수 블록의 코어 버스에는 데이터 Q08 내지 Q11가 출력되고, 홀수 블록의 코어 버스에는 데이터 Q5-Q7, Q12가 출력된다.
DDR 메모리에서는, 이 8바이트의 데이터로부터 입출력 버스(I/Obus)에 4바이트 데이터를 전송해야 한다. 그래서, 데이터 버스 스위치가 스타트 바이트 신호(SB)와 칼럼 어드레스(CA)에 기초하여, 바이트 영역 Byte3만 짝수 블록(CA[0]="0")의 데이터 Q08를 선택하고, 나머지는 홀수 블록으로부터 데이터 Q05- O7를 선택하며, 4바이트 데이터 Q05 내지 Q08를 입출력 단자(DQ)에 출력할 수 있다.
여기서, 짝수, 홀수(CA[0]="0"/"1")의 각 영역에서, 내부 칼럼 어드레스 cabyaz는 caby3z를 선택하고, 내부 칼럼 어드레스 cabybz는 caby2z를, cabycz는 caby1z를, cabydz는 caby0z를 각각 선택하고 있다. 마찬가지로, 짝수, 홀수(CA[O]="0"/"1")의 각 영역에서 데이터 버스용 칼럼 어드레스 dabyaz는 daby3z를 선택하고, 마찬가지로 dabybz는 daby2z를 dabycz는 daby1z를, dabydz는 daby0z를 각각 선택하고 있다.
이상과 같이, 도 38의 업모드와 비교하면 cabyz, dabyz를 바이트 영역 Byte0과 Byte3에서 교체하고, 또한 바이트 영역 Byte1과 Byte2에서 교체함으로써, 빅 엔디안과 리틀 엔디안의 2종류의 바이트 데이터의 배열에 대응할 수 있다. 도 40은 바이트 경계 기능에 있어서 경계의 지정 방법에 대해서 설명하는 도면이다. 도면 중, 칼럼 어드레스 CA[7:0]가 #n과 #n+1의 인접한 4바이트 영역의 경계를 넘어 액세스가 행해지는 바이트 경계 기능으로는, 경계의 지정 방법이 스타트 바이트(SB)에 의한 경우와, 시프트 밸류(SV)에 의한 경우를 생각한다. 스타트 바이트(SB)는 바이트(N)로부터 4바이트 액세스하는 것을 의미하고, 시프트 밸류(SV)가, 칼럼 어드레스의 4바이트 영역의 경계로부터 N 바이트 시프트한 위치로부터 4바이트 액세스하는 것을 의미한다.
이 경우, 엔디안의 2개의 모드에 대응하여, 업모드와 다운모드에서는 스타트 바이트(SB)와 시프트 밸류(SV)와의 대응 관계가 달라진다. 즉, 업모드이면 바이트 데이터의 배열이 Byte0-3으로 되어 있기 때문에, SB와 SV는 등가이다. 그러나, 다운모드에서는 바이트 데이터의 배열이 Byte3-0으로 되어 있기 때문에, SB와 SV는 등가가 되지 않고, 반대의 관계가 된다.
따라서, 화상 메모리가 스타트 바이트 신호(SB)의 단자만을 가지며, 내부 구조가 시프트 밸류(SV)에 따라 제어되는 경우는, 업모드인지 다운모드인지에 따라서, 스타트 바이트 신호(SB)를 비반전 또는 반전하여, 시프트 밸류(SV)로 변환해야 한다. 화상 메모리가 시프트 밸류(SV) 단자만을 가지며, 내부 구조가 스타트 바이트(SB)에 따라 제어되는 경우도 마찬가지이다.
도 41은 스타트 바이트(SB)와 시프트 밸류(SV)의 변환 회로를 도시한 도면이다. 변환 회로(410)는 2비트 구성 410[0], 410[1]이며, CM0S 트랜스퍼 게이트(412, 413)와 인버터(414, 415)로 구성되고, 입력 스타트 바이트(SB)가 업모드인지 다운모드인지를 나타내는 카운트 타입 신호에 따라서, 비반전 또는 반전하여 시프트 밸류(SV)로 변환된다. 변환 회로(410)의 진리값 표(411)에 나타나는 바와 같이, 업모드에서는 SB는 비반전되어 SV가 되지만, 다운모드에서는 SB는 반전되어 SV가 된다.
[직사각형 액세스에서의 칼럼 어드레스 제어]
도 1에 도시한 바와 같이, 화상 메모리의 메모리 공간을 화상의 화소에 대응시키는 메모리 맵핑(12, 14E)에서는, 뱅크 어드레스(BA)와 로우 어드레스(RA)에서 선택되는 페이지 영역(14) 내에 있어서, 화상의 매트릭스형 화소의 배치에 대응하여, 칼럼 어드레스(CA)로 선택되는 메모리 단위 영역(4바이트 영역)을 소정의 절첩폭(CA Wrap)으로 절첩하도록 맵핑된다. 도 1의 예에서는, 페이지 영역(14) 내에서 칼럼 어드레스(CA)가 4단위로 절첩되어 있다. 즉, 칼럼 어드레스의 절첩폭(CA Wrap)은 4이다. 이 칼럼 어드레스의 절첩폭은 칼럼 어드레스의 스텝이라고도 불린다.
이러한 칼럼 어드레스로 선택되는 메모리 단위 영역을 소정의 절첩폭으로 절첩하여 맵핑함으로써, 화상 메모리에서 빈번히 행해지는 직사각형 액세스의 액세스 효율을 높일 수 있다. 즉, 액티브 커맨드에 의해 페이지 영역을 액티브 동작시킨 상태에서, 액세스 대상의 직사각형 영역에 대응하여 리드 커맨드와 칼럼 어드레스를 반복하여 발행함으로써, 동일한 페이지 영역 내의 직사각형 영역에의 액세스를 행할 수 있다. 1회의 액티브 동작으로 동일한 페이지 영역 내의 직사각형 영역에 액세스할 수 있기 때문에, 효율적인 액세스가 가능해진다.
도 16에서 도시되는 바와 같이, 이러한 직사각형 액세스에서는 리드 커맨드(RD)와 뱅크 어드레스(BA)와 칼럼 어드레스(CA)와 스타트 바이트 신호(SB)를 반복하여 발행하는 것이 필요하다. 그러나, 메모리의 맵핑 정보, 특히 페이지 영역의 칼럼 어드레스(CA)의 절첩폭(CA Wrap)을 미리 알고 있으면, 직사각형 영역의 선두 칼럼 어드레스(CA)와, 직사각형 폭과, 직사각형 사이즈를 부여하면 화상 메모리는 내부에서 자동적으로 액세스해야 하는 칼럼 어드레스를 발행하여 직사각형 영역의 화상 데이터에 액세스할 수 있다. 이 경우는 리드 커맨드와 칼럼 어드레스를 1회 발행하면 좋고, 도 16과 같이 복수회 발행할 필요는 없다.
도 42는, 바이트 경계 기능을 이용한 자동 직사각형 액세스를 설명하는 도면이다. 이 예에서는 메모리 맵핑(421)으로 액세스되는 데이터 영역을 화살표로 도시 하고 있다. 이 메모리 맵핑에서는 페이지 영역 내에서 칼럼 어드레스(CA)가 8로 절첩되어 있다. 즉, 칼럼 어드레스 절첩폭(CA Wrap)이 8이다. 따라서, 페이지 영역(14)의 우측단의 칼럼 어드레스(CA)는 #07, #0F, #17, #1F(16 진수)와 절첩폭(CA Wrap)=8이 되어 있다. 그리고, 액세스해야 하는 직사각형 영역의 선두 어드레스가 CA=#0B이고, 스타트 바이트 SB=2이고, 직사각형 영역의 폭(Rwidth)=2클록(4바이트× 2클록=8바이트), 직사각형 영역의 사이즈가 버스트 길이(BL)=8(4× 8=32바이트)이다. 따라서, 직사각형 영역의 높이는 BL/Rwidth=4이다.
도 43은 자동 직사각형 액세스에서의 타이밍 차트도이다. 도 44는 자동 직사각형 액세스에 필요한 내부 칼럼 어드레스 연산기의 구성도이다. 도 42와 같은 직사각형 액세스를 하기 위해서는, 공급 칼럼 어드레스 CA=#0B와 SB=2에 따라서, 메모리 내부에서 칼럼 어드레스 CA=#0B/#0C, #0C/#0D, #13/#14, #14/#15, #1B/#1C, #1C/#1D, #23/#24, #24/#25가 발행되면 좋다. 즉, 처음의 액세스에서는 Byte2, 3은 CA=#0B, Byte0, 1은 CA=#0C에 액세스한다. 두번째의 액세스에서는 칼럼 어드레스(CA)는 1만 진행하여 Byte2, 3은 CA=#0C, Byte0, 1은 CA=#0D에 액세스한다. 그리고, 이 예에서는 직사각형 폭 RWidth=2을 위해, 다음의 세번째의 액세스는 칼럼 어드레스(CA)를 1만 진행한 위치로는 되지 않고, 절첩된 칼럼 어드레스(CA=#13, #14)가 된다. 따라서, 칼럼 어드레스 절첩폭(CA Wrap)과 직사각형 폭(RWidth)으로부터 세번째의 칼럼 어드레스를 연산에 의해 구해야 한다. 이 세번째의 어드레스를 Byte2, 3에서 생각하면, 현재의 칼럼 어드레스 CA=#0C[=12(10진수)], CA Wrap=8, RWidth=2에 기초하여, 도 43 중의 식(CA + CAWrap - Rwidth + 1)에 의해, 세번째 액세스의 CA는 CA=12+8-2+1=19(10 진수)=#13(16진수)로 구해진다. 도 44에는 칼럼 제어부(90) 내의 칼럼 어드레스 연산기가 도시되어 있다. 이 연산기는 외부로부터 공급되는 칼럼 어드레스(CA), 절첩했을 때의 칼럼 어드레스(CA Wrap)를 클록의 타이밍에 동기한 내부 클록(pclenz)에 동기하여 +1 증가하는 칼럼 어드레스 카운터(440)와, 칼럼 어드레스 카운터의 카운트값에 CA Wrap을 가산하고 Rwidth를 감산하는 연산기(441)와, 직사각형 영역의 절첩 시에 연산기(441)의 출력을 선택하는 스위치(442)와, 동기 클록(pclenz)을 카운트하고 액세스 중의 수평 방향의 카운트값을 카운트하는 직사각형 폭 카운터(444)와, 직사각형 폭 카운터(444)의 수평 방향의 카운트값(widthz)이 직사각형 폭(RWidth)과 일치하는 것을 검출하여 스위치(442)에 전환 신호(wrapz)를 생성하는 비교기(445)를 갖는다.
도 43의 타이밍 차트에 따라 설명한다. 우선, 직사각형 영역 사이즈가 버스트 길이 BL=8로서 모드 레지스터에 설정되고, 또한 페이지 영역 내의 칼럼 어드레스의 절첩폭 CA Wrap=8도 모드 레지스터에 설정되어 있는 것으로 한다. 그리고, 액티브 커맨드에 이어지는 리드 커맨드와 함께, 선두 칼럼 어드레스 CA=#0B와, 스타트 바이트 SB=2와, 액세스 대상의 직사각형 폭 RWidth=2이 공급된다. 이에 응답하여, 타이밍 클록 pclenz이 클록에 동기하여 발생하고, 직사각형 폭 카운터(444)가 액세스 중의 수평 방향의 카운트값 widthz을 카운트업하며, 칼럼 어드레스 카운터(440)가 선두 칼럼 어드레스 CA=#0B로부터 카운트업한다.
처음의 액세스용으로 발행되는 내부 칼럼 어드레스 caz[7:O]는 도 43에 도시되는 바와 같이, CA=#0B/#0C이다. 2번째의 액세스에서는, 칼럼 어드레스 카운 터(440)가 +1 증가한 칼럼 어드레스 caz[7:0]=#0C에 대응하여, #0C/#0D가 출력된다. 3번째의 액세스에서는, 직사각형 폭의 절첩이 필요하게 되어, 연산기(441)의 연산값이 스위치(442)에 의해 선택되며, 칼럼 어드레스 caz[7:O]=#03가 출력되고, 그에 대응하여 절첩 후의 칼럼 어드레스 CA=#13/#14가 생성된다. 4번째는 #14/#15가 생성되고, 5번째에서 직사각형 영역의 절첩이 행해지며, #1B/#1C가 생성된다. 그 후는 #1C/#1D, #23/#24, #24/#25가 마찬가지로 하여 생성된다.
이 자동 직사각형 액세스에 대응하는 화상 메모리의 구성은, 예컨대 도 29에 도시한 바와 같이, 4개의 바이트 영역 Byte0-3에 바이트 경계 기능에 대응한 4개의 칼럼 어드레스의 조합이 공급된다. 즉, 도 43의 내부 칼럼 어드레스(caz)의 칼럼 어드레스의 조합이 각 바이트 영역 내의 칼럼 디코더에 공급된다. 그 결과, 이들의 칼럼 어드레스의 데이터가 4개의 바이트 영역으로부터 각각 출력된다.
상기의 예에서는, 직사각형 액세스의 직사각형 폭(RWidth)을 리드 커맨드와 함께 공급하였지만, 미리 모드 레지스터 세트 커맨드로 모드 레지스터에 설정하여도 좋다. 또는, 직사각형 사이즈(BL)와 직사각형 폭(RWidth)을 리드 커맨드와 함께 공급하여도 좋다. 칼럼 어드레스의 절첩폭(CA Wrap)은 화상 시스템이 미리 설정하고 있기 때문에, 모드 레지스터 세트 커맨드로 설정하는 것이 바람직하다.
이와 같이, 직사각형 액세스에 있어서, 기점이 되는 칼럼 어드레스(CA)와, 직사각형 폭(RWidth)과, 직사각형 사이즈(BL)가 부여되면, 미리 설정되어 있는 칼럼 어드레스의 절첩폭(CAWrap)에 기초하여, 액세스해야 하는 내부 칼럼 어드레스를 자동적으로 생성할 수 있다. 따라서, 1회의 리드 커맨드의 발행으로 직사각형 액세 스를 행할 수 있다.
[페이지 영역 경계의 바이트 경계 기능]
바이트 경계 기능은 칼럼 어드레스로 선택되는 메모리 단위 영역(4바이트 영역)의 경계를 넘어서 소정 바이트(4바이트)의 데이터를 효율적으로 액세스할 수 있다. 그런데, 페이지 영역 경계를 넘어 직사각형 액세스를 하는 경우는, 재차 다른 액티브 커맨드로 인접한 페이지 영역을 액티브 동작시키는 것이 요구된다.
도 45는 바이트 경계 기능에 의한 액세스가 페이지 영역의 말미에 이른 경우의 메모리 동작의 예를 도시한 도면이다. 이 도면에서는 페이지 영역이 칼럼 어드레스 CA[7:0]=#00 내지 #FF로 구성되고, 우측단이 CA=#FF의 예이다. 이 경우, 도면 중 화살표로 나타낸 4바이트의 데이터를 바이트 경계 기능을 이용하여 액세스하면, 업모드에 있어서, SB=0에서는 4바이트 데이터를 출력할 수 있지만, SB=1, 2, 3에서는 페이지 영역의 우측단으로 절첩하여 좌측단의 바이트 데이터를 액세스한다. 즉, 새로운 액티브 동작을 행하지 않고 동일한 페이지 영역 내에서 절첩 액세스가 행해지는 예이다. 다운모드의 경우는 반대로, SB=0, 1, 2에서는 좌측단으로부터 우측단에 절첩(Wrap)해야 하지만, SB=3만 절첩은 요구되지 않는다.
상기와 같은 액세스가 행해지면, 쓸데없는 데이터가 출력될 뿐이다. 페이지 영역의 말미로부터 옆 페이지 영역에의 액세스를 행하기 위해서는, 새로운 액티브 커맨드를 발행하여 인접 페이지 영역을 액티브 동작시켜야 한다.
도 46은 바이트 경계 기능에 의한 액세스가 페이지 영역의 말미에 이른 경우의 메모리 동작의 다른 예를 도시한 도면이다. 이 예는 버스트 길이(BL)가 8로 설 정되어 있는 예이다. BL=8이 설정되면, 각 뱅크 내의 버스트 카운터는 BL=8의 카운트 폭으로 내부 칼럼 어드레스의 카운트를 반복한다. 즉, 도 46의 예에서는, 버스트 카운터에 의해 생성되는 내부 칼럼 어드레스는 CA=#k8 내지 #kF(16비트 표기)의 폭 8이다. 이러한 카운터에 의해 액세스 영역이 버스트 길이(BL)를 기준으로 하는 직사각형 영역으로 구분되는 메모리의 경우에도, 도 45와 마찬가지로 버스트 길이 영역 CA=#k8 내지 #kF의 우측단에서 바이트 경계 기능을 이용하려고 하면 도 45와 마찬가지의 과제가 발생한다. 도 46의 예에서는, 업모드에서 SB=1, 2, 3에서 절첩이 발생하고, 다운모드에서 SB=0, 1, 2에서 절첩이 발생하고 있다. 이것으로는 쓸데없는 데이터가 출력되어 버린다.
도 47은 바이트 경계 기능에 의한 액세스가 페이지 영역의 말미에 이른 경우의 메모리 동작의 다른 예를 도시한 도면이다. 이 예에서는, 도 7에서 설명한 직사각형 액세스에 있어서의 멀티 뱅크 액세스 기능을 이용하여 바이트 경계 동작을 실현하는 예이다. 즉, 액티브 커맨드(ACT)로 로우 어드레스 RA=#n가 지정되고, 리드 커맨드(RD)로 기점의 칼럼 어드레스(CA)가 페이지 영역의 우측단의 CA=#FF의 경우는, 화살표와 같이 페이지 영역의 경계(PB)를 넘어 액세스가 행해진다.
즉, 업모드에서는 SB=1, 2, 3의 경우, RA=#n의 페이지 영역 내의 CA=#FF의 바이트 데이터와, RA=#n+1의 페이지 영역 내의 CA=#00의 바이트 데이터가 액세스된다. 다운모드에서는 SB=0, 1, 2의 경우, RA=#n의 페이지 영역 내의 CA=#FF의 바이트 데이터와, RA#n+1의 페이지 영역 내의 CA=#00의 바이트 데이터가 액세스된다. 이 경우, 인접한 페이지 영역에의 액세스가 필요하기 때문에, 액티브 커맨드(ACT) 와 함께 부여되는 로우 어드레스 RA=#n의 페이지 영역이 액티브화 되고, 리드 커맨드(RD)와 함께 공급되는 칼럼 어드레스 CA=#FF와 스타트 바이트 신호 SB=2에 응답하여, 인접한 로우 어드레스(RA=#n+1)의 페이지 영역이 액티브화된다. 즉, 하나의 액티브 커맨드(ACT)에 응답하여, 복수의 뱅크 내의 워드선이 액티브화되는 것을 의미한다.
이와 같이 복수 뱅크가 병행하여 액티브화되도록 제어되면, 페이지 영역의 말미에서 바이트 경계 기능이 요구되어도, 필요한 영역의 데이터를 낭비없이 입출력할 수 있다.
[바이트 경계 기능의 그 외의 용도]
바이트 경계 기능은 메모리에 화상 데이터를 기억하여 임의의 화소에 대응한 데이터에 액세스하는 경우에, 효율적인 데이터의 입출력을 가능하게 한다. 바이트 경계 기능은 이러한 화상 메모리 이외의 용도에 있어서도 마찬가지의 메리트를 갖는다.
도 48 내지 도 50은 바이트 경계 기능의 그 외의 용도를 설명하는 도면이다. 도 48, 49는 종래예에, 도 50은 본 실시예에 대응한다. 메모리의 구성으로서 동일한 칼럼 어드레스(CA)에 복수의 바이트 영역을 할당하고, 한번의 액세스로 동일한 칼럼 어드레스(CA)에 할당된 복수 바이트의 데이터를 액세스하는 것이 행해지고 있다. 이러한 구조에서는, 메모리에의 액세스는 동일한 칼럼 어드레스(CA)에 할당되어 있는 고정 바이트 사이즈(워드 구성)의 데이터에 대한 처리에 대해서는 효율적으로 행할 수 있다.
그러나, 시스템에서 처리해야 하는 데이터의 사이즈는 메모리의 워드 구성 미만이 되는 경우도 있다. 이러한 경우의 대처 방법으로서, 워드 구성 사이즈 이하의 데이터가 복수의 칼럼 어드레스(CA)의 영역에 걸치지 않도록 패딩을 한다고 하는 방법이 있다. 도 48의 예에서는 메모리의 워드 구성을 4바이트(도면 중 483 참조), 처리하는 데이터 사이즈의 단위를 1바이트(도면 중 280의 포맷 A), 2바이트(도면 중 280의 포맷 B), 4바이트(도면 중 280의 포맷 C)로 하고 있다. 이로 인해, 4바이트 사이즈의 데이터는 Byte0을 기점으로 기억함으로써 칼럼 어드레스(CA)를 넘지 않도록 할 수 있다. 2바이트 사이즈의 데이터에서는 Byte0, Byte2를 기점으로 하는 위치에 기억한다. 1바이트 사이즈의 데이터는 Byte0, Byte1, Byte2, Byte3 중 어느 하나의 위치를 기점으로 하는 것도 가능해진다.
지금 임시로, 도면 중 482의 라이트 데이터와 같이, 2Byte, 4Byte, 1Byte, 2Byte, 2Byte, 1Byte 사이즈의 데이터 0 내지 5를 연속하여 메모리에 기억하는 경우를 생각한다. 이 경우, 도면 중 481과 같이 라이트 동작을 행하면, 도면 중 483에 도시되는 바와 같이 메모리 내의 몇 개의 바이트 영역에서 패딩이 행해지고, 합계로 4바이트의 영역은 유효한 데이터의 기억에 이용되지 않는다. 이것으로는 메모리의 용량이 유효하게 이용되지 않게 된다. 다만, 칼럼 어드레스(CA)에 의해 4바이트 단위로 출력하면, 각 데이터를 1회의 칼럼 어드레스 액세스로 판독할 수 있기 때문에 판독 속도는 빨라진다.
그러나, 상기의 기억 용량의 낭비를 없애기 위해서는, 패딩을 행하지 않고서 메모리의 각 바이트 영역에 연속하여 데이터를 기억하면 좋다. 예컨대, 도 49의 도 면 중 491과 같이 3사이클의 라이트 커맨드(WR)로 기록을 행하여, 도면 중 493에 도시되는 바와 같이 메모리 내의 바이트 영역에 데이터를 기억할 수 있다.
도 49와 같이 데이터 기록을 행하면, 메모리의 기억 용량을 유효하게 활용할 수 있다. 그러나, 데이터 3의 2바이트의 데이터 B03, B13과 같이, 또는 데이터 1의 4바이트의 데이터 C01-C31와 같이, 다른 칼럼 어드레스의 영역에 걸쳐 데이터가 기억된 경우는, 종래의 메모리에서는 1회의 칼럼 액세스로 기록 및 판독을 실행할 수는 없어 2회의 액세스가 필요하다. 도면 중 491에 도시되는 바와 같이, 데이터 3의 판독에 2회 리드 커맨드(RD)를 발행해야 하여 액세스 효율이 저하한다.
그래서, 도 50의 도면 중 500에 도시되는 바와 같이, 바이트 경계 기능을 이용하여 1회의 리드 커맨드(RD)의 발행과 스타트 바이트 신호 SB=3의 지정을 행함으로써, 다른 칼럼 어드레스의 영역에 걸치는 데이터 3(B03, B13)을 액세스할 수 있다. 따라서, 바이트 경계 기능을 갖는 메모리는, 액세스 성능의 저하를 발생시키지 않고, 메모리 이용률의 향상을 실현하는 것이 가능하다.
[바이트 경계 기능에 대응한 메모리 컨트롤러]
다음으로, 바이트 경계 기능에 대응한 메모리 컨트롤러에 대해서 설명한다. 도 8에서 화상 처리 시스템을 설명하였지만, 이 화상 처리 시스템 내의 화상 처리 칩(80) 내에 화상 처리 제어부(81)와 메모리 제어부(메모리 컨트롤러)(82)가 포함된다.
도 51은 화상 처리 시스템의 구성도이다. 도 8과 마찬가지로, 화상 처리 제어부(81)와, 메모리 제어부(82)와, 화상 메모리(86)로 구성된다. 화상 처리 제어 부(81)는 일례로서 MPEG 복호 처리를 행하는 구성이다. 화상 처리 제어부(81)는 부호화, 압축된 스트림 데이터(STM)가 입력되는 엔트로피 복호화 처리부(510)와, DCT 계수(DCT-F)에 기초하여 데이터 처리를 행하는 역 양자화 및 역 IDC 처리부(511)와, 인트라 예측부(512)와, 이동벡터(MV)와 마이크로 블록 분할 정보(MBdiv)에 기초하여 메모리 제어부(82)에 참조 화상 판독을 행하는 인터 예측부(513)와, 처리 선택부(515)를 포함한다. 메모리 제어부(82)는 화상 처리 제어부(81)와 화상 메모리(86) 사이에서 커맨드나 어드레스의 발행 등을 포함하는 메모리 제어를 행한다. 처리 선택부(515)로부터 출력되는 복호화상 데이터(D-IMG)가 메모리 제어부(82)에 의해 화상 메모리(86)에 저장된다. 또한, 인터 예측부(513)의 참조 화상 판독 제어부(514)는 메모리 제어부(82)를 통해 화상 메모리(86)로부터 참조 화상(R-IMG)의 데이터를 취득하고, 처리 선택부(515)에 부여한다.
MPEG 디코더에서는 이동벡터에 기초하여 메모리로부터 판독되는 과거의 화상 또는 미래의 화상 내의 참조 화상(R-IMG)과, 그 참조 화상과의 차분 데이터에 기초하여, 현재의 화상 데이터를 복호화한다. 따라서, 일단 화상 메모리(86)에 저장한 화상으로부터 이동벡터의 위치에 있는 직사각형의 참조 화상을 판독하는 동작이 빈번히 행해진다. 이 직사각형 액세스 제어에 있어서, 바이트 경계 기능을 갖는 화상 메모리(86) 및 이에 대응한 메모리 제어부(82)를 이용함으로써, 액세스 효율을 높일 수 있다.
도 52는 메모리 제어부(메모리 컨트롤러)의 입력 및 출력 신호를 도시한 도면이다. 도 53은 프레임 화상 내의 판독 대상의 참조 화상 영역을 설명하는 도면이 다. 프레임 화상(FM-IMGL)에 있어서, 좌측 위가 화소 좌표의 원점(0,0)이며, 직사각형의 참조 화상(RIMG)의 영역을 특정하기 위해서는 직사각형의 좌측 위의 좌표(POSX, POSY)와, 종횡 사이즈(SIZEY, SIZEX)가 필요하다. 따라서, 화상 처리부 내의 참조 화상 판독 제어부(514)는 참조 화상(RIMG)의 영역을 특정하는 상기의 정보[(POSX, POSY), SIZEY, SIZEX]를 메모리 컨트롤러(82)에 공급한다. 또한, 참조 화상 판독 제어부(514)와 메모리 컨트롤러(82) 사이에서는 다이렉트 메모리 엑세스 제어 신호(DMA-CON)가 입출력된다.
한편, 메모리 컨트롤러(82)는 상기의 참조 화상 영역을 특정하는 정보[(POSX, POSY), SIZEY, SIZEX]에 기초하여, 메모리 공간 내의 어드레스(Add)(뱅크 어드레스, 로우 어드레스, 칼럼 어드레스)를 산출하고, 커맨드(CMD), 어드레스(Add), 멀티 뱅크 액세스 정보(SA'), 스타트 바이트 신호(SB), 기록 데이터(Data) 등을 메모리(86)에 공급한다. 또한, 메모리(86)로부터 판독된 판독 데이터(Data)를 수신한다.
도 54는 메모리 제어부의 상세한 구성도이다. 메모리 제어부(82)는, 전술한 화상 처리 제어부와 같이 메모리에의 액세스를 요구하는 액세스 요구원 블록(81-1 내지 81-N)으로부터, 액세스 대상의 화상 영역의 정보(POSX, POSY, SIZEX, SIZEY), 기록 데이터(Data)를 수신하는 인터페이스 제어부(541-1 내지 N)와, 이들 인터페이스부를 경유하여 상기의 화상 영역 정보를 수취하고 어드레스와 커맨드를 생성하는 어드레스 커맨드 생성부(542-1 내지 N)를 포함한다. 이들의 인터페이스 제어부와 어드레스 커맨드 생성부는 조정 회로(540)에 의해 어느 하나가 활성화되어야 하는 지 조정된다. 조정 회로(540)에 의해 선택되어 활성화되어 있는 어드레스 커맨드 생성부(542)가 셀렉터(SEL)를 경유하여 커맨드(CMD), 어드레스(Add)(뱅크 어드레스, 로우 어드레스, 칼럼 어드레스), 멀티 뱅크 액세스 정보(SA'), 스타트 바이트 신호(SB) 등을 메모리(86)에 발행한다. 이에 의해, 메모리 제어부(82)는 조정에 의해 선택된 액세스 요구원 블록을 위해 메모리(86)에의 액세스 제어를 행하고, 데이터 기록 또는 데이터 판독을 행한다. 또한, 메모리 제어부(82)는 필요한 빈도로 메모리에 대하여 리프레시 요구 등도 행한다.
메모리 제어부(82)가 발행하는 커맨드(CMD)에는, 예컨대 모드 레지스터 세트 커맨드, 액티브 커맨드, 리드 커맨드, 라이트 커맨드, 프리차지 커맨드, 리프레시 커맨드 등, 통상의 SDRAM에서 필요한 커맨드가 포함된다. 또한, 메모리 제어부(82) 내의 설정 레지스터(543)에는 프레임 화상(FM-IMG)의 좌측 위 화소의 어드레스나, 메모리 맵핑 정보나, 메모리(86)가 갖는 기능에 대한 정보가 설정된다. 메모리가 갖는 기능이란, 예컨대 후술하는 바와 같이, 멀티 뱅크 액세스 기능이나, 엔디안에 대응하는 데이터 배열의 전환 기능 등이며, 컨트롤 대상의 메모리가 갖는 기능의 유무가 이 설정 레지스터(543)에 설정된다.
도 55는 참조 화상 판독 제어부(514)에서의 인터 예측부(513)의 연산을 설명하는 도면이다. MPEG의 경우, 매크로 블록(MB)을 처리 단위로 하고 있다. 매크로 블록(MB)은 16× 16 화소의 휘도 데이터와, 8× 8 화소의 색차(Cb, Cr) 데이터(Y:U:V=4:2:0의 경우)로 구성된다. 그리고, 이 매크로 블록(MB)을 4등분한 8× 8 화소의 휘도 데이터를 포함하는 1/4 매크로 블록(QMB)이 이동벡터(MV), 참조 화 상(RIMG)의 처리 단위이다. 임시로, 현재 처리 중인 매크로 블록(MB)의 좌측 위 좌표가 (MBaddrx, MBaddry), 그 매크로 블록 분할 정보가 (Mbdivx, Mbdivy), 이동벡터[MV=(Wx, MVy)]로 하면, 연산 처리부(515)에서는 도시되는 연산식의 연산에 의해 참조 화상(RIMG)의 좌측 위 좌표(POSX, POSY)와 횡폭(SIZEX)과 높이(SIZEY)가 산출된다. 이 횡폭(SIZEX)은 메모리의 1회의 액세스로 입출력되는 바이트 수의 배수로 설정되고, 높이(SIZEY)는 수직 방향의 화소수로 설정된다.
상기한 바와 같이 하여 산출된 참조 화상 특정 정보[(POSX, POSY), SIZEY, SIZEX]가 참조 화상 판독 제어부(514)로부터 메모리 컨트롤러(82)에 출력되고, 메모리 컨트롤러(82) 내의 커맨드 어드레스 생성부(542)가, 상기 참조 화상 특정 정보와, 설정 레지스터(543) 내의 메모리 맵핑 정보와 프레임 영역의 좌측 위의 어드레스 등에 기초하여, 직사각형 액세스에 요구되는 메모리 공간의 어드레스를 생성한다.
도 56은 참조 화상 판독 제어부(514)에서의 인터 예측부(513)의 연산예를 도시한 도면이다. 도 55의 구체적인 예이다. 우선, 매크로 블록(MB)의 좌측 위 좌표가 (MBaddrx, MBaddry)=(0,0), 매크로 블록 분할 정보가 Mbdivx, Mbdivy=8, 이동벡터 MV=(MVx, Mvy)=(13,4)이기 때문에, 참조 화상(RIMG)의 좌측 위 좌표(POSX, POSY), 횡폭(SIZEX)과 높이(SIZEY)는 다음과 같은 연산으로 구한다.
POSX=0+8+13=21
POSY=0+8+4=12
SIZEX=8, SIZEY=8
상기한 참조 화상(RIMG)의 직사각형 영역은, 칼럼 어드레스로 선택되는 4바이트 영역의 단위와 정합하지 않는다. 4바이트 영역의 단위와 정합시키기 위해서는, 도 56 중의 확대 영역(E-RIMG)과 같이, 좌측 위 좌표 (20, 12), 횡폭 12, 높이 8 영역으로 액세스하는 것이 필요하게 된다. 그러나, 바이트 경계 기능을 이용함으로써, 4 바이트 단위의 경계를 넘어 바이트 단위로 액세스가 가능해진다. 이와 같이, MPEG 등의 참조 화상 데이터의 액세스에 있어서, 바이트 경계 기능은 액세스 효율의 향상에 기여한다.
도 57은 메모리 맵핑예를 도시한 도면이다. 도 1에 도시한 메모리 맵핑(12)과 마찬가지로, 화상의 화소와 메모리 공간 내의 페이지 영역(14)이 메모리 맵핑(12)과 같이 대응되어 있고, 인접한 페이지 영역은 다른 뱅크 어드레스(BA)가 되도록 배치되어 있다. 페이지 영역(14)은 뱅크 어드레스(BA)와 로우 어드레스(RA)로 선택되는 영역이며, 각 페이지 영역(14)은 칼럼 어드레스로 선택되는 복수의 메모리 단위 영역(4바이트 영역)으로 구성된다. 도 57의 예에서는, 페이지 영역(14)은 64 화소× 16 화소의 화상 데이터를 저장하는 단위이다.
도 58은 메모리 맵핑(12)에 있어서의 페이지 영역(14)의 구성을 도시한 도면이다. 뱅크 Bank 0 내의 로우 어드레스 RA0로 특정되는 페이지 영역(14)은 칼럼 어드레스 CA0 내지 CA255의 메모리 단위 영역을 가지며, 각 칼럼 어드레스에 의해 4바이트가 선택되고, 칼럼 어드레스(CA)의 절첩폭(스텝폭)이 16이다. 따라서, 페이지 영역(14)은 횡폭이 64(=4× 16)바이트, 높이가 16(=256/16)바이트의 구성으로 되어 있다.
도 59는 도 56의 참조 화상 영역의 메모리 맵 상에서의 배치를 도시한 도면이다. 도 59에 도시되는 바와 같이, 참조 화상 영역(RIMG)은 좌측 위 좌표 (21, 12), 횡폭 8, 높이 8이므로, 칼럼 어드레스 CA5를 선두 번지로 하고, 바이트 BY1로부터 횡폭 8바이트, 높이 8바이트의 메모리 영역에 대응한다. 즉, 직사각형 액세스 영역의 좌측 단(591)은 칼럼 어드레스(CA)에 의한 경계(590)로부터 1바이트(도면 중 592) 만큼 시프트하고 있다. 따라서, 전술한 바이트 경계 기능을 갖는 메모리에 대해서는, 액티브 커맨드(ACT)와 함께 뱅크 어드레스(BA0), 로우 어드레스(RA0)를 발행하고, 리드 커맨드(RD)[또는 라이트 커맨드(WR)]와 함께 선두 칼럼 어드레스 CA5, CA6 내지 CA117, CA118와 스타트 바이트 신호 SB=1를 연속하여 발행하면 좋다. 또는, 도 42 내지 도 44에서 도시한 자동 내부 칼럼 어드레스 생성 기능을 갖는 메모리에 대해서는, 칼럼 어드레스 절첩폭(CA Wrap)=16을 설정해 두고, 리드 커맨드(RD)[또는 라이트 커맨드(WR)]와 함께 선두 칼럼 어드레스 CA5와, 스타트 바이트 신호 SB=1와, 직사각형 폭 RWidth=2과, 버스트 길이 BL=16를 발행하면 좋다.
도 60은 참조 화상 영역의 메모리 맵 상에서의 다른 배치예를 도시한 도면이다. 이 도면에서는 참조 화상 영역(RIMG)이 인접한 페이지 영역(14-0, 14-1)에 걸쳐 있다. 즉, 페이지 영역의 경계(600)를 넘어 있다. 이 경우는, 도 7에서 설명한 멀티 뱅크 액세스 기능을 갖는 메모리라면 멀티 뱅크 액세스 정보(SA')를 발행함으로서, 1회의 액티브 커맨드에 의해 액세스할 수 있다. 메모리가 멀티 뱅크 액세스 기능을 갖고 있지 않은 경우는 뱅크 Bank0, 1에 대한 복수회의 액티브 커맨드를 발행하여 액세스해야 한다. 따라서, 메모리 컨트롤러는 컨트롤 대상의 화상 메모리가 멀티 뱅크 액세스 기능을 갖는지의 여부를 레지스터에 설정해 두고, 그 설정 정보에 따라 화상 메모리에의 액세스 제어를 변경해야 한다.
도 61은 바이트 경계 기능을 갖지 않는 메모리에 대한 메모리 컨트롤러에서의 타이밍 차트도이다. 도 59의 참조 화상(RIMG)의 액세스 예이다. 종래의 SDRAM에는 바이트 경계 기능이 마련되지 않는다. 그 경우에는, 메모리 컨트롤러는 도 61에 도시한 바와 같은 제어를 행해야 한다.
도 61 중, 참조 화상 판독 제어부와 메모리 컨트롤러 사이의 신호(610)와, 메모리 컨트롤러와 화상 메모리 사이의 신호(611)가 도시되어 있다. 전술한 바와 같이, 참조 화상 판독 제어부(514)는 메모리 컨트롤러에 액세스 요구(REQ)와 함께 참조 화상 영역의 좌측 위 좌표(POSX, POSY)와 횡폭(SIZEX), 높이(SIZEY)의 정보를 송신하고, 메모리 컨트롤러는 이에 응답하여 응답 신호(ACK)를 회신한다. 메모리 맵핑 정보와 프레임 화상의 좌측 위 원점의 어드레스는 미리 설정 레지스터에 설정되어 있는 것으로 한다.
이 액세스 요구(REQ)에 응답하여, 메모리 컨트롤러는 화상 메모리에 대하여, 액티브 커맨드(ACT)와 뱅크 어드레스 BA=0, 로우 어드레스 RA=0를 발행하고, 메모리에 액티브 동작을 행하게 한다. 그 후, 메모리 컨트롤러는 클록(CLK)에 동기하여 리드 커맨드(RD)와 뱅크 어드레스 BA=0, 칼럼 어드레스 CA=5, 6, 7 내지 117, 118, 119(24회)를 발행하여 4바이트 데이터를 24회 수신한다. 그 후, 메모리 컨트롤러는 스트로브 신호(STB)를 H 레벨로 하여 그 수신한 데이터를 판독 제어부에 송신한다.
도 62는 바이트 경계 기능을 갖는 메모리에 대한 메모리 컨트롤러에서의 타 이밍 차트도이다. 이 도면은 도 59의 참조 화상(RIMG)의 액세스예이며, 메모리가 바이트 경계 기능을 갖는 경우의 제어이다. 도면 중, 참조 화상 판독 제어부와 메모리 컨트롤러 사이의 신호(620)와, 메모리 컨트롤러와 화상 메모리 사이의 신호(621)가 도시되어 있다.
이 경우는, 참조 화상 판독 제어부로부터 메모리 컨트롤러에 도 61과 동일한 신호가 송신된다. 메모리 컨트롤러는 화상 메모리에 대하여, 액티브 커맨드(ACT)와 뱅크 어드레스 BA=0, 로우 어드레스 RA=0를 발행하여 메모리에 액티브 동작을 행하게 하고, 그 후 메모리 컨트롤러는 리드 커맨드(RD)와, 뱅크 어드레스 BA=0와, 칼럼 어드레스 CA=5, 6 내지 117, 118(16회)과, 스타트 바이트 신호 SB=01을 발행하여, 4바이트 데이터를 16회 수신한다. 또한, 메모리 컨트롤러는 스트로브 신호(STB)를 H 레벨로 하여 그 수신한 64바이트의 데이터를 판독 제어부에 송신한다. 메모리가 바이트 경계 기능을 갖기 때문에, 리드 커맨드의 발행은 16회로 좋고 액세스 효율이 높아진다.
또한, 도시하지 않았지만, 도 42 내지 도 44에서 도시한 자동 내부 칼럼 어드레스 생성 기능을 갖는 메모리에 대해서는, 칼럼 어드레스 절첩폭 CA Wrap=16을 설정해 두고, 리드 커맨드(RD)와 함께 선두 칼럼 어드레스 CA5와, 스타트 바이트 신호 SB=01와, 직사각형 폭 RWidth=2와, 버스트 길이 BL=16을 발행하면 좋다. 이에 응답하여, 화상 메모리는 내부에서 칼럼 어드레스를 자동 생성하여 직사각형 영역의 4바이트 데이터를 16사이클로 출력하고, 메모리 컨트롤러는 4바이트 데이터를 16회 연속하여 수신한다.
도 63은 바이트 경계 기능과 멀티 뱅크 액세스 기능을 갖지 않는 메모리에 대한 메모리 컨트롤러에서의 타이밍 차트도이다. 이 예는 도 60의 참조 화상(RIMG)을 액세스하는 예이며, 멀티 뱅크 액세스 기능을 갖지 않는 화상 메모리에 대한 제어예이다. 도면 중, 참조 화상 판독 제어부와 메모리 컨트롤러 사이의 신호(630)와, 메모리 컨트롤러와 화상 메모리 사이의 신호(631)가 도시되어 있다.
멀티 뱅크 액세스 기능을 갖지 않는 메모리는 도 45에 도시한 바와 같이, 뱅크 경계를 넘는 영역에의 액세스는 불가능하다. 따라서, 이 경우 메모리 컨트롤러는 액티브 커맨드(ACT)와 BA=0, RA=0을 발행하여 페이지 영역(14-0)을 액티브 동작시키고, 리드 커맨드(RD)와 함께 뱅크 어드레스 BA=0, 칼럼 어드레스 CA=15 내지 127를 발행하여 8바이트의 데이터를 수신한다. 또한, 메모리 컨트롤러는 액티브 커맨드(ACT)와 BA=1, RA=0을 발행하여 페이지 영역(14-1)을 액티브 동작시키고, 리드 커맨드(RD)와 함께 뱅크 어드레스 BA=1, 칼럼 어드레스 CA=0, 1 내지 112, 113을 발행하여 16바이트의 데이터를 수신한다. 그리고, 메모리 컨트롤러는 수신한 24바이트의 데이터를 참조 화상 판독 제어부에 송신한다.
도 64는 멀티 뱅크 액세스 기능과 바이트 경계 기능을 갖는 메모리에 대한 메모리 컨트롤러에 있어서의 타이밍 차트도이다. 이것도 도 60의 참조 화상(RIMG)을 액세스하는 예이다. 도면 중, 참조 화상 판독 제어부와 메모리 컨트롤러 사이의 신호(640)와, 메모리 컨트롤러와 화상 메모리 사이의 신호(641)가 도시되어 있다.
메모리 컨트롤러는 액티브 커맨드(ACT)와 함께, 뱅크 어드레스 BA=0, 로우 어드레스 RA=0, 그리고 멀티 뱅크 액세스 정보 SA'=10(횡방향으로 인접한 2뱅크의 액세스를 나타냄)를 발행한다. 이에 응답하여, 화상 메모리는 뱅크 BA=0의 뱅크를 액티브 동작시킨다. 그리고, 메모리 컨트롤러는 리드 커맨드(RD)와 함께, 스타트 바이트 신호 SB=01와 뱅크 어드레스(BA), 칼럼 어드레스(CA)를 순차 발행한다. 이 칼럼 어드레스 CA=15에 응답하여, 화상 메모리는 BA=1의 뱅크도 액티브 동작시킨다. 메모리 컨트롤러는 16회의 리드 커맨드(RD)에 대응하여, 16바이트의 데이터를 수신한다. 또한, 메모리 컨트롤러는 수신한 16바이트의 데이터를 참조 화상 판독 제어부에 송신한다.
이와 같이, 메모리 컨트롤러는 멀티 뱅크 액세스 기능을 갖는 메모리에 대해서는, 다른 뱅크 영역에 걸치는 데이터라도 1회의 액티브 커맨드를 발행하면 좋다.
도 65는 메모리 컨트롤러의 제어 동작의 흐름도이다. 우선, 상위의 CPU에 의해 메모리 컨트롤러 내의 설정 레지스터에 멀티 뱅크 액티브 기능의 ON/OFF가 설정된다(S1). 참조 화상 판독 제어부가 이동벡터 정보, 매크로 블록 분할 정보, 대상 매크로 블록 정보에 의해 참조 화상 블록의 좌표(POSX, POSY)와 사이즈(SIZEX, SIZEY)를 산출하고(S2), 직사각형 액세스의 요청을 이들 직사각형 파라미터와 함께 메모리 컨트롤러에 발행한다(S3).
메모리 컨트롤러는 이 직사각형 파라미터(POSX, POSY)(SIZEX, SIZEY)와, 설정 레지스터에 설정되어 있는 메모리 맵 정보 및 프레임 화상의 어드레스 정보로부터, 직사각형 액세스로 발행해야 하는 BA, RA, CA, SB, SA'를 산출한다(S4). 멀티 뱅크 액티브 기능이 ON인 경우(S5의 YES), 메모리 컨트롤러는 액티브 커맨드(ACT)와 함께 BA, RA, SA'를 발행하고, 또한 리드 커맨드(RD)와 함께 BA, CA, SB를 순차 발행하면서 리드 데이터를 수신한다(S6, S7, S8). 라이트 동작의 경우, 리드 커맨드 대신에 라이트 커맨드(WR)와 함께 BA, CA, SB를 순차 발행하면서 라이트 데이터를 출력한다.
또한, 멀티 뱅크 액티브 기능이 OFF인 경우(S5의 NO), 메모리 컨트롤러는 요청이 있는 직사각형이 페이지 영역, 즉 뱅크를 넘는지의 여부를 체크하고(S9), 넘지 않는 경우(S9의 NO), 액티브 커맨드(ACT)와 함께 BA, RA를 발행하고, 또한 리드 커맨드(RD)와 함께 BA, CA, SB를 순차 발행하면서 리드 데이터를 수신한다(S10, S11, S12). 라이트 동작의 경우, 리드 커맨드 대신에 라이트 커맨드(WR)와 함께 BA, CA, SB를 순차 발행하면서 라이트 데이터를 출력한다.
또한, 뱅크를 넘는 경우(S9의 YES), 바이트 경계 기능을 이용할 수 없기 때문에, 메모리 컨트롤러는 도 56에 도시한 확대 직사각형 영역(E-RIMG)의 좌표(POSX)와 폭(SIZEX)을 산출하고, 이에 대응하는 좌측 위 좌표의 어드레스 BA, RA, CA를 산출한다(S13). 그리고, 확대 직사각형 영역에 대하여, 액티브 커맨드(ACT)와 함께 BA, RA를 발행하고, 리드 커맨드(RD)와 함께 BA, CA를 순차 발행하면서 리드 데이터를 수신한다(S15, S16, S17). 그리고, 좌측 위 좌표의 뱅크 내의 리드가 완료되면(S17의 YES, S14의 YES), 일단 프리차지 커맨드를 발생한 후, 다음 뱅크에 대하여 액티브 커맨드를 발생하고, 리드 커맨드(RD)와 함께 BA, CA를 순차 발행하면서 리드 데이터를 더 수신한다(S19, S16, 17). 그 뱅크 내의 데이터를 모두 수신하고(S17의 YES), 모든 데이터 판독이 완료되었다면(S18), 메모리 제어를 종료한다.
또한, 메모리 컨트롤러의 설정 레지스터에 바이트 경계 기능을 OFF로 하는 설정이 있는 경우는, 도 65의 구성 S13 내지 S18에 의해 도 61과 같이 메모리 컨트롤러가 액티브 커맨드와 리드 커맨드와 필요한 어드레스를 발행한다.
이와 같이, 메모리 컨트롤러는 내장된 설정 레지스터에 바이트 경계 기능의 ON, OFF나 멀티 뱅크 액티브 기능의 ON, OFF를 설정할 수 있으며, 제어 대상의 화상 메모리의 기능에 따라서 필요한 커맨드와 어드레스, 멀티 뱅크 정보, 스타트 바이트 정보, 업모드, 다운모드, 얼터너티브 등의 바이트 조합 정보 등을 적절하게 발행한다.
도 66은 메모리 컨트롤러의 제어 동작의 흐름도이다. 이 예는 도 35, 도 36에 도시한 엔디안에 대응하여 입출력 데이터의 교체 기능을 제어 대상의 화상 메모리가 갖는지의 여부를 메모리 컨트롤러에 설정할 수 있도록 되어 있다. 우선, 상위의 CPU가 메모리 컨트롤러의 설정 레지스터에, 화상 메모리에 있어서의 출력 데이터의 재배열 기능의 유무를 설정한다(S20). 그리고, 참조 화상 판독 제어부가 이동벡터 정보, 매크로 블록 분할 정보, 대상 매크로 블록 정보에 의해 참조 화상 블록의 좌표(POSX, POSY)와 사이즈(SIZEX, SIZEY)를 산출하고(S21), 직사각형 액세스의 요청을 이들 직사각형 파라미터와 함께 메모리 컨트롤러에 발행한다(S22).
다음으로, 메모리 컨트롤러는 이 직사각형 파라미터(POSX, POSY)(SIZEX, SIZEY)와, 설정 레지스터에 설정되어 있는 메모리 맵 정보 및 프레임 화상의 어드레스 정보로부터, 직사각형 액세스로 발행해야 하는 BA, RA, CA, SB, SA'를 산출한다(S23). 그리고, 출력 데이터의 재배열 기능이 ON으로 설정되어 있는 경우(S24의 YES), 메모리 컨트롤러는 액티브 커맨드와 함께 뱅크 어드레스(BA), 로우 어드레스(RA), 멀티 뱅크 정보(SA')를 발행하고, 리드 커맨드와 함께 뱅크 어드레스(BA), 칼럼 어드레스(CA), 스타트 바이트 정보(SB)를 더 발행한다(S25). 그 후는 모든 데이터의 판독이 완료될 때까지, 리드 커맨드, BA, CA, SB를 반복하여 발행한다(S26, S27).
한편, 출력 데이터의 재배열 기능이 OFF로 설정되어 있는 경우(S24의 NO), 메모리 컨트롤러는 액티브 커맨드와 함께 뱅크 어드레스(BA), 로우 어드레스(RA), 멀티 뱅크 정보(SA')를 발행하고, 리드 커맨드와 함께 뱅크 어드레스(BA), 칼럼 어드레스(CA), 스타트 바이트 정보(SB)를 더 발행한다(S25). 그 후는 모든 데이터의 판독이 완료될 때까지, 리드 커맨드, BA, CA, SB를 반복하여 발행하는 동시에, 수신한 데이터의 배열이 원래의 화상 데이터의 순서대로 되도록 재배열을 행한다(S28, S29, S30).
상기의 도 65와 도 66은 설정 레지스터의 설정 항목에 의해 적절하게 조합할 수 있다.
또한, 상기의 실시예에서는 복수 화소의 화상 데이터를 이차원 배치한 디지털 화상 데이터를 기억하는 화상 메모리를 예로서 설명하였다. 그러나, 본 발명은 화상 데이터를 기억하는 화상 메모리에 한정되지 않고, 화상 데이터 이외라도 이차원 배열된 데이터를 소정의 맵핑 룰에 기초하여 기억하는 메모리 장치에 적용 가능하다. 기억 데이터가 이차원 배열된 데이터라면, 그 이차원 배열 데이터 내의 임의의 직사각형 영역을 액세스할 때에 복수의 메모리 단위 영역에 걸쳐 데이터에 액세 스하는 것이 요구되는 경우가 있다. 이 경우에도 본 발명은 적용 가능하다.
이상의 실시예를 정리하면, 다음의 부기와 같다.
(부기 1)
어드레스에 의해 선택되는 복수의 메모리 단위 영역을 포함하는 메모리 셀 어레이와,
복수의 입출력 단자와,
상기 메모리 셀 어레이와 복수의 입출력 단자 사이에 설치되는 입출력 유닛을 포함하고,
상기 메모리 단위 영역 내에는 상기 복수의 입출력 단자에 대응하는 복수의 바이트 또는 비트의 데이터가 기억되고,
또한, 상기 메모리 셀 어레이와 입출력 유닛은 제1 동작 코드에 응답하여 입력 어드레스와 상기 바이트 또는 비트의 조합 정보에 기초하여, 상기 입력 어드레스에 대응하는 제1 메모리 단위 영역과 이에 인접하는 제2 메모리 단위 영역 내의 복수의 바이트 또는 비트에 액세스하며, 상기 액세스한 제1 및 제2 메모리 단위 영역의 복수의 바이트 또는 비트로부터 상기 조합 정보에 기초한 조합의 복수의 바이트 또는 비트를 상기 복수의 입출력 단자에 대응시키는 것을 특징으로 하는 메모리 장치.
(부기 2)
부기 1에 있어서,
상기 어드레스는 로우 어드레스와 칼럼 어드레스를 포함하고,
상기 메모리 셀 어레이는 상기 로우 어드레스로 선택되는 복수의 페이지 영역을 포함하며, 이 페이지 영역은 상기 칼럼 어드레스로 선택되는 복수의 상기 메모리 단위 영역을 포함하고,
액티브 커맨드, 리드 또는 라이트 커맨드가 공급되며, 상기 제1 동작 코드가 상기 리드 또는 라이트 커맨드이고,
상기 액티브 커맨드에 응답하여 상기 로우 어드레스로 선택되는 페이지 영역이 액티브 동작을 행하며, 상기 리드 또는 라이트 커맨드에 응답하여, 상기 칼럼 어드레스에 대응하는 상기 제1 메모리 단위 영역과 그에 인접한 제2 메모리 단위 영역의 복수의 바이트 또는 비트로부터 상기 조합 정보에 기초한 조합의 복수의 바이트 또는 비트가 상기 복수의 입출력 단자에 대응되는 메모리 장치.
(부기 3)
부기 2에 있어서,
이차원 배열 데이터가 상기 복수의 메모리 단위 영역에 소정의 맵핑 룰에 따라 기억되고,
상기 메모리 셀 어레이는, 복수의 뱅크를 포함하고, 각 뱅크는 복수의 상기 페이지 영역을 포함하며, 각 페이지 영역은 복수의 메모리 단위 영역을 포함하고,
상기 액티브 커맨드와 함께 상기 뱅크를 선택하는 뱅크 어드레스와 상기 로우 어드레스가 공급되며, 상기 리드 또는 라이트 커맨드와 함께 상기 뱅크 어드레스 및 칼럼 어드레스와 상기 조합 정보가 공급되는 메모리 장치.
(부기 4)
부기 3에 있어서,
상기 조합 정보는 상기 메모리 단위 영역 내의 선두 바이트 또는 선두 비트를 나타내는 제1 정보(SB)와, 상기 맵핑 룰을 나타내는 제2 정보(BMR)를 포함하고,
상기 제1 정보와 제2 정보가 상기 리드 또는 라이트 커맨트와 함께 공급되는 메모리 장치.
(부기 5)
부기 3에 있어서,
상기 조합 정보는 상기 메모리 단위 영역 내의 선두 바이트 또는 선두 비트를 나타내는 제1 정보(SB)와, 상기 맵핑 룰을 나타내는 제2 정보(BMR)를 포함하고,
상기 제1 정보가 상기 리드 또는 라이트 커맨드와 함께 공급되고,
상기 제2 정보가 상기 액티브 커맨드에 선행하는 모드 레지스터 세트 커맨드와 함께 공급되고,
상기 제2 정보가 모드 레지스터 내에 설정되는 메모리 장치.
(부기 6)
부기 1에 있어서,
이차원 배열 데이터가 상기 복수의 메모리 단위 영역에 소정의 맵핑 룰에 따라 기억되고,
상기 조합 정보는 상기 메모리 단위 영역 내의 선두 바이트 또는 선두 비트를 나타내는 제1 정보(SB)와, 상기 맵핑 룰을 나타내는 제2 정보(BMR)를 포함하고,
상기 맵핑 룰을 나타내는 제2 정보에는, 상기 이차원 배열 데이터의 배열순 과 상기 메모리 단위 영역 내의 데이터의 배열순이 동일한 빅 엔디안과, 상기 이차원 배열 데이터의 배열순과 상기 메모리 단위 영역 내의 데이터의 배열순이 반대인 리틀 엔디안과, 상기 이차원 배열 데이터의 홀수 및 짝수의 배열순과 상기 메모리 단위 영역 내의 데이터의 홀수 및 짝수의 배열순이 다른 홀수 짝수 반전 룰을 포함하는 맵핑 룰 그룹 중 어느 하나가 포함되는 메모리 장치.
(부기 7)
부기 1에 있어서,
상기 메모리 셀 어레이는 복수의 뱅크를 포함하고, 각 뱅크는 복수의 상기 페이지 영역을 포함하며, 각 페이지 영역은 복수의 메모리 단위 영역을 포함하고,
상기 어드레스는 뱅크 어드레스와 로우 어드레스와 칼럼 어드레스를 포함하고,
상기 페이지 영역이 상기 뱅크 어드레스와 로우 어드레스로 선택되며, 상기 메모리 단위 영역이 상기 뱅크 어드레스와 칼럼 어드레스로 선택되고,
동작 코드로서 액티브 커맨드, 리드 또는 라이트 커맨드가 공급되며, 상기 제1 동작 코드가 상기 리드 또는 라이트 커맨드이고,
상기 액티브 커맨드와 함께 상기 뱅크를 선택하는 뱅크 어드레스와 상기 로우 어드레스가 공급되며, 이에 응답하여 상기 뱅크 어드레스 및 로우 어드레스로 선택되는 페이지 영역이 액티브 동작을 행하고,
상기 리드 또는 라이트 커맨드와 함께 상기 뱅크 어드레스 및 칼럼 어드레스와 상기 조합 정보가 공급되며, 이에 응답하여 상기 뱅크 어드레스 및 칼럼 어드레 스에 대응하는 상기 제1 메모리 단위 영역과 이에 인접하는 제2 메모리 단위 영역의 복수의 바이트 또는 비트로부터 상기 조합 정보에 기초하는 조합의 복수의 바이트 또는 비트가 상기 복수의 입출력 단자에 대응되는 메모리 장치.
(부기 8)
부기 1에 있어서,
상기 메모리 셀 어레이는 복수의 뱅크로 분할되고, 각 뱅크 내의 메모리 셀 어레이는 복수의 상기 페이지 영역을 포함하며, 각 페이지 영역은 복수의 메모리 단위 영역을 포함하고,
상기 어드레스는 뱅크 어드레스와 로우 어드레스와 칼럼 어드레스를 포함하고,
상기 페이지 영역이 상기 뱅크 어드레스와 로우 어드레스로 선택되며, 상기 메모리 단위 영역이 상기 뱅크 어드레스와 칼럼 어드레스로 선택되고,
상기 뱅크는 상기 메모리 셀 어레이와, 칼럼 디코더와, 로우 디코더와, 상기 입출력 유닛을 포함하고,
상기 입출력 유닛은 상기 메모리 셀 어레이로 액세스되는 데이터를 래치하는 데이터 래치 회로와, 상기 데이터 래치 회로 내의 데이터를 상기 조합 정보에 기초하여 선택하는 데이터 버스 스위치 회로를 포함하는 메모리 장치.
(부기 9)
부기 8에 있어서,
상기 리드 또는 라이트 커맨드에 응답하여, 상기 칼럼 디코더는 공급 칼럼 어드레스의 제1 디코드 신호와, 상기 공급 칼럼 어드레스에 인접한 칼럼 어드레스의 제2 디코드 신호를 순차적으로 생성하고, 상기 제1 디코드 신호에 대응하는 데이터가 제1 데이터 래치 회로에 저장되며, 상기 제2 디코드 신호에 대응하는 데이터가 제2 데이터 래치 회로에 저장되고,
상기 리드 커맨드의 경우는, 상기 제1, 제2 데이터 래치 회로 내의 데이터가 상기 데이터 버스 스위치 회로에 의해 선택되어 상기 입출력 단자에 출력되고,
상기 라이트 커맨드의 경우는, 상기 입출력 단자에 입력된 데이터가 상기 데이터 버스 스위치 회로에 의해 선택된 상기 제1, 제2 데이터 래치 회로에 저장되는 메모리 장치.
(부기 10)
부기 8에 있어서,
상기 리드 또는 라이트 커맨드에 응답하여, 상기 칼럼 디코더는 공급 칼럼 어드레스의 제1 디코드 신호와, 상기 공급 칼럼 어드레스에 인접한 칼럼 어드레스의 제2 디코드 신호를 동시에 생성하고, 상기 제1 디코드 신호에 대응하는 데이터가 제1 데이터 래치 회로에 저장되며, 상기 제2 디코드 신호에 대응하는 데이터가 제2 데이터 래치 회로에 저장되고,
상기 리드 커맨드의 경우는, 상기 제1, 제2 데이터 래치 회로 내의 데이터가 상기 데이터 버스 스위치 회로에 의해 선택되어 상기 입출력 단자에 출력되고,
상기 라이트 커맨드의 경우는, 상기 입출력 단자에 입력된 데이터가 상기 데이터 버스 스위치 회로에 의해 선택된 상기 제1, 제2 데이터 래치 회로에 저장되는 메모리 장치.
(부기 11)
부기 10에 있어서,
상기 칼럼 디코더는 상기 제1, 제2 디코드 신호에 추가하여, 인접한 칼럼 어드레스의 제3, 제4 디코드 신호를 동시에 더 생성하며, 상기 제3, 제4 디코드 신호에 대한 데이터가 제3, 제4 데이터 래치 회로에 저장되고,
상기 리드 커맨드의 경우는, 상기 제1, 제2, 제3, 제4 데이터 래치 회로 내의 데이터가 상기 데이터 버스 스위치 회로에 의해 선택되어 상기 입출력 단자에 출력되고,
상기 라이트 커맨드의 경우는, 상기 입출력 단자에 입력된 데이터가 상기 데이터 버스 스위치 회로에 의해 선택된 상기 제1, 제2 데이터 래치 회로에 저장되는 메모리 장치.
(부기 12)
부기 8에 있어서,
상기 메모리 셀 어레이는 복수의 바이트 또는 비트 영역으로 분할되며, 각 바이트 또는 비트 영역은 짝수 칼럼 어드레스로 액세스되는 짝수 바이트 또는 비트 영역과, 홀수 칼럼 어드레스로 액세스되는 홀수 바이트 또는 비트 영역을 포함하고,
상기 데이터 버스 스위치 회로는 상기 복수의 바이트 또는 비트 영역 각각에 있어서, 짝수 바이트 또는 비트 영역이거나, 또는 홀수 바이트 또는 비트 영역 중 어느 하나를 입출력 단자군에 접속하는 스위치군을 포함하고, 상기 스위치군이 상기 공급 칼럼 어드레스와 조합 정보에 따라 도통·비도통 제어되는 메모리 장치.
(부기 13)
부기 8에 있어서,
상기 메모리 셀 어레이는 복수의 바이트 또는 비트 영역으로 분할되며, 각 바이트 또는 비트 영역은 짝수 칼럼 어드레스로 액세스되는 짝수 바이트 또는 비트 영역과, 홀수 칼럼 어드레스로 액세스되는 홀수 바이트 또는 비트 영역을 포함하고,
상기 데이터 버스 스위치 회로는 상기 복수의 바이트 또는 비트 영역 각각에 있어서, 짝수 바이트 또는 비트 영역이거나, 또는 홀수 바이트 또는 비트 영역 중 어느 하나를 어느 하나의 입출력 단자군에 접속하는 스위치군을 포함하며, 상기 스위치군이 상기 공급 칼럼 어드레스와 조합 정보에 따라 도통·비도통 제어되는 메모리 장치.
(부기 14)
부기 13에 있어서,
이차원 배열 데이터가 상기 복수의 메모리 단위 영역에 소정의 맵핑 룰에 따라 기억되고,
상기 조합 정보가 업모드인지 다운모드인지에 따라서, 상기 데이터 버스 스위치 회로는 상기 복수의 바이트 또는 비트 영역의 바이트 또는 비트 데이터를 업모드 또는 다운모드의 조합으로 상기 입출력 단자군에 접속하는 메모리 장치.
(부기 15)
부기 1에 있어서,
상기 메모리 셀 어레이는 복수의 뱅크로 분할되고, 각 뱅크 내의 메모리 셀 어레이는 복수의 상기 페이지 영역을 포함하며, 각 페이지 영역은 복수의 메모리 단위 영역을 포함하고,
상기 어드레스는, 뱅크 어드레스와 로우 어드레스와 칼럼 어드레스를 포함하고,
상기 페이지 영역이 상기 뱅크 어드레스와 로우 어드레스로 선택되며, 상기 메모리 단위 영역이 상기 뱅크 어드레스와 칼럼 어드레스로 선택되고,
상기 뱅크는, 복수의 바이트 또는 비트 영역으로 분할되며, 각 바이트 또는 비트 영역이 상기 메모리 셀 어레이와, 칼럼 디코더와, 상기 입출력 유닛을 포함하고,
상기 복수의 바이트 또는 비트 영역 내의 칼럼 디코더는 상기 공급되는 칼럼 어드레스와 조합 정보에 기초한 칼럼 어드레스의 디코드 신호를 각각 출력하며, 상기 메모리 셀 어레이가 상기 디코드 신호에 대응하는 바이트 또는 비트의 데이터의 입출력을 행하는 메모리 장치.
(부기 16)
부기 15에 있어서,
상기 공급되는 칼럼 어드레스와 조합 정보에 기초하여, 상기 복수의 바이트 또는 비트 영역 내의 칼럼 디코더에 공급하는 칼럼 어드레스를 제어하는 칼럼 어드 레스 제어 회로(290)를 포함하는 메모리 장치.
(부기 17)
부기 15에 있어서,
상기 입출력 유닛은 상기 복수의 바이트 또는 비트 영역과 상기 입출력 단자군을 접속하는 스위치군을 포함하며, 상기 스위치군은 상기 공급되는 조합 정보의 업모드와 다운모드에 따라서, 상기 복수의 바이트 또는 비트 영역의 바이트 또는 비트 데이터를 업모드 또는 다운모드의 조합으로 상기 입출력 단자군에 접속하는 메모리 장치.
(부기 18)
부기 15에 있어서,
이차원 배열 데이터가 상기 복수의 메모리 단위 영역에 소정의 맵핑 룰에 따라 기억되고,
상기 공급되는 칼럼 어드레스와 조합 정보에 추가하여, 상기 이차원 배열 데이터의 액세스되는 직사각형 영역의 폭 정보와 직사각형 사이즈 정보가 공급되고,
또한, 1회의 리드 또는 라이트 커맨드에 응답하여, 상기 공급 칼럼 어드레스, 조합 정보, 직사각형 영역의 폭 정보와 직사각형 사이즈 정보에 기초하여, 상기 복수의 바이트 또는 비트 영역의 칼럼 디코더에 상기 직사각형 영역에 대응하는 칼럼 어드레스의 조합군을 순서대로 공급하는 칼럼 제어부를 포함하는 메모리 장치.
(부기 19)
부기 1에 기재된 메모리 장치와,
상기 제1 동작 코드와 함께, 상기 어드레스와, 상기 바이트 또는 비트의 조합 정보를 상기 메모리 장치에 공급하여, 상기 메모리 장치 내의 제1 및 제2 메모리 단위 영역 내의 복수의 바이트 또는 비트에 액세스하는 메모리 컨트롤러를 포함하는 메모리 시스템.
(부기 20)
부기 19에 있어서,
상기 메모리 장치에 있어서,
상기 메모리 셀 어레이는 복수의 뱅크를 포함하고, 각 뱅크는 복수의 상기 페이지 영역을 포함하며, 각 페이지 영역은 복수의 메모리 단위 영역을 포함하고,
상기 어드레스는 뱅크 어드레스와 로우 어드레스와 칼럼 어드레스를 포함하며,
상기 페이지 영역이 상기 뱅크 어드레스와 로우 어드레스로 선택되며, 상기 메모리 단위 영역이 상기 뱅크 어드레스와 칼럼 어드레스로 선택되고,
동작 코드로서 액티브 커맨드, 리드 또는 라이트 커맨드가 공급되며, 상기 제1 동작 코드가 상기 리드 또는 라이트 커맨드이고,
상기 액티브 커맨드와 함께 상기 뱅크를 선택하는 뱅크 어드레스와 상기 로우 어드레스가 공급되며, 이에 응답하여 상기 뱅크 어드레스 및 로우 어드레스로 선택되는 페이지 영역이 액티브 동작을 행하고,
상기 리드 또는 라이트 커맨드와 함께 상기 뱅크 어드레스 및 칼럼 어드레스 와 상기 조합 정보가 공급되며, 이에 응답하여 상기 뱅크 어드레스 및 칼럼 어드레스에 대응하는 상기 제1 메모리 단위 영역과 그에 인접한 제2 메모리 단위 영역의 복수의 바이트 또는 비트로부터 상기 조합 정보에 기초한 조합의 복수의 바이트 또는 비트가 상기 복수의 입출력 단자에 대응되고,
상기 메모리 컨트롤러는 상기 액티브 커맨드와 함께 상기 뱅크를 선택하는 뱅크 어드레스와 상기 로우 어드레스를 메모리 장치에 공급하며, 상기 리드 또는 라이트 커맨드와 함께 상기 뱅크 어드레스 및 칼럼 어드레스와 상기 조합 정보를 공급하는 메모리 시스템.
(부기 21)
부기 19에 있어서,
이차원 배열 데이터가 상기 복수의 메모리 단위 영역에 소정의 맵핑 룰에 따라 기억되고,
상기 메모리 컨트롤러는 상기 이차원 배열 데이터 내의 소정의 직사각형 영역을 특정하는 정보에 기초하여, 상기 어드레스와 상기 바이트 또는 비트의 조합 정보를 산출하는 것을 특징으로 하는 메모리 시스템.
(부기 22)
부기 1에 기재된 메모리 장치를 제어하는 메모리 컨트롤러에 있어서,
상기 제1 동작 코드와 함께, 상기 어드레스와, 상기 바이트 또는 비트의 조합 정보를 상기 메모리 장치에 공급하여, 상기 메모리 장치 내의 제1 및 제2 메모리 단위 영역 내의 복수의 바이트 또는 비트에 액세스하는 메모리 컨트롤러.
(부기 23)
부기 22에 있어서,
이차원 배열 데이터가 상기 복수의 메모리 단위 영역에 소정의 맵핑 룰에 따라 기억되고,
상기 이차원 배열 데이터 내의 소정의 직사각형 영역을 특정하는 정보에 기초하여, 상기 어드레스와 상기 바이트 또는 비트의 조합 정보를 산출하는 메모리 컨트롤러.
(부기 24)
반도체 기판상에 회로를 집적한 반도체 집적 회로 장치에 있어서,
워드선 및 비트선에 접속된 복수의 메모리 셀을 갖는 메모리 단위 영역이 매트릭스형으로 배치된 메모리 어레이와,
외부로부터 입력되는 리드 커맨드에 응답하여, 복수의 메모리 셀로부터 복수의 데이터를 판독하는 입출력 유닛을 포함하고,
상기 입출력 유닛은 조합 정보에 따라서, 상기 판독되는 복수 데이터의 조합을 변경하는 것을 특징으로 하는 반도체 집적 회로.
(부기 25)
부기 24에 있어서,
상기 조합 정보는 상기 반도체 기판에 내장된 레지스터에 기억되는 반도체 집적 회로.
(부기 26)
부기 25에 있어서,
외부로부터 입력되는 모드 레지스터 세트 커맨드에 응답하여, 상기 조합 정보가 상기 레지스터에 기억되는 반도체 집적 회로.
(부기 27)
부기 24에 있어서,
상기 조합 정보는 상기 리드 커맨드와 관련하여 외부로부터 입력되는 반도체 집적 회로.
(부기 28)
부기 24 내지 27 중 어느 하나에 있어서,
상기 메모리 단위 영역의 복수 데이터는 단일의 칼럼 어드레스에 각각 할당되어 있는 반도체 집적 회로.
(부기 29)
부기 24 내지 27 중 어느 하나에 있어서,
상기 조합되어 판독되는 복수 데이터는 제1 칼럼 어드레스에 할당된 제1 복수 데이터의 일부와 제2 칼럼 어드레스에 할당된 제2 복수 데이터의 일부로 구성되는 반도체 집적 회로.
(부기 30)
부기 29에 있어서,
상기 제1 복수 데이터는 제1, 제2, 제3 및 제4 데이터로 이루어지며, 상기 제2 복수 데이터는 제5, 제6, 제7 및 제8 데이터로 이루어지고, 상기 조합 정보가 제1 정보일 때, 상기 판독되는 복수 데이터는 상기 제2, 제3, 제4 및 제5 데이터로 구성되며, 상기 조합 정보가 제2 정보일 때, 상기 판독되는 복수 데이터는 상기 제3, 제4, 제5 및 제6 데이터로 구성되는 반도체 집적 회로.
(부기 31)
부기 30에 있어서,
상기 조합 정보가 제3 정보일 때, 상기 판독되는 복수 데이터는 상기 제4, 제5, 제6 및 제7 데이터로 구성되는 반도체 집적 회로.
(부기 32)
반도체 메모리 컨트롤러 장치와 표시 화상 데이터를 기억하는 반도체 메모리 장치를 포함하는 화상 처리 시스템에 있어서,
상기 반도체 메모리 장치는 복수의 뱅크를 포함하고, 각 뱅크 내에 복수의 워드선을 포함하며, 상기 복수 뱅크는 서로 다른 뱅크 어드레스가 할당되며, 상기 각 뱅크 내의 복수의 워드선은 서로 다른 로우 어드레스가 할당되고, 상기 뱅크 어드레스와 상기 로우 어드레스에 의해 페이지 영역이 특정되며, 상기 페이지 영역은 다른 칼럼 어드레스에 각각 할당된 복수의 메모리 단위 영역을 포함하고,
상기 반도체 메모리 컨트롤러는 상기 표시 화상 데이터를 소정의 메모리 맵핑에 기초하여 상기 반도체 메모리 장치 내의 상기 복수의 페이지 영역에 기억하도록 제어하고,
상기 메모리 맵핑에서는 상하 좌우로 인접한 페이지 영역에는 다른 뱅크 어드레스가 할당되고,
상기 반도체 메모리 장치는 상기 반도체 메모리 컨트롤러 장치로부터 공급되는 조합 정보에 기초하여, 2개의 상기 메모리 단위 영역 내의 데이터를 조합시켜 상기 반도체 컨트롤러 장치에 출력하는 것을 특징으로 하는 화상 처리 시스템.
(부기 33)
부기 32에 있어서,
상기 반도체 메모리 컨트롤러 장치로부터 출력된 상기 조합 정보는 상기 반도체 메모리 장치 내의 레지스터에 기억되는 화상 처리 시스템.
(부기 34)
부기 33에 있어서,
상기 반도체 메모리 컨트롤러 장치는 상기 조합 정보와 모드 레스지터 세트 커맨드를 출력하고, 상기 반도체 메모리 장치는 상기 모드 레지스터 세트 커맨드에 응답하여 상기 조합 정보를 상기 레지스터에 기억하는 화상 처리 시스템.
(부기 35)
부기 32에 있어서,
상기 반도체 메모리 컨트롤러 장치는 상기 조합 정보와 리드 커맨드를 상기 반도체 메모리 장치에 출력하는 화상 처리 시스템.
(부기 36)
부기 32에 있어서,
상기 페이지 영역은 제1 칼럼 어드레스에 할당된 제1 메모리 단위 영역과 제2 칼럼 어드레스에 할당된 제2 메모리 단위 영역을 포함하며, 상기 반도체 메모리 컨트롤러 장치로부터 공급되는 상기 조합 정보에 기초하여, 상기 반도체 메모리 장치는 상기 제1 및 제2 메모리 단위 영역의 데이터를 상기 반도체 메모리 컨트롤러 장치에 출력하는 화상 처리 시스템.
(부기 37)
부기 36에 있어서,
상기 제1 메모리 단위 영역은 제1, 제2, 제3 및 제4 데이터로 이루어지며, 상기 제2 메모리 단위 영역은 제5, 제6, 제7 및 제8 데이터로 이루어지고, 상기 조합 정보가 제1 정보일 때, 상기 반도체 메모리 장치는 상기 제2, 제3, 제4 및 제5 데이터를 상기 반도체 메모리 컨트롤러 장치에 출력하고, 상기 조합 정보가 제2 정보일 때, 상기 반도체 메모리 장치는 상기 제3, 제4, 제5 및 제6 데이터를 상기 반도체 메모리 컨트롤러 장치에 출력하는 화상 처리 시스템.
(부기 38)
부기 36에 있어서,
상기 조합 정보가 제3 정보일 때, 상기 반도체 메모리 장치는 상기 제4, 제5, 제6 및 제7 데이터를 상기 반도체 컨트롤러 장치에 출력하는 화상 처리 시스템.
(부기 39)
부기 24에 기재된 반도체 집적 회로 장치를 제어하는 반도체 메모리 컨트롤러에 있어서,
상기 리드 커맨드와, 상기 조합 정보를 상기 반도체 집적 회로 장치에 공급하는 것을 특징으로 하는 반도체 메모리 컨트롤러.
(부기 40)
반도체 메모리 컨트롤러에 있어서,
반도체 메모리 장치를 액세스하기 위해 리드 커맨드, 뱅크 어드레스, 로우 어드레스, 칼럼 어드레스를 생성하는 커맨드·어드레스 생성부와,
스타트 바이트 신호를 생성하는 스타트 바이트 생성부를 포함하고,
상기 뱅크 어드레스와 상기 로우 어드레스에 의해 상기 반도체 메모리 장치 내의 페이지 영역을 지정하며, 상기 칼럼 어드레스에 의해 상기 페이지 영역 내의 메모리 단위 영역을 지정하고, 상기 스타트 바이트 신호에 의해 상기 메모리 단위 영역 내에 포함되는 복수의 데이터군으로부터 하나의 데이터군을 선택하는 것을 특징으로 하는 반도체 메모리 컨트롤러.
(부기 41)
반도체 기판 상에 회로를 집적한 반도체 집적 회로 장치에 있어서,
부호화된 화상 데이터를 복호화하는 화상 처리 제어부와,
화상 메모리를 제어하는 메모리 제어부와,
상기 화상 메모리가 갖는 기능을 나타내는 기능 정보를 설정하는 설정 레지스터를 포함하고,
상기 화상 처리부는 직사각형 화상의 시작점 좌표와 상기 직사각형 화상의 세로 및 가로 사이즈 정보를 상기 메모리 제어부에 출력하고,
상기 메모리 제어부는 상기 시작점 좌표, 세로 및 가로 사이즈 정보 및 상기 설정 레지스터에 설정된 설정 정보에 기초하여, 상기 화상 메모리를 액세스하기 위 한 커맨드, 어드레스, 스타트 바이트 신호를 생성하고, 상기 스타트 바이트 신호는 상기 어드레스로 선택되는 화상 메모리 내의 메모리 단위 영역의 스타트 위치를 나타내는 것을 특징으로 하는 반도체 집적 회로 장치.
(부기 42)
부기 41에 있어서,
상기 설정 레지스터에는 화상 데이터와 화상 메모리의 어드레스 논리 공간과의 대응을 나타내는 메모리 맵 정보가 더 설정되는 것을 특징으로 하는 반도체 집적 회로 장치.
(부기 43)
부기 41에 있어서,
상기 어드레스는 뱅크 어드레스, 로우 어드레스, 칼럼 어드레스를 포함하고, 뱅크 어드레스와 로우 어드레스에 의해 상기 화상 메모리 내의 페이지 영역을 지정하며, 칼럼 어드레스에 의해 상기 페이지 영역 내의 상기 단위 메모리 영역을 지정하고, 상기 스타트 바이트 신호에 의해 상기 단위 메모리 영역 내에 포함되는 복수의 데이터군 내의 하나의 데이터군이 선택되는 것을 특징으로 하는 반도체 집적 회로 장치.
도 1은 본 실시예에 있어서의 화상 메모리의 메모리 맵핑을 도시한 도면.
도 2는 화상 메모리에 있어서의 2개의 액세스를 도시한 도면.
도 3은 수평 액세스의 과제를 도시한 도면.
도 4는 직사각형 액세스의 제1 과제를 도시한 도면.
도 5는 직사각형 액세스의 제2 과제를 도시한 도면.
도 6은 본 실시예의 전체 동작을 도시한 도면.
도 7은 본 실시예의 전체 동작의 다른 예를 도시한 도면.
도 8은 본 실시예에 있어서의 화상 처리 시스템의 구성도.
도 9는 본 실시예에 있어서의 화상 메모리의 구성도.
도 10은 바이트 경계 기능을 설명하는 도면.
도 11은 바이트 경계 기능에 있어서의 타이밍 차트를 도시한 도면.
도 12는 다른 맵핑에 대한 바이트 경계 기능을 설명하는 도면.
도 13은 도 12의 빅 엔디안과 리틀 엔디안을 설명하는 도면.
도 14는 특수한 메모리 맵핑에 있어서의 바이트 경계 기능을 설명하는 도면.
도 15는 도 14의 특수한 메모리 맵핑을 설명하는 도면.
도 16은 직사각형 액세스에 있어서의 바이트 경계 기능을 도시한 타이밍 차트도.
도 17은 바이트 경계 기능을 실현하기 위한 화상 처리 시스템의 구성도.
도 18은 바이트 경계 기능을 도시한 도면.
도 19는 간소화된 바이트 경계 기능을 실현하는 화상 처리 시스템의 구성도.
도 20은 도 19의 간소화된 바이트 경계 기능을 실현하는 화상 처리 시스템을 설명하는 도면.
도 21은 바이트 경계 기능을 갖는 메모리 구성의 개념을 도시한 도면.
도 22는 바이트 경계 기능을 갖는 화상 메모리의 제1 예를 도시한 도면.
도 23은 도 22의 동작을 설명하는 도면.
도 24는 바이트 경계 기능을 갖는 화상 메모리의 제2 예를 도시한 도면.
도 25는 도 24의 동작을 설명하는 도면.
도 26은 바이트 경계 기능을 갖는 화상 메모리의 제2 예의 제1 변형예의 동작을 도시한 도면.
도 27은 바이트 경계 기능을 갖는 화상 메모리의 제2 예의 제2 변형예의 동작을 도시한 도면.
도 28은 바이트 경계 기능을 갖는 화상 메모리의 제2 예의 제3 변형예의 동작을 도시한 도면.
도 29는 바이트 경계 기능을 갖는 화상 메모리의 제3 예를 도시한 도면.
도 30은 도 29의 동작을 설명하는 도면.
도 31은 바이트 경계 기능을 갖는 화상 메모리의 입출력 단자와의 대응 수단을 도시한 도면.
도 32는 도 31의 동작을 도시한 도면.
도 33은 바이트 경계 기능을 갖는 화상 메모리의 입출력 단자와의 대응 수단 을 도시한 도면.
도 34는 도 33의 동작을 도시한 도면.
도 35는 바이트 경계 기능을 갖는 화상 메모리로서 엔디안에 대응 가능한 화상 메모리의 제1 구성도.
도 36은 바이트 경계 기능을 갖는 화상 메모리로서 엔디안에 대응 가능한 화상 메모리의 제2 구성도.
도 37은 바이트 경계 기능을 갖는 화상 메모리로서 엔디안에 대응 가능한 화상 메모리의 제3 구성도.
도 38은 도 37의 DDR 메모리에 있어서의 업모드의 동작 타이밍 차트도.
도 39는 도 37의 DDR 메모리에 있어서의 다운모드의 동작 타이밍 차트도.
도 40은 바이트 경계 기능에 있어서의 경계의 지정 방법에 대해서 설명하는 도면.
도 41은 스타트 바이트(SB)와 시프트 밸류(SV)와의 변환 회로를 도시한 도면.
도 42는 바이트 경계 기능을 이용한 자동 직사각형 액세스를 설명하는 도면.
도 43은 자동 직사각형 액세스에서의 타이밍 차트도.
도 44는 자동 직사각형 액세스에 필요한 내부 칼럼 어드레스 연산기의 구성도.
도 45는 바이트 경계 기능에 의한 액세스가 페이지 영역의 말미에 이른 경우의 메모리 동작의 예를 도시한 도면.
도 46은 바이트 경계 기능에 의한 액세스가 페이지 영역의 말미에 이른 경우의 메모리 동작의 다른 예를 도시한 도면.
도 47은 바이트 경계 기능에 의한 액세스가 페이지 영역의 말미에 이른 경우의 메모리 동작의 다른 예를 도시한 도면.
도 48은 바이트 경계 기능의 그 외의 용도를 설명하는 도면.
도 49는 바이트 경계 기능의 그 외의 용도를 설명하는 도면.
도 50은 바이트 경계 기능의 그 외의 용도를 설명하는 도면.
도 51은 화상 처리 시스템의 구성도.
도 52는 메모리 제어부(메모리 컨트롤러)의 입력 및 출력 신호를 도시한 도면.
도 53은 프레임 화상 내에서 판독 대상의 참조 화상 영역을 설명하는 도면.
도 54는 메모리 제어부의 상세한 구성도.
도 55는 참조 화상 판독 제어부(514)에서의 인터 예측부(513)의 연산을 설명하는 도면.
도 56은 참조 화상 판독 제어부(514)에서의 인터 예측부(513)의 연산예를 도시한 도면.
도 57은 메모리 맵핑 예를 도시한 도면.
도 58은 메모리 맵핑(12)에 있어서의 페이지 영역(14)의 구성을 도시한 도면.
도 59는 도 56의 참조 화상 영역의 메모리 맵 상에서의 배치를 도시한 도면.
도 60은 참조 화상 영역의 메모리 맵 상에서의 다른 배치예를 도시한 도면.
도 61은 바이트 경계 기능을 갖지 않는 메모리에 대한 메모리 컨트롤러에서의 타이밍 차트도.
도 62는 바이트 경계 기능을 갖는 메모리에 대한 메모리 컨트롤러에서의 타이밍 차트도.
도 63은 바이트 경계 기능과 멀티 뱅크 액세스 기능을 갖지 않는 메모리에 대한 메모리 컨트롤러에서의 타이밍 차트도.
도 64는 멀티 뱅크 액세스 기능과 바이트 경계 기능을 갖는 메모리에 대한 메모리 컨트롤러에 있어서의 타이밍 차트도.
도 65는 메모리 컨트롤러의 제어 동작의 흐름도.
도 66은 메모리 컨트롤러의 제어 동작의 흐름도.
<도면 부호의 간단한 설명>
10: 표시 장치
12: 메모리 맵핑
14, 14E: 메모리 단위 영역
15: 화상 메모리
22: 직사각형 영역
SA: 리프레시 뱅크 정보
SB, BMR: 바이트 조합 정보
SB: 제1 정보(스타트 바이트 정보)
BMR: 제2 정보(UP, DOWN, AL)
SA': 멀티 뱅크 정보

Claims (7)

  1. 단일 반도체 기판 상에 회로를 집적한 반도체 집적 회로에 있어서,
    워드선 및 비트선에 접속하여 데이터를 기억하는 메모리 셀을 매트릭스형으로 배치하고, Nb개의 메모리 셀마다 비트군으로서 구분하는 메모리 어레이와,
    어드레스 신호 및 제1 조합 정보에 기초하여, 기점이 되는 비트군을 선택하는 제어부
    를 포함하고,
    상기 제어부는 제2 조합 정보에 기초하여 기점이 되는 상기 비트군을 포함하는 N개의 비트군에 포함되는 상기 메모리 셀에 기억된 데이터를 Nb×N개의 출력 단자로부터 병렬로 출력하는 것을 특징으로 하는 반도체 집적 회로.
  2. 제1항에 있어서,
    상기 메모리 어레이는 제1 어드레스 신호로 선택되는 제1 메모리 단위 영역과 제2 어드레스 신호로 선택되는 제2 메모리 단위 영역을 포함하고,
    상기 제1 메모리 단위 영역과 상기 제2 메모리 단위 영역은 각각 N개의 비트군을 포함하며,
    상기 출력 단자로부터 출력되는 Nb×N개의 데이터는 상기 제1 메모리 단위 영역으로부터 출력되는 데이터와 상기 제2 메모리 단위 영역으로부터 출력되는 데이터를 포함하는 것을 특징으로 하는 반도체 집적 회로.
  3. 제2항에 있어서,
    상기 제1 및 제2 어드레스 신호는 제1 칼럼 어드레스 신호와 제2 칼럼 어드레스 신호에 각각 대응하는 것을 특징으로 하는 반도체 집적 회로.
  4. 반도체 기억 장치에 있어서,
    소정의 어드레스에 대응하여 복수의 데이터 출력 단자로부터 병렬로 출력되는 데이터군을 기억하는 복수의 메모리 단위 영역과,
    다른 어드레스에 대응한 상기 메모리 단위 영역으로 구성된 메모리 매트릭스와,
    적어도 제1 및 제2 데이터 출력 단자군을 갖는 복수의 데이터 출력 단자와,
    어드레스 정보와 조합 정보에 기초하여 상기 제1 및 제2 데이터 출력 단자군에 제1 및 제2 메모리 단위 영역에 기억된 데이터를 전송하고, 상기 복수의 데이터 출력 단자로부터 상기 데이터를 병렬로 출력하는 제어부
    를 포함하는 것을 특징으로 하는 반도체 기억 장치.
  5. 제4항에 있어서,
    상기 조합 정보는 조합을 지시하는 제1 정보를 포함하고,
    상기 어드레스 정보 및 상기 제1 정보는 외부로부터의 데이터 판독 지시에 관련하여 입력되는 것을 특징으로 하는 반도체 기억 장치.
  6. 제5항에 있어서,
    상기 조합 정보는 조합 룰을 나타내는 제2 정보를 포함하는 것을 특징으로 하는 반도체 기억 장치.
  7. 제6항에 있어서,
    상기 제2 정보를 유지하기 위한 레지스터를 더 포함하고,
    상기 레지스터에 기록되는 정보는 장치의 외부로부터 설정되는 것을 특징으로 하는 반도체 기억 장치.
KR1020070105670A 2006-12-22 2007-10-19 반도체 집적 회로 및 반도체 기억 장치 KR100859183B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JPJP-P-2006-00345415 2006-12-22
JP2006345415A JP5018074B2 (ja) 2006-12-22 2006-12-22 メモリ装置,メモリコントローラ及びメモリシステム

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020070031360A Division KR100864473B1 (ko) 2006-12-22 2007-03-30 메모리 장치, 메모리 컨트롤러 및 메모리 시스템

Publications (2)

Publication Number Publication Date
KR20080059028A KR20080059028A (ko) 2008-06-26
KR100859183B1 true KR100859183B1 (ko) 2008-09-22

Family

ID=39110397

Family Applications (3)

Application Number Title Priority Date Filing Date
KR1020070031360A KR100864473B1 (ko) 2006-12-22 2007-03-30 메모리 장치, 메모리 컨트롤러 및 메모리 시스템
KR1020070105670A KR100859183B1 (ko) 2006-12-22 2007-10-19 반도체 집적 회로 및 반도체 기억 장치
KR1020070105665A KR100864474B1 (ko) 2006-12-22 2007-10-19 반도체 집적 회로, 화상 처리 시스템, 반도체 메모리컨트롤러, 및 반도체 집적 회로 장치

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020070031360A KR100864473B1 (ko) 2006-12-22 2007-03-30 메모리 장치, 메모리 컨트롤러 및 메모리 시스템

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020070105665A KR100864474B1 (ko) 2006-12-22 2007-10-19 반도체 집적 회로, 화상 처리 시스템, 반도체 메모리컨트롤러, 및 반도체 집적 회로 장치

Country Status (7)

Country Link
US (3) US7814294B2 (ko)
EP (5) EP1936631B1 (ko)
JP (1) JP5018074B2 (ko)
KR (3) KR100864473B1 (ko)
CN (5) CN103258568B (ko)
DE (4) DE602007009031D1 (ko)
TW (1) TWI378451B (ko)

Families Citing this family (63)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100097444A1 (en) * 2008-10-16 2010-04-22 Peter Lablans Camera System for Creating an Image From a Plurality of Images
US8355042B2 (en) 2008-10-16 2013-01-15 Spatial Cam Llc Controller in a camera for creating a panoramic image
WO2010001433A1 (ja) 2008-06-30 2010-01-07 富士通マイクロエレクトロニクス株式会社 メモリ装置及びそれを制御するメモリコントローラ
JP5390310B2 (ja) * 2009-09-08 2014-01-15 ルネサスエレクトロニクス株式会社 半導体集積回路
US20120246380A1 (en) * 2009-10-21 2012-09-27 Avidan Akerib Neighborhood operations for parallel processing
TWI421871B (zh) * 2009-11-27 2014-01-01 Macronix Int Co Ltd 定址一記憶積體電路之方法與裝置
US8643776B2 (en) * 2009-11-30 2014-02-04 Mediatek Inc. Video processing method capable of performing predetermined data processing operation upon output of frame rate conversion with reduced storage device bandwidth usage and related video processing apparatus thereof
CN102110462B (zh) * 2009-12-25 2015-09-30 旺宏电子股份有限公司 寻址一存储集成电路的方法与装置
KR101691092B1 (ko) 2010-08-26 2016-12-30 삼성전자주식회사 불휘발성 메모리 장치, 그것의 동작 방법, 그리고 그것을 포함하는 메모리 시스템
KR102077508B1 (ko) * 2010-06-11 2020-02-14 가부시키가이샤 리코 정보 저장 장치가 탈착 장치로부터 이탈하는 것을 방지하는 장치 및 방법
JP5636888B2 (ja) * 2010-11-09 2014-12-10 ソニー株式会社 情報処理装置、プログラムおよびコマンド生成方法
JP2012151576A (ja) * 2011-01-18 2012-08-09 Hitachi Ltd 画像符号化方法、画像符号化装置、画像復号方法及び画像復号装置
US8683113B2 (en) * 2011-02-04 2014-03-25 Western Digital Technologies, Inc. Concurrently searching multiple devices of a non-volatile semiconductor memory
CN103403757B (zh) * 2011-03-10 2016-01-27 Ntt电子株式会社 存储器访问装置
CN102842336B (zh) * 2011-06-20 2015-03-18 华邦电子股份有限公司 半导体存储器装置及其读取方法
US9001138B2 (en) * 2011-08-29 2015-04-07 Intel Corporation 2-D gather instruction and a 2-D cache
KR101878902B1 (ko) * 2011-10-04 2018-07-17 에스케이하이닉스 주식회사 반도체 메모리 장치 및 그의 구동 방법
US9240240B2 (en) * 2011-11-29 2016-01-19 Micron Technology, Inc. Apparatus having indications of memory cell density and methods of their determination and use
US8868854B2 (en) * 2011-12-15 2014-10-21 Lsi Corporation Systems and methods for handling out of order reporting in a storage device
US8873329B1 (en) 2012-01-17 2014-10-28 Rambus Inc. Patterned memory page activation
JP5853843B2 (ja) * 2012-04-25 2016-02-09 ソニー株式会社 記憶制御装置、記憶装置、および、それらにおける処理方法
KR101975029B1 (ko) * 2012-05-17 2019-08-23 삼성전자주식회사 리프레쉬 주기를 조절하는 반도체 메모리 장치, 메모리 시스템 및 그 동작방법
US20130339649A1 (en) * 2012-06-15 2013-12-19 Intel Corporation Single instruction multiple data (simd) reconfigurable vector register file and permutation unit
CN103678155B (zh) * 2012-09-19 2016-12-21 华为技术有限公司 内存地址映射处理方法及多核处理器
KR102003894B1 (ko) * 2012-09-20 2019-07-25 에스케이하이닉스 주식회사 셀 어레이, 메모리 및 이를 포함하는 메모리 시스템
US9111624B2 (en) * 2013-03-22 2015-08-18 Katsuyuki Fujita Semiconductor memory device
KR20140139849A (ko) * 2013-05-28 2014-12-08 에스케이하이닉스 주식회사 메모리 및 이를 포함 하는 메모리 시스템
KR20150018163A (ko) * 2013-08-09 2015-02-23 에스케이하이닉스 주식회사 시스템 장치
DE102013016114B3 (de) * 2013-09-26 2015-02-05 Infineon Technologies Ag Bussystem und Verfahren für geschützte Speicherzugriffe
CN104517650B (zh) * 2013-10-04 2020-02-07 马克西姆综合产品公司 使用唯一标识元件的安全存储器
CN105512047B (zh) * 2014-09-26 2018-08-28 上海东软载波微电子有限公司 Flash闪存的写操作、擦除操作方法及装置
EP3254286B1 (en) * 2015-02-06 2019-09-11 Micron Technology, INC. Apparatuses and methods for parallel writing to multiple memory device locations
US10025747B2 (en) * 2015-05-07 2018-07-17 Samsung Electronics Co., Ltd. I/O channel scrambling/ECC disassociated communication protocol
CN104951406B (zh) * 2015-06-12 2018-05-04 上海华为技术有限公司 一种分页式地址空间管理方法以及控制器
KR102372888B1 (ko) 2015-06-15 2022-03-10 삼성전자주식회사 저장 장치의 온도별 데이터 관리 방법
CN105183545A (zh) * 2015-07-23 2015-12-23 柳州易旺科技有限公司 一种大数据信息压缩方法
US9601193B1 (en) * 2015-09-14 2017-03-21 Intel Corporation Cross point memory control
US9613685B1 (en) * 2015-11-13 2017-04-04 Texas Instruments Incorporated Burst mode read controllable SRAM
CN105528305B (zh) * 2015-12-04 2018-04-13 北京理工大学 一种基于ddr2 sdram的短周期存储方法
US20170177351A1 (en) * 2015-12-18 2017-06-22 Intel Corporation Instructions and Logic for Even and Odd Vector Get Operations
KR102399475B1 (ko) * 2015-12-28 2022-05-18 삼성전자주식회사 리프레쉬 콘트롤러 및 이를 포함하는 메모리 장치
US10133493B2 (en) * 2016-03-01 2018-11-20 Marvell World Trade Ltd. DRAM controller with adaptive precharge policy
US20170255387A1 (en) * 2016-03-04 2017-09-07 Intel Corporation Techniques to Cause a Content Pattern to be Stored to Memory Cells of a Memory Device
US10403333B2 (en) * 2016-07-15 2019-09-03 Advanced Micro Devices, Inc. Memory controller with flexible address decoding
CN108139992B (zh) * 2016-08-09 2020-06-16 华为技术有限公司 访问存储设备的方法和存储设备
KR20180060370A (ko) * 2016-11-29 2018-06-07 에스케이하이닉스 주식회사 메모리 시스템 및 메모리 시스템의 동작방법
DE102016225308A1 (de) * 2016-12-16 2018-06-21 Robert Bosch Gmbh Verfahren und Vorrichtung zum Kalibrieren eines Steuergerätes
CN107291628B (zh) * 2017-07-04 2020-09-01 北京京东尚科信息技术有限公司 访问数据存储设备的方法和装置
CN109308928B (zh) * 2017-07-28 2020-10-27 华邦电子股份有限公司 存储器装置的行解码器
CN108052483B (zh) * 2017-12-29 2021-10-22 南京地平线机器人技术有限公司 用于数据统计的电路单元、电路模块和装置
CN110289029B (zh) * 2018-03-19 2021-06-15 旺宏电子股份有限公司 存储器装置及其操作方法
US10691347B2 (en) * 2018-06-07 2020-06-23 Micron Technology, Inc. Extended line width memory-side cache systems and methods
CN109147851B (zh) * 2018-08-31 2020-12-25 上海华力微电子有限公司 一种锁存电路
KR20200057136A (ko) * 2018-11-15 2020-05-26 에스케이하이닉스 주식회사 반도체장치
KR20200058085A (ko) * 2018-11-19 2020-05-27 에스케이하이닉스 주식회사 반도체장치
US11468925B2 (en) 2018-12-03 2022-10-11 Rambus Inc. DRAM interface mode with improved channel integrity and efficiency at high signaling rates
CN110008162B (zh) * 2019-03-26 2022-05-17 西安微电子技术研究所 一种缓冲接口电路及基于该电路传输数据的方法和应用
KR20210079552A (ko) * 2019-12-20 2021-06-30 에스케이하이닉스 주식회사 메모리 시스템 및 메모리 컨트롤러
CN112835842B (zh) * 2021-03-05 2024-04-30 深圳市汇顶科技股份有限公司 端序处理方法、电路、芯片以及电子终端
US11983108B2 (en) 2022-05-19 2024-05-14 Changxin Memory Technologies, Inc. Method and apparatus for determining address mapping relationship, and storage medium
CN117133332A (zh) * 2022-05-19 2023-11-28 长鑫存储技术有限公司 地址映射关系的确定方法、装置及存储介质
CN115857806B (zh) * 2022-11-30 2023-10-20 深圳市亿诚伟业电子有限公司 一种多功能存储器的集成电路系统及其控制方法
CN117193669B (zh) * 2023-11-06 2024-02-06 格创通信(浙江)有限公司 一种报文描述符离散存储方法、装置、设备及存储介质

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03122890A (ja) * 1989-03-20 1991-05-24 Hitachi Ltd 半導体記憶装置及びそのレイアウト方式
US5502675A (en) 1989-06-06 1996-03-26 Fujitsu Limited Semiconductor memory device having a multi-bit input/output configuration which is capable of correcting a bit failure
KR19990020995A (ko) * 1997-08-30 1999-03-25 윤종용 고속 다이나믹 램 제어 장치 및 방법
JPH11167518A (ja) * 1997-12-05 1999-06-22 Toshiba Corp 動画復号化装置におけるメモリの使用方法
JP2001176267A (ja) 1999-12-13 2001-06-29 Toshiba Microelectronics Corp 半導体記憶装置
US20030067832A1 (en) * 2001-10-05 2003-04-10 Emmot Darel N. Access control system for multi-banked DRAM memory
US6611260B1 (en) 1997-11-24 2003-08-26 Pixelworks, Inc Ultra-high bandwidth multi-port memory system for image scaling applications
US20060087903A1 (en) * 2004-10-21 2006-04-27 Elpida Memory Inc. Refresh control method of a semiconductor memory device and semiconductor memory device

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IT1041882B (it) * 1975-08-20 1980-01-10 Honeywell Inf Systems Memoria dinamica a semiconduttori e relativo sistema di recarica
JPH0612608B2 (ja) * 1987-02-17 1994-02-16 株式会社東芝 半導体記憶装置
JP2860403B2 (ja) * 1988-12-22 1999-02-24 リチャード・チャールズ・フォス ダイナミック型半導体記憶装置
EP0700050A3 (en) 1994-08-17 1997-07-23 Oak Technology Inc Multi-page storage
KR100197585B1 (ko) * 1995-01-16 1999-06-15 윤종용 영상(image)/오디오정보(information)를 반도체메모리에 기록/재생하기 위한 장치
JPH08221975A (ja) * 1995-02-17 1996-08-30 Toshiba Corp 半導体メモリ回路
US5606532A (en) * 1995-03-17 1997-02-25 Atmel Corporation EEPROM array with flash-like core
US5687132A (en) * 1995-10-26 1997-11-11 Cirrus Logic, Inc. Multiple-bank memory architecture and systems and methods using the same
US5799209A (en) * 1995-12-29 1998-08-25 Chatter; Mukesh Multi-port internally cached DRAM system utilizing independent serial interfaces and buffers arbitratively connected under a dynamic configuration
TW318933B (en) * 1996-03-08 1997-11-01 Hitachi Ltd Semiconductor IC device having a memory and a logic circuit implemented with a single chip
US5835965A (en) 1996-04-24 1998-11-10 Cirrus Logic, Inc. Memory system with multiplexed input-output port and memory mapping capability
JP3732593B2 (ja) * 1996-09-30 2006-01-05 株式会社東芝 画像処理装置
JP3247639B2 (ja) * 1997-08-07 2002-01-21 インターナショナル・ビジネス・マシーンズ・コーポレーション 半導体メモリ、半導体メモリのデータ読み出し方法及び書き込み方法
JPH11154391A (ja) 1997-11-21 1999-06-08 Sanyo Electric Co Ltd 記憶装置
JP2000066950A (ja) * 1998-08-25 2000-03-03 Toshiba Corp 半導体記憶装置
JP2001266579A (ja) 2000-01-12 2001-09-28 Hitachi Ltd 不揮発性半導体記憶装置および半導体ディスク装置
JP4535563B2 (ja) 2000-04-28 2010-09-01 ルネサスエレクトロニクス株式会社 半導体記憶装置
JP3761389B2 (ja) 2000-05-31 2006-03-29 エルピーダメモリ株式会社 半導体記憶装置
JP4190140B2 (ja) 2000-09-04 2008-12-03 富士通マイクロエレクトロニクス株式会社 同期式半導体記憶装置、及びその入力情報のラッチ制御方法
JP3931577B2 (ja) * 2000-11-22 2007-06-20 セイコーエプソン株式会社 メモリの使用方法、及び演算処理装置
JP3827540B2 (ja) 2001-06-28 2006-09-27 シャープ株式会社 不揮発性半導体記憶装置および情報機器
GB2382676B (en) * 2001-10-31 2005-09-07 Alphamosaic Ltd Data access in a processor
JP3597501B2 (ja) * 2001-11-20 2004-12-08 松下電器産業株式会社 半導体集積回路
JP4111789B2 (ja) * 2002-09-13 2008-07-02 富士通株式会社 半導体記憶装置の制御方法及び半導体記憶装置
KR100510496B1 (ko) * 2002-11-19 2005-08-26 삼성전자주식회사 페이지 길이를 변환할 수 있는 구조를 가지는 반도체메모리 장치 및 상기 반도체 메모리 장치의 페이지 길이변환방법
US6999368B2 (en) * 2003-05-27 2006-02-14 Matsushita Electric Industrial Co., Ltd. Semiconductor memory device and semiconductor integrated circuit device
JP4405292B2 (ja) * 2004-03-22 2010-01-27 パナソニック株式会社 不揮発性半導体記憶装置及びその書き込み方法
JP4615896B2 (ja) * 2004-05-25 2011-01-19 富士通セミコンダクター株式会社 半導体記憶装置および該半導体記憶装置の制御方法
KR100726101B1 (ko) * 2005-04-29 2007-06-12 (주)씨앤에스 테크놀로지 메모리 제어 시스템
JP2006345415A (ja) 2005-06-10 2006-12-21 Alegria Kk 電話交換システム、電話交換方法、電話交換プログラム及び記録媒体
US7668040B2 (en) * 2006-12-22 2010-02-23 Fujitsu Microelectronics Limited Memory device, memory controller and memory system

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03122890A (ja) * 1989-03-20 1991-05-24 Hitachi Ltd 半導体記憶装置及びそのレイアウト方式
US5502675A (en) 1989-06-06 1996-03-26 Fujitsu Limited Semiconductor memory device having a multi-bit input/output configuration which is capable of correcting a bit failure
KR19990020995A (ko) * 1997-08-30 1999-03-25 윤종용 고속 다이나믹 램 제어 장치 및 방법
US6611260B1 (en) 1997-11-24 2003-08-26 Pixelworks, Inc Ultra-high bandwidth multi-port memory system for image scaling applications
JPH11167518A (ja) * 1997-12-05 1999-06-22 Toshiba Corp 動画復号化装置におけるメモリの使用方法
JP2001176267A (ja) 1999-12-13 2001-06-29 Toshiba Microelectronics Corp 半導体記憶装置
US20030067832A1 (en) * 2001-10-05 2003-04-10 Emmot Darel N. Access control system for multi-banked DRAM memory
US20060087903A1 (en) * 2004-10-21 2006-04-27 Elpida Memory Inc. Refresh control method of a semiconductor memory device and semiconductor memory device

Also Published As

Publication number Publication date
CN101206912B (zh) 2010-06-09
DE602007013379D1 (de) 2011-05-05
CN101206916B (zh) 2010-10-13
EP2009644A1 (en) 2008-12-31
JP5018074B2 (ja) 2012-09-05
EP1936631B1 (en) 2010-09-08
EP1993100A2 (en) 2008-11-19
CN103258568B (zh) 2016-09-21
US20080181027A1 (en) 2008-07-31
TW200828314A (en) 2008-07-01
KR100864473B1 (ko) 2008-10-20
US7774577B2 (en) 2010-08-10
KR100864474B1 (ko) 2008-10-20
EP1993099A2 (en) 2008-11-19
KR20080059027A (ko) 2008-06-26
CN103258568A (zh) 2013-08-21
CN101206908B (zh) 2011-08-03
EP1936631A1 (en) 2008-06-25
KR20080059028A (ko) 2008-06-26
DE602007009200D1 (de) 2010-10-28
US20090027988A1 (en) 2009-01-29
TWI378451B (en) 2012-12-01
KR20080059003A (ko) 2008-06-26
CN101206916A (zh) 2008-06-25
EP1993099A3 (en) 2008-12-24
CN101206912A (zh) 2008-06-25
US8015389B2 (en) 2011-09-06
EP1993100A3 (en) 2008-12-24
US7814294B2 (en) 2010-10-12
EP1990804A1 (en) 2008-11-12
DE602007009031D1 (de) 2010-10-21
EP1990804B1 (en) 2010-09-15
EP2009644B1 (en) 2011-03-23
CN101901627A (zh) 2010-12-01
CN101206908A (zh) 2008-06-25
DE602007009197D1 (de) 2010-10-28
EP1993099B1 (en) 2010-09-15
JP2008159131A (ja) 2008-07-10
EP1993100B1 (en) 2011-05-11
CN101901627B (zh) 2015-05-06
US20080151677A1 (en) 2008-06-26

Similar Documents

Publication Publication Date Title
KR100859183B1 (ko) 반도체 집적 회로 및 반도체 기억 장치
KR100873112B1 (ko) 메모리 장치 및 반도체 집적 회로
KR100896242B1 (ko) 메모리 장치, 메모리 컨트롤러 및 메모리 시스템
JP5070378B2 (ja) メモリ装置,メモリコントローラ及びメモリシステム
JP5109388B2 (ja) メモリ装置,メモリコントローラ及びメモリシステム
JP5459363B2 (ja) メモリ装置,メモリコントローラ及びメモリシステム
JP2012160256A (ja) メモリ装置,メモリコントローラ及びメモリシステム
JP5029027B2 (ja) メモリ装置,メモリコントローラ及びメモリシステム
JP5145848B2 (ja) メモリ装置,メモリコントローラ及びメモリシステム
JP5070375B2 (ja) メモリ装置,メモリコントローラ及びメモリシステム
JP2012198947A (ja) メモリ装置,メモリコントローラ及びメモリシステム
JP2012230712A (ja) メモリ装置,メモリコントローラ及びメモリシステム

Legal Events

Date Code Title Description
A107 Divisional application of patent
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20120821

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20130822

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20140825

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20150819

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20160818

Year of fee payment: 9

LAPS Lapse due to unpaid annual fee