KR20110015030A - 메모리 장치 - Google Patents

메모리 장치 Download PDF

Info

Publication number
KR20110015030A
KR20110015030A KR20107029621A KR20107029621A KR20110015030A KR 20110015030 A KR20110015030 A KR 20110015030A KR 20107029621 A KR20107029621 A KR 20107029621A KR 20107029621 A KR20107029621 A KR 20107029621A KR 20110015030 A KR20110015030 A KR 20110015030A
Authority
KR
South Korea
Prior art keywords
address
memory
control signal
unit
internal
Prior art date
Application number
KR20107029621A
Other languages
English (en)
Other versions
KR101226394B1 (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 KR20110015030A publication Critical patent/KR20110015030A/ko
Application granted granted Critical
Publication of KR101226394B1 publication Critical patent/KR101226394B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/34Addressing or accessing the instruction operand or the result ; Formation of operand address; Addressing modes
    • G06F9/345Addressing or accessing the instruction operand or the result ; Formation of operand address; Addressing modes of multiple operands or results
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/60Memory management
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/43Hardware specially adapted for motion estimation or compensation
    • H04N19/433Hardware specially adapted for motion estimation or compensation characterised by techniques for memory access

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Dram (AREA)
  • Image Input (AREA)

Abstract

메모리 장치는, 2차원 배열 데이터를 어드레스에 의해 선택되는 복수의 메모리 단위 영역에 기억하는 메모리셀 어레이와, 외부 어드레스에 기초하여 메모리 단위 영역을 선택하는 내부 어드레스를 생성하는 내부 어드레스 제어부와, 내부 어드레스를 디코딩하여 메모리 단위 영역을 선택하는 디코더를 갖는다. 그리고, 복수의 메모리 단위 영역은, 내부 어드레스의 하위 비트군에 기초하여 2차원 배열 데이터의 행렬 중 제1 방향으로 배열된 데이터를 기억하고, 어드레스의 상위 비트군에 기초하여 2차원 배열 데이터의 행렬 중 제2 방향으로 배열된 데이터를 기억하고, 내부 어드레스 제어부는, 2차원 배열 데이터의 적어도 경사 방향을 포함하는 복수의 주사 방향을 제어하는 주사 방향 제어 신호에 기초하여 상기 주사 방향에 대응하는 내부 어드레스를 순차적으로 생성한다.

Description

메모리 장치 및 그것을 제어하는 메모리 컨트롤러{MEMORY DEVICE AND MEMORY CONTROLLER FOR CONTROLLING THE SAME}
본 발명은, 메모리 장치 및 그것을 제어하는 메모리 컨트롤러에 관한 것으로, 특히 화상 데이터를 저장하는 메모리 장치와 그 메모리 컨트롤러에 관한 것이다.
메모리 장치, 특히 반도체 메모리 장치 중 대용량 SDRAM은, 화상 처리 장치 내의 프레임 메모리로서 널리 이용되고 있다. 화상 데이터를 저장하는 프레임 메모리는, 풀하이비젼 화면에 대응하기 위해 대용량화의 요구가 강하다. 한편, 동영상의 압축이나 압축풀기의 처리를 갖는 MPEG 규격에 대응하여, 통상의 래스터 주사에 의한 메모리 액세스에 더하여, 임의의 영역의 화상 데이터를 고속으로 액세스하는 것이 요구되고 있다. 예를 들어, MPEG 규격에는, 움직임 벡터를 검출하기 위해 미리 정해진 직사각형 영역의 화상과 일치하는 화상을 탐색하는 처리가 포함되어 있다. 이 움직임 벡터의 탐색 처리는, 프레임 메모리에 대한 빈번하고 대용량인 리드 동작이 필요해진다.
다양한 화상 처리에 대응할 수 있는 액세스 기능을 갖는 메모리 장치에 관해, 본 출원인은 특허 출원을 했다. 예를 들어, 일본 특허 출원 제2006-345415호(2006년 12월 22일 출원(미공개)). 이것에 의하면, 메모리 장치는, 입력 어드레스에 의해 선택되는 복수의 메모리 단위 영역을 가지며, 미리 정해진 메모리맵에 따라서 화상 데이터를 복수의 메모리 단위 영역 내에 저장하고, 1회의 입력 어드레스에 의해 인접하는 메모리 단위 영역으로부터 출력 데이터를 판독 및 인접하는 메모리 단위 영역에 입력 데이터를 기록한다.
범용 SDRAM은, 버스트 리드나 버스트 라이트 기능을 가지며, 연속하는 어드레스의 기억 영역에 대한 액세스를 효율적으로 행할 수 있다. 따라서, 연속하는 어드레스 영역 내에 2차원 화상 데이터의 래스터 주사 방향의 화상 데이터를 저장하는 메모리맵의 경우는, 2차원 화상 데이터를 래스터 주사하는 액세스는 매우 효율이 높아져, 단위시간당 처리 가능한 데이터수인 메모리의 대역폭은 매우 커진다. 그러나, 래스터 주사와는 상이한 방향 또는 영역에 대한 메모리의 액세스는, 메모리의 액세스 효율을 저하시켜 메모리의 대역폭의 저하를 초래한다.
이러한 범용 SDRAM의 문제점을 해소하기 위해, 다양한 제안이 이루어져 있다. 예를 들어, 이하의 특허문헌 1∼5 등이 있다.
특허문헌 1에는, 메모리 내의 복수의 뱅크 영역의 동일한 로우 어드레스 및 칼럼 어드레스의 영역 내에 2차원 화상의 수직 방향의 화상 데이터를 저장하고, 복수의 뱅크 영역을 동시에 액티브화함으로써, 복수행의 화상 데이터를 동시에 액세스하는 것이 기재되어 있다. 즉, 특수한 메모리맵에 기초하여 2차원 화상의 화상 데이터를 저장함으로써, 복수행의 화상 데이터의 액세스 효율을 높이고 있다.
특허문헌 2에는, 비디오 RAM(VRAM)가 2차원 화상의 화상 데이터를 저장하는 DRAM과 DRAM의 데이터를 캐쉬 제어하는 직렬 액세스 메모리 SAM을 가지며, 직렬 액세스 메모리 SAM을 올림차순 또는 내림차순으로 카운트할 수 있는 직렬 어드레스 카운터를 가지며, 직렬 어드레스 카운터를 내림차순으로 카운트시킴으로써, 좌우 역전시킨 화상을 DRAM에 기록하는 것이 기재되어 있다.
특허문헌 3에는, 비디오 RAM(VRAM)이 2차원 화상의 화상 데이터를 저장하는 DRAM과 DRAM의 데이터를 캐쉬 제어하는 직렬 액세스 메모리 SAM을 가지며, 직렬 액세스 메모리의 어드레스 카운터를 가산 모드와 감산 모드로 변경 가능하고, 어드레스 카운터의 가산치를 임의의 수로서 외부에서 설정 가능하게 한 것이 기재되어 있다.
특허문헌 4에는, 화상 판독 장치에서 판독된 화상 데이터를, 부주사 방향으로 인접하는 화소 데이터의 어드레스가 연속 어드레스가 되도록 화상 메모리 내에 기록하고, 그리고, 종횡이 반대로 되어 판독된 화상 데이터에 대해서는 페이지 모드 판독 처리를 행하는 것이 기재되어 있다.
특허문헌 5에는, 특허문헌 2와 동일한 비디오 RAM이 기재되어 있다.
일본 특허 공개 제2005-116128호 공보 일본 특허 공개 평성8-190372호 공보 일본 특허 공개 평성6-243675호 공보 일본 특허 공개 평성5-334426호 공보 일본 특허 공개 평성5-54657호 공보
상기 특허문헌 1∼5는, 모두 DRAM을 갖는 시스템의 구성을 개시하는 것으로, 화상 데이터를 저장하는 DRAM의 내부 구성에 관한 것은 아니다. 따라서, 이들 선행기술은, 화상 데이터를 저장하는 DRAM의 대역폭을 크게 할 수는 없다. 한편, 다양한 화상 처리에 대응한 특수한 액세스를 효율적으로 행할 수 있는 메모리 장치가 기대되고 있다.
따라서, 본 발명의 목적은, 특수한 액세스를 효율적으로 행할 수 있는 메모리 장치를 제공하는 것에 있다.
본 발명의 다른 목적은, 2차원 화상의 임의의 방향에 대한 연속 액세스를 효율적으로 행할 수 있는 메모리 장치를 제공하는 것에 있다.
또한, 본 발명의 다른 목적은, 2차원 화상의 임의의 2차원 영역의 액세스를 효율적으로 행할 수 있는 메모리 장치를 제공하는 것에 있다.
메모리 장치는, 어드레스에 의해 선택되는 복수의 메모리 단위 영역을 가지며, 2차원 배열 데이터를 상기 복수의 메모리 단위 영역에 기억하는 메모리셀 어레이와, 외부 어드레스에 기초하여 상기 메모리 단위 영역을 선택하는 내부 어드레스를 생성하는 내부 어드레스 제어부와, 상기 내부 어드레스를 디코딩하여 상기 메모리 단위 영역을 선택하는 디코더를 갖는다. 상기 복수의 메모리 단위 영역은, 상기 내부 어드레스의 하위 비트군에 기초하여 상기 2차원 배열 데이터의 행렬 중 제1 방향으로 배열된 데이터를 기억하고, 상기 어드레스의 상위 비트군에 기초하여 상기 2차원 배열 데이터의 행렬 중 제2 방향으로 배열된 데이터를 기억한다. 또한, 상기 내부 어드레스 제어부는, 상기 2차원 배열 데이터의 적어도 경사 방향을 포함하는 복수의 주사 방향을 제어하는 주사 방향 제어 신호에 기초하여 상기 주사 방향에 대응하는 내부 어드레스를 순차적으로 생성한다.
내부 어드레스 제어부가, 경사 방향의 주사 방향 제어 신호에 기초하여, 하위 및 상위 어드레스를 병행하여 순차적으로 생성하기 때문에, 경사 방향에 대한 버스트 액세스가 가능해진다. 또한, 내부 어드레스 제어부가, 주사 방향 제어 신호에 기초하여 하위 및 상위 어드레스를 순차적으로 생성하기 때문에, 주사 방향 제어 신호에 의해 특정되는 주사 방향에 대한 버스트 액세스가 가능해진다.
상기 메모리 장치를 제어하는 메모리 컨트롤러는, 액세스 대상인 직사각형 영역을 규정하는 위치 좌표와 종횡의 길이와 기울기를 입력하여, 상기 주사 방향 제어 신호를 생성하는 버스트 방향 판정부와, 제어 커맨드를 생성하여 상기 메모리 장치에 출력하는 커맨드 발행부와, 상기 외부 어드레스를 생성하여 상기 메모리 장치에 출력하는 어드레스 발행부를 갖는다. 그리고, 상기 주사 방향 제어 신호가 상기 메모리 장치에 출력된다.
메모리 장치는, 화상 데이터 등의 2차원 배열 데이터에 대하여 여러 방향으로 버스트 액세스할 수 있다.
도 1은 화상 부호화 시스템의 구성도이다.
도 2는 화상 부호화 시스템에서의 화상 데이터에 대한 액세스 영역의 지정을 설명하는 도면이다.
도 3은 본 실시형태에서의 메모리 컨트롤러의 구성과 메모리 장치와의 접속구성을 나타낸 도면이다.
도 4는 본 실시형태에서의 메모리 장치의 구성도이다.
도 5는 본 실시형태에서의 메모리 장치의 구성도이다.
도 6은 도 5의 메모리맵의 상세도이다.
도 7은 페이지 영역 내의 메모리맵을 나타낸 도면이다.
도 8은 본 실시형태에서의 칼럼 어드레스 제어부(41) 내의 칼럼 어드레스를 생성하는 구성을 나타낸 도면이다.
도 9는 주사 방향 제어 신호 vaext의 구체예를 나타낸 도면이다.
도 10은 동영상의 움직임 방향의 예를 나타낸 도면이다.
도 11은 동영상의 움직임 방향과 움직임량의 분포를 나타낸 도면이다.
도 12는 움직임 벡터의 탐색 범위의 일례를 나타낸 도면이다.
도 13은 마름모꼴 영역의 액세스 방법의 일례를 나타낸 도면이다.
도 14는 경사 방향의 주사에 관해 설명하는 도면이다.
도 15는 경사 방향 주사를 행하는 칼럼 어드레스 제어부를 나타낸 도면이다.
도 16은 경사 방향 주사를 행하는 칼럼 어드레스 제어부의 상세도이다.
도 17은 경사 방향 주사를 행하는 칼럼 어드레스 제어부의 상세도이다.
도 18은 경사 방향으로 주사하는 경우의 메모리 장치의 타이밍차트이다.
도 19는 경사 방향으로 주사하는 경우의 메모리 장치의 타이밍차트이다.
도 20은 페이지 영역 내의 수평 주사 액세스를 나타낸 도면이다.
도 21은 페이지 영역 내의 수직 주사 액세스를 나타낸 도면이다.
도 22는 메모리 컨트롤러에 의한 버스트 방향 판정 처리를 나타낸 도면이다.
도 23은 메모리 컨트롤러에 의한 버스트 방향 판정 처리의 플로우차트이다.
도 24는 수직 방향으로 주사 액세스(버스트 액세스)하는 예를 나타낸 도면이다.
도 25는 수직 방향으로 주사 액세스(버스트 액세스)하는 칼럼 어드레스 제어부의 구성도이다.
도 26은 수직 방향으로 주사하여 액세스하는 경우의 타이밍차트이다.
도 27은 수직 방향으로 주사하여 액세스하는 경우의 타이밍차트이다.
도 28은 수직 방향으로 주사 액세스(버스트 액세스)하는 다른 예를 나타낸 도면이다.
도 29는 움직임을 예측할 때의 액세스를 설명하는 도면이다.
도 30은 움직임을 예측할 때의 다른 액세스를 설명하는 도면이다.
도 31은 움직임을 예측할 때의 다른 액세스를 설명하는 도면이다.
도 32는 2 단계 탐색 알고리즘의 1회째 탐색에서의 칼럼 어드레스 제어부의 구성도이다.
도 33은 2 단계 탐색 알고리즘의 1회째 탐색에서의 칼럼 어드레스 제어부의 구성도이다.
도 34는 2 단계 탐색 알고리즘의 1회째 탐색에서의 메모리 장치의 타이밍차트이다.
도 35는 본 실시형태에서의 직사각형 영역의 버스트 액세스를 설명하는 도면이다.
도 36은 본 실시형태에서의 직사각형 영역의 버스트 액세스하는 경우의 칼럼 어드레스 제어부의 구성도이다.
도 37은 직사각형 영역의 버스트 액세스하는 경우의 상위 어드레스 생성 유닛의 일부의 구성도이다.
도 38은 직사각형 영역의 버스트 액세스하는 경우의 상위 어드레스 생성 유닛의 일부의 구성도이다.
도 39는 직사각형 영역의 버스트 액세스하는 경우의 메모리 장치의 타이밍차트이다.
도 40은 역진 액세스하는 경우의 하위 어드레스 생성 유닛의 일부 구성도이다.
도 41은 시간축을 갖는 메모리맵의 예를 나타낸 도면이다.
이하, 도면에 따라서 본 발명의 실시형태에 관해 설명한다. 단, 본 발명의 기술적 범위는 이들 실시형태에 한정되지 않고, 특허청구범위에 기재된 사항과 그 균등물까지 미치는 것이다.
[화상 부호화 시스템, 메모리 컨트롤러, 메모리 장치의 개략]
도 1은 화상 부호화 시스템의 구성도이다. 본 실시형태의 메모리 장치는 화상 데이터 등의 2차원 배열 데이터를 기억하는 프레임 메모리(10)에 대응한다. 화상 부호화 시스템은, 입력 화상 데이터 IMin에 대하여 동일 프레임 내에서 압축을 행하는 인트라 예측의 처리와, 시간축 방향에서 압축을 행하는 인터 예측의 처리 중 어느 하나를 선택하는 처리 선택부(18)와, 선택된 처리에 기초하여 입력 화상 데이터 IMin의 부호화를 행하여 부호화된 출력 화상 데이터 CDout를 출력하는 부호화 처리부(20)를 갖는다. 또한, 화상 부호화 시스템은, 인트라 예측 처리부(14)와, 움직임 예측 처리(17)를 포함하는 인터 예측 처리부(16)를 갖는다. 그리고, 인트라 예측 처리부(14)와 인터 예측 처리부(16)는, 각각 메모리 컨트롤러(12)를 경유하여 프레임 메모리(10)에 액세스하여, 프레임 메모리에 기억된 화상 데이터 중 원하는 영역의 화상 데이터에 대하여, 리드 또는 라이트를 행한다. 처리 선택부(18)는, 인트라 예측 처리의 결과와 인터 예측 처리의 결과에 기초하여, 보다 적합한 처리를 선택한다. 인트라 예측 처리부(14)와 인터 예측 처리부(16)는, 메모리 컨트롤러(12)를 통해, 프레임 메모리(10)에 빈번하게 액세스한다. 그 때문에, 프레임 메모리(10)는, 인트라 예측 처리부(14)와 인터 예측 처리부(16)에 의한 원하는 영역의 화상 데이터에 대한 액세스를 효율적으로 행하는 것이 필요해진다.
상기 인트라 예측 처리와 인터 예측 처리는, 예를 들어, MPEG 규격에서의 압축 기술에서 행해지는 처리이다. 이들 처리에서는, 프레임 메모리(10)로의 화상 데이터의 라이트와, 프레임 메모리(10)로부터의 화상 데이터의 리드가 높은 빈도로 행해진다. 예를 들어, 인터 예측 처리에서는, 시간축 방향이 상이한 프레임 화상 사이에서, 동일한 화상의 움직임 방향을 검출하여 움직임 벡터를 구하는 움직임 예측 처리가 행해진다. 이 움직임 예측 처리에서는, 16×16 화소의 작은 직사각형 영역의 화상이, 상이한 프레임의 화상 내의 어느 위치로 이동했는지를 탐색하는 처리가 필요해져, 프레임 메모리(10)로의 리드 동작이 반복된다.
도 2는 화상 부호화 시스템에서의 화상 데이터에 대한 액세스 영역의 지정을 설명하는 도면이다. 도 2의 (A)의 직사각형 영역 액세스의 경우는, 처리부(14, 16)는, 액세스 영역(22)의 기점 좌표(Xa, Ya)와, 수평 방향의 길이 Lh와, 수직 방향의 높이 Lv와, 기울기 0°의 정보를, 메모리 컨트롤러(12)에 공급한다. 또, 도 2의 (B)의 마름모꼴 영역 액세스의 경우는, 처리부(14, 16)는, 액세스 영역(22)의 기점 좌표(Xa, Ya)와, 제1 방향의 길이 Lh와, 제2 방향의 길이 Lv와, 기울기 45°의 정보를, 메모리 컨트롤러(12)에 공급한다.
본 실시형태에서의 메모리 장치는, 전술한 바와 같은 다양한 액세스 영역에 대하여, 보다 높은 효율(큰 대역폭)로 액세스할 수 있도록 구성되어 있다. 메모리 장치는, 예를 들어, 액세스 영역의 형상에 따라서 화상 데이터의 행방향 또는 열방향으로 버스트 리드 및 버스트 라이트를 행할 수 있다. 또한, 메모리 장치는, 액세스 영역의 기울기에 따라서 화상 데이터를 원하는 기울기의 경사 방향으로 버스트 리드 및 버스트 라이트를 행할 수 있다. 또, 메모리 장치는, 버스트 방향을 순진(順進)과 역진 어느 쪽으로도 전환할 수 있다. 그리고, 메모리 장치는, 1회의 칼럼계 명령과 칼럼 어드레스에 기초하여, 2차원의 액세스 영역 내의 화상 데이터를 연속하여 버스트 리드 또는 버스트 라이트할 수 있다.
도 3은 본 실시형태에서의 메모리 컨트롤러의 구성과 메모리 장치와의 접속구성을 나타낸 도면이다. 메모리 컨트롤러(12)는, 도 1의 처리부(14, 16) 등 상위의 시스템으로부터 메모리맵 정보 MAP이 공급되어, 레지스터(34)에 저장한다. 메모리맵 정보 MAP은, 메모리 장치(10) 내에 2차원 배치 데이터를 어떻게 저장할지에 관한 정보이다. 또, 메모리 컨트롤러(12)는, 액세스 제어 데이터 Acn이 공급되고, 메모리 레지스터 제어부(35)가, 메모리 장치(10) 내의 모드 레지스터(40)에 설정해야 할 모드 레지스터 설정 데이터 MRSdata를 생성한다. 이 모드 레지스터 설정 데이터 MRSdata에는, 예를 들어, 칼럼 어드레스 제어부(41)에 의한 칼럼 어드레스 생성시의 단계 정보 STEP나 폭 정보 WIDTH 등이 포함된다. 이들 단계 정보나 폭 정보에 관해서는, 메모리 장치의 설명에서 상세하게 설명한다.
메모리 컨트롤러(12)는, 상위의 시스템으로부터, 액세스 영역을 특정하는 기점 좌표(Xa, Ya), 기울기 SLOP, 길이 Lh, Lv의 정보를 입력하고, 버스트 방향 판정부(32)가 최적의 버스트 방향을 판정하여, 버스트 방향 정보(후술하는 벡터 어드레스 VA에 대응)를 생성한다. 또한, 어드레스 산출부(30)는, 기점 좌표(Xa, Ya)와 버스트 방향 정보에 기초하여, 메모리 장치(10)에 출력해야 할 어드레스를 산출한다.
메모리 컨트롤러(12)는, 메모리 장치(10)와, 커맨드 버스(예를 들어, 4 비트)(38), 어드레스 버스(예를 들어, 12 비트)(37), 데이터 버스(예를 들어, 32 비트)(36)를 통해 접속되어 있다. 커맨드 발행부(33)는, 여러가지 커맨드, 액티브 ACT, 프리차지 PRE, 리드 RD, 라이트 WR, 모드 레지스터 셋트 MRS 등을 특정하는 4개의 커맨드 신호 /CS, /RAS, /CAS, /WE를 생성하여, 적절한 타이밍에 커맨드 버스(38)에 출력한다. 어드레스 발행부(31)는, 커맨드 발행부에 의한 커맨드와 함께, 뱅크 어드레스 BA, 로우 어드레스 RA, 칼럼 어드레스 CA, 벡터 어드레스 VA, 모드 레지스터 셋트 데이터 MRSdata 등을, 어드레스 버스(37)에 출력한다. 그리고, 메모리 컨트롤러(12)는, 데이터 버스(36)에 라이트 데이터를 출력하고, 데이터 버스(36)로부터 리드 데이터를 입력한다.
메모리 컨트롤러(12)에 의한 메모리 장치(10)의 제어는, 예를 들어 다음과 같다. 메모리 컨트롤러(12)는, 전원 투입시 또는 그 밖의 미리 정해진 타이밍에서, 모드 레지스터 셋트 커맨드 MRS와 함께 모드 레지스터 셋트 데이터 MRSdata를 출력한다. 이것에 응답하여, 메모리 장치(10)는, 모드 레지스터(40)에 모드 레지스터 셋트 데이터 MRSdata를 저장한다. 리드 또는 라이트 동작을 행하는 경우, 메모리 컨트롤러(12)는, 액티브 커맨드 ACT와 함께 뱅크 어드레스 BA와 로우 어드레스 RA를 출력하고, 메모리 장치(10)에 뱅크 어드레스 BA와 로우 어드레스 RA에 대응하는 페이지 영역을 액티브 상태로 한다. 그 후, 메모리 컨트롤러(12)는, 리드 커맨드 RD 또는 라이트 커맨드 RW와 함께 뱅크 어드레스 BA와 칼럼 어드레스 CA와 벡터 어드레스 VA를 출력하고, 액티브 상태로 되어 있는 페이지 영역 내의 원하는 메모리 단위 영역에 액세스한다. 여기서, 메모리 단위 영역이란, 어드레스에 의해 선택되는 복수 비트 또는 복수 바이트로 이루어진 메모리셀군을 갖는 영역이다.
그리고, 버스트 모드에서는, 메모리 장치(10) 내의 칼럼 어드레스 제어부(41)는, 공급되는 칼럼 어드레스 CA와 벡터 어드레스 VA에 따라서, 액세스 영역 내의 주사 방향에 대응하는 내부 칼럼 어드레스를 순차적으로 생성하고, 셀 어레이를 갖는 메모리 코어(도시하지 않음)에, 주사 방향에 대응하는 복수의 메모리 단위 영역의 데이터의 입출력을 연속하여 행하게 한다. 즉, 메모리 장치(10)는, 버스트 모드에서, 1회의 칼럼계 명령(리드 또는 라이트)과 칼럼 어드레스에 응답하여, 임의의 주사 방향의 2차원 배열 데이터를 연속하여 리드 또는 라이트할 수 있다.
또한, 주사 방향이 경사 방향인 경우, 메모리 장치는, 단계 정보 STEP를 모드 레지스터에 설정하고 벡터 어드레스 VA를 입력함으로써, 임의의 각도 방향으로의 버스트 액세스도 행할 수 있다. 또, 액세스 영역이 2차원의 영역인 경우, 폭 정보 WIDTH를 모드 레지스터에 설정함으로써, 1회의 칼럼계 명령(리드 또는 라이트)과 칼럼 어드레스에 응답하여, 칼럼 어드레스 제어부(41)는, 2차원의 액세스 영역에 대응하는 칼럼 어드레스를 연속하여 생성할 수 있고, 메모리 장치(10)는, 2차원의 액세스 영역 내의 데이터를 연속하여 리드 또는 라이트할 수 있다.
상기 뱅크 어드레스 BA, 로우 어드레스 RA, 칼럼 어드레스 CA 등은, 멀티플로(시분할로) 메모리 컨트롤러가 메모리 장치에 공급하는 경우도 있고, 논멀티플로(시분할하지 않고 일괄적으로) 메모리 컨트롤러가 메모리 장치에 공급하는 경우도 있다.
도 4는 본 실시형태에서의 메모리 장치의 구성도이다. 메모리 장치(10)는, 도 3에서 설명한 바와 같이, 메모리 컨트롤러로부터 커맨드 버스(38)를 통해 커맨드를 특정하는 커맨드 신호 /CS, /RAS, /CAS, /WE를 입력하고, 커맨드 제어부(40)가, 그 커맨드에 대응하여, 모드 레지스터(40), 로우 타이밍 제어부(43), 칼럼 타이밍 제어부(42)를 제어한다. 예를 들어, 모드 레지스터 셋트 커맨드 MRS에 응답하여, 커맨드 제어부(40)가 모드 레지스터(40)에 어드레스 버스(37)에 공급된 모드 레지스터 셋트 데이터 MRSdata를 설정한다. 또, 액티브 커맨드 ACT에 응답하여, 커맨드 제어부(40)는, 로우 타이밍 제어부(43)를 제어하여 액티브 동작을 시킨다. 또한, 리드 또는 라이트 커맨드 RD, WR에 응답하여, 커맨드 제어부(40)는, 칼럼 타이밍 제어부(42)를 제어하여 리드 또는 라이트 동작을 행하게 한다.
메모리 장치(10)는, 메모리 컨트롤러로부터 어드레스 버스(37)를 통해 어드레스 신호 A[11:0]를 입력하고, 외부 로우 어드레스 raext는, 로우 버퍼(46)를 통해 로우 어드레스 제어부(44)에 공급되고, 외부 칼럼 어드레스 caext는, 칼럼 버퍼(45)를 통해 칼럼 어드레스 제어부(41)에 공급된다. 또, 메모리 장치는, 메모리 컨트롤러로부터 전용 버스(39)를 통해 또는 어드레스 버스(37)의 일부의 비트를 통해, 벡터 어드레스 VA[2:0]를 입력하고, 외부 벡터 어드레스 vaext는 칼럼 어드레스 제어부(41)에 공급된다. 또한, 모드 레지스터(40)에 설정된 단계 정보나 폭 정보에 대응하는 제어 신호 selcntext도, 칼럼 어드레스 제어부(41)에 공급된다.
그리고, 로우 어드레스 제어부(44)는, 외부 로우 어드레스 raext로부터 내부 로우 어드레스 raint를 생성하여, 로우 디코더(50)에 공급한다. 로우 어드레스는 예를 들어 12 비트로 구성된다. 또, 칼럼 어드레스 제어부(41)는, 외부 칼럼 어드레스 caext, 벡터 어드레스 vaext, 제어 신호 selcntext 등에 기초하여, 내부 칼럼 어드레스 caint를 생성하여, 칼럼 디코더(49)에 공급한다. 메모리 장치(10)에 외부로부터 공급되는 어드레스나 제어 신호에는 「ext」을 인용부호에 붙이고 있다. 또, 메모리 장치(10)의 내부에서 생성되는 어드레스나 제어 신호에는 「int」을 인용부호에 붙이고 있다.
도 5는 본 실시형태에서의 메모리 장치의 메모리맵의 일례를 나타낸 도면이다. 도 5에서, 표시 장치(1)를 포함하는 화상 처리 시스템에서의 화상 데이터는, 메모리 장치(10) 내에 기억된다. 화상 데이터는, 각 화소의 휘도 신호 Y와 색차 신호 Ca, Cb나, 각 화소의 RGB 계조 신호 등의 데이터로 구성되고, 각 신호는 예를 들어 8 비트(1 바이트)의 데이터로 구성된다.
한편, 메모리 장치(10)는, 일반적으로 SDRAM 등의 반도체 기판 상에 집적 회로가 형성된 대용량이며 고속인 반도체 메모리 장치로 이루어진다. 이러한 메모리 장치는, 복수의 뱅크, 도 1에서는 4개의 뱅크 Bank0∼3으로 구성되고, 각 뱅크 Bank0은 복수의 블록 BLK-0을 가지며, 각 블록은 복수의 워드선 WL과 비트선 BL과 그 교차 위치의 메모리셀 MC을 갖는다. 메모리셀은, 도시하지 않지만 워드선에 게이트가 접속된 MOS 트랜지스터와 그 MOS 트랜지스터에 접속된 커패시터로 구성된다. 그리고, 도 5의 예에서는, 4개의 뱅크는 뱅크 어드레스 BA0-BA3에 대응되고, 워드선 WL은 로우 어드레스 RA0-RA7에 대응되고, 비트선 BL은 칼럼 어드레스 CA0-CA127에 대응된다.
뱅크 어드레스 BA와 로우 어드레스 RA의 조합에 의해 뱅크 내의 워드선 WL이 선택되고, 칼럼 어드레스 CA에 의해 비트선 BL이 선택된다. 즉, 뱅크 어드레스 BA, 로우 어드레스 RA, 칼럼 어드레스 CA의 조합에 의하여, 4 바이트 BY0-3의 데이터가 액세스된다. 1 바이트는 8 비트로 구성되기 때문에, 1회의 액세스로 4 바이트, 즉 4×8=32 비트의 데이터가 메모리의 입출력 단자 DQ에 관련되어, 판독 또는 기록이 행해진다. 일반적으로, 상기 1 바이트의 데이터가 화소의 8 비트 데이터 신호에 대응한다.
도 5에 나타낸 메모리맵(2)에 의하면, 뱅크 어드레스 BA와 로우 어드레스 RA에 의해 특정되는 페이지 영역 Page가 화상 데이터인 2차원 배치 데이터의 행렬에 배치된다. 그리고, 하나의 페이지 영역 Page는, 확대 영역 PageE에 나타낸 바와 같이, 칼럼 어드레스 CA0-127로 특정되는 128개의 메모리 단위 영역을 가지며, 각 메모리 단위 영역은 4 바이트 BY0-3의 데이터를 기억한다. 이 4 바이트 BY0-3의 데이터가, 메모리 장치의 32 비트의 입출력 단자 DQ0-31을 경유하여 입출력된다.
상기 메모리맵(2)은, 복수 뱅크 구성의 SDRAM 등의 메모리 장치(10)를 고속 동작시키기에 적합하다. 전술한 바와 같이, SDRAM은, 뱅크 어드레스 BA와 로우 어드레스 RA와 함께 주어지는 액티브 커맨드에 응답하여, 선택된 뱅크 내의 선택된 워드선을 구동시키고, 메모리셀의 데이터를 비트선에 출력하고, 비트선에 대응된 센스 앰프를 활성화하여 비트선 전위를 증폭시키는 액티브 동작을 행한다. 그 후, SDRAM은 칼럼 어드레스 CA와 함께 주어지는 리드 커맨드에 응답하여, 선택된 비트선으로부터 데이터를 판독하는 리드 동작을 행한다. 또는, SDRAM은 액티브 동작후에, 칼럼 어드레스 CA 및 기록 데이터와 함께 주어지는 라이트 커맨드에 응답하여, 선택된 비트선에 기록 데이터를 기록하는 라이트 동작을 행한다. 리드 동작 또는 라이트 동작의 후에 프리차지 커맨드에 의한 프리차지 동작이 행해지고, 다시 액티브 동작, 리드 또는 라이트 동작이 된다. 이와 같이, SDRAM에서는, 각 뱅크가 독립적으로 액티브 동작, 리드 동작, 라이트 동작을 행할 수 있다.
도 5의 메모리맵(2)에 의하면, 상하 좌우에 인접하는 페이지 영역 Page에는 상이한 뱅크 어드레스 BA0-3이 대응된다. 즉, 메모리맵(2)의 홀수행에는 뱅크 어드레스 BA0, 1이 교대로 배치되고, 짝수행에는 뱅크 어드레스 BA2, 3이 교대로 배치된다. 또한, 메모리맵(2)의 라스터 방향(행방향)으로, 로우 어드레스 RA0-7이 2개씩 반복되면서 증분(increment)되고, 메모리맵(2)의 각 행은 4개의 로우 어드레스 RA0-3, RA4-7로 반환되고 있다.
도 6은 도 5의 메모리맵의 상세도이다. 도 6에는, 메모리맵(2)과, 뱅크 어드레스 BA0, BA1과 로우 어드레스 RA와 칼럼 어드레스 CA의 관계가 나타나 있다. 뱅크 어드레스 BA0, BA1은 「0, 1」의 이진수 표시이고, 로우 어드레스 RA는 「0∼K-1, 0∼L-1」의 십진수 표시이다. 도 6에 나타낸 바와 같이, 메모리맵(2)은, 화상 데이터인 2차원 배치 데이터의 행렬 방향에 대응하는 복수의 페이지 영역 Page가, 뱅크 어드레스 BA와 로우 어드레스 RA에 기초하여 대응되어 있다. 즉, 하위의 뱅크 어드레스 BA0과 하위의 로우 어드레스 RA가 행방향의 페이지 영역 Page에 대응하고, 상위의 뱅크 어드레스 BA1과 상위의 로우 어드레스 RA가 열방향의 페이지 영역 Page에 대응한다.
도 6에는, 확대된 메모리맵(2E)의 일부가 나타나 있다. 도 5와 마찬가지로, 굵은 테두리로 둘러싸인 인접하는 2행 2열의 페이지 영역이, 뱅크 및 로우 어드레스의 「BA0, RA0」「BA1, RA0」「BA2, RA0」「BA3, RA0」에 대응되어 있다. 그리고, 로우 어드레스 RAK-1에서 행방향이 반환되고 있다. 또, 각 페이지 영역 내는, 또한 칼럼 어드레스 CA에 의해 대응되는 복수의 메모리 단위 영역을 갖는다. 도 6 중에서는, 칼럼 어드레스 CA의 구체적인 값은 생략되어 있다.
예를 들어, 풀하이비젼의 1920×1080 사이즈의 화상 데이터를 메모리에 할당하는 경우, 1 화소의 정보를 8 bit*4(RGBα)로 가정하면, 1 화면의 데이터량은 약 64 Mbit이다. MPEG의 인코더와 디코더에서는, 전술한 바와 같이 직사각형 영역의 화상 데이터를 처리하는 것이 빈번하게 행해진다. 따라서, 도 6에 나타낸 바와 같이, 복수의 페이지 영역을 직사각형으로 맵핑하는 것이, 액세스 효율 향상에 기여한다. 또한, 인접하는 페이지 영역을 상이한 뱅크 어드레스에 할당하고, 굵은 테두리의 4개의 페이지 영역에 동일한 로우 어드레스를 할당함으로써, 장시간이 필요한 액티브 동작에 의해 4개의 뱅크 영역을 동시에 액티브 상태로 한 후, 칼럼계 커맨드와 함께 뱅크 어드레스와 칼럼 어드레스를 변경함으로써, 액티브 상태의 메모리셀의 데이터를 단시간에 액세스할 수 있다.
도 7은, 페이지 영역 내의 메모리맵을 나타낸 도면이다. 도 7의 예에서는, 하나의 페이지 영역 Page는, 칼럼 어드레스 A00-A07에 의해 선택되는 16행 16열의 메모리 단위 영역 MU(256 영역)을 갖는다. 도면 중, 각 메모리 단위 영역 MU에는, 16진수 표기의 칼럼 어드레스 CA00∼CAff가 나타나 있다. 메모리 단위 영역 MU는, 32 비트의 DQ 인터페이스에 대응하여, 4 바이트(32 비트)의 데이터를 기억한다. 그리고, 도 7의 메모리맵에 의하면, 복수의 메모리 단위 영역 MU는, 칼럼 어드레스 중 하위의 비트군 CA-L(A00∼A03)에 기초하여 2차원 배열 데이터의 행방향으로 배열된 데이터를 기억하고, 칼럼 어드레스 중 상위의 비트군 CA-U(A04∼A07)에 기초하여 2차원 배열 데이터의 열방향으로 배열된 데이터를 기억한다.
따라서, 1 화소의 데이터(RGBα, 8 비트×4=32 비트)가 통합되어 저장되는 경우는, 하나의 메모리 단위 영역 MU에 1 화소의 화상 데이터(RGBα)가 저장된다. 따라서, 그 경우는 하나의 페이지 영역 Page에는 16×16 화소의 화상 데이터가 저장된다.
또, 1 화소의 데이터(RGBα) 중 각 데이터(8 비트)가 분리되어 저장되는 경우는, 하나의 메모리 단위 영역 MU에 4 화소의 화상 데이터가 저장된다. 그 경우, 하나의 메모리 단위 영역 MU 내에 1행 4열의 화소의 화상 데이터를 저장하면, 하나의 페이지 영역 Page에는 64×16 화소의 화상 데이터가 저장된다. 또, 하나의 메모리 단위 영역 MU 내에 2행 2열의 화소의 화상 데이터를 저장하면, 하나의 페이지 영역에는 32×32 화소의 화상 데이터가 저장된다. 또한, 하나의 메모리 단위 영역 MU 내에 4행 1열의 화소의 화상 데이터를 저장하면, 하나의 페이지 영역에는 16×64 화소의 화상 데이터가 저장된다. 이들의 구별은, 메모리맵에 기초하여 메모리 컨트롤러가 제어한다.
도 7의 메모리 단위 영역 MU에는, 칼럼 어드레스가 16진수(CA00∼CAff)로 표기되어 있다. 한편, 하위의 비트군 CA-L, 상위의 비트군 CA-U에서는, 각 4 비트의 칼럼 어드레스 A00∼A03, A04∼A07이 2진수(0, 1)로 표기되어 있다.
[칼럼 어드레스 제어부]
도 8은 본 실시형태에서의 칼럼 어드레스 제어부(41) 내의 칼럼 어드레스를 생성하는 구성을 나타낸 도면이다. 칼럼 어드레스 제어부(41)는, 8 비트의 외부 칼럼 어드레스 caext<07:04>, caext<03:00>를 입력하고, 8 비트의 내부 칼럼 어드레스 caint<07:04>, caint<03:00>를 생성하여, 메모리 코어 내의 칼럼 디코더에 공급한다. 버스트 모드가 모드 레지스터(40)에 설정된 경우는, 칼럼 어드레스 제어부(41)는, 버스트 길이의 수의 내부 칼럼 어드레스를 순차적으로 생성하여 출력한다.
칼럼 어드레스 제어부(41)는, 내부 칼럼 어드레스의 하위 비트군 caint<03:00>을 생성하는 하위 어드레스 생성 유닛(80)과, 내부 어드레스의 상위 비트군 caint<07:04>을 생성하는 상위 어드레스 생성 유닛(84)과, 2차원 배열 데이터의 주사 방향 제어 신호 vaext<03:00>에 기초하여 하위 어드레스 생성 유닛(80)과 상위 어드레스 생성 유닛(84)의 동작을 제어하는 어드레스 생성 유닛 제어 회로(88)를 가지며, 주사 방향 제어 신호 vaext<02:00>의 주사 방향에 대응하는 내부 칼럼 어드레스를 순차적으로 생성한다. 이 예에서는, 하위 비트군과 상위 비트군은 4 비트씩으로 나누어져 있지만, 이것에 한정되지 않고, 2 비트와 6 비트, 3 비트와 5 비트로 나누어져 있어도 좋다. 그 경우는, 도 7에 나타낸 페이지 영역 내의 메모리 단위 영역의 행렬의 비율이 상위 비트수와 하위 비트수에 따라서 상이해진다.
하위 어드레스 생성 유닛(80)은, 4 비트 카운터(81)와, 카운터의 단계수(클록당 증감수)를 설정하는 단계 설정 회로(82)와, 카운터의 최대 카운트값(반환폭에 대응)을 설정하는 반환폭 설정 회로(83)를 갖는다. 단계 설정 회로(82)는, 카운트 제어 신호 countlz를 카운터의 어느 비트에 입력해야 할지를 선택하는 셀렉터 회로이며, 모드 레지스터(40)에 설정된 단계 제어 신호 selcntls(2 비트)에 따라서 선택한다. 또, 반환폭 설정 회로(83)는, 어느 비트의 카운터 출력을 카운트 종료 신호(일종의 캐리 신호) caintle로서 출력해야 할지를 선택하는 셀렉터 회로이며, 모드 레지스터(40)에 설정된 반환폭 제어 신호 selcntlw(2 비트)에 따라서 카운터의 비트를 선택한다.
상위 어드레스 생성 유닛(84)은, 하위 어드레스 생성 유닛(80)과 마찬가지로, 4 비트 카운터(81)와, 카운터의 단계수(클록당 증감수)를 설정하는 단계 설정 회로(82)와, 카운터의 최대 카운트값(반환폭에 대응)을 설정하는 반환폭 설정 회로(83)를 갖는다. 단계 설정 회로(86)와 반환폭 설정 회로(87)도, 하위 어드레스 생성 유닛(80) 내의 회로(82, 83)와 동일하다.
모드 레지스터(40)에는, 메모리 컨트롤러로부터 모드 레지스터 셋트 커맨드와 함께 공급되는 어드레스 연산 제어 신호 selcntlext가 설정된다. 이 어드레스 연산 제어 신호 selcntlext는, 단계 제어 신호 selcntls(하위 상위 각각 2 비트)와, 반환폭 제어 신호 selcntlw(하위 상위 각각 2 비트)를 갖는다.
어드레스 생성 유닛 제어 회로(88)는, 메모리 컨트롤러로부터 공급되는 주사 방향 제어 신호 vaext에 따라서, 하위 및 상위 어드레스 생성 유닛(80, 84)의 동작을 제어한다. 주사 방향 제어 신호 vaext는, 3 비트의 신호이며, 상하 좌우 방향과 4개의 경사 방향의 합계 8개의 주사 방향을 특정하는 신호이다.
도 9는 주사 방향 제어 신호 vaext의 구체예를 나타낸 도면이다. 도면 중 도면 부호 90은 주사 방향 제어 신호 vaext의 구체예를 나타내고, 현재의 화소 CPX로부터 상하의 열방향과 좌우의 행방향과 4개의 경사 방향에 대응하여 3 비트의 주사 방향 제어 신호 vaext가 할당된다.
이 주사 방향 제어 신호의 공급은, 메모리 컨트롤러가 모드 레지스터 설정 커맨드와 함께 모드 레지스터에 설정하는 방법과, 칼럼계 커맨드와 함께 공급하는 방법을 생각할 수 있다. 도 9 중의 도면 부호 92는, 칼럼계 커맨드와 함께 공급하는 경우의 어드레스 단자 A00-A11의 할당을 나타낸다. 로우계 커맨드인 액티브 커맨드 ACT의 발행과 함께, 12 비트의 어드레스 단자 A00-A11에, 12 비트의 로우 어드레스 RA00-RA11이 입력된다. 또, 칼럼계 커맨드인 라이트 또는 리드 커맨드 WR/RD의 발행과 함께, 어드레스 단자 A00-A07에 8 비트의 칼럼 어드레스 CA00-CA07이 입력되고, 어드레스 단자 A10에 오토프리차지 신호 AP가, 나머지 어드레스 단자 A08, A09, A11에는, 3 비트의 주사 방향 제어 신호 VA0-VA2가 입력된다. 주사 방향 제어 신호 vaext는, 어드레스 단자에 입력되기 때문에, 벡터 어드레스라고도 지칭한다.
도 8로 되돌아가, 어드레스 생성 유닛 제어 회로(88)는, 주사 방향 제어 신호 vaext에 따라서, 카운트 제어를 하는 클록 CLK을 하위 어드레스 생성 유닛(80)의 카운트 제어 신호 countlz로서 출력할지, 상위 어드레스 생성 유닛(84)의 카운트 제어 신호 countuz로서 출력할지, 또는 양 카운트 제어 신호(countlx, countuz)로서 출력할지를 제어한다. 또한, 어드레스 생성 유닛 제어 회로(88)는, 주사 방향 제어 신호 vaext에 따라서, 하위 어드레스 생성 유닛(80)의 카운트 종료 신호(캐리 신호) caintle를 상위로의 카운트 제어 신호 countuz로서 출력할지, 상위 어드레스 생성 유닛(84)의 카운트 종료 신호(캐리 신호) caintue를 하위로의 카운트 제어 신호 countlz로서 출력할지를 제어한다. 그리고, 어드레스 생성 유닛 제어 회로(88)는, 주사 방향 제어 신호 vaext에 따라서, 하위 및 상위 어드레스 생성 유닛(80, 84)에 역진 제어 신호 reverslz, reversuz를 출력한다.
즉, 주사 방향이 행방향인 경우는, 클록 CLK을 하위 어드레스 생성 유닛(80)의 카운트 제어 신호 countlz로서 출력하고, 하위 어드레스 생성 유닛(80)의 카운트 종료 신호 caintle를 상위 어드레스 생성 유닛(84)의 카운트 제어 신호로서 공급한다. 주사 방향이 열방향인 경우는, 클록 CLK을 상위 어드레스 생성 유닛(84)의 카운트 제어 신호 countuz로서 출력하고, 상위 어드레스 생성 유닛(84)의 카운트 종료 신호 caintue를 하위 어드레스 생성 유닛(80)의 카운트 제어 신호로서 공급한다. 또한, 주사 방향이 경사 방향인 경우는, 클록을 하위 및 상위의 카운트 제어 신호로서 출력한다.
이하는, 주사 방향 제어 신호 vaext에 따라서, 어드레스 생성 유닛 제어 회로(88)가 어떻게 하위 및 상위 어드레스 생성 유닛(80, 84)을 제어하는지를 설명한다.
(1) 주사 방향 제어 신호 vaext=000 : 행방향으로 순진
클록 CLK이 하위의 카운트 제어 신호 countlz에 접속;
하위의 카운트 종료 신호(캐리 신호) caintle가 상위의 카운트 제어 신호 countuz에 접속;
역진 제어 신호 reverselz, reversuz는 모두 순진으로 설정;
그 결과, 하위로부터 상위의 클록 제어 회로(80, 84)에 직렬로 접속되고, 클록 CLK에 동기하여, 8 비트의 내부 칼럼 어드레스 caint<07:00>가 순차적으로 카운트업된다. 즉, 상위 어드레스 생성 유닛(84)은, 하위 어드레스 생성 유닛(80)의 카운트 종료 신호 caintle에 동기하여 카운트 동작을 행한다.
(2) 주사 방향 제어 신호 vaext=111 : 행방향으로 역진
클록 CLK이 하위의 카운트 제어 신호 countlz에 접속;
하위의 카운트 종료 신호(캐리 신호) caintle가 상위의 카운트 제어 신호 countuz에 접속;
역진 제어 신호 reverselz, reversuz는 모두 역진으로 설정;
그 결과, 하위와 상위의 클록 제어 회로(80, 84)가 직렬로 접속되고, 클록 CLK에 동기하여, 8 비트의 내부 칼럼 어드레스 caint<07:00>가 순차적으로 카운트다운된다. 즉, 상위 어드레스 생성 유닛(84)은, 하위 어드레스 생성 유닛(80)의 카운트 종료 신호 caintle에 동기하여 카운트 동작을 행한다. 역진에 의한 카운트다운 동작에 관해서는, 이하에 상세히 설명한다. 또, 역진 제어 신호 reversuz는 순진으로 설정되어도 좋다.
(3) 주사 방향 제어 신호 vaext=001 : 열방향으로 순진(順進)
클록 CLK이 상위의 카운트 제어 신호 countuz에 접속;
상위의 카운트 종료 신호(캐리 신호) caintue가 하위의 카운트 제어 신호 countlz에 접속;
역진 제어 신호 reverselz, reversuz는 모두 순진으로 설정;
그 결과, 상위로부터 하위의 클록 제어 회로(84, 80)에 직렬로 접속되고, 클록 CLK에 동기하여, 4 비트의 상위 내부 칼럼 어드레스 caint<07:04>가 순차적으로 카운트업되고, 상위의 카운트 종료 신호 cainteue에 동기하여 4 비트의 하위 내부 칼럼 어드레스 caint<03:00>가 순차적으로 카운트업된다.
(4) 주사 방향 제어 신호 vaext=110 : 열방향으로 역진
클록 CLK이 상위의 카운트 제어 신호 countuz에 접속;
상위의 카운트 종료 신호(캐리 신호) caintue가 하위의 카운트 제어 신호 countlz에 접속;
역진 제어 신호 reverselz, reversuz는 모두 역진으로 설정;
그 결과, 상위로부터 하위의 클록 제어 회로(84, 80)에 직렬로 접속되고, 클록 CLK에 동기하여, 4 비트의 상위 내부 칼럼 어드레스 caint<07:04>가 순차적으로 카운트다운되고, 상위의 카운트 종료 신호 cainteue에 동기하여 4 비트의 하위 내부 칼럼 어드레스 caint<03:00>가 순차적으로 카운트다운된다. 역진 제어 신호 reverslz는 순진으로 설정되어도 좋다.
(5) 주사 방향 제어 신호 vaext=011 : 우측 하방향으로
클록 CLK이 상위와 하위의 카운트 제어 신호 countuz, countlz에 접속;
역진 제어 신호 reverselz, reversuz는 모두 순진으로 설정;
그 결과, 상위와 하위의 클록 제어 회로(84, 80)가, 클록 CLK에 동기하여 병행하여 카운트업한다. 즉, 상위 내부 칼럼 어드레스 caint<07:04>와 하위 내부 칼럼 어드레스 caint<03:00>가 병행하여 순차적으로 카운트업된다.
(6) 주사 방향 제어 신호 vaext=101 : 우측 상방향으로
클록 CLK이 상위와 하위의 카운트 제어 신호 countuz, countlz에 접속;
역진 제어 신호 reverselz, reversuz는 순진, 역진으로 설정;
그 결과, 상위와 하위의 클록 제어 회로(84, 80)가, 클록 CLK에 동기하여 병행하여 카운트 동작하여, 각각 카운트다운, 카운트업한다. 즉, 상위 내부 칼럼 어드레스 caint<07:04>가 순차적으로 카운트다운되고, 하위 내부 칼럼 어드레스 caint<03:00>가 순차적으로 카운트업된다.
(7) 주사 방향 제어 신호 vaext=010 : 좌측 하방향으로
클록 CLK이 상위와 하위의 카운트 제어 신호 countuz, countlz에 접속;
역진 제어 신호 reverselz, reversuz는 역진, 순진으로 설정;
그 결과, 상위와 하위의 클록 제어 회로(84, 80)가, 클록 CLK에 동기하여 병행하여 카운트 동작하여, 각각 카운트업, 카운트다운한다. 즉, 상위 내부 칼럼 어드레스 caint<07:04>가 순차적으로 카운트업되고, 하위 내부 칼럼 어드레스 caint<03:00>가 순차적으로 카운트다운된다.
(8) 주사 방향 제어 신호 vaext=100 : 좌측 상방향으로
클록 CLK이 상위와 하위의 카운트 제어 신호 countuz, countlz에 접속;
역진 제어 신호 reverselz, reversuz는 모두 역진으로 설정;
그 결과, 상위와 하위의 클록 제어 회로(84, 80)가, 클록 CLK에 동기하여 병행하여 카운트 동작하여, 모두 카운트다운한다. 즉, 상위 내부 칼럼 어드레스 caint<07:04>가 순차적으로 카운트다운되고, 하위 내부 칼럼 어드레스 caint<03:00>도 순차적으로 카운트다운된다.
상위와 하위의 어드레스 생성 유닛(80, 84)은, 단계 제어 신호 selcntls에 따라서, 설정된 단계로 카운트업 또는 카운트다운한다. 이 단계값을 적절하게 설정함으로써, 기울어진 주사 방향을 수평, 수직 방향에 대하여 45도의 방향(하위, 상위의 단계수가 같은 경우), 수평, 수직 방향에 대하여 45도 이외의 방향(하위, 상위의 단계수가 상이한 경우)으로 주사할 수 있다. 예를 들어, 하위의 단계수를 1, 상위의 단계수를 2로 설정하면, 대각선 방향으로 주사할 수 있다.
또, 상위와 하위의 어드레스 생성 유닛(80, 84)은, 반환폭 제어 신호 selcntlw에 따라서, 설정된 반환폭으로 카운트업 또는 카운트다운을 반복한다. 이반환폭을 적절하게 설정함으로써, 임의의 직사각형 영역에 대한 액세스를 1회의 칼럼계 커맨드에 의한 버스트 액세스로 행할 수 있다.
그리고, 상위와 하위의 어드레스 생성 유닛(80, 84)에 의한 연속 카운트수는, 전술한 버스트 길이에 기초하여 클록 CLK의 수로 제어된다.
이상과 같이, 주사 방향 제어 신호 vaext와 어드레스 연산 제어 신호 selcntlext는, 모두 어드레스 연산 방법을 제어하는 신호이다. 따라서, 양 제어 신호가 모두 모드 레지스터 셋트 커맨드에 의해 모드 레지스터(40)에 설정되어도 좋고, 칼럼계 커맨드와 함께 어드레스 단자로부터 입력해도 좋다. 도 8의 실시형태에서는, 주사 방향 제어 신호 vaext가 칼럼계 커맨드와 함께 입력되고, 어드레스 연산 제어 신호 selcntlext가 모드 레지스터 셋트 커맨드에 의해 모드 레지스터(40)에 설정되어 있다.
이하, 경사 주사 액세스, 수평 및 수직 주사 액세스, 특수한 주사 액세스에 관해 순서대로 상세하게 설명한다.
[경사 주사 액세스]
동영상 데이터는 연속하는 프레임 화상 데이터로 구성된다. MPEG 규격에 의한 압축 처리에서는, 프레임 화상 사이에서 동일한 도형의 움직임 방향을 움직임 벡터로서 구하여, 움직임 벡터와 도형의 차분만을 다음 프레임 화상의 데이터로 하는 것이 행해진다. 이에 따라 다음 프레임 화상의 데이터량을 압축할 수 있다. 이 움직임 벡터의 탐색에서는, 16×16 화소로 이루어진 마이크로 블록의 화상 데이터와 일치 또는 유사한 후속 프레임 화상 내의 마이크로 블록 화상을 탐색한다.
도 10은 동영상의 움직임 방향의 예를 나타낸 도면이다. 동영상의 경우, 도 10의 (A)에 나타낸 바와 같이 수평 방향의 움직임이 많고, 이어서, 도 10의 (B)에 나타낸 바와 같이 수직 방향의 움직임이 많다. 즉 수평 방향과 수직 방향의 움직임이 도형의 움직임의 대부분을 차지하고 있다. 한편, 경사 방향으로 도형이 이동할 확률은 비교적 낮다.
도 11은 동영상의 움직임 방향과 움직임량의 분포를 나타낸 도면이다. 도 11의 (A)는, 동영상의 움직임 방향의 분포를 나타낸다. 하나의 메모리 단위 영역(4 바이트)이 4 화소의 화상 데이터를 기억하고, 4개의 메모리 단위 영역 CA67-CA97이 4×4 화소의 화상 데이터로 한다. 이 경우, 움직임 벡터 탐색에서는, 메모리 단위 영역 CA67-CA97의 4×4 화소의 화상 데이터와 일치 또는 유사한 4개의 메모리 단위 영역의 화상 데이터를 탐색한다. 따라서, 동영상의 움직임 방향과 움직임량의 통계에 기초하여 탐색 영역을 설정하는 것이, 움직임 벡터 탐색 처리의 효율화에 기여한다.
도 11의 (A)의 좌측에는, 샘플의 동영상 데이터에 관해 조사한 움직임 방향의 각도 θ와 이동 빈도의 관계가 나타나 있다. 수평 방향에 대응하는 θ=0, π, 2π의 방향의 이동 빈도가 높고, 수직 방향에 대응하는 θ=π/2, 3π/2의 방향으로 이동 빈도가 다음으로 높고, 그 이외의 각도의 이동 빈도는 낮아져 있다. 즉, 도 10에서 설명한 동영상의 움직임 방향은 수평 방향이 가장 많고, 다음으로 수직 방향이 많고, 경사 방향은 적은 것이 입증되어 있다. 도 11의 (B)의 좌측에는, 샘플의 동영상 데이터에 관해 조사한 움직임량 d와 이동 빈도의 관계가 나타나 있다. 이것에 의하면, 이동 거리가 짧을수록 이동 빈도가 높아져 있다.
이러한 통계 결과에 의하면, 움직임 벡터의 탐색에서는, 경사 방향이며 이동량 d가 큰 영역의 탐색은 일치 또는 유사한 도형을 검출할 확률이 비교적 낮은 것을 이해할 수 있다.
도 12는 움직임 벡터의 탐색 범위의 일례를 나타낸 도면이다. 페이지 영역 Page는 16×16의 메모리 단위 영역으로 구성되고, 이 16×16의 메모리 단위 영역에 2차원 배치 데이터인 화상 데이터의 행렬이 대응되어 있다. 그리고, 중심의 4개의 메모리 단위 영역 CA67∼CA97 내의 4×4 화소의 블록 도형에 관해, 움직임 벡터의 탐색을 행한다고 가정한다. 종래와 같이 페이지 영역 Page 내의 16×16의 메모리 단위 영역 전부에 관해 탐색을 하기 위해서는, 이들 256개의 메모리 단위 영역에 대하여 액세스해야 한다.
그러나, 도 10, 11에서 설명한 바와 같이, 동영상의 움직임 방향과 움직임량의 통계에 의하면, 페이지 영역 Page 내의 4개의 각의 영역을 제거한 마름모꼴 RHB의 영역을 탐색함으로써 탐색 효율을 높일 수 있다. 마름모꼴 영역 RHB는 하나의 페이지 영역 Page의 1/2의 면적이기 때문에, 탐색 영역을 마름모꼴 영역 RHB로 하면 탐색 영역이 반감한다. 따라서, 이 마름모꼴 영역 RHB 내에서 움직임 벡터의 탐색을 행하는 경우의 액세스에 관해 이하에 설명한다.
도 13은 마름모꼴 영역의 액세스 방법의 일례를 나타낸 도면이다. 페이지 영역 Page 내의 마름모꼴 영역 RHB를 액세스하는 경우, 종래의 칼럼 어드레스를 증분시켜 행방향으로 주사하면서 액세스하면, 동일한 버스트 길이로 버스트 리드 또는 버스트 라이트를 할 수 없어, 액세스 효율이 저하된다. 따라서, 도 13의 (A)에 나타낸 바와 같이, 메모리 장치측에서는, 화살표와 같이 경사 방향으로 주사하면서 버스트 리드 또는 버스트 라이트하면, 동일한 버스트 길이로 액세스할 수 있기 때문에 메모리 장치에 대한 액세스 효율이 높아진다. 통상의 화상 부호화 시스템에서는, 프레임 메모리 내의 화상 데이터를 시스템 내의 워크 메모리(도 13의 (B))에 저장한다.
도 13과 같이, 프레임 메모리(도 13의 (A)) 내의 마름모꼴 영역 RHB에 대하여, 화살표의 경사 방향의 주사가 가능하면, 시스템 워크 메모리(도 13의 (B)) 내에는, 8×16의 메모리 단위 영역의 화상 데이터가 저장된다.
도 14는 경사 방향의 주사에 관해 설명하는 도면이다. 마름모꼴 영역에 대하여 경사 방향으로 주사하기 위해서는, 메모리 장치 내의 칼럼 어드레스 제어부가, 도 14의 화살표 방향으로 칼럼 어드레스 CA07-CA7e를 순차적으로 생성하는 것이 요구된다. 즉, 경사 방향으로 주사하기 위해서는, 하위의 칼럼 어드레스 CA-L과 상위의 칼럼 어드레스 CA-U를 병행하여 증분시켜야 한다. 따라서, 도 8의 칼럼 어드레스 제어부(41)에서 설명한 바와 같이 하위 어드레스 생성 유닛(80)과 상위 어드레스 생성 유닛(84)을 병행 동작하도록 적절하게 제어함으로써, 상기 경사 방향의 주사를 버스트 모드로 행할 수 있다.
도 15는 경사 방향 주사를 행하는 칼럼 어드레스 제어부를 나타낸 도면이다. 도 16, 17은 경사 방향 주사를 행하는 칼럼 어드레스 제어부의 상세도이다. 도 15에서, 어드레스 생성 유닛 제어 회로(88)는, 주사 방향 제어 신호 vaext=011에 따라서, 클록 CLK을 하위 및 상위 어드레스 생성 유닛(80, 84)의 카운트 제어 신호 countlz, countuxz에 동시에 공급한다. 또한, 단계 제어 신호 selcntls가 단계수 1(step 1)로 설정되고, 단계 설정 회로(82, 86)의 셀렉터가 카운트 제어 신호 countlz, countuxz를 각각 카운터(81, 85)의 A00과 A04에 공급하도록 설정된다. 또, 반환폭 제어 신호 selcntlw가 반환폭(16)(width16)으로 설정되고, 반환폭 설정 회로(83, 87)의 셀렉터가 카운터(81, 85)의 A03과 A07의 출력을 선택하도록 설정된다. 또, 카운트 종료 신호 caintle, caintue는 어디에도 접속되어 있지 않다.
전술한 바와 같이 설정함으로써, 칼럼 어드레스 제어부(41)에서는, 클록 CLK에 동기하여, 하위 및 상위의 어드레스 생성 유닛(80, 84)이 병행하여 카운트업 동작을 행한다. 따라서, 양 어드레스 생성 유닛(80, 84)의 카운터(81, 85)에 초기값 CA07=00000111(하위에 0111, 상위에 0000)을 설정하고, 8회의 클록 CLK에 동기하여 칼럼 어드레스를 생성하면, 도 14에 나타낸 메모리 단위 영역 CA07-CA7e에 대한 액세스를 페이지 모드로 행할 수 있다.
도 16, 17에는, 하위 어드레스 생성 유닛만의 상세도가 나타나 있다. 여기에 나타낸 바와 같이, 단계 설정 회로(82)는, 4개의 셀렉터(161)(SL00-SL03)가, 카운트 제어 신호 countlz 및 카운터(81)의 하위 자릿수의 출력 caint0-3 중 어느 하나를 선택한다. 이 셀렉터(161)의 선택은, 2 비트의 단계 제어 신호 selcntls를 디코더(160)로 디코딩한 제어 신호 control(step 1, 2, 4, 8)에 기초하여 행해진다. 도 16의 예에서는, step 1로 설정되어 있어 셀렉터 SL00만 입력 in2를 선택하고, 다른 셀렉터 SL01-03은 입력 in1을 선택하고 있다.
또, 4 비트의 카운터(81)는, 외부 칼럼 어드레스 caext0-3이 초기값으로서 초기값 단자 init에 공급되고, 셀렉터(161)로부터의 클록 신호 clkca0-3에 동기하여 카운트업 동작을 반복한다. 클록 clk의 하강 엣지에서 카운터(81)의 각 플립플롭이 출력 out을 L 레벨로부터 H 레벨로, 또는 H 레벨로부터 L 레벨로의 토글 동작을 반복한다.
이상의 설정에 의해, 카운트 제어 신호 countlz에 동기하여, 4 비트 카운터(81)는, 초기값을 순차적으로 카운트업한다. 그리고, 도 16에 나타낸 바와 같이, 카운터(81)의 출력 단자 out로부터 내부 칼럼 어드레스 caint0-3이 각각 출력된다. 단계 제어 신호에 의해 하위, 상위 어드레스 생성 유닛은 step 1로 설정되어 있기 때문에, 주사 방향은 수직, 수평 방향에 대하여 45도 방향이다. 단, 단계수를 적절하게 설정함으로써, 주사 방향을 45도와는 상이한 방향으로도 설정할 수 있다. 따라서, 주사 방향 제어 신호 vaext와 단계 제어 신호에 의해, 임의의 각도의 경사 방향으로 주사하는 버스트 액세스가 가능해진다.
한편, 도 17에 나타낸 바와 같이, 카운터(81)의 출력 단자 out로부터의 내부 칼럼 어드레스 caint0-3 중, 반환폭 설정 회로(83) 내의 셀렉터(171)로 선택된 신호만이, 카운트 종료 신호(캐리 신호) caintle로서 출력된다. 4개의 셀렉터 SL10-13은, 각각 2 비트의 반환폭 제어 신호 selcntlw를 디코더(170)로 디코딩한 제어 신호 control(width02, 04, 08, 16)에 기초하여 선택 동작을 행한다.
도 18, 도 19는, 경사 방향으로 주사하는 경우의 메모리 장치의 타이밍차트이다. 도 18은 경사 방향의 버스트 모드를 갖지 않는 메모리 장치의 예를, 도 19는, 경사 방향의 버스트 모드를 갖는 메모리 장치의 예를 각각 나타낸다. 도면 중, 클록 CLK과, 커맨드 신호인 CS, RAS, CAS, WE와, 뱅크 어드레스 BA가 나타나 있다. 또, 리드 커맨드 RD에 부수적으로 입력되는 칼럼 어드레스 CA도 나타나 있다. 망점을 넣은 부분은 뱅크 BA1의 동작을, 그 이외의 부분은 뱅크 BA0의 동작을 각각 나타낸다. 즉, 이 예에서는, 2개의 뱅크가 인터리브 동작하고 있다.
도 18의 경우, 메모리 장치는 경사 방향의 버스트 모드를 갖지 않는다. 시간 t0에서 뱅크 BA0에 대하여 프리차지 커맨드 PRE가 입력되면, 시간 t1부터 뱅크 BA0에서 프리차지 동작이 행해진다. 그 동안, 뱅크 BA1에서는 리드 커맨드 RD에 응답하여 리드 동작이 반복되고 있다. 시간 t1의 1 클록후부터 RAS 프리차지 타임 tRP후의 시간 t3에서 뱅크 BA0에 대하여 액티브 커맨드 ACT가 입력된다. 따라서, 시간 t3부터 1 클록 주기 동안은, 뱅크 BA1에 대한 리드 커맨드의 발행은 행해지지 않는다. 이 액티브 커맨드에 응답하여, 뱅크 BA0에서는 도시하지 않은 로우 어드레스에 기초하여 액티브 동작이 행해진다. 그 동안, 뱅크 BA1에서는 다시 리드 커맨드 RD에 응답하여 리드 동작을 반복한다.
그리고, RASCAS 딜레이타임 tRCD후의 시간 t6에서, 뱅크 BA0에 대하여 리드 커맨드 RD와 칼럼 어드레스 CA가 연속하여 입력된다. 메모리 장치는, 버스트 모드가 아니라, 연속하여 입력되는 8회의 리드 커맨드 RD와 8종류의 칼럼 어드레스 CA07-CA7e에 각각 응답하여, 경사 방향으로 나열된 8개의 메모리 단위 영역에 대하여 리드 동작을 반복한다. 그리고, 도 18의 예에서는, 시간 t5에서 뱅크 BA1에 대한 프리차지 커맨드 PRE가 발행되어 있고, 시간 t7에서 뱅크 BA1에 대한 액티브 커맨드 ACT가 발행되어 있다. 따라서, 시간 t7부터 1 클록 동안, 뱅크 BA0에 대한 리드 커맨드 RD는 발행되어 있지 않다.
이와 같이, 도 18의 예에서는, 메모리 컨트롤러는 경사 방향으로 주사하기 위해, 8회의 칼럼계 커맨드, 리드 커맨드 RD와 칼럼 어드레스 CA를 발행해야 한다. 또, 메모리 장치는, 버스트 모드로 동작할 수 없고, 뱅크 인터리브 동작에 의해, 연속하는 리드 커맨드의 입력이 중단된다.
도 19의 경우, 메모리 장치는 경사 방향의 버스트 모드 기능을 갖는다. 도 15, 16, 17에 나타낸 칼럼 어드레스 제어부의 동작에 의해, 1회의 리드 커맨드 RD와 선두 칼럼 어드레스 CA07을 입력하면, 칼럼 제어 회로가 연속하여 내부 칼럼 어드레스 CA18, CA29, CA3a, CA4b, CA5c, CA6d, CA7e를 생성하여, 32 비트 데이터의 리드 동작을 연속 8회 행한다. 즉, 시간 t1에서 뱅크 BA0에 대하여 액티브 커맨드 ACT가 입력되면, RASCAS 딜레이타임 tRCD후의 시간 t3에서 리드 커맨드 RDA와 선두 칼럼 어드레스 CA07과 주사 방향 제어 신호 VA=011이 입력된다. 미리, 버스트 길이 BL=8로 설정되어 있기 때문에, 칼럼 어드레스 제어부가 내부 칼럼 어드레스 CA18, CA29, CA3a, CA4b, CA5c, CA6d, CA7e를 연속하여 생성하여, 32 비트×8회의 리드 동작이 행해진다. 그 동안, 시간 t5에서는 뱅크 BA1에 대한 액티브 커맨드 ACT가 발행되어 있지만, 뱅크 BA0에서의 버스트 리드 동작은 디스터브되어 있지 않다. 리드 커맨드 RDA는, 오토프리차지를 수반한 리드 커맨드이며, 도 9에 나타낸 어드레스 단자 A10의 오토프리차지 비트를 H 레벨로 설정함으로써 지정할 수 있다.
이와 같이, 메모리 장치가 경사 방향의 버스트 모드 기능을 가짐으로써, 마름모꼴 영역을 액세스하는 경우의 경사 방향의 주사 액세스를 효율적으로 행할 수 있다. 그리고, 경사 방향의 각도는, 주사 방향 제어 신호 vaext와 단계 제어 신호 selcntls에 의해 임의의 각도로 설정할 수 있다. 여기서 임의의 각도란, 메모리맵 상의 메모리 단위 영역의 위치에 의한 제약의 범위내에서 임의의 각도라는 의미이다.
[수평 및 수직 주사 액세스]
도 20은, 페이지 영역 내의 수평 주사 액세스를 나타낸 도면이다. 페이지 영역 Page 내를 화살표에 나타낸 바와 같이 수평 방향(행방향)으로 주사하면서 액세스하기 위해서는, 메모리 장치 내의 칼럼 어드레스 제어부가, 하위의 칼럼 어드레스 CA-L을 우선적으로 증분시키고(화살표 200), 하위의 칼럼 어드레스의 캐리 신호에 의해 상위의 칼럼 어드레스 CA-U를 증분시켜야 한다. 이에 따라, 수평 방향으로 연속하여 버스트 리드 가능해진다.
도 21은, 페이지 영역 내의 수직 주사 액세스를 나타낸 도면이다. 페이지 영역 Page 내를 화살표에 나타낸 바와 같이 수직 방향(열방향)으로 주사하면서 액세스하기 위해서는, 메모리 장치 내의 칼럼 어드레스 제어부가, 상위의 칼럼 어드레스 CA-U를 우선적으로 증분시키고(화살표 210), 상위의 칼럼 어드레스의 캐리 신호에 의해 하위의 칼럼 어드레스 CA-L을 증분시켜야 한다. 이에 따라, 수직 방향으로 연속하여 버스트 리드 가능해진다.
도 22는, 메모리 컨트롤러에 의한 버스트 방향 판정 처리를 나타낸 도면이다. 도 3의 메모리 컨트롤러(12) 내의 버스트 방향 판정부(32)가 이 판정 처리를 행한다. 도 22 중의 220에 나타낸 바와 같이, 메모리 장치의 입출력 단자 DQ가 32 비트로 구성되고, 하나의 화소의 화상 데이터가 8 비트로 구성되어 있는 것으로 한다. 또한, 메모리맵에 의하면, 칼럼 어드레스에 의해 선택되는 메모리 단위 영역에는, 수평 방향의 화소수 Dh=4, 수직 방향의 화소수 Dv=1의 화상 데이터가 기억되는 것으로 한다. 그리고, 도 22 중의 221에 나타낸 바와 같이, 상위 시스템으로부터 기울기=0, 수평 방향 화소수 Lh=8, 수직 방향 화소수 Nv=8의 액세스 영역에 대한 액세스 요구가 있는 것으로 한다. 이 경우의 바(bar)의 수와 방향 판정 처리에 관해 설명한다.
도 23은 메모리 컨트롤러에 의한 버스트 방향 판정 처리의 플로우차트이다. 메모리 컨트롤러는, 상위 시스템으로부터 액세스 영역의 수평 방향과 수직 방향의 화소수가 Lh=8, Lv=8인 액세스 요구를 수신한다(S20). 메모리 컨트롤러 내의 버스트 방향 판정 회로는, 화소수를 메모리 장치 내의 칼럼수로 변환한다(S21). 그 결과, 도 22의 221에 나타낸 바와 같이, 버스트 방향 판정 회로는, 수평 방향의 칼럼수 Nh=Lh/Dh=2, 수직 방향의 칼럼수 Nv=Lv/Dv=8을 연산한다(S22). 그리고, 버스트 방향 판정 회로는, 이 수평 방향의 칼럼수 Nh와 수직 방향의 칼럼수 Nv를 비교함으로써, 최적의 버스트 방향의 판정을 행한다(S23). Nv≤Nh이면 수평 방향으로 버스트 방향이 설정된다(S24). 반대로, Nv>Nh이면 수직 방향으로 버스트 방향이 설정된다. 보다 긴 방향으로 버스트 방향을 설정함으로써, 버스트 모드에 의한 액세스를 유효하게 활용할 수 있기 때문이다.
도 24는 수직 방향으로 주사 액세스(버스트 액세스)하는 예를 나타낸 도면이다. 이 예에서는, 메모리 단위 영역 내에 4 화소의 화상 데이터가 저장되어, 4×8 화소의 직사각형 영역이 액세스되는 예이다. 따라서, 칼럼 어드레스 CA20부터 CA90까지 수직 방향의 8개의 메모리 단위 영역에 대하여 액세스가 필요해진다. 이 경우는, 메모리 장치 내의 칼럼 어드레스 제어부(41)가, 선두의 칼럼 어드레스 CA20부터 상위의 칼럼 어드레스 CA-U를 증분시켜 CA20-CA90을 순차적으로 생성한다.
도 25는 수직 방향으로 주사 액세스(버스트 액세스)하는 칼럼 어드레스 제어부의 구성도이다. 칼럼 어드레스 제어부(41)는, 수직 방향으로 버스트 액세스하기 위해, 하위 어드레스 생성 유닛(80)과 상위 어드레스 생성 유닛(84)이 상하 반대로 접속된다. 즉, 어드레스 생성 유닛 제어 회로(88)는, 클록 CLK을 상위 어드레스 생성 유닛(84)에 카운트 제어 신호 countuz로서 공급하고, 상위 어드레스 생성 유닛(84)의 카운트 종료 신호(캐리 신호) caintue를 하위 어드레스 생성 유닛(80)에 카운트 제어 신호 countlz로서 공급한다. 그리고, 단계 제어 신호 selcontls는 하위 및 상위 모두 단계 step 1로 설정되고, 하위 카운터(81)와 상위 카운터(85)는 병행하여 카운트 제어 신호에 응답하여 카운트값을 +1한다. 또, 반환폭 제어 신호 selcntlw는 하위 및 상위 모두 폭 width16로 설정되고, 하위 카운터(81)와 상위 카운터(85)의 최상위 비트가 셀렉터(83, 87)에 의해 선택된다.
상기와 같이 설정됨으로써, 클록 CLK에 동기하여, 상위 카운터(85)가 먼저 카운트값을 +1씩 증분시키고, 상위 카운터(85)의 카운트 종료 신호 caintue에 동기하여, 하위 카운터(81)가 카운트값을 +1씩 증분시킨다. 그 결과, 칼럼 어드레스 제어부(41)는, 외부로부터 공급되는 칼럼 어드레스 caext0-7을 초기값 CA20으로서 최종치 CA90까지의 어드레스를 순서대로 내부 칼럼 어드레스 caint0-7로서 생성한다.
도 26, 27은 수직 방향으로 주사하여 액세스하는 경우의 타이밍차트이다. 도 26은, 메모리 장치가 수직 방향의 버스트 모드를 갖지 않는 경우의 타이밍차트이다. 도 18과 마찬가지로, 시간 t0에서 뱅크 BA0에 대하여 프리차지 커맨드 PRE가 입력되면, 시간 t1부터 뱅크 BA0에서 프리차지 동작이 행해진다. 그 동안, 뱅크 BA1에서는 리드 커맨드 RD에 응답하여 리드 동작이 반복되고 있다. 시간 t1의 1 클록후부터 RAS 프리차지 타임 tRP후의 시간 t3에서 뱅크 BA0에 대하여 액티브 커맨드 ACT가 입력된다. 따라서, 시간 t3부터 1 클록 주기의 동안은, 뱅크 BA1에 대한 리드 커맨드의 발행은 행해지지 않는다. 이 액티브 커맨드에 응답하여, 뱅크 BA0에서는 도시하지 않은 로우 어드레스에 기초하여 액티브 동작이 행해진다. 그 동안, 뱅크 BA1에서는 다시 리드 커맨드 RD에 응답하여 리드 동작을 반복한다.
그리고, RASCAS 딜레이타임 tRCD후의 시간 t6에서, 뱅크 BA0에 대하여 리드 커맨드 RD와 칼럼 어드레스 CA가 연속하여 입력된다. 메모리 장치는, 버스트 모드가 아니라, 연속하여 입력되는 8회의 리드 커맨드 RD와 8종류의 칼럼 어드레스 CA20-CA90에 각각 응답하여, 수직 방향으로 나열된 8개의 메모리 단위 영역에 대하여 리드 동작을 반복한다. 그리고, 도 26의 예에서는, 시간 t5에서 뱅크 BA1에 대한 프리차지 커맨드 PRE가 발행되어 있고, 시간 t7에서 뱅크 BA1에 대한 액티브 커맨드 ACT가 발행되어 있다. 따라서, 시간 t7부터 1 클록 동안, 뱅크 BA0에 대한 리드 커맨드 RD는 발행되어 있지 않다.
이와 같이, 도 26의 예에서는, 메모리 컨트롤러는 수직 방향으로 주사하여 액세스하기 위해, 8회의 칼럼계 커맨드, 즉 리드 커맨드 RD와 칼럼 어드레스 CA를 발행해야 한다. 또, 메모리 장치는, 버스트 모드로 동작할 수 없어, 뱅크 인터리브 동작에 의해, 연속하는 리드 커맨드의 입력이 중단된다.
도 27은 메모리 장치가 수직 방향의 버스트 모드 기능을 갖는 경우의 타이밍차트이다. 도 25의 칼럼 어드레스 제어부(41)의 동작에 의해, 1회의 리드 커맨드 RD와 선두 칼럼 어드레스 CA20을 입력하면, 칼럼 어드레스 제어부가 연속하여 내부 칼럼 어드레스 CA20, CA30, CA40, CA50, CA60, CA70, CA80을 생성하여, 32 비트 데이터의 리드 동작을 연속 8회 행한다. 즉, 시간 t1에서 뱅크 BA0에 대하여 액티브 커맨드 ACT가 입력되면, RASCAS 딜레이타임 tRCD후의 시간 t3에서 리드 커맨드 RDA와 선두 칼럼 어드레스 CA20과 주사 방향 제어 신호 VA=001이 입력된다. 미리, 버스트 길이 BL=8로 설정되어 있기 때문에, 칼럼 어드레스 제어부가 내부 칼럼 어드레스 CA20, CA30, CA40, CA50, CA60, CA70, CA80을 연속하여 생성하여, 32 비트×8회의 리드 동작이 행해진다. 그 동안, 시간 t5에서는 뱅크 BA1에 대한 액티브 커맨드 ACT가 발행되어 있지만, 뱅크 BA0에서의 버스트 리드 동작은 디스터브되어 있지 않다.
이와 같이, 메모리 장치가 수직 방향의 버스트 모드 기능을 가짐으로써, 수직 방향으로 보다 많은 메모리 단위 영역을 갖는 직사각형 영역을 액세스하는 경우의 수직 방향의 주사 액세스를 효율적으로 행할 수 있다.
도 28은 수직 방향으로 주사 액세스(버스트 액세스)하는 다른 예를 나타낸 도면이다. 이 예에서는, 메모리 단위 영역 내에 4 화소의 화상 데이터가 저장되고, 8×8 화소의 직사각형 영역이 액세스되는 예이다. 따라서, 칼럼 어드레스 CA20부터 CA90까지 수직 방향의 8개의 메모리 단위 영역과 칼럼 어드레스 CA21부터 CA91까지 수직 방향의 8개의 메모리 단위 영역에 대하여 액세스가 필요해진다.
종래의 SDRAM에서는, 수평 방향으로만 버스트 액세스할 수 있기 때문에, 버스트 길이 BL=2로 설정하고, 칼럼 어드레스 CA20, CA30, CA40, CA50, CA60, CA70, CA80과 함께 8회의 칼럼계 커맨드 RD, WR를 메모리 장치에 공급함으로써, 8×8 화소의 직사각형 영역의 화상 데이터에 액세스한다.
이에 비해, 본 실시형태의 수직 방향으로 버스트 액세스할 수 있는 메모리 장치의 경우는, 버스트 길이 BL=8로 설정하고, 칼럼 어드레스 CA20, CA21과 함께 2회의 칼럼계 커맨드 RD, WR를 메모리 장치에 공급하면, 8×8 화소의 직사각형 영역의 화상 데이터에 액세스할 수 있다. 따라서, 메모리 컨트롤러와 메모리 장치간의 버스의 비지 상태를 짧게 할 수 있다.
[특수한 주사 액세스]
이하, 특수한 주사 액세스로서, 축소 버스트 액세스와, 직사각형 영역의 버스트 액세스와, 순진ㆍ역진의 액세스에 관해 설명한다.
[축소 버스트 액세스]
도 29는 움직임 예측을 행할 때의 액세스를 설명하는 도면이다. 이 예에서는, 워드 구성이 ×16 비트인 DQ 인터페이스의 메모리 장치에, 1 화소당 8 비트의 데이터가 맵핑되어 있다. 움직임 예측에서는, 굵은 테두리로 둘러싼 4×4 화소의 정방형의 직사각형(290)에 관해, 수직 방향으로 ±4 화소, 수평 방향으로 ±8 화소의 탐색이 행해지는 것으로 한다. 즉, 움직임 벡터 탐색에서는, 직사각형 영역(292) 내에서 직사각형(290)이 열방향으로 9회, 행방향으로 9회 각각 이동하면서, 합계 81회, 직사각형(290)의 화상 데이터와 이동처의 직사각형의 화상 데이터를 비교하는 처리가 행해진다. 일치 화상 데이터가 검출되면, 직사각형(290)으로부터 그 검출된 직사각형 영역의 방향이 움직임 벡터가 된다.
도 30, 도 31은, 움직임 예측을 행할 때의 다른 액세스를 설명하는 도면이다. 이 예에서도, 워드 구성이 ×16 비트인 DQ 인터페이스의 메모리 장치에, 1 화소당 8 비트의 데이터가 맵핑되어 있다. 그리고, 4×4 화소의 직사각형 영역에 관해서 움직임 벡터의 탐색이 행해진다.
도 30의 액세스예에서는, 처음에 처리 대상 직사각형의 2배 사이즈인 8×8 화소의 직사각형 영역(300)(CA46-CA4c-CAcc-Cac4로 둘러싸인 직사각형 영역) 중 행렬 방향으로 1/2로 줄인 것을, 직사각형 영역(302)(CA24-CA2d-Cadd-Cad4로 둘러싸이는 직사각형 영역) 내에서 행렬 방향으로 1/2로 줄인 영역에서 탐색한다. 이 1회째 탐색은, 행방향으로 4회, 열방향으로 3회, 합계 12회의 액세스와 비교 처리의 횟수가 된다.
다음으로, 도 31에 나타낸 바와 같이, 1회째 탐색에서 최적의 위치를 칼럼 어드레스 CA66의 메모리 단위 영역을 좌측 위쪽 구석으로 하는 직사각형 영역(314)(CA66-CA69-Cad9-Cad6으로 둘러싸인 영역)으로 한다. 그 경우, 2회째의 탐색에서는, 4×4 화소의 직사각형 영역(310)(CA66-CA67-CA97-CA96으로 둘러싸인 영역)에 관해, 상기 직사각형 영역(314)보다 한단계 큰 직사각형 영역(312)(CA55-CA5a-Caea-Cae5로 둘러싸인 영역) 내를 탐색한다. 이 탐색에서는 1/2 축소는 행하지 않는다. 이 탐색에는, 행방향으로 5회, 열방향으로 7회, 합계 35회의 액세스와 비교 처리가 필요해진다. 도 30의 1회째 탐색이 12회였기 때문에, 1회째와 2회째의 탐색의 합계는 12+35=47회가 된다. 이 횟수는, 도 29의 경우의 81회에 비하면 약 58%로 삭감된다.
상기 2 단계 탐색 알고리즘은 이미 공지되어 있다. 그리고, 상기 2 단계 탐색 알고리즘을 채택한 경우, 도 30의 1/2로 축소한 데이터에 관해 액세스를 하기 위해서는, 메모리 컨트롤러는, 버스트 리드를 이용할 수는 없고, 8회의 칼럼계 커맨드와 대응하는 칼럼 어드레스를 메모리 장치에 발행하는 것이 필요하다. 또는, 버스트 리드에 의해 1/2로 축소하지 않은 데이터를 액세스하여, 불필요한 데이터를 읽고 버리는 것에 의해서도 액세스 가능하다. 그러나, 어느 경우도, 메모리 장치에 대한 액세스 효율은 대폭 저하된다.
도 32, 도 33은, 2 단계 탐색 알고리즘의 1회째 탐색에서의 칼럼 어드레스 제어부의 구성도이다. 도 32는 하위 어드레스 생성 유닛(80)의 일부를 나타내고, 도 33은 상위 어드레스 생성 유닛(84)의 일부를 나타낸다.
1회째의 탐색에서의 칼럼 어드레스 제어부의 구성은, 도 25에 나타낸 구성과 유사하다. 즉, 어드레스 생성 유닛 제어 회로(88)가, 상위 어드레스 생성 유닛(84)에 클록 CLK을 카운트 제어 신호로서 공급하고, 하위 어드레스 생성 유닛(80)에 상위측의 카운트 종료 신호 caintue를 카운트 제어 신호로서 공급한다. 이에 따라, 수직 방향으로 긴 직사각형 영역의 버스트 액세스를 효율적으로 행할 수 있다. 또한, 하위 및 상위 어드레스 생성 유닛의 단계 설정 회로(82, 86)는, 단계폭을 Step2로 설정한다. 이에 따라, 카운트 제어 신호에 동기하여 단계폭 2로 카운트값을 증분시킬 수 있어, 1/2 축소한 메모리 단위 영역에 버스트 액세스가 가능해진다.
다음으로, 도 32, 33에 관해 설명한다. 상기와 같이, 1회째 탐색에서는, 1/2 축소한 메모리 단위 영역에 액세스해야 한다. 따라서, 하위 및 상위 어드레스 생성 유닛(80, 84)에서는, 단계 제어 신호 selcntls=Step2에 의해, 셀렉터 SL01, SL05가 카운트 제어 신호 cuntlz, countuz를 선택하여, 카운터(81, 85)에 클록 clka1, clkca5로서 출력한다. 이에 따라, 버스트 모드로 클록 CLK에 동기하여, 카운터(81, 85)의 A01, A05보다 상위의 자릿수로 증분 동작이 행해진다. 그 결과, 하위 및 상위 어드레스 생성 유닛(80, 84)은, 증가분(단계수) 2로 내부 칼럼 어드레스를 증분시킨다. 따라서, 도 32에 나타낸 1/2 축소한 직사각형 영역의 액세스에서도 버스트 모드를 사용할 수 있다. 도 32의 하위 어드레스 생성 유닛(80)의 셀렉터 SL00의 입력 int1에는, 어떤 클록도 입력되지 않는다. 마찬가지로, 도 33의 상위 어드레스 생성 유닛(84)의 셀렉터 SL04의 입력 int1에도, 어떤 클록도 입력되지 않는다. 따라서, 카운터의 A00, A04 비트는, 초기 설정치의 칼럼 어드레스 A00, A04의 값이 유지된다.
도 34는, 2 단계 탐색 알고리즘의 1회째 탐색에서의 메모리 장치의 타이밍차트이다. 이 타이밍차트에 나타낸 바와 같이, 시간 t3에서 뱅크 어드레스 BA0과 칼럼 어드레스 CA24와 벡터 어드레스 VA=001과 함께, 리드 커맨드 RDA가 메모리 장치에 입력되어 있다. 그것에 응답하여, 메모리 장치 내의 칼럼 어드레스 제어부는, 내부 칼럼 어드레스 CA24, CA44, CA64, CA84를 순차적으로 생성하여, 도 30의 칼럼 어드레스 CA24, CA44, CA64, CA84의 메모리 단위 영역을 연속하여 액세스한다.
상기와 같이, 하위 및 상위 어드레스 생성 유닛(80, 84)에서, 단계 설정 회로(82, 86) 내의 셀렉터를, 단계 제어 신호 selcntls, selcntus에 의해 단계 Step2로 설정함으로써, 1/2 축소한 메모리 단위 영역에 대한 버스트 액세스가 가능해진다. 마찬가지로, 단계 Step4, Step8로 설정하면, 1/4, 1/8 축소한 메모리 단위 영역에 대한 버스트 액세스가 가능해진다. 이상이 축소 버스트 액세스의 설명이다.
[직사각형 영역의 버스트 액세스]
다음으로, 직사각형 영역의 버스트 액세스에 관해 설명한다. 본 실시형태의 하위 및 상위 어드레스 생성 유닛의 반환폭 제어 신호 selcntlw에 의해 반환폭 설정 회로(83, 87)를 설정함으로써, 하위 및 상위 어드레스 생성 유닛의 카운트 종료값을 임의로 설정할 수 있다. 이에 따라, 어드레스 생성 유닛은 클록 CLK에 동기하여 임의의 범위의 카운트값을 반복하여 생성할 수 있다. 이것을 이용하면, 행렬 방향으로 칼럼 어드레스가 상이한 메모리 단위 영역으로 이루어진 직사각형 영역을, 1회의 칼럼계 커맨드와 선두 칼럼 어드레스에 의해 버스트 액세스할 수 있다. 다만, 카운터 동작의 제약 때문에, 직사각형 영역의 칼럼 어드레스의 반환 어드레스는, 하위, 상위 어드레스 모두 CA=1, 3, 7, F의 위치가 된다.
도 35는, 본 실시형태에서의 직사각형 영역의 버스트 액세스를 설명하는 도면이다. 도 35 중의 칼럼 어드레스 CA00-CA01-CA71-CA70으로 둘러싸인 직사각형 영역을 버스트 액세스하는 것으로 한다. 종래의 버스트 액세스에서는, 버스트 길이를 BL=2로 설정하여, 8회의 칼럼계 커맨드와 칼럼 어드레스 CA00, CA10, CA20, CA30, CA40, CA50, CA60, CA70이 메모리 장치에 공급된다. 또, 도 25, 27 등에서 설명한 수직 방향의 주사 액세스가 가능한 경우에는, 버스트 길이 BL=8로 설정하여, 2회의 칼럼계 커맨드와 칼럼 어드레스 CA00, CA01이 메모리 장치에 공급된다.
그에 비해, 도 35의 직사각형 영역의 버스트 액세스에서는, 1회의 칼럼계 커맨드와 직사각형 영역의 선두 칼럼 어드레스 CA00을 메모리 장치에 공급하면, 메모리 장치가 내부에서 16의 내부 칼럼 어드레스를 순차적으로 생성하여, 16의 메모리 단위 영역을 버스트 액세스한다. 그것을 위해서는, 칼럼 어드레스 제어부에서, 반환폭 제어 신호 selcntlw를 설정해야 한다.
도 36은, 본 실시형태에서의 직사각형 영역의 버스트 액세스하는 경우의 칼럼 어드레스 제어부의 구성도이다. 칼럼 어드레스 제어부(41)에서는, 수직 방향의 주사 액세스를 할 수 있도록, 어드레스 생성 유닛 제어 회로(88)가, 동기 클록 CLK을 상위 어드레스 생성 유닛(84)의 카운트 제어 신호 countuz에 공급하고, 상위 어드레스 생성 유닛(84)의 카운트 종료 신호(캐리 신호) caintue를 하위 어드레스 생성 유닛(80)의 카운트 제어 신호 countlz에 공급한다. 그리고, 단계 제어 신호 selcntls를 하위 상위 모두 Step1로 설정하고, 반환 제어 신호 selcontlw를 하위, 상위에서 Width16, Width8로 설정한다. 그리고, 버스트 길이 BL=16으로 설정하면, 칼럼 어드레스 제어부는, 선두 칼럼 어드레스 CA00으로부터, 상위 어드레스 생성 유닛(84)의 증분 동작에 의해, 내부 칼럼 어드레스 CA00, CA10, CA20, CA30, CA40, CA50, CA60, CA70을 순차적으로 생성한 후, 카운터 A06의 자릿수 올림 신호를 카운트 종료 신호(캐리 신호) caintue로서 출력하고, 그것을 하위 어드레스 생성 유닛의 카운트 제어 신호 countlz로서 카운터 A00에 입력한다. 이것에 응답하여, 하위 어드레스 생성 유닛(80)이 하위 어드레스를 +1 증분시킨다. 또한, 칼럼 어드레스 제어부는, 하위측에서 증분된 칼럼 어드레스 CA01로부터, 상위 어드레스 생성 유닛(84)의 증분 동작에 의해, 내부 칼럼 어드레스 CA01, CA11, CA21, CA31, CA41, CA51, CA61, CA71을 순차적으로 생성한다. 이에 따라, 버스트 길이 16의 버스트 액세스에 의해, 직사각형 영역의 액세스를 행할 수 있다.
도 37, 도 38은 직사각형 영역의 버스트 액세스하는 경우의 상위 어드레스 생성 유닛의 일부의 구성도이다. 도 37에 나타낸 바와 같이, 상위 어드레스 생성 유닛(84)은, 단계 설정 회로(86)와 반환폭 설정 회로(87) 사이에, 4 비트 카운터(85)를 갖는다. 반환폭 설정 회로(87)는, 셀렉터군 SL14-SL17과 셀렉터군 SL24-SL27을 갖는다. 또한, 도 38에 나타낸 바와 같이, 상위 어드레스 생성 유닛(84)은, 셀렉터군 SL14-SL17을 제어하는 제어 신호 width02-16을 생성하는 제1 디코더(170A)와, 셀렉터군 SL24-SL27을 제어하는 제어 신호 cnt02en-cnt16en을 생성하는 제2 디코더(170B)를 갖는다.
도 37의 상위 어드레스 생성 유닛(84)에서는, 디코더(170A)가, 반환폭 제어 신호 selcntlw에 기초하여 반환폭 width08만을 H 레벨로 제어하고, 셀렉터 SL16만이 카운터 A06의 출력 caint6을 선택하여 카운트 종료 신호 caintue로서 출력한다. 마찬가지로, 반환폭 width08=H에 응답하여, 도 38의 디코더(170B)가, 제어 신호 cnt08en, cnt04en, nt02en을 H 레벨로 제어하고, 제어 신호 cont16en만을 L 레벨로 제어하고, 셀렉터 SL27이 입력 in2를 선택하고, 다른 셀렉터 SL26, SL25, SL24가 입력 in1을 선택한다. 이에 따라, 카운터 A04, A05, A06로 이루어진 3 비트 카운터가 구성되고, 내부 칼럼 어드레스 caint4-6이 순차적으로 000-111이 된다. 최상위의 어드레스 caint7은 초기값 caext7에 고정된다. 즉, 도 38의 디코더 회로(170B)는, 제어 신호(380)가 L 레벨로 설정되어 있기 때문에, 반환폭 신호 width02-16에 따라서 제어 신호 cnt02en-cnt16en을 생성한다. 구체적으로는, 반환폭 신호 width02-16 중 width02=H라면 cnt02en=H가 되어 1 비트 카운터로 설정된다. width04=H라면 =H가 되어 2 비트 카운터로 설정된다. width16=H라면 cnt02en, cnt04en, cnt08en, cnt16en=H가 되어 4 비트 카운터로 설정된다.
이상의 구성에 의해, 칼럼 어드레스 제어부는, 선두의 칼럼 어드레스 CA00로부터 상위 칼럼 어드레스를 순차적으로 증분시켜, 내부 칼럼 어드레스가 CA70에 도달하면 상위의 내부 칼럼 어드레스를 0000에 반환하고, 다시 칼럼 어드레스 CA01로부터 상위 칼럼 어드레스를 순차적으로 증분시켜 CA71에 도달한다. 이것으로서, 버스트 길이 16에 대응하는 16의 내부 칼럼 어드레스 CA00-CA70, CA01-CA71이 생성되게 된다. 이와 같이, 반환 제어 신호를 적절하게 설정함으로써, 하위 칼럼 어드레스 또는 상위 칼럼 어드레스를 2, 4, 8, 16에서 반환할 수 있고, 직사각형 영역에 대한 버스트 액세스에 필요한 내부 칼럼 어드레스의 생성이 가능해진다.
도 36에서, 하위와 상위 어드레스 생성 유닛으로의 카운트 제어 신호에 대한 접속을 통상대로 접속하면, 수평 방향으로 긴 직사각형 영역을 1회의 칼럼계 커맨드와 선두 칼럼 어드레스에 의해 버스트 액세스할 수 있다.
도 39는, 직사각형 영역의 버스트 액세스하는 경우의 메모리 장치의 타이밍차트이다. 도 39는, 도 27과 동일한 버스트 액세스의 타이밍차트이며, 시간 t3에서 리드 커맨드 RDA와 함께 칼럼 어드레스 CA00, 벡터 어드레스 VA=001이 입력되면, 메모리 장치 내의 칼럼 어드레스 제어부는, 시간 t3 이후에 내부 칼럼 어드레스 CA00, CA10∼CA70과 CA01, CA11∼CA71을 순차적으로 생성한다. 이에 따라, 1회의 칼럼계 커맨드와 칼럼 어드레스의 입력에 의해, 메모리층은, 버스트 길이 16의 버스트 액세스로 직사각형 영역의 버스트 액세스를 행한다.
[순진ㆍ역진의 액세스]
도 40은 역진 액세스하는 경우의 하위 어드레스 생성 유닛의 일부 구성도이다. 도 40에는, 하위 어드레스 생성 유닛(80)의 카운터(81)에 관해서만 나타나 있고, 단계 설정 회로와 반환폭 설정 회로는 생략되어 있다. 카운터(81)의 초기값 입력 단자 init의 전단에 EOR 게이트군(400)이 설치되고, 출력 단자 out의 후단에 EOR 게이트군(402)이 설치되어 있다. 이들 ERO 게이트군(400, 402)의 한쪽의 입력 단자에는 역진 제어 신호 reverslz가 입력되고, 역진 제어 신호 reverslz=H이면, 외부 칼럼 어드레스 caext0-3이 EOR 게이트군(400)에서 반전하여 카운터(81)에 입력되고, 카운터 출력이 EOR 게이트군(402)에서 반전하여 내부 칼럼 어드레스 caint0-3으로서 출력된다. 역진 제어 신호 reverslz=L이면, EOR 게이트군(400, 402)은 다른 한쪽의 입력 신호를 반전하지 않고 그대로 출력한다.
즉, 역진 제어 신호 reverslz=H이면, 예를 들어 외부 칼럼 어드레스 caext0-3=1111을 반전한 0000이 카운터에 초기값 설정되고, 카운터(81)가 카운트 제어 신호 countlz에 동기하여 0000으로부터 순차적으로 증분시키고, 그 출력값을 반전한 4 비트 어드레스가 내부 칼럼 어드레스 caint0-3으로서 출력된다. 따라서, 외부 칼럼 어드레스 caext0-3=1111에 대해서는, 역진 제어에 의해, 내부 칼럼 어드레스 caint0-3은, 1111∼0000과 역진 방향으로 카운트다운되게 된다.
어드레스 생성 유닛 제어 회로(88)는, EOR 게이트군(400, 402)을 갖기 때문에, 하위 및 상위 어드레스 생성 유닛의 카운트 방향을 순진, 역진 중 어느 하나로 설정할 수 있다. 따라서, 벡터 어드레스 VA의 방향이 칼럼 어드레스의 역진 방향이라 하더라도, 칼럼 어드레스 제어부는, 버스트 모드에 대응하여 역진 방향의 내부 칼럼 어드레스를 순차적으로 생성할 수 있다.
도 41은 시간축을 갖는 메모리맵의 예를 나타낸 도면이다. 상기 실시형태에서는, 도 7 등에서, 2차원 배열된 데이터인 화상 데이터를 하나의 페이지 영역 내에 저장하는 메모리맵을 전제로 설명했다. 이 경우, 수평 방향과 수직 방향으로 이루어진 2차원 공간내의 임의의 방향의 주사 액세스를 가능하게 하기 위해, 칼럼 어드레스를 하위와 상위로 분할하여 칼럼 어드레스 제어부를 구성했다.
본 실시형태는, 칼럼 어드레스의 분할수는 2에 한정되지 않고 3 또는 그 이상이어도 좋다. 도 41은 칼럼 어드레스의 분할수가 3의 예이다. 하위 칼럼 어드레스 CA-L(A00-A03)와 중위 칼럼 어드레스 CA-M(A04-A07)가 2차원 배열 데이터의 수평 방향과 수직 방향에 대응되고, 상위 칼럼 어드레스 CA-U(A08-A09)가 시간축 방향 time에 대응되어 있다. 이와 같이, 칼럼 어드레스를 3개로 분할함으로써, 하위와 중위 칼럼 어드레스에 의해 특정되는 2차원 배열의 페이지 영역 Page0-3이, 상위 칼럼 어드레스에 의해 4개 특정된다.
예를 들어, 동영상 데이터의 압축에서는 프레임 내의 압축 뿐만 아니라, 시간축 방향의 압축도 행해진다. 또, 최근에는 60 프레임/초의 오리지널 화상 데이터에 대하여, 프레임간에 보간 프레임을 추가함으로써 화상을 보다 아름답게 보이도록 하는 것이 행해진다. 이러한 경우, 화면의 수평ㆍ수직 방향 뿐만 아니라, 시간축 방향의 액세스도 고속으로 행하는 메모리 장치가 필요해진다. 그 경우의 메모리의 페이지 영역에 대한 화상 데이터의 맵핑으로서, 시간축 방향도 포함한 직방체 공간을 메모리에 맵핑하는 것이 유익하다. 즉, 도 41에 나타낸 바와 같이, 시간축 방향을 지정하는 어드레스로서 CA08, CA09를 추가하고, 화상의 수평 방향에 할당된 하위 칼럼 어드레스 CA03∼CA00와, 화상의 수직 방향에 할당된 중위 칼럼 어드레스 CA07∼CA04와, 시간축 방향에 할당된 상위 칼럼 어드레스 CA09∼CA08로 하여, 칼럼 어드레스 제어부를 3개의 어드레스 생성 유닛으로 구성한다. 이러한 칼럼 어드레스 제어부에 의하면, 화상의 시간축 방향으로 버스트 액세스하는 것이 가능해진다.
본 발명에 의하면, 화상 데이터 등의 2차원 배열 데이터에 대하여 여러 방향으로 버스트 액세스할 수 있다.
10 : 메모리 장치
41 : 칼럼 어드레스 제어부
44 : 로우 어드레스 제어부
47 : 메모리 코어
48 : 메모리셀 어레이
49 : 칼럼 디코더
50 : 로우 디코더

Claims (16)

  1. 어드레스에 의해 선택되는 복수의 메모리 단위 영역을 가지며, 2차원 배열 데이터를 상기 복수의 메모리 단위 영역에 기억하는 메모리셀 어레이와,
    외부 어드레스를 입력하고, 상기 외부 어드레스에 기초하여 상기 메모리 단위 영역을 선택하는 내부 어드레스를 생성하는 내부 어드레스 제어부와,
    상기 내부 어드레스를 디코딩하여 상기 메모리 단위 영역을 선택하는 디코더를 가지며,
    상기 복수의 메모리 단위 영역은, 상기 내부 어드레스의 하위 비트군에 기초하여 상기 2차원 배열 데이터의 행렬 중 제1 방향으로 배열된 데이터를 기억하고, 상기 내부 어드레스의 상위 비트군에 기초하여 상기 2차원 배열 데이터의 행렬 중 제2 방향으로 배열된 데이터를 기억하고,
    상기 내부 어드레스 제어부는, 상기 내부 어드레스의 하위 비트군을 생성하는 하위 어드레스 생성 유닛과, 상기 내부 어드레스의 상위 비트군을 생성하는 상위 어드레스 생성 유닛과, 상기 2차원 배열 데이터의 주사 방향을 제어하는 주사 방향 제어 신호에 기초하여 상기 하위 어드레스 생성 유닛과 상위 어드레스 생성 유닛의 동작을 제어하는 어드레스 생성 유닛 제어 회로를 가지며, 상기 주사 방향 제어 신호의 주사 방향에 대응하는 내부 어드레스를 순차적으로 생성하는 것을 특징으로 하는 메모리 장치.
  2. 제1항에 있어서, 상기 어드레스는 로우 어드레스와 칼럼 어드레스를 가지며,
    상기 메모리셀 어레이는 상기 로우 어드레스에 의해 선택되는 복수의 페이지 영역을 가지며, 상기 페이지 영역은 상기 칼럼 어드레스에 의해 선택되는 복수의 상기 메모리 단위 영역을 가지며,
    상기 내부 어드레스 제어부는 상기 내부 어드레스 중 내부 칼럼 어드레스를 생성하는 것을 특징으로 하는 메모리 장치.
  3. 제2항에 있어서, 액티브 커맨드에 응답하여, 상기 로우 어드레스에 의해 선택되는 페이지 영역이 액티브 동작을 행하고, 상기 액티브 커맨드 후에 공급되는 리드 커맨드 또는 라이트 커맨드에 응답하여, 상기 칼럼 어드레스에 대응하는 상기 메모리 단위 영역에 리드 동작 또는 라이트 동작이 행해지고,
    버스트 모드에서는, 상기 리드 커맨드 또는 라이트 커맨드에 응답하여, 내부 어드레스 제어부가 버스트 길이의 수의 내부 칼럼 어드레스를 순차적으로 생성하고, 상기 순차적으로 생성되는 내부 칼럼 어드레스에 의해 선택되는 상기 메모리 단위 영역에 리드 동작 또는 라이트 동작이 반복되는 것을 특징으로 하는 메모리 장치.
  4. 제3항에 있어서, 상기 주사 방향 제어 신호가 경사 방향인 경우에, 상기 어드레스 생성 유닛 제어 회로는, 상기 하위 어드레스 생성 유닛과 상위 어드레스 생성 유닛을 병행하여 동작시키고, 상위 내부 칼럼 어드레스와 하위 내부 칼럼 어드레스를 병행하여 순차적으로 생성시키는 것을 특징으로 하는 메모리 장치.
  5. 제4항에 있어서, 상기 하위 어드레스 생성 유닛 및 상위 어드레스 생성 유닛은, 카운터 제어 신호에 응답하여 카운트값을 변경하는 카운터 회로를 각각 갖는 것을 특징으로 하는 메모리 장치.
  6. 제5항에 있어서, 상기 하위 어드레스 생성 유닛 및 상위 어드레스 생성 유닛은, 단계 제어 신호에 따라서 상기 카운터 제어 신호를 상기 카운터 회로의 어느 한 자릿수에 입력하는 하위 단계 설정 회로와 상위 단계 설정 회로를 각각 더 갖는 것을 특징으로 하는 메모리 장치.
  7. 제6항에 있어서, 상기 하위 어드레스 생성 유닛 및 상위 어드레스 생성 유닛은, 상기 주사 방향 제어 신호와 상기 단계 제어 신호에 따른 각도 방향에 대응하는 하위 내부 칼럼 어드레스와 상위 내부 칼럼 어드레스를 순차적으로 생성하는 것을 특징으로 하는 메모리 장치.
  8. 제5항에 있어서, 상기 하위 어드레스 생성 유닛 및 상위 어드레스 생성 유닛은, 반환폭 제어 신호에 따라서 상기 카운터 회로의 어느 한 자릿수의 출력 신호를 캐리 신호로서 출력하는 하위 반환폭 설정 회로와 상위 반환폭 설정 회로를 각각 더 갖는 것을 특징으로 하는 메모리 장치.
  9. 제5항에 있어서, 상기 카운터 회로는, 외부로부터 공급되는 칼럼 어드레스가 초기값으로서 설정되고, 상기 버스트 길이의 수만큼 카운트 제어 신호에 응답하여 카운트값을 변경하여 하위 및 상위 내부 칼럼 어드레스를 순차적으로 생성하는 것을 특징으로 하는 메모리 장치.
  10. 제3항에 있어서, 상기 주사 방향 제어 신호가 상기 제1 또는 제2 방향인 경우에, 상기 어드레스 생성 유닛 제어 회로는, 상기 하위 어드레스 생성 유닛과 상위 어드레스 생성 유닛을 직렬로 동작시키고,
    상기 주사 방향 제어 신호가 상기 제1 방향인 경우에, 상기 어드레스 생성 유닛 제어 회로는, 클록에 응답하여 상기 하위 어드레스 생성 유닛이 하위의 내부 칼럼 어드레스를 순차적으로 생성하고, 상기 하위 어드레스 생성 유닛이 생성하는 캐리 신호에 응답하여 상기 상위 어드레스 생성 유닛이 상위의 내부 칼럼 어드레스를 순차적으로 생성하고,
    상기 주사 방향 제어 신호가 상기 제2 방향인 경우에, 상기 어드레스 생성 유닛 제어 회로는, 클록에 응답하여 상기 상위 어드레스 생성 유닛이 상위의 내부 칼럼 어드레스를 순차적으로 생성하고, 상기 상위 어드레스 생성 유닛이 생성하는 캐리 신호에 응답하여 상기 하위 어드레스 생성 유닛이 하위의 내부 칼럼 어드레스를 순차적으로 생성하는 것을 특징으로 하는 메모리 장치.
  11. 제3항에 있어서, 상기 하위 어드레스 생성 유닛 및 상위 어드레스 생성 유닛은, 카운터 제어 신호에 응답하여 카운트값을 변경하는 카운터 회로를 각각 가지며, 반환폭 제어 신호에 따라서 상기 카운터 회로 중 어느 한 자릿수의 출력 신호를 캐리 신호로서 출력하는 하위 반환폭 설정 회로와 상위 반환폭 설정 회로를 각각 더 가지며,
    2개의 방향으로 각각 복수의 메모리 단위 영역을 갖는 직사각형 영역을 액세스하는 경우, 상기 리드 커맨드 또는 라이트 커맨드와 외부 칼럼 어드레스에 응답하여, 상기 하위 또는 상위 어드레스 생성 유닛은, 상기 반환폭 제어 신호에 따라서 설정된 반환폭으로 내부 칼럼 어드레스의 발생을 반복하는 것을 특징으로 하는 메모리 장치.
  12. 제3항에 있어서, 상기 하위 어드레스 생성 유닛 및 상위 어드레스 생성 유닛은, 카운터 제어 신호에 응답하여 카운트값을 변경하는 카운터 회로를 각각 가지며,
    상기 하위 어드레스 생성 유닛 및 상위 어드레스 생성 유닛은, 역진(逆進) 제어 신호에 응답하여, 카운트 초기값을 반전하여 상기 카운터 회로에 공급하고, 상기 카운터 회로의 카운트값을 반전하여 출력하는 게이트군을 더 갖는 것을 특징으로 하는 메모리 장치.
  13. 제1항에 있어서, 상기 어드레스 생성 유닛 제어 회로는, 상기 주사 방향 제어 신호가 상기 제1 방향인 경우는, 상기 하위 어드레스 생성 유닛을 우선하여 동작시켜 상기 하위 어드레스를 순차적으로 변화시키고, 상기 주사 방향 제어 신호가 상기 제2 방향인 경우는, 상기 상위 어드레스 생성 유닛을 우선하여 동작시켜 상기 상위 어드레스를 순차적으로 변화시키고, 상기 주사 방향 제어 신호가 상기 제1 및 제2 방향과는 상이한 경사 방향인 경우는, 상기 하위 및 상위 어드레스 생성 유닛을 병행하여 동작시키고 상기 하위 및 상위 어드레스를 병행하여 순차적으로 변화시키는 것을 특징으로 하는 메모리 장치.
  14. 어드레스에 의해 선택되는 복수의 메모리 단위 영역을 가지며, 2차원 배열 데이터를 상기 복수의 메모리 단위 영역에 기억하는 메모리셀 어레이와,
    외부 어드레스를 입력하고, 상기 외부 어드레스에 기초하여 상기 메모리 단위 영역을 선택하는 내부 어드레스를 생성하는 내부 어드레스 제어부와,
    상기 내부 어드레스를 디코딩하여 상기 메모리 단위 영역을 선택하는 디코더를 가지며,
    상기 복수의 메모리 단위 영역은, 상기 내부 어드레스의 하위 비트군에 기초하여 상기 2차원 배열 데이터의 행렬 중 제1 방향으로 배열된 데이터를 기억하고, 상기 내부 어드레스의 상위 비트군에 기초하여 상기 2차원 배열 데이터의 행렬 중 제2 방향으로 배열된 데이터를 기억하고,
    상기 내부 어드레스 제어부는, 상기 2차원 배열 데이터의 적어도 경사 방향을 포함하는 복수의 주사 방향을 제어하는 주사 방향 제어 신호에 기초하여 상기 주사 방향에 대응하는 내부 어드레스를 순차적으로 생성하는 것을 특징으로 하는 메모리 장치.
  15. 제1항 또는 제14항에 기재된 메모리 장치를 제어하는 메모리 컨트롤러에 있어서,
    액세스 대상인 직사각형 영역을 규정하는 위치 좌표와 종횡의 길이와 기울기를 입력하여, 상기 주사 방향 제어 신호를 생성하는 버스트 방향 판정부와,
    제어 커맨드를 생성하여 상기 메모리 장치에 출력하는 커맨드 발행부와,
    상기 외부 어드레스를 생성하여 상기 메모리 장치에 출력하는 어드레스 발행부를 가지며,
    상기 주사 방향 제어 신호는 상기 메모리 장치에 출력되는 것을 특징으로 하는 메모리 컨트롤러.
  16. 제15항에 있어서, 상기 버스트 방향 판정부는, 상기 종횡의 길이 중 보다 긴 세로 또는 가로의 방향을 주사 방향으로 하는 상기 주사 방향 제어 신호를 생성하는 것을 특징으로 하는 메모리 컨트롤러.
KR20107029621A 2008-06-30 2008-06-30 메모리 장치 KR101226394B1 (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2008/001702 WO2010001433A1 (ja) 2008-06-30 2008-06-30 メモリ装置及びそれを制御するメモリコントローラ

Publications (2)

Publication Number Publication Date
KR20110015030A true KR20110015030A (ko) 2011-02-14
KR101226394B1 KR101226394B1 (ko) 2013-01-24

Family

ID=41465548

Family Applications (1)

Application Number Title Priority Date Filing Date
KR20107029621A KR101226394B1 (ko) 2008-06-30 2008-06-30 메모리 장치

Country Status (6)

Country Link
US (1) US8493400B2 (ko)
EP (1) EP2299449A1 (ko)
JP (1) JP5126360B2 (ko)
KR (1) KR101226394B1 (ko)
CN (1) CN102292774B (ko)
WO (1) WO2010001433A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101956180B1 (ko) 2018-10-30 2019-03-08 김경기 추진 분사식 해충 방제기 및 그를 구비하는 이류체 압축 방식의 추진 분사식 해충 방제시스템

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5262741B2 (ja) * 2009-01-19 2013-08-14 パナソニック株式会社 色分布分析装置及び色分布分析方法
KR101927255B1 (ko) * 2011-12-27 2018-12-12 한국전자통신연구원 레지스터 윈도우 오버플로우/언더플로우 처리 장치
KR101975330B1 (ko) * 2012-04-06 2019-05-07 삼성전자주식회사 퓨즈 장치에 저장된 데이터를 리드하는 방법 및 이를 이용하는 장치들
US8942473B2 (en) * 2012-07-25 2015-01-27 Ko Hung Lin Image processing method and display apparatus
KR20160075705A (ko) 2013-10-25 2016-06-29 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 비디오 및 이미지 코딩에서의 해시 기반 블록 매칭
CN105684409B (zh) 2013-10-25 2019-08-13 微软技术许可有限责任公司 在视频和图像编码和解码中使用散列值来表示各块
KR102166762B1 (ko) * 2013-12-26 2020-10-16 에스케이하이닉스 주식회사 메모리 및 이를 포함하는 메모리 시스템
US9507601B2 (en) * 2014-02-19 2016-11-29 Mediatek Inc. Apparatus for mutual-transposition of scalar and vector data sets and related method
EP3114841B1 (en) 2014-03-04 2020-06-10 Microsoft Technology Licensing, LLC Encoder-side decisions for block flipping and skip mode in intra block copy prediction
CN105393537B (zh) * 2014-03-04 2019-08-27 微软技术许可有限责任公司 用于基于散列的块匹配的散列表构建和可用性检查
US10681372B2 (en) * 2014-06-23 2020-06-09 Microsoft Technology Licensing, Llc Encoder decisions based on results of hash-based block matching
MX2017004210A (es) 2014-09-30 2017-11-15 Microsoft Technology Licensing Llc Decisiones de codificador basadas en hash para codificar video.
EP3018587B1 (en) * 2014-11-05 2018-08-29 Renesas Electronics Europe GmbH Memory access unit
KR20160112439A (ko) * 2015-03-19 2016-09-28 에스케이하이닉스 주식회사 반도체 메모리 장치 및 동작 방법
US9639649B2 (en) * 2015-08-18 2017-05-02 Kabushiki Kaisha Toshiba Semiconductor memory device, method for designing semiconductor memory device, and recording medium having designing method recorded therein
WO2017130983A1 (ja) * 2016-01-25 2017-08-03 アイシン・エィ・ダブリュ株式会社 メモリコントローラ
US10390039B2 (en) 2016-08-31 2019-08-20 Microsoft Technology Licensing, Llc Motion estimation for screen remoting scenarios
US11095877B2 (en) 2016-11-30 2021-08-17 Microsoft Technology Licensing, Llc Local hash-based motion estimation for screen remoting scenarios
US10684955B2 (en) * 2017-04-21 2020-06-16 Micron Technology, Inc. Memory devices and methods which may facilitate tensor memory access with memory maps based on memory operations
JP6847797B2 (ja) * 2017-09-21 2021-03-24 キオクシア株式会社 半導体記憶装置
US10956315B2 (en) 2018-07-24 2021-03-23 Micron Technology, Inc. Memory devices and methods which may facilitate tensor memory access
WO2020184461A1 (ja) * 2019-03-08 2020-09-17 株式会社Jvcケンウッド 動画像符号化装置、動画像符号化方法、及び動画像符号化プログラム、動画像復号装置、動画像復号方法及び動画像復号プログラム
JP7235389B2 (ja) * 2019-03-29 2023-03-08 ラピスセミコンダクタ株式会社 半導体記憶装置
US11348622B2 (en) * 2020-05-06 2022-05-31 Micron Technology, Inc. Conditional write back scheme for memory
US11202085B1 (en) 2020-06-12 2021-12-14 Microsoft Technology Licensing, Llc Low-cost hash table construction and hash-based block matching for variable-size blocks
CN114388019B (zh) * 2022-01-14 2023-09-19 长鑫存储技术有限公司 存储器的检测方法

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4387370A (en) * 1980-12-18 1983-06-07 Rca Corporation Apparatus for angularly scanning memory addresses
EP0778578B1 (en) * 1988-11-29 2003-01-15 Matsushita Electric Industrial Co., Ltd. A synchronous semiconductor memory integrated circuit, a method for accessing said memory and a system comprising such a memory
US5142637A (en) 1988-11-29 1992-08-25 Solbourne Computer, Inc. Dynamic video RAM incorporating single clock random port control
JPH07113904B2 (ja) * 1990-04-11 1995-12-06 株式会社東芝 メモリ・アクセス装置
US5293540A (en) * 1991-07-29 1994-03-08 Nview Corporation Method and apparatus for merging independently generated internal video with external video
JPH0554657A (ja) 1991-08-21 1993-03-05 Fujitsu Ltd 半導体記憶装置
JPH05334426A (ja) * 1992-06-04 1993-12-17 Anritsu Corp 画像データ記憶装置
JPH06243675A (ja) 1993-02-23 1994-09-02 Hitachi Ltd 半導体記憶装置およびその処理システム
TW247359B (en) * 1993-08-30 1995-05-11 Hitachi Seisakusyo Kk Liquid crystal display and liquid crystal driver
KR100224807B1 (ko) * 1994-01-31 1999-10-15 윤종용 반도체 메모리장치 및 고속억세스 방법
JP3226426B2 (ja) * 1994-09-27 2001-11-05 松下電器産業株式会社 半導体メモリ及びその使用方法並びに画像プロセッサ
JPH08190372A (ja) 1995-01-11 1996-07-23 Hitachi Ltd Vramおよびこれを用いた表示制御システム
US5973993A (en) * 1998-02-27 1999-10-26 Micron Technology, Inc. Semiconductor memory burst length count determination detector
GB2362473B (en) * 2000-05-18 2002-08-21 3Com Corp On-chip detector of clock glitches
JP4099578B2 (ja) * 2002-12-09 2008-06-11 ソニー株式会社 半導体装置及び画像データ処理装置
JP4286192B2 (ja) * 2003-08-25 2009-06-24 オリンパス株式会社 画像処理装置及び画像処理方法
JP2005116128A (ja) 2003-10-10 2005-04-28 Fujitsu General Ltd フレームメモリ回路
JP4586627B2 (ja) * 2005-05-18 2010-11-24 ソニー株式会社 データアクセス装置、データアクセス方法、プログラムおよび記録媒体
JP2006345415A (ja) 2005-06-10 2006-12-21 Alegria Kk 電話交換システム、電話交換方法、電話交換プログラム及び記録媒体
JP2007251865A (ja) * 2006-03-20 2007-09-27 Sony Corp 画像データの処理装置、画像データの処理方法、画像データの処理方法のプログラム及び画像データの処理方法のプログラムを記録した記録媒体
JP4735471B2 (ja) * 2006-08-16 2011-07-27 ソニー株式会社 復号処理装置及び復号処理方法並びに復号処理プログラム
JP5018074B2 (ja) 2006-12-22 2012-09-05 富士通セミコンダクター株式会社 メモリ装置,メモリコントローラ及びメモリシステム
JP2008288946A (ja) * 2007-05-18 2008-11-27 Seiko Epson Corp アドレス生成装置及び撮像素子

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101956180B1 (ko) 2018-10-30 2019-03-08 김경기 추진 분사식 해충 방제기 및 그를 구비하는 이류체 압축 방식의 추진 분사식 해충 방제시스템

Also Published As

Publication number Publication date
CN102292774B (zh) 2014-07-02
JP5126360B2 (ja) 2013-01-23
KR101226394B1 (ko) 2013-01-24
WO2010001433A1 (ja) 2010-01-07
CN102292774A (zh) 2011-12-21
US8493400B2 (en) 2013-07-23
EP2299449A1 (en) 2011-03-23
US20110128810A1 (en) 2011-06-02
JPWO2010001433A1 (ja) 2011-12-15

Similar Documents

Publication Publication Date Title
KR101226394B1 (ko) 메모리 장치
US5828423A (en) Motion vector detection circuit provided with the picture data memory
US7737986B2 (en) Methods and systems for tiling video or still image data
US6212231B1 (en) Assign of pels of a macroblock for compression encoding to a memory sequence in one of banks of DRAM
US20100156917A1 (en) Image processing apparatus and method for managing frame memory in image processing
US8918589B2 (en) Memory controller, memory system, semiconductor integrated circuit, and memory control method
US5850483A (en) Image decompressing apparatus with efficient image data transfer
US20030151609A1 (en) Multi-sequence burst accessing for SDRAM
EP2092759B1 (en) System for interleaved storage of video data
US8436865B2 (en) Memory controller and memory system using the same
CN101340580A (zh) 视频硬件解码器的片外动态存储器的地址映射方法
JP4224876B2 (ja) 記憶装置、並びに書き込み方法および読み出し方法
US20080044107A1 (en) Storage device for storing image data and method of storing image data
CN1645928A (zh) 用于压缩视频信号解码的图像存储方法
KR19980081641A (ko) 동화상 복호 방법 및 동화상 복호 장치
JPH06189292A (ja) 動画像復号装置
US20130120420A1 (en) Method and system for efficiently organizing data in memory
JP5261694B2 (ja) 画像処理用メモリ
CA2802666A1 (en) Image processing device
Wang et al. Low power design of high performance memory access architecture for HDTV decoder
JP2008146235A (ja) 画像処理装置
JP3405079B2 (ja) メモリ割り付け方法
JP5605225B2 (ja) メモリ制御装置、メモリマッピング方法、及び、プログラム

Legal Events

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

Payment date: 20151217

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20161220

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee