KR960012664B1 - 정규화를 위한 시프트-넘버 검출 회로를 구비한 고정 소수점 디지탈 신호 처리기 - Google Patents

정규화를 위한 시프트-넘버 검출 회로를 구비한 고정 소수점 디지탈 신호 처리기 Download PDF

Info

Publication number
KR960012664B1
KR960012664B1 KR1019920015102A KR920015102A KR960012664B1 KR 960012664 B1 KR960012664 B1 KR 960012664B1 KR 1019920015102 A KR1019920015102 A KR 1019920015102A KR 920015102 A KR920015102 A KR 920015102A KR 960012664 B1 KR960012664 B1 KR 960012664B1
Authority
KR
South Korea
Prior art keywords
data
shift
register
fixed
arithmetic
Prior art date
Application number
KR1019920015102A
Other languages
English (en)
Other versions
KR930004883A (ko
Inventor
준꼬 스나가
Original Assignee
닛본덴기 가부시끼가이샤
세끼모또 타다히로
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 닛본덴기 가부시끼가이샤, 세끼모또 타다히로 filed Critical 닛본덴기 가부시끼가이샤
Publication of KR930004883A publication Critical patent/KR930004883A/ko
Application granted granted Critical
Publication of KR960012664B1 publication Critical patent/KR960012664B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Complex Calculations (AREA)
  • Executing Machine-Instructions (AREA)

Abstract

요약없슴

Description

정규화를 위한 시프트-넘버 검출 회로를 구비한 고정 소수점 디지탈 신호 처리기
제1도는 종래의 고정 소수점 디지탈 신호 처리기(DSP)의 산술 연산 장치를 도시한 블럭도.
제2도는 제1도에 도시한 DSP를 사용하여 제곱근을 얻기 위한 프로그램의 플로우 챠트.
제3도는 본 발명의 실시예에 따른 고정 소수점 DSP의 산술 연산 장치를 도시한 블럭도.
제4도는 제3도에 도시한 시프트-넘버 검출기를 도시한 회로도.
제5도는 입력 데이타와 제4도에 도시한 시프트-넘버 검출기로부터 유도된 시프트-넘버 데이타 사이의 관계를 나타내는 도면.
제6도는 제3도에 도시한 DSP를 사용하여 제곱근을 얻기 위한 프로그램의 플로우 챠트.
제7도는 제1도 및 제3도에 도시한 데이타 메모리 내에 저장된 상수 테이블을 나타내는 도면.
* 도면의 주요부분에 대한 부호의 설명
2 : ALU3 : 플랙 레지스터
4,5,6,7 : 레지스터8 : 배럴 시프터
9 : 시프트-넘버 레지스터10 : MPX
13 : 데이타 메모리14 : 어드레스 레지스터
15 : 명령 메모리16 : 명령 디코더
20 : 시프트-넘버 검출기
본 발명은 고정 소수점 디지탈 신호 처리기(이후 고정 소수점 DSP라고 함)에 관한 것으로 특정 고정 고수점 DSP내에 포함된 고정 소수점 산술 연산 장치의 개량에 관한 것이다.
고정 소수점 DSP는 원거리 통신 시스템에서 널리 사용되고 있다. 고정 소수점 DSP 내에 포함된 고정 소수점 산술 연산 장치는 고정 소수점 데이타상에서 단항 연산 또는 이항 연산을 수행한다.
고정 소수점 데이타의 형태는 다음과 같이 정해진다. 특히, 고정 소수점 데이타가 n-비트 길이(n=양의 정수)일 때, n번째 비트(최상위 비트 : MSB)는 부호 비트를 나타내고 나머지 n-1 비트들은 수를 나타낸다. 고정 소수점은 n번째 비트(MSB)와 (n-1)번째 비트 사이에 존재한다. 양의 값은 n번째 비트를 데이타 0으로 나타내어지고 음의 값은 n번째 비트의 데이타 1로 나타내어진다. 나머지 n-1개의 비트들 중에, (n-1)번째 비트는 2-1의 값을 나타내고, (n-2)번째 비트는 2-2의 값을 나타내며 이하 상기와 같은 방식으로 값을 나타낸다. 제1비트(최하위 비트 : LSB)는 2-(n-1)의 값을 나타낸다. 따라서, 고정 소수점 데이타에 의해 나타내어진 수의 범위는 10진수로 0.99999…에서 -1.0까지이다. 이 범위는 2진수로 0111…111에서 1000…000까지이다.
고정 소수점 산술 연산 장치는 산술 연산 이외에, 제곱근 함수, 로그 함수 및 지수 함수와 같은 함수 연산을 수행하는 것이 흔히 요구된다. 그러나, 이러한 함수 연산을 직접 수행하는 하드웨어는 없다. 그러므로, 함수 연산은 산술 연산 장치로 하여금 각각의 함수에 대한 근사화 식을 실행하게 하는 프로그램에 의해 수행된다.
특히, 거의 모든 함수들은 다음 식으로 근사화될 수 있다.
f(z)=a1·z+a2·z2+a3·z3+…+an·zn (1)
여기서, a1(i=1,2,…,n)는 계수를 나타내고 z는 처리될 입력 값을 나타낸다. 계수 a1는 테일러 전개 등에 의해 얻어지고 처리될 함수 중에 다른 값들을 취한다. 그러나, 상기 근사화 식(1)은 한정된 범위의 입력값들에 적용될 수 있다는 것을 주목하여야 한다.
제곱근 함수에서, 식(1)은 입력 값 x가 0.5에서 1.0까지의 범위일 때 일반적으로 적용될 수 있다. 즉, 이러한 범위를 갖는 입력 값 x는 이것의 제곱근을 얻기 위해 식(1) 내의 값 z로 대체된다. 반대로, 입력값이 0.5 미만인 경우에, 이의 제곱근을 얻기 위해 그 과정을 수정할 필요가 있다. 이 목적을 위해 2-k·z=x를 만족시키는 k 및 z의 값을 얻기 위한 처리가 실행되는데, 여기서, 0≤k≤n-2(n=비트 길이)이고 0.5≤z<1.0이다. 이 처리를 정류화 처리라고 한다. 그 다음에, 그 입력 값 x의 제곱근 y는 y=2-k/2·f(z)를 실행함으로써 유도된다. 2-k/2를 나타내는 각각의 값들은 메모리 내에 이미 저장되어 있다. 예로서 x=0.4라고 가정하면, 2-1·0.8=0.4이기 때문에 k=1과 z=0.8이 얻어지고, 그에 따라 y=2-1/2·f(0.8)=0.6324…를 취한다.
요약하면, 제곱근 y는 입력 데이타 x의 값에 응답하는 다음의 방식으로 얻어진다 :
1) 0.5≤x<1.0
z=x,y=f(z)(2)
2) 0.0<x<0.5
2-k·z=x(3)
y=2-k/2·f(z)(4)
3) x=0.0
y=0.0(5)
고정 소수점 DSP가 식 (3)으로 나타내어진 정규화 처리를 고속으로 수행한다는 것은 중요하다.
그러나, 종래의 고정 소수점 DSP는 이 정규화를 수행하는데 오랜 시간이 걸린다. 이것은 종래의 DSP가 시프트된 결과 데이타에서 캐리가 발생될 때까지 입력 데이타에 1-비트 시프트 연산을 반복함으로써 값 k 및 z를 얻기 때문이다. 입력 데이타상에 비트 시프트 연산의 반복 회로수는 입력 데이타의 값이 적어질수록 증가된다.
본 발명의 목적은 개량된 고정 소수점 DSP를 제공하는 것이다.
본 발명의 또 하나의 목적은 고속으로 정규화 처리를 수행하는 고정 소수점 산술 연산 장치를 구비한 고정 소수점 DSP를 제공하는 것이다.
본 발명의 또 다른 목적은 입력 데이타의 값에 관계없이 한 단계에서 정규화 연산을 수행하는 산술 연산 장치를 구비한 고정 소수점 DSP를 제공하는 것이다.
본 발명에 따른 고정 소수점 디지탈 신호 처리기는 공급되는 고정 소수점 데이타에 산술 및/또는 논리 연산을 수행하는 산술 및 논리 연산 장치(ALU), 처리될 고정 소수점 데이타를 일시적으로 저장하는 레지스터, ALU와 레지스터 사이에 삽입되어 있고 ALU에 다시 공급되는 시프트된 고정 소수점 데이타를 발생시키기 위해 이에 공급된 시프트-넘버 데이타에 의해 결정된 비트의 수만큼 레지스터로부터 공급된 고정 소수점 데이타를 시프트시키는 시프터, 및 정규화를 위해 시프트될 비트의 수를 검출하기 위해 레지스터로부터 고정 소수점 데이타를 수신하고 시프트에 공급되는 시프트될 비트의 수를 나타내는 시프트-넘버 데이타를 발생시키는 시프트-넘버 검출기를 포함한다.
시프트-넘버 검출기를 사용하여 시프트될 비트의 수, 즉 시프트-넘버 데이타는 시프트될 데이타의 값에 관계없이 한 단계에서 유도된다. 비트-시프트 연산의 반복은 더 이상 요구되지 않는다. 이로써 정규화 연산은 고속으로 수행된다.
본 발명의 상기 목적 및 다른 목적, 장점 및 특징은 첨부 도면과 관련하여 이루어진 다음의 설명으로부터 보다 분명해질 것이다.
본 발명을 상세히 설명하기 전에, 보 발명의 이해를 돕고자 종래의 고정 소수점 DSP에 대하여 아래에 설명하겠다.
제1도를 참조하면, 종래의 고정 소수점 DSP는 제1 및/또는 제2입력 단자에 공급되는 고정 소수점 데이타에 산술 및/또는 논리 연산을 수행하는 산술 및 논리 연산 장치(ALU)(2)를 포함한다. ALU(2)의 연산 상태는 플랙 레지스터(3) 내에 일시적으로 지정된다. 이 레지스터(3)은 캐리 플랙, 제로 플랙 등(도시안됨)을 갖고 있다. ALU(2)로부터의 출력 데이타는 레지스터(4) 또는 레지스터(5) 내에 저장된다. 이들 레지스터(4 및 5)는 또한 양방향 버스(101)을 통하여 양방향으로 데이타 버스(1)에 접속된다.
ALU(2)에 의해 처리될 데이타는 레지스터(6) 또는 레지스터(7) 또는 둘 다에 일시적으로 저장된다. 레지스터(6)은 데이타 버스(1)로부터 데이타를 수신하고, 레지스터(7)은 일방향 버스(102)를 통하여 레지스터(4 또는 5)로부터 데이타를 수신한다. 레지스터(6 및 7)로부터의 데이타는 멀티플렉서(MPX)(10)에 공급된다. MPX(10)은 시프트될 데이타로서 레지스터(6 및 7)로부터의 데이타 중의 어느 하나를 선택하고 선택된 데이타를 배럴 시프터(8)에 공급한다. 이 시프터(8)은 이에 공급된 데이타를 한 비트 또는 그 이상씩 좌측 또는 우측으로 시프트시킨다. 시프트될 비트의 수, 즉 시프트-넘버 데이타는 데이타 버스(1)에 접속된 시프트-넘버 레지스터로부터 공급된다. 시프트(8)은 또한 시프트-넘버 데이타가 0을 나타낼 때 시프트 연산을 수행하지 않는다.
데이타 버스(1)에는 어드레스 정보를 수신하거나 또는 이것의 어드레스 정보를 공급하기 위해 어드레스 레지스터(14)가 접속된다. 어드레스 레지스터(14)는 데이타 버스(1)상으로부터 데이타를 독출하고 데이타 버스(1)상에 데이타를 기입하기 위해 데이타 메모리(13)에 접속된다. 데이타 메모리(13)은 처리될 고정 소수점 데이타를 저장하고 제곱근을 얻기 위해 사용되는 상수 테이블 데이타를 저장한다.
각 소자의 상기 동작은 명령 메모리(15)에서 독출된 지시에 응답하여 명령 디코더(16)에 의해 발생된 제어/타이밍 신호(161)에 의해 제어된다. 디코더(16)은 나아가 레지스터(9)내로 셋트될 시프트-넘버 데이타와 같은 현재의 데이타를 버스(62)를 통하여 데이타 버스(1)에 공급한다.
제7도를 다시 참조하면, 데이타 메모리(13)내에 저장된 테이블 데이타가 도시되어 있다. 여기에 도시된 데이타가 2-k/2(k=0,1…)의 각각의 값을 10진수로 나타내지만, 각각의 값은 2진 형태로 저장된다는 것을 주목하여야 한다. 각각의 데이타는 선행 어드레스 sqrtb1로부터 연속 어드레스 내에 저장된다.
제1도를 다시 참조하면, 고정 소수점 산술 연산 장치가 제곱근 함수를 수행하고자 할 때, 플로우 챠트 형태로 제2도에 도시된 것과 같은 프로그램이 요구될 것이다. 이러한 프로그램은 명령 메모리(15) 내에 저장되고 명령 메모리(15)로부터 독출됨으로써 실행된다.
특히, 입력 데이타 x는 먼저 레지스터(4) 내로 로드된다(단계 201). 입력 데이타 x는 데이타 메모리(3) 내에 저장되거나 또는 외부 소스(도시 안됨)로부터 전송되고 그 다음 버스(1 및 101)을 통하여 레지스터(4)로 공급된다. 여기서 입력 데이타 x는 0.4(=0.011…B)라고 가정한다. 마크 B는 2진수를 나타낸다. ALU(2)와 플랙 레지스터(3)을 사용하여, 레지스터(4)의 내용, 즉 입력 데이타 x가 제로인지의 여부가 체크된다(단계 202). 그 답이 예이면, 레지스터(4)는 제로로 클리어되거나 리셋트된다(단계 203). 다음에 레지스터(4)의 내용이 제곱근 y로서 출력된다(단계 214). 즉, y=0.0이다.
제시된 설명에서, 답이 아니오이면 단계 204가 실행되어, 어드레스 레지스터(14)가 클리어된 다음 그내용이 1만큼 감소된다.
그 다음에, 앞서 기술된 식(3)에 의해 나타내어진 k 및 z의 값을 얻기 위한 정규화 처리가 실행된다. 특히, 레지스터(4)의 내용은 레지스터(5)내로 로드되거나 세이브된다(단계 205). 다음에 단계 206이 실행되어 레지스터(4)의 내용(=입력데이타 x)은 레지스터(7) 및 MPX(10)을 통하여 배럴 시프트(8)에 공급된다. 이 때, 레지스터(9)는 1을 지정하는 시프트-넘버 데이타로 이미 셋트되어 있다. 따라서 시프트(8)은 입력 데이타 x를 1비트 만큼 좌측으로 시프트시킨다. 시프트된 결과 데이타(=0110011…B)는 다음에 ALU(2)를 통하여 레지스터(4) 내로 로드된다. 후속적으로 어드레스 레지스터(14)의 내용은 1만큼 증가된다(단계 207). 절차가 단계(208)로 진행되어, ALU(2)를 사용하여 캐리가 레지스터(4)의 내용에 발생되는지, 즉 이것의 MSB가 1인지 여부가 검출된다. 레지스터(4)의 내용이 0110011…B이기 때문에, 절차는 정규화 처리를 반복하기 위해 단계 205로 되돌아 간다.
정규화 처리를 1회 실행함으로써, 제시된 설명에서 답 예가 단계 208에 응답하여 얻어진다. 즉, 정규화 처리가 완료된다. 이 때, 레지스터(5)는 식(1)에 사용될 z의 값을 저장한다. 나아가, 어드레스 레지스터(14)의 내용은 k의 값을 나타낸다. 이 설명에서, z=0110011…B(=0.8)이고 k=1이다.
그 다음에, 동작 플로우는 데이타 메모리(13)으로부터 2-k/2의 값을 독출하기 위한 절차로 진행된다. 이 목적을 위해 제6도에 도시한 테이블의 선행 어드레스 sqrtb1[그 어드레스는 데이타 메모리(13)에 이미 지정되어 있음]은 메모리(13)에서 독출되어 버스(1 및 101)을 통하여 레지스터(4) 내로 로드된다(단계 209). 다음에 어드레스 레지스터(14)의 내용은 ALU(2)에 의해 레지스터(4)의 내용에 가산되고, 결과 데이타(=sqrtb1+1)은 어드레스 레지스터(14) 내로 로드된다(단계 210). 데이타 메모리(13)은 어드레스 레지스터(14)에 의해 억세스되어 2-1/2d의 값(=0.70710677)이 이로부터 독출되고 그 다음 레지스터(4)로 전송된다(단계 211).
후속적으로, 레지스터(5) 내에 저장된 데이타(=0.8=0.110011…B)에 f(z)의 계산이 수행되고, 결과 데이타는 레지스터(5) 내에 저장된다(단계 212). 상기 식(4)에 따라서, 그 다음에, 레지스터(4)의 데이타는 레지스터(5)의 데이타로 승산되고, 결과 데이터는 레지스터(4) 내로 로드된 다음 출력된다(단계 213 및 214). 단계 212 및 213에서의 계산 동작과 승산 동작은 본 기술에 공지되어 있고 본 발명과 직접 관련이 없기 때문에, 더 이상의 설명은 생략한다.
그러므로, 정규화 처리가 요구될지라도, 종래의 고정 소수점 산술 연산 장치가 시프터(8)을 1-비트 시프트 연산을 반복시킴으로써 이 처리를 실현한다. 그러므로 정규화 처리를 완료하는데 필요한 단계의 수는 입력 데이타 x의 값에 따라 변한다. 하나의 정규화 처리가 4개의 단계, 즉 단계 205 내지 208을 필요로 하기 때문에, 입력 데이타 x의 값과 정규화 처리를 완료하기 위한 단계의 수 사이의 관계는 아래의 테이블-1에 나타난다.
테이블-1
데이타 길이가 16, 즉 n-16이라고 가정하면, 정규화 처리를 완료하는데 60개 정도의 단계가 걸린다. 이 이유 때문에, 종래의 고정 소수점 DSP는 제곱근 함수를 실행하는데 오랜 기간을 필요로 한다.
제3도를 참조하면, 보 발명의 실시예에 따른 고정 소수점 DSP의 산술 연산 장치가 도시되어 있는데, 제1도에 도시한 것과 동일한 소자에는 동일한 참조 번호가 표시되어 있다. 이러한 공통 소자의 더 이상의 설명은 불필요하기 때문에 생략한다.
본 발명의 산술 연산 장치는 제1도에 도시한 소자들 이외에 시프트-넘버 검출기(20)을 더 포함한다. 검출기(20)은 레지스터(7)로부터 수신하고 시프트될 비트의 수, 즉 정규화를 위한 시프트-넘버 데이타를 검출한다. 이 시프트-넘버 데이타는 버스(22)를 통하여 배럴 시프터에 공급된다. 나아가 시프트-넘버 데이타는 필요한 경우에, 버스(21)을 통하여 데이타 버스(1)로 전송된다.
제4도를 참조하면, 시프트-넘버 검출기(20)은 n(n=데이타 길이)개의 인버터(21011내지 2101n), n개의 제1 NAND 게이트(21021내지 2102n), n개의 제2 NAND 게이트(21031내지 2103n), n개의 제1클럭 인버터(21041내지 2104n), 및 n개의 제2클럭 인버터(21051내지 2105n)을 포함한다. 인버터(21011-n), 제2NAND 게이트(21031-n) 및 제2클럭 인버터(21051-n)에 의해 선행의 1의 비트 위치에 관련한 정보는 양의 입력 데이타일 때 검출된다. 반대로 인버터(21011-n), 제1NAND 게이트(21021-n) 및 제1클럭 인버터(21041-n)에 의해, 선행의 0의 비트 위치에 관련한 정보는 음의 입력 데이타일때 검출된다. 시프트-넘버 검출기(20)는 검출된 선행의 1 또는 0 비트 위치에 응답하여 시프트-넘버 데이타를 발생시키는 디코더(2106)을 더 포함한다. 시프트-넘버 데이타는 버스(22)를 통하여 시프터(8)에 공급되고 나아가 레지스터(2107) 내에 저장된다. 레지스터(2107) 내에 저장된 데이타는 버스(21)을 통하여 데이타 버스(1)에 전송된다.
이렇게 구성된 회로에 의해, 시프트-넘버 데이타는 제5도에 도시된 바와 같은 검출기(20)으로부터 유도된다.
본 발명의 산술 연산 장치가 제곱근 함수를 수행하고자 할 때, 이를 위한 프로그램은 명령 메모리(15)에서 독출되어 실행된다. 그런, 본 발명의 산술 연산 장치는 시프트-넘버 검출기(20)을 갖고 있기 때문에, 동작 플로우는 제2도의 것과 다르다. 보 발명의 산술 연산 장치의 동작 플로우는 제6도에 도시되어 있다.
단계 601 내지 603은 제2도의 단계 201 내지 203에 대응하는 것이므로 이의 더이상의 설명은 생략한다. 입력 데이타 x가 0.4(=00110011…B)라고 가정하면, 답 아니오가 단계 602에서 유도된다. 이로써 정규화 처리가 초기화된다. 그러나, 이 처리는 단계 604에 도시한 바와 같이, 한 단계로만 완료된다. 특히, 레지스터(4) 내에 저장된 입력 데이타 x는 레지스터(7) 및 MPX(10)을 통하여 시프터(8)에 전송되고 나아가 시프트-넘버 검출기(20)에 전송된다. 그러므로 검출기(20)은 시프트될 비트의 수가 제5도에 도시한 바와 같이 1이라는 것을 표시하는 시프트-넘버 데이타를 발생시킨다. 이 시프트-넘버 데이타는 시프터(8)에 공급된다. 시프터(8)이 또한 레지스터(9)로부터 시프트-넘버 데이타를 수신하더라도, 이것은 함수 연산을 수행할 때 검출기(20)으로부터 시프트-넘버 데이타에 응답한다. 이것은 시프터(8)에 레지스터(9)와 검출기(20)중의 하나를 선택하기 위한 선택기를 제공함으로써 달성된다. 결과적으로, 시프터(8)은 입력 데이타 x를 1비트만큼 시프트시킨다. 이렇게 시프트된 결과 데이타(=0.8=0110011…B)는 식(1)을 계산하는데 사용되는 데이타 z를 나타내므로 ALU(2)를 통하여 레지스터(5) 내로 저장된다. 한편, 검출기(20)의 레지스터(2107)(제4도)에 저장된 시프트-넘버 데이타는 식(3)에서의 k의 값을 나타낸다. 그러므로 정규화 처리가 완료된다.
다음에 시프트-넘버 데이타가 버스(21 및 1)을 통하여 검출기(20)의 레지스터(2107)로부터 어드레스 레지스터(14)에 전송된다(단계 605).
제2도의 단계 209 내지 211에 대응하는 단계 606 내지 608에 의해, 2-2/1의 값(0.70710677)은 데이타 메모리(13)에서 독출되어 레지스터(4) 내에 저장된다. 후속적으로, f(z)의 계산 동작은 레지스터(5) 내에 저장된 데이타상에서 수행된다(단계 609는 제2도의 단계 212에 대응함). 이 절차는 제2도의 단계 212에 대응하는 단계 610으로 진행되어, 레지스터(4) 내에 저장된 데이타는 레지스터(5) 내에 저장된 데이타로 승산되고 결과는 레지스터(4) 내로 로드된다. 마지막으로, 레지스터(4)의 데이타는 제곱근 y로서 출력된다(단계 611).
상술한 바와 같이, 정규화 처리는 입력 데이타 x의 값 또는 데이타 길이에 관계없이 한 단계에서 완료된다. 따라서 본 발명의 산술 연산 장치는 함수 연산을 고속으로 수행한다.
본 발명은 상기 실시예에 한정되는 것이 아니고 본 발명의 범위 및 원리에 벗어남이 없이 수정되고 변화될 수 있음이 명백하다.

