KR0171845B1 - 메모리장치의 주소 변환방법 및 회로 - Google Patents

메모리장치의 주소 변환방법 및 회로 Download PDF

Info

Publication number
KR0171845B1
KR0171845B1 KR1019950042979A KR19950042979A KR0171845B1 KR 0171845 B1 KR0171845 B1 KR 0171845B1 KR 1019950042979 A KR1019950042979 A KR 1019950042979A KR 19950042979 A KR19950042979 A KR 19950042979A KR 0171845 B1 KR0171845 B1 KR 0171845B1
Authority
KR
South Korea
Prior art keywords
address
memory
image
pixel
row
Prior art date
Application number
KR1019950042979A
Other languages
English (en)
Other versions
KR970029101A (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 김광호
Priority to KR1019950042979A priority Critical patent/KR0171845B1/ko
Publication of KR970029101A publication Critical patent/KR970029101A/ko
Application granted granted Critical
Publication of KR0171845B1 publication Critical patent/KR0171845B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/0292User address space allocation, e.g. contiguous or non contiguous base addressing using tables or multilevel address translation means
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/39Control of the bit-mapped memory
    • G09G5/393Arrangements for updating the contents of the bit-mapped memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Image Input (AREA)
  • Memory System (AREA)

Abstract

1. 청구범위에 기재된 발명이 속한 기술분야
메모리장치에 있어서 이용방법에 관한 것으로, 특히 화상을 저장하는 메모리의 이용에 있어 메모리의 저장영역을 효율적으로 사용이 쉽게 하기 위한 메모리장치의 주소변환방법 및 회로에 관한 것임.
2. 발명이 해결하려고 하는 기술적 과제
어드레스 전환 기법을 이용하여 화상의 논리적 어드레스(line address, pixel address)를 실제 메모리 공간상의 어드레스(row, column address)로 변환하되, 메모리의 사용을 극대화 하기 위한 어드레스 변환 방법 및 회로를 제공함.
3. 발명의 해결방법의 요지
상기 화상의 가로와 세로주소를 받아 저장하고, 세로주소를 미리 입력시킨 룩업테이블에 인가하여 화상의 한 라인의 시작점인 메모리의 실제 주소를 받고, 룩업테이블의 출력인 한 라인의 시작점 실제 주소와 가로주소의 일부를 더하여 화소의 정확한 주소의 상위부분을 얻고, 위에서 얻은 실제 주소의 사위부분과 가로주소 중 위의 덧셈에 사용되지 않은 하위의 비트들을 모아 메모리의 실제 주소를 완성하고, 완성된 실제주소를 디램에 입력할 수 있는 형태인 로우 어드레스와 칼럼 어드레스로 분리하는 것을 특징으로 하는 메모리장치의 주소변환 방법 및 회로.
4. 발명의 중요한 용도
메모리 장치의 주소변환 방법 및 회로

Description

메모리장치의 주소 변환 방법 및 회로
제1도는 일반적인 논리주소의 사용 예시도.
제2도는 종래의 화상의 구성예시도.
제3도는 종래의 또 다른 화상의 구성예시도.
제4도는 종래의 화상메모리를 비효율적으로 사용한 예시도.
제5도는 본 발명의 실시예에 따른 회로도.
본 발명은 메모리장치에 있어서 이용회로에 관한 것으로, 특히 화상을 저장하는 메모리의 이용에 있어 메모리의 저장영역을 효율적으로 사용토록 하는 메모리 장치의 주소 변환 방법 및 회로에 관한 것이다.
일반적으로 메모리를 사용함에 있어 가상주소(Virtual Address)와 실제주소(Physical Address)가 있다. 상기 가상주소는 메모리공간의 논리적인 주소이고, 실제주소는 메모리 소자를 억세스하게 되는 실제주소이다. 제1도를 참고로 하여 예를들어 설명하면, 1Mbyte의 메모리공간(000000h-FFFFFFh)이 있다고 가정할 때 이것을 64Kbyte씩(0000h-FFFFh)나누어 0부터 F(15)까지 16진수로 표시를 하여 사용하면, 16개의 64Kbyte의 메모리공간을 필요로 하게 된다. 여기서 3번째 메모리 공간의 0123h 번지를 억세스할 때 논리주소는 3,0123h가 된다. 상기 어드레스로 메모리를 억세스하려면 실제로는 030123h의 주소를 주어야 하며, 이것이 실제 어드레스가 된다. 이상은 아주 간단한 예에 지나지 않는다. 실제로 더 다양하게 메모리의 가상주소를 만들어 사용할 수 있다. 이렇게 가상주소를 만들어 사용하는 가장 큰 이유는 메모리 공간을 좀더 논리적으로 사용할 수 있기 때문이다. 실제 프로그램을 할 때 실제의 주소를 하나 하나를 계산하면서 프로그램하면 효율성이 떨어진다. 상기 메모리를 논리적인 공간에서 파악하여 프로그램 한다면 사용하기가 쉬울 것이며, 상기 가상주소를 실제 주소로 변형하는 방법은 퍼스널 컴퓨터등의 시스템에 많이 이용되고 있다. 상기 퍼스널 컴퓨터의 프로그램에서 메모리의 사용 공간을 논리적으로 파악하고, 외부에 논리주소를 실제주소로 변형하는 방법을 사용하는 방법에 의해 메모리의 사용 효율성을 높이도록 하고 있다. 이와 관련된 종래기술로 미합중국 특허 5, 343, 652가 있다. 상기 미합중국 특허 5, 343, 652은 주소변환기능을 갖는 어드레스 관리에 관한 특허로서, 여기서 주소변환방법은 룩업 테이블(look up-table)을 사용하지만 덧셈기를 사용하지 않으며, 상기 룩업 테이블에 인가되는 신호로 주소 신호선이 아닌 제어신호선만 입력된다. 한편, 미합중국 특허 5, 367, 317는 화상표시 장치에 관한 것이며, 상기 주소변환장치를 사용한 방법의 한 예이다. 여기서 사용된 주소변환장치는 두 개의 주소중 하나를 선택하는 기술이며, 이 기술에서 화상데이타를 저장함에 있어서 화상데이타의 한 화소는 가로와 세로의 값에 따라 각각의 위치를 갖게 된다. 이는 제2도와 같이 각각 가로주소(horizontal address), 세로주소(virtical address)를 이용하면 화상의 한 화소를 정확하게 억세스 할 수 있다. 그런데 일반적으로 사용되고 있는 DRAM의 특징은 로우 어드레스(row address)와 칼럼 어드레스(colum address)로 억세스된다. 이것은 마치 화상의 가로주소, 세로주소와 유사하나 제3도에서와 같이 실제 화상의 크기는 DRAM의 어드레스 공간과는 다르다. 예를들어, 4Mbyte의 DRAM인 경우 로우(Row), 칼럼(column)은 각각 11비트로 가로 또는 세로 2048비트의 어드레스 공간을 갖는다. 상기 제3도에 나타난 A4의 화상을 어드레스의 변환없이 가로주소, 세로주소를 칼럼어드레스와 로우어드레스로 대응시켜 적용하면 아래의 제4도와 같이 로우, 칼럼 각각 6134×4096비트의 메모리 공간을 필요로 하게 되어 해당 화소수 이외의 공간은 사용하지 않은 낭비되는 공간이다. 그리고 종래에 사용된 논리주소를 실제 주소로 변환하는 방법은 룩업 테이블을 이용한 방법이거나 또는 두 개의 주소를 단순히 합한 형태이다. 상기 전자의 룩업 테이블 방식은 메모리의 양이 적은 경우에 사용이 가능하나, 화상의 메모리와 같이 메모리의 양이 큰 경우에는 룩 업 테이블이 켜져 실제 사용이 불가능하다. 그리고 두 개의 주소 공간을 단순히 합하는 형태는 제4도와 같이 사용하는 방법이 되므로 메모리를 효율적으로 사용하는 방법은 아니다.
따라서 본 발명의 목적은 어드레스 전환기법을 이용하여 화상의 논리적 어드레스(line address, pixel address)를 실제 메모리 공간상의 어드레스(row, column address)로 변환하되, 메모리의 사용을 극대화 하기 위한 어드레스 변환 방법 및 회로를 제공함에 있다.
본 발명의 다른 목적은 화상의 저장을 목적으로 하는 메모리에 대해 효율적으로 주소변환을 시키는 방법 및 회로를 제공함에 있다.
상기 목적을 수행하기 위한 본 발명은 13비트데이타에 대해 클럭으로 카운트하여 세로에 대한 라인지점 주소발생과 상기 라인주소를 증가시키는 비트라인 카운터/래치와, 11비트데이타에 대해 클럭으로 카운트하여 가로에 대한 화소지정주소발생과 상기 화소주소를 증가시키는 비트 픽셀 카운터/래치와, 상기 비트라인 카운터/래치의 출력을 받아 실제 메모리주소의 상위 16비트를 발생하는 물리적 어드레스 룩 업테이블부와, 상기 물리적 어드레스 룩 업테이블부의 출력(16비트)의 라인주소와 상기 비트픽셀카운터/래치의 출력(4비트)의 화소주소를 더하여 실제로 사용할 정확한 주소를 계산해내는 가산부와, 상기 가산부의 출력으로부터 메모리의 정확한 실제 주소인 로우, 칼럼어드레스와 뱅크선택신호를 발생하는 N비트 물리적 어드레스 카운터/래치와, 상기 N비트 물리적 어드레스 카운터/래치에서 발생되는 칼럼 또는 로우어드레스를 선택하는 로우/칼럼 선택부로 구성됨을 특징으로 한다.
이하 본 발명을 첨부된 도면을 참조하여 상세히 설명한다.
제5도는 본 발명에 따른 실시예 회로도로서, 13비트 데이터에 대해 클럭으로 카운트하여 세로에 대한 라인지점 주소발생과 상기 라인주소를 증가시키는 비트 라인카운터/래치(100)와, 11비트데이타에 대해 클럭으로 카운트하여 가로에 대한 화소지정주소발생과 상기 화소주소를 증가시키는 비트 픽셀 카운터/래치(110)와, 상기 비트 라인 카운터/래치(100)의 출력을 받아 실제 메모리주소의 상위 16비트를 발생하는 물리적 어드레스 룩 업테이블부(200)와, 상기 물리적 어드레스 룩 업테이블부(200)의 출력(16비트)의 라인주소와 상기 비트픽셀카운터/래치(110)의 출력(4비트)의 화소주소와 더하여 실제로 사용될 정확한 주소를 계산하는 가산부(300)와, 상기 가산부(300)의 출력으로부터 메모리의 정확한 실제 주소인 로우, 칼럼 어드레스와 뱅크 선택 신호를 발생하는 N비트 물리적 어드레스 카운터/래치(400)와, 상기 N비트 물리적 어드레스 카운터/래치(400)에서 발생되는 칼럼 또는 로우 어드레스를 선택하는 로우/칼럼선택부(500)로 구성된다.
따라서 본 발명의 구체적 일 실시예를 제1-5도를 참조하여 상세히 설명하면, 자연색(천연색)의 A3사이즈의 400dpi 화상을 저장하는 경우 사용되는 메모리의 양은 약 96Mbyte이다. 이는 상술한 바와 같이 가로주소, 세로주소를 칼럼어드레스와 로우어드레스와 대응시켜 적용하면 상기 제4도와 같이 어드레스 공간을 많이 필요로 한다. 원래 화상에서 한 라인은 4677화소로 두 번째 라인의 첫 번째 화소는 4678번째가 된다. 따라서 메모리에서는 4678번지가 되어야 한다. 상기와 같이 메모리를 사용하여야만 남는 공간없이 사용할 수 있다. 하지만 이것은 간단한 문제가 아니다. 예를들어, 200번째 라인의 1000번째 화소를 읽고 싶다고 할 경우 메모리에는 E49D0h(200×677+100=936400)번지를 주어야 한다. 이러한 방법으로 일반적으로(논리적으로) 사용하는 화소의 번지에서 실제 메모리의 번지를 계산하는 일은 번거로운 일이다. 만약, 중앙처리장치(CPU)가 메모리를 억세스 할 때 마다 화상의 논리주소에서 실제 메모리의 주소를 계산한다면 화상을 읽거나 쓰는 시간보다 어드레스를 계산하는데 더 많은 시간이 소요될 것이다. 따라서 어드레스 변환 로직을 하드웨어(H/W)로 구현한다. 상기 주소변환을 H/W로 하는 방법은 여러 가지 있을 수 있다. 하나의 곱셈기와 하나의 덧셈기를 사용하면 위의 방법을 쉽게 구현할 수 있다. 하지만 곱셈기는 입력되는 데이타의 비트수에 따라 로직이 커진다. 상기 필요한 곱셈기는 13비트×13비트의 로직으로 구현시 매우 크다. 이 방법 외에 실제 어드레스를 룩업 테이블을 이용하여 찾을 수 있다. 가로주소, 세로주소를 주면 실제 어드레스를 찾도록 룩업 테이블을 구성하는 것이다. 상기 예에서 룩업 테이블을 사용한다면 13bit×13bit 즉, 64Mbyte의 룩업테이블용 메모리가 필요하다. 상기 메모리의 크기는 화상을 저장하는데 필요한 메모리의 양과 같다. 상기한 두가지의 방법은 다소 문제가 있으므로 이 두가지 방법을 절충한 방법을 본 발명에서는 사용한다.
본 발명은 제5도를 참조하여 설명되어 질것이며, 비트라인 키운터/래치(100)와 비트픽셀카운터/래치(110)는 각각 라인(세로)과 화소(가로)주소를 저장하고, 필요에 따라 주소를 증가시키며, 물리적 어드레스 룩 업테이블부(200)는 상기 비트라인 카운터/래치(100)의 세로주소(라인주소) 13비트를 받아 실제 메모리 주소의 상위 16비트를 출력한다. 상기 물리적 어드레스 룩 업테이블부(200)의 룩 업 테이블에 입력되어 있는 메모리의 실제 주소는 미리 계산된 라인의 시작번지이다. 상기의 주소 계산식에서 곱셈기가 필요한 부분에 이 룩업테이블을 사용한다. 이렇게 할 경우 필요한 룩 업 테이블은 세로 어드레스의 크기와 같은 약 8Kbyte만 있으면 된다. 300은 가산부로 상기 물리적 어드레스 룩업 테이블부(200)의 라인의 시작주소와 상기 비트 픽셀 카운터/래치(110)의 화소주소를 더하여 실제로 사용할 정확한 주소를 계산한다. 상기 물리적 어드레스 룩업 테이블부(200)에서 출력된 주소는 한 라인의 시작주소이므로 여기에 지정된 화소의 주소를 더하여야 메모리의 정확한 실제 주소를 찾을 수 있다. 상기 가산부(300)의 출력값과 비트 픽셀 카운터/래치(110)의 하위 비트를 모아 비트 물리적 어드레스 카운터/래치(400)에서 메모리의 실제주소인 뱅크선택, 칼럼/로우 어드레스를 발생한다. 상기 비트 물리적 어드레스 카운터/래치(400)의 실제주소는 다시 로우/칼럼선택부(500)에서 로우 어드레스와 칼럼 어드레스로 분리되어 메모리를 억세스하게 된다.
본 발명의 예에서는 가산부(300)의 크기를 줄이기 위해 어드레스 공간을 우선 512byte 단위로 분할한다. 즉 한라인의 크기는 512byte의 배수가 되는 것이다. A3 사이즈 400dpi의 크기인 경우 화상의 가로크기는 4677 화소이다. 따라서 이때 필요한 어드레스 공간으로 512의 10배수인 5120이다. 한 라인의 크기를 5120byte로 고정을 한다. 이렇게 할 경우 25bit의 가산부(300)에서 16비트만 있으면 로직의 크기를 줄일 수 있다. 그리고 룩 업 테이블의 비트수를 25비트에서 16비트로 줄일 수 있고, 룩업 테이블용 메모리를 줄일 수 있다. 이렇게 해서 출력된 16비트의 실제 어드레스는 가산부(300)에서 가로 주소값과 더해진다. 이때 룩 업 테이블 출력값 아래 4비트와 가로주소 값 상위 4비트는 서로 겹친다. 이 부분은 가산부(300)에서 더해지고, 가로주소의 아래 7비트는 실제 주소에 직접 사용된다.
상술한 바와 같이 본 발명은 어드레스 전환기법을 이용하여 화상의 논리적 어드레스(line adress, pixel address)를 실제 메모리 공간상의 어드레스(row, column address)로 변환하되, 메모리의 사용을 극대화 하고, 화상용 메모리의 사용을 용이하게 하고 메모리를 효율적으로 사용할 수 있도록 하는 이점이 있다.

Claims (2)

  1. 화상을 저장하는 메모리의 논리적 주소를 실제 주소로 변환하는 변환회로에 있어서, 상기 화상 N비트 데이터에 대해 클럭으로 카운트하여 세로에 대한 라인지정 주소발생과 상기 라인주소를 증가시키는 비트라인 카운터/래치(100)와, 상기 화상의 소정비트 데이터에 대해 클럭으로 카운트하여 가로에 대한 화소 지정 주소발생과 상기 화소주소를 증가시키는 비트픽셀 카운터/래치(110)와, 상기 비트라인 카운터/래치(100)의 출력을 받아 실제 메모리 주소의 상위소정의 비트를 발생하는 물리적 어드레스 룩 업테이블부(200)와, 상기 물리적 어드레스 룩 업테이블부(200)의 출력(16비트)의 라인주소와 상기 비트 픽셀 카운터/래치(110)의 출력(4비트)의 화소주소를 더하여 실제로 사용할 정확한 주소를 계산하는 가산부(300)와, 상기 가산부(300)의 출력으로부터 메모리의 정확한 실제 주소인 로우 칼럼 어드레스와 뱅크선택신호를 발생하는 N비트 물리적 어드레스 카운터/래치(400)와, 상기 N비트 물리적 어드레스 카운터/래치(400)에서 발생되는 칼럼 또는 로우 어드레스를 선택하는 로우/칼럼선택부(500)로 구성됨을 특징으로 하는 메모리의 주소변환회로.
  2. 화상을 저장하는 메모리의 논리적 주소를 실제 주소로 변환하는 방법에 있어서, 상기 화상의 가로와 세로주소를 받아 저장하고, 세로주소를 미리 입력시킨 룩업 테이블에 인가하여 화상의 한 라인의 시작점인 메모리의 실제 주소를 받는 제1과정과, 상기 제1과정에서 룩업 테이블의 출력인 한 라인의 시작점 실제 주소와 가로 주소의 일부를 더하여 화소의 정확한 주소의 상위부분을 얻는 제2과정과, 상기 제2과정에서 얻은 실제 주소의 상위부분과 가로주소중 위의 덧셈에 사용되지 않은 하위의 비트들을 모아 메모리의 실제 주소를 완성하는 제3과정과, 상기 제3과정에서 상기 완성된 실제주소를 디램에 입력할 수 있는 형태인 로우 어드레스와 칼럼 어드레스로 분리하는 제4과정으로 구성됨을 특징으로 하는 메모리장치의 주소 변환방법.
KR1019950042979A 1995-11-22 1995-11-22 메모리장치의 주소 변환방법 및 회로 KR0171845B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019950042979A KR0171845B1 (ko) 1995-11-22 1995-11-22 메모리장치의 주소 변환방법 및 회로

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019950042979A KR0171845B1 (ko) 1995-11-22 1995-11-22 메모리장치의 주소 변환방법 및 회로

Publications (2)

Publication Number Publication Date
KR970029101A KR970029101A (ko) 1997-06-26
KR0171845B1 true KR0171845B1 (ko) 1999-03-30

Family

ID=19435232

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019950042979A KR0171845B1 (ko) 1995-11-22 1995-11-22 메모리장치의 주소 변환방법 및 회로

Country Status (1)

Country Link
KR (1) KR0171845B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100924303B1 (ko) * 2008-02-22 2009-11-02 인하대학교 산학협력단 메모리 어드레스의 모니터링 방법 및 장치

Also Published As

Publication number Publication date
KR970029101A (ko) 1997-06-26

Similar Documents

Publication Publication Date Title
US6381668B1 (en) Address mapping for system memory
US5247632A (en) Virtual memory management arrangement for addressing multi-dimensional arrays in a digital data processing system
US5966116A (en) Method and logic system for the rotation of raster-scan display images
US5815168A (en) Tiled memory addressing with programmable tile dimensions
US4598372A (en) Apparatus and method of smoothing MAPS compressed image data
US4601018A (en) Banked memory circuit
JPH077260B2 (ja) 画像データ回転処理装置及びその方法
US4296468A (en) Address conversion unit for data processing system
EP0530682B1 (en) Method and system for addressing a very large memory
KR0171845B1 (ko) 메모리장치의 주소 변환방법 및 회로
US6560686B1 (en) Memory device with variable bank partition architecture
JP3413344B2 (ja) 画像演算処理装置およびその動作方法
US5841446A (en) Method and apparatus for address mapping of a video memory using tiling
JP3741464B2 (ja) Dramアクセス方法
JPS6015688A (ja) メモリ・チツプ・アドレス装置
JPH05108812A (ja) 画像回転処理装置
JP3139384B2 (ja) 画像処理装置
KR100215903B1 (ko) 메모리의리드/라이트회로
JPH043874B2 (ko)
JP2708841B2 (ja) ビットマップメモリの書き込み方法
JPS61219082A (ja) 表示制御装置
JP2679219B2 (ja) 表示装置
JPS62175879A (ja) 2値画像相以変換画素デ−タ発生装置
JPH01321573A (ja) 画像データ変換回路
JPH08147210A (ja) ビットマップメモリ装置

Legal Events

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

Payment date: 20050929

Year of fee payment: 8

LAPS Lapse due to unpaid annual fee