KR100852084B1 - 메모리 어드레스 변환 장치, 메모리 어드레스 변환 방법 및 이미지 처리 장치 - Google Patents

메모리 어드레스 변환 장치, 메모리 어드레스 변환 방법 및 이미지 처리 장치 Download PDF

Info

Publication number
KR100852084B1
KR100852084B1 KR1020027011907A KR20027011907A KR100852084B1 KR 100852084 B1 KR100852084 B1 KR 100852084B1 KR 1020027011907 A KR1020027011907 A KR 1020027011907A KR 20027011907 A KR20027011907 A KR 20027011907A KR 100852084 B1 KR100852084 B1 KR 100852084B1
Authority
KR
South Korea
Prior art keywords
data
mapping
memory
memory device
memory address
Prior art date
Application number
KR1020027011907A
Other languages
English (en)
Other versions
KR20020086635A (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 KR20020086635A publication Critical patent/KR20020086635A/ko
Application granted granted Critical
Publication of KR100852084B1 publication Critical patent/KR100852084B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0215Addressing or allocation; Relocation with look ahead addressing means
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/907Television signal recording using static stores, e.g. storage tubes or semiconductor memories

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Debugging And Monitoring (AREA)
  • Executing Machine-Instructions (AREA)
  • Image Analysis (AREA)
  • Memory System (AREA)
  • Image Input (AREA)
  • Television Signal Processing For Recording (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

메모리 디바이스(118)는 버스트 액세스 모드를 사용하여 하나의 판독 또는 기록 커맨드를 제공해서 다수의 연속하는 데이터 워드에 액세스할 수 있다. 이들 데이터 버스트는 전체적으로만 액세스될 수 있는 메모리 디바이스의 비-오버래핑 데이터-유닛을 나타낸다. 데이터 요청이 몇 개의 바이트만을 포함할 수 있고, 메모리 디바이스의 하나 이상의 데이터 유닛을 오버레이할 수 있기 때문에, 전송 오버헤드의 양은 중요하다. 이 오버헤드를 최소화하기 위해서는 논리 어드레스로부터 물리 어드레스로의 양호한 매핑이 중요하다. 논리 어레이는 윈도우라 불리는 사각형의 세트로 나누어지고, 각각의 윈도우는 메모리 디바이스에 한 행에 저장된다. 사전 결정된 시간 동안 실질적으로 저장되거나 검색된 데이터 블록의 데이터 요청을 분석하여 최적의 윈도우 사이즈를 계산한다. 메모리 어드레스 변환 장치(102)는 분석을 수행해서 매핑을 생성한다.

Description

메모리 어드레스 변환 장치, 메모리 어드레스 변환 방법 및 이미지 처리 장치{UNIT AND METHOD FOR MEMORY ADDRESS TRANSLATION AND IMAGE PROCESSING APPARATUS COMPRISING SUCH A UNIT}
본 발명은 데이터 블록의 데이터 요소의 논리 어드레스를 메모리 디바이스의 일부인 데이터 유닛의 데이터 셀의 물리 어드레스로 변환하는 매핑을 생성하는 메모리 어드레스 변환 장치에 관한 것이고, 상기 변환 장치는 메모리 디바이스의 특성 및 데이터 블록의 특성을 분석하는 분석기 및 분석기의 출력에 기초해서 매핑을 생성하는 매핑 생성기를 포함한다.
본 발명은 또한 메모리 어드레스 변환 장치 등을 포함하고 있는 이미지 처리 장치에 관한 것이다.
본 발명은 또한 데이터 블록의 데이터 요소의 논리 어드레스를 메모리 디바이스의 일부인 데이터 유닛의 데이터 셀의 물리 어드레스로 변환하도록 매핑을 생성하는 방법에 관한 것이고, 상기 변환 장치는 메모리 디바이스의 특성 및 데이터 블록의 특성을 분석하는 제 1 단계 및 제 1 단계의 결과에 기초해서 매핑을 생성하는 제 2 단계를 포함한다.
상기 기술 분야에 설명되어 있는 종류의 유닛은, Visual Communications and Image Processing 2000, Proceedings of SPIE-The International Society for Optical Engineering, Vol. 4067, part two, Year 2000의 922~931페이지인 논문 Array Address Translation for SDRAM-based Video Processing Application에 공지되어 있다.
비디오 프로세싱 애플리케이션의 해상도가 높아짐에 따라서, 비디오 신호 프로세서는 극히 제한된 시간 내에 많은 양의 데이터를 처리해야 한다. 높은 메모리 대역폭을 획득하기 위해, SDRAM과 같은 일부 메모리 디바이스는 중요한 특성, 즉 버스트 액세스 모드를 사용한다. 버스트 액세스 모드는 하나의 판독 또는 기록 커맨드를 제공해서 연속하는 다수의 데이터 워드에 액세스하는 것을 가능하게 한다. 동적 메모리 셀의 판독이 파괴성(destructive)이기 때문에, 메모리 뱅크 내의 셀의 한 행의 컨텐츠는 정적 메모리 셀의 행 즉, 페이지 레지스터에 카피된다. 이어서, 이 행으로의 액세스가 제공된다. 유사하게, 다른 행이 액세스되어야 할 때, 우선 정적 메모리 셀의 행의 컨텐츠는 원래의 파괴된 동적 셀에 카피되어야 한다. 행-활성화 및 개별적인 프리차지(pre-charge)라 불리는 이들 액션에는 메모리 셀의 어레이, 즉 뱅크가 액세스될 수 없는 시간이 매우 많이 소비된다. 메모리-버스 대역폭의 사용을 최적화하기 위해, 데이터는 8워드와 같은 데이터 버스트의 그레인(grain) 사이즈로만 액세스되어야 한다. 이들 데이터 버스트는 단지 전체적으로 액세스될 수 있는 메모리 디바이스의 비-오버래핑 데이터-유닛(data-units)을 나타낸다. 데이터 요청에는 몇 바이트만 관련되고, 즉 데이터-유닛이 요청된 데이터 블록보다 크고, 데이터 요청이 메모리 디바이스 내의 하나 이상의 데이터 유닛과 연관될 수 있기 때문에, 전송 오버헤드의 양은 중요해질 수 있다. 이 오버헤드를 최소화하기 위해서는 논리 어드레스로부터 물리 어드레스로의 양호한 매핑이 중요하다. 이를 설명하기 위해 후술하는 실시예가 제공된다. 비디오 처리 알고리즘은 8×8픽셀의 이차원 어레이를 처리한다. 이러한 이차원 어레이를 데이터 블록으로 나타낸다. 다양한 픽셀의 어드레스가 물리 어드레스로 선형적으로 매핑되면, 이러한 데이터 블록을 액세스함으로서 7개의 행-변화(row-change)가 발생한다. 그러나, 이러한 8×8 데이터-블록의 픽셀이 메모리 디바이스의 하나의 데이터 유닛에 유지되면, 이러한 8×8 데이터-블록을 액세스하는 데 어떠한 행-변화도 발생하지 않는다.
Visual Communications and Image Processing 2000, Proceedings of SPIE-The International Society for Optical Engineering, Vol. 4067, part two, Year 2000의 922~931페이지인 논문 Array Address Translation for SDRAM-based Video Processing Application에는 다양한 치수의 비디오 처리 애플리케이션에서의 메모리 사이클의 수를 감소시키는 메모리 어드레스 변환 장치가 공지되어 있다. 상기 논문에는 메모리 액세스 패턴 및 메모리 파라미터를 고려해서 적절한 윈도우의 크기를 찾는 알고리즘이 개시되어 있다. 비디오 프레임과 같은 논리 어레이는 윈도우라 불리는 사각형의 세트로 나누어진다. 윈도우 사이즈는 예컨대 비디오 프레임으로부터 픽셀이 다수의 관련된 픽셀의 그룹으로 어떻게 분할되는지를 결정된다. 즉, 비디오 프레임은 다수의 영역으로 나누어지고, 이런 영역의 공간 치수는 윈도우의 치수에 대응한다. 이런 영역으로부터의 모든 픽셀은 하나의 관련된 픽셀의 그룹에 속한다. 관련된 픽셀의 각각의 그룹은 메모리 디바이스의 행에 저장된다. 윈도우의 길이는 가로 방향 픽셀 수에 대응한다. 윈도우의 높이는 세로 방향 픽셀 수에 대응한다. 어드레스 변환이란 논리 어드레스에 대한 물리 어드레스의 결정을 의미한다. 데이터 요소를 메모리 디바이스에 저장하기 위해, 데이터 요소의 논리 어드레스에 대해 데이터 유닛의 일부인 데이터 셀의 물리 어드레스를 계산하여야 한다. 각각의 픽셀은 논리 어드레스를 가지고 있다. 이 어드레스는 비디오 프레임 내의 픽셀의 좌표의 세트가 될 수 있다. 관련된 픽셀의 그룹이 하나의 데이터 유닛에 저장되어야 한다면, 그 픽셀과 관련된 물리 어드레스의 계산값이 저장되는 것으로 판정한다. 관련된 픽셀의 그룹으로부터의 픽셀은 연속된 물리 어드레스에 매핑되어야 한다. 상기 논문에서, 비디오 데이터의 메모리로의 매핑은 애플리케이션 소프트웨어를 분석하는 것과 관련되어서 제안된다.
애플리케이션 소프트웨어만을 분석해서 윈도우 사이즈를 산정한 결과는, 산정된 윈도우 사이즈가 최적이 아니라는 것이다. 이 때문에 논리 어드레스를 최적이 아닌 물리 어드레스로 매핑한다. 그 결과, 관련된 픽셀의 그룹이 하나의 데이터 유닛에 저장되지 않고 몇 개의 데이터 유닛에 분산된다. 이러한 관련된 픽셀의 그룹을 액세스하기 위한 하나의 데이터 블록 요청은 상당한 메모리 전송 오버헤드를 갖는다. 하나의 버스트 액세스를 수행하는 대신에 메모리 디바이스가 수회 호출된다.
데이터 종속성(dependency)을 고려하지 않고 애플리케이션 소프트웨어만을 분석해서 윈도우 사이즈를 산정하는 결과 이외에도, 코드를 사용할 수 없을 수도 있기 때문에, 애플리케이션 소프트웨어를 항상 분석할 수 있는 것은 아니다. 만약 코드가 제 3 자에 의해 개발되었다면, 이는 문제가 될 수 있다.
본 발명의 제 1 목적은 데이터 블록의 데이터 요소의 논리 어드레스를 데이터 유닛의 데이터 셀의 물리 어드레스로 변화하기 위해 개선된 매핑을 상기 기술 분야에서 설명한 메모리 어드레스 변환 장치에 제공하는 것이다.
본 발명의 제 2 목적은 메모리 어드레스 변환 장치 등을 포함하고 있는 이미지 처리 장치를 제공하는 것이다.
본 발명의 제 3 목적은 데이터 블록의 데이터 요소의 논리 어드레스를 데이터 유닛의 데이터 셀의 물리 어드레스로 변화하기 위해 개선된 매핑을 상기 기술 분야에서 설명한 방법에 제공하는 것이다.
본 발명의 제 1 목적은, 사전 결정된 시간동안 실제로 메모리 디바이스에 저장되거나 메모리 디바이스로부터 검색되는 실제 데이터 블록들의 특성값을 분석기가 분석함으로써 달성된다. 실행중 실제로 저장되거나 검색되는 데이터 블록들의 특성값은, 애플리케이션 소프트웨어의 분석에만 기초해서 저장되거나 검색될 것이라고 가정했을 때의 데이터 블록들의 특성값과는 상이할 수 있다. 더욱이, 데이터 블록의 발생 확률은 데이터 종속성을 고려하지 않고 애플리케이션 소프트웨어를 분석해서는 유추할 수 없다. 대부분의 애플리케이션 프로그램에는 다수의 루프와 조건 검사가 포함되어 있다. 이들 조건 검사의 결과는 프로그램이 다수의 평행경로를 가진다는 것이다. 프로그램의 입력 데이터로 어떤 경로가 실제로 취해지는지 판정한다. 즉, 애플리케이션 프로그램에 의해 처리되어야 하는 입력 데이터는 프로그램의 내부 변수 및 메모리 액세스에 많은 영향을 미친다. 이는 예를 들어 MPEG 디코더에서 발생한다. 이는 MPEG 디코더가 그 오퍼랜드로서 어떤 타입의 데이터 블록을 가질 것인가하는 인코더가 취하는 방안에 크게 의존한다.
본 발명에 따른 메모리 어드레스 변환 장치의 실시예가 청구항 2항에 개시되어 있다. 데이터 블록의 중요한 특성은, 메모리 디바이스에 저장되거나 메모리 디바이스로부터 검색되는 각각의 데이터 블록의 제 1 데이터 요소에 대응하는 각각의 제 1 데이터 셀의 물리 어드레스의 확률 분포이다. 이 물리 어드레스, 데이터 유닛의 사이즈 및 각각의 데이터 블록의 사이즈에 기초해서, 얼마나 많은 데이터 유닛이 데이터 블록으로부터 데이터 요소를 포함하는가가 결정된다. 하나의 데이터 블록의 데이터 요소들의 수가 하나의 데이터 유닛에 적합하다면, 이들 데이터 요소들은 하나의 데이터 유닛 내에 배치되는 것이 바람직하다. 데이터 유닛에 데이터 요소를 분산시키는 것은 가능한 한 최소화되어야 한다. 데이터 요청이 메모리 디바이스의 하나 이상의 데이터 유닛을 오버레이한다면, 각각의 데이터 유닛은 상당히 큰 메모리 전송 오버헤드를 초래하면서 액세스될 수 있다.
본 발명에 따른 메모리 어드레스 변환 장치의 일 실시예가 청구항 3 항에 개시되어 있다. 데이터 블록의 다른 중요한 특성은 발생 확률이다. 프로그램은 데이터 블록의 타입에 따라서 몇 개의 타입의 오퍼랜드를 가질 수 있다. 예를 들어, MPEG의 경우, 데이터 블록의 세트는 V=(16×16), (17×16), (16×17), (17×17), (16×8), (18×8), (16×9), (18×9), (17×8), (17×9), (16×4), (18×4), (16×5), (18×5)이다. 그러나, 이들 타입이 모두 같은 횟수로 사용되는 것은 아니다. 발생 확률 및 메모리 액세스 요청은 타입마다 상이하다. MPEG 애플리케이션에 있어서는, 기준 화상이 매크로 블록으로 메모리에 기록된다. 기록 요청량이 동일하더라도, 발생 확률은 전체 요청량에 비례한다. 이와같이 기록 요청의 발생 확률은 예측을 위한 데이터 요청량에 매우 높게 의존한다. 그 중에서도, 예측을 위한 데이터 요청량은 필드 및 프레임의 예측량, B-픽쳐에서의 그룹 오브 픽쳐(GOP)의 구조, 순방향, 역방향 및 양방향 예측된 매크로 블록의 양 등에 의해 결정된다. 매핑은 발생 확률을 따르는 것이 바람직하다. 특정 타입의 데이터 블록의 발생 확률이 비교적 높다면, 이는 윈도우 사이즈에 비교적 높은 영향을 미칠 것이다.
본 발명에 따른 메모리 어드레스 변환 장치의 일 실시예가 청구항 4항에 개시되어 있다. 사전 결정된 시간 동안의 모든 메모리 액세스를 검사해서 수집된 정보에 기초해서, 사전 결정된 시간 동안 사용된 현재의 매핑이 상기 메모리 디바이스에 저장되고 상기 메모리 디바이스로부터 검색되는 데이터 블록에 대해 메모리 전송 오버헤드를 가능한한 가장 낮게 하는지 여부를 분석하도록 메모리 변환 장치가 구성된다. 사전 결정된 시간 동안의 모든 메모리 액세스를 검사함으로써 이루어진 데이터 블록에 관한 정보 이외에, 메모리 버스의 대역폭 및 뱅크의 개수와 같은 메모리 디바이스의 특성값을 알아야 한다. 이들 특성값은 상수이고, 메모리 어드레스 변환 장치에 제공되어야 한다. 메모리 전송 오버헤드의 비용 함수를 사용해서, 윈도우의 최적의 치수가 수학적으로 계산될 수 있다. 매핑은 근본적으로 윈도우의 치수에 근거한다.
본 발명에 따른 메모리 어드레스 변환 장치의 일 실시예가 청구항 5항에 개시된다. 메모리 어드레스 변환 장치는 새로운 매핑을 생성하도록 외부적으로 트리거되었을 때, 새로운 매핑을 생성한다. 외부 트리거가 언제든지 호출될 수 있다는 것이 장점이다.
본 발명에 따른 메모리 어드레스 변환 장치의 일 실시예가 청구항 6항에 개시된다. 메모리 어드레스 변환 장치는 다수의 매핑을 생성하도록 구성된다. 이들 매핑 각각에 대해서, 메모리 어드레스 변환 장치는 메모리 전송 오버헤드를 계산할 수 있다. 이들 매핑 중 하나는 실제로 사용중인 매핑, 즉 활성 매핑이다. 활성 매핑이 메모리 전송 오버헤드를 가능한 한 가장 낮게 사용하는 것이 아니라고 메모리 어드레스 변환 장치가 검출하면, 메모리 전송 오버헤드를 가능한 한 가장 낮게 사용하는 매핑이 활성 매핑으로 될 수 있다. 이 방안의 결과는, 언제든지 활성 매핑이 메모리 전송 오버헤드를 가능한 한 가장 낮게 하는 매핑일 가능성이 비교적 높다는 것이다.
본 발명에 따른 메모리 어드레스 변환 장치의 일 실시예가 청구항 7항에 개시되어 있다. 메모리 어드레스 변환 장치는 버스트 액세스 모드의 특성을 가진 메모리 디바이스에 의해 사용되는 모든 경우에 유익하다. 버스트 액세스 모드는 하나의 판독 또는 기록 커맨드에 의해 다수의 연속 데이터 워드를 액세스하는 것을 가능하게 한다. 이러한 메모리 디바이스의 예로는 동기식 동적 램(SDRAM) 디바이스가 있다. 또한 더블 데이터 레이트 동기식 DRAM (DDR SDRAM) 또는 다이렉트 램버스 DRAM과 같은 더 복잡한 메모리 디바이스를 액세스하기 위해서는 메모리 어드레스 변환 장치가 유익하다.
본 발명에 따른 메모리 어드레스 변환 장치의 일 실시예가 청구항 8항에 개시되어 있다. 대부분의 비디오 처리 알고리즘이 다양한 치수의 어레이, 즉 데이터 블록 및 네스트 루프(nested loop)에 기초한다. 메모리 어드레스 변환 장치의 사용은 비디오 또는 정지화상 처리 알고리즘에 매우 유리할 수 있다. 그 경우 데이터 블록의 요소는 픽셀의 휘도값과 관련이 있다. 픽셀의 휘도값은 색요소인, 적, 녹, 청의 조합값 또는 색요소 중 하나의 값을 나타낸다.
본 발명에 따른 메모리 어드레스 변환 장치의 일 실시예가 청구항 9항에 개시된다. 버스트 액세스 모드외에 메모리 디바이스는 다양한 뱅크 아키텍처를 가질 수 있다. 행-활성화 및 프리 차지에 필요한 메모리 사이클을 감추기 위해 다양한 뱅크 아키텍처가 사용되고, 각각의 뱅크가 교번적으로 액세스된다. 뱅크는 다른 뱅크와는 서로 독립적으로 액세스된다. 메모리 뱅크로의 조직화(organization), 즉 다양한 뱅크에 데이터 블록을 분산시키는 방안은 메모리 대역폭의 효율에 중요한 요소이다. 이 방안은 메모리 어드레스 변환 장치에 제공된다. 데이터 블록의 의미에 관한 기초지식이 중요하다. MPEG 디코딩을 위한 프레임 예측과 필드 예측과 같은, 멀티미디어 시스템의 몇 개의 애플리케이션에 있어서, 프로그레시브 방식(progressively) 및 인터레이스 방식(interlaced) 모두로 비디오 데이터를 판독할 필요가 있다. 그러나, 이어지는 짝수 및 홀수 라인이 동일한 데이터 유닛에 매핑될 때, 메모리 대역폭을 낭비하지 않으면서 짝수 또는 홀수 라인만을 액세스하는 것은 불가능하다. 따라서, 짝수 및 홀수 라인은 메모리 디바이스의 상이한 뱅크에 위치된다. 그 결과, 데이터 블록의 세로 방향 사이즈가 1보다 크면, 데이터 유닛이 메모리 디바이스에 인터리빙된다. 이러한 지식은 최적의 매핑을 산정하기 위해 사용된다. 이를 위해, 최적의 매핑을 산정하기 위해 사용되는 데이터 블록은
- 프로그레시브 방식 및 인터레이스 방식 비디오, 또는
- 인터레이스 방식 비디오만, 또는
- 프로그레시브 방식 비디오만,
의 데이터 요청에 속한 데이터 블록으로 이루어져야 한다.
이는 데이터 블록의 세트가
- 데이터 블록의 데이터 요소가 비디오 프레임의 짝수 라인에 속하는 픽셀의 휘도값과 관련되어 있는 데이터 블록
- 데이터 블록의 데이터 요소가 비디오 프레임의 홀수 라인에 속하는 픽셀의 휘도값과 관련되어 있는 데이터 블록
- 데이터 블록의 데이터 요소가 비디오 프레임의 홀수 또는 짝수 라인에 속하는 픽셀의 휘도값과 관련되어 있는 데이터 블록
을 포함한다는 것을 의미한다.
본 발명에 따른 메모리 어드레스 변환 장치의 일 실시예가 청구항 10항에 개시되어 있다. 많은 경우에 데이터 블록이 요청될 것이고, 데이터 블록의 모든 행은 동일한 데이터 요소의 수를 가지고 있다. 이 경우에, 사각형의 데이터 블록의 모든 데이터 요소가 액세스된다. 예를 들어, 이 사각형의 데이터 블록의 일부 데이터 요소가 이미 액세스되었기 때문에, 모든 데이터 요소의 검색이 요청되는 것은 아니다. 메모리 어드레스 변환 장치는 모든 타입의 데이터 블록을 분석함으로써 매핑을 생성할 수 있다.
본 발명의 제 3 의 목적은, 방법이 사전 결정된 시간 동안 실제로 메모리 디바이스에 저장되거나 메모리 디바이스로부터 검색된 데이터 블록들의 특성값을 분석하는 제 1 단계와 그 매핑을 생성하는 제 2 단계를 포함함으로써 이루어진다.
본 발명의 이들 및 기타 태양은 첨부된 도면과 함께 이하 기술되는 본 발명의 실시예를 참조하면 명백하게 이해될 것이다
도 1은 메모리 어드레스 변환 장치의 주요 모듈 및 메모리 어드레스 변환 장치가 접속되는 주요 구성요소를 개략적으로 도시한 도면,
도 2a는 메모리 디바이스 데이터 유닛 상으로의 64×1 픽셀의 매핑을 개략적으로 도시한 도면,
도 2b는 메모리 디바이스 데이터 유닛 상으로의 16×4 픽셀의 매핑을 개략적으로 도시한 도면,
도 3은 메모리 디바이스 데이터 유닛 상으로의 인터레이스 방식 비디오의 매핑을 개략적으로 도시한 도면,
도 4는 본 발명에 따른 이미지 처리 장치의 가장 중요한 구성요소를 도시한 도면.
도 1은 메모리 어드레스 변환 장치(102)의 주요 모듈 및 메모리 어드레스 변환 장치가 접속되는 주요 구성요소를 개략적으로 도시하고 있다. 프로세서(116)는 데이터 액세스를 요청한다. 데이터는 메모리 디바이스(118)에 저장된다. 프로세서에 의한 각각의 데이터 액세스 요청은 프로세서로부터 메모리 디바이스로의 , 또는 그 반대로 데이터 전송(124)을 일으킨다. 프로세서는 각각의 데이터 블록(126)의 각각의 데이터 요소(128)의 논리 어드레스(120)를 데이터 액세스 요청에 따라서 메모리 어드레스 변환 장치에 제공한다. 메모리 어드레스 변환 장치는 이 논리 어드레스(120)를 물리 어드레스(122)로 변환한다. 메모리 어드레스 변환 장치는 메모리 디바이스에 물리 어드레스를 제공한다. 메모리 디바이스(118)는 다수의 데이터 유닛(130)을 포함하고 있다. 각각의 데이터 유닛은 다수의 데이터 셀(132)을 포함하고 있다. 메모리 디바이스는 4개의 뱅크(136)를 포함하고 있다.
메모리 어드레스 변환 장치는 하기의 구성요소를 포함하고 있다.
- 데이터 블록 분석기(104). 데이터 블록 분석기는 저장되거나 검색되는 각각의 데이터 블록들의 특성값을 결정하도록 구성된다. 데이터 블록의 특성이란 예를 들어, 세로 방향 크기와 가로 방향 크기, 데이터 블록의 제 1 데이터 요소에 대응하는 제 1 데이터 셀의 물리 어드레스이다. 데이터 블록 분석기는 비디오 데이터의 타입 즉 인터레이스 방식 또는 프로그레스 방식을 체크하도록 구성된다. 사전 결정된 시간동안 저장되거나 검색된 데이터 블록의 수집된 특성값에 기초해서, 데이터 블록 분석기(104)는 특정 데이터 요청의 발생 확률; 특정 치수를 가진 데이터 블록이 액세스될 확률 또는 각각의 데이터 블록의 각각 제 1 데이터 요소의 물리 어드레스의 확률 분포의 값을 유도할 수 있다.
- 메모리 전송 오버헤드 계산기(106). 메모리 전송 오버헤드 계산기는 제어 파라미터의 세트에 대한 메모리 전송 오버헤드를 계산하도록 구성된다. 데이터 블록 분석기(104)에 의해 수집된 정보는 메모리 전송 오버헤드 계산기(106)에 입력된다. 이 정보 이외에 예를 들어, 메모리 버스의 대역폭 및 뱅크(136)의 갯수와 같은 메모리 디바이스의 특성을 알아야 한다. 이들 특성은 상수이다. 메모리 뱅크로의 조직화, 즉 다양한 뱅크에 데이터 블록을 분산시키는 방안은 메모리 대역폭의 효율에 중요한 요소이다. 이 방안은 메모리 전송 오버헤드 계산기에 전송되어야 한다.
- 최소 비용 설정기(a minimum cost establisher;108). 최소 비용 설정기는 메모리 전송 오버헤드 계산기(106)에 다양한 세트의 제어 파라미터를 제공한다. 최소 비용 설정기는 어떤 제어 파라미터의 세트가 메모리 전송 오버헤드 발생을 가능한 한 가장 낮게 하는지를 결정한다. 최소 비용 발생기로부터의 출력에는 최적의 윈도우 사이즈가 포함된다. 최소 비용 발생기의 다른 태스크는, 현재의 매핑 대신에 사전 결정된 시간 동안 다른 매핑이 사용되었다면, 메모리 디바이스에 각각 저장되거나 메모리 디바이스로부터 검색된 데이터 블록에 대해서, 다른 매핑이 더 낮은 전송 오버헤드를 발생시키는지를 검증하는 것이다. 만약 최소 비용 설정기가 현재의 매핑이 가장 최적화된 매핑이 아니라는 것을 검출하면, 최소 비용 설정기(108)는 매핑 생성기(110)에 통지한다.
- 매핑 생성기(110). 매핑 생성기는 데이터 블록의 데이터 요소의 논리 어드레스를 데이터 유닛의 데이터 셀의 물리 어드레스로 변환하는 매핑을 생성하도록 구성된다. 이 매핑을 생성하기 위해 매핑 생성기(110)는 최소 비용 설정기(108)에 의해 계산된 정보를 필요로 한다. 매핑 생성기는 최소 비용 설정기에 의해 생성된 보다 나은 매핑의 발견 등과 같은 이벤트에 대해 서브스크라이브되어 있다. 매핑 생성기로부터의 출력은 룩업 테이블(134)이다. 룩업 테이블(134)은 매핑을 기술하고 있다.
- 어드레스 생성기(112). 어드레스 생성기는 각각의 경우의 논리 어드레스에 대한 물리 어드레스를 결정한다. 어드레스 생성기는 룩업 테이블(134)을 사용한다.
- 메모리 커맨드 생성기(114). SDRAM과 같은 메모리 디바이스의 데이터 유닛에 액세스하기 위해, 우선 뱅크(136)가 그 뱅크의 페이지 내로 어드레스지정된 행을 카피하도록 행 어드레스 스트로브(RAS)라 불리는 행-활성 커맨드가 발행되어야 한다. 약간의 지연 이후에, 동일한 뱅크에 대해 열 어드레스 스트로브(CAS)라 불리는 판독 또는 기록 커맨드가 발행되어서 그 행의 요청된 데이터 유닛을 액세스할 수 있다. 행 내의 모든 요청된 데이터 유닛이 액세스되었을 때, 대응하는 뱅크는 프리차지될 수 있다. 모든 이들 커맨드의 타이밍은 매우 중요하다. 메모리 커맨드 생성기는, 적절한 순서로 커맨드 사이에 적절한 지연을 가지고, 각각의 데이터 액세스에 대해서 이들 명령어를 생성한다.
도 2a는 메모리 디바이스 데이터 유닛상으로의 64×1 픽셀의 매핑을 개략적으로 도시하고 있고, 도 2b는 메모리 디바이스 데이터 유닛상으로의 64×4픽셀의 매핑을 개략적으로 도시하고 있다. 하나의 픽셀이 하나의 바이트에 대응하는 것으로 가정한다. 메모리 디바이스(201)는 64개의 데이터 유닛을 포함하고 있다. 각각의 데이터 유닛은 64바이트를 포함할 수 있다. 메모리 디바이스의 논리 사이즈는 각각 128 픽셀을 가진 32 비디오 라인으로부터의 픽셀을 유지할 수 있도록 되어있다. 메모리 디바이스는 4개의 뱅크를 포함하고 있다. 다양한 뱅크에 대응하는 데이터 유닛은 참조번호(202~208)로 표시되어 있다. 픽셀을 매핑하기 위해, 몇 개의 옵션이 인식된다. 가장 직접적인 방법은 도 2a에 도시되어 있는 바와 같이 하나의 데이터 유닛 상에 하나의 비디오 라인의 64 연속 픽셀을 매핑하는 것이다. 도 2a는 64 픽셀의 연속하는 각각의 행이 가로 및 세로 방향 모두로 뱅크에 인터리빙되는 방법을 나타내고 있다. 인터리빙된 매핑으로 인해, 픽셀 데이터가 연속해서 판독되거나 기록되면 메모리로의 액세스는 4개의 뱅크를 정밀하게 어드레스 지정할 수 있다. 그러나, 16×16픽셀의 데이터 블록이 메모리 디바이스로부터 요청되면, 전송되는 데이터의 양은 더 많다. 데이터 블록이 하나의 데이터 유닛 내에서 가로 방향으로 위치 지정되면, 64×16 픽셀이 전송된다. 데이터 블록이 가로 방향으로 두개의 데이터 유닛을 오버레이하면, 전송된 데이터의 양은 128×16픽셀이다. 도 2b에 도시된 바와 같이 매핑 방안이 선택되면, 오버헤드가 작다. 그러나, 128×1의 데이터 블록이 요청되면, 도 2a는 더 나은 매핑 방안을 제공한다.
도 3은 메모리의 데이터 유닛으로의 인터레이스 방식 비디오를 매핑하는 방안을 개략적으로 도시하고 있다. 하나의 픽셀은 하나의 바이트에 대응하는 것으로 가정한다. 메모리 디바이스(301)는 64개의 데이터 유닛을 포함하고 있다. 각각의 데이터 유닛은 64바이트를 포함할 수 있다. 메모리 디바이스의 논리 사이즈는 128 픽셀을 각각 가진 32 비디오 라인으로부터의 픽셀을 유지할 수 있다. 메모리 디바이스는 4개의 뱅크를 포함한다. 다양한 뱅크에 대응하는 데이터 유닛이 참조번호(302~308)로 나타나 있다. 멀티미디어 시스템의 몇 개의 애플리케이션에 대해서, MPEG 디코딩용 프레임 예측 및 필드 예측과 같은, 프로그레시브 방식 및 인터레이스 방식으로 비디오 데이터를 판독할 필요가 있다. 그러나, 연속된 짝수 및 홀수 라인이 동일한 데이터 유닛에 매핑될 때, 메모리 대역폭을 낭비하지 않으면서 짝수 또는 홀수 라인만을 액세스하는 것은 불가능하다. 따라서, 짝수 및 홀수 라인은 메모리 디바이스의 상이한 뱅크에 위치된다. 그 결과, 데이터 블록의 세로 방향 사이즈가 1보다 클 때, 데이터 유닛은 메모리 디바이스에 인터리빙된다. 결과로 나온 16×4 픽셀의 데이터 유닛의 매핑 방안이 도 3에 도시되어 있다. 인터레이스 방식 비디오 데이터의 효율적인 액세스를 위해 짝수 및 홀수의 비디오 라인을 짝수 및 홀수 뱅크에 매핑하는 것은 세로 방향으로의 4개의 유닛 후에 토글된다. 짝수 라인이 뱅크(1, 3)에 매핑되는 반면에 제 1 홀수 라인이 뱅크(0, 2)에 매핑된다. 연속된 비디오 라인에서 이는 반대 방향으로 행해진다. 홀수 라인은 뱅크(1, 3)에 매핑되고, 짝수라인은 뱅크(0, 2)에 매핑된다. 프로그레시브 방식 비디오에 대해, 이는 차이가 없지만, 인터레이스 방식 비디오에서는 홀수 또는 짝수 뱅크 하나만을 대신해서 모든 뱅크의 주소지정을 하게 한다. 프로그레시브 방식 비디오 라인을 가진 16×4 픽셀의 데이터 블록의 검색을 위해 수직 방향 사이즈가 8라인이 되고, 반면에 인터레이스 방식 비디오에서의 데이터 블록의 액세스를 위해서는 사이즈는 4라인이 된다.
도 4는 본 발명에 따른 이미지 처리 장치의 가장 중요한 구성요소를 도시하고 있다. 이미지 처리장치(402)는 이미지를 나타내는 데이터를 압축, 압축 해제, 품질개선, 또는 필터링하도록 처리하는 처리 수단(406)을 구비하고 있다. 이 데이터는 안테나 또는 케이블을 통해 브로드캐스팅되고 수신될 수 있지만, VCR(비디오 카세트 리코더) 또는 DVD(디지털 다기능 디스크)와 같은 저장 장치에 의해 저장될 수도 있다. 데이터 입력(import)용 인터페이스 장치(410)에는 커넥터(414)가 설치되어 있다. 데이터 입력용 인터페이스 장치는 이미지 처리 장치(402) 내부에서 데이터를 전송하는 버스(412)에 접속된다. 이 데이터는 케이블을 통해 송출될 수도 있고, VCR 또는 CD-리코더(컴팩트 디스크 레코더)와 같은 디바이스를 통해서 저장될 수도 있다. 데이터 출력용 인터페이스 장치(418)는 커넥터(416)를 갖는다. 데이터 출력(export)용 인터페이스 장치는 이미지 처리 장치(402) 내부에서 데이터를 전송하는 버스(412)에 접속된다. 데이터가 이미지 캡쳐 장치(420)에 의해 이미지 처리 장치에 의해 생성될 수도 있다. 데이터는 이미지 표시 장치(422)를 사용해서 이미지 처리 장치에 의해 가시화될 수 있다. 데이터는 메모리 디바이스(408)에 저장될 수 있다. 메모리 디바이스에 각각 저장되거나 이로부터 검색될 데이터로의 액세스는 메모리 어드레스 변환 장치(404)에 의해 조정된다. 데이터 입력용 인터페이스 장치(410), 데이터 출력용 인터페이스 장치(418) 및 처리 수단(406)은 데이터를 액세스하기 위해 메모리 어드레스 변환 장치(404)와 통신한다.
도 2a, 도 2b 및 도 3에서 매핑이 예로서 제공된다. 최적의 매핑을 찾기 위해, 하기의 조건을 만족하도록 윈도우의 가로 방향 크기인 M 및 윈도우의 세로 방향 크기인 N을 결정하기 위해 임의의 최소화 방법이 사용될 수 있다:
Figure 112002029690046-pct00001
, (1)
여기서 S는 픽셀의 양으로 주어진 윈도우의 크기
Figure 112002029690046-pct00002
이고
Figure 112002029690046-pct00003
(2)
Figure 112002029690046-pct00004
는 각각 인터레이스 방식 데이터 블록 요청 및 프로그레스 방식 데이터 블록 요청의 오버헤드를 나타낸다. 인터레이스 방식 비디오 및 프로그레시브 방식 비디오 모두로 이루어진 데이터 블록의 세트가 고려되어야 할 때, 이 세트는 분리되어서 식 3 및 식 4가 각각 서브 셋에 적용되어야 한다.
인터레이스 방식 데이터 블록 요청의 오버헤드는 하기와 같이 계산된다:
Figure 112002029690046-pct00005
(3)
여기서, Vi는 사용가능 데이터 블록 Bx×By의 집합이고 P(Bx×B y)는 그 데이터 블록의 확률이다. 그리고 여기서, PBx×By(M,N)는 요청된 데이터 블록(Bx×By)의 좌측 상부 코너의 픽셀, 즉 데이터 블록의 제 1 요소가 다음 조건: x mod M=m AND y mod N=n을 만족하는 임의의 위치(x, y)에 위치될 확률과 같다. 식(3)에서 분자는 오버헤드를 포함한 전송된 데이터의 양을 나타낸다. 분모는 오버헤드없는, 요청된 데이터의 양을 나타낸다. 프로그레시브 방식 데이터 블록 요청의 오버헤드는 다음과 같이 계산될 수 있다:
Figure 112002029690046-pct00006
(4)
식(4)의 분자는 오버헤드를 포함한 전송된 데이터의 양을 나타낸다. 분모는 오버헤드없는 요청된 데이터의 양을 나타낸다. 최적화된 방법에 있어서, By=1일 때의 데이터 블록은 인터레이스 방식의 요청을 나타내고 따라서, 이 요청은 집합 Vi에 포함된다.
이상과 같이, 본 발명의 이해를 위해 본 발명의 실시예를 기술하였으나, 당업자라면 알 수 있듯이, 본 발명은 본 명세서에서 기술된 특정 실시예에 한정되는 것이 아니라 본 발명의 범주를 벗어나지 않는 범위 내에서 다양하게 변형, 재구성 및 대체될 수 있다. 청구 범위에 있어서, 괄호 사이의 참조 번호는 청구 범위를 한정하기 위한 것이 아니다. 또한 '포함한다'는 것은 청구 범위에 나타나 있는 것외의 구성요소 또는 단계의 존재를 배제한다는 것은 아니다. 구성요소를 수식하는 '하나의'라는 표현이 그러한 구성 요소가 복수로 존재하는 것을 배제하는 것은 아니다. 본 발명은 몇 개의 다른 구성요소를 포함하고 있는 하드웨어 및 적절한 프로그래밍 가능 컴퓨터 수단에 의해 실시될 수 있다. 몇 개의 수단을 열거한 단위 청구항에서, 이들 수단 중 일부는 하나의 하드웨어 및 동일한 아이템의 하드웨어에 의해 실시될 수 있다.

Claims (12)

  1. 데이터 블록(126)의 데이터 요소(128)의 논리 어드레스(120)를 메모리 디바이스(118)의 일부인 데이터 유닛(130)의 데이터 셀(132)의 물리 어드레스(122)로 변환하는 매핑(a mapping, 134)을 생성하는 메모리 어드레스 변환 장치(102)에 있어서,
    상기 메모리 디바이스의 특성 및 데이터 블록들의 특성을 분석하는 분석기와,
    상기 분석기의 출력에 기초해서 상기 매핑을 생성하는 매핑 생성기
    를 포함하되,
    상기 분석기는 사전 결정된 시간 동안 실제로 상기 메모리 디바이스에 저장되거나, 메모리 디바이스로부터 검색되는 실제 데이터 블록들의 특성값을 분석하는
    메모리 어드레스 변환 장치.
  2. 제 1 항에 있어서,
    상기 메모리 어드레스 변환 장치는 실제로 상기 메모리 디바이스에 저장되거나, 상기 메모리 디바이스로부터 검색되는 각각의 데이터 블록의 제 1 데이터 요소에 대응하는 각각의 제 1 데이터 셀의 물리 어드레스의 확률 분포를 분석함으로써 상기 매핑을 생성하는
    메모리 어드레스 변환 장치.
  3. 제 1 항에 있어서,
    상기 메모리 어드레스 변환 장치는 데이터 블록의 발생 확률을 분석함으로써 상기 매핑을 생성하는
    메모리 어드레스 변환 장치.
  4. 제 1 항에 있어서,
    상기 메모리 어드레스 변환 장치는 사전 결정된 시간 동안 사용될 때 상기 메모리 디바이스에 저장되거나, 상기 메모리 디바이스로부터 각각 검색되는 데이터 블록에 대해, 현재의 매핑이 메모리 전송 오버헤드를 가능한 한 가장 낮게 했는지의 여부를 분석하는
    메모리 어드레스 변환 장치.
  5. 제 4 항에 있어서,
    상기 메모리 어드레스 변환 장치는 통지받았을 때 새로운 매핑을 생성하는
    메모리 어드레스 변환 장치.
  6. 제 4 항에 있어서,
    상기 메모리 어드레스 변환 장치는 테스트 매핑에 대한 메모리 전송 오버헤드를 측정하고, 상기 메모리 디바이스에 저장되거나 상기 메모리 디바이스로부터 각각 검색되는 데이터 블록에 대해 상기 현재 매핑 대신 상기 테스트 매핑이 상기 사전 결정된 시간 동안 활성화되는 경우 상기 테스트 매핑이 더 낮은 메모리 전송 오버헤드를 초래하는 것으로 판단되었을 때, 상기 현재 매핑을 대치하는 메모리 어드레스 변환 장치.
  7. 제 1 항에 있어서,
    상기 메모리 디바이스는 동기식 다이나믹 랜덤 액세스 메모리 디바이스(a synchronous dynamic random access memory device)인 메모리 어드레스 변환 장치.
  8. 제 1 항에 있어서,
    데이터 블록의 데이터 요소는 픽셀의 휘도값과 관련되는 메모리 어드레스 변환 장치.
  9. 제 8 항에 있어서,
    상기 메모리 어드레스 변환 장치는 데이터 블록들에 기초해서, 실제 데이터 블록들의 특성값을 분석하는 데 사용되는 상기 매핑을 생성하되,
    상기 데이터 블록은,
    데이터 블록의 데이터 요소가 비디오 프레임의 짝수 라인에 속하는 픽셀의 휘도값과 관련되어 있는 데이터 블록과,
    데이터 블록의 데이터 요소가 비디오 프레임의 홀수 라인에 속하는 픽셀의 휘도값과 관련되어 있는 데이터 블록과,
    데이터 블록의 데이터 요소가 비디오 프레임의 홀수 또는 짝수 라인에 속하는 픽셀의 휘도값과 관련되어 있는 데이터 블록
    으로 분류될 수 있는
    메모리 어드레스 변환 장치.
  10. 제 1 항에 있어서,
    상기 메모리 어드레스 변환 장치는 데이터 블록들에 기초해서 실제 데이터 블록들의 특성값을 분석하는 데 사용되는 매핑을 생성하되,
    상기 데이터 블록들은,
    행 별(per row) 데이터 요소의 수가 서로 다른 데이터 요소들의 행 구조와,
    행 별 데이터 요소의 수가 동일한 데이터 요소들의 행 구조
    로 분류될 수 있는
    메모리 어드레스 변환 장치.
  11. 데이터 블록의 데이터 요소의 논리 어드레스를 메모리 디바이스의 일부인 데이터 유닛의 데이터 셀의 물리 어드레스로 변환하는 매핑을 생성하되, 상기 메모리 디바이스의 특성 및 데이터 블록들의 특성을 분석하는 분석기-상기 매핑 분석기는 사전 결정된 시간 동안 상기 메모리 디바이스에 저장되거나 메모리 디바이스로부터 검색되는 실제 데이터 블록들의 특성값을 분석함-와, 상기 분석기의 출력에 기초해서 상기 매핑을 생성하는 매핑 생성기-를 포함하는 메모리 어드레스 변환 장치(404)와,
    프로세싱 수단(406)과,
    메모리 디바이스(408)
    를 포함하는
    이미지 처리 장치(402).
  12. 데이터 블록의 데이터 요소의 논리 어드레스를 메모리 디바이스의 일부인 데이터 유닛의 데이터 셀의 물리 어드레스로 변환하는 매핑을 생성하는 방법에 있어서,
    상기 메모리 디바이스의 특성 및 데이터 블록들의 특성을 분석하는 제 1 단계와,
    상기 제 1 단계의 결과에 기초해서 상기 매핑을 생성하는 제 2 단계
    를 포함하되,
    상기 제 1 단계에 있어서, 실제로 사전 결정된 시간 동안 상기 메모리 디바이스에 저장되거나 상기 메모리 디바이스로부터 검색되는 실제 데이터 블록들의 특성값이 분석되는
    방법.
KR1020027011907A 2001-01-12 2002-01-10 메모리 어드레스 변환 장치, 메모리 어드레스 변환 방법 및 이미지 처리 장치 KR100852084B1 (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
EP01200088 2001-01-12
EP01200088.1 2001-01-12
EP01200206 2001-01-19
EP01200206.9 2001-01-19

Publications (2)

Publication Number Publication Date
KR20020086635A KR20020086635A (ko) 2002-11-18
KR100852084B1 true KR100852084B1 (ko) 2008-08-13

Family

ID=26076807

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020027011907A KR100852084B1 (ko) 2001-01-12 2002-01-10 메모리 어드레스 변환 장치, 메모리 어드레스 변환 방법 및 이미지 처리 장치

Country Status (8)

Country Link
US (1) US6819326B2 (ko)
EP (1) EP1354484B1 (ko)
JP (1) JP2004518343A (ko)
KR (1) KR100852084B1 (ko)
CN (1) CN1220143C (ko)
AT (1) ATE491307T1 (ko)
DE (1) DE60238519D1 (ko)
WO (1) WO2002056600A1 (ko)

Families Citing this family (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100430999C (zh) * 2002-09-09 2008-11-05 Nxp股份有限公司 用于显示系统的驱动方法、驱动电路和驱动设备
EP1602240A2 (en) 2003-03-03 2005-12-07 Mobilygen Corporation Array arrangement for memory words and combination of video prediction data for an effective memory access
JP2004297792A (ja) * 2003-03-13 2004-10-21 Ricoh Co Ltd 画像形成装置及び機能キー割り付け方法
KR100612414B1 (ko) * 2003-04-28 2006-08-16 삼성전자주식회사 영상 데이터 처리 시스템 및 영상 데이터 독출/기입 방법
JP2005129026A (ja) * 2003-10-02 2005-05-19 Omron Corp プログラマブルコントローラおよび通信ユニットならびにコントローラシステムおよびデータ処理方法ならびに変数解決方法およびデータ受渡方法
GB0323284D0 (en) 2003-10-04 2003-11-05 Koninkl Philips Electronics Nv Method and apparatus for processing image data
CN1942870B (zh) 2004-04-15 2010-05-12 松下电器产业株式会社 信息处理装置及数据访问方法
KR100631780B1 (ko) 2004-08-28 2006-10-11 삼성전자주식회사 오버레이 유닛 간의 통신 방법 및 이를 이용한 장치
US7444493B2 (en) * 2004-09-30 2008-10-28 Intel Corporation Address translation for input/output devices using hierarchical translation tables
US7924914B2 (en) 2005-09-20 2011-04-12 Intel Corporation Dynamically configuring a video decoder cache for motion compensation
US20070180158A1 (en) * 2006-02-01 2007-08-02 International Business Machines Corporation Method for command list ordering after multiple cache misses
JP4733138B2 (ja) * 2006-03-31 2011-07-27 パナソニック株式会社 コマンド出力制御装置、コマンド出力制御方法およびプログラム
KR100764052B1 (ko) 2006-08-03 2007-10-08 삼성전자주식회사 유동적 어드레스 바운더리를 갖는 플래시 메모리 장치 및그것의 프로그램 방법
CN101202036B (zh) * 2006-12-11 2013-04-03 上海奇码数字信息有限公司 图像处理中的地址映射方法及采用该方法的图像处理装置
CN101207691B (zh) * 2006-12-18 2011-09-28 亚洲光学股份有限公司 扫描装置控制器
US8265169B2 (en) * 2006-12-29 2012-09-11 Intel Corporation Video block memory read request translation and tagging
CN101212674B (zh) * 2006-12-30 2011-05-04 上海奇码数字信息有限公司 图像在存储器中的地址映射方法
US20080168206A1 (en) * 2007-01-05 2008-07-10 Mark David Bellows Methods and Apparatus for Interfacing a Processor and a Memory
JP2008299438A (ja) * 2007-05-29 2008-12-11 Yamaha Corp メモリ制御装置
CN101324867B (zh) * 2007-06-16 2011-07-20 深圳市硅格半导体有限公司 基于半导体存储介质的数据管理装置及管理方法
JP4992114B2 (ja) * 2008-02-19 2012-08-08 エヌイーシーコンピュータテクノ株式会社 主記憶装置及び主記憶装置のアドレス制御方法
WO2010014696A1 (en) 2008-07-29 2010-02-04 Marvell World Trade, Ltd. Processing rasterized data
JP4840440B2 (ja) * 2008-12-24 2011-12-21 ソニー株式会社 画像処理装置およびその方法、並びにプログラム
WO2010086919A1 (ja) * 2009-01-27 2010-08-05 パナソニック株式会社 メモリアクセス装置およびその関連技術
WO2010136547A1 (en) * 2009-05-27 2010-12-02 Canon Kabushiki Kaisha Method and device for processing a digital signal
US20100325374A1 (en) * 2009-06-17 2010-12-23 Sun Microsystems, Inc. Dynamically configuring memory interleaving for locality and performance isolation
JP5556082B2 (ja) * 2009-08-07 2014-07-23 富士通株式会社 メモリコントローラ、画像処理システムおよびメモリアクセスの制御方法
JP5884037B2 (ja) 2011-03-16 2016-03-15 パナソニックIpマネジメント株式会社 データ処理装置、データ処理方法及びデータ共有システム
WO2013046258A1 (en) * 2011-09-28 2013-04-04 Hitachi, Ltd. Method for calculating tier relocation cost and storage system using the same
US9141556B2 (en) * 2012-08-18 2015-09-22 Qualcomm Technologies, Inc. System translation look-aside buffer with request-based allocation and prefetching
US10085016B1 (en) 2013-01-18 2018-09-25 Ovics Video prediction cache indexing systems and methods
US9396109B2 (en) * 2013-12-27 2016-07-19 Qualcomm Incorporated Method and apparatus for DRAM spatial coalescing within a single channel
US9940052B2 (en) * 2016-09-14 2018-04-10 Micron Technology, Inc. Memory device configuration commands
KR102540964B1 (ko) 2018-02-12 2023-06-07 삼성전자주식회사 입출력 장치의 활용도 및 성능을 조절하는 메모리 컨트롤러, 애플리케이션 프로세서 및 메모리 컨트롤러의 동작
CN112992251B (zh) * 2021-04-09 2022-05-17 长鑫存储技术有限公司 存储器地址测试电路、方法、存储器与电子设备

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000054924A (ko) * 1999-02-01 2000-09-05 윤종용 영상신호 처리장치의 메모리 어드레스 변환장치 및 방법

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3350043B2 (ja) * 1990-07-27 2002-11-25 株式会社日立製作所 図形処理装置及び図形処理方法
US6269174B1 (en) * 1997-10-28 2001-07-31 Ligos Corporation Apparatus and method for fast motion estimation
US6128717A (en) * 1998-01-20 2000-10-03 Quantum Corporation Method and apparatus for storage application programming interface for digital mass storage and retrieval based upon data object type or size and characteristics of the data storage device
US6356988B1 (en) * 1999-01-07 2002-03-12 Nec Corporation Memory access system, address converter, and address conversion method capable of reducing a memory access time
US6480539B1 (en) * 1999-09-10 2002-11-12 Thomson Licensing S.A. Video encoding method and apparatus
EP1109104A1 (en) * 1999-12-14 2001-06-20 Sun Microsystems, Inc. Deleting unused templates
US6629187B1 (en) * 2000-02-18 2003-09-30 Texas Instruments Incorporated Cache memory controlled by system address properties

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000054924A (ko) * 1999-02-01 2000-09-05 윤종용 영상신호 처리장치의 메모리 어드레스 변환장치 및 방법

Also Published As

Publication number Publication date
JP2004518343A (ja) 2004-06-17
US6819326B2 (en) 2004-11-16
EP1354484A1 (en) 2003-10-22
DE60238519D1 (de) 2011-01-20
KR20020086635A (ko) 2002-11-18
CN1220143C (zh) 2005-09-21
ATE491307T1 (de) 2010-12-15
CN1457607A (zh) 2003-11-19
WO2002056600A1 (en) 2002-07-18
EP1354484B1 (en) 2010-12-08
US20020135589A1 (en) 2002-09-26

Similar Documents

Publication Publication Date Title
KR100852084B1 (ko) 메모리 어드레스 변환 장치, 메모리 어드레스 변환 방법 및 이미지 처리 장치
CN1154366C (zh) 在sdram中记录一帧图象信号的方法
US7554874B2 (en) Method and apparatus for mapping memory
CN1189060A (zh) 将象素指定给存储序列以便压缩编码的方法
US10070134B2 (en) Analytics assisted encoding
US8010746B2 (en) Data processing apparatus and shared memory accessing method
US9201781B2 (en) Data processing apparatus, data processing method and data sharing system
Jaspers et al. Bandwidth reduction for video processing in consumer systems
EP2453360B1 (en) Method and apparatus for translating memory access address
JP2005518584A (ja) データ要素の格納方法
CN100356780C (zh) 用于压缩视频信号解码的图像存储方法
US10146679B2 (en) On die/off die memory management
US8264496B2 (en) Data management for image processing
EP2772049A1 (en) Multiple stream processing for video analytics and encoding
JP4983160B2 (ja) 動画像処理装置
US20130120419A1 (en) Memory Controller for Video Analytics and Encoding
KR20080023024A (ko) 비디오 데이터 저장 방법 및 장치
JP3011344B2 (ja) 画像処理装置
JP2007299211A (ja) メモリ制御装置

Legal Events

Date Code Title Description
PA0105 International application

Patent event date: 20020911

Patent event code: PA01051R01D

Comment text: International Patent Application

PG1501 Laying open of application
A201 Request for examination
PA0201 Request for examination

Patent event code: PA02012R01D

Patent event date: 20070110

Comment text: Request for Examination of Application

N231 Notification of change of applicant
PN2301 Change of applicant

Patent event date: 20070907

Comment text: Notification of Change of Applicant

Patent event code: PN23011R01D

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20080228

Patent event code: PE09021S01D

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 20080729

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20080806

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20080806

End annual number: 3

Start annual number: 1

PG1601 Publication of registration
PR1001 Payment of annual fee

Payment date: 20110822

Start annual number: 4

End annual number: 4

FPAY Annual fee payment

Payment date: 20120727

Year of fee payment: 5

PR1001 Payment of annual fee

Payment date: 20120727

Start annual number: 5

End annual number: 5

FPAY Annual fee payment

Payment date: 20130729

Year of fee payment: 6

PR1001 Payment of annual fee

Payment date: 20130729

Start annual number: 6

End annual number: 6

FPAY Annual fee payment

Payment date: 20140730

Year of fee payment: 7

PR1001 Payment of annual fee

Payment date: 20140730

Start annual number: 7

End annual number: 7

PR1001 Payment of annual fee

Payment date: 20150630

Start annual number: 8

End annual number: 8

FPAY Annual fee payment

Payment date: 20160629

Year of fee payment: 9

PR1001 Payment of annual fee

Payment date: 20160629

Start annual number: 9

End annual number: 9

FPAY Annual fee payment

Payment date: 20180628

Year of fee payment: 11

PR1001 Payment of annual fee

Payment date: 20180628

Start annual number: 11

End annual number: 11

FPAY Annual fee payment

Payment date: 20190624

Year of fee payment: 12

PR1001 Payment of annual fee

Payment date: 20190624

Start annual number: 12

End annual number: 12

PR1001 Payment of annual fee

Payment date: 20200624

Start annual number: 13

End annual number: 13

PC1903 Unpaid annual fee

Termination category: Default of registration fee

Termination date: 20220517