Claims (7)

  1. 공급된 고정 소수점 데이타상에서 산술 및 논리 연산을 수행하기 위한 산술 및 논리 연산 장치, 상기 산술 및 논리 연산 장치에 공급될 고정 소수점 데이타를 일시적으로 저장하기 위한 레지스터, 비트 시프트된 고정 소수점 데이타를 발생시키기 위해 시프트-넘버 데이타에 의해 지정된 비트의 수 만큼 상기 레지스터로부터의 레지스터 사이에 접촉된 시프터, 및 상기 시프터에 공급될 상기 시프트-넘버 데이타를 발생시키기 위해 상기 레지스터로부터의 고정 소수점 데이타 상의 시프트될 비트의 수를 검출하기 위한 상기 레지스터에 접속된 검출기를 포함하는 것을 특징으로 하는 고정 소수점 디지탈 신호 처리기.
  2. 제1항에 있어서, 상기 검출기는 상기 레지스터로부터의 고정 소수점 데이타가 양일 때 이의 최상위 비트에 인접한 비트 위치에서 논리 1로 상기 비트-시프트된 고정 소수점 데이타를 상기 시프터로 하여금 발생시키게 하는 상기 시프트-넘버 데이타를 발생시키기 위한 수단을 포함하는 것을 특징으로 하는 처리기.
  3. 제1항에 있어서, 상기 검출기는 상기 레지스터로부터의 고정 소수점 데이타가 음일 때 이의 최상위 비트에 인접한 비트 위치에서 논리 0로 상기 비트-시프트된 고정 소수점 데이타를 상기 시프터로 하여금 발생시키게 하는 상기 시프트-넘버 데이타를 발생시키기 위한 수단을 포함하는 것을 특징으로 하는 처리기.
  4. 제1항에 있어서, 상수 데이타를 저장하기 위한 메모리 및 억세스 어드레스에 의해 상기 데이타 메모리를 억세스하기 위한 억세싱 수단을 더 포함하고, 상기 검출기로부터 상기 시프트-넘버 데이타가 상기 억세스 어드레스로 구성된 것을 특징으로 하는 처리기.
  5. 공급된 고정 소수점 데이타상에서 산술 및 논리 연산을 수행하기 위한 산술 및 논리 연산 장치, 시프트될 비트의 수를 나타내는 제1시프트-넘버 데이타를 일시적으로 저장하기 위한 레지스터, 상기 레지스터로부터의 상기 제1시프트-넘버 데이타에 응답하여 이에 공급된 소수점 데이타상에 비트-시프트 연산을 수행하기 위한 시프터, 제2시프트-넘버 데이타를 발생시키기 위해 시프트될 비트의 수를 검출하기 위한 시프트될 고정 소수점 데이타에 직접 응답하는 검출 수단, 상기 시프터에 시프트될 상기 고정 소수점 데이타를 공급하기 위한 수단, 상기 시프터로 하여금 상기 제2시프트-넘버 데이타에 의해 지정된 비트의 수만큼 시프트될 상기 고정 소수점 데이타를 시프트하게 하도록 상기 시프터에 상기 제2시프트-넘버 데이타를 공급하기 위한 수단, 상기 시프터의 출력을 상기 산술 및 논리 연산 장치에 공급하기 위한 수단을 포함하는 것을 특징으로 하는 고정 소수점 디지탈 신호 처리기.
  6. 제5항에 있어서, 복수의 상수 데이타를 저장하는 영역을 갖는 데이타 메모리, 상기 데이타 메모리로부터 상기 복수의 상수 데이타 중의 하나를 독출하기 위해 억세스 어드레스를 사용하여 상기 데이타 억세스하기 위한 억세싱 수단 및 상기 산술 및 연산 장치로 하여금 상기 제2시프트-넘버 데이타를 사용하여 상기 억세스 어드레스를 발생시키게 하는 수단을 더 포함하는 것을 특징으로 하는 처리기.
  7. 제6항에 있어서, 상기 억세스 어드레스가 상기 데이타 메모리의 상기 영역의 선행 어드레스를 타나내는 어드레스로 상기 제2시프트-넘버 데이타를 가산함으로써 유도되는 것을 특징으로 하는 처리기.
