KR0154199B1 - 데이터 메모리 억세스 장치 - Google Patents

데이터 메모리 억세스 장치

Info

Publication number
KR0154199B1
KR0154199B1 KR1019950024131A KR19950024131A KR0154199B1 KR 0154199 B1 KR0154199 B1 KR 0154199B1 KR 1019950024131 A KR1019950024131 A KR 1019950024131A KR 19950024131 A KR19950024131 A KR 19950024131A KR 0154199 B1 KR0154199 B1 KR 0154199B1
Authority
KR
South Korea
Prior art keywords
word
data
unit
control
address
Prior art date
Application number
KR1019950024131A
Other languages
English (en)
Other versions
KR970012158A (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 KR1019950024131A priority Critical patent/KR0154199B1/ko
Publication of KR970012158A publication Critical patent/KR970012158A/ko
Application granted granted Critical
Publication of KR0154199B1 publication Critical patent/KR0154199B1/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/04Addressing variable-length words or parts of words
    • 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

Landscapes

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

Abstract

본 발명은 데이터 처리장치에서 데이터 메모리를 이용한 신호 처리를 수행하고자 할 경우 사용되는 데이터의 특성에 따라 데이터 워드의 Word Width를 가변적으로 사용할 수 있도록 하여 데이터 메모리 필요량을 저감하고 효율적인 데이터 메모리의 관리가 가능하도록 데이터 메모리 억세스 장치에 관한 것이다
이러한 본 발명은 제어수단의 제어에 의해 각종 산술 연산 및 논리 연산을 수행하는 연산수단과; 알고리즘을 수행하고자 하는 대상신호를 입력받는 역할과 처리된 결과 신호를 출력하는 역할을 수행하는 입출력수단과; 외부로부터 인가되는 논리적 어드레스에 따라 저장되거나 판독하려는 데이터 워드의 워드 위드를 판별하고 외부로부터 인가되는 장치제어 신호에 따라 각부에 제어신호를 인가하는 제어부와, 입력되는 논리적 어드레스로부터 워드 위드와 같은 제어정보를 제어부에 인가하는 룩-업 테이블부와, 입력되는 논리적 어드레스로부터 실제 데이터 워드가 저장되어 있는 물리적 어드레스를 연산하는 어드레스 변환부와, 실제 데이터 워드를 저장하는 메모리부와, 제어부의 제어에 따라 적합한 워드 위드로 구성된 데이터 워드를 메모리부에 저장하거나 인출하여 출력하는 입출력부를 포함하는 내부기억장치; 알고리즘에 따라 연산수단과 입출력수단 및 내부 기억장치를 제어하여 원하는 동작이 수행되도록 제어신호를 발생시키는 제어수단으로 이루어진다.

Description

데이터 메모리 억세스 장치
제1도는 일반적인 데이터 메모리 억세스 장치 구성도.
제2도는 종래 기억장치의 구성도.
제3도는 종래 데이터 저장 영역 포맷도.
제4도는 종래 데이터 워드의 분할 일예도.
제5도는 본 발명에 의한 데이터 메모리 억세스 장치 구성도.
제6도는 제5도의 내부 기억장치 상세구성도.
제7도는 본 발명에서 논리적 어드레스 구성 일예도.
제8도는 제5도의 룩-업 테이블 구성일예도.
제9도는 본 발명에서 데이터 블록 구성 일예도.
제10도는 본 발명에서 데이터 블록의 기억회로부내 위치 할당 일예도.
제11도는 제5도의 어드레스 변환부 상세구성도.
제12도는 제5도의 어드레스 변환부 다른 실시예도.
* 도면의 주요 부분에 대한 부호의 설명
11 : 내부 기억 장치 11a : 제어부
11b : 룩-업 테이블부 11c : 어드레스 변환부
11d : 메모리부 11e : 입출력부
본 발명은 디지털 신호 처리기(Digital Signal Processor : 이하 DSP라 칭한다)와 같은 데이터 처리장치, 특히 음장 처리 장치와 같은 데이터 처리장치에서 데이터 메모리를 이용한 신호 처리를 수행하고자 할 경우 사용되는 데이터의 특성에 따라 데이터 워드의 워드 위드(Word Width)를 가변적으로 사용할 수 있도록 하여 데이터 메모리 필요량을 저감하고 효율적인 데이터 메모리의 관리가 가능하도록 한 데이터 메모리 억세스 장치에 관한 것이다.
종래의 데이터 처리장치, 특히 DSP 장치의 경우 제1도와 같이, 데이터 처리장치(1)와, 외부 기억 장치(2)로 구성되고, 데이터 처리장치(1)는 연산부(3)와, 내부 기억장치(4)와, 입출력부(5)와, 제어부(6)로 구성되었다.
이러한 일반적인 데이터 처리장치의 동작은 다음과 같다.
연산부(3)는 각종 산술 연산 및 논리 연산을 수행하고, 제어부(6)는 내장된 알고리즘 또는 기타의 방법에 의하여 탑재된 알고리즘등에 따라 각 장치들을 제어하여 원하는 동작이 수행되도록 제어신호를 발생시킨다.
입출력부(5)는 알고리즘을 수행하고자 하는 대상신호, 즉 음향 신호등과 같은 입력신호를 입력받는 역할과 처리된 결과 신호를 출력하는 역할을 수행한다.
이때 내부 기억장치(4)는 알고리즘, 계수 및 빈번하게 사용되는 데이터를 기억, 저장하는 역할을 수행하며, 다른 장치와 대등하게 고속으로 동작하여 다른 장치의 동작속도를 저해하지 않도록 구성된다.
그러나 음장 처리와 같이 매우 큰 분량의 데이터를 처리해야하는 응용 분야에서 이러한 대량의 데이터를 모두 그대로 저장할 수 있을 정도로 용량이 크고, 다른 장치의 동작 속도를 저해하지 않을 정도로 구속의 기억 장치를 데이터 처리 장치(1)내부에 구성하는 것은 비용 측면과 실현 가능성 측면에서 매우 불리하다.
따라서 종래의 기술에서는 빈번하게 사용되는 소량의 정보만을 기억하기 위해 사용할 수 있는 소량의 내부 기억장치(4)를 데이터 처리장치(1) 내부에 내장하도록 하고, 데이터 처리장치(1)의 외부에 별도의 외부 기억장치(2)를 연결하여 큰 분량의 데이터는 외부 기억 장치(2)에 저장하는 방법을 일반적으로 사용해왔다.
이러한 일반적인 데이터 처리장치에 있어서, 종래의 내부 기억장치 및 외부 기억장치의 구성은 제2도와 같다.
도시된 바와 같이, 데이터가 저장될 어드레스를 입력받아 그에 따른 특정 어드레스를 지정하는 신호를 발생시키는 어드레스 입력부(7)와, 데이터의 기록 또는 출력등을 제어하기 위하여 기억장치(2 또는 4)에 인가되는 제어신호를 입력받아 그에 따른 동작이 수행되도록 신호를 발생시키는 제어부(8)와, 데이터를 저장하는 메모리부(9)와, 제어부(8)로 부터의 제어신호에 따라 입력된 데이터를 메모리부(9)에 저장하거나 메모리부(9)에 저장된 데이터를 인출하여 출력하는 입출력부(10)로 구성된다.
이러한 구성에서 데이터를 저장하는 영역은 제3도에서와 같이, 데이터 저장영역(C)의 위치를 나타내는 어드레스(A)와, 동일한 위치에 동시에 저장될 수 있는 비트수를 의미하는 데이터 위드(data width)(B)로 표현될 수 있는 가상적인 2차원 공간이다.
이와 같은 구성에서 의미를 가지는 최소의 데이터 크기, 즉 한 데이터 워드의 데이터 위드가 n비트일 경우 데이터 위드는 n비트 이상이 되어야 하나의 기억 공간에 하나의 데이터 워드를 저장하는 것이 가능하다.
만약, 워드 위드가 n비트이고 데이터 위드가 n비트 미만인 경우에는 하나 이상의 기억 공간을 이용해야만 하나의 데이터 워드를 저장하는 것이 가능하다.
데이터 위드가 워드보다 작을 경우 데이터를 저장하는 방법의 일예는 다음과 같다.
데이터 위드가 n비트이고, 워드 위드가 m*n 비트일 경우 제4도에서와 같이 하나의 데이터 워드(D)를 저장하기 위해서는 m개의 기억 공간(E)이 필요하다.
따라서 하나의 데이터 워드(D)는 m개의 부분으로 나뉘어 연속 혹은 분산된 형태로 m개의 기억 공간에 각각 저장되며, 모든 데이터가 각각 m개의 기억공간을 필요로 할 경우에는 사용할 수 있는 어드레스 범위가 메모리부의 원래의 어드레스 범위의 1/m이 된다.
이와 같은 방법을 통하여 데이터가 저장되는 장치에서 저장 또는 읽어내고자 하는 위가 x라고 할 때 실제 기억장치에는 x*m의 결과가 실제의 어드레스로 사용된다.
데이터를 저장하고 다시 읽어내는 기능과 아울러 시간 지연을 구현해야 할 경우 이를 구현하는 한 방법으로는 시간 지연을 하고자 하는 단위 시간, 즉 샘플링 주기 T마다 저장된 모든 데이터를 하나 또는 m개씩 쉬프트하는 방법이 있을 수 있다.
이와 다른 방법으로는 저장 또는 읽어내고자 하는 어드레스A에 별도의 베이스 어드레스 Ab를 더한 새로운 어드레스 An(An = A + Ab)를 실제 저장 또는 읽어내는 어드레스로 사용하되 매 샘플링 주기 T마다 베이스 어드레스 Ab를 하나씩 감소시킴으로서 시간 지연 효과를 구현하는 방법이 있다.
이때, m개의 기억 공간(E)이 하나의 데이터 워드를 저장하도록 구성된 기억장치에서는 (A + Ab)*m이 기억 장치에 인가되는 실제 어드레스가 된다.
그러나 이와 같은 종래의 데이터 처리장치는 외부 기억장치로 DRAM 또는 SRAM등과 같은 기억소자를 이용하게 되는데, 이러한 기억소자의 동작속도는 데이터 처리 장치의 처리속도에 비하여 상대적으로 느리므로 외부 기억장치로부터 데이터를 읽거나 기록할 경우 데이터 처리장치는 대기 상태로 기다려야 하는 경우가 발생하므로 데이터 처리 속도가 지연되는 문제점이 있었다.
또한, 음장 제어(Sound Field Control) 또는 음장 재생(Sound Field Reproduction)과 같은 응용 분야의 경우에는 대량의 데이터 처리를 필요로 하는데, 음향 데이터를 기록, 저장 하거나 이러한 신호에 대하여 지연 기능을 구현하기 위하여 수백 Kbits 또는 수 Mbits정도의 대량의 기억 소자가 필요하다는 문제점도 있었다.
일예로서, 44.1KHZ의 샘플링 주파수에서 한 워드당 16비트를 할당하는 경우 1초에 해당하는 신호를 저장하기 위해서는 44100워드, 즉 705600비트의 기억 용량이 필요하며, 다채널 신호처리에 사용하기 위해서는 보다 큰 기억 용량을 필요로 하게 되는 것이다.
따라서 본 발명은 상기와 같은 종래 데이터 처리장치의 제반 문제점을 해결하기 위한 것으로서, 본 발명의 목적은 음장 처리 장치와 같은 데이터 처리장치에서 데이터 메모리를 이용한 신호 처리를 수행하고자 할 경우 사용되는 데이터의 특성에 따라 데이터 워드의 워드 위드를 가변적으로 사용할 수 있도록 하여 데이터 메모리 필요량을 저감하고 효율적인 데이터 메모리의 관리가 가능하도록 데이터 메모리 억세스 장치를 제공하는데 있다.
이러한 본 발명의 목적을 달성하기 위한 기술적 수단은 제어수단의 제어에 의해 각종 산술 연산 및 논리 연산을 수행하는 연산수단과; 알고리즘을 수행하고자 하는 대상신호를 입력받는 역할과 처리된 결과 신호를 출력하는 역할을 수행하는 입출력수단과, 알고리즘에 따라 상기 연산수단과 입출력수단을 제어하여 원하는 동작이 수행되도록 제어신호를 발생시키는 제어수단과; 외부로부터 인가되는 논리적 어드레스에 따라 저장되거나 판독하려는 데이터 워드의 워드 위드를 판별하고 외부로부터 인가되는 장치 제어신호에 따라 각부에 제어신호를 인가하는 제어부와, 입력되는 논리적 어드레스로부터 워드 위드와 같은 제어정보를 상기 제어부에 인가하는 룩-업 테이블부와, 입력되는 논리적 어드레스로부터 실제 데이터 워드가 저장되어 있는 물리적 어드레스를 연산하는 어드레스 변환부와, 실제 데이터 워드를 저장하는 메모리부와, 상기 제어부의 제어에 따라 적합한 워드 위드로 구성된 데이터 워드를 상기 메모리부에 저장하거나 인출하여 출력하는 입출력부로 이루어진 내부기억장치로 이루어진다.
이하, 본 발명은 첨부한 도면에 의거 상세히 설명하면 다음과 같다.
제5도는 본 발명에 의한 데이터 메모리 억세스 장치 구성도이다.
도시된 바와 같이, 본 발명에 의한 데이터 처리장치는 제어부(6)의 제어에 의해 각종 산술 연산 및 논리 연산을 수행하는 연산부(3)와; 알고리즘을 수행하고자 하는 대상신호를 입력받는 역할과 처리된 결과 신호를 출력하는 역할을 수행하는 입출력부(5)와, 외부로부터 인가되는 논리적 어드레스에 따라 저장되거나 판독하려는 데이터 워드의 워드 위드를 판별하고 외부로부터 인가되는 장치 제어신호에 따라 각부에 제어신호를 인가하는 제어부(11a)와, 입력되는 논리적 어드레스로부터 워드 위드와 같은 제어정보를 상기 제어부(11a)에 인가하는 룩-업 테이블부(11b)와, 입력되는 논리적 어드레스로부터 실제 데이터 워드가 저장되어 있는 물리적 어드레스를 연산하는 어드레스 변환부(11c)와, 실제 데이터 워드를 저장하는 메모리부(11d)와, 상기 제어부(11a)의 제어에 따라 적합한 워드 위드로 구성된 데이터워드를 상기 메모리부(11a)에 저장하거나 인출하여 출력하는 입출력부(11e)를 포함하는 내부기억 장치(11)와, 알고리즘에 따라 상기 연산부(3)와 입출력부(5) 및 내부 기억장치(11)를 제어하여 원하는 동작이 수행되도록 제어신호를 발생시키는 제어부(6)로 구성되었다.
이와 같이 구성된 본 발명에 의한 데이터 처리장치의 작용 및 효과를 첨부한 도면 제6도 내지 제12도를 참조하여 상세히 설명하면 다음과 같다.
먼저, 연산부(3)는 종래와 같이 각종 산술 연산 및 논리 연산을 수행하고, 제어부(6)는 내장된 알고리즘 또는 기타의 방법에 의하여 탑재된 알고리즘등에 따라 각 장치들을 제어하여 원하는 동작이 수행되도록 제어신호를 발생시킨다.
아울러 입출력부(5)도 종래와 같이 알고리즘을 수행하고자 하는 대상 신호, 즉 음향 신호등과 같은 입력신호를 입력받는 역할과 처리된 결과 신호를 출력하는 역할을 수행한다.
그리고, 내부 기억장치(11)는 다음과 같은 동작을 한다.
외부에서 저장 또는 읽고자 하는 위치를 의미하는 논리적 어드레스(논리적 Address) 및 저장 또는 읽는 동작을 지정하는 장치 제어신호가 제어부(11a)에 입력되면, 제어부(11a)는 실제의 물리적 어드레스를 계산하기 위해 필요한 정보를 어드레스 변환부(11c)에 제공하는데, 이 과정에서 룩-업 테이블(11b)을 참조한다.
상기에서 논리적 어드레스는 제7도와 같이 서로 다른 워드 위드를 가지는 데이터 형식을 지원하기 위하여 워드 위드에 따라 구분되는 다수의 데이터 블록 가운데 특정 블록을 지칭하기 위해 사용되는 값인 블록번호(F)와, 지정된 데이터 블록내에서의 위치를 저장하기 위해 사용되는 블록 어드레스(G)로 구성된다.
그리고, 룩-업 테이블은 제8도와 같이, 데이터 블록이 실제 메모리부(11d)의 몇 번지로부터 시작되는지를 나타내는 오프셋 필드(H)와, 워드 위드가 메모리부(11d)의 단위 기억공간의 크기, 즉 메모리부(11d)의 m개의 기억공간(제4도의 E)이 하나의 데이터 워드에 해당될 때 그 m값을 저장하고 있는 워드 사이즈 필드(I)가 모여 하나의 룩-업 필드(J)를 이루고, 다수의 룩-업 필드(J)가 하나의 룩-업 테이블(K)을 구성한다.
이와 같은 구성에서 논리적 어드레스의 블록 번호(제7도의 F)로부터 룩-업 테이블부(11b)내의 어떤 룩-업 필드(제8도의 J)를 이용해야 하는지를 선택하는 것이 가능해지고, 결국 논리적 어드레스의 블록 어드레스(제7도의 G)부분 및 룩-업 필드(제8도의 J)의 정보로부터 실제적인 물리적 어드레스를 계산할 수 있다.
즉, 논리적 어드레스의 블록 어드레스(제7도의 G)는 어떤 한 데이터 블록내에서의 위치를 의미하므로 연속되는 두 데이터 워드가 k개의 기억공간 만큼 떨어져 저장되어 있다면, k와 블록 어드레스(제7도의 G)를 곱하여 그 데이터 블록의 시작 위치에서 물리적으로 얼마 만큼 떨어진 곳에 원하는 데이터 워드가 저장되어 있는지를 구할 수 있고, 이 값에 그 데이터 블록의 시작 위치를 다시 더하면 전체 메모리부(11d)의 시작점으로 부터의 절대적인 위치를 알아낼 수 있다.
이러한 방식으로 위치를 찾아내는 방법에서, 룩-업 테이블부(11b)로부터 찾아진 룩-업 필드(제8도의 J)의 정보를 이용하여 물리적 어드레스를 계산해내는 역할을 어드레스변환부(11c)가 수행한다.
이러한 구성에서 순환 버퍼링(circular buffering)을 구현하는 것은 각 데이터 블록이 서로 다른 워드 위드로 구성되어 있어도 가능한데, 이를 위해서는 워드 위드가 상이하더라도 모든 데이터 워드가 동일한 간격을 두고 기억장치에 위치해 있도록 위치를 정함으로써 가능해진다.
여기서, 데이터 워드간의 간격을 결정하는 것은 각 데이터 블록에서의 워드 위드 및 데이터 워드 개수를 고려하여 최적의 값으로 결정해야 하는데, 한 데이터 블록 내의 연속되는 어드레스를 가지는 데이터 워드들이 실제 메모리부(11d)내에서도 반드시 연속적으로 위치해야만 할 필요가 없고 대신 순서만 유지하면 된다는 성질을 이용한다.
즉, 두 개 이상의 데이터 블록들의 데이터 워드들이 서로 교대의 순서로 배치되는 구성을 택하는 것도 가능하며, 이러한 방법에 따라 배치할 수 있는 조합 방법들 가운데 메모리부(11d)의 크기가 가장 작은 조합을 선택하도록 한다.
일예로 제9도에서와 같이, 메모리브(11d)의 데이터 위드가 n비트이고, 데이터 블록A(L)와 데이터 블록B(M)는 2*n비트의 워드 위드, 데이터 블록C(N)는 4*n비트의 워드 위드를 가지는 데이터 워드들로 이루어진다면, 데이터 블록 A(L) 및 B(M)의 데이터 워드들은 각각 2개의 기억공간들이 하나씩의 데이터 워드를 구성하게 된다.
이때, 제10도에서와 같이 데이터 블록A(L) 및 데이터 블록B(M)의 연속되는 데이터 워드들이 메모리부(11d)내에 서로 교대로 배치된다면 데이터 블록C(N)의 데이터 워드들처럼 전부 4개의 간격을 두고 위치하도록 배치가되고, 각 데이터 블록의 워드 위드에 상관없이 모든 데이터 블록의 연속되는 데이터 워드들은 같은 간격을 두고 메모리부(11d)에 배치되는 것이 가능하다.
그 결과 순환 버퍼링을 구형하기 위하여 각 데이터 블록마다 별도의 회로를 구성하는 등의 노력이 필요없으며, 종래의 방법에서와 같이 하나의 베이스 어드레스를 정해진 주기마다 감소시키는 방법으로도 구현하는 것이 가능하다.
상기한 바와 같은 원리에 의하여 서로 다른 워드 길이를 필요로 하는 데이터 블록들을 기억장치에 저장 또는 읽어내며, 순환 버퍼링을 구현하기 위한 구성의 에는 제6도와 같다.
제6도에서 외부로부터 입력되는 논리적 어드레스는 상기한 바와 같이 블록번호(제7도의 F)와 블록 어드레스(제7도의 G)로 이루어지는데, 이 가운데 블록번호(F)는 제어부(11a)에서 인가하는 제어신호와 함께 룩-업 테이블부(11b)에 인가된다.
룩-업 테이블부(11b)는 주어진 블록번호(F)로부터 해당되는 룩-업 필드(제8도의 J), 오프셋 필드(H) 및 워드 사이즈 필드(I)를 찾아 각각 어드레스 변환부(11c) 및 제어부(11a)에 인가한다.
이때 제어부(11a)는 메모리부(11d)내에서의 데이터 워드들간의 간격을 나타내는 값, 즉 위치간격값을 위치간격값 레지스터로부터 읽어 어드레스 변환부(11c)에 인가한다.
어드레스 변환부(11c)는 논리적 어드레스의 블록 어드레스와 위치간격값을 곱셈기(11c-1)로 승산하고, 그 결과값을 제1 가산기(11c-2)에 인가하는데, 이렇게 함으로써 한 데이터 블록 내에서의위치가 구해진다.
제1가산기(11c-2)는 입력되는 한 데이터 블록내에서의 위치값과 상기 룩-업 테이블부(11b)에서 얻어지는 오프셋 필드값을 가산하고, 그 결과값을 제2가산기(11c-3)에 인가한다.
여기서 제1가산기(11c-2)의 출력은 순환 버퍼링이 고려되지 않은 상태에서의 메모리부(11d)에서의 위치를 의미한다.
따라서 제2가산기(11c-3)는 매 샘플링 주기 T마다 위치간격값 만큼 그 값이 감소되는 베이스 어드레스 레지스터(11c-5)의 출력값과 제1가산기(11c-2)에서 출력되는 값을 가산하여 그 결과값을 순환 버퍼링이 구현된 상태의 물리적 어드레스로 출력시키게 된다.
이때, 베이스 어드레스 레지스터(11c-5)의 값을 매 샘플링 주기마다 위치간격값 만큼 감소시키기 위해 감산기(11c-4)가 사용된다.
이때, 데이터 처리 알고리즘이 결정되고 데이터 블록들의 형식이 결정된 이후에는 위치간격값 및 룩-업 테이블부(11b)의 각 값들은 변경될 필요가 없으므로 데이터 처리 알고리즘이 수행되기 전에 한번의 초기값 결정과정을 거쳐 룩-업 테이블부(11b) 및 위치결정 값 레지스터의 값이 결정된 이후에는 그 값을 보존한다.
제어부(11a)는 장치제어신호로부터 수행되어야 할 동작이 저장 또는 읽는 동작인지를 판별하고, 룩-업 테이블부(11b)로부터 인가된 워드 사이즈 필드값으로부터 워드 위드를 판별하여 메모리부(11d)와 입출력부(11e)에 제어신호를 인가함으로써 적합한 워드 위드로 데이터 워드를 저장 또는 읽는 동작이 수행되도록 한다.
제12도는 전술한 어드레스 변환부(11c)의 다른 실시예이다.
각 데이터 블록들을 상기한 방법과 같이 배치한 결과 연속적인 데이터 워드들간의 기억공간 내 간격, 즉 위치간격값을 k라 할 때 k값이 2의 누승, 즉 2,4,6,8,16...등과 같은 값이 된다면 물리적 어드레스를 곱하기 위하여 사용하는 곱셈기(11c-1)는 쉬프터(11c-6)로 대체될 수 있다.
일예로서 위치간격값이 2일 경우에는 블록 어드레스를 1비트, 4일 경우에는 2비트 쉬프트하는 등의 동작으로 곱셈을 대체하는 것이 가능하다.
이상에서와 같이 본 발명은 서로 다른 워드 위드를 가지는 데이터들을 처리하는 경우 데이터들을 각각 필요한 만큼의 워드 위드로 기억장치에 저장할 수 있도록 하고, 순환 버퍼링이 가능하므로서 기억장치를 보다 효율적으로 사용할 수 있는 효과가 있다.
또한, 필요한 기억장치 용량이 DSP장치에 내장될 수 있을 정도로 그 크기가 줄어드는 경우라면 기억장치를 DSP장치에 내장함으로써 동작 속도를 빠르게 할 수 있는 효과가 있으며, 외부 기억장치의 소거로 전체 코스트를 낮출 수 있는 효과도 있다.

Claims (5)

  1. 제어수단의 제어에 의해 각종 산술 연산 및 논리 연산을 수행하는 연산수단과; 알고리즘을 수행하고자 하는 대상신호를 입력받는 역할과 처리된 결과 신호를 출력하는 역할을 수행하는 입출력수단과; 외부로부터 인가되는 논리적 어드레스에 따라 저장되거나 판독하려는 데이터 워드의 워드 위드를 판별하고 외부로부터 인가되는 장치제어신호에 따라 각부의 제어신호를 인가하는 제어부와, 입력되는 논리적 어드레스로부터 워드 위드와 같은 제어정보를 상기 제어부에 인가하는 룩-업 테이블부와, 입력되는 논리적 어드레스로부터 실제 데이터 워드가 저장되어 있는 물리적 어드레스를 연산하는 어드레스 변환부와, 실제 데이터 워드를 저장하는 메모리부와, 상기 제어부의 제어에 따라 적합한 워드 위드로 구성된 데이터 워드를 상기 메모리부에 저장하거나 인출하여 출력하는 입출력부를 포함하는 내부기억장치; 상기 알고리즘에 따라 상기 연산수단과 입출력수단 및 내부기억장치를 제어하여 원하는 동작이 수행되도록 제어신호를 발생시키는 제어수단을 포함하여 구성된 것을 특징으로 하는 데이터 메모리 억세스 장치.
  2. 제1항에 있어서, 상기 논리적 어드레스는 워드 위드에 따라 구분되는 다수의 데이터 블록 가운데 특정 블록을 지칭하기 위해 사용되는 블록 번호와; 지정된 데이터 블록내에서의 위치를 지정하기 위해 사용되는 블록 어드레스로 구성되는 것을 특징으로 하는 데이터 메모리 억세스 장치.
  3. 제1항에 있어서, 상기 룩-업 테이블부는 데이터 블록이 실제 상기 메모리부의 몇 번지로부터 시작되는지를 나태내는 오프셋 필드와 상기 메모리부의 단위 기억공간의 크기를 나타내는 워드 사이즈 필드로 이루어진 룩-업 필드와, 상기 룩-업 필드가 다수개 이루어진 룩-업 테이블로 구성된 것을 특징으로 하는 테이타 메모리 억세스 장치.
  4. 제1항에 있어서, 상기 어드레스 변환부는 외부에서 입력되는 논리적 어드레스의 블록 어드레스와 상기 룩-업 테이블부에서 얻어지는 위치간격값을 승산하는 곱셈기와, 상기 곱셈기에서 출력되는 한 데이터 블록 내에서의 위치값과 상기 룩-업 테이블부에서 얻어지는 오프셋 필드값을 가산하는 제1가산기와, 매 샘플링 주기 T마다 위치간격값 만큼 그 값을 감소시키는 감산기에 의해 그 감소되는 베이스 어드레스값을 출력하는 베이스 어드레스 레지스터와, 상기 베이스 어드레스 레지스터의 출력값과 상기 제1가산기에서 출력되는 값을 가산하여 그 결과값을 순환 버퍼링이 구현된 상태의 물리적 어드레스로 출력시키는 제2가산기로 구성된 것을 특징으로 하는 데이터 메모리 억세스 장치.
  5. 제4항에 있어서, 상기 곱셈기에 입력되는 위치간격값이 2의 누승값일 경우 곱셈기를 쉬프터로 대체한 것을 특징으로 하는 데이터 메모리 억세스 장치.
KR1019950024131A 1995-08-04 1995-08-04 데이터 메모리 억세스 장치 KR0154199B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019950024131A KR0154199B1 (ko) 1995-08-04 1995-08-04 데이터 메모리 억세스 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019950024131A KR0154199B1 (ko) 1995-08-04 1995-08-04 데이터 메모리 억세스 장치

Publications (2)

Publication Number Publication Date
KR970012158A KR970012158A (ko) 1997-03-29
KR0154199B1 true KR0154199B1 (ko) 1998-11-16

Family

ID=19422887

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019950024131A KR0154199B1 (ko) 1995-08-04 1995-08-04 데이터 메모리 억세스 장치

Country Status (1)

Country Link
KR (1) KR0154199B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100447134B1 (ko) * 1996-12-28 2006-02-28 엘지전자 주식회사 억세스데이터비트수조절기능및저전력소비기능을구비한디램컨트롤러

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100447134B1 (ko) * 1996-12-28 2006-02-28 엘지전자 주식회사 억세스데이터비트수조절기능및저전력소비기능을구비한디램컨트롤러

Also Published As

Publication number Publication date
KR970012158A (ko) 1997-03-29

Similar Documents

Publication Publication Date Title
US5925841A (en) Digital sampling instrument employing cache memory
US4754421A (en) Multiple precision multiplication device
US20080126758A1 (en) Digital signal processing apparatus and method for multiply-and-accumulate operation
US9040800B2 (en) Musical tone signal generating apparatus
EP0285316A2 (en) Programmable multistage digital filter
US5065433A (en) Audio signal data processing system
KR0154199B1 (ko) 데이터 메모리 억세스 장치
US6799261B2 (en) Memory interface with fractional addressing
JP3230449B2 (ja) 信号処理装置
JPS58208981A (ja) アドレス制御回路
JPH04222111A (ja) ディジタルフィルタ
JP3042266B2 (ja) メモリアクセス方法
JPH08292764A (ja) 信号切換装置
JP3214936B2 (ja) 信号処理装置
US11132296B1 (en) Linear interpolator of tabulated functions
KR100223626B1 (ko) 선입선출 메모리 회로
JP2006139321A (ja) ディジタルシグナルプロセッサ
KR960032189A (ko) 데이타 기억 장치, 데이타 처리기, 메모리 액세스 방법 및 데이타 처리 방법
JP4222898B2 (ja) 信号処理装置及びその処理方法
KR100307518B1 (ko) 디씨티구현방법및장치
JP2850594B2 (ja) Ramアドレス生成回路
JPH031198A (ja) ディジタル信号処理装置
JPH08123727A (ja) 記憶装置
JPS61296599A (ja) メモリ集積回路
WO2001090927A1 (en) Method and device in a convolution process

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: 20050607

Year of fee payment: 8

LAPS Lapse due to unpaid annual fee