KR100251547B1 - Digital signal processor - Google Patents
Digital signal processor Download PDFInfo
- Publication number
- KR100251547B1 KR100251547B1 KR1019970045344A KR19970045344A KR100251547B1 KR 100251547 B1 KR100251547 B1 KR 100251547B1 KR 1019970045344 A KR1019970045344 A KR 1019970045344A KR 19970045344 A KR19970045344 A KR 19970045344A KR 100251547 B1 KR100251547 B1 KR 100251547B1
- Authority
- KR
- South Korea
- Prior art keywords
- data
- bits
- input
- bit
- computing
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/57—Arithmetic logic units [ALU], i.e. arrangements or devices for performing two or more of the operations covered by groups G06F7/483 – G06F7/556 or for performing logical operations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/14—Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
- G06F17/141—Discrete Fourier transforms
- G06F17/142—Fast Fourier transforms, e.g. using a Cooley-Tukey type algorithm
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/499—Denomination or exception handling, e.g. rounding or overflow
- G06F7/49905—Exception handling
- G06F7/4991—Overflow or underflow
- G06F7/49921—Saturation, i.e. clipping the result to a minimum or maximum value
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/499—Denomination or exception handling, e.g. rounding or overflow
- G06F7/49942—Significance control
- G06F7/49947—Rounding
Abstract
Description
본 발명은 각종 디지탈(Digital)신호를 소프트 웨어에 의해 처리하는 디지탈신호처리기(Digital Signal Processor : 이하 "DSP"라 함)에 관한 것이다.The present invention relates to a digital signal processor (hereinafter referred to as a "DSP") for processing various digital signals by software.
DSP는 연산기능을 가지는 중앙처리장치(Central Processing Unit : 이하 "CPU"라 함)의 일종으로서, 원래 미합중국의 전자회사인 "텍사스 인스트루먼츠 (Texas Instruments ; 이하 "TI"라 함) 사의 주도하에 발전되었다. 이 DSP는 최근에 비디오 및 오디오신호의 처리에 적용되면서 그 사용이 급격하게 증가되고 있다. 특히, 오디오 신호의 여러가지 처리방식들 중에서 MPEG(Moving Picture Expert Group)에 의해 국제표준으로 제정되어진 오디오압축알고리듬인 "뮤지캠(Musicam)"이나 "돌비(Dolby)사"의 디지탈 오디오 압축·복원 알고리듬인 "AC-3"등을 구현하는 DSP들이 급격하게 출현하고 있다. 이에 따라, 세계 유수의 기업들(특히, 구미의 여러회사들)은 자사의 이익을 증대하기 위하여 자사 고유의 독자적인 DSP의 개발에 박차를 가하고 있는 실정이다.DSP is a type of central processing unit (CPU) that has arithmetic functions. It was originally developed by the US electronics company "Texas Instruments" ("TI"). This DSP has recently been applied to the processing of video and audio signals, and its use has increased rapidly, especially audio compression, which has been established as an international standard by the Moving Picture Expert Group (MPEG) among various processing methods of audio signals. DSPs that implement the algorithm "Musicam" or "Dolby" 's digital audio compression and restoration algorithm "AC-3" are rapidly appearing. Many companies in the US, in particular, are spurring the development of their own DSPs to increase their profits.
이러한 오디오신호 처리용의 DSP는 지금까지 보편적으로 사용되어온 "TI"사의 고정소수점(Fixed-Point) DSP에 비하여 내부 연산을 위한 워드길이(Word Length)가 길다. 예를 들면, "TI"사의 TMS320C5x 시리즈의 DSP는 16비트(Bit)의 데이타 워드길이와 32비트의 연산로직유니트(Arithmatic Logic Unit; 이하 "ALU"라 함)를 구비하는 반면에 MEPG의 "뮤지캠" 및 돌비 사의 "AC-3"을 구현하기 위해 개발되어진 최근의 DSP들은 거의 모두 20비트 이상의 데이타 워드길이와 48비트 이상의 ALU를 구비하고 있다. 좀 더 구체적으로 언급하면, "야마하(Yamaha)"사의 "YSS243", "모토로라(Motorola)"사의 "DSP5600x", "크리스탈 세미콘덕터"(Crystal Semicon duc to r)"사의 CS2923" 및 "메디아닉스 세미콘덕터(Medianix Semiconductor)"사의 MED25201 등의 DSP들은 모두 "돌비"사의 "AC-3"의 오디오신호를 디코딩 (Decodi gn)하기 위해 24비트의 데이다 워드길이와 56비트의 ALU를 구비한다. 또한, "조란(Zoran)"사의 "ZR38000" 및 후지쓰(Fujitsu)"의 "MB86342"등과 같은 DSP들은 모두 "돌비"사의 "AC-3"의 오디오신호를 디코딩하기 위해 20비트의 데이타 워드길이와 48 비트의 ALU를 구비한다.The DSP for audio signal processing has a longer word length for internal operation compared to the fixed-point DSP of TI, which has been commonly used up to now. For example, the DSP of the TMS320C5x series of "TI" has a 16-bit data word length and a 32-bit Arithmatic Logic Unit ("ALU"), while the "Pacific" of MEPG The latest DSPs, developed to implement Cam and Dolby's "AC-3", have almost 20-bit data word lengths and 48-bit ALUs. More specifically, "YSS243" from "Yamaha", "DSP5600x" from "Motorola", "CS2923" from "Crystal Semicon duc to r" and "Medianics Semicon" DSPs, such as MED25201, manufactured by Ducter, Inc., all have 24 bits of word length and 56 bits of ALU to decode audio signals of "Dolby" "AC-3". In addition, DSPs such as "ZR38000" from "Zoran" and "MB86342" from Fujitsu all have a data bit length of 20 bits to decode audio signals of "AC-3" from "Dolby". It has a 48-bit ALU.
이와 같은 구성되어진 DSP들은 모두 N비트의 길이를 가지는 두개의 데이타를 제1도에서와 같이 연산하게 된다. 제1 및 제2데이타(10, 12)는 메모리로부터 판독되어 승산기에 의해 승산됨으로써 그 승산결과인 제3데이타를 발생시킨다. 제1 및 제2데이타(10, 12)는 모두 N 비트의 길이를 가지며 정수부와 소수부로 구성된다. 승산기의 승산결과인 제3데이타(14)는 최대 2N비트의 길이를 가질 수 있고 이에 따라 2N비트의 승산용 레지스터에 일시적으로 저장되게 된다. 이어서 제3데이타(14)는 제1 및 제2데이타(10, 12)의 정수부(Interger Part)의 비트 수, 예를 들면 R비트만큼 배럴쉬프터 (Barrerl Shifter)에 의해 쉬프트되어 그 쉬프트 결과인 2N비트의 제4데이타(16)가 산출되도록 한다. 제4데이타(16)는 ALU에 의해 로직연산됨으로써 제5데이타(18)를 생성시킨다. ALU의 연산결과인 제5데이타(18)에는 오버플로우(Overflow)가 발생될 수 있다. 이 오버플로우를 처리하기 위하여, "TI"사의 "TMS320C5x"와 같은 DSP에서는 제5데이타(18)를 포화시킨다. 이를 상세히 하면, ALU에 의해 연산된 제5데이타(18)가 2N비트의 누적용 레지스터에 저장되기 곤란한 비트길이를 가지는 경우, 즉 제5데이타(18)에 오버플로우가 발생되면 "TMS320C5x"의 DSP는 제5데이타(18)를 포화시키고 그 포화된 제5데이타(18)를 누적용 레지스터에 저장함으로써 오버플로우에 의한 오차를 완화시킨다. 이와는 달리, "모토로라"사의 "DSP5600x"등과 같은 DSP들은 제1도에서와 같이 비트를 오버플로우 보호용으로서 누적용 레지스터에 부가한다. 이 경우, ALU와 누적용 레지스터는 모두 "8+2N"비트의 길이를 가지게 된다. 이러한 오버플로우 보호비트를 앞서 열거한 "AC-3" 전용 DSP들에 적용하면, 24비트의 데이타 워드길이를 가지는 DSP들은 데이타가 N=24비트이므로 56비트의 누적기를 그리고 20비트의 데이타 워드 길이를 가지는 DSP들은 데이타가 N=20비트이므로 48비트의 누적기를 각각 포함하에 된다. 그리고 오버플로우 보호비트들이 부가된 제5데이타(18)는 포화처리됨으로써 메모리에 저장되어진 제1 및 제2데이타(10, 12)와 같은 비트길이를 가지는 제6데이타(20)로 변화된다.The DSPs configured as described above operate two data having a length of N bits as shown in FIG. The first and
상기한 일련의 연산과정을 수행하기 위하여 대부분의 DSP들은 48 비트 이상의 큰 워드길이를 가지는 ALU 및 누적용 레지스터를 구비하여야만 했었다. 48비트이상의 큰 워드길이를 가지는 이들 ALU 및 누적기는 DSP칩(Chip)상의 다이 사이즈(Die Size)를 크게하고 아울러 ALU에서의 전파지연량을 증가시킨다. 따라서, 워드길이가 큰 ALU 및 누적기는 DSP칩의 제조비용을 증가시키는 요인이 됨은 물론 DSP의 동작속도를 저하시키는 요인으로 작용하게 된다.In order to perform the above series of operations, most DSPs had to have ALUs and cumulative registers having a large word length of 48 bits or more. These ALUs and accumulators, which have large word lengths of more than 48 bits, increase the die size on the DSP chip and increase the amount of propagation delay in the ALU. Therefore, the ALU and accumulator having a large word length not only increases the manufacturing cost of the DSP chip but also acts as a factor of decreasing the operation speed of the DSP.
그리고 대부분의 DSP에서는 데이타의 포화처리에 앞서 라운딩(Rounding)연산을 지원한다. 예를 들면, "모토로라"사의 DSP는 "rnd"라는 명령어에 의해 누적용 레지스터에 저장된 "8+2N"비트의 데이타를 "8+N"비트의 데이타로 변환한다. 이 라운딩된 데이타는 최종적으로 "N"비트의 데이타로 포화된 후 메모리에 저장된다. 이러한 라운딩 연산을 위하여 대부분의 DSP들은 하나의 명령어 또는 클럭주기를 추가로 소모하고 있다. 이 같은 명령어 또는 클럭주기의 추가적인 소모는 루우핑(Looping) 또는 블록반복 (Block Repeating)이 적용되는 코드 세그먼트(Code Segment)에 라운딩 연산이 들어가는 경우 추가로 소모되는 클럭주기들이 매우 많아져서 DSP의 전체적인 연산량이 크게 증가된다.Most DSPs support rounding operations before saturating the data. For example, the "Motorola" DSP converts "8 + 2N" bits of data stored in the accumulation register into "8 + N" bits by the command "rnd". This rounded data is finally saturated with "N" bits of data and then stored in memory. For these rounding operations, most DSPs consume an additional instruction or clock period. This additional consumption of instructions or clock cycles results in a large number of additional clock cycles when the rounding operation is applied to the code segment to which looping or block repeating is applied. The amount of computation is greatly increased.
또한, "TI"사의 "TMS320C5x"와 같은 DSP는 ALU앞단에 위치한 프리-스케일링 쉬프터(Pre-scaling Shifter)를 이용하여 ALU에서 연산될 이진데이타를 0 내지 16비트까지 좌측으로 쉬프트시킨다. 이때, "0"번째 비트에서 "15"번째 비트까지의 쉬프트동작은 통상 이진데이타를 스케일링하는데 이용되지만, "16"번째 비트까지의 쉬프트동작은 정수(Interger) 연산이 아닌 고정소수점(Fixed Point) 연산이 수행될 경우에 사용된다. 이는 고정소수점 연산의 경우에 메모리로부터 판독된 16비트 데이타가 32비트의 누적용 레지스터의 상위비트들에 정렬되어야 하기 때문이다. 데이타를 스케일링하기 위한 "0"번째 비트 내지 "15"번째 비트까지의 쉬프트동작은 주어진 알고리듬에 따라 특히 부호화(Coding) 방식에 따라 유용하게 사용될 수도 있고 그렇지 않을 수도 있다. 프리스케일링이 유용하게 사용되지 않는 코드로 구현된 알고리듬을 수행하는 경우에 스케일링 쉬프터는 그다지 도움을 주지 않으면서 DSP칩의 다이 사이즈를 크게함과 아울러 전파지연량을 증가시킨다. 일례로, "모토로라"사의 DSP에 포함된 프리-스케일링 쉬프터는 데이타를 좌측 또는 우측으로 1비트 만큼 쉬프트시키게 되어 있다. 대신에, "모토로라"의 DSP는 부동소수점 연산과 정수 연산을 위해 서로 다른 승산명령어를 제공함으로써 "TI"사의 "TMS320C5x"가 데이타를 16비트 만큼 좌측으로 쉬프트하는 동작을 흡수하고 있다.In addition, DSPs such as "TMS320C5x" from "TI" use a pre-scaling shifter located in front of the ALU to shift the binary data to be computed in the ALU to the left from 0 to 16 bits. At this time, the shift operation from the "0" th bit to the "15" th bit is normally used to scale binary data, but the shift operation up to the "16" th bit is a fixed point, not an integer operation. Used when an operation is performed. This is because in the case of fixed-point arithmetic, 16-bit data read from memory must be aligned with the upper bits of the 32-bit accumulation register. Shift operations from the "0" th bit to the "15" th bit for scaling data may or may not be usefully used depending on a given algorithm, in particular, a coding method. When performing algorithms implemented in code where prescaling is not useful, the scaling shifter increases the DSP chip die size and increases propagation delay without much help. In one example, the pre-scaling shifter included in the "Motorola" DSP is to shift data one bit to the left or to the right. Instead, Motorola's DSPs offer different multiply instructions for floating-point and integer operations, absorbing the "TI" 's "TMS320C5x" shifting data left by 16 bits.
다음으로, DSP에서는 각 명령어가 얼마나 빠르게 수행될 수 있는가 하는 것이 중요하게 여겨지고 있다. 명령어의 고속 수행을 위하여는 DSP에 인가되는 명령어의 주기가 짧아져야 하고 가능한 많은 명령어가 병렬로 처리되어야 한다. 전자의 명령어 주기를 짧게하는 것은 하드웨어, 즉 회로구성에 관련된 문제로서 DSP에 가능한 불필요한 블록(예를 들면, 이미 언급한 프리-스케일링 쉬프터)이 존재하지 않도록 하여 회로적인 경로를 짧게 하는 것이다. 후자의 명령어의 병렬처리능력은 DSP가 많은 계산을 필요로 하는 비디오/오디오 디코딩의 용도로 사용되면서 과거가 같은 순차적인 명령수행방식으로는 필요한 계산능력을 갖추지 못하는 것에서 비롯된다. 따라서, DSP들은 병렬처리가 가능한 특수한 명령어들은 갖추어 가고 있는 실정이다. 예를 들면, "아날로그 디바이스 (Analog Device)"사의 DSP인 "DSP21020"은 FFT연산을 위한 버터플라이 (Butterfly) 연산과 같이 다수의 복합연산식들을 몇개의 클럭주기만에 수행하는 특수 명령어들을 가지고 있다. 이를 위하여, "ADSP21020"은 연산과 관련된 최소 12개의 레지스터들로 구성되어진 레지스터 화일(Register File)을 갖추고 있다. 또한, "Zoran"사의 "ZR38000"도 FFT용 버터플라이와 같은 다수의 복합연산식들을 단 몇개의 클럭주기만에 수행한다. 이를 위해, ZR38000은 8개의 레지스터들로 이루어진 레지스터 화일을 가짐과 아울러 승산과 그 결과의 가감산을 한 클럭주기안에 한꺼번에 수행하는 구조를 가지고 있다.Next, in DSP, it is important to know how fast each instruction can be executed. For fast execution of instructions, the period of instructions applied to the DSP should be shortened and as many instructions as possible should be processed in parallel. Shortening the former instruction cycle is a hardware-, circuit-related problem that shortens the circuit path by eliminating unnecessary blocks (e.g., the pre-scaling shifters already mentioned) possible in the DSP. The parallelism of the latter instruction comes from the fact that DSPs are used for video / audio decoding, which requires a lot of computation, and the same sequential instruction execution method does not have the necessary computational capability. Therefore, DSPs are equipped with special instructions capable of parallel processing. For example, "DSP21020" DSP, "Analog Device", has special instructions for performing multiple complex expressions in a few clock cycles, such as a butterfly operation for FFT operations. For this purpose, the "ADSP21020" has a register file consisting of at least 12 registers associated with the operation. In addition, Zor38000 also performs many complex equations, such as butterfly for FFT, in just a few clock cycles. To this end, the ZR38000 has a register file consisting of eight registers and a structure that performs multiplication and addition and subtraction of the result in one clock cycle.
따라서, 본 발명의 목적은 다수의 복합연산식을 병행 연산할 수 있는 디지탈신호처리방법 및 DSP를 제공함에 있다.Accordingly, an object of the present invention is to provide a digital signal processing method and a DSP capable of performing a plurality of complex computational expressions in parallel.
본 발명의 다른 목적은 논리값의 스케일을 포함하는 연산을 고속으로 수행할 수 있는 DSP를 제공함에 있다.Another object of the present invention is to provide a DSP capable of performing an operation including a scale of a logic value at a high speed.
본 발명의 또 다른 목적은 정수 연산과 고정소수점 연산을 효율적으로 수행할 수 있는 DSP를 제공함에 있다.Another object of the present invention is to provide a DSP capable of efficiently performing integer operations and fixed-point operations.
제1도는 종래의 DSP의 신호처리과정을 개략적으로 도시하는 도면.1 is a diagram schematically showing a signal processing procedure of a conventional DSP.
제2도는 본 발명의 실시예에 따른 DSP의 블럭도.2 is a block diagram of a DSP according to an embodiment of the present invention.
제3도는 제2도에 도시된 DSP 중 2이상의 복합연산식의 연산을 병렬로 수행하는 일부분의 회로를 도시하는 도면.FIG. 3 is a diagram showing a part of a circuit for performing a computation of two or more complex calculation equations in the DSP shown in FIG.
* 도면의 주요부분에 대한 부호의 설명* Explanation of symbols for main parts of the drawings
30, 40, 44, 48, 64, 66, 76, 78 : 제1 내지 제8레지스터30, 40, 44, 48, 64, 66, 76, 78: first through eighth registers
32, 34, 82, 84 : 제1 내지 제4비트정렬기32, 34, 82, 84: first to fourth bit sorter
38 : 가드비트부가기38: Guard bit addition
36, 42, 52, 54, 56, 62, 68, 70, 74, 80, 88 : 제1 내지 제11 멀티플렉서36, 42, 52, 54, 56, 62, 68, 70, 74, 80, 88: first to eleventh multiplexers
46 : 승산기 48 : 비트조절기46: multiplier 48: beat controller
58, 72 : 제1 및 제2 ALU 60 : 배럴쉬프터58, 72: first and second ALU 60: barrel shifter
86 : 라운딩/포화처리기86: rounding / saturation processor
상기 목적을 달성하기 위하여, 본 발명에 따른 디지탈신호처리방법은 제1 및 제2입력라인들로부터의 데이타들을 제1연산수단을 이용하여 연산하는 단계와, 제1연산수단에 의해 연산된 데이타를 제1 및 제2 입력라인중 어느 한쪽 입력라인으로부터의 데이타를 제2연산수단을 이용하여 연산하는 단계와, 제1연산수단에 의해 연산된 데이타를 제1 및 제2입력라인중 어느 한쪽 입력라인으로부터의 데이타를 제3연산수단을 이용하여 연산하는 단계를 포함한다.In order to achieve the above object, the digital signal processing method according to the present invention comprises the steps of calculating the data from the first and second input lines by using a first calculation means, and the data calculated by the first calculation means. Calculating data from one of the first and second input lines using a second calculating means, and inputting the data calculated by the first calculating means to either one of the first and second input lines. Calculating data from the data using third computing means.
본 발명에 따른 디지탈신호처리방법은 제1 및 제2입력라인들로부터의 데이타들을 제1연산수단을 이용하여 연산하는 단계와, 제1연산수단에 의해 연산된 데이타와 제1 및 제2입력라인과 제1레지스터화일에 접속되어진 제1귀환라인중 어느 한쪽 라인으로부터의 데이타를 제2연산수단을 이용하여 연산하는 단계와, 제1연산수단에 의해 연산된 데이타와 제1 및 제2입력라인과 제2레지스터화일에 접속되어진 제2귀환라인중 어느 한쪽 라인으로부터의 데이타를 제3연산수단을 이용하여 연산하는 단계를 포함한다.The digital signal processing method according to the present invention comprises the steps of computing data from the first and second input lines by using a first calculation means, data calculated by the first calculation means, and first and second input lines. And calculating data from one of the first feedback lines connected to the first register file by using the second calculating means, the data calculated by the first calculating means, and the first and second input lines; Calculating data from one of the second feedback lines connected to the second register file by using the third calculation means.
본 발명에 따른 디지탈신호처리방법은 제1 및 제2입력라인들로부터의 데이타들을 제1연산수단을 이용하여 연산하는 단계와, 제1연산수단에 의해 연산된 데이타와 제1 및 제2입력라인, 제1레지스터화일에 접속되어진 제1귀환라인 및 제2레지스터화일에 접속되어진 제2귀환라인중 어느 한쪽 라인으로부터의 데이타를 상기 제1레지스터화일에 접속되어진 제2연산수단을 이용하여 연산하는 단계와, 제1연산수단에 의해 연산된 데이타와 제1 및 제2입력라인과 제1 및 제2귀환라인중 어느 한쪽 라인으로부터의 데이타를 제2레지스터화일에 접속되어진 제3연산수단을 이용하여 연산하는 단계를 포함한다.The digital signal processing method according to the present invention comprises the steps of computing data from the first and second input lines by using a first calculation means, data calculated by the first calculation means, and first and second input lines. Calculating data from any one of a first feedback line connected to a first register file and a second feedback line connected to a second register file using a second calculation means connected to the first register file. And calculating the data calculated by the first calculating means and the data from either one of the first and second input lines and the first and second feedback lines using the third calculating means connected to the second register file. It includes a step.
본 발명에 따른 DSP는 N비트의 데이타를 각각 입력하기 위한 제1 및 제2 입력수단과, 제1 및 제2입력수단으로부터의 데이타들을 연산하는 제1연산수단과, 제1연산수단으로부터의 데이타와 제1 및 제2입력수단중 어느 한쪽으로부터의 데이타를 연산하는 제2연산수단과, 제1 연산수단으로부터의 데이타와 제1 및 제2입력수단으로부터의 데이타를 연산하는 제3연산수단을 구비한다.DSP according to the present invention includes first and second input means for inputting N bits of data, first calculation means for calculating data from the first and second input means, and data from the first calculation means. And second calculating means for calculating data from either one of the first and second input means, and third calculating means for calculating data from the first calculating means and data from the first and second input means. do.
본 발명에 따른 DSP는 N비트의 데이타를 각각 입력하기 위한 제1 및 제2입력수단과, 제1 및 제2입력라인들로부터의 데이타들을 연산하는 제1연산수단과, 제1연산수단에 의해 연산된 데이타와 제1 및 제2입력라인, 제1귀환라인중 어느 한쪽 라인으로부터의 데이타를 연산하는 제2연산수단과, 제1연산수단에 의해 연산된 데이타와 제1 및 제2입력라인과 제2귀환라인중 어느 한쪽 라인으로부터의 데이타를 연산하는 제3연산수단과, 제1 귀환라인에 접속되어 제2연산수단으로부터의 데이타를 일시적으로 보관하는 제1레지스터화일과, 제2귀환라인에 접속되어 제3연산수단으로부터의 데이타를 일시적으로 보관하는 제2레지스터화일을 구비한다.The DSP according to the present invention comprises a first and second input means for inputting N bits of data, first computing means for calculating data from the first and second input lines, and first computing means. Second calculation means for calculating the calculated data and data from any one of the first and second input lines and the first feedback line, data calculated by the first calculation means, and first and second input lines; Third computing means for computing data from any one of the second feedback lines, a first register file connected to the first feedback line for temporarily storing data from the second computing means, and a second feedback line. And a second register file for temporarily storing data from the third computing means.
본 발명에 따른 DSP는 데이타를 각각 입력하기 위한 제1 및 제2입력라인과, 제1 및 제2입력라인들로부터의 데이타들을 연산하는 제1연산수단과, 제1연산수단으로부터의 데이타와 제1 및 제2입력라인과 제1귀환라인 및 제2귀환라인중 어느 한쪽 라인으로부터의 데이타를 연산하는 제2연산수단과, 제1연산수단으로부터의 데이타와 제1 및 제2입력라인과 제1 및 제2 귀환라인중 어느 한쪽 라인으로부터의 데이타를 연산하는 제3연산수단과, 제1 귀환라인에 접속되어 제2연산수단으로부터의 데이타를 일시적으로 보관하는 제1레지스터화일과, 제2귀환라인에 접속되어 제3연산수단으로부터의 데이타를 일시적으로 보관하는 제2레지스터화일을 구비한다.DSP according to the present invention includes first and second input lines for inputting data, first calculation means for calculating data from the first and second input lines, and data from the first calculation means. Second computing means for computing data from any one of the first and second input lines, the first feedback line and the second feedback line, data from the first calculation means, first and second input lines, and first And third computing means for computing data from any one of the second feedback lines, a first register file connected to the first feedback line for temporarily storing data from the second computing means, and a second feedback line. And a second register file for temporarily storing data from the third computing means.
본 발명에 따른 DSP는 N비트의 데이타를 각각 입력하기 위한 제1 및 제2입력수단과, 제1 및 제2입력수단으로부터의 데이타들을 연산하는 제1연산수단과, 제1 및 제2입력수단과 제1연산수단중 어느 한쪽으로부터의 데이타를 스케일링-업하는 스케일링수단과, 제1연산수단으로부터의 데이타와 제1 및 제2입력수단과 스케일링수단중 어느 한쪽으로부터의 데이타를 연산하는 제2연산수단과, 제1연산수단으로부터의 데이타와 제1 및 제2입력수단과 스케일링수단중 어느 한쪽으로부터의 데이타를 연산하는 제3연산수단을 구비한다.DSP according to the present invention includes first and second input means for inputting N bits of data, first computing means for calculating data from the first and second input means, and first and second input means. And scaling means for scaling up data from either of the first calculation means, and a second operation for calculating data from the first calculation means and data from any one of the first and second input means and the scaling means. Means; and third computing means for computing data from the first computing means and data from either one of the first and second input means and the scaling means.
본 발명에 따른 DSP는 N비트의 데이타를 각각 입력하기 위한 제1 및 제2입력수단과, 제1 및 제2입력라인들로부터의 데이타들을 연산하는 제1연산수단과, 제1연산수단에 의해 연산된 데이타와 제1 및 제2입력라인, 제1귀환라인중 어느 한쪽 라인으로부터의 데이타를 연산하는 제2연산수단과, 제1연산수단에 의해 연산된 데이타와 제1 및 제2입력라인과 제2귀환라인중 어느 한쪽 라인으로부터의 데이타를 연산하는 제3연산수단과, 제1연산수단, 제1 및 제2입력라인과 제1 및 제2귀환라인중 어느 한쪽으로부터의 데이타를 스케이링-업하는 스케일링수단과, 제1귀환라인에 접속되어 제2연산수단 및 스케일링수단으로부터의 데이타들을 일시적으로 보관하는 제1레지스터화일과, 제2귀환라인에 접속되어 제3연산수단과 스케일링수단으로부터의 데이타들을 일시적으로 보관하는 제2레지스터화일을 구비한다.The DSP according to the present invention comprises a first and second input means for inputting N bits of data, first computing means for calculating data from the first and second input lines, and first computing means. Second calculation means for calculating the calculated data and data from any one of the first and second input lines and the first feedback line, data calculated by the first calculation means, and first and second input lines; Skating the data from any one of the first calculation means, the first and second input lines, and the first and second feedback lines; Up a scaling means, a first register file connected to the first return line to temporarily store data from the second calculation means and the scaling means, and a third register connected to the second return line from the third calculation means and the scaling means. Data temporarily And a second register file for storing a.
본 발명에 따른 DSP는 데이타를 각각 입력하기 위한 제1 및 제2입력라인과, 제1 및 제2입력라인들로부터의 데이타들을 연산하는 제1연산수단과, 제1연산수단으로부터의 데이타와 제1 및 제2입력라인과 제1귀환라인 및 제2귀환라인중 어느 한쪽 라인으로부터의 데이타를 연산하는 제2연산수단과, 제1연산수단으로부터의 데이타와 제1 및 제2입력라인과 제1 및 제2귀환라인중 어느 한쪽 라인으로부터의 데이타를 연산하는 제3연산수단과, 제1연산수단, 제1 및 제2입력라인과 제1 및 제2귀환라인중 어느 한쪽으로부터의 데이타를 스케일링-업하는 스케일링수단과, 제1귀환라인에 접속되어 제2연산수단 및 스케일링수단으로부터의 데이타들을 일시적으로 보관하는 제1레지스터화일과, 제2귀환라인에 접속되어 제3연산수단과 스케일링수단으로부터의 데이타들을 일시적으로 보관하는 제2레지스터화일을 구비한다.DSP according to the present invention includes first and second input lines for inputting data, first calculation means for calculating data from the first and second input lines, and data from the first calculation means. Second computing means for computing data from any one of the first and second input lines, the first feedback line and the second feedback line, data from the first calculation means, first and second input lines, and first And third computing means for computing data from any one of the second feedback lines, and scaling data from any one of the first computing means, the first and second input lines, and the first and second feedback lines. Up a scaling means, a first register file connected to the first return line to temporarily store data from the second calculation means and the scaling means, and a third register connected to the second return line from the third calculation means and the scaling means. Data A second register file for temporary storage is provided.
본 발명에 따른 DSP는 N비트의 데이타를 각각 입력하기 위한 제1 및 제2입력수단과, 제1 입력수단으로부터의 N비트 데이타에 r비트 만큼 좌측으로 쉬프트하는 제1고정쉬프터와, 제2입력수단으로부터의 N비트 데이타에 r비트 만큼 좌측으로 쉬프트하는 제2고정쉬프터와, 제1 및 제2입력수단으로부터의 데이타들을 승산하는 제1연산수단과, 제1연산수단으로부터의 데이타를 N비트로 조절하고 그 조절된 데이타를 r비트 만큼 좌측으로 쉬프트시키는 비트조절수단과, 비트조절수단으로부터의 데이타와 제1 및 제2고정쉬프터중 어느 한쪽으로부터의 데이타를 연산하는 제2연산수단과, 제1연산수단으로부터의 데이타와 제1 및 제2고정쉬프터중 한쪽으로부터의 데이타를 연산하는 제3연산수단과, 제1 및 제2연산수단중 어느 한쪽으로부터의 데이타에서 상위 N비트만을 추출하는 추출수단을 구비한다.The DSP according to the present invention includes first and second input means for inputting N bits of data, a first fixed shifter shifting left by n bits to N bits of data from the first input means, and a second input. A second fixed shifter for shifting the N-bit data from the means to the left by r bits, the first computing means for multiplying the data from the first and second input means, and the data from the first computing means to N bits. Bit adjusting means for shifting the adjusted data to the left by r bits, second calculating means for calculating data from the bit adjusting means and data from any one of the first and second fixed shifters, and a first operation. Third-order calculation means for calculating data from the means and data from one of the first and second fixed shifters, and the upper N bits in the data from either of the first and second calculation means. An extraction means for extracting comprises a.
본 발명에 따른 DSP는 N비트의 데이타를 각각 입력하기 위한 제1 및 제2입력수단과, 제1입력수단으로부터의 N비트 데이타에 r비트 만큼 우측으로 쉬프트하는 제1고정쉬프터와, 제2입력수단으로부터의 N비트 데이타에 r비트 만큼 우측으로 쉬프트하는 제2고정쉬프터와, 제1 및 제2입력수단으로부터의 데이타들을 승산하는 제1연산수단과, 제1연산수단으로부터의 데이타를 N비트로 조절하고 그 조절된 데이타를 r비트 만큼 우측으로 쉬프트시키는 비트조절수단과, 비트조절수단으로부터의 데이타와 제1 및 제2고정쉬프터중 어느 한쪽으로부터의 데이타를 연산하는 제2연산수단과, 제1연산수단으로부터의 데이타와 제1 및 제2고정쉬프터중 한쪽으로부터의 데이타를 연산하는 제3연산수단과, 제1 및 제2연산수단중 어느 한쪽으로부터의 데이타에서 하위 N비트 만을 추출하는 추출수단을 구비한다.The DSP according to the present invention includes first and second input means for inputting N bits of data, a first fixed shifter for shifting the N bits of data from the first input means to the right by r bits, and a second input. A second fixed shifter for shifting the N-bit data from the means to the right by r bits, the first computing means for multiplying the data from the first and second input means, and the data from the first computing means to N bits. Bit adjusting means for shifting the adjusted data to the right by r bits, second operating means for calculating data from the bit adjusting means and data from either the first or second fixed shifter, and the first operation. Third operating means for computing data from the means and data from one of the first and second fixed shifters, and the lower N bits in the data from either one of the first and second computing means. An extraction means for extracting comprises a.
본 발명에 따른 DSP는 N비트의 데이타를 각각 입력하기 위한 제1 및 제2입력수단과, 제1입력수단으로부터의 N비트 데이타에 r비트 만큼 좌측으로 쉬프트하는 제1고정쉬프터와, 제2입력수단으로부터의 N비트 데이타에 r만큼 좌측으로 쉬프트하는 제2고정쉬프터와, 제1입력수단으로부터의 N비트 데이타에 r비트 만큼 우측으로 쉬프트하는 제3고정쉬프터와, 제2입력수단으로부터의 N비트 데이타에 r만큼 우측으로 쉬프트하는 제4고정쉬프터와, 제1 및 제3고정쉬프터중 어느 한쪽으로부터의 데이타를 선택하는 제1선택수단과, 제2 및 제4고정쉬프터중 어느 한쪽으로부터의 데이타를 선택하는 제2선택수단과, 제1 및 제2입력수단으로부터의 데이타들을 승산하는 제1연산수단과, 제1연산수단으로부터의 데이타를 N비트로 조절하고 그 조절된 데이타를 r비트 만큼 좌측으로 쉬프트시키는 제1비트조절수단과, 제1연산수단으로부터의 데이타를 N비트로 조절하고 그 조절된 데이타를 r비트 만큼 우측으로 쉬프트시키는 제2비트조절수단과, 제1 및 제2비트조절수단주 어느 한쪽으로부터의 데이타를 선택하는 제3선택수단과, 제3선택수단으로부터의 데이타와 제1 및 제2선택수단중 어느 한쪽으로부터의 데이타를 연산하는 제2연산수단과, 제3선택수단으로부터의 데이타와 제1 및 제2선택수단중 어느 한쪽으로부터의 데이타를 연산하는 제2연산수단과, 제1 및 제2연산수단중 어느 한쪽으로부터의 데이타에서 상위 N비트만을 추출하는 제1추출수단과, 제1 및 제2연산수단중 어느 한쪽으로부터의 데이타에서 하위 N비트만을 추출하는 제2추출수단과, 제1 및 제2추출수단중 어느 한쪽으로부터의 데이타를 선택하는 제4선택수단을 구비한다.The DSP according to the present invention includes first and second input means for inputting N bits of data, a first fixed shifter for shifting left by n bits to N bits of data from the first input means, and a second input. A second fixed shifter shifting left by N bits to the N-bit data from the means; a third fixed shifter shifting right by r bits to the N-bit data from the first input means; and N bits from the second input means. A fourth fixed shifter shifting the data to the right by r, first selecting means for selecting data from any one of the first and third fixed shifters, and data from any one of the second and fourth fixed shifters. The second selecting means for selecting, the first calculating means for multiplying the data from the first and second input means, the data from the first calculating means by N bits and the adjusted data left by r bits. First bit adjusting means for shifting to the side, second bit adjusting means for adjusting the data from the first calculating means to N bits and shifting the adjusted data to the right by r bits, and first and second bit adjusting means. Third selecting means for selecting data from either one, second calculating means for calculating data from the third selecting means and data from any one of the first and second selecting means, and from the third selecting means. Second calculating means for calculating data and data from either one of the first and second selecting means, first extracting means for extracting only the upper N bits from data from any one of the first and second calculating means; Second extracting means for extracting only the lower N bits from data from either one of the first and second computing means, and fourth selecting means for selecting data from either one of the first and second extracting means; The rain.
본 발명에 따른 DSP는 N비트의 데이타를 각각 입력하기 위한 제1 및 제2입력수단과, 제1입력수단으로부터의 N비트 데이타에 r비트 만큼 좌측으로 쉬프트하는 제1고정쉬프터와, 제2입력수단으로부터의 N비트 데이타에 r비트 만큼 좌측으로 쉬프트하는 제2고정쉬프터와, 제1 및 제2입력수단으로부터의 데이타들을 승산하는 제1연산수단과, 제1연산수단으로부터의 데이타를 N비트로 조절하고 그 조절된 데이타를 r비트 만큼 좌측으로 쉬프트시키는 비트조절수단과, 비트조절수단으로부터의 데이타와 제1 및 제2고정쉬프터와 제1귀환라인중 어느 한쪽으로부터의 데이타를 연산하는 제2연산수단과, 제1연산수단으로부터의 데이타와 제1 및 제2고정쉬프터와 제2귀환라인중 한쪽으로부터의 데이타를 연산하는 제3연산수단과, 제1귀환라인에 접속되어 제2연산수단으로부터의 데이타를 일시적으로 보관하는 제1레지스터화일과, 제2귀환라인에 접속되어 제3연산수단으로부터의 데이타를 일시적으로 보관하는 제2레지스터화일과, 제1 및 제2레지스터화일중 어느 한쪽으로부터의 데이타에서 상위 N비트만을 추출하는 추출수단을 구비한다.The DSP according to the present invention includes first and second input means for inputting N bits of data, a first fixed shifter for shifting left by n bits to N bits of data from the first input means, and a second input. A second fixed shifter for shifting the N-bit data from the means to the left by r bits, the first computing means for multiplying the data from the first and second input means, and the data from the first computing means to N bits. Bit adjusting means for shifting the adjusted data to the left by r bits, and second computing means for calculating data from the bit adjusting means and data from any one of the first and second fixed shifters and the first feedback line. And third computing means for computing data from the first computing means and data from one of the first and second fixed shifters and the second feedback line, and second computing means connected to the first feedback line. From the first register file for temporarily storing data from the second register file, the second register file connected to the second return line for temporarily storing data from the third computing means, and the first and second register files. And extracting means for extracting only the upper N bits from the data.
본 발명에 따른 DSP는 N비트의 데이타를 각각 입력하기 위한 제1 및 제2입력수단과, 제1입력수단으로부터의 N비트 데이타에 r비트 만큼 우측으로 쉬프트하는 제1고정쉬프터와, 제2입력수단으로부터의 N비트 데이타에 r비트 만큼 우측으로 쉬프트하는 제2고정쉬프터와, 제1 및 제2입력수단으로부터의 데이타들을 승산하는 제1연산수단과, 제1연산수단으로부터의 데이타를 N비트로 조절하고 그 조절된 데이타를 r비트 만큼 우측으로 쉬프트시키는 비트조절수단과, 비트조절수단으로부터의 데이타와 제1 및 제2고정쉬프터와 제1귀환라인중 어느 한쪽으로부터의 데이타를 연산하는 제2연산수단과, 제1연산수단으로부터의 데이타와 제1 및 제2고정쉬프터와 제2귀환라인중 한쪽으로부터의 데이타를 연산하는 제3연산수단과, 제1귀환라인에 접속되어 제2연산수단으로부터의 데이타를 일시적으로 보관하는 제1레지스터화일과, 제2귀환라인에 접속되어 제3연산수단으로부터의 데이타를 일시적으로 보관하는 제2레지스터화일과, 제1 및 제2레지스터화일중 어느 한쪽으로부터의 데이타에서 하위 N비트만을 추출하는 추출수단을 구비한다.The DSP according to the present invention includes first and second input means for inputting N bits of data, a first fixed shifter for shifting the N bits of data from the first input means to the right by r bits, and a second input. A second fixed shifter for shifting the N-bit data from the means to the right by r bits, the first computing means for multiplying the data from the first and second input means, and the data from the first computing means to N bits. Bit adjusting means for shifting the adjusted data to the right by r bits, and second computing means for calculating data from the bit adjusting means and data from any one of the first and second fixed shifters and the first feedback line. And third computing means for computing data from the first computing means and data from one of the first and second fixed shifters and the second feedback line, and second computing means connected to the first feedback line. From the first register file for temporarily storing data from the second register file, the second register file connected to the second return line for temporarily storing data from the third computing means, and the first and second register files. And extracting means for extracting only the lower N bits from the data.
본 발명에 따른 DSP는 N비트의 데이타를 각각 입력하기 위한 제1 및 제2입력수단과, 제1입력수단으로부터의 N비트 데이타에 r비트 만큼 좌측으로 쉬프트하는 제1고정쉬프터와, 제2입력수단으로부터의 N비트 데이타에 r비트 만큼 좌측으로 쉬프트하는 제2고정쉬프터와, 제1입력수단으로부터의 N비트 데이타에 r비트 만큼 우측으로 쉬프트하는 제3고정쉬프터와, 제2입력수단으로부터의 N비트 데이타에 r비트 만큼 우측으로 쉬프트하는 제4고정쉬프터와, 제1 및 제3고정쉬프터중 어느 한쪽으로부터의 데이타를 선택하는 제1선택수단과, 제2 및 제4고정쉬프터중 어느 한쪽으로부터의 데이타를 선택하는 제2선택수단과, 제1 및 제2입력수단으로부터의 데이타들을 승산하는 제1연산수단과, 제1연산수단으로부터의 데이타를 N비트로 조절하고 그 조절된 데이타를 r비트 만큼 좌측으로 쉬프트시키는 제1비트조절수단과, 제1연산수단으로부터의 데이타를 N비트로 조절하고 그 조절된 데이타를 r비트 만큼 우측으로 쉬프트시키는 제2비트조절수단과, 제1 및 제2비트조절수단중 어느 한쪽으로부터의 데이타를 선택하는 제3선택수단과, 제3선택수단으로부터의 데이타와 제1 및 제2선택수단과 제1귀환라인중 어느 한쪽으로부터의 데이타를 연산하는 제2연산수단과, 제3선택수단으로부터의 데이타와 제1 및 제2선택수단과 제2귀환라인중 어느 한쪽으로부터의 데이타를 연산하는 제2연산수단과, 제1귀환라인에 접속되어 제2연산수단으로부터의 데이타를 일시적으로 보관하는 제1레지스터화일과, 제2귀환라인에 접속되어 제3연속수단으로부터의 데이타를 일시적으로 보관하는 제2레지스터화일과, 제1 및 제2레지스터화일중 어느 한쪽으로부터의 데이타에서 상위 N비트만을 추출하는 제1추출수단과, 제1 및 제2레지스터화일중 어느 한쪽으로부터의 데이타에서 하위 N비트만을 추출하는 제2추출수단과, 제1 및 제2추출수단중 어느 한쪽으로부터의 데이타를 선택하는 제4선택수단을 구비한다.The DSP according to the present invention includes first and second input means for inputting N bits of data, a first fixed shifter for shifting left by n bits to N bits of data from the first input means, and a second input. A second fixed shifter shifting left by n bits from the N-bit data from the means, a third fixed shifter shifting right by r bits to the N-bit data from the first input means, and N from the second input means. A fourth fixed shifter shifting the bit data to the right by r bits to the right, first selecting means for selecting data from any one of the first and third fixed shifters, and from any one of the second and fourth fixed shifters. Second selection means for selecting data, first calculation means for multiplying data from the first and second input means, and adjusting the data from the first calculation means to N bits and adjusting the adjusted data to r ratio. First bit adjusting means for shifting the left side by the first bit, and second bit adjusting means for adjusting the data from the first calculating means to N bits and shifting the adjusted data to the right by r bits, and the first and second bits. Third selecting means for selecting data from either of the adjusting means, second computing means for calculating data from the third selecting means, and data from any one of the first and second selecting means and the first return line. And second computing means for computing data from the third selecting means and data from any one of the first and second selecting means and the second feedback line, and from the second computing means connected to the first feedback line. Any one of a first register file for temporarily storing data, a second register file connected to a second return line for temporarily storing data from the third continuous means, and one of the first and second register files; First extracting means for extracting only upper N bits from data from one side, second extracting means for extracting only lower N bits from data from either one of the first and second register files, and first and second extracting means. And fourth selecting means for selecting data from either one.
본 발명에 따른 DSP는 N비트의 데이타를 각각 입력하기 위한 제1 및 제2입력수단과, 제1입력수단으로부터의 N비트 데이타에 r비트 만큼 좌측으로 쉬프트하는 제1고정쉬프트와, 제2입력수단으로부터의 N비트 데이타에 r비트 만큼 좌측으로 쉬프트하는 제2고정쉬프터와, 제1 및 제2입력수단으로부터의 데이타들을 승산하는 제1연산수단과, 제1연산수단으로부터의 데이타를 N비트로 조절하고 그 조절된 데이타를 r비트 만큼 좌측으로 쉬프트시키는 비트조절수단과, 비트조절수단으로부터의 데이타와 제1 및 제2고정쉬프터와 제1 및 제2귀환라인중 어느 한쪽으로부터의 데이타를 연산하는 제2연산수단과, 제1연산수단으로부터의 데이타와 제1 및 제2고정쉬프터와 제1 및 제2귀환라인중 한쪽으로부터의 데이타를 연산하는 제3연산수단과, 제1귀환라인에 접속되어 제2연산수단으로부터의 데이타를 일시적으로 보관하는 제1레지스터화일과, 제2귀환라인에 접속되어 제3연산수단으로부터의 데이타를 일시적으로 보관하는 제2레지스터화일과, 제1 및 제2레지스터화일중 어느 한쪽으로부터의 데이타에서 상위 N비트만을 추출하는 추출수단을 구비한다.The DSP according to the present invention includes first and second input means for inputting N bits of data, a first fixed shift for shifting left by n bits to N bits of data from the first input means, and a second input. A second fixed shifter for shifting the N-bit data from the means to the left by r bits, the first computing means for multiplying the data from the first and second input means, and the data from the first computing means to N bits. And bit control means for shifting the adjusted data to the left by r bits, data from the bit control means, and data from any one of the first and second fixed shifters and the first and second feedback lines. A second operation means, a third operation means for calculating data from the first operation means, data from one of the first and second fixed shifters and the first and second feedback lines, and a first feedback line A first register file for temporarily storing data from the second computing means, a second register file connected to the second return line for temporarily storing data from the third computing means, and first and second register files And extracting means for extracting only the upper N bits from the data from either one.
본 발명에 따른 DSP는 N비트의 데이타를 각각 입력하기 위한 제1 및 제2입력수단과, 제1입력수단으로부터의 N비트 데이타에 r비트 만큼 우측으로 쉬프트하는 제1고정쉬프터와, 제2입력수단으로부터의 N비트 데이타에 r비트 만큼 우측으로 쉬프트하는 제2고정쉬프터와, 제1 및 제2입력수단으로부터의 데이타들을 승산하는 제1연산수단과, 제1연산수단으로부터의 데이타를 N비트로 조절하고 그 조절된 데이타를 r비트 만큼 우측으로 쉬프트시키는 비트조절수단과, 비트조절수단으로부터의 데이타와 제1 및 제2고정쉬프터와 제1귀환라인중 어느 한쪽으로부터의 데이타를 연산하는 제2연산수단과, 제1연산수단으로부터의 데이타와 제1 및 제2고정쉬프터와 제2귀환라인중 한쪽으로부터의 데이타를 연산하는 제3연산수단과, 제1귀환라인에 접속되어 제2연산수단으로부터의 데이타를 일시적으로 보관하는 제1레지스터화일과, 제2귀환라인에 접속되어 제3연산수단으로부터의 데이타를 일시적으로 보관하는 제2레지스터화일과, 제1 및 제2레지스터화일중 어느 한쪽으로부터의 데이타에서 하위 N비트만을 추출하는 추출수단을 구비한다.The DSP according to the present invention includes first and second input means for inputting N bits of data, a first fixed shifter for shifting the N bits of data from the first input means to the right by r bits, and a second input. A second fixed shifter for shifting the N-bit data from the means to the right by r bits, the first computing means for multiplying the data from the first and second input means, and the data from the first computing means to N bits. Bit adjusting means for shifting the adjusted data to the right by r bits, and second computing means for calculating data from the bit adjusting means and data from any one of the first and second fixed shifters and the first feedback line. And third computing means for computing data from the first computing means and data from one of the first and second fixed shifters and the second feedback line, and second computing means connected to the first feedback line. From the first register file for temporarily storing data from the second register file, the second register file connected to the second return line for temporarily storing data from the third computing means, and the first and second register files. And extracting means for extracting only the lower N bits from the data.
본 발명에 따른 DSP는 N비트 데이타를 각각 입력하기 위한 제1 및 제2입력수단과, 제1입력수단으로부터의 N비트 데이타에 r비트 만큼 좌측으로 쉬프트하는 제1고정쉬프터와, 상기 제2입력수단으로부터의 상기 N비트 데이타에 r비트 만큼 좌측으로 쉬프트하는 제2고정쉬프터와, 제1입력수단으로부터의 N비트 데이타에 r비트 만큼 우측으로 쉬프트하는 제3고정쉬프터와, 제2입력수단으로부터의 N비트 데이타에 r비트 만큼 우측으로 쉬프트하는 제4고정쉬프터와, 제1 및 제3고정쉬프터중 어느 한쪽으로부터의 데이타를 선택하는 제1선택수단과, 제2 및 제4고정쉬프터중 어느 한쪽으로부터의 데이타를 선택하는 제2선택수단과, 제1 및 제2입력수단으로부터의 데이타들을 승산하는 제1연산수단과, 제1연산수단으로부터의 데이타를 N비트로 조절하고 그 조절된 데이타를 r비트 만큼 좌측으로 쉬프트시키는 제1비트조절수단과, 제1연산수단으로부터의 데이타를 N비트로 조절하고 그 조절된 데이타를 r비트 만큼 우측으로 쉬프트시키는 제2비트조절수단과, 제1 및 제2비트조절수단중 어느 한쪽으로부터의 데이타를 선택하는 제3선택수단과, 제3선택수단으로부터의 데이타와 상기 제1 및 제2선택수단과 제1 및 제2귀환라인중 어느 한쪽으로부터의 데이타를 연산하는 제2연산수단과, 제3선택수단으로부터의 데이타와 상기 제1 및 제2선택수단과 제1 및 제2귀환라인중 어느 한쪽으로부터의 데이타를 연산하는 제2연산수단과, 제1귀환라인에 접속되어 상기 제2연산수단으로부터의 데이타를 일시적으로 보관하는 제1레지스터화일과, 제2귀환라인에 접속되어 상기 제3연산수단으로부터의 데이타를 일시적으로 보관하는 제2레지스터화일과, 제1 및 제2레지스터화일중 어느 한쪽으로부터의 데이타에서 상위 N비트만을 추출하는 제1추출수단과, 제1 및 제2레지스터화일중 어느 한쪽으로부터의 데이타에서 하위 N비트만을 추출하는 제2추출수단과, 제1 및 제2추출수단중 어느 한쪽으로부터의 데이타를 선택하는 제4선택수단을 구비한다.The DSP according to the present invention includes first and second input means for inputting N-bit data, a first fixed shifter for shifting left by n bits to N-bit data from the first input means, and the second input. A second fixed shifter shifting left by n bits from said N-bit data from the means, a third fixed shifter shifting right by r bits to N-bit data from said first input means and from said second input means; A fourth fixed shifter shifting the N-bit data to the right by r bits, first selecting means for selecting data from any one of the first and third fixed shifters, and from any one of the second and fourth fixed shifters. Second selection means for selecting data of the first data, first calculation means for multiplying data from the first and second input means, and adjusting the data from the first calculation means with N bits and adjusting the data. First bit adjusting means for shifting the left to the left by r bits, second bit adjusting means for adjusting the data from the first calculating means to N bits and shifting the adjusted data to the right by r bits, Third selecting means for selecting data from either of the second bit adjusting means, data from the third selecting means, and data from any one of the first and second selecting means and the first and second feedback lines; Second calculation means for calculating a data, second calculation means for calculating data from the third selection means, and data from any one of the first and second selection means and the first and second feedback lines; A first register file connected to a return line for temporarily storing data from said second computing means, and a second register connected to a second feedback line for temporarily storing data from said third computing means First extraction means for extracting only the upper N bits from the data from either the stub file or the first and second register files, and extracting only the lower N bits from the data from any one of the first and second register files. Second extraction means and fourth selection means for selecting data from either one of the first and second extraction means.
본 발명에 따른 DSP는 N비트의 데이타를 각각 입력하기 위한 제1 및 제2입력수단과, 제1입력수단으로부터의 N비트 데이타에 r비트 만큼 좌측으로 쉬프트하는 제1고정쉬프터와, 제2입력수단으로부터의 상기 N비트 데이타에 r비트 만큼 좌측으로 쉬프트하는 제2고정쉬프터와, 제1 및 제2입력수단으로부터의 데이타들을 승산하는 제1연산수단과, 제1연산수단으로부터의 데이타를 N비트로 조절하고 그 조절된 데이타를 r비트 만큼 좌측으로 쉬프트시키는 비트조절수단과, 비트조절수단으로부터의 데이타와 제1 및 제2고정쉬프터와 제1귀환라인중 어느 한쪽으로부터의 데이타를 연산하는 제2연산수단과, 비트조절수단으로부터의 데이타와 제1 및 제2고정쉬프터와 제2귀환라인중 한쪽으로부터의 데이타를 연산하는 제3연산수단과, 제1귀화라인에 접속되어 제2연산수단으로부터의 데이타를 일시적으로 보관하는 제1레지스터화일과, 제2귀환라인에 접속되어 상기 제3연산수단으로부터의 데이타를 일시적으로 보관하는 제2레지스터화일과, 제1연산수단, 제1 및 제2입력라인과 제1 및 제2귀환라인중 어느 한쪽으로부터의 데이타를 스케일링-업하는 스케일링수단과, 제1귀환라인에 접속되어 제2연산수단 및 스케일링수단으로부터의 데이타들을 일시적으로 보관하는 제1레지스터화일과, 제2귀환라인에 접속되어 제3연산수단과 스케일링수단으로부터의 데이타들을 일시적으로 보관하는 제2레지스터화일과, 제1 및 제2레지스터화일중 어느 한쪽으로부터의 데이타에서 상위 N비트만을 추출하는 추출수단을 구비한다.The DSP according to the present invention includes first and second input means for inputting N bits of data, a first fixed shifter for shifting left by n bits to N bits of data from the first input means, and a second input. A second fixed shifter shifting the N-bit data from the means to the left by r bits, first computing means for multiplying data from the first and second input means, and data from the first computing means with N bits. Bit adjusting means for adjusting and shifting the adjusted data to the left by r bits, and a second operation for calculating data from the bit adjusting means and data from any one of the first and second fixed shifters and the first feedback line. Means, third computing means for calculating data from the bit adjusting means and data from one of the first and second fixed shifters and the second feedback line, and a second station connected to the first naturalization line. A first register file for temporarily storing data from the means, a second register file connected to a second return line for temporarily storing data from the third computing means, and first computing means, first and first. Scaling means for scaling up data from one of the second input line and the first and second feedback lines, and a first connected to the first feedback line to temporarily store data from the second computing means and the scaling means. Only the upper N bits of the register file, the second register file connected to the second feedback line to temporarily store data from the third calculation means and the scaling means, and the data from either one of the first and second register files. Extracting means for extracting is provided.
본 발명에 따른 DSP는 N비트의 데이타를 각각 입력하기 위한 제1 및 제2입력수단과, 제1입력수단으로부터의 N비트 데이타에 r비트 만큼 우측으로 쉬프트하는 제1고정쉬프터와, 제2입력수단으로부터의 N비트 데이타에 r비트 만큼 우측으로 쉬프트하는 제2고정쉬프터와, 제1 및 제2입력수단으로부터의 데이타들을 승산하는 제1연산수단과, 제1연산수단으로부터의 데이타를 N비트로 조절하고 그 조절된 데이타를 r비트 만큼 우측으로 쉬프트시키는 비트조절수단과, 비트조절수단으로부터의 데이타와 제1 및 제2고정쉬프터와 제1귀환라인중 어느 한쪽으로부터의 데이타를 연산하는 제2연산수단과, 제1연산수단으로부터의 데이타와 제1 및 제2고정쉬프터와 제2귀환라인중 한쪽으로부터의 데이타를 연산하는 제3연산수단과, 비트조절수단, 제1 및 제2고정쉬프터와 제1 및 제2귀환라인중 어느 한쪽으로부터의 데이타를 스케일링-업하는 스케일링수단과, 제1귀환라인에 접속되어 제2연산수단 및 스케일링수단으로부터의 데이타들을 일시적으로 보관하는 제1레지스터화일과, 제2귀환라인에 접속되어 제3연산수단과 스케일링수단으로부터의 데이타들을 일시적으로 보관하는 제2레지스터화일과, 제1 및 제2레지스터화일중 어느 한쪽으로부터의 데이타에서 하위 N비트만을 추출하는 추출수단을 구비한다.The DSP according to the present invention includes first and second input means for inputting N bits of data, a first fixed shifter for shifting the N bits of data from the first input means to the right by r bits, and a second input. A second fixed shifter for shifting the N-bit data from the means to the right by r bits, the first computing means for multiplying the data from the first and second input means, and the data from the first computing means to N bits. Bit adjusting means for shifting the adjusted data to the right by r bits, and second computing means for calculating data from the bit adjusting means and data from any one of the first and second fixed shifters and the first feedback line. Third computing means for computing data from the first computing means and data from one of the first and second fixed shifters and the second feedback line, the bit adjusting means, the first and second fixed shifters, Scaling means for scaling up data from either of the first and second feedback lines, a first register file connected to the first feedback line for temporarily storing data from the second computing means and the scaling means, Extraction means connected to the second feedback line for temporarily storing data from the third computing means and the scaling means, and extracting means for extracting only the lower N bits from data from either one of the first and second register files; It is provided.
본 발명에 따른 DSP는 N비트의 데이타를 각각 입력하기 위한 제1 및 제2입력수단과, 제1입력수단으로부터의 N비트 데이타에 r비트 만큼 좌측으로 쉬프트하는 제1고정쉬프터와, 제2입력수단으로부터의 N비트 데이타에 r비트 만큼 좌측으로 쉬프트하는 제2고정쉬프트와, 제2고정쉬프터와, 제1입력수단으로부터의 N비트 데이타에 r비트 만큼 우측으로 쉬프트하는 제3고정쉬프터와, 제2입력수단으로부터의 N비트 데이타에 r비트 만큼 우측으로 쉬프트하는 제4고정쉬프터와, 제1 및 제3고정쉬프터중 어느 한쪽으로부터의 데이타를 선택하는 제1선택수단과, 제2 및 제4고정쉬프터중 어느 한쪽으로부터의 데이타를 선택하는 제2선택수단과, 제1 및 제2입력수단으로부터의 데이타들을 승산하는 제1연산수단과, 제1연산수단으로부터의 데이타를 N비트로 조절하고 그 조절된 데이타를 r비트 만큼 좌측으로 쉬프트시키는 제1비트조절수단과, 제1연산수단으로부터의 데이타를 N비트로 조절하고 그 조절된 데이타를 r비트 만큼 우측으로 쉬프트시키는 제2비트조절수단과, 제1 및 제2비트조절수단중 어느 한쪽으로부터의 데이타를 선택하는 제3선택수단과, 제3선택수단으로부터의 데이타와 상기 제1 및 제2선택수단과 제1 및 제2귀환라인중 어느 한쪽으로부터의 데이타를 연산하는 제2연산수단과, 제3선택수단으로부터의 데이타와 제1 및 제2선택수단과 제1 및 제2귀환라인중 어느 한쪽으로부터의 데이타를 연산하는 제3연산수단과, 제1 내지 제3선택수단과 제1 및 제2귀환라인중 어느 한쪽으로부터의 데이타를 스케일링-업하는 스케일링수단과, 제1귀환라인에 접속되어 제2연산수단 및 스케일링수단으로부터의 데이타들을 일시적으로 보관하는 제1레지스터화일과, 제2귀환라인에 접속되어 제3연산수단과 상기 스케일링수단으로부터의 데이타들을 일시적으로 보관하는 제2레지스터화일과, 제1 및 제2레지스터화일중 어느 한쪽으로부터의 데이타에서 상위 N비트만을 추출하는 제1추출수단과, 제1 및 제2레지스터화일중 어느 한쪽으로부터의 데이타에서 하위 N비트만을 추출하는 제2추출수단과, 제1 및 제2추출수단중 어느 한쪽으로부터의 데이타를 선택하는 제4선택수단을 구비한다.The DSP according to the present invention includes first and second input means for inputting N bits of data, a first fixed shifter for shifting left by n bits to N bits of data from the first input means, and a second input. A second fixed shift shifted to the left by n bits from the N-bit data from the means, a second fixed shifter, a third fixed shifter shifted to the right by r bits to the N-bit data from the first input means, A fourth fixed shifter for shifting right by n bits to the N-bit data from the second input means, first selecting means for selecting data from either one of the first and third fixed shifters, and second and fourth fixed means; Second selection means for selecting data from either of the shifters, first calculation means for multiplying data from the first and second input means, and adjusting the data from the first calculation means with N bits, First bit adjusting means for shifting the truncated data to the left by r bits, second bit adjusting means for adjusting the data from the first computing means to N bits and shifting the adjusted data to the right by r bits, And third selecting means for selecting data from either one of the second bit adjusting means, data from the third selecting means and from any one of the first and second selecting means and the first and second feedback lines. Second calculation means for calculating data, third calculation means for calculating data from the third selection means, and data from any one of the first and second selection means and the first and second feedback lines, and the first Scaling means for scaling up data from one of the third to third selecting means and the first and second feedback lines, and connected to the first feedback line to temporarily store data from the second computing means and the scaling means. A first register file to be stored in a second register file, a second register file connected to a second return line to temporarily store data from the third calculating means and the scaling means, and either of the first and second register files. First extraction means for extracting only the upper N bits from the data, second extraction means for extracting only the lower N bits from the data from either one of the first and second register files, and either one of the first and second extraction means. And fourth selecting means for selecting data from the apparatus.
상기 목적외에 본 발명의 다른 목적 및 잇점들은 첨부한 도면을 참조한 실시예에 대한 상세한 설명을 통하여 명백하게 드러나게 될 것이다.Other objects and advantages of the present invention other than the above objects will become apparent from the detailed description of the embodiments with reference to the accompanying drawings.
이하, 본 발명의 실시예를 첨부한 제2도 및 제3도를 참조하여 상세히 설명하기로 한다.Hereinafter, with reference to Figures 2 and 3 attached to an embodiment of the present invention will be described in detail.
제2도를 참조하면, 제1외부버스(31)로부터 N비트의 데이타를 입력하기 위한 제1레지스터(30)와, 이 제1레지스터(30)에 병렬 접속된 제1 및 제2비트정렬기(32, 34)를 구비하는 본 발명의 실시예에 따른 DSP가 도시되어 있다. 제1외부버스(31)는 도시하지 않은 작업용 메모리에 공통적으로 접속되어진 N개의 데이타라인들로 구성된 것으로서 N비트의 제1읽기전용데이타버스(First Read Data Bus)로 사용된다. 제1레지스터(30)는 제1외부버스(31)를 경유하여 메모리로부터의 N비트의 데이타를 일시적으로 보관하게 된다. 제1 및 제2비트정렬기(32, 34)는 제1레지스터(30)로부터의 N비트의 데이타를 쉬프트시킴으로써 데이타를 N비트에서 N+r비트로 확장시키는 역할을 한다. 이를 상세히 하면, 제1비트정렬기(32)는 고정소수점 연산을 위해 N비트의 데이타를 r비트 만큼 좌측으로 쉬프트시킨다. 이를 위해, 제1비트정렬기(32)는 제1레지스터(30)의 N비트의 출력라인들을 제1멀티플렉서(36)의 N+r개이 단자들로 이루어진 제1입력포트중 상위 N개의 입력단자들에 접속시키는 배선을 가진다. 제2비트정렬기 (34)는 정수 연산을 위해 N비트의 데이타를 r비트 만큼 우측으로 쉬프트시킨다. 이때, 상위 r비트들은 DSP의 사인-확장모드(Sign-Extension Mode)에 따라 사인(정(+) 또는 부(-))비트들로서 채워지기도 하고 또는 "0"의 값들로 채워지기도 한다. 이를 위해, 제2비트정렬기(34)는 제1레지스터(30)의 N비트의 출력라인들을 제1멀티플렉서 (36)의 N+r개의 단자들로 이루어진 제2입력포트중 하위 N개의 입력단자들에 접속시키는 배선을 가진다. 상위 r비트는 상기 언급한대로 Sign bit 혹은 "0"으로 채워진다. 제1멀티플렉서(36)는 연산의 종류, 즉 고정소수점/정수 연산에 따라 제1입력포트상의 N+r비트의 데이타 또는 제2입력포트상의 N+r비트의 데이타를 제1가드비트(Guard Bits)부가기(38)에 공급한다. 이 제1가드비트부가기(38)는 제1멀티플렉서(36)로부터의 N+r비트의 데이타에 g비트의 가드비트들을 부가한다. g비트의 가드비트들은 모두 "0"으로 세트되거나 데이타의 사인을 확장시키게 된다. 이를 상세히하면, g비트의 가드비트들은 사인-확장모드가 세트된 경우에 모두 데이타의 사인비트와 동일한 논리값을 그리고 사인-확장모드가 리세트된 경우에는 모두 "0"의 논리값을 가지게 된다. 사인-확장모드는 특정한 명령어에 의해 세트 또는 리세트된다. 이들 g비트의 가드비트들을 N+r비트이 데이타에 부가하기 위하여, 제1가드비트부가기(38)는 N+r개의 단자들로 이루어진 제1멀티플렉서(36)의 출력포트를 제1내부버스(35)에 포함된 g+N+r개의 라인들 중 하위의 N+r개이 라인들에 연결시키는 배선을 가진다.2, a
상기 DSP는 제1외부버스(31)에 직렬 접속된 제2레지스터(40) 및 승산기(46)와, 제1 및 제2외부버스(31, 33)와 접속되어진 제2멀티플렉서(42)를 추가로 구비한다. 제2레지스터(40)는 제1레지스터(30)와 마찬가지로 제1외부버스(31)를 경유하여 입력되는 메모리로부터의 N비트 데이타를 일시적으로 저장하는 역할을 담당한다. 제2외부버스(33)는 도시하지 않은 프로그램 메모리 및 CPU에 공통적으로 접속된 N개의 라인들로 구성된 것으로서 제2읽기전용 데이타 버스(Second read data bus)로 사용된다. 제2멀티플렉서(42)는 자신의 제1입력포트에 공급되는 제1외부버스(31)로부터 N비트 데이타와 자신의 제2입력포트에 공급되는 제2외부버스(33)로부터의 N비트 데이타 중 어느 한 데이타를 제3레지스터(44)에 공급한다. 제3레지스터(44)는 제2멀티플렉서(42)로부터의 N비트 데이타를 일시적으로 저장한다. 승산기(46)는 제2 및 제3레지스터(40, 44)에 저장된 두개의 데이타를 승산한다. 이 승산기(46)에 의해 승산되어진 결과는 2N 비트를 가질 수 있다. 이에 따라, 승산기(46)으로부터의 데이타를 일시적으로 저장하는 제4레지스터(48)는 2N 비트의 길이를 가진다. 제4레지스터(48)와 제2내부버스(37) 사이에 접속된 배선조절기(50)는 제4레지스터(48)에 저장되어진 2N 비트의 데이타를 2N 보다 작은 N+r비트의 데이타로 변환하고 그 변환된 N+r비트의 데이타에 g비트의 가드비트를 부가한다.The DSP adds a
그리고 상기 DSP는 제1내부버스(35)에 공통적으로 접속되어진 제3 내지 제5멀티플렉서(52 내지 56)를 구비한다. 제3멀티플렉서(52)는 제1, 제2 및 제4내부버스 (35, 37, 43)로부터 g+N+r비트의 데이타를 각각 입력하는 제1 내지 제3입력포트를 가진다. 제3멀티플렉서(52)는 제1, 제2 및 제4내부버스(35, 37, 43)로부터의 3개의 데이타 중 어느 하나를 제1ALU(58)에 공급한다. 제4멀티플렉서(54)는 "0"의 논리값을 입력하는 제1입력포트(39)와, 제1 및 제3내부버스(35, 41)로부터 g+N+r비트의 데이타를 각각 입력하는 제2 및 제3입력포트를 구비한다. 제4멀티플렉서(54)는 자신의 제1 내지 제3입력포트상의 3개의 데이타 중 어느 하나를 제1ALU(58)에 공급하게 된다. 제1ALU(58)는 제3 및 제4멀티플렉서(52, 54)로부터의 두개의 데이타를 연산하여 그 연산된 결과를 제6멀티플렉서(62)에 공급한다. 제5멀티플렉서(56)도 제1내부버스(35)로부터의 g+N+r비트의 데이타와 제3내부버스(41)로부터의 g+N+r비트의 데이타를 선택적으로 배럴쉬프터(60)에 공급한다. 배럴쉬프터(60)는 제5멀티플렉서 (56)로부터의 데이타의 논리값을 스케일하고 그 스케일링된 데이타를 제6멀티플렉서 (62)에 공급한다. 이 데이타의 스케일링을 위해 배럴쉬프터(60)는 스케일링 양에 해당하는 비트수 만큼 제5멀티플렉서(56)로부터의 데이타의 좌측 또는 우측방향으로 쉬프트시킨다. 또한, 배럴쉬프트(60)는 제1ALU(58)와 병렬 접속되므로써 데이타의 전파지연시간을 최소화 할 수 있다. 이에 따라, 상기 DSP는 사칙연산, 스케일링 및 그를 포함한 사칙연산을 고속으로 수행할 수 있다. 제6멀티플렉서(62)는 제1ALU(58)로부터의 g+N+r비트의 사칙연산되어진 데이타와 배럴쉬프트(60)로부터의 스케일드된 데이타를 선택적으로 제5 또는 제6레지스터(64 또는 66)에 공급한다. 제5 또는 제6레지스터(64 또는 66)에 저장되는 데이타는 제3내부버스(41)에 공급되게 된다. 제5 및 제6레지스터(64, 66)는 누적용 레지스터들로서 제1ALU(58)와 함께 제1누적기를 구성하게 된다. 제5 및 제6레지스터(64, 66) 모두 g+N+r비트의 데이타를 일시적으로 저장하기 위해 g+N+r비트의 길이를 가지며 아울러 제3내부버스(41)도 g+N+r개의 라인으로 구성된다.The DSP includes third to
또한 상기 DSP는 제1내부버스(35) 및 제4내부버스(43)와 접속되어진 제7멀티플렉서(68)와, 제1 및 제2내부버스(35, 37)와 접속되어진 제8멀티플렉서(70)를 구비한다. 제7멀티플렉서(68)는 "0"의 논리값을 입력하는 제1입력포트(45)와, 제1 및 제4내부버스(35, 43)로부터 g+N+r비트의 데이타를 각각 입력하는 제2 및 제3입력포트를 구비한다. 제7멀티플렉서(68)는 자신의 제1 내지 제3입력포트상의 3개의 데이타 중 어느 하나를 제2ALU(72)에 공급하게 된다. 제8멀티플렉서(70)는 제1 및 제2내부버스(35, 37)로부터 g+N+r비트의 데이타를 각각 입력하는 제1 및 제2입력포트를 가진다. 제8멀티플렉서(70)는 제1 및 제2내부버스(35, 37)로부터의 2개의 데이타 중 어느 하나를 제2ALU(72)에 공급한다. 제2ALU(72)는 제7 및 제8멀티플렉서(68, 70)로부터의 두개의 데이타를 연산하여 그 연산된 결과를 제9멀티플렉서(74)에 공급한다. 제9멀티플렉서(74)는 제2ALU(72)로부터의 g+N+r비트의 연산되어진 데이타와 배럴쉬프터(60)로부터의 스케일링된 데이타를 선택저으로 제7 또는 제8레지스터(76 또는 78)에 공급한다. 제7 또는 제8레지스터(76, 78)는 제9멀티플렉서(74)로부터의 데이타를 제4내부버스(43)에 공급되게 된다. 제7 및 제8레지스터(76, 78)는 누적용 레지스터로서 제2ALU(72)와 함께 제2누적기를 구성하며, 이 제2누적기는 제1누적기와 병렬로 접속됨으로써 2이상의 복합연산식들이 병렬로 연산되도록 한다. 제7 및 제8레지스터(76, 78) 모두 g+N+r비트의 데이타를 일시적으로 저장하기 위해 g+N+r비트의 길이를 가진다. 또한, 제7 및 제8레지스터(76, 78)는 제5 및 제6레지스터(64, 66)와 함께 다수의 복합연산식들이 빠르게 연산되도록 한다.The DSP also includes a
더 나아가, 상기 DSP는 제3 및 제4내부버스(41, 43)로부터의 두개의 g+N+r비트 데이타들을 선택하기 위한 제10멀티플렉서(80)와, 이 제10멀티플렉서(80)에 공통적으로 접속되어진 제3 및 제4비트정렬기(82, 84)와 라운딩/포화 (Rounding/ Saturation)처리기(82)를 추가로 구비한다. 제10멀티플렉서(80)는 제3내부버스(41)를 경유한 제5 또는 제6레지스터(64, 66)로부터의 g+N+r비트의 데이타와 제4내부버스(23)를 경유한 제7 또는 제8레지스터(76, 78)로부터의 g+N+r비트의 데이타 중 어느 한 데이타를 제3 및 제4비트정렬기(82, 84)와 라운딩/포화 처리기(86)에 공통적으로 공급한다. 제3 및 제4비트정렬기(82, 84)는 제10멀티플렉서(80)로부터의 g+N+r의 데이타에서 N비트만을 추출하여 그 추출된 N비트의 데이타를 제11멀티플렉서(88)의 제1 및 제2 입력포트에 각각 공급한다. 이를 상세히 하면, 제3비트정렬기(82)는 제10멀티플렉서(80)로부터의 g+N+r비트의 데이타 중 상위 g+1번째 비트로부터 N비트의 데이타만을 추출하여 그 추출된 N비트의 데이타를 제11멀티플렉서(88)의 제1입력포트에 공급한다. 이를 위하여, 제3비트정렬기(82)는 제10멀티플렉서(80)의 g+N+r개의 출력단자들 중 상위 g+1번째 단자로부터 N개의 단자들, 즉 상위 g개의 단자들과 하위 r개의 단자들을 제외한 나머지 N개의 단자들을 N개의 단자들로 이루어진 제11멀티플렉서(88)의 제1입력포트에 접속시키는 배선을 구비한다. 단순히 배선에 의해서만 제3비트정렬기(82)는 g+N+r비트의 데이타를 N비트의 데이타로 변환시킨다. 제4비트정렬기(84)는 제10멀티플렉서(80)로부터의 g+N+r비트의 데이타 중 하위 N비트의 데이타만을 추출하여 그 추출된 N비트의 데이타를 제11멀티플렉서(88)의 제2입력포트에 공급한다. 이를 위하여, 제4비트정렬기(84)는 제10멀티플렉서(80) g+N+r개의 출력단자들 중 하위 N개의 단자들, 즉 상위 g+r개의 단자들을 제외한 나머지 N개의 단자들을 N개의 단자들로 이루어진 제11멀티플렉서(88)의 제2입력포트에 접속시키는 배선을 가진다. 제4비트정렬기(84)는 제1 내지 제3비트정렬기들(32, 34, 82)과 함께 단순히 배선에 의해 구성됨으로써 별도의 회로블록을 요구하지 않는다. 이에 따라, 제1 내지 제4비트정렬기들(32, 34, 82, 84)은 DSP의 회로구성을 간소화 할 수 있음은 물론 고정소수점 연산 및 정수연산 모두가 고속으로 수행되도록 한다.Furthermore, the DSP is common to the
라운딩/포화처리기(86)는 도시하지 않은 제어기로 부터의 명령에 따라 라운딩처리모드, 포화처리모드, 또는 병합모드로 구동된다. 라운딩 모드시 라운딩/포화처리기 (86)는 제10멀티플렉서(80)로부터의 g+N+r비트의 데이타에서 r+1번째 하위비트로부터 N비트의 데이타를 선택하여 제11멀티플렉서(88)의 제3입력포트에 공급한다. 다음으로 라운딩/포화처리기(86)는 포화모드시에는 제10멀티플렉서(80)로 부터의 g+N+r비트의 데이타에서 상위 g+1비트들이 논리값에 따라 데이타를 처리하게 된다. 이를 상세히하면, 라운딩/포화처리기(86)는 제10멀티플렉서(80)로부터의 g+N+r비트의 데이타에서 상위 g+1비트들(즉, g개의 가드비트들과 1개의 사인비트)의 논리값들이 모두 동일한가에 따라 오버플로우(Overflow)의 발생여부를 판단한다. 상위 g+1비트들의 논리값들이 모두 동일한 경우에 라운딩/포화처리기(86)는 제10멀티플렉서 (80)로부터의 g+N+r비트의 데이타중 상위 g비트와 하위 r비트를 제외한 나머지 N비트의 데이타를 연산되어진 결과로써 제11멀티플렉서(88)의 제3입력포트에 공급한다. 반대로 상위 g+1비트들의 논리값들이 모두 동일하지 않은 경우에 8라운딩/포화처리기 (86)는 g개의 가드비트들중 최상위비트의 논리값이 "0" 또는 "1"인가를 판단한다. 라운딩/포화처리기(86)는 최상위 가드비트의 논리값이 "0"인 경우에 제10멀티플렉서(80)로부터의 데이타가 오버플로우가 발생되어진 정(+)의 데이타인 것으로 간주하여 최상위 비트만이 "0"의 논리값을 가지는 최대값의 N비트의 데이타(즉, "0111…11")를 제11멀티플렉서(88)의 제3입력포트에 공급한다. 이와는 달리 최상위 가드비트의 논리값이 "1"인 경우, 라운딩/포화처리기(86)는 제10멀티플렉서(80)로부터의 데이타가 오버플로우가 발생되어진 부(0)의 데이타인 것으로 간주하여 최상위 비트만이 "1"의 논리값을 가지는 N비트의 데이타(즉, "1000…00")를 제11멀티플렉서(88)의 제3입력포트에 공급한다. 이와 같이 포화처리기(86)는 가드비트들과 사인비트의 논리값에 근거하여 ALU(58 또는 72)에 의해 연산된 데이타의 포화논리값(즉, 오버플로우가 발생되어진 논리값)을 정확하게 처리하게 된다. 마지막으로 병합모드시, 라운딩/포화처리기 (86)는 제10멀티플렉서(80)로부터의 g+N+r비트의 데이타에 대하여 상기 라운딩 처리를 수행한 다음 그 라운딩된 g+N비트의 데이타에 대하여 포화처리를 수행하게 된다. 이렇게 라운딩/포화처리기(86)에 의해 라운딩 및 포화처리된 N비트 데이타는제11멀티플렉서(88)에 공급하게 된다. 이 경우, 라운딩/포화처리기(86)는 하위 비트들에 대한 라운딩 처리를 먼저 수행하되, 라운딩과 포화처리를 하나의 클럭주기내에 수행함으로써 별도의 라운딩 처리시간을 소모하지 않는다. 이에 따라, 라운딩/포화처리기(86)는 별도의 시간을 소모하지 않으면서 고정소수점 연산되어진 데이타를 라운딩 할 수 있는 이점을 제공한다. 제11멀티플렉서(88)는 제3 및 제4비트정렬기(82, 84)와 라운딩/포화 처리기(86)로부터의 3개의 N비트 데이타중 어느 하나를 제3외부버스(47)쪽으로 전송한다. 제3외부버스(47)는 기록용데이타버스(Write Data Bus)및 기록용어드레스버스 (Write Address Bus)로 구성된 N개의 라인으로 이루어져 있다.The rounding / saturation processor 86 is driven in the rounding processing mode, the saturation processing mode, or the merge mode in accordance with a command from a controller (not shown). In the rounding mode, the rounding / saturation processor 86 selects N bits of data from the r + 1st lower bits in g + N + r bits of data from the
제3도는 제2도에 도시된 DSP 중 2이상의 복합연산식의 연산을 병렬로 수행하는 회로 회로구성을 도시한다. 제3도에 있어서, 제1ALU(58)와 제5 및 제6레지스터 (64, 66)로 이루어진 제1누적기와 제2ALU(72)와 제7 및 제8레지스터(76, 78)로 이루어진 제2누적기가 병렬 접속됨으로써 적어도 2이상의 복합연산식이 병렬로 연산되도록 한다. [표 1]는 4개의 복합연산식과 이들 4개의 복합연산식들이 병렬로 연산되는 과정을 나타낸다. 표1을 참조하면, 수식1 내지 수식4와 같은 4개의 복합연산식들은 병렬로 연산됨으로써 9개의 클럭주기에 해당하는 기간에 완료되게 된다.FIG. 3 shows a circuit circuit configuration for performing a calculation of two or more complex calculation equations in parallel in the DSP shown in FIG. 3, a first accumulator comprising a
표 1에 있어서, D, T, M, P, X0, X2, X1 및 X3는 각각 제1 내지 제8레지스터(30, 40, 44, 48, 64, 66, 76, 78)에 저장되는 데이타를 나타낸다. 이와 같이 DSP는 병렬 접속되어진 한쌍의 누적기를 이용하여 두개의 복합연산식을 병렬로 연산할 수 있다. 이에 따라, DSP는 다수의 복합연산식들의 연산을 비교적 작은 수의 클럭주기동안에 완료할 수 있다.In Table 1, D, T, M, P, X0, X2, X1 and X3 represent data stored in the first to
상술한 바와 같이, 본 발명의 DSP는 ALU에 공급되는 데이타의 비트수(즉, 워드길이)를 배선에 의해 조절함으로써, ALU 및 누적용 레지스터의 길이를 짧게 할 수 있다. 또한, 본 발명에 따른 DSP는 데이타의 포화처리시에 데이타의 라운딩이 동시에 수행됨으로써 데이타의 라운딩 처리에 소요되는 시간을 없앨 수 있다. 이에 따라, 본 발명에 따른 DSP는 신호처리를 고속화 할 수 있다.As described above, the DSP of the present invention can shorten the lengths of the ALU and the accumulation register by adjusting the number of bits (i.e., word length) of data supplied to the ALU by wiring. In addition, the DSP according to the present invention can eliminate the time required for the rounding process of the data by performing the rounding of the data at the same time during the data saturation processing. Accordingly, the DSP according to the present invention can speed up signal processing.
또한, 본 발명에 따른 DSP에서는 배선으로 구현되어진 비트정렬기들이 누적기의 전단 및 후단에 배치됨으로써 고정소수점 및 정수 연산이 빠르게 수행됨과 아울러 회로구성이 간소화 된다.In addition, in the DSP according to the present invention, since the bit sorters implemented as wirings are disposed at the front and rear ends of the accumulator, fixed-point and integer operations are performed quickly, and the circuit configuration is simplified.
나아가 본 발명에 따른 DSP는 배럴쉬프터를 ALU와 병렬 접속시킴으로써 전파지연시간을 최소화 할 수 있음은 물론 연산에 필요한 클럭의 수를 작게 할 수 있다. 이에 따라, 본 발명에 따른 DSP는 연산, 스케일링 및 그를 포함한 연산을 고속으로 수행할 수 있다.Furthermore, the DSP according to the present invention can minimize the propagation delay time by connecting the barrel shifter to the ALU in parallel and can reduce the number of clocks required for the calculation. Accordingly, the DSP according to the present invention can perform calculations, scaling, and calculations including the same at high speed.
본 발명에 따른 DSP는 병렬 접속되어진 한쌍의 ALU를 이용하여 두개의 복합연산식을 병렬로 연산함으로써 다수의 복합연산식들을 고속으로 연산할 수 있다.The DSP according to the present invention can compute a plurality of complex equations at high speed by computing two complex equations in parallel using a pair of ALUs connected in parallel.
이상 설명한 내용을 통해 당업자라면 본 발명의 기술사상을 일탈하지 아니하는 범위에서 다양한 변경 및 수정이 가능함을 알 수 있을 것이다. 따라서, 본 발명의 기술적 범위는 실시예에 기재된 내용으로 한정되는 것이 아니라 특허 청구의 범위에 의하여 정하여져야만 한다.Those skilled in the art will appreciate that various changes and modifications can be made without departing from the technical spirit of the present invention. Therefore, the technical scope of the present invention should not be limited to the contents described in the embodiments, but should be defined by the claims.
Claims (39)
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019970045344A KR100251547B1 (en) | 1997-08-30 | 1997-08-30 | Digital signal processor |
US09/144,284 US6317770B1 (en) | 1997-08-30 | 1998-08-31 | High speed digital signal processor |
US09/902,603 US6463451B2 (en) | 1997-08-30 | 2001-07-12 | High speed digital signal processor |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019970045344A KR100251547B1 (en) | 1997-08-30 | 1997-08-30 | Digital signal processor |
Publications (2)
Publication Number | Publication Date |
---|---|
KR19990021770A KR19990021770A (en) | 1999-03-25 |
KR100251547B1 true KR100251547B1 (en) | 2000-04-15 |
Family
ID=19520644
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019970045344A KR100251547B1 (en) | 1997-08-30 | 1997-08-30 | Digital signal processor |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100251547B1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20030026787A (en) * | 2001-09-28 | 2003-04-03 | 지성원 | Data Compression Method Using Fourier Operations |
-
1997
- 1997-08-30 KR KR1019970045344A patent/KR100251547B1/en not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR19990021770A (en) | 1999-03-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6009451A (en) | Method for generating barrel shifter result flags directly from input data | |
US6209017B1 (en) | High speed digital signal processor | |
US4075704A (en) | Floating point data processor for high speech operation | |
KR100291383B1 (en) | Module calculation device and method supporting command for processing digital signal | |
US4179734A (en) | Floating point data processor having fast access memory means | |
US5991785A (en) | Determining an extremum value and its index in an array using a dual-accumulation processor | |
EP1049025B1 (en) | Method and apparatus for arithmetic operations | |
JPH1195981A (en) | Multiplication circuit | |
KR19990013698A (en) | Calculation method and device | |
US10255041B2 (en) | Unified multiply unit | |
US20140136588A1 (en) | Method and apparatus for multiplying binary operands | |
US6704762B1 (en) | Multiplier and arithmetic unit for calculating sum of product | |
US6519621B1 (en) | Arithmetic circuit for accumulative operation | |
KR19980041758A (en) | 2-Bit Booth Multiplier with Reduced Data Path Width | |
KR100251547B1 (en) | Digital signal processor | |
KR100315303B1 (en) | Digital signal processor | |
US5912904A (en) | Method for the production of an error correction parameter associated with the implementation of modular operations according to the Montgomery method | |
US5539684A (en) | Method and apparatus for calculating floating point exponent values | |
JP3579087B2 (en) | Arithmetic unit and microprocessor | |
KR100246472B1 (en) | Digital signal processor | |
KR100297544B1 (en) | Digital signal processor | |
KR100251546B1 (en) | Digital signal processor | |
KR20040045152A (en) | Apparatus for modular multiplication | |
JPH02205923A (en) | Arithmetic processor | |
KR100900790B1 (en) | Method and Apparatus for arithmetic of configurable processor |
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: 20061220 Year of fee payment: 8 |
|
LAPS | Lapse due to unpaid annual fee |