KR1019920015102A 1991-08-22 1992-08-22 정규화를 위한 시프트-넘버 검출 회로를 구비한 고정 소수점 디지탈 신호 처리기 KR960012664B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP3209698A JPH0553759A (ja) 1991-08-22 1991-08-22 固定小数点演算ユニツト
JP91-209698 1991-08-22

Publications (2)

Publication Number Publication Date
KR930004883A KR930004883A (ko) 1993-03-23
KR960012664B1 true KR960012664B1 (ko) 1996-09-23

Family

ID=16577155

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019920015102A KR960012664B1 (ko) 1991-08-22 1992-08-22 정규화를 위한 시프트-넘버 검출 회로를 구비한 고정 소수점 디지탈 신호 처리기

Country Status (2)

Country Link
JP (1) JPH0553759A (ko)
KR (1) KR960012664B1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5392228A (en) * 1993-12-06 1995-02-21 Motorola, Inc. Result normalizer and method of operation
JP4086459B2 (ja) * 2000-11-13 2008-05-14 Necエレクトロニクス株式会社 固定小数点データ生成方法及び固定小数点データ生成回路

Also Published As

Publication number Publication date
JPH0553759A (ja) 1993-03-05
KR930004883A (ko) 1993-03-23

Similar Documents

Publication Publication Date Title
KR100239029B1 (ko) 가산기와 함께 사용하기 위한 결과 정규화기 및 결과 정규화 방법과 그를 포함하는 데이터 프로세서
US5917741A (en) Method and apparatus for performing floating-point rounding operations for multiple precisions using incrementers
US4675809A (en) Data processing system for floating point data having a variable length exponent part
EP0127988A1 (en) A normalizing circuit
US5957997A (en) Efficient floating point normalization mechanism
JPH0635675A (ja) データプロセッサにおいて除算を行うための方法および装置
GB2262823A (en) Apparatus and method for rounding operands.
US4295203A (en) Automatic rounding of floating point operands
US3699326A (en) Rounding numbers expressed in 2{40 s complement notation
JPH07168697A (ja) 倍精度除算回路および方法
US4905178A (en) Fast shifter method and structure
EP0234495B1 (en) Arithmetic circuit capable of executing floating point operations and fixed point operations
US5682339A (en) Method for performing rotate through carry using a 32 bit barrel shifter and counter
KR960012664B1 (ko) 정규화를 위한 시프트-넘버 검출 회로를 구비한 고정 소수점 디지탈 신호 처리기
US6219684B1 (en) Optimized rounding in underflow handlers
JPS63123125A (ja) 浮動小数点数の加算装置
US4295202A (en) Hexadecimal digit shifter output control by a programmable read only memory
US5831877A (en) Bit searching through 8, 16, or 32 bit operands using a 32 bit data path
US6988115B2 (en) Method and apparatus to correct leading one prediction
US6516332B1 (en) Floating point number data processing means
US4308589A (en) Apparatus for performing the scientific add instruction
US5655139A (en) Execution unit architecture to support X86 instruction set and X86 segmented addressing
US5754460A (en) Method for performing signed division
US6615228B1 (en) Selection based rounding system and method for floating point operations
JP2509279B2 (ja) 浮動小数点数一固定小数点数変換装置

Legal Events

Date Code Title Description
A201 Request for examination
G160 Decision to publish patent application
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20050909

Year of fee payment: 10

LAPS Lapse due to unpaid annual fee