KR0134042B1 - 디지탈 신호처리장치 및 신호처리방법 - Google Patents

디지탈 신호처리장치 및 신호처리방법

Info

Publication number
KR0134042B1
KR0134042B1 KR1019880008911A KR880008911A KR0134042B1 KR 0134042 B1 KR0134042 B1 KR 0134042B1 KR 1019880008911 A KR1019880008911 A KR 1019880008911A KR 880008911 A KR880008911 A KR 880008911A KR 0134042 B1 KR0134042 B1 KR 0134042B1
Authority
KR
South Korea
Prior art keywords
data
digital
pair
address
storage
Prior art date
Application number
KR1019880008911A
Other languages
English (en)
Other versions
KR890002760A (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
Priority claimed from JP62179301A external-priority patent/JP2630778B2/ja
Priority claimed from JP62194894A external-priority patent/JPS6437666A/ja
Priority claimed from JP63003346A external-priority patent/JPH0719246B2/ja
Application filed by 이우에 사또시, 상요덴기 가부시기가이샤 filed Critical 이우에 사또시
Publication of KR890002760A publication Critical patent/KR890002760A/ko
Application granted granted Critical
Publication of KR0134042B1 publication Critical patent/KR0134042B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7839Architectures of general purpose stored program computers comprising a single central processing unit with memory
    • G06F15/7842Architectures of general purpose stored program computers comprising a single central processing unit with memory on one IC chip (single chip microcontrollers)
    • G06F15/7857Architectures of general purpose stored program computers comprising a single central processing unit with memory on one IC chip (single chip microcontrollers) using interleaved memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Physics (AREA)
  • Algebra (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Complex Calculations (AREA)

Abstract

내용 없슴

Description

디지탈 신호 처리 장치 및 신호 처리 방법
제1도는 본 발명의 실시예를 도시한 블럭도.
제2도는 내지 제4도는 제1도에 도시한 블럭의 상세한 블럭도.
제5도는 외부 메모리 장치의 영역을 도시한 도면.
제6도는 제1도에 도시한 DSP 시스템에 외부로부터 인가하는 복합 데이타를 도시한 도면.
제7도는 제1도에 도시한 블럭의 내부 회로도.
제8도는 제1도에 도시한 어드레스 포인터의 회로도.
제9도는 디지탈 필터를 구성하는데 필요한 명령을 도시한 도면.
제10도, 제13도 및 제14도는 디지탈 필터의 회로도.
제11도 및 제15도는 디지탈 필터를 실현하는 프로그램을 도시한 도면.
제12도 및 제16도는 디지탈 필터를 실현할 때의 데이타 RAM 및 상수 RAM의 어드레스 할당도.
제17도는 제1도 실시예의 한 기능의 동작을 도시한 플로우차트.
제18도는 종래예를 도시한 도면.
*도면의 주요 부분에 대한 부호의 설명*
11 : 데이타 버스 12, 13 : 디지탈 처리 회로
14 : 데이타 입출력 회로 15 : 인터페이스 회로
16 : 외부 메모리 인터페이스 회로 17 : 데이타 교환 레지스터
18 : 기억 제어 레지스터 19 : 조건 분기 제어 회로
20 : 제어 회로 21 : 데이타 RAM
22 : 상수 RAM 23 : 상수 ROM
24, 25, 26 : 어드레스 포인터 27 : 승산기
28 : ALU 29 : ACC
30 : 일시 레지스터
본 발명은 시계열(時系列)로 입력되는 데이타를 소정의 알고리즘에 기인해서 처리하고, 시계열 데이타로서 출력하는 디지탈 신호 처리 장치 및 신호 처리 방법에 관한 것이다.
일반적으로, 음성이나 화상 등과 같이 우리 주위에 존재하는 원시 정보원은 아날로그 신호인 것이 많다. 이 아날로그 신호를 디지탈적인 수법에 의해서 처리하는 시스템이 디지탈 신호 처리 장치 (Digital Signal Processing System: DSP 시스템) 이다.
최근, 디자탈 회로의 LSI화가 급속하게 진척되어, 원 (one) 칩상에 DSP 시스템이 용이하게 실현될 수 있게 되고, 또한 아날로그 신호 처리에 비해서 고정밀도 처리가 가능하고, 파라메터의 설정에 의해 임의의 특성이 안정하고 균일하게 얻어지는, 무 조정화가 가능하게 되는 등의 특징을 갖기 때문에, DSP 시스템이 급속하게 실용화되게 되었다. 또한, DSP 시스템의 응용 범위는 음성 신호처리, 통신 신호처리, 계측 신호 처리, 화상 신호 처리, 지진파 신호 처리, 수중 음향 신호 처리 등에 널리 이용되고 있다.
또한, 오디오 분야에 있어서도 CD(Compact Disk) 플레이어나 DAT(Digital Audio Tape) 플레이어와 같이, 오디오 신호의 디지탈 처리화가 진척됨에 따라서 오디오 신호를 디지탈 처리하는 DSP 시스템이 실용화되고 있다.
종래의 DSP 시스템은 디지탈 필터를 용이하게 형성할 수 있도록 제18도에 도시한 아키텍쳐를 갖고 있다.
제18도에 있어서, 데이타 버스(1)에는 입출력 회로(I/O: 2), 데이타 RAM(3), 승산기(4), 연산 회로(ALU: 5), 누산기(ACC : 6) 등이 접속되고, 데이타 RAM(3)의 출력과 데이타 ROM(7)의 출력이 승산기(4) 에 접속되며, 승산기(4)의 승산 결과 출력이 ALU(5)의 한쪽 입력에 인가된다. 이들 각 회로는 프로그램 ROM(8)에서 차례로 독출되는 명령을 해독하는 디코더(9) 에서 그 명령에 따라서 출력되는 마이크로코드 신호에 의해서 제어된다.
디지칼 필터의 실현에 있어서는
Y = A
Figure kpo00001
Xi+ B
Figure kpo00002
Xi-1+ C
Figure kpo00003
Xi-2........
라고 하는 형태의 적화(積和) 연산이 반복하여 나타난다. 이 디지탈 필터를 DSP 시스템으로 실현할 경우에는 필터 내의 절점(節点) 의 계산 순서를 결정해서, 프로그램을 작성하고, 그 프로그램을 프로그램 ROM(8) 에 격납함과 동시에 데이타 ROM(7) 내에 계산식의 상수(constant) 를 격납해둔다. 그리고, 프로그램을 실행하므로써, 적화 연산이 행해지고, 연산 결과는 데이타 RAM(3) 에 차례로 기억된다.
제 18도에 도시한 DSP 시스템을 오디오 분야에 사용한 경우, 그래픽 이퀄라이저 기능, 버스·트레블, 라우드네스, 로우부스트 기능, 써라운드효과 기능 등의 오디오에 필요한 기능을 실현할 수 있지만, 오디오 신호는 좌우의 2채널의 신호가 있기 때문에, 전술한 기능을 실현하기 위한 처리를 좌우 채널의 신호에 각각 행하여야 한다. 또한, 좌우 채널을 독립해서 특성을 바꾸기 위해서는 각각 다른 상수를 데이타 ROM에 기입해 두어야 한다.
따라서, CD 플레이어나 DAT 플레이어에서는 신호의 샘플링 주기가 44.1KHz 나 48KHz 와 같이 높은 주파수이기 때문에, 전술한 기능을 실현하기 위한 처리를 모두 샘플링 주기 사이에 좌우 채널의 각각에게 실행하여 종결하여야 한다. 그러므로, DSP 시스템의 처리 속도에 따라서는 전술한 기능 어느 것인가가 실현될 수 없게 되는 일도 있다. 즉, DSP 시스템의 시스템 효율이 나빠지는 결점이 있었다.
본 발명은 전술한 점에 감안하여 창작된 것으로, 디지탈 데이타를 전송하기 위한 한쌍의 데이타 버스와, 이 데이타 버스에 각각 접속된 한쌍의 디지탈 처리 수단과, 이 한쌍의 디지탈 처리 수단의 동작을 미리 프로그램된 순서에 따라서 동시에 제어하는 제어수단과, 외부에 접속되는 기억 장치에 어드레스 데이타를 보내고 디지탈 데이타의 송·수신을 행하기 위한 외부 메모리 인터페이스 수단과, 외부로부터 인가되는 디지탈 데이타를 외부로부터 인가되는 제어 신호에 기인해서 입력하고, 그 입력된 복수의 디지탈 데이타를 정해진 순서에 따라서 상기 한쌍의 데이타 버스에 전송함과 동시에, 한쌍의 데이타 버스에 송출된 처리 완료 데이타를 외부에 출력하는 인터페이스 수단과, 이 인터페이스 수단으로부터 한쌍의 데이타 버스에 송출된 디지탈 데이타를 한쌍의 디지탈 처리 수단의 내부에 기억시킬것인지의 여부를 제어하는 기억 제어 레지스터 수단과, 상기 한쌍의 데이타 버스 사이에 서로의 디지탈 데이타를 교환하는 디지탈 데이타 교환 수단과, 상기 한쌍의 데이타 버스 한쪽 또는 양쪽에 송출된 데이타가 설정되고 , 그 데이타에 기인해서 점프 조건을 제어하는 조건 분기 제어 수단을 포함하고, 또한 상기 디지탈 처리수단은 외부 접속되는 기억 장치의 특정 메모리 영역을 순회해서 억세스하기 위한 어드레스 데이타, 입력된 디지탈 데이타에 승산되는 계수를 작성하기 위한 상수 「1」, 「a」, 「b」, 디지탈 필터를 구성하기 위한 계수, 처리전 및 처리중의 디지탈 데이타 등을 기억하는 기억 수단과, 승산 수단 및 연산 수단을 포함하며, 또한 상기 제어 회로는 프로그램을 기억하는 프로그램 메모리 수단과, 이 프로그램 메모리 수단의 어드레스를 지정하는 프로그램 카운터 수단과, 상기 프로그램 메모리 수단으로부터 독출된 명령을 해독하는 디코더 수단과, 상기 한쌍의 데이타 버스의 한쪽 또는 양쪽에 접속되어 점프 선두의 어드레스 데이타가 설정되는 점프 어드레스 수단과, 이 점프 어드레스 수단에 설정된 점프 선두 어드레스를 선택적으로 상기 프로그램 카운터 수단에 인가하는 멀티플렉서 수단과, 상기 한쌍의 데이타 버스의 한쪽 또는 양쪽에 접속되어, 같은 명령의 실행 횟수가 설정되는 루프 카운터를 포함함으로써, 정해진 기간 내에 효율적으로 많은 기능을 달성하는 것을 목적으로 한다.
전술한 수단에 있어서, 외부 메모리 인터페이스 수단을 통해서 외부 접속된 기억 장치의 특정 메모리 영역을 순회 억세스하는 경우, 디지탈 처리 수단의 기억 수단에서 어드레스 데이타를 독출해서 연산 수단으로 인크리멘트(increment) 또는 디크리멘트(decrement)하고, 그 결과가 특정 메모리 영역의 경계가 아닌 때에는 그 결과를 출력하고, 특정 메모리 영역의 경계인 때에는 기억 수단에 기억되어 있는 소정치를 출력하는 동작이 단일 명령으로 행해지고, 그 출력의 어드레스 데이타를 재차 기억 수단에 전송함과 동시에 어드레스 데이타에 특정 메모리 영역의 선두 어드레스를 가산해서 실제 어드레스 데이타를 작성하고, 외부 메모리 인터페이스 수단에 송출함으로써, 외부 접속된 기억 장치의 억세스가 용이하게 된다.
또한, 외부로부터 입력된 디지탈 데이타를 디지탈 처리 수단으로 처리 중에 오버플로우(overflow)가 생긴 경우, 다음에 입력되는 디지탈 데이타에 승산하는 계수를 조정하기위해, 기억수단에 기억된 상수 「1」, 「a 」, 「b」 (a〈 1, b 〉1 )를 선택하고, 그 때의 계수에 승산함으로써 입력된 디지탈 데이타의 레벨을 오버플로우가 생기지 않는 크기로 조정한다.
또한, 디지탈 처리 수단 내의 기억 수단에 외부로부터 데이타를 기입할 경우, 기입 디지탈 데이타와 그 데이타 수를 표시하는 값, 기입 선두 어드레스, 및 한쌍의 디지탈 처리 수단의 어떠한 것을 지시하는 데이타의 복합 데이타를 인터페이스 수단에 인가하여 보존시키면, 최초로 복합 데이타가 인터페이스 수단에서 취출되고, 제어수단의 루프 카운터 수단, 기억 수단의 어드레스를 지정하는 어드레스 지정 수단, 및 기억 제어 레지스터 수단에 각각의 데이터가 셋트되고, 이에 기인해서 기입되어야 할 데이타가 그 데이타 수만큼 인터페이스 수단에서 취출되어 기억수단에 기입되므로, 외부로부터의 전송이 용이하게 된다.
또한, 디지탈 데이타 교환 수단에 의해서, 한쌍의 데이타 버스에 송출된 디지탈 데이타, 또는 한쌍의 디지탈 처리수단의 내부 데이타를 한 명령의 실행에 의해서 서로 교환하는 것이 가능하게 된다.
또한, 제어 수단 내에 설치된 점프 어드레스 레지스터 수단에 인터페이스 수단을 통해서 점프 선두 어드레스 데이타를 외부에서 셋트함으로써, 점프 명령이나 조건 분기 명령의 실행시에, 프로그램 카운터 수단에 점프 어드레스 레지스터 수단의 어드레스 데이타가 전송되기 때문에, 프로그램의 흐름을 외부로부터 제어하는 것이 가능하게 된다.
또한, 조건 분기 제어 수단 내의 조건 설정 레지스터 수단에 설정된 데이타에 의해, 각각의 디지탈 처리 수단에 접속된 플래그수단의 출력을 선택하여 점프 제어 신호를 발생하기 위해, 한쪽의 디지탈 처리수단만, 또는 다른쪽 디지탈 처리 수단만 조건이 성립한 경우, 또는 어느 한쪽의 디지탈 처리 수단의 조건이 성립한 경우, 양쪽의 디지탈 처리 수단의 조건이 성립한 경우를 프로그램 또는 외부로 부터의 데이타로 선택할 수 있다.
전술한 작용에 의해, 기능 향상과 함께 동작의 효율화가 도모되고 디지탈 신호 처리 장치의 시스템 효율이 향상된다.
제1도는 본 발명의 실시예를 도시한 블럭도로서, 한쌍의 데이타 버스 (BUS1, BUS2 : 11)과, 이 데이타 버스(BUS1, BUS2 : 11) 에 접속된 디지탈 처리회로(12, 13)과, 동일하게 데이타 버스 (BUS1, BUS2 : 11)에 접속된 데이타 입출력 회로(14), 인터페이스 회로(15), 외부 메모리 인터페이스 회로(16), 데이타 교환 레지스터(17)과, 데이타 버스(BUS2)에 접속된 기억 제어 레지스터(18), 조건 분기 제어 회로(19)와, 데이타 버스(BUS2)에 접속되고, 상기 각 회로의 동작을 제어하는 제어 회로(20)으로 구성된 오디오 신호 처리용의 DSP 시스템인데, 이 DSP 시스템은 원칩 반도체 소자 위에 집적된다.
데이타 버스(11)은 각각 8비트 x 3의 24 비트로 구성된다. 데이타 입·출력회로(14)는 입력 단자(IN) 으로 외부에서 인가된 16비트의 좌 채널과 우 채널의 샘플링 데이타(예를 들면, CD 플레이어의 경우에 샘플링 주파수가 44.1KHz로 샘플링된 디지탈 데이타)를 직렬로 입력하고, 우 채널 데이타는 데이타 버스 (BUS1)에, 좌 채널 데이타는 데이타 버스(BUS2)에 송출하며 또한 데이타 버스(BUS1)에 송출된 처리완료 우 채널 데이타를 수신하여 출력 단자 (OUT)에서 교대로 직렬 출력한다.
데이타 처리 회로(12)는 우 채널 데이타 처리용이고, 데이타 처리회로(13)은 좌 채널 데이타 처리용이며, 각각 모두 같은 구성이다. 즉, 데이타 처리회로(12, 13) 은 데이타 RAM(21), 상수 RAM(22), 상수 ROM(23), 어드레스 포인터(24, 25, 26), 승산기(MUL : 27), ALU(28), 누산기(ACC : 29), 일시 레지스터 (TMP1-TMP8 : 30)을 갖고 있다. 데이타 RAM(21)은 데이타 입.출력 회로(14)에서 송출된 처리 전의 데이타, 및 연산 처리 후의 데이타를 기억하는 24비트 x 128의 용량을 갖고 있고, 데이타 버스(11) 및 승산기(27)의 입력에 접속된다. 상수 RAM(22)는 인터페이스 회로(15)에서 송출되는 디지탈 필터의 계수, 및 외부 메모리 인터페이스 회로(16)을 통해서 접속되는 외부 메모리 장치(도시하지 않음)어드레스 데이타 등을 기억하는 16비트 x 256 의 용량을 갖고 있고, 데이타 버스(11), 승산기(27)의 입력, 및 ALU(28)의 입력에 접속된다. 또한, 상수 ROM(23)은 외부 메모리 장치에 설정된 특정 메모리 영역의 선두 어드레스 데이타, 및 어드레스 폭이나 데이타 입.출력 회로(14)에서 송출된 디지탈 데이타에 승산하는 계수를 작성하기 위한 상수 「1」, 「a」 (예를 들면, a = 0.99), 「b」 (예를 들면, b = 1.01) 이나 승산 또는 연산결과가 오버플로우한 때에 설정되는 최대치 및 최소치 등을 고정 기억하는 24비트 x 256 의 해독 전용 메모리이고, 데이타 버스 (11) 및 승산기(27)의 입력에 접속된다.
어드레스 포인터(24)는 8비트로 구성되어 데이타 RAM(21) 의 어드레스 지정을 행하고, 제어 회로(20)에서 출력되는 마이크로코드(INC1 및DEC1) 로 제어되고, 보존하고 있는 어드레스 데이타를 인크리멘트(+1) 및 디크리멘트(-1)하는 기능, 및 어드레스 데이타 「0」과 설정치 사이를 순환하는 순환 어드레스 기능을 갖고 있다. 또한, 어드레스 포인터(25)는 상수 RAM(22)의 어드레스를 지정하는 10비트의 포인터이고, 제어 회로(20)에서 출력되는 마이크로코드(INC2)로 제어되고, 어드레스 데이타를 인크리멘트하는 기능과, 제어회로(20)에서 출력되는 마이크로코드(CLEAR2)에 의해서 「0」으로 크리어되는 기능을 갖고 있다. 또한, 어드레스포인터(26)은 상수 ROM(23)의 어드레스를 지정하는 8비트 포인터이고, 제어 회로(20)에서 출력되는 마이크로코드(DEC3)에 의해서 어드레스 데이타를 디크리멘트하는 기능을 갖고 있다.
승산기(27)은 24비트 x 16비트의 승산을 하고, A 입력은 24비트, B 입력은 16비트로, 그 승산 결과는 1 사이클 후에 확정되는 것이다. 또한, 승산기(27)의 A 입력과 B 입력에는 입력 선택 회로(MPXA와MPXB)가 설치되고, 입력 선택 회로(MPXA)는 제어회로 (20)에서의 마이크로코드(A-BUS)에 의해 데이타 버스(11)을 선택하고, 마이크로코드(A-DRAM)에 의해 데이타 RAM(21)을 선택해서 A 입력에 인가하고, 입력 선택 회로(MPXB)는 마이크로코드 (B-BUS) 에 의해 데이타 버스(11)을 선택하고, 마이크로코드(B-CRAM)에 의해 상수 ROM(23)을 선택해서 B 입력에 인가한다. 승산 결과는 32비트로 출력한다.
ALU(28)은 32비트의 연산 회로이고, 한쪽에 입력된 32 비트의 승산 결과와 다른 쪽에 입력된 32비트의 ACC(29) 의 데이타를 마이크로코드(ADD)에 의해서 가산 처리하여, 그 결과를 ACC(29)에 전송한다. ACC(29)의 32 비트 중, 상위 24 비트는 데이타 버스 (11)과 접속되고, 하위 8비트 보조 버스(31)에 의해 일시 레지스터(30)의 하위 8비트와 접속되어 있다. 일시 레지스터 (30)은 32비트의 레지스터 (TMP1, TMP2 ...... TMP8)로 구성되고, 32비트의 데이타를 최대 8개 보존하는 레지스터이고, 각각의 상위 24비트는 데이타 버스(11)과 접속된다. 데이타 버스(11)과 보조 버스(31)에 의해, 일시 레지스터(30)과 ACC(29)사이에서 32비트 데이타의 전송이 행하여진다.
제어 회로(20)은 미리 프로그램된 순서에 따라서 각 부분의 회로를 제어하고, 그 구서은 제2도에 도시한 바와 같이, 명령 코드의 조합으로 이루어진 프로그램을 기억하는 프로그램 ROM(32)와, 프로그램 ROM(32)의 어드레스를 지정하는 프로그램 카운터(PC: 33)과 프로그램 ROM(32)에서 독출된 명령을 해독하고, 각종 제어 신호를 출력하는 명령 디코더(I-DEC: 34)와, 프로그램 카운터(33)의 어드레스 데이타를 인크리멘트하는 인크리멘터(INC: 35)와, 인터리브처리시의 복귀 선두 어드레스를 기억하는 스택(36)과, 데이타버스(BUS2)에 접속되어 점프 선두 어드레스 데이타가 프리셋트되는 점프 어드레스 레지스터(VAR1: 37 및 VAR2 : 38)과, 인크리멘터(35)의 출력, 스택(36)의 출력, 점프 어드레스 레지스터(37 및 38)의 출력, 및 프로그램 ROM(32)에 기억된 어드레스 데이타 출력을 선택하는 멀티플렉서(MPX: 39)와, 프로그램 카운터(33)의 데이타를 그대로 하여 동일한 명령을 실행시키는 횟수가 설정되는 루프 카운터(LOOP: 40)으로 이루어진다. 프로그램 ROM(32)는 32비트 x 512의 용량을 갖고 있고, 디지탈 필터를 실현하기 위한 프로그램, 외부 접속된 외부 메모리 장치의 어드레스 지정을 행하는 프로그램, 인터페이스 회로(15)에서 디지탈 데이타를 취출하는 프로그램, 및 기타 필요한 프로그램이 격납된다. 또한, 프로그램 ROM(32)에서는 독출된 명령 코드 중에 포함되는 디지탈 데이타나 어드레스 데이타가 데이타 버스(11)에 송출할 수 있게도 되어 있다. 명령 디코더(34)로부터는 어드레스 포인터(23, 25, 26)을 제어하는 INC1, INC2, DEC1, CLEAR2, DEC3, 입력 선택 회로 (MPXA, MPXB)도 제어하는 A-BUS, A-DRAM, B-BUS, B-CRAM, B-DROM, ALU(28)을 제어하는 ADD, THR, MD, 데이타 교환 레지스터(17)을 제어하는 CHG, 조건 분기 제어 회로(19)를 제어하는 OVFR, SIFR, CAFR, BOFR, 및 기억 제어 레지스터(18)을 제어하는 MBDL 등이 출력된다. 또한, 멀티플렉서(39)는 조건 분기 제어 회로(19)에서 출력되는 점프 제어신호(JMP)와 명령 디코더(34)에서 점프 명령, 스킵(skip) 명령, 또는 리턴(return) 명령 등의 실행시에 출력되는 제어 신호(PRGC)에 의해서, 그 선택 동작이 제어된다. 루프 카운터(40)은 데이타 버스(BUS2)에 접속되고, 인터페이스 회로(15)에서 데이타를 취출할때의 최초의 전송 명령의 실행시에 명령디코더(34)에서 출력되는 제어 신호(MBDL)에 의해 데이타 버스(BUS2)에 송출된 데이타를 입력한다.
인터페이스 회로(15)는 DSP 시스템과 외부의 제어장치, 예를 들면, 마이크로컴퓨터(도시하지 않음) 사이의 데이타 송·수신을 행하고, 제3도에 도시한 바와 같이, 입력 레지스터(SIPO: 41)과, 보존 레지스터(LIFO: 42)와, 전송 종료 플래그(F: 43)과, 출력 레지스터(44)를 구비하고 있다. 입력 레지스터(41)은 마이크로컴퓨터에서 인가되는 직렬 입력 데이타(SIN)을 동기 클럭(SCLK)에 의해서 차례로 입력하는 16비트의 시프트 레지스터이고, 16비트의 베이타 입력이 종료하면 그 병렬 출력에 의해, 입력된 디지탈 데이타가 보존 레지스터(42)에 보존된다. 보존 레지스터(42)는 16비트 x 8의 용량을 갖는 레지스터이고, 보존 레지스터(42)의 8 어드레스는 어드레스 포인터(45)에 의해서 지정된다. 어드레스 포인터(45)는 보존 레지스터(42)에 기입이 행해질 때마다 인크리멘트되고, 또한 독출이 행해질때마다 디크리멘트되므로, 보존 레지스터(42)를 독출할 때에는 기입된 순서와는 반대의 순서로 디지탈 데이타의 취출이 행해진다. 보존 레지스터(42)의 독출 결과, 어드레스 포인터(45)가 「0」으로 되면 독출이 종료된 것을 표시하는 신호(SEMP)가 마이크로컴퓨터에 출력된다. 한편, 마이크로컴퓨터는 데이타의 전송이 종료하면 종료 신호(SRDY)를 인가하여 전송 종료 플래그(43)을 셋트한다. 출력 레지스터(44)는 데이타버스(BUS1 및BUS2)에 접속된 16비트의 시프트 레지스터이고, 데이타 버스(11)에 전송된 데이타를 병렬로 입력하고, 마이크로컴퓨터에서의 전송 클럭(SOCLK)에 의해 직렬 데이타(SOUT)을 출력한다.
외부 메모리 인터페이스 회로(16)은 DSP 시스템에 외부 접속되는 메모리와의 사이에서, 어드레스 지정 및 데이타의송.수신을 행하기 위한 회로로, 제4도와 같이, 데이타 버스(11)에 접속된 어드레스 보존 레지스터(RMAD: 47, 47)과, 이 어드레스 보존 레지스터(46,47)에 접속된 출력 레지스터(48)과, 외부 메모리 장치(도시하지 않음)로부터 취출된 디지탈 데이타를 입력하는 입력 레지스터(49)와, 이 입력 레지스터(49)와 데이타 버스(11)에 접속된 입력 데이타 보존 레지스터(RMRD: 50, 51)과, 데이타 버스(11)에 접속된 출력 데이타 보존 레지스터(RMWR: 52, 53)과 출력 레지스터(54)로 구성된다. 어드레스 보존 레지스터(46, 47)은 각각 17비트이고, 출력 레지스터(48)은 17비트의 어드레스 데이타를 9비트와 8비트로 분할해서 다른 타이밍으로 외부 메모리 장치에 인가하는 것이다. 입력 레지스터(49)는 외부 메모리 장치에서 독출된 16비트의 데이타가 8비트로 분할되어 인가되고, 이들을 16비트로 통합해서 16비트의 입력 데이타 보존 레지스터(50, 51)에 인가한다. 또한, 출력데이타 보존 레지스터(52, 53)은 16비트로 구성되고, 데이타 버스(11)에 송출된 출력 데이타를 보존하고, 출력 레지스터(54)에 출력한다. 출력 레지스터(54)는 16비트의 출력 데이타를 8비트로 분할해서 외부메모리 장치에 출력한다.
본 실시예에 있어서, 외부 메모리 장치는 반사음 및 잔향음의 작성에 사용되고, 예를 들면 제5도에 도시한 바와 같이, 영역이 나누어져 있다. 제5도에 있어서, 외부 메모리 장치의 어드레스 「0」에서「A-1」까지는 1차 반사음, 2차 반사음, 3차 반사음... m 차 반사음을 작성하기 위한 영역에서 오디오 신호의 디지탈 데이타를 지연하기 위해 사용되고, 「A」에서 「A+n」까지의 영역은 잔향음을 작성하기 위한 영역으로, 독립한 어드레스 데이타 「0」- 「n」으로 순회해서 억세스할 수 있게 되어 있다. 그를 위한 처리에 대해서는 다음에 기술한다.
데이타 교환 레지스터(17)은 데이타 버스 (BUS1)에 송출된 데이타를 보존하고 데이타 버스(BUS2)에 출력하는 24비트의 R→L 레지스터(17a)와, 데이타 버스(BUS2)에 송출된 데이타를 보존하고, 데이타 버스(BUS1)에 출력하는 24비트의 L→R 레지스터(17b)로 구성되고, 교환 명령의 실행시에 제어회로(20)에서 출력되는 제어신호(CHG)에 의해, 1 명령 사이클 중에, 데이타의 보존과 출력이 R→L 레지스터(17a) 및 L→R 레지스터(17b) 에서 동시에 행해진다. 따라서, 우 채널의 디지탈 데이타와 좌 채널의 디지탈 데이타를 서로 교환하고, 각각 상대 채널의 데이타에 소정의 계수를 승산하며, 자체의 디지탈 데이타에 가산 또는 감산한다는 신호 조작이 행해진다. 따라서, 예를 들면 좌우 음의 퍼짐 등의 조절 처리가 간단히 행해진다.
기억 제어 레지스터(18)은 2비트의 레지스터이고, 인터페이스 회로(15)에서 데이타를 취출하기 위한 전송 명령이 실행된때, 제어회로(20)에서 출력되는 제어 신호(MBDL)에 의해서 2비트의 데이타가 셋트된다. 기억 제어 레지스터(18)의 2비트 출력은 각각 디지탈 처리 회로(12, 13)의 데이타 RAM(21) 및 상수 RAM(22)에 인가되고, 이들의 기입 동작을 제어한다. 즉, 인터페이스 회로(15)에서 취출한 데이타를 데이타 RAM(21) 또는 상수 RAM(22)에 전송하는 전송 명령 실행시에, 그 기입 동작의 제어가 행해진다. 예를 들면, 상수 RAM(22) 에 기입된 디지탈 필터의 상수를 바꿀 경우, 우 채널 및 좌 채널을 한번에 바꾸는데는 미리 기억 제어 레지스터(18)의 2비트를 함께 「1」로 셋트하면 좋고, 우 채널과 좌 채널을 독립해서 바꾸는데는 바꾸고 싶은 쪽의 채널에 대응하는 비트를 「1」, 다른쪽 비트를 「0」으로 하면 좋다. 이 기억 제어 레지스터(18)로의 데이타 셋트는 제어 회로(20)의 루프 카운터(40, 제2도)과 어드레스 포인터(24, 25)로의 데이타 셋트와 동시에 행해진다. 즉, 마이크로컴퓨터는 인터페이스 회로(15)의 보존레지스터(42, 제3도)에 데이타를 전송할 때에, 그 데이타 수를 표시하는 데이타와 그 데이타를 기입하는 선두 어드레스를 표시하는 어드레스 데이타와 우 채널 또는 좌 채널을 표시하는 데이타로 이루어진 복합 데이타를 최후에 전송한다. 복합 데이타의 할당은 제6도에 도시한 바와 같이, 16비트의 데이타 중, 하위 10비트가 어드레스 데이타를 표시하고, 상위 4비트가 데이타 수를 표시하며, 나머지 2비트가 우 채널과 좌 채널을 지정하는 데이타이다. 따라서, 인터페이스 회로(15)에서 데이타를 취출할 때에, 최초 루프카운터(40), 어드레스 포인터(25), 기억 제어 레지스터(18)로의 전송명령을 실행함으로써, 복합 데이타가 취출되어, 각각의 셋트가 행해지는 것이고, 다음 전송 명령의 실행으로는 복합 데이타의 내용에 기인한 전송이 행해지는 것이다.
조건 분기 제어 회로(19)는 각각의 디지탈 처리 회로(12, 13)의 ALU(28)의 디지탈 처리 출력이 소정 상태로 되었을 때에 출력되는 신호를, 데이타 버스(BUS2)에서 인가된 데이타에 기인해서 선택하여 점프 제어 신호(JMP)를 발생하는 것이고, 제7도에 도시한 바와 같이, 2비트의 조건 설정 레지스터(55)와, 각각의 ALU(28)에서 출력되는 보로우(borrow) 신호 [BOR(R), (L)]로 셋트되는 보로우 플래그(R), (L) (56)과, 캐리 신호[CAY (R), (L)]로 셋트되는 캐리 플래그(R), (L) (57)과, ALU(28)로 처리한 결과의 데이타가 부(-)인 것을 표시하는 사인 신호[SIN(R), (L)]로 셋트되는 사인 플래그(R), (L) (58)과, 디지탈 데이타가 오버플로우, 즉 「7FFFFFFF」 (36비트) 이상으로 되었을 때, 및 「80000000」 (36비트) 이하 (부의 오버플로우)로 되었을때 출력 오버플로우 신호 [OVF(R), (L)]로 셋트되는 오버플로우 플래그(R), (L) (59)와, 조건 설정 레지스터(55)의 2비트 출력 및 그 반전 출력으로 제어되고, 각각의 플래그(56, 57, 58, 59)의 (R)과 (L)의 출력을 선택하는 선택 회로(60)으로 구성된다. 이 선택 회로(60)은 AND 게이트(61)과 OR 게이트(62)로 구성되고, 조건 설정 레지스터(55)의 B1, B2가 각각 「1」, 「1」 인 경우에는 각각의 플래그(56, 57, 58, 59)의 (R) 또는 (L)의 어느 한쪽이 셋트되면 점프 제어 신호(JMP)가 출력되고, B1, B2가 각각 「1」, 「0」인 경우에는 각각의 플래그(56, 57, 58, 59)의 (R) 측만, 즉 디지탈 처리 회로 (12)의 조건만으로 점프 제어 신호 (JMP)가 출력되고, 반대로 B1, B2가 각각 「0」, 「1」인 경우에는 각각의 플래그(56, 57, 58, 59)의 (L) 측만, 즉 디지탈 처리 회로(13)의 조건만으로 점프 제어 신호(JMP)가 출력되며, B1, B2가 함께 「0」인 경우에는 각각의 플래그(56, 57, 58, 59)의 (R) 및 (L) 양쪽이 함께 셋트된 때에만 점프 제어 신호 (JMP)가 출력된다. 따라서, 조건 설정 레지스터(55)에 셋트되는 데이타의 내용에 의해, 점프의 조건을 설정할 수 있다. 또한, 보로우 플래그(56), 캐리 플래그(57), 및 사인 플래그(58)은 조건 분기 명령의 실행 사이클에 있어서의 최후의 타이밍으로 제어회로(20)의 명령 디코더(34)에서 출력되는 리셋트 신호(BOFR, CAFR 및 SIFR)에 의해서 각각 리셋트되지만, 오버플로우 플래그(59)는 오버플로우 플래그에 기인하는 조건 분기 명령의 실행 사이클에서는 리셋트되지 않으며, 단독의 오버플로우 플래그 리셋트 명령의 실행에 의해서 명령 디코더(34)에서 출력되는 제어 신호(OVFR)에 의해서 리셋트된다.
제8도는 제1도에 도시한 어드레스 포인터(24)의 구체적인 회로되고, 데이타 버스(11)의 하위 8비트에 프리셋트 입력(PE)가 각각 접속된 8비트의 데이타 래치 레지스터(63)과, 데이타 래치 레지스터(63)의 출력을 송출하는 게이트(64)와, 게이트(64)에서 송출된 데이타가 입력(AP)에 인가되는 포인터 레지스터(65)와, 데이타 래치 레지스터(63)의 출력과 포인터 레지스터(65)의 출력이 인가되고, 데이타가 일치한 것을 검출하는 일치 검출 회로(66)과, 포인터 레지스터(65)의 인크리멘트, 디크리멘트, 크리어, 프리셋트 등을 제어하는 AND 게이트(67, 68), OR 게이트(69, 70), 인버터(71)로 구성되고, 포인터 레지스터(65)의 출력(A0-A7)이 데이타 RAM(21)의 어드레스 데이타로서 출력된다.
제8도에 있어서, DSP 시스템의 전원 투입시에 실행되는 초기화 프로그램에 의해서, 래치 레지스터(63)에 설정 어드레스, 예를 들면 「7」이 프리셋트되고, 포인터 레지스터(65)는 마이크로코드 (CLEAR1)에 의해 「0」으로 리셋트된다. 디지탈 필터를 실현하는 적화 연산 실행시에, 마이크로코드(INC1)이 출력되면 포인터 레지스터(65)의 값은 인크리멘트(+1)되고, 마이크로코드(DEC1)이 출력되면 디크리멘트(-1)된다. 인크리멘트(+1)의 결과가 데이타 래치 레지스터(63)에 프리셋트 된 값 (예를 들면,「7」)로 되면, 일치 검출회로(66)에 의해 일치가 검출되고, 검출 출력이 1로 되어 D-FF(72)에 기억된다. 이 상태로 재차 마이크로코드(INC1)이 출력되면, AND 게이트(68) 및 OR 게이트(69)를 통해서 포인터 레지스터(65)가 크리어되어 「0」으로 리셋트된다. 한편, 디크리멘트(-1)의 결과 Borrow가 발생하면 OR 게이트(70)을 통해서, 게이트(64)가 열리고, 데이타 래치 레지스터(63)에 기억된 설정치 「7」이 포인터 레지스터(65)에 셋트된다. 이와 같이 하여, 소정 어드레스 「0」과 설정 어드레스(이 경우, 「7」)과의 사이에서 순환하는 순환 어드레스 기능이 얻어진다. 어드레스 포인터(25)도 동일한 구성이다.
제1도에 도시한 DSP 시스템에 있어서, 디지탈 피러를 구성하기 위해 필요한 명령의 예를 제9도에 도시하였다. 제9도에 있어서, MUL 명령은 승산 명령이고, 승산기(27)의 입력(A) 및 입력(B)에 입력되는 대상을 선택하여 승산을 행한다. AP 명령은 어드레스 포인터(24, 25, 26)의 인크리멘트, 디크리멘트 또는 크리어를 행한다. ALU 명령은 ALU(28)의 제어 명령이고, ALUADD는 입력된 2개의 데이타를 ALU(28)에서 기산하여, 기산 결과를 ACC(29)에 보존시키고, ALUSUB는 한쪽 입력의 데이타에서 다른쪽 입력 데이타를 감산하여 감산 결과를 ACC(29)에 보존시키고, ALUTHR은 승산기(27)에서의 승산 결과를 그대로 ACC(29)에 보존시키는 명령이다. RAM1D, TMP1D, TMP2D, TMP3D는 저장 명령이고, 데이타 버스(11)의 데이타를 데이타 RAM(21), 일시 레지스터(30)에 기억시킨다. ACLS, TMP1S, TMP2S, TMP3S는 전송 명령이고, ACC(29), 일시 레지스터(30)의 데이타를 데이타 버스(11) 및 보조 버스 (31)에 송출하는 명령이다.
다음에, 제1도에 도시한 DSP 시스템을 사용하여 각종 기능을 실현하기 위한 동작을 설명한다.
예를 들면, 오디오의 신호 처리에 있어서, 그래픽 이퀄라이저를 실현할 경우,
yi= xiA + xi-1B + xi-2C + yi-1D + yi-2E
(A, B, C, D, E는 필터 상수)
로 표시되는 적화 연산에 의해서 실현되는 대역 디지탈 필터를 복수단 접속함으로써 얻어진다.
제10도는 2차의 직접형 IIR(Infinite Impulse Response)형 필터의 대역 디지탈 필터를 2단 종속 접속함으로써 2밴드의 그래픽 이퀄라이저를 실현하는 것이다. 제10도에 있어서, Z-1(73) 은 단위시간(여기에서는, 샘플링 주기)의 지연소자이고, 참조 번호(74)는 상수(A-J)의 승산소자, 참조 번호(75)는 가산소자이다.
제11도는 제10도의 디지탈 필터를 실현하는 프로그램을 도시한 도면이고, 제12도는 데이타 RAM(21)과 상수 RAM(22)에 기억되는 데이타의 할당 도면이다. 제11도의 프로그램은 상수의 승산을 C, B, A, E, D, H, G, F, J, I 의 순으로 행하기 위해, 상수 RAM(22)의 어드레스 「0」에서 「9」까지는 동일 순서로 상수가 격납된다. 한편, 데이타 RAM(21)에는 xi, yi, zi의 데이타가 3 어드레스 간격으로 기입되지만, 샘플링 주기, 즉 하나의 입력 데이타(xi+1)에 대한 필터 처리 기간마다, 1 어드레스 변경해서 xj+1, yi+1, zi+1을 기입함으로써, 지연소자(73)에 의한 지연 데이타를 작성한다. 따라서, 어드레스 포인터(24)는 「0」-「7」의 순환 어드레스를 지정하고, 어드레스 포인터(25)는「0」-「9」의 순환 어드레스를 지정하도록 미리 프로그램에 의해서 설정해 둔다. 여기에서, 입력데이타 (xi)에 대해서 제11도의 프로그램의 스텝 「0」을 실행하는 시점에 있어서, 데이타 RAM(21)의 내용이 제12도(a)와 같고, 어드레스 포인터(24, 25)가 함께 어드레스 「0」인 때에 스텝 「0」이 실행되면, 승산기(27)의 입력(A 및 B)에는 데이타 RAM(21)의 어드레스 「0」에 기억되어 있는 데이타 (xi-2) (2 샘플 전의 입력 데이타)와 상수 RAM(22)의 어드레스 「0」에 기억되어 있는 계수 (C)가 인가되지만, 그 승산 결과는 다음의 스텝으로 확정하여 출력된다. 또한, 스텝 「0」의 최후에, 명령(AP1INC, AP2INC)에 의해, 어드레스 포인터(24, 25)가 함께 인크리멘트되어, 그 내용이 「1」로 된다.
스텝 「1」이 실행되면, 스텝 「0」과 동일하게 데이타 RAM(21)과 상수 RAM(22)가 승산기(27)의 입력으로서 선택되고, 각각 어드레스 「1」에 기억된 데이타(xi-1)과 상수(B)가 승산기(27)에 인가된다. 또한, 전회의 스텝 「0」에서 승산된 결과는 명령 (ALUTHR)에 의해 ALU(28)을 지나쳐서 ACC(29)에 최초의 승산 결과 (C
Figure kpo00004
xi-2)가 저장된다. 스텝 「1」의 최후에, 명령(AP1INC, AP2INC)에 의해, 어드레스 포인터(24, 25)가 인크리멘트되고, 그 내용은 어드레스 「2」로 된다.
다음에, 스텝 「2」가 실행되면, 명령 (MULA-BUS, B-CRAM)에 의해 승산기(27)의 입력 (A)에는 데이타 버스(11), 입력(B)에는 상수 RAM(22)가 선택된다. 한편, 명령(TMJP1S)에 의해 일시 레지스터 (TMP1)의 내용이 데이타 버스(11)에 송출되고, 명령(RAM1D)에 의해 데이타 버스(11)에 송출된 데이타가 어드레스 포인터(24)로 지정되는 데이타 RAM(21)의 어드레스 「2」에 저장된다. 이때, 일시 레지스터(TMP1)에는 샘플링 주기마다 데이타 입력회로(14) 로 외부에서 인가된 입력 데이타(xi)가 미리 저장되어 있다. 따라서, 입력 데이타 (xi)는 승산기(27)에 의해서 상수 RAM(22)에서 독출된 상수(A)와 승산됨과 동시에, 데이타 RAM(21)의 어드레스 「2」에 저장된다. 한편, 명령(ALUADD)에 의해 ACC(29)에 저장되어 있는 C
Figure kpo00005
xi-2와 스텝 「1」의 승산 결과 (B
Figure kpo00006
xi-1)의 가산이 행해지고, 그 결과 B
Figure kpo00007
xi-1+ C
Figure kpo00008
xi-2가 ACC(29)에 저장된다. 스텝 「2」의 최후에, 어드레스 포인터(24, 25)가 인크리멘트되고, 그 내용은 어드레스 「3」으로 된다.
스텝 「3」이 실행되면, 승산기(27)의 입력(A 및 B)에는 데이타 RAM(21)과 상수 RAM(22)의 어드레스 「3」에 저장되어 있는 데이타 (yi-2) 와 상수(E)가 인가되고, 명령(ALUADD)에 의해 스텝 「2」의 결과 (A
Figure kpo00009
xi)와 ACC(29)의 내용(B
Figure kpo00010
xi-1+ C
Figure kpo00011
xi-2)가 ALU(28)에서 가산되고, 가산결과(A
Figure kpo00012
xi+ B
Figure kpo00013
xi-1+ C
Figure kpo00014
xi-2)가 ACC(29)에서 저장된다. 스텝 「3」의 최후에 어드레스 포인터(24, 25)가 인크리멘트되어, 어드레스 「4」로 된다.
스텝 「4」가 실행되면, 승산기(27)의 입력 (A 및 B)에는 데이타 RAM(21)과 상수 RAM(22)의 어드레스 「4」에 저장되어 있는 데이타 (yi-1)과 상수(D)가 인가되고, 명령 ALUADD에 의해 스텝 「3」의 승산 결과(E
Figure kpo00015
yi-2) 와 ACC(29)의 내용(A
Figure kpo00016
xi+ B
Figure kpo00017
xi-1+ C
Figure kpo00018
xi-2)가 ALU(28)에서 가산되고, 가산 결과(A
Figure kpo00019
xi+B
Figure kpo00020
xi-1+ C
Figure kpo00021
xi-2+ E
Figure kpo00022
yi-2)가 ACC(29)에 저장된다. 스텝 「4」의 최후에, 명령(AP1DEC, AP2INC)에 의해, 어드레스 포인터(24)는 디크리멘트되어 어드레스 「3」으로 되고, 어드레스 포인터(25)는 인크리멘트되어 어드레스 「5」로 된다.
스텝 「5」로 실행되면, 승산기 (27)의 입력(A 및 B)에는 데이타 RAM(21)의 어드레스 「3」에 저장된 데이타(yi-2)와 상수 RAM(22)의 어드레스 「5」에 저장된 상수 H가 인가된다. 즉, 승산기(27)은 이 스텝 「5」에서 제10도에 도시된 디지탈 필터의 2단째의 승산을 행한다. 한편, 명령(ALUADD)에 의해 스텝 「4」의 승산 결과 (D
Figure kpo00023
yi-1)과 ACC(29)의 내용(A
Figure kpo00024
xi+ B
Figure kpo00025
xi-1+ C
Figure kpo00026
xi-2+ E
Figure kpo00027
yi-2)가 ALU(28)에서 가산되고, 가산 결과(A
Figure kpo00028
xi+ B
Figure kpo00029
xi-1+ C
Figure kpo00030
xi-2+ D
Figure kpo00031
yi-1+ E
Figure kpo00032
yi-2)가 ACC(29)에 저장된다. 이때의 ACC(29)의 내용은 1단째의 디지탈 필터의 출력(yi)로 된다. 스텝 「5」의 최후에 어드레스 포인터(24)는 인크리멘트되어 어드레스 「4」로 되고, 어드레스 포인터(25)는 인크리멘트되어 어드레스 「6」으로 된다.
스텝 「6」이 실행되면, 승산기(27)의 입력(A 및 B)에는 데이타 RAM(21)의 어드레스 「4」에 저장된 데이타(yi-1)과 상수 RAM(22)의 어드레스 「6」에 저장된 상수(G)가 인가된다. 또한, 명령 (ACCS3)에 의해, ACC(29)에 저장된 데이타(yi)가 데이타 버스(11)에 송출되고, 명령(TMP2D)에 의해, 데이타 버스(11)에 송출된 데이타 (yi)가 일시 레지스터(TMP2)에 저장된다. 한편, 명령(ALUTHR)에 의해 스텝 「5」의 승산 결과H
Figure kpo00033
yi-2)는 ALU(28)을 지나쳐서 ACC(29)에 저장된다. 스텝 「6」의 최후에 어드레스 포인터(24, 25)는 인크리멘트되어 어드레스 「5」와 어드레스 「7」로 된다.
스텝 「7」이 실행되면, 명령(MULA-BUS, B-CRAM)에 의해 승산기(27)의 입력(A 및 B)에는 데이타 버스(11)에 송출된 데이타와 상수 RAM(22)의 어드레스 「7」에 저장된 상수(F)가 인가된다. 또한, 명령(TMP2S 및 RAM1D)에 의해 일시 레지스터(TMP2)에 저장된 데이타(yi)는 데이타 버스(11)에 송출되어 승산기(27)의 입력(A)에 인가됨과 동시에, 어드레스 포인터(24)로 지정된 데이타 RAM(24)의 어드레스 「5」에 저장된다. 한편, 명령(ALUAD)에 의해 스텝 「6」의 승산결과(G
Figure kpo00034
yi-1)과 ACC(29)의 H
Figure kpo00035
yi-2가 ALU(28)에서 가산되고, 그 결과(G
Figure kpo00036
yi-1+ H
Figure kpo00037
yi-2)가 ACC(29)에 저장된다. 스텝 「7」의 최후에, 어드레스 포인터(24, 25)는 인크리멘트되어 어드레스 「6」과 어드레스 「8」로 된다.
스텝 「8」이 실행되면, 승산기(27)의 입력(A 및 B)에는 데이타 RAM(21)의 어드레스 「6」에 저장된 데이타(zi-2)와 상수 RAM(22)의 어드레스 「8」에 저장된 상수(J)가 인가되고, 한편 ALU(28)에 있어서 스텝 「7」의 승산 결과(F
Figure kpo00038
yi)와 ACC(29)에 저장된 데이타 (G
Figure kpo00039
yi-1+ H
Figure kpo00040
yi-2)가 가산되고, 그 결과(F
Figure kpo00041
yi+ G
Figure kpo00042
yi-1+ H
Figure kpo00043
yi-2)가 ACC(29)에 저장된다. 스텝 「8」의 최후에 어드레스 포인터(24, 25)는 인크리멘트되어, 어드레스 「7」과 어드레스 「9」로 된다.
스텝 「9」가 실행되면, 승산기(27)의 입력(A 및 B)에는 데이타 RAM(21)의 어드레스 「7」에 저장된 데이타(zi-1)과 상수 RAM(22)의 어드레스 「9」에 저장된 상수(J)가 인가되고, 한편 ALU(28)에 있어서 스텝 「8」의 승산 결과(J
Figure kpo00044
zi-2)와 ACC(29)에 저장된 데이타(F
Figure kpo00045
yi+ G
Figure kpo00046
yi-1+ H
Figure kpo00047
yi-2)가 가산되고, 가산 결과(F
Figure kpo00048
yi+ G
Figure kpo00049
yi-1+ H
Figure kpo00050
yi-2+ J
Figure kpo00051
zi-2)가 ACC(29)에 저장된다. 스텝 「9」의 최후에 어드레스 포인터(24, 25)가 인크리멘트되면, 어드레스 포인터(24, 25)는 함께 어드레스 「0」으로 된다.
스텝 「10」이 실행되면, 승산은 행해지지 않으며, 스텝 「9」의 승산 결과(I
Figure kpo00052
zi-1)과 ACC(29)에 저장된 데이타(F
Figure kpo00053
yi+ G
Figure kpo00054
yi-1+ H
Figure kpo00055
yi-2+ J
Figure kpo00056
zi-2)가 ALU(28)에 있어서 가산되고, 그 가산 결과(F
Figure kpo00057
yi+ G
Figure kpo00058
yi-1+ H
Figure kpo00059
yi-2+ I
Figure kpo00060
zi-1+ J
Figure kpo00061
zi-2)가 ACC(29)에 저장된다. 이때의 ACC(29)의 데이타는 2단째의 디지탈 필터의 출력(zi)로 된다.
최후로 스텝 「11」이 실행되면, 명령(ACCS)에 의해 ACC(29)에 저장된 데이타(zi)가 데이타 버스(11)에 송출되고, 명령(RAM1D)에 의해 데이타 버스(11)에 송출된 데이타(zi)가 어드레스 포인터(24)로 지정된 데이타 RAM(21)의 어드레스 「0」에 저장된다. 스텝 「11」의 최후에, 어드레스 포인터(24)가 인크리멘트되어 어드레스 「1」로 된다. 따라서, 다음에 스텝 「0」에서 재차 프로그램을 실행할 때에는, 어드레스 포인터(24)로 어드레스되는 데이타 RAM(21)은 어드레스 「1」에서 억세스됨으로서, 전번의 스타트 어드레스보다 1 어드레스 먼저 나아간다.
이상의 스텝 「0」 - 「11」의 프로그램을 실행함으로써, 입력 데이타(xi)에 대한 필터 처리가 행해지고, 데이타 RAM(21)의 내용이 제12도(b)와 같이 변화하고, 필터 출력(zi)가 얻어진다. 또한, 다음의 샘플링 데이타(xi+1)의 필터 처리에 대해서, 스타트 어드레스를 1 어드레스 먼저 나아가게 함으로써, 데이타(xi+1)에 대한 지연 데이타가 얻어진다. 따라서, 스텝 「0」 - 「11」의 프로그램을 샘플링 데이타에 대해서 반복하여 실행함으로써, 제12도(c)(d)와 같이 데이타 RAM(21)이 변화하고, 필터 출력(zi+1, zi+2.......)가 얻어진다. 또한, 전술한 동작은 디지탈 처리회로(9, 10)에 있어서, 동시에 행해지기 때문에 좌 채녈과 우 채널의 필터 출력 데이타가 동시에 얻어진다. 또한, 제11도의 프로그램을 실행하기 전에, 디지탈 처리회로(12 와 13)의 상수 RAM(22)에 기억되는 상수를 미리 바꿔 둠으로써, 좌 채널과 우 채널의 필터 특성, 즉 그래픽 이퀄라이저의 레벨을 좌우 독립적으로 할 수 있다. 이 경우, 상수 RAM(22)로의 상수 기입은 인터페이스 회로(15)에 마이크로컴퓨터에서 인가되는 상수를 상수 RAM(22)로 전송함으로써 행해진다.
그런데, 전술한 바와 같이, IIR형 필터는,
Figure kpo00062
(C1, C2, C3, C4, C5는 필터 특성을 결정하는 상수)로 된다.
그렇지만, 중심 주파수가 200 ㎐ 정도의 저 주파 대역인 경우에는, 상수(C1- C5)의 유효 항수는 16비트로 표시할 수 없게 되기때문에, 각 상수를 α + β
Figure kpo00063
δ라는 형으로 변환한다. 즉, α는 상수의 정수 부분이고, β는 소수점 이하를 1보다 작은 수 δ로 나눈 값이다. 중심 주파수를 200 ㎐로 하면 상수(C1-C5)는,
Figure kpo00064
로 된다. 여기에서
Figure kpo00065
(n은 정수)라 한다.
이들을 상기 식에 대입하면,
Figure kpo00066
로 된다. 이 적화 연산은 제13도에 도시한 회로로 실현된다. 즉, 지금까지 설명해온 각 스텝을 행함으로써, aXi+ bXi-1+ cXi-2+ dYi-1+ eYi-2의 연산결과를 구하고, 다음으로 이 연산결과에 대해서 δ를 승산하고, 또한 이 승산 결과에 입력 데이타(Xi)와 2 샘플링 전의 데이타(Xi-2- Yi-2)를 가산하며, 또한 그 결과에서 1 샘플링 전의 데이타(Xi-1- Yi-1)에 2를 승산한 것을 빼고, 출력 데이타(Yi)를 산출한다. 따라서, 16비트로 충분히 유효항이 표시되는 상수(a, b, c, d, e)를 사용해서 적화 연산을 행하므로 소수점 이하의 연산 정밀도가 향상된다.
제14도는 제10도에 도시한 2단 종속 접속된 IIR형 필터 중, 후단의 저 주파 대역용의 IIR형 필터를 제13도에 도시한 필터로 대치한 실시예를 도시한 것이다. 또한, 이러한 IIR형 필터를 실현하는 프로그램을 도시한 제15도, 및 데이타 RAM(21), 상수 RAM(22) 및 일시 레지스터(30)에 기억되는 데이타의 할당을 도시한 제16도를 참조해서 설명한다.
스텝 「0」 내지 스텝 「10」까지의 처리는 이미 설명한 스텝과 대략 동일하지만, 스텝 「6」 및 스텝 「7」에 있어서, 일시 레지스터 (TMP2)를 사용하지 않고, 일시 레지스터(TMP1)을 사용하고 있다. 이것은 이후의 처리에 일시 레지스터(TMP2)를 사용하기 위해서 이지만, 동작은 전술한 것과 변하지 않는다. 따라서, 스텝 「10」종료한 시점에 있어서 ACC(29)에는 a
Figure kpo00067
yi+ b
Figure kpo00068
yi-1+ c
Figure kpo00069
yi-2+ d
Figure kpo00070
zi-1+ e
Figure kpo00071
zi-2의 연산 결과가 저장된다. 그런데, 스텝 「10」에 계속해서 스텝 「11」이 실행되면 ACC(29)에 저장된 데이타가 n비트 우측 방향으로 시프트된다. 시프트된 결과는 δ(a
Figure kpo00072
yi+ b
Figure kpo00073
yi-2+ c
Figure kpo00074
yi-2+ d
Figure kpo00075
zi-1+ e
Figure kpo00076
zi-2) 로 된다. 즉, δ는 1/2n로 설정되어 있기 때문에, 우측 방향으로 n비트 시프트하는 것이 1/2n승산한 것으로 된다.
스텝 「12」가 실행되면, 명령(TMP3S)에의해 일시 레지스터 (TMP3)에 보존되어 있는 데이타(yi-2- zi-2)가 데이타 버스(11)에 송출되고, ALU(28)에서, ACC(29)의 데이타와 가산되고, 그 가산 결과, yi-2- zi-2+ δ(a
Figure kpo00077
yi+ b
Figure kpo00078
yi-1+ c
Figure kpo00079
yi-2+ d
Figure kpo00080
zi-1+ e
Figure kpo00081
zi-2)가 ACC(29)에 보존된다.
스텝 「13」이 실행되면, 명령(TMP2S)에 의해 일시 레지스터(TMP2)의 데이타(yi-1- zi-2)가 데이타 버스(11)에 송출됨과 동시에, 다음의 샘플링 데이타 처리의 지연 데이타를 얻기 위해 명령(TMP3D)에 의해 데이타(yi-1- zi-1)이 일시 레지스터(TMP3)에 기입된다. 한편, 명령 (ALUSUB)에 의해 ALU(28)에 있어서, ACC(29)에 보존된 데이타에서 데이타 버스(11)에 송출된 데이타(yi-1- zi-1)이 감산되고, 그 결과가 ACC(29)에 보존된다.
스텝 「14」가 실행되면, 스텝 「13」과 동일하게 데이타 버스(11)에 데이타(yi-1- zi-1)이 송출되고, ALU(28)에 있어서, ACC(29)에 보존된 데이타에서 yi-1- zi-1이 감산되고, 그 결과가 ACC(29)에 기입된다. 이때의 ACC(29)의 데이타는 -2(yi-1- zi-1) + (yi-2- zi-2) + δ(a
Figure kpo00082
yi+ b
Figure kpo00083
yi-1+ c
Figure kpo00084
yi-2+ d
Figure kpo00085
zi-1+ e
Figure kpo00086
zi-2) 이다.
스텝 「15」가 실행되면, 명령(TMS1S)에 의해 일시 레지스터 (TMP1)의 데이타(xi)가 데이타 버스(11)에 송출되고, ALU(28)에 있어서, ACC(29)의 데이타와 가산되고, 가산 결과가 ACC(29)에 기입된다. 이 때의 ACC(29)의 데이타는 yi-2(yi-1- zi-1) + (yi-2- zi-2) + δ(a
Figure kpo00087
yi+ b
Figure kpo00088
yi-1+ c
Figure kpo00089
yi-2+ d
Figure kpo00090
zi-1+ e
Figure kpo00091
zi-2), 즉 디지탈 필터의 출력 데이타(zi) 로 된다.
스텝 「16」이 실행되면, 명령(ACCS)에 의해 ACC(29)에 저장된 데이타(zi)가 데이타 버스(11)에 송출되고, 명령(RAM1D)에 의해 어드레스 포인터(24)로 지정된 데이타 RAM(21)의 어드레스 「0」에 저장된다.
스텝 「17」이 실행되면, 명령(TMP1S)에 의해 일시 레지스터(TMP1)의 데이타(yi)가 데이타 버스(11)에 송출되고, 명령(ALUSUB)에 의해 데이타 yi에서 ACC(29)에 저장된 데이타(zi)가 ALU(28)에서 감산되어, yi- zi가 ACC(29)에 저장된다.
스텝 「18」이 실행되면, 명령(ACCS)에 의해 ACC(29)에 저장된 데이타(yi- zi)가 데이타 버스(11)에 송출되고, 명령(TMP2D)에 의해 데이타 버스(11)의 데이타(yi- zi)가 일시 레지스터(TMP2)에 저장되고, 다음의 샘플링 데이타의 처리를 위한 지연 데이타로 된다. 스텝 「18」의 최후에 명령(AP1INC)에 의해 어드레스 포인터(24)가 인크리멘트되어 어드레스 「1」로 된다. 따라서, 다음의 샘플링 데이타(xi+1)의 처리 개시시에는 어드레스 포인터(24)로 어드레스되는 데이타 RAM(21)은 어드레스 「1」 에서 억세스되게 되고, 전번의 스타트 어드레스보다 「1」 어드레스 먼저 나아간다.
이상의 스텝 「0」- 「18」의 프로그램을 샘플링 주기마다 실행함으로써, 입력 데이타 (xi, xi+1, xi+2...) 에 대한 필터 처리가 행해지고, 데이타 RAM(21)의 내용이 제16도 (a)(b)(c)(d) ... 와 같이 변화하여, 필터 출력(zi, zi+1, zi+2, ...) 가 얻어진다.
이와 같이, 저주파 대역 디지탈 필터를 DSP 시스템으로 실현할 때에 승산의 비트 수를 증가하는 일 없이 승산 정밀도를 높일 수 있기 때문에, 저주파 대역에서의 필터 특성을 양호하게 확보할 수 있다. 또한, 다른 주파 대역의 필터 처리를 연속해서 행할 수 있으므로, 그래픽 이퀄라이저를 실현하는 프로그램 스텝 수를 단축할 수 있다.
다음으로, 외부 메모리 장치의 순회 메모리 영역을 순회 억세스하는 동작에 대해서 설명한다. 제5도에 도시된 바와 같이, 순회 메모리 영역은 독립한 메모리로서 「0」 - 「n」까지의 어드레스 데이타로 억세스 가능하고, 전번의 어드레스 데이타(X)는 상수 RAM(22)의 소정 어드레스에 보존되어 있다. 그래서, 어드레스 「n」에서 어드레스 「0」방향으로 1 어드레스 씩 억세스하는 경우에 대해서 기술한다.
우선, 어드레스 포인터(25)에 어드레스 데이타(X)가 기억되어 있는 어드레스를 셋트하고, MD 명령을 실행한다. 이 MD 명령은 상수 RAM(22)에서 어드레스 데이타(X)를 독출하고, 제어신호(MD)에 의해 ALU(28)에 있어서 디크리멘트를 행하여, 그 결과(X-1)을 ACC(29)에 보존시키지만, X-1의 결과, 보로우가 생긴 경우에는 상수ROM(23)의 소정 어드레스에 기억되어 있는 순회 메모리 영역의 종료 어드레스 「n」을 독출하고, ACC(29)에 X-1 대신에 보존 시킨다. 이들 동작은 MD 명령의 실행 사이클 내에 모두 행해진다. 다음에, 전송 명령에 의해 지금까지 어드레스 데이타 「X」가 기억되고 있었던 상수 RAM(22)의 어드레스에 ACC(29)의 데이타를 전송하여 보존시킨다. 또한, 가산 명령(ADD)를 실행하고, 상수 ROM(23)내에 기억되고 있는 순회 메모리 영역의 선두 어드레스 「A」를 독출하고, ACC(29) 에 보존되어 있는 데이타와 가산하고, 그 가산 결과, 즉 「X-1+A」를 재차 ACC(29)에 보존시킨다. 이로써, ACC(29)에 보존된 어드레스 데이타는 외부 메모리 장치의 실제 어드레스 데이타로 된다. 이것을 외부 메모리 장치에 인가하기 위해, 전송 명령을 실행하고 ACC(29)내의 어드레스 데이타를 외부 메모리 인터페이스 회로(16)의 어드레스 보존 레지스터 [RMAD(제4도)]의 어느 한쪽에 전송한다. 이로써, 어드레스 데이타 「X-1+A」는 출력 레지스터(48)에 의해 외부 메모리 장치에 인가된다.
여기에서, 외부 메모리 장치에 D-RAM(Dynamic Random Access Memory)를 사용한 경우, 순회 메모리 영역을 순회 억세스하는 것으로 D-RAM의 리프레쉬가 행하여지게 되어 있다. 즉, 실제의 어드레스 데이타 「X-1+A」가 16비트인 때, 순회 메모리 영역을 어드레스 지정하는 「X」는 「0」 - 「n」이므로, 순회 억세스에 의해서 변화하는 비트는 16비트의 어드레스 데이타 중의 일부이다. 따라서, 제4도에 도시된 출력 레지스터(48)은 그 변화하는 비트를 D-RAM의 로우 어드레스 데이타로서 출력하도록 구성된다. 또한, 어드레스 데이타가 16비트인 것에 대해서, 어드레스 보존 레지스터(46, 47) 및 출력 레지스터(48)이 17비트로 구성되어 있는 것은 변화하는 비트가 D-RAM의 로우 어드레스 데이타의 비트 수에 만족하지 않은 경우에, 나머지 1비트를 로우 어드레스 데이타의 1비트로서 출력하고, 이 1비트를 조작함으로써, 모든 리프레쉬를 행하기 때문이다.
실제 어드레스 데이타 「X-1+A」의 출력에 의해, 독출된 데이타는 입력 레지스터(49) 및 입력 데이타 보존 레지스터 [RMRD(50 또는 51)]을 통해서 데이타 버스(11)에 수신되고, 또한 기입 데이타는 출력 데이타 보존 레지스터 [RMWR(52 또는 53)]과 출력 레지스터(54)를 통해서 외부 메모리 장치에 기입된다.
이와 같이, MD 명령의 실행 사이클 내에서 디크리멘트와 그 결과에 기인하는 전송 동작을 행하므로, 어드레스 데이타를 작성하는 프로그램 스텝이 짧아지는 것이다.
전술한 기능을 사용해서 잔향음을 만들 수 있다. 즉, 샘플링 주기마다 기입 어드레스를 디크리멘트해서, 샘플링된 오디오 신호의 디지탈 데이타를 순회 메모리 영역에 차례로 기입하고, 한편 기입 어드레스로 오프셋트된 독출 어드레스를 1차 반사음, 2차 반사음, 3차 반사음 ..... 에 대응해서 설정하고, 이 독출 어드레스에 기인해서 디지탈 데이타를 순회 메모리 영역에서 독출하여 처리하는 것이다. 물론, 독출 어드레스도 샘플링 주기마다 디크리멘트되므로, 전술한 기능에 의해 순회 메모리 영역이 순회 억세스되는 것이다.
다음으로, 입력 데이타의 레벨 조정의 기능에 대해서 설명한다. 샘플링 주기마다 입력되는 디지탈 데이타는 전술한 바와 같이 디지탈 필터에 의해서 처리되지만, 입력 데이타의 레벨이 너무 크거나 너무 작으면 승산 및 연산시에 오버플로우가 발생한다. 이 오버플로우가 발생한 상태의 필터 출력을 아날로그 변화해서 오디오 신호로 하면 노이즈로서 재생되게 된다.
그래서, 제1도에 도시된 DSP 시스템에서는 오버플로우를 검출해서, 필터 출력을 제어함과 동시에 입력 데이타의 레벨을 조정할 수 있도록 되어 있다. 그 동작의 예를 제17도에 도시하여 설명한다.
샘플링 주기마다 입력되는 디지탈 데이타를 그대로 필터 처리하는 것이 아니고 계수(K)를 승산해서, 그 승산 결과를 입력 디지탈 데이타(xi)로서 필터 처리를 행한다. 제17도에 있어서, 우선 데이타 입출력 회로(14)에서 디지탈 데이타를 입력하고, 데이타 RAM(21) 내의 소정 어드레스에 일시 보존해 둔다. 그리고, 승산 명령(MUL)에 의해, 데이타 RAM(21)에서 독출한 미처리의 디지탈 데이타와 일시 레지스터(TMP3)에 보존되어 있는 계수(K)와의 승산을 행한다. 이 일시 레지스터(TMP3)은 계수(K)의 보존용으로서 이용되고, 초기 상태에서는 상수 ROM(23)에 기억되어 있는 상수 「1」이 미리 전송되어 있다. 승산 후에, 조건 분기 제어회로(19) 내의 오버플로우 플래그 (R), (L) (59)를 리셋트하기 위한 명령을 실행하고, 오버플로우 플래그 (R), (L) (59)를 리셋트하고 계수(K)의 승산 결과가 보존되어 있는 디지탈 데이타(xi)를 일시 레지스터(TMP1)에 전송한다. 이 일시 레지스터(TMP1)은 전술한 바와 같이, 필터 처리를 행할 때의 입력 디지탈 데이타(xi)의 보존용으로서 이용되고, 입력 디지탈 데이타(xi)는 전술한 바와 같이 필터 처리된다. 필터 처리가 종료하면, 그 필터 처리 중의 승산 또는 연산에 의해서 오버플로우가 발생했는지의 여부를 오버플로우 플래그의 판정 명령에 의해서 판정한다. 이때, 조건 분기 제어회로(19)의 조건 설정 레지스터(55, 제7도)에는 「1」, 「1」을 설정하고, 좌우 어느 오버플로우도 판정할 수 있게 해 둔다. 판정 결과, 오버플로우가 발생하고 있지 않으면 그대로 다음 필터 처리를 계속하지만, 오버플로우가 발생한 경우에는 필터 처리의 출력 데이타를 봐서, 그 오버플로우가 정의 오버플로우인가 부의 오버플로우인가를 판별한다. 정의 오버플로우인 경우에는 상수 ROM(23)의 소정 어드레스에 기억되어 있는 초대치 「7FFFFFFF」를 취출해서, 필터 출력(zi)로서 데이타 RAM(21)에 설정하고, 부의 오버플로우인 경우에는 상수 ROM(23)에 기억되어 있는 최소치 「80000000」을 취출해서 필터 출력 (zi)로서 데이타 RAM(21)에 기억시킨다. 그리고, 필터 처리가 모두 종료하면, 데이타 RAM(21) 내에 기억된 출력 데이타(zi)를 처리완료 디지탈 데이타로서 데이타 입출력 회로(14)에 전송하여 출력한다. 여기에서, 다음 입력 데이타의 처리로 옮기기 전에, 재차 오버플로우가 있었는지의 여부를 판정한다. 제7도에 도시된 오버플로우 플래그 (R), (L) (59) 는 오버플로우 플래그 판정 명령의 실행시에는 리셋트되지 않으므로, 앞의 필터 처리에서 오버플로우가 있으면 셋트된 그대로 되어 있다. 판정 결과, 오버플로우가 있었던 경우에는 그 오버플로우가 정인가 부인가를 앞의 판정에 기인해서 판정하고, 정인 때에는 입력된 디지탈 데이타의 레벨이 너무 큰 것이므로 계수(K)를 작게 하기 위해, 상수 ROM(23)에 기억되어 있는 상수 「a」 (a=0.99)의 어드레스를 어드레스 포인터(26) 에 설정하고, 부인 때에는 입력된 데이타의 레벨이 너무 작으므로 계수(K)를 크게 하기 위해, 상수 ROM(23)에 기억되어 있는 정수 「b」(b=1.01)의 어드레스를 어드레스 포인터 (26)에 설정한다. 한편, 오버플로우가 없었던 경우에는 일시 레지스터(TMP3)에 보존되어 있는 계수(K)가 「1」인가 아닌가를 판정한다. 계수(K)가 「1」인 경우에는 계수(K)를 바꿀 필요가 없으므로, 상수 ROM(23)의 상수 「1」이 기억된 어드레스를 어드레스 포인터(26)에 설정하고, 계수(K)가 「1」이 아닌 경우에는 K 〉1인가 K〈 1인가를 판정한다. 계수 K 〉1인 때에는 「1」에 가까이 하기 위해 상수 「a」를 선택하고, 계수 K〈 1인 때에는 상수 「b」를 선택한다. 그리고, 승산 명령에 의해, 상수 ROM(23)에서 어드레스 포인터(26)으로 어드레스된 상수를 독출하여, 일시 레지스터(TMP3)에 보존된 계수(K)와 승산하고, 그 결과를 일시 레지스터(TMP3)에 새로운 계수(K)로서 전송하다. 그리고, 재차 다음의 입력된 디지탈 데이타와 계수(K)의 승산을 행하는 것이다. 셋트된 오버플로우 플래그(R), (L) (59)는 승산 후의 리셋트 명령에 의해서 리셋트된다.
이와 같이, 승산 또는 연산시에 오버플로우가 발생한 경우에는 샘플링 주기마다 계수(K)가 서서히 증감되기 때문에, 입력된 디지탈 데이타의 레벨이 완만하게 변화한다. 또한, 오버플로우가 없어졌을 경우에도 계수(K)가 「1」로 되도록 완만하게 변화하므로, 출력된 디지탈 데이타를 아날로그 변환해서 재생한 때에 급격한 음의 변화가 없어지는 것이다.
다음으로, 정수 RAM(22)에 기억된 디지탈 필터를 구성하기 위한 필터 계수를 변경 또는 기입하는 경우의 동작을 설명한다. 디지탈 필터의 계수를 변경할 경우, 외부에 접속된 마이크로컴퓨터가 계수를 송출해온다. 디지탈 필터는 제10도, 제13도 및 제14도에 도시된 구성이지만, 계수의 변경은 각 단을 한번에 변경하여야 한다. 예를 들면, 한단째의 필터 동작중에 계수를 바꿔 버리면, 한단째의 필터 출력(yi)는 바르게 필터되지 않고 구부러진 것으로 되어 버린다. 그래서, 한단째의 필터 계수(A, B, C, D, E)의 5개 계수를 변경하는 경우를 설명한다. 상수 RAM(22)에는 제12도에 도시한 바와 같이, 어드레스 「0」에서「4」까지의 사이에 필터 계수가 C, B, A, E, D 순으로 기억되어 있다. 제3도에 도시된 인터페이스 회로(15)의 보존 레지스터(42)는 기입되는 순서와는 반대 순서로 독출이 행해지기 때문에, 마이크로컴퓨터는 필터 계수를 D, E, A, B, C 순서로 전송하고, 또한 계수(C) 다음에 제6도에 도시된 복합 데이타를 보내온다. 이 경우, 복합 데이타의 하위 10 비트는 상수 RAM(22)의 계수(C)가 기억되는 어드레스, 즉 「0」으로 되어 있고, 또한 상위 4비트는 계수의 갯수, 즉 「5」를 표시하는 데이타이다. 계수 (A, B, C, D, E)를 우 채널 및 좌 채널 함께 바꿀 경우에는 복합 데이타의 나머지 2비트는 함께 「1」이고, 독립해서 바꿀 경우에는 변경하는 채널에 대응하는 비트만을 「1」로 한다. 마이크로컴퓨터가 계수(D, E, A, B, C) 및 복합 데이타를 전송하여 끝내면, 전송 종료 플래그(43)을 셋트하기 위해, DSP 시스템은 전송 종료 플래그(43)의 판정 명령에 의해 전송 종료를 검출하고, 우선 인터페이스 회로 (15)에서 루프 카운터(40), 기억 제어 레지스터(18) 및 어드레스 포인터 (25)로의 전송 명령을 실행한다. 이로써, 루프 카운터(40)에는 「5」, 어드레스 포인터(25)에는 「0」, 기억 제어 레지스터(18)에는, 예를 들면 「11」이 셋트된다. 다음으로, 인터페이스 회로(15)에서 상수 RAM(22)로의 전송 명령이 루프 카운터(40)에 설정된 횟수, 즉 5회 실행되고, 보존 레지스터(42)에서 취출된 상수는 C, B, A, E, D 순서로 상수 RAM(22)에 전송된다. 어드레스 포인터(25)는 전송 명령의 실행마다 인크리멘트 되기 때문에, 상수 (C, B, A, E, D)는 제12도에 도시된 바와 같이, 각각의 어드레스에 기억되게 한다.
따라서, 인터페이스 회로(15)에서 데이타를 전송하기 위한 프로그램은 2개의 전송 명령만으로 실현할 수 있으므로, 프로그램 스텝 수의 단축화가 도모되는 것이다.
전술한 바와 같이, 본 발명에 의하면 다기능으로 시스템 효율이 높은DSP 시스템이 실현될 수 있는 것이고, 또한, 원칩 반도체 소자위에 집적화되기 쉽고, 외부 장치와의 접속도 용이하게 되는 장점을 갖는다. 특히, 오디오 신호 처리에 이용한 경우, 오디오 장치의 기능 향상에 다대한 효과를 이루는 것이다.

Claims (22)

  1. 디지탈 데이타를 전송하기 위한 한쌍의 데이타 버스와, 이 데이타 버스에 각각 접속된 한쌍의 디지탈 처리 수단과, 이 한쌍의 디지탈 처리 수단의 동작을 미리 프로그램된 순서에 따라서 동시에 제어하는 제어 수단을 포함한 디지탈 신호 처리 장치에 있어서,
    상기 디지탈 처리 수단이,
    입력된 디지탈 데이타 및 연산 결과 데이타를 복수 기억하는 제1 RAM,
    디지탈 필터를 실현하기 위한 복수의 상수를 기억하는 제2 RAM.
    상기 제1 RAM의 어드레스를 지정하는 제1 데이타 포인터,
    상기 제2 RAM의 어드레스를 지정하는 제2 데이타 포인터,
    상기 제1 RAM과 제2 RAM에서 독출된 데이타를 승산하는 승산기, 및
    상기 승산기의 승산 결과와 누산기에 보존된 연산 결과를 연산하여 그 연산 결과를 누산기에 보존시키는 연산 회로(ALU)를 포함하고,
    상기 제1 데이타 포인터 및 제2 데이타 포인터가 소정 어드레스와 설정 어드레스 사이를 순환하는 순환 어드레스 기능을 갖는 것을 특징으로 하는 디지탈 신호 처리 장치.
  2. 디지탈 데이타를 전송하기 위한 한쌍의 데이타 버스와, 이 데이타 버스에 각각 접속된 한쌍의 디지탈 처리 수단과, 이 한쌍의 디지탈 처리 수단의 동작을 미리 프로그램된 순서에 따라서 동시에 제어하는 제어 수단을 포함한 디지탈 신호 처리 장치를 사용해서, 데이타 메모리에 기억된 데이타와 상수 메모리에 기억된 상수를 승산기에 의해 승산하고, 이 승산 결과를 연산 회로에서 가감산함으로써 IIR형의 저 주파 대역 디지탈 필터를 구성하는 방법에 있어서,
    상기 상수를 미리 α+β ·δ[α은 정수, β는 소수부분을 각 상수에 공통인 상수 δ(δ≪ 1)로 나눈 값]의 형태로 분할하고, 상기 데이타에 대해서 각각의 상수 β의 적합 연산을 행한 후 에 상수 δ을 승산하여, 이 승산 결과와, 각각의 상수 α과 상기 데이타의 적합 연산의 결과를 가감산함으로써, 필터 출력을 얻는 것을 특징으로 하는 저주파 대역 디지탈 필터의 구성 방법.
  3. 디지탈 데이타를 전송하기 위한 한쌍의 데이타 버스와, 이 데이타 버스에 각각 접속된 한쌍의 디지탈 처리 수단과, 이 한쌍의 디지탈 처리 수단의 동작을 미리 프로그램된 순서에 따라서 동시에 제어하는 제어 수단을 포함한 디지탈 신호 처리 장치에 있어서,
    상기 디지탈 처리 수단이,
    외부 접속되는 기억 장치의 특정 메모리 영역을 순회해서 억세스하기 위한 어드레스 데이타를 기억하는 기억 수단,
    상기 어드레스 데이타를 인크리멘트 또는 디크리멘트하고, 그 결과가 상기 특정 메모리 영역의 경계일 때에 소정치를 연산 결과로서 출력하는 동작을 단일 명령으로 실행하는 연산 수단, 및
    상기 연산 수단의 연산 결과에 상기 특정 메모리 영역의 선두 어드레스 데이타를 가산하고 상기 기억 장치의 실제 어드레스 데이타를 얻는 가산 수단을 포함하고,
    상기 가산 수단에서 얻어진 실제 어드레스 데이타를 상기 데이타 버스를 통해서 입력하고 외부 접속된 기억 장치에 인가하는 외부 메모리 인터페이스 수단이 상기 데이타 버스에 접속되는 것을 특징으로 하는 디지탈 신호 처리 장치.
  4. 제3항에 있어서, 상기 외부 메모리 인터페이스 수단이, 외부 접속된 기억 장치가 D-RAM인 경우에, 인가하는 실제 어드레스 데이타에 의해 상기 특정 메모리 영역이 일순 억세스하는 동안에 적어도 특정 메모리 영역 이외의 영역이 리프리쉬되도록 상기 실제 어드레스 데이타를 출력하는 것을 특징으로 하는 디지탈 신호 처리장치.
  5. 디지탈 데이타를 전송하기 위한 한쌍의 데이타 버스와, 이 데이타 버스에 각각 접속된 한쌍의 디지탈 처리 수단과, 이 한쌍의 디지탈 처리 수단의 동작을 미리 프로그램된 순서에 따라서 동시에 제어하는 제어 수단을 포함한 디지탈 신호 처리 장치를 사용한 신호 처리 방법에 있어서,
    외부 접속된 기억 장치의 특정 메모리 영역을 억세스하기 위한 어드레스 데이타를 내부의 기억 수단에서 독출해서 인크리멘트 또는 디크리멘트하고, 이 인크리멘트 또는 디크리멘트의 결과가 상기 특정 메모리 영역의 경계일 때 소정치를 연산결과로서 출력하는 동작을 단일 명령의 실행 사이클로 행하는 제1 스텝,
    상기 제1 스텝의 결과를 상기 기억 수단에 전송하는 제2 스텝,
    상기 제1 스텝의 결과에 상기 특정 메모리 영역의 선두 어드레스 데이타를 가산하는 제3 스텝, 및
    상기 제3 스텝의 결과를 외부 메모리 인터페이스 수단에 송출하는 제4 스텝을 포함하는 것을 특징으로 하는 신호 처리 방법.
  6. 디지탈 데이타를 전송하기 위한 한쌍의 데이타 버스와, 이 데이타 버스에 각각 접속된 한쌍의 디지탈 처리 수단과, 이 한쌍의 디지탈 처리 수단의 동작을 미리 프로그램된 순서에 따라서 동시에 제어하는 제어 수단을 포함한 디지탈 신호 처리 장치에 있어서,
    상기 디지탈 처리 수단이, 각각 상수 「1」,「1」보다 작은 상수 「a」, 및 「1」 보다 큰 상수 「b」를 기억하는 기억 수단과, 이 기억 수단 및 상기 데이타 버스에 접속된 승산 수단 및 연산 수단을 포함하고,
    상기 디지탈 처리 수단의 승산 및 연산 결과, 오버플로우가 생긴 것을 보존하는 오버플로우 플래그 수단을 설치하며,
    상기 오버플로우 플래그 수단의 내용에 기초해서 상기 상수 「1」,「a」,또는 「b」를 선택하고,
    상기 선택된 상수의 승산 결과와 입력된 디지탈 데이타의 승산을 행하는 것을 특징으로 하는 디지탈 신호 처리 장치.
  7. 제6항에 있어서, 상기 오버플로우 플래그 수단이, 입력된 디지탈 데이타와 승산된 상수의 승산 후의 리셋트되는 것을 특징으로 하는 디지탈 신호 처리 장치.
  8. 제6항에 있어서, 상기 한쌍의 데이타 버스에 입력되는 디지탈 데이타가, 소정 주파수로 샘플링되어 A-D 변환된 우 채녈과 좌 채널의 오디오 신호이고, 상기 디지탈 데이타와 상수의 승산에 의해 입력 레벨의 조정을 행하는 것을 특징으로 하는 디지탈 시호 처리 장치.
  9. 디지탈 데이타를 전송하기 위한 한쌍의 데이타 버스와, 이 데이타 버스에 각각 접속된 한쌍의 디지탈 처리 수단과, 이 한쌍의 디지탈 처리 수단의 동작을 미리 프로그램된 순서에 따라서 동시에 제어하는 제어 수단을 포함한 디지탈 신호 처리 장치를 사용한 디지탈 신호 처리 방법에 있어서,
    외부에서 입력된 디지탈 데이타와 계수를 승산하여, 오버플로우 플래그를 리셋트하는 제1 스텝,
    상기 제1 스텝의 승산 결과를 이용해서 소정의 승산 또는 연산을 행하고, 이 승산 연산으로 오버플로우 플래그가 셋트되었을 때에 최대치 또는 최소치를 출력 데이타로서 설정하는 제2 스텝, 및
    상기 오버플로우 플래그에 기초해서 상수 「1」,「1」보다 작은 상수 「a」, 또는 「1」보다 큰 상수 「b」를 선택해서 상기 계수에 승산하고, 새로운 계수를 계산하는 제3 스텝
    을 포함하고,
    상기 제2 스텝에서 오버플로우가 없어질 때까지 입력된 디지탈 데이타의 레벨 조정을 행하는
    것을 특징으로 하는 디지탈 신호 처리 방법.
  10. 제9항에 있어서, 외부에서 입력된 디지탈 데이타가, 소정 주파수로 샘플링되어서 A-D 변환된 우 채널과 좌 채널의 오디오 신호인 것을 특징으로 하는 디지탈 신호 처리 방법.
  11. 디지탈 데이타를 전송하기 위한 한쌍의 데이타 버스와, 이 데이타 버스에 각각 접속된 한쌍의 디지탈 처리 수단과, 이 한쌍의 디지탈 처리 수단의 동작을 미리 프로그램된 순서에 따라서 동시에 제어하는 제어 수단을 포함한 디지탈 신호 처리 장치에 있어서,
    외부에서 인가되는 디지탈 데이타를 외부에서 인가되는 제어 신호에 기초해서 입력하는 입력 레지스터 수단,
    상기 레지스터 수단에 입력된 디지탈 데이타를 차례로 복수 보존하고, 외부에서 인가된 데이타의 전송 종료를 표시하는 신호에 기초해서 상기 보존한 복수의 디지탈 데이타를 상기 한쌍의 데이타 버스에 송출하는 보존 수단, 및
    상기 한쌍의 데이타 버스에 송출된 처리 완료 데이타를 보조하고, 외부로 출력하는 출력 레지스터 수단을 포함하는 인터페이스 수단을 설치한 것을 특징으로 하는 디지탈 신호 처리장치.
  12. 제11항에 있어서, 상기 한쌍의 디지탈 처리 수단이, 각각 상기 인터페이스 수단으로부터 데이타 버스로 송출된 데이타를 기억하는 기억 수단과 이 기억 수단의 어드레스를 지정하는 어드레스 지정 수단을 갖고 있고, 상기 제어 회로가, 상기 인터페이스 수단의 상기 보존 수단으로부터 디지탈 데이타를 상기 한쌍의 데이타 버스로 송출시키기 위한 명령의 실행 횟수를 제어하기 위한 루프 카운터 수단을 갖고 있으며, 상기 한쌍의 데이타 버스의 한쪽 또는 양쪽에 접속되고, 상기 각각의 기억수단의 기억 동작을 제어하는 기억 제어 레지스터 수단을 설치하고, 상기 인터페이스 수단 내의 상기 보존 수단에서 최초의 송출된 데이타가 상기 어드레스 지정 수단, 루프 카운터 수단 및 기억 제어 레지스터 수단에 보존되는 것을 특징으로 하는 디지탈 신호 처리 장치.
  13. 제12항에 있어서, 상기 한쌍의 디지탈 처리 수단이, 소정 주파수로 샘플링되어서 A-D 변환된 우 채널과 좌 채널의 오디오 신호를 처리하는 디지탈 필터를 구성하고, 상기 인터페이스 수단으로부터 상기 한쌍의 데이타 버스로 송출되는 데이타가 상기 디지탈 필터를 구성하기 위한 계수 데이타인 것을 특징으로 하는 디지탈 신호 처리 장치.
  14. 디지탈 데이타를 전송하기 위한 한쌍의 데이타 버스와, 이 데이타 버스에 각각 접속된 한쌍의 디지탈 처리 수단과, 이 한쌍의 디지탈 처리 수단의 동작을 미리 프로그램된 순서에 따라서 동시에 제어하는 제어 수단을 포함한 디지탈 신호 처리 장치를 사용한 디지탈 신호 처리 방법에 있어서,
    디지탈 데이타를 기억하는 한쌍의 기억 수단을 어드레스하는 어드레스 데이타, 상기 디지탈 데이타를 상기 한쌍의 기억 수단에 전송하는 동작 횟수를 표시하는 루프 데이타, 및 상기 한쌍의 기억 수단의 기억 동작을 지시하는 기억 수단 지시 데이타로 이루어지는 복합 데이타를 인터페이스 수단에서 취출하고, 상기 한쌍의 기억수단의 어드레스를 지정하는 어드레스 지정 수단과 상기 디지탈 데이타의 전송을 제어하는 제어 수단에 설치된 루프 카운터 수단과 상기 한쌍의 기억 수단의 각각의 기억 동작을 제어하는 기억 제어 레지스터 수단에 상기 복합 데이타의 각각을 셋트하는 제1 스텝, 및
    상기 루프 카운터 수단에 셋트된 횟수만큼 상기 인터페이스 수단에서 디지탈 데이타를 취출해서 상기 한쌍의 기억 수단에 전송하고, 상기 기억 제어 레지스터에 셋트된 내용에 기초해서 상기 기억 수단에 전송된 디지탈 데이타를 기억시키는 제2 스텝
    을 포함한 것을 특징으로 하는 디지탈 신호 처리 방법.
  15. 제14항에 있어서, 상기 제2 스텝에서 상기 인터페이스 수단에서 취출되는 디지탈 데이타가, 소정 주파수로 샘플링되어서 A-D 변환된 우 채널과 좌 채널의 디지탈 데이타를 처리하는 한쌍의 디지탈 필터를 구성하기 위한 계수 데이타인것을 특징으로 하는 디지탈 신호 처리 방법.
  16. 디지탈 데이타를 전송하기 위한 한쌍의 데이타 버스와, 이 데이타 버스에 각각 접속된 한쌍의 디지탈 처리 수단과, 이 한쌍의 디지탈 처리 수단의 동작을 미리 프로그램된 순서에 따라서 동시에 제어하는 제어 수단을 포함한 디지탈 신호 처리 장치에 있어서,
    상기 한쌍의 데이타 버스 사이에 디지탈 데이타 교환 수단을 설치한 것을 특징으로 하는 디지탈 신호 처리 장치.
  17. 제16항에 있어서, 상기 디지탈 데이타 교환 수단이, 한쪽의 데이타 버스로 송출된 디지탈 데이타를 보존하여 다른쪽 버스로 출력하는 제1 레지스터 수단과, 다른쪽 데이타 버스로 송출된 디지탈 데이타를 보존하고 한쪽의 데이타 버스로 출력하느 제2 레지스터 수단으로 구성되고, 상기 제1 및 제2 레지스터 수단의 동작이 동시에 행해지는 것을 특징으로 하는 디지탈 신호 처리 장치.
  18. 디지탈 데이타를 전송하기 위한 한쌍의 데이타 버스와, 이 데이타 버스에 각각 접속된 한쌍의 디지탈 처리 수단과, 이 한쌍의 디지탈 처리 수단의 동작을 미리 프로그램된 순서에 따라서 동시에 제어하는 제어 수단을 포함한 디지탈 신호 처리 장치에 있어서,
    상기 제어 수단이,
    명령 코드의 조합된 프로그램을 기억하는 프로그램 메모리 수단,
    상기 프로그램 메모리 수단의 어드레스를 지정하는 프로그램 카운터 수단,
    상기 프로그램 메모리 수단에서 독출된 명령 코드를 해독하고 제어 신호를 출력하는 디코더 수단, 및
    상기 한쌍의 데이타 버스의 한쪽 또는 양쪽에 접속되어 점프 선두 어드레스가 설정되는 점프 어드레스 레지스터 수단과, 이 점프 어드레스 레지스터 수단에 설정된 어드레스를 상기 프로그램 카운터에 선택적으로 인가하는 멀티플렉서 수단
    을 포함하고,
    외부에서 점프 선두 어드레스를 설정 가능하게 한
    것을 특징으로 하는 디지탈 신호 처리 장치.
  19. 제18항에 있어서, 상기 점프 어드레스 레지스터 수단이 점프 명령 실행시, 또는 조건 분기 명령의 실행시에 선택되는 것을 특징으로 하는 디지탈 신호 처리 장치.
  20. 디지탈 데이타를 전송하기 위한 한쌍의 데이타 버스와, 이 데이타 버스에 각각 접속된 한쌍의 디지탈 처리 수단과, 이 한쌍의 디지탈 처리 수단의 동작을 미리 프로그램된 순서에 따라서 동시에 제어하는 제어 수단을 포함한 디지탈 신호 처리 장치에 있어서,
    상기 디지탈 처리 수단이 각각 승산 수단 및 연산 수단을 포함하고,
    상기 승산 수단 및 연산 수단의 동작 결과가 보로우 신호, 캐리 신호, 사인 신호, 또는 오버 플로우 신호의 상태에 따라 셋트되는 복수 쌍의 플래그 수단과, 상기 한쌍의 데이타 버스의 한쪽 또는 양쪽에 접속된 조건 설정 레지스터 수단과, 이 조건 설정 레지스터 수단의 내용에 기초해서 상기 복수쌍의 플래그 수단의 출력을 선택하고 상기 제어 수단에 점프 제어 신호를 출력하는 선택 수단을 포함한 조건분기 제어 수단을 설치한
    것을 특징으로 하는 디지탈 신호 처리장치.
  21. 제20항에 있어서, 상기 복수쌍의 플래그 수단 중 한쌍 이상의 플래그 수단이, 조건 분기 명령의 실행 후에 실행되는 소정 명령에 의해서 리셋트되는 것을 특징으로 하는 디지탈 신호 처리 장치.
  22. 제21항에 있어서, 상기 복수쌍의 플래그 수단 중 한쌍 이상의 플래그 수단이, 상기 승산 수단 또는 연산 수단의 동작 결과가 최대치 또는 최소치를 초과했을 때에 셋트되는 오버플로우 플래그 인 것을 특징으로 하는 디지탈 신호 처리 장치.
KR1019880008911A 1987-07-17 1988-07-16 디지탈 신호처리장치 및 신호처리방법 KR0134042B1 (ko)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
JP62179301A JP2630778B2 (ja) 1987-07-17 1987-07-17 低周波帯域デジタルフィルタの構成方法
JP62-179301 1987-07-17
JP62194894A JPS6437666A (en) 1987-08-04 1987-08-04 Digital signal processor
JP62-194894 1987-08-04
JP63003346A JPH0719246B2 (ja) 1988-01-11 1988-01-11 デジタル信号処理装置
JP63-3346 1988-01-11

Publications (2)

Publication Number Publication Date
KR890002760A KR890002760A (ko) 1989-04-11
KR0134042B1 true KR0134042B1 (ko) 1998-05-15

Family

ID=27275779

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019880008911A KR0134042B1 (ko) 1987-07-17 1988-07-16 디지탈 신호처리장치 및 신호처리방법

Country Status (3)

Country Link
EP (1) EP0299537B1 (ko)
KR (1) KR0134042B1 (ko)
DE (1) DE3853025T2 (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5187795A (en) * 1989-01-27 1993-02-16 Hughes Aircraft Company Pipelined signal processor having a plurality of bidirectional configurable parallel ports that are configurable as individual ports or as coupled pair of ports
EP0442041A3 (en) * 1990-01-18 1991-09-04 National Semiconductor Corporation Integrated digital signal processor/general purpose cpu with shared internal memory
WO1998006041A1 (en) * 1996-08-07 1998-02-12 Sun Microsystems, Inc. Array prefetch apparatus and method
WO1998006039A1 (en) * 1996-08-07 1998-02-12 Sun Microsystems, Inc. Disambiguation memory circuit and operating method
WO1998006042A1 (en) * 1996-08-07 1998-02-12 Sun Microsystems, Inc. Wide instruction unpack method and apparatus

Also Published As

Publication number Publication date
DE3853025D1 (de) 1995-03-23
DE3853025T2 (de) 1995-10-05
EP0299537A3 (en) 1990-04-25
EP0299537A2 (en) 1989-01-18
KR890002760A (ko) 1989-04-11
EP0299537B1 (en) 1995-02-15

Similar Documents

Publication Publication Date Title
Lee Programmable dsp architectures. i
KR880001168B1 (ko) 디지탈 신호처리 시스템
EP0577101B1 (en) Multiplier accumulator
KR0134042B1 (ko) 디지탈 신호처리장치 및 신호처리방법
JP3022186B2 (ja) デジタル信号処理装置
Thompson et al. An LSI digital signal processor
JP2766191B2 (ja) デジタル信号処理装置及び信号処理方法
JP2686234B2 (ja) デジタル信号処理装置及び信号処理方法
US5812979A (en) Synthesis filter for MPEG-2 audio decoder
JPH01179515A (ja) デジタル信号処理装置
JP2630778B2 (ja) 低周波帯域デジタルフィルタの構成方法
KR950006589B1 (ko) 정보 처리 장치
JP3503141B2 (ja) ディジタル演算処理装置
JP2943112B2 (ja) デジタル信号処理装置
JP3428334B2 (ja) デジタル信号処理装置
GB2026740A (en) Digital processor for processing analog signals
JP2834746B2 (ja) デジタル信号処理装置及びそのアドレスデータ作成方法
JPH07101835B2 (ja) デジタル信号処理装置
JPH0695627B2 (ja) 低周波帯域デジタルフィルタ
SU1048481A1 (ru) Устройство дл вычислени многочленов
Tomarakos et al. Using The Low-Cost, High Performance ADSP-21065L Digital Signal Processor For Digital Audio Applications
JPS6211970A (ja) アドレス発生回路
Barral et al. VLSI Architecture for a real-time LPC-based feature extractor
JPS61288613A (ja) デイジタルフイルタ
JPH04266151A (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: 20071207

Year of fee payment: 11

LAPS Lapse due to unpaid annual fee