KR940008611B1 - Ieee 754-1985 표준에 따라서 라운딩한 2진 부동 소숫점 연산 - Google Patents

Ieee 754-1985 표준에 따라서 라운딩한 2진 부동 소숫점 연산 Download PDF

Info

Publication number
KR940008611B1
KR940008611B1 KR1019910701019A KR910701019A KR940008611B1 KR 940008611 B1 KR940008611 B1 KR 940008611B1 KR 1019910701019 A KR1019910701019 A KR 1019910701019A KR 910701019 A KR910701019 A KR 910701019A KR 940008611 B1 KR940008611 B1 KR 940008611B1
Authority
KR
South Korea
Prior art keywords
equal
value
state
setting
square root
Prior art date
Application number
KR1019910701019A
Other languages
English (en)
Other versions
KR920701902A (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 KR920701902A publication Critical patent/KR920701902A/ko
Application granted granted Critical
Publication of KR940008611B1 publication Critical patent/KR940008611B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods 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/52Multiplying; Dividing
    • G06F7/535Dividing only
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods 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/544Methods 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 for evaluating functions by calculation
    • G06F7/552Powers or roots, e.g. Pythagorean sums
    • G06F7/5525Roots or inverse roots of single operands
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/535Indexing scheme relating to groups G06F7/535 - G06F7/5375
    • G06F2207/5355Using iterative approximation not using digit recurrence, e.g. Newton Raphson or Goldschmidt
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods 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/483Computations with numbers represented by a non-linear combination of denominational numbers, e.g. rational numbers, logarithmic number system or floating-point numbers
    • G06F7/487Multiplying; Dividing
    • G06F7/4873Dividing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods 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/499Denomination or exception handling, e.g. rounding or overflow
    • G06F7/49942Significance control
    • G06F7/49947Rounding
    • G06F7/49957Implementation of IEEE-754 Standard

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Complex Calculations (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

내용 없음.

Description

[발명의 명칭]
IEEE 754-1985 표준에 따라서 라운딩한 2진 부동 소숫점 연산
[도면의 간단한 설명]
제1도는 IEEE FPS에 따라서 나머지없는 제산 라운딩하기 위하여 본 발명의 방법을 도시한 순서도.
제2도는 IEEE FPS에 다라서 나머지없는 제곱근 라운딩하기 위하여 본 발명의 방법에 도시한 순서도.
제3도는 라운드 비트 세트를 갖는 가장 근사한(이븐) 모드로 향하는 라운딩에 따라서 나머지없는 제산을 할때 L, H 및 C에 대한 상대 수직선 위치를 도시한 도.
제4도는 라운드 비트 클리어를 갖는 가장 근사한(이븐) 모드로 향하는 라운딩에 따라서 나머지없는 제산을 할때 L, H 및 C에 대한 상대 수직선 위치를 도시한 도.
제5도는 라운드 비트 세트를 갖는 제로 모드로 향하는 라운드에 따라서 나머지없는 제산을 할때 L, H 및 C에 대한 수직선 위치를 도시한 도.
제6도는 라운드 비트 클리어를 갖는 제로 모드로 향하는 라운드에 따라서 나머지없는 제산을 할때 L, H 및 C에 대한 수직선 위치를 도시한 도.
제7도는 라운드 비트 세트 및 양의 부호 C를 갖는 양의 무한 모드로 향하는 라운드에 따라서 나머지없는 제산을 할때 L, H 및 C에 대한 수직선 위치를 도시한 도.
제8도는 라운드 비트 클리어 및 양의 부호 C를 갖는 양의 무한 모드로 향하는 라운드에 따라서 나머지없는 제산을 할때 L, H 및 C에 대한 수직선 위치를 도시한 도.
제9도는 라운드 비트 세트 및 음의 부호 C를 갖는 양의 무한 모드로 향하는 라운드에 따라서 나머지없는 제산을 할때 L, H 및 C에 대한 수직선 위치를 도시한 도.
제10도는 라운드 비트 클리어 및 음의 부호 C를 갖는 양의 무한 모드로 향하는 라운드에 따라서 나머지없는 제산을 할때 L, H 및 C에 대한 수직선 위치를 도시한 도.
제11도는 라운드 비트 세트 및 양의 부호 C를 갖는 음의 무한 모드로 향하는 라운드에 따라서 나머지없는 제산을 할때 L, H 및 C에 대한 수직선 위치를 도시한 도.
제12도는 라운드 비트 클리어 및 음의 부호 C를 갖는 음의 무한 모드로 향하는 라운드에 따라서 나머지없는 제산을 할때 L, H 및 C에 대한 수직선 위치를 도시한 도.
제13도는 라운드 비트 세트 및 음의 부호 C를 갖는 음의 무한 모드로 향하는 라운드에 따라서 나머지없는 제산을 할때 L, H 및 C에 대한 수직선 위치를 도시한 도.
제14도는 라운드 비트 클리어 및 음의 부호 C를 갖는 음의 무한 모드로 향하는 라운드에 따라서 나머지없는 제산을 할때 L, H 및 C에 대한 수직선 위치를 도시한 도.
제15도는 라운드 비트 세트를 갖는 가장 근사한(이븐) 모드로 향하는 라운드에 따라서 나머지없는 제곱근 결정을 할때 L, H 및 C에 대한 수직선 위치를 도시한 도.
제16도는 라운드 비트 클리어를 갖는 가장 근사한(이븐) 모드로 향하는 라운드에 따라서 나머지없는 제곱근 결정을 할때 L, H 및 C에 대한 수직선 위치를 도시한 도.
제17도는 라운드 비트 세트를 갖는 제로 모드로 향하는 라운드에 따라서 나머지없는 제곱근 결정을 할때 L, H 및 C에 대한 수직선 위치를 도시한 도.
제18도는 라운드 비트 클리어를 갖는 제로 모드로 향하는 라운드에 따라서 나머지없는 제곱근 결정을 할때 L, H 및 C에 대한 수직선 위치를 도시한 도.
제19도는 라운드 비트 세트를 갖는 양의 무한 모드로 향하는 라운드에 따라서 나머지없는 제곱근 결정을 할때 L, H 및 C에 대한 수직선 위치를 도시한 도.
제20도는 라운드 비트 클리어를 갖는 양의 무한 모드로 향하는 라운드에 따라서 나머지없는 제곱근 결정을 할때 L, H 및 C에 대한 수직선 위치를 도시한 도.
제21도는 라운드 비트 세트를 갖는 음의 무한 모드로 향하는 라운드에 따라서 나머지없는 제곱근 결정을 할때 L, H 및 C에 대한 수직선 위치를 도시한 도.
제22도는 라운드 비트 클리어를 갖는 음의 무한 모드로 향하는 라운드에 따라서 나머지없는 제곱근 결정을 할때 L, H 및 C에 대한 수직선 위치를 도시한 도.
제23도는 가장 근사한(이븐) 라운딩 모드로 향하는 라운드를 활용하여 나머지없는 제산을 하기 위한 IEEE FPS 라운딩을 도시한 본 발명 수행의 일반적인 순서도.
제24도는 제로 라운딩 모드로 향하는 라운딩을 활용하며 나머지없는 제산을 하기 위한 IEEE FPS 라운딩을 도시한 본 발명 수행의 일반적인 순서도.
제25도는 양의 무한 라운딩 모드로 향하는 라운딩을 활용하며 나머지없는 제산을 하기 위한 IEEE FPS 라운딩을 도시한 본 발명 수행의 일반적인 순서도.
제26도는 음의 무한 라운딩 모드로 향하는 라운딩을 활용하며 나머지없는 제산을 하기 위한 IEEE FPS 라운딩을 도시한 본 발명 수행의 일반적인 순서도.
제27도는 절단을 갖는 제로 라운딩 모드로 향하는 라운딩을 활용하며 나머지없는 제산을 하기 위한 IEEE FPS 라운딩을 도시한 본 발명 수행의 일반적인 순서도.
제28도는 절단을 갖는 가장 근사한(이븐) 라운딩 모드로 향하는 라운딩을 활용하며 나머지없는 제산을 하기 위한 IEEE FPS 라운딩을 도시한 본 발명 수행의 일반적인 순서도.
제29a도 및 b도는 절단을 갖는 양의 무한 라운딩 모드로 향하는 라운딩을 활용하며 나머지없는 제산을 하기 위한 IEEE FPS 라운딩을 도시한 본 발명 수행의 일반적인 순서도.
제30a도 및 b도는 절단을 갖는 음의 무한 라운딩 모드로 향하는 라운딩을 활용하며 나머지없는 제산을 하기 위한 IEEE FPS 라운딩을 도시한 본 발명 수행의 일반적인 순서도.
제31도는 가장 근사한(이븐) 라운딩 모드로 향하는 라운딩을 활용하며 나머지없는 제곱근 결정을 하기위한 IEEE FPS 라운딩을 도시한 본 발명 수행의 일반적인 순서도.
제32도는 음의 무한 라운딩 모드로 향하는 라운딩을 활용하며 나머지없는 제곱근 결정을 하기위한 IEEE FPS 라운딩을 도시한 본 발명 수행의 일반적인 순서도.
제33도는 양의 무한 라운딩 모드로 향하는 라운딩을 활용하며 나머지없는 제곱근 결정을 하기위한 IEEE FPS 라운딩을 도시한 본 발명 수행의 일반적인 순서도.
제34도는 절단을 갖는 가장 근사한(이븐) 라운딩 모드로 향하는 라운딩을 활용하며 나머지없는 제곱근결정 하기위한 IEEE FPS 라운딩을 도시한 본 발명 수행의 일반적인 순서도.
제35도는 절단을 갖는 제로로 향하는 라운드 또는 음의 무한 라운딩 모드로 향하는 라운드를 활용하여 나머지없는 제곱근 결정하기 위한 IEEE FPS 라운딩을 도시한 본 발명 수행의 일반적인 순서도.
제36도는 절단을 갖는 양의 무한 라우딩 모드로 향하는 라운드를 활용하여 나머지없는 제곱근 결정하기 위한 IEEE FPS 라운딩을 도시한 본 발명 수행의 일반적인 순서도.
제37도는 본 발명의 컴퓨터 하드웨어 수행을 도시한 블럭도.
[발명의 상세한 설명]
[발명의 배경]
고정 소숫점 제산 및 제곱근 알고리즘이 오랜동안 사용되어 왔다. 상기 알고리즘의 매 반복이 무한 정확도 결과의 대응 비트와 동일한 비트를 계산하고 그 계산의 나머지가 항상 결정될 수 있기 때문에, 그러한 알고리즘은 이하에 IEEE FPS로 표시된 IEEE 754-1985 2진 부동 소숫점 연산 표준에 따라서 라운딩(rounding)한다.
나머지없는 알고리즘이 고정 소숫점 계산부(counterpart) 보다 훨씬 신속하게 계산될 수 있기 때문에, 나머지없는 알고리즘을 제산 및 제곱근 결정에 대하여 보다 신속한 계산을 제공하기 위하여 활용되어 왔다. 특히, 복원(restoring) 및 비복원 알고리즘을 활용시, 계산 시간은 기수(radix)에 의하여 분할되는 워드 길이에 비례하며; 특히, 알고리즘 계산 시간은 워드 길이에 선형적으로 비례하게 된다. 수렴(convergent) 알고리즘을 활용시, 수렴비를 토대로하여, 계산 시간은 초기 근사 정확도에 의해 불할되는 워드 길이의 로그(log)에 비례한다; 특히, 알고리즘 계산 시간은 워드 길이의 로그에 비례한다.
그러나, 제산 및 제곱근 결정하는 나머지없는 알고리즘들은 수치적으로 매우 근사한 결과를 발생시키나, 무한정확도 결과와 매우 상이한 비트이다. 그러므로, 그러한 알고리즘들은 IEEE FPS를 따르지 않는 라운드된 결과를 제공할 수 있다. 따라서, 제산 및 제곱근 결정하는 나머지없는 알고리즘으로 부터 나온 라운딩 결과가 인용된 표준을 따르도록 하게 하는 방법이 필요하다.
[발명의 요약]
제산 및 제곱근 결정하는 나머지없는 알고리즘을 활용하므로서 얻어지는 라운딩 결과가 IEEE FPS를 따르도록 하게 하는 방법의 필요성은 본 발명의 방법을 이용하는 고속처리기에 의해 실제 해결된다.
본 발명은 방법 및 나머지없는 제산 알고리즘과 나머지없는 제곱근 알고리즘을 수행하므로서 발생되는 출력을 표시하는 전기 신호를 처리하기 위한 고속 처리기를 설명한 것이며, 상기 출력은 최소 유효 비트를 갖는 라운딩 정확도에 따라 라운드되며, 상기 라운딩 정확도를 IEEE FPS에서 주어진 정확도에 의해 열거되어 있고 수행되는 소망의 라운딩 모드는 IEEE FPS 라운딩 모드에 대응하여 응용된다. 활용되는 출력 C은 크리 |N| 및 부호를 갖는 피제수값 N을 활용하는 나머지없는 제산 또는 크기 |S| 및 부호를 갖는 입력값 S를 활용하는 나머지없는 제곱근 결정에 의하여 발생된다. C는 크기, IEEE FPS에 따른 부호 및 열거된 라운딩 정확도의 최소 유효 비트의 우측 비트인 라운드 비트를 가지며, C는 확장된 정확도에 존재하며, 여기서 상기 확장된 정확도는 라운딩 정확도보다 큰 정확도를 갖는다.
본 발명의 일실시예에서, 나머지없는 제산을 하기 위하여 |N|, D 및 C를 얻고, 나머지없는 제곱근 결정을 하기 위하여 |S| 및 C를 얻는다. 다음중 적어도 하나 즉 C의 크기, C의 부호 및 IEEE FPS에 의해 열거된 라운딩 모드와 관계되는 라운딩 정확도에서, C는 두개의 라운딩값 즉 크기 및 부호를 각각 갖는 L 및 H중 적어도 하나와 최소 유효 비트(1sb)를 갖는 H를 결정하기 위하여 활용된다.
두 개의 라운딩값 L 및 H중 적어도 하나는 다음중 적어도 하나 즉 C의 크기, C의 부호 및 IEEE FPS에 의해 열거되는 소망의 라운딩 모드에 관계되는 중간값 A를 발생시키기 위하여 활용된다. 그리고나서, 본 발명의 방법을 수행하여 곱의 값의 크기를 얻는다 : 나머지없는 제산을 하기 위하여, 중간값 A와 제수값 D를 승산하므로서 A*D의 부호를 무시한 |A*D| 크기를 얻거나 또는 나머지없는 제곱근 결정을 하기 위하여, 중간값 A와 그자신을 승산하므로서 |A*A| 크기를 얻는다.
상기 수행은 다음과 같은 상태를 발생시킨다 : 나머지없는 제산 알고리즘동안, 만일 |A*D|가 |N|보다 작은 경우 "보다 작은(less than)", 만일 |A*D|가 |N|과 동일한 경우 "동일(equal to)" 및 만일 |A*D|가 |N|보다 큰 경우 "보다 큰(greater then)"을 구비하는 분할 상태; 및 나머지없는 제곱근 알고리즘동안, 만일 |A*A|가 |S|보다 작은 경우 "보다 작은", 만일 |A*A|가 |S|와 동일한 경우 "동일" 및 만일 |A*A|가 |S|보다 큰 경우 "보다 큰" 제곱근 상태를 발생시킨다.
상기 수행은 적어도 분할 상태 또는 제곱근 상태와 관계하는 라운딩값 L 또는 H를 IEEE FPS에 의해 열거되는 소망의 라운딩 모드를 따르는 라운딩 정확도에서 라운드된 결과값 R로서 선택한다.
[본 발명을 수행하기 위한 최선의 방식]
제1도는 일반적으로 참조번호(100)로 표시되어 있으며, 최소 유효 비트를 갖는 라운딩 정확도의 출력 C(102)을 라운딩하기 위한 본 발명의 방법과 결합한 고속 처리(HSP)에 의해 실행되는 단계의 일실시예를 도시한 것이며, 상기 라운딩 정확도는 이하에 IEEE FPS로서 참조된 IEEE 754-1985 2진 부동 소숫점 연산 표준에서 주어지는 정확도에 의해 발생되는 상기 출력은 크기 |N| 및 부호를 갖는 피제수값 N과 크기 |D| 및 부호를 갖는 제수값 D을 활용하는 나머지없는 제산에 의하여 발생된다. 여기에 이용되는 용어들은 다음과 같이 정의된다 : trunc(X)는 X의 크기보다 작거나 같은 크기를 가지면서 X에 가장 근사한 라운딩 정확도의 수로서 정의된다.
IEEE FPS에 대하여, 부호 크기 포맷 trunc(X)는 라운딩 정확도의 최소 유효 비트의 우측에 있는 모든 비트를 버리므로서 계산될 수 있다.
넥스트어웨이(nextaway)(X)는 다음과 같이 정의된다 : 만일 부호화된 X가 양이면 넥스트에프터(nextafter)(X, +∞) 및 만일 부호화된 X가 음이면 넥스트에프터(X, -∞); 이 함수는 |X|보다 큰 크기를 갖는 라운딩 정확도 에프터 X에서 다음 표시가능한 2진 부동 소숫점 수이다; 그리고 넥스트에프터 함수는 IEEE 규정에 따라서 정의된다.
제 1 데이타 기억 및 조정 유닛은 적어도 하나의 전기 신호로 표시되고 크기 |N| 및 부호를 갖는 피제수값 N과 크기 |D| 및 부호를 갖는 제수값 D을 활용하는 나머지없는 제산에 의해 발생되는 출력 C을 얻고 그 출력을 활용하며, 여기서 C는 크기, IEEE FPS를 따르는 부호 및 열거된 라운딩 정확도의 최소 유효 비트 우측 비트인 라운드 비트를 갖고 C는 확장된 정확도에 준재하며, 여기서 상기 확장된 정확도는 라운딩 정확도(102)보다 큰 정확도를 갖는다.
다음중 적어도 하나 즉 C의 크기, C의 부호 및 IEEE FPS(104)에 의해 열거된 라운딩 모드와 관계되는 라운딩 정확도에서 제 1 결정 유닛은 크기, 신호를 각각 적어도 하나의 전기 신호로 표시되는 두개의 라운딩값 L 및 N중 적어도 하나와 최소 유효 비트(1sb)를 갖는 H를 발생시킨다.
단일 확장은 정확도, 2배 확장된 정확도 뿐만아니라 보다 높게 확장된 정확도는 상기 확장된 정확도만큼 활용될 수 있다.
L의 크기는 H의 크기보다 작고 H의 크기는 라운딩 정확도에서 L크기보다 큰 다음 표시가능한 크기이다.
제 1 결정 유닛은 다음과 같은 라운딩값 L 및 H(104)를 결정한다 : 제3도, 4도 및 23도에 도시한바와 같이, 가장 근사한(이븐(EVEN)) 프로시져(procedure)로 향하는 IEEE 라운드와 관계하여, 라운딩값 L은 trunc(C)이고 라운딩값 H은 넥스트어웨이(L)(2304)와 동일하다; 제5도 및 24도에 도시한 바와 같이, 제로 프로시져로 향하는 IEEE 라운드와 관계하여, C(2402)의 라운드 비트는 세트되고 라운딩값 H는 넥스트어웨이[trunc(C)]와 동일하고 L=넥스트에프터(H, O)(2404)이다; 제6도 및 24도에 도시한 바와 같이, 제로 프로시져로 향하는 IEEE 라운드와 관계하여, C(2402)의 라운드 비트는 세트되고 라운딩값 H는 넥스트어웨이[trunc(C)]와 동일하고 L=넥스트에프터(H, O)(2406)이다; 제7도 및 25도에 도시한 바와 같이, 양의 무한 프로시져로 향하는 IEEE 라운드와 관계하여, C(2402)의 라운드 비트는 세트되고 , C(2502)의 부호는 양이며, L의 값은 넥스트어웨이[trunc(C)]와 동일하고 H=넥스트에웨이(L)(2404)이다; 제8도 및 25도에 도시한 바와 같이, 양의 무한 프로시져로 향하는 IEEE 라운드와 관계하여, C(2402)의 라운드 비트는 클리어되며, C(2502)의 부호는 양이며, L의 값은 trunc(C)와 동일하고 H=넥스트에웨이(L)(2406)이다; 제9도 및 25도에 도시한 바와 같이, 양의 무한 프로시져로 향하는 IEEE 라운드와 관계하여, C(2402)의 라운드 비트는 세트되며, C(2402)의 부호는 음이며, H의 값은 넥스트어웨이[trunc(C)]와 동일하고 L=넥스트에프터(H, O)(2408)이다; 제10도 및 25도에 도시한 바와 같이, 양의 무한 프로시져로 향하는 IEEE 라운드와 관계하여, C(2402)의 라운드 비트는 클리어되며, C(2402)의 부호는 음이며, H의 값은 넥스트어웨이 trunc(C)와 동일하고 L=넥스트애프터(H, O)(2510)이다; 제1도 및 25도에 도시한 바와 같이, 음의 무한 프로시져로 향하는 IEEE 라운드와 관계하여 C(2402)의 라운드 비트는 세트되며, C(2402)의 부호는 양이며, H의 값은 넥스트어웨이[trunc(C)]와 동일하고 L=넥스트애프터(H, O)(2608)이다; 제12도 및 26도에 도시한 바와 같이, 음의 무한 프로시져로 향하는 IEEE 라운드와 관계하여, C(2402)의 라운드 비트는 클리어되며, C(2602)의 부호는 양이며, H의 값은 trunc(C)와 동일하고 L=넥스트애프터(H, O)(2610)이다; 제13도 및 26도에 도시한 바와 같이, 음의 무한 프로시져로 향하는 IEEE 라운드와 관계하여, C(2402)의 라운드 비트는 세트되며, C(2602)의 부호는 음이며, L의 값은 넥스트어웨이[trunc(C)]와 동일하고 H=넥스트어웨이(L)(2304)이다; 제14도 및 26도에 도시한 바와 같이, 음의 무한 프로시져로 향하는 IEEE 라운드와 관계하여, C(2402)의 라운드 비트는 클리어되며, C(2602)의 부호는 음이며, L의 값은 trunc(C)와 동일하고 H=넥스트어웨이(L)(2604)이다.
그리고나서, 제 2 결정 유닛은 적어도 하나의 전기 신호로 표시되고 C의 크기, C의 부호 및 IEEE FPS(104)에 의해 열거되는 소망의 라운딩 모드중 적어도 하나와 관계되는 A(제1도(106))를 결정하며, 여기서 A는 다음과 같이 결정된다 : 제23도에 도시한 바와 같이, 가장 근사한(이븐) 프로시져로 향하는 IEEE 라운드와 관계하여, A값은 L값 더하기 H값(2306)의 총합의 1/2로 세트된다; 제24도에 도시한 바와 같이, 제로 프로시져로 향하는 IEEE 라운드와 관계하여, A값은 H값(2408)로 세트된다; 제25도에 도시한 바와 같이, 양의 무한 프로시져로 향하는 IEEE 라운드와 관계하여, C(2502)의 부호는 양이며, A값은 L값(2512)으로 세트된다; 제25도에 도시한 바와 같이, 양의 무한 프로시져로 향하는 IEEE 라운드와 관계하여, C(2502)의 부호는 음이고, A값은 H값(2514)으로 세트된다; 및 제26도에 도시한 바와 같이, 음의 무한 프로시져로 향하는 IEEE 라운드와 관계하여, C(2502)의 부호는 양이며, A값은 L값(2512)으로 세트된다; 및 제26도에 도시한 바와 같이, 음의 무한 프로시져로 향하는 IEEE 라운드와 관계하여, C(2602)의 부호는 음이며, A값은 L값(2512)으로 세트된다.
그리고나서, 제 3 결정 유닛은 곱의 값 |A*D| (108) 크기를 결정하며, 상기 곱의 값은 적어도 하나의 전기 신호로 표시되고 중간값 A와 제수값 D을 송신하므로서 A*D의 부호를 무시한 |A*D| 크기이다.
다음, 제 4 결정 유닛은 |A*D|와 |N|을 비교하고 적어도 하나의 전기 신호로 표시되는 상태(110)를 발생시키며, 상기 상태는 다음과 같다; 만일 |A*D|가 |N| 보다 작은 경우 "보다 작은", 만일 |A*D|가 |N|과 동일한 경우 "동일" 및 만일 |A*D|가 |N| 보다 큰 경우 "보다 큰"을 구비하는 분할 상태이다.
그리고나서, 제 5 결정 유닛은 IEEE FPS에 의해 열거된 소망의 라운딩 모드로 향하는 라운딩 정확도에서 적어도 제 4 결정 수단에 관계하고 적어도 하나의 전기 신호로 표시되는 라운드된 결과값 R(112)을 다음과 같이 결정한다; 제23도에 도시한 바와 같이, 가장 근사한(이븐) 라운딩 모드로 향하는 IRRR 라운드와 관계하여, 만일 분할 상태가 "보다 작은"(2312)경우 H와 동일하고 만일 분할 상태가 "보다 큰"(2414)경우 L과 동일한 R을 세팅하는 단계를 추가로 포함하는 분할 상태를 이용하여 L 또는 H를 선택한다; 제23도에 도시한 바와 같이, 가장 근사한(이븐) 라운딩 모드로 향하는 IEEE 라운드와 관계하여, 만일 H(2310)의 1sb가 1(2314)과 동일한 경우 L과 동일한 R을 세팅하거나 또는 만일 H(2310)의 1sb가 제로(2312)와 동일한 경우 H와 동일한 R을 세팅하는 단계를 추가로 포함하는 "동일"분할 상태를 이용한다; 제24도에 도시한 바와 같이, 제로 라운딩 모드로 향하는 IEEE 라운드와 관계하여, 만일 분할 상태가 "보다 작은"(2312)경우 H와 동일하며, 만일 분할 상태가 "보다 큰"(2314)경우 L과 동일한 R을 세팅하거나 또는 만일 분할 상태가 "동일"(2312)경우 H와 동일한 R을 세팅하는 단계를 추가로 포함하는 분할 상태를 이용하여 L 또는 H를 선택한다; 제25도에 도시한 바와 같이, 양의 무한 라운딩 모드로 향하는 IEEE 라운드와 관계하여, 만일 분할 상태가 "보다 작은"(2312)경우 H와 동일하며, 만일 분할 상태가 "보다 큰"(2314)경우 L과 동일한 R을 세팅하거나 또는 분할 상태가 "동일"(2312)인 경우 L과 동일한 R을 세팅하는 단계를 추가로 포함하는 분할 상태를 이용하여 L 또는 H를 선택하며, 여기서 C(2502)와 부호는 양이다; 제25도에 도시한 바와 같이, 양의 무한 라운딩 모드로 향하는 IEEE 라운드와 관계하여, 분할 상태가 "보다 작은"(2312)경우 H와 동일한 R을 세팅하는 단계를 추가로 포함하는 분할 상태를 이용하여 L 또는 H를 선택하며, 여기서 C(2502)의 부호는 음이다.
제26도에 도시한 바와 같이, 음의 무한 라운딩 모드로 향하는 IEEE 라운드와 관계하여, 만일 분할 상태가 "보다 작은"(2312)경우 H와 동일하며, 만일 분할 상태가 "보다 큰"(2314)경우 L과 동일한 R을 세팅하거나 또는 만일 분할 상태가 "동일"(2312)경우 H와 동일한 R을 세팅하는 단계를 추가로 포함하는 분할 상태를 이용하여 L 또는 H를 선택하며, 여기서 C(2602)의 부호는 양이다; 및 제26도에 도시한 바와 같이, 음의 무한 라운딩 모드로 향하는 IEEE 라운드와 관계하여, 만일 분할 상태가 "보다 작은"(2312)경우 H와 동일하며, 만일 분할 상태가 "보다 큰"(2314)경우 L과 동일한 R을 세팅하거나 또는 만일 분할 상태가 "동일"(2314)경우 L와 동일한 R을 세팅하는 단계를 이용하여 L 또는 H를 선택하며, 여기서 C(2602)의 부호는 음이다.
본 발명의 또다른 실시예는 IEEE FPS에 의해 규정된 바와 같이 |A*D| 결정 즉 절단된 |A*D|가 세트 또는 클리어(116)되었는지 여부를 결정한후 |N|의 정확도를 따르는 |A*D|의 절단과 관계하고 적어도 하나의 전기 신호로 표시되는 R(112)을 다음과 같이 결정한다; 제27도에 도시한 바와 같이, 제로 프로시져를 따르는 IEEE 라운드와 관계하여, 라운드된 결과 R(112)값은 다음과 같이 결정된다 : "보다 큰"분할 상태인 경우에, R은 L(2314)값과 동일하게 세트되며, "동일"분할 상태이고 부정확한 상태 비트로 세트된 경우에, R은 L(2314) 값과 동일하게 세트되며, "동일"분할 상태이고 부정확한 비트로 클리어된 경우, R은 H(2312)값과 동일하게 세트되고, "보다 작은"분할 상태인 경우에, R은 H(2312)값과 동일하게 세트된다; 제28도에 도시한 바와 같이, 가장 근사한(이븐) 프로시져를 따르는 IEEE 라운드와 관계하여, 라운드된 결과 R(112)값은 다음과 같이 결정된다 : "보다 큰"분할 상태인 경우에, R은 L(2314) 값과 동일하게 세트되며, "동일"분할 상태이고 부정확한 상태 비트로 세트되는 경우에, R은 C(2314) 값과 동일하게 세트되며, R=0(2310)의 최소 유효 비트와 "동일"분할 상태이고 부정확한 상태 비트로 클리어되는 경우에, R은 L(2314) 값과 동일하게 세트되고 "보다 작은"분할 상태인 경우에, R은 H(2312) 값과 동일하고 제29도에 도시한 바와 같이, 양의 무한 프로시져를 따르는 IEEE 라운드와 관계하여, 라운드된 결과 R(112) 값은 다음과 같이 결정되며, 여기서 C의 부호는 음이다 : "보다 작은"분할 상태인 경우에, R은 H값과 동일하게 세트되고 "보다 큰" 또는 "동일"분할 상태인 경우에, R은 L(2314) 값과 동일하게 세트된다.
제29도에 도시한 바와 같이, 양의 무한 프로시져를 따르는 IEEE 라운드와 관계하여, 라운드된 결과 R(112)값은 다음과 같이 결정되며, 여기서 C의 부호는 음이다 : "보다 큰" 분할 상태인 경우에, R은 L(2314)값과 동일하게 세트되며, "동일" 분할 상태이고 부정확한 상태 비트로 클리어된 경우에, R은 H(2312)값과 동일하게 세트되고 "보다 작은"분할 상태인 경우에, R은 H(2312)값과 동일하게 세트된다.
제30도에 도시한 바와 같이, 음의 무한 프로시져를 따르는 IEEE 라운드와 관계하여, 라운드된 결과 R(112)값은 다음과 같이 결정되며, 여기서 C의 부호는 양이다 : "보다 큰" 분할 상태인 경우에, R은 L(2314)값과 동일하게 세트되며, "동일" 분할 상태이고 부정확한 상태 비트로 세트되는 경우에, R은 H(2312)값과 동일하게 세트되고 "보다 작은"분할 상태인 경우에, R은 H(2312)값과 동일하게 세트된다; 제30도에 도시한 바와 같이, 음의 무한 프로시져로 향하는 IEEE 라운드와 관계하여, 라운드된 결과 R(112)값은 다음과 같이 결정되며, 여기서 C의 부호는 음이다 : "보다 작은" 분할 상태인 경우에, R은 H(2312)값과 동일하게 세트되고 "보다 큰" 또는 "동일" 분할 상태인 경우에, R은 L(2314)값과 동일하게 세트된다.
제2도는 일반적으로 참조번호(200)로 표시되어 있으며, 최소 유효 비트를 갖는 라운딩 정확도의 출력 C(202)을 라운딩하기 위하여 본 발명의 방법을 이용한 고속 처리기(HSP)에 의해 실행되는 단계의 일실시예를 도시한 것이며, 상기 라운딩 정확도는 이하에 IEEE FPS로서 IEEE 754-1985 2진 부동 소숫점에서 주어진 정확도에 따라 열거되며 IEEE FPS 라운딩 모드에 의해 규정된 소망의 라운딩 모드를 활용하며, 상기 출력은 크기 |S| 및 부호를 갖는 입력값 S를 활용하는 나머지없는 제곱근 결정에 의해 발생된다. 여기서 사용되는 용어들은 상술된 trunc(X), 넥스트어웨이(X) 및 넥스트애프터 함수와 같이 규정된다.
제 1 데이타 기억 및 조정 유닛은 하나의 전기 신호로 표시되고 크기 |S| 및 부호를 갖는 입력값 S을 사용하는 나머지없는 제곱근 결정에 의해 발생된 출력 C을 얻고 활용하며, 여기서 C는 크기, IEEE FPS를 따르는 부호 및 열거된 라운딩 정확도의 최소 유효 비트의 우측 비트인 라운드 비트를 가지고 상기 C는 확장된 정확도 또는 확장된 정확도를 모방한 수정된 모드에 존재하며, 여기서 상기 확장된 정확도는 라운딩 정확도(202)보다 큰 정확도를 갖는다.
다음중 적어도 하나 즉 C의 크기, C의 부호 및 IEEE FPS(104)에 의해 열거되는 라운딩 모드에 관계되는 라운딩 정확도에서, 제 1 결정 유닛은 크기, 부호를 각각 갖고 적어도 하나의 전기 신호로 표시되는 두개의 라운딩값 L 및 H중 적어도 하나와 최소 유효 비트(1sb)를 갖는 H를 발생시킨다.
단일 확장된 정확도, 2배 확장된 정확도뿐만 아니라 보다 높은 확장된 정확도는 상기 확장된 정확도만큼 활용될 수 있다.
라운딩 정확도에서, L의 크기는 H의 크기보다 작고 H의 크기는 L의 크기보다 큰 다음 표시가능한 크기이다.
제 1 결정 유닛은 다음과 같이 L 및 H(104) 라운딩 값을 결정한다 : 제15도 및 31도에 도시한 바와 같이, 가장 근사한(이븐) 프로시져로 향하는 IEEE 라운드와 관계하여, 라운딩값 L은 trunc(C)(2304)와 동일하다; 제16도 및 31도에 도시한 바와 같이, 가장 근사한(이븐) 프로시져로 향하는 IEEE 라운드와 관계하여, 라운딩값 H은 넥스트어웨이(L)(2304)와 동일하다; 제17도 및 32도에 도시한 바와 같이, 제로 프로시져로 향하거나 또는 제21도 및 32도에 도시한 바오 같이 음의 무한 프로시져로 향하는 IEEE 라운드와 관계하여, C(2402)의 라운드 비트는 세트되며, 라운딩값 H은 넥스트어웨이[trunc(C)])와 동일하고 라운딩값 L은 넥스트애프터(H, O)(2404)와 동일하다.
제18도 및 32도에 도시한 바와 같이, 제로 프로시져로 향하거나 또는 제22도 및 32도에 도시한 바와 같이 음의 무한 프로시져로 향하는 IEEE 라운드와 관계하여, C(2402)의 라운드 비트는 클리어되며, H의 라운딩 값은 trunc(C)와 동일하고 라운딩값 L은 넥스트애프터(H, O)(2406)와 동일하다; 제19도 및 33도에 도시한 바와 같이, 양의 무한 프로시져로 향하는 IEEE 라운드와 관계하여, C(2402)의 라운드 비트는 세트되며, 라운딩값 L은 넥스트어웨이[trunc(C)]와 동일하고 라운딩값 H은 넥스트어웨이(L)(2504)와 동일하다; 및 제20도 및 33도에 도시한 바와 같이, 양의 무한 프로시져로 향하는 IEEE 라운드와 관계하여, C(2402)의 라운드 비트는 세트되며, 라운딩값 L은 trunc(C)와 동일하고 라운딩값 H은 넥스트어웨이(L)(2506)과 동일하다.
그리고나서, 제 2 결정 유닛은 다음과 같이 A(106)를 결정한다 : 제32도에 도시한 바와 같이, 제로 프로시져로 향하거나 또는 음의 무한 프로시져로 향하는 IEEE 라운드와 관계하여, A값은 H값(2408)으로 세트된다; 제33도에 도시한 바와 같이, 양의 무한 프로시져로 향하는 IEEE 라운드와 관계하여, A값은 L값(2512)값으로 세트된다; 그리고나서, 제 3 결정 유닛은 중간값 A를 자기자신과 승산하므로서 |A*A| (204)를 결정하여 크기 |A*A|를 얻는다.
다음, 제 4 결정 유닛은 |A*A|와 |S|를 비교하여 다음과 같은 상태(206)를 발생시킨다 : 만일 |A*A|가 |S|보다 작은 경우 "보다 작은", 만일 |A*A|가 |S|와 동일한 경우 "동일" 및 만일 |A*A|가 |S|보다 큰 경우 "보다 큰"을 구비하는 제곱근 상태이다.
그리고나서, 제 5 결정 유닛은 IEEE FPS에 의해 열거되는 소망의 라운딩 모드를 따르는 라운딩 정확도에서 라운드된 결과값 R(112)을 다음과 같이 결정한다 : 제31도에 도시한 바와 같이, 가장 근사한(이븐) 라운딩 모드로 향하는 IEEE 라운드와 관계하여, 만일 제곱근 상태가 "보다 작은"(2312) 경우 H와 동일하고 만일 제곱근 상태가 "보다 큰"(2314) 경우 L과 동일한 R을 세팅하는 단계를 추가로 포함하는 제곱근 상태를 이용하여 L 또는 H를 선택한다 ; 제31도에 도시한 바와 같이, 가장 근사한(이븐) 라운딩 모드로 향하는 IEEE 라운드와 관계하여, 만일 H(2310)의 1sb가 1(2314)과 동일한 경우 L과 동일한 R을 세팅하거나 또는 만일 H(2310)의 1sb가 제로(2312)와 동일한 경우 H와 동일한 세팅하는 단계를 추가로 포함하는 "동일" 제곱근 상태를 이용한다; 제32도에 도시한 바와 같이, 제로로 향하는 IEEE 라운드 또는 음의 무한 라운딩 모드로 향하는 IEEE 라운드와 관계하여, 만일 제곱근 상태가 "보다 작은"(2312) 경우 H와 동일한 R, 만일 제곱근 상태가 "보다 큰"(2314) 경우 L과 동일한 R을 세팅하거나 또는 만일 제곱근 상태가 "동일"(2312) 경우 H와 동일한 R을 세팅하는 단계를 추가로 포함하는 제곱근을 이용하여 L 또는 H를 선택하고 제33도에 도시한 바와 같이, 양의 무한 라운딩 모드로 향하는 IEEE 라운드와 관계하여, 만일 제곱근 상태가 "보다 작은"(2312) 경우 H와 동일한 R, 만일 제곱근 상태가 "보다 큰"(2314) 경우 L과 동일한 R을 세팅하는 단계를 추가로 포함하는 제곱근 상태를 이용하여 L 또는 H를 선택한다.
본 발명의 또다른 실시예는 IEEE FPS에 의해 규정된 바와 같이 |A*A| (204)의 결정 즉 절단되 |A*A|가 세트 또는 클리어(210)되었는지 여부를 결정한후 |S| (208)의 정확도를 따르는 |A*A|의 절단과 관계하고 다음과 같이 R을 결정한다; 제35도에 도시한 바와 같이, 제로 프로시져로 향하는 IEEE 라운드 또는 음의 무한으로 향하는 IEEE 라운드와 관계하여, 라운드된 결과 R(112)값은 다음과 같이 결정된다 : "보다 큰" 제곱근 상태인 경우에, R은 L(2314)값과 동일하게 세트되며, "동일" 제곱근 상태 및 부정확한 상태 비트로 클리어되는 경우에, R은 H(2312)값과 동일하게 세트되고 "보다 작은" 제곱근 상태인 경우에, R은 H(2312)값과 동일하게 세트된다.
제34도에 도시한 바와 같이, 가장 근사한(이븐) 프로시져로 향하는 IEEE 라운드와 관계하여, 라운드된 결과 R(112)값은 다음과 같이 결정된다 : "보다 큰" 제곱근 상태인 경우에, R은 L(2314)값과 동일하게 세트되며, "동일" 제곱근 상태 및 부정확한 상태 비트로 세트되는 경우에, R은 L(2314)값과 동일하게 세트되며, "동일" 제곱근 상태, H=0(2310)의 최소 유효 비트 및 부정확한 상태 비트로 클리어되는 경우에, R은 H(2312)값과 동일하게 세트된다.
"동일" 제곱근 상태, H=1(2310)의 최소 유효 미트 및 부정확한 상태 비트로 클리어되는 경우에, R은 H(2314)값과 동일하게 세트되고 "보다 작은" 제곱근 상태인 경우에, R은 H(2312)값과 동일하게 세트되고 제36도에 도시한 바와 같이, 양의 무한 프로시져로 향하는 IEEE 라운드와 관계하여, 라운드된 결과 R(112)값은 다음과 같이 결정된다 : "보다 작은" 제곱근 상태인 경우에, R은 H(2312)값과 동일하게 세트되고 "보다 큰" 또는 "동일" 제곱근 상태인 경우에, R은 L(2314)값과 동일하게 세트되며, "동일" 제곱근 상태인 경우에, R은 L(2314)값과 동일하게 세트된다.
제37도는 일반적으로 참조번호(3700)로 표시되어 있으며, 본 발명의 컴퓨터 하드웨어 수행을 도시한 블럭도이다.
일실시에에서, 제 1 데이타 저장 및 조정 유닛은 나머지없는 제산을 하기 위하여 입력 |N|, D 및 D와 나머지없는 제곱근 결정하기 위하여 |S| 및 C를 얻고 상기 값들을 프로그램 제어 유닛(3702)에 전송한다. 상기 값은 버스(3710)를 통과하여 메모리(3712)에 놓여진다. ALU(3706)는 상술한 바와 같이 상태 레지스터를 표시한 부정확한 상태를 활용하여 계산을 수행한다. 프로그램 메모리(3704)는 본 발명을 수행하기 위한 명령을 유지한다. ALU(3706)에서 제 1 결정 유닛은 상술한 바와 같이 L 및 H를 발생시킨다. ALU에서 제 2 결정 유닛은 상술된 바와 같이 A를 결정하며, ALU에서 제 3 결정 유닛은 상술된 바와 같이 |A*D| 또는 |A*A|를 결정하며, ALU(3700)에서 제 4 결정 유닛은 상술된 바와 같이 분할 상태 또는 제곱근 상태를 결정하고 ALU에서 제 5 결정 유닛은 상술된 바와 같이 보정 라운딩 결과 R를 선택한다.
또다른 실시예에서, 제23도 내지 26도에 도시한 바와 같이, 나머지없는 제산 및 제곱근 결정 출력에 따르는 이하에 IEEE FPS로 표시되는 IEEE 754-1985 2진 부동 소숫점 연산 표준을 발생하기 위한 본 발명의 디지탈 신호 처리 방법은 피제수값 N 및 제수값 D의 나머지없는 제산 및 입력값 S(102,202)의 나머지없는 제곱근 결정으로 부터 나온 출력값 C의 선택, 기억 및 조정하기 위한 적어도 하나의 제 1 데이타 기억 및 조작 장치를 그들 동작을 활용하는 시스템에 배치하는 것이며, 여기서 피제수값 N은 크기 |N| 및 부호를 가지며, 제수값 D는 크기 |D| 및 부호를 갖거나 또는 입력값 S는 크기 |S|를 갖는다.
상기 방법은 IEEE FPS(104)를 따르는 두개의 확률값 H 및 L중 적어도 하나를 얻기 위하여 출력값 C을 조정하기 위한 적어도 하나의 데이타 기억 및 조정 장치를 배치되고 중간값 A를 결정하기 위하여 확률값 H 및 L중 적어도 하나를 조정하기 위하여 적어도 하나의 데이타 기억 및 조정 장치를 추가로 배치한다.
상기 방법은 다음 방식으로 중간값 A와 소정의 검사값의 곱의 크기를 얻기 위하여 적어도 하나의 데이타 기억 및 조정 장치를 또한 배치한다 : 나머지없는 제산을 하기 위하여, 중간값 A와 제수값 D를 승산하므로서 부호 A*D를 무시한 크기 |A*D|를 얻거나 또는 나머지없는 제곱근 결정하기 위하여, 중간값 A와 그 자신을 승산하므로서 크기 |A*A|를 얻는다.
상기 방법은 다음과 같이 곱 |A*D| 또는 |A*A|의 크기와 제 2 소정 검사값과 비교하여 출력을 얻기 위하여 적어도 하나의 데이타 기억 및 조정 장치를 배치한다 : 나머지없는 제산 알고리즘을 하기 위하여, 만일 |A*D|가 |N|보다 작은 경우 "보다 작은", 만일 |A*D|가 |N|과 동일한 경우 "동일" 및 만일 |A*D|가 |N|보다 큰 경우 "보다 큰"을 구비하는 분할상태와 나머지없는 제곱근 알고리즘을 위하여, 만일 |A*A|가 |S|보다 작은 경우 "보다 작은", 만일 |A*A|가 |S|와 동일한 경우 "동일" 및 만일 |A*A|가 |S|보다 큰 경우 "보다 큰"을 구비하는 제곱근 상태이다.
상기 방법은 적어도 비교 출력과 관계하는 확률 라운딩값을 선택하기 위하여 적어도 하나의 데이타 기억 및 조정 장치를 추가로 배치하며 상기 라운딩값이 IEEE FPS에 따르는 라운드된 출력값 C에 대응한다. R 선택은 상술된 바와 같이 다른 팩터에 달려 있다.
또다른 실시예에서, 시스템은 제어 신호 세트 및 입력과 계산 공정을 제어하기 위한 제어 신호 세트에 응답하는 공정 제어 장치를 활용하는 이하에 IEEE FPS로 표시된 IEEE 754-1985 2진 부동 소숫점 연산 표준을 따르는 나머지없는 제산 또는 나머지없는 제곱근으로 부터 나온 출력 C을 라운딩 상관시키는 본 발명의 방법을 활용한다. 제어 신호 세트 및 입력은 그중에서도 특히 나머지없는 제산을 하기 위하여 크기 |N| 및 부호를 갖는 피제수값 N과 크기 |D| 및 부호를 갖는 계수 D의 입력값과 출력값 C 또는 나머지없는 제곱근 결정을 하기 위하여 크기 |S| 및 부호를 갖는 입력값 S 및 출력값 C을 포함한다.
공정 제어 장치 및 다수의 센서는 상술된 순서도에 도시한 절차를 수행하기 위한 조정 및 데이타 기억 장치를 포함한다.
제어기는 입력값을 활용하기 위한 적어도 하나의 조정 장치를 포함하여 상술된 본 발명의 방법을 따르는 IEEE FPS에 따라서 라운드된 출력값 C에 대응하는 라운딩값을 얻는다.
본 기술에 숙련된 사람은 다음과 같은 것을 명백히 알 수 있다 : 본 발명은 ALU 자체에서 전적으로 구현될 수 있으며, 상태 결정 단계는 감산(subtraction)을 포함한 다양한 형태로 성취될 수 있으며, L의 최소유효 비트는 IEEE FPS에 따라서 라운드된 결과를 결정하기 위하여 대안적으로 활용될 수 있고 분할 및 제곱근 상태 결정은 달리 표시될 수 있다.
비록 제3도 내지 22도는 근사 C와 무한 정확도 결과 P간의 차가 본 발명의 적당한 동작을 위하여 1/2보다 작게 요구한다는 것을 나타내며, C 및 P간의 실제차는 1sb의 1/4이다. 인접한 수들간의 해상도는 IEEE FPS에 의해 규정된 바와 같이 1씩 변화할때 변화한다. IEEE 지수가 증가할때, IEEE FPS에 규정된 바와 같이 유의 해상도는 반으로 절단된다. 따라서, 무한 정확도 결과 P 및 근사 C간의 차는 가장 작은 해상도의 1sb의 1/2보다 작거나 또는 동일하며, 상기 차는 조잡한(coarser) 해상도의 1sb의 1/4보다 작게 되어 상기 차가 정교한(finer) 해상도의 1sb의 1/2보다 작게 된다.

Claims (10)

  1. 크기 |N| 및 부호를 갖는 부호화된 피제수값 N과 크기 |D| 및 부호를 갖는 부호화된 제수값 D을 활용하는 나머지없는 제산에 응답하거나 또는 크기 |S| 및 부호를 갖는 입력값 S을 활용하는 나머지없는 제곱근 결정에 응답하는 확장된 정확도에서 출력값 C을 획득함에 따라서 라운딩한 값 R 즉 이하에 IEEE FPS로 참조된 IEEE 754-1985 2진 부동 소숫점 연산 표준을 따르는 값 R을 얻기 위하여 일련의 수학적인 동작을 수행하기 위한 고속 처리기용 디지탈 연산 유닛에 있어서,
    A) 출력값 C은 확장된 정확도가 라운딩 정확도 보다 큰 정확도를 갖는 확장된 정확도에 존재하며, 상기 출력값 C은 크기, 부호 및 열거된 라운딩 정확도의 최소 유효 비트의 우측 비트인 라운드 비트를 갖도록 상기 출력값 C을 조장 및 기억하기 위한 제 1 데이타 기억 및 조정 수단 ;
    B) 다음중 적어도 하나 즉 C의 크기, C의 부호 및 IEEE FPS에 따라 열거되는 소망의 라운딩 모드와 관계되는 라운딩 정확도에서, 크기 및 부호를 각각 갖는 두개의 라운딩값 L 및 H중 적어도 하나와 최소 유효 비트(1sb)를 갖는 H를 발생시키기 위하여 제 1 데이타 기억 및 조정 수단에 응답하는 제 1 결정 수단;
    C) 제 1 데이타 기억 수단 및 다음중 적어도 하나 즉 C의 크기, C의 부호 및 IEEE FPS에 의해 열거된 소망 라운딩 모드와 관계되는 중간값 A을 발생시키기 위하여 제 1 결정 수단에 응답하는 제 2 결정 수단;
    D) 곱의 값의 크기 즉 나머지없는 제산을 하기 위하여 중간값 A와 제수값 D를 승산하므로서 A*D의 부호를 무시한 |A*D| 크기를 얻거나 또는 나머지없는 제곱근 결정하기 위하여 중간값 A와 그 자신을 승산하므로서 |A*A| 크기를 얻도록 발생시키기 위하여 제 2 결정 수단에 응답하는 제 3 결정 수단;
    E) 나머지없는 제산 알고리즘을 위하여 만일 |A*D|가 |N|보다 작은 경우 "보다 작은", 만일 |A*D|가 |N|과 동일한 경우 "동일" 및 만일 |A*D|가 |N| 보다 큰 경우 "보다 큰"을 구비하는 분할 상태와 나머지없는 제곱근 알고리즘을 위하여 만일 |A*A|가 |S|보다 작은 경우 '보다 작은", 만일 |A*A|가 |S|와 동일한 경우 "동일" 및 만일 |A*A|가 |S|보다 큰 경우 "보다 큰"을 구비하는 제곱근 상태를 발생시키기 위하여 제 3 결정 수단에 응답하는 제 4 결정 수단 :
    F) 단계(E)의 적어도 분할 상태 또는 제곱근 상태와 관계하는 상기 단계(B)로부터 나온 L 또는 H를 소망의 IEEE FPS 라운딩 모드를 따르는 라운딩 정확도에서 라운드된 결과값 R로서 선택하기 위하여 적어도 제 4 결정 수단에 관계하는 제 1 결정 수단에 응답하는 제 5 결정 수단을 구비하는 것을 특징으로 하는 고속 처리기용 디지탈 연산 유닛.
  2. 제1항에 있어서, 확장된 정확도는 단일 확장된 정확도 및 2배 확장된 정확도중 하나이고 라운딩 정확도는 단일 정확도 및 2배 정확도중 하나인 고속 처리기.
  3. 제1항에 있어서, L의 크기는 H의 크기보다 작으며; H의 크기는 라운딩 정확도에서 L의 크기보다 큰 다음 표시가능한 크기인 고속 처리기.
  4. 제1항에 있어서,
    A) 가장 근사한(이븐) 프로시져로 향하는 IEEE 라운드와 관계하여 나머지없는 제산을 하기 위하여, 라운딩값 L은 trunc(C)이고 라운딩값 H은 넥스트어웨이(L)와 동일하며; A값은 L값 더하기 H값의 합의 1/2로 세트되며, 만일 분할 상태가 "보다 작은" 경우 H와 동일한 R과 만일 분할 상태가 "보다 큰" 경우 L과 동일한 R을 세팅하는 단계를 추가로 포함하는 분할 상태를 이용하여 L 또는 H를 선택하며; 및 만일 H의 1sb가 1과 동일한 경우 L과 동일한 R 또는 만일 H의 1sb가 제로와 동일한 경우 H와 동일한 R을 세팅하는 단계를 추가로 포함하는 "동일" 분할 상태를 이용하며;
    B) C의 라운드 비트가 세트되며, 제로 프로시져로 향하는 IEEE 라운드와 관계하여 나머지없는 제산을 하기 위하여, 라운딩값 H은 넥스트어웨이[trunc(C)]와 동일하고 및 L=넥스트애프터(H, O)이며; A값은 H값으로 세트되며; 및 만일 분할 상태가 "보다 작은" 경우 H와 동일한 R, 만일 분할 상태가 "보다 큰" 경우 L과 동일한 R을 세팅하거나 또는 만일 분할 상태가 "동일" 경우 H와 동일한 R을 세팅하는 단계를 추가로 포함하는 분할 상태를 이용하여 L 또는 H를 선택하며;
    C) C의 라운드 비트가 클리어되며, 제로 프로시져로 향하는 IEEE 라운드와 관계하여 나머지없는 제산을 하기 위하여, 라운딩값 H은 trunc(C)와 동일하고 및 L=넥스트애프터(H, O)이며; A값은 H값으로 세트되며; 및 만일 분할 상태가 "보다 작은" 경우 H와 동일한 R, 만일 분할 상태가 "보다 큰" 경우 L과 동일한 R을 세팅하거나 또는 만일 분할 상태가 "동일" 경우 H와 동일한 R을 세팅하는 단계를 추가로 포함하는 분할 상태를 이용하여 L 또는 H를 선택하며;
    D) C의 라운드 비트가 세트되고 C의 부호가 양이며, 양의 무한 프로시져로 향하는 IEEE 라운드와 관계하여 나머지없는 제산을 하기 위하여, L값은 넥스트어웨이[trunc(C)]와 동일하고 및 H=넥스트어웨이(L)이며; C의 부호는 양이며, A값은 L값으로 세트되며; 및 C의 부호는 양이며 만일 분할 상태가 "보다 작은" 경우 H와 동일한 R, 만일 분할 상태가 "보다 큰" 경우 L과 동일한 R을 세팅하거나 또는 만일 분할 상태가 "동일" 경우 L와 동일한 R을 세팅하는 단계를 추가로 포함하는 분할 상태를 이용하여 L 또는 H를 선택하며;
    E) C의 라운드 비트가 세트되고 C의 부호가 양이며, 양의 무한 프로시져로 향하는 IEEE 라운드와 관계하여 나머지없는 제산을 하기 위하여, L값은 trunc(C)와 동일하고 H=넥스트어웨이(L)이며; C의 부호가 양이며, A값은 L값으로 세트되며; 및 C의 부호는 양이며 만일 분할 상태가 "보다 작은" 경우 H와 동일한 R, 만일 분할 상태가 "보다 큰" 경우 L과 동일한 R을 세팅하거나 또는 만일 분할 상태가 "동일" 경우 L와 동일한 R을 세팅하는 단계를 추가로 포함하는 분할 상태를 이용하여 L 또는 H를 선택하며;
    F) C의 라운드 비트가 세트되고 C의 부호가 음이며, 양의 무한 프로시져로 향하는 IEEE 라운드와 관계하여 나머지없는 제산을 하기 위하여, H값은 넥스트어웨이[trunc(C)]와 동일하고 L=넥스트애프터(H, O)이며; C의 부호는 음이며, A값은 H값으로 세트되며; 및 C의 부호는 음이며, 만일 분할 상태가 "보다 작은" 경우 H와 동일한 R, 만일 분할 상태가 "보다 큰" 경우 L과 동일한 R을 세팅하거나 또는 만일 분할 상태가 "동일" 경우 L와 동일한 R을 세팅하는 단계를 추가로 포함하는 분할 상태를 이용하여 L 또는 H를 선택하며;
    G) C의 라운드 비트가 클리어되고 C의 부호가 음이며, 양의 무한 프로시져로 향하는 IEEE 라운드와 관계하여 나머지없는 제산을 하기 위하여, H값은 trunc(C)와 동일하고 L=넥스트애프터(H, O)이며; C의 부호가 음이며, A값은 H값으로 세트되며; 및 C의 부호는 양이며, 만일 분할 상태가 "보다 작은" 경우 H와 동일한 R, 만일 분할 상태가 "보다 큰" 경우 L과 동일한 R을 세팅하거나 또는 만일 분할 상태가 "동일" 경우 L와 동일한 R을 세팅하는 단계를 추가로 포함하는 분할 상태를 이용하여 L 또는 H를 선택하며;
    H) C의 라운드 비트가 세트되고 C의 부호가 양이며, 음의 무한 프로시져로 향하는 IEEE 라운드와 관계하여 나머지없는 제산을 하기 위하여, H값은 넥스트어웨이[trunc(C)]와 동일하고 L=넥스트애프터(H, O)이며, C의 부호는 양이며, A값은 H값으로 세트되며; 및 C의 부호는 양이며, 만일 분할 상태가 "보다 작은" 경우 H와 동일한 R, 만일 분할 상태가 "보다 큰" 경우 L과 동일한 R을 세팅하거나 또는 만일 분할 상태가 "동일" 경우 H와 동일한 R을 세팅하는 단계를 추가로 포함하는 분할 상태를 이용하여 L 또는 H를 선택하며;
    I) C의 라운드 비트가 클리어되고 C의 부호가 양이며, 음의 무한 프로시져로 향하는 IEEE 라운드와 관계하여 나머지없는 제산을 하기 위하여, H값은 trunc(C)와 동일하고 L=넥스트애프터(H, O)이며; C의 부호는 양이며, A값은 H값으로 세트되며; 및 C의 부호는 양이며 만일 분할 상태가 "보다 작은" 경우 H와 동일한 R, 만일 분할 상태가 "보다 큰" 경우 L과 동일한 R을 세팅하거나 또는 만일 분할 상태가 "동일" 경우 H와 동일한 R을 세팅하는 단계를 추가로 포함하는 분할 상태를 이용하여 L 또는 H를 선택하며;
    J) C의 라운드 비트가 세트되고 C의 부호가 음이며, 음의 무한 프로시져로 향하는 IEEE 라운드와 관계하여 나머지없는 제산을 하기 위하여, L값은 넥스트어웨이[trunc(C)]와 동일하고 H=넥스트어웨이(L)이며; C의 부호는 음이며, A값은 L값으로 세트되며; 및 C의 부호는 양이며, 만일 분할 상태가 "보다 작은" 경우 H와 동일한 R, 만일 분할 상태가 "보다 큰" 경우 L과 동일한 R을 세팅하거나 또는 만일 분할 상태가 "동일" 경우 L와 동일한 R을 세팅하는 단계를 추가로 포함하는 분할 상태를 이용하여 L 또는 H를 선택하며;
    K) C의 라운드 비트가 클리어되고 C의 부호는 음이며, 음의 무한 프로시져로 향하는 IEEE 라운드와 관계하여 나머지없는 제산을 하기 위하여, L값은 trunc(C)와 동일하고 H=넥스트어웨이(L)이며; C의 부호가 음이며, A값은 L값으로 세트되며; 및 C의 부호는 음이며 만일 분할 상태가 "보다 작은" 경우 H와 동일한 R, 만일 분할 상태가 "보다 큰" 경우 L과 동일한 R을 세팅하거나 또는 만일 분할 상태가 "동일" 경우 L와 동일한 R을 세팅하는 단계를 추가로 포함하는 분할 상태를 이용하여 L 또는 H를 선택하며;
  5. 제1항에 있어서,
    A) 가장 근사한(이븐) 프로시져로 향하는 IEEE 라운드와 관계하여 나머지없는 제곱근 결정하기 위하여, 라운딩값 L은 trunc(C)와 동일하며; A값은 L값 더하기 H값의 합의 1/2로 세트되며, 만일 제곱근 상태가 "보다 작은" 경우 H와 동일한 R과 만일 제곱근 상태가 "보다 큰" 경우 L과 동일한 R을 세팅하는 단계를 추가로 포함하는 제곱근 상태를 이용하여 L 또는 H를 선택하며; 및 만일 H의 1sb가 1과 동일한 경우 L과 동일한 R 또는 만일 H의 1sb가 제로와 동일한 경우 H와 동일한 R을 세팅하는 단계를 추가로 포함하는 "동일" 제곱근 상태를 이용하며;
    B) 가장 근사한(이븐) 프로시져로 향하는 IEEE 라운드와 관계하여 나머지없는 제곱근 결정하기 위하여, 라운딩값 H는 넥스트어웨이[trunc(C)]와 동일하며; A값은 L값 더하기 H값의 합의 1/2로 세트되며, 만일 제곱근 상태가 "보다 작은" 경우 H와 동일한 R과 만일 제곱근 상태가 "보다 큰" 경우 L과 동일한 R을 세팅하는 단계를 추가로 포함하는 제곱근 상태를 이용하여 L 또는 H를 선택하며; 및 만일 H의 1sb가 1과 동일한 경우 L과 동일한 R 또는 만일 H의 1sb가 제로와 동일한 경우 H와 동일한 R을 세팅하는 단계를 추가로 포함하는 "동일" 제곱근 상태를 이용하며;
    C) C의 라운드 비트가 세트되며, 제로 프로시져로 향하는 IEEE 라운드와 음의 무한 프로시져로 향하는 IEEE 라운드와 관계하여 나머지없는 제곱근 결정하기 위하여, 라운딩값 H는 넥스트어웨이[trunc(C)]와 동일하고 라운딩값 L은 넥스트애프터(H, O)와 동일하며; A값은 H값으로 세트되며; 및 만일 제곱근 상태가 "보다 작은" 경우 H와 동일한 R, 만일 분할 상태가 "보다 큰" 경우 L과 동일한 R을 세팅하거나 또는 만일 분할 상태가 "동일" 경우 H와 동일한 R을 세팅하는 단계를 추가로 포함하는 분할 상태를 이용하여 L 또는 H를 선택하며;
    D) C의 라운드 비트가 클리어되며, 제로 프로시져로 향하는 IEEE 라운드 또는 음의 무한 프로시져로 향하는 IEEE 라운드와 관계하여 나머지없는 제곱근 결정하기 위하여, 라운딩값 H는 넥스트어웨이[trunc(C)]와 동일하고 라운딩값 L은 넥스트애프터(H, O)와 동일하며; A값은 H값으로 세트되며; 및 만일 제곱근 상태가 "보다 작은" 경우 H와 동일한 R, 만일 제곱근 상태가 "보다 큰" 경우 L과 동일한 R을 세팅하거나 또는 만일 제곱근 상태가 "동일" 경우 H와 동일한 R을 세팅하는 단계를 추가로 포함하는 제곱근 상태를 이용하여 L 또는 H를 선택하며;
    E) C의 라운드 비트가 클리어되며, 양의 무한 프로시져로 향하는 IEEE 라운드와 관계하여 나머지없는 제곱근 결정하기 위하여, 라운딩값 L은 넥스트어웨이[trunc(C)]와 동일하고 라운딩값 H은 넥스트어웨이(L)와 동일하며; A값은 L값으로 세트되며; 및 만일 제곱근 상태가 "보다 작은" 경우 H와 동일한 R, 만일 제곱근 상태가 "보다 큰" 경우 L과 동일한 R을 세팅하거나 또는 만일 제곱근 상태가 "동일" 경우 L과 동일한 R을 세팅하는 단계를 추가로 포함하는 제곱근 상태를 이용하여 L 또는 H를 선택하며;
    F) C의 라운드 비트가 클리어되며, 양의 무한 프로시져로 향하는 IEEE 라운드와 관계하여 나머지없는 제곱근 결정하기 위하여, 라운딩값 L은 trunc(C)와 동일하고 라운딩값 H는 넥스트어웨이(L)와 동일하며; A값은 L값으로 세트되며; 및 만일 제곱근 상태가 "보다 작은" 경우 H와 동일한 R, 만일 제곱근 상태가 "보다 큰" 경우 L과 동일한 R을 세팅하거나 또는 만일 제곱근 상태가 "동일" 경우 H와 동일한 R을 세팅하는 단계를 추가로 포함하는 제곱근 상태를 이용하여 L 또는 H를 선택하는 고속 처리기.
  6. 최소 유효 비트를 가지며, 이하에 IEEE FPS로 참조된 IEEE 754-1985 2진 부동 소숫점 연산 표준에서 주어진 정확도에 따라 전형적으로 열거되어 있으며 IEEE FPS 라운딩 모드에 의해 규정된 소망의 라운딩 모드를 활용하는 라운딩 정확도에 따라서 크기 |N| 및 부호를 갖는 피제수값 N과 크기 |D| 및 부호를 갖는 제수값 D을 활용하는 나머지없는 제산 또는 크기 |S| 및 부호를 갖는 입력값 S을 활용하는 나머지없는 제곱근 결정에 의해 발생되는 출력 C를 라운딩하는 방법에 있어서,
    A) 크기, IEEE FPS를 따르는 부호 및 열거된 라운딩 정확도의 최소 유효 비트의 우측 비트인 라운드 비트를 가지며, 확장된 정확도가 라우딩 정확도보다 큰 정확도를 갖는 확장된 정확도에 존재하며, 부호화된 피제수값 N 및 부호화된 제수값 D을 활용하는 나머지없는 제산 알고리즘 또는 입력값 S을 활용하는 나머지없는 제곱근 알고리즘으로부터 얻어지고 적어도 하나의 전기 신호로 표시되는 부호화된 출력값 C을 얻으며;
    B) 다음중 적어도 하나 즉 적어도 하나의 전기 신호를 표시하는 C의 크기, C의 부호 및 IEEE FPS에 의해 열거된 라운딩 모드와 관계되는 라운딩 정확도에서, 크기 및 부호를 각각 갖는 두개의 라운딩값 L 및 H를 적어도 하나와 최소 유효 비트(1sb)를 갖는 H를 발생시키며;
    C) 다음중 적어도 하나 즉 적어도 하나의 전기 신호를 표시하는 C의 크기, C의 부호 및 IEEE FPS에 의해 열거된 소망의 라운딩 모드와 관계되는 중간값 A을 발생시키며;
    D) 나머지없는 제산을 하기 위하여, 중간값 A와 제수값 D을 승산하므로서 부호 A*D를 무시한 크기 |A*D|를 얻거나 또는 나머지없는 제곱근 결정하기 위하여, 중간값 A와 그 자신을 승산하므로서 크기 |A*A| -여기서 |A*D| 또는 |A*A|는 적어도 하나의 전기 신호로 표시된다-를 얻는 곱의 값의 크기를 발생시키며;
    E) 나머지없는 제산 알고리즘을 하기 위하여, 만일 |A*D|가 |N|보다 작은 경우 "보다 작은", 만일 |A*D|가 |N|과 동일한 경우 "동일" 및 만일 |A*D|가 |N|보다 큰 경우 "보다 큰"을 구비하는 분할 상태를 발생시키며, 나머지없는 제곱근 알고리즘을 하기 위하여, 만일 |A*A|가 |S|보다 작은 경우 "보다 작은", 만일 |A*A|가 |S|와 동일한 경우 "동일" 및 만일 |A*A|가 |S|보다 큰 경우 "보다 큰"을 구비하는 제곱근 상태를 발생시키며, 발생된 상태는 적어도 하나의 전기 신호로 표시되며;
    F) 단계(6)에서 적어도 분할 상태 또는 제곱근 상태와 관계하는 상기 단계(13)에서 나온 L 또는 H를 IEEE FPS에 의해 열거된 소망의 라운딩 모드를 따르는 라운딩 정확도에서 적어도 하나의 전기 신호로 표시되는 선택된 라운드된 결과값 R으로서 선택하는 단계를 구비하는 라운딩 방법.
  7. 제6항에 있어서, 확장된 정확도는 단일 확장된 정확도 및 2배 확장된 정확도중 하나이고 라운딩 정확도는 단일 정확도 및 2배 정확도중 하나인 라운딩 방법.
  8. 제6항에 있어서, L의 크기는 H의 크기보다 작으며; H의 크기는 라운딩 정확도에서 L의 크기보다 큰 다음 표시가능한 크기인 라운딩 방법.
  9. 제6항에 있어서,
    A) 가장근사한(이븐) 프로시져로 향하는 IEEE 라운드와 관계하여 나머지없는 제산을 하기 위하여, 라운딩값 L은 trunc(C)이고 라운딩값 H은 넥스트어웨이(L)와 동일하며; A값은 L값 더하기 H값의 합의 1/2로 세트되며, 만일 분할 상태가 "보다 작은" 경우 H와 동일한 R과 만일 분할 상태가 "보다 큰" 경우 L과 동일한 R을 세팅하는 단계를 추가로 포함하는 분할 상태를 이용하여 L 또는 H를 선택하며; 및 만일 H의 1sb가 1와 동일한 경우 L과 동일한 R 또는 만일 H의 1sb가 제로와 동일한 경우 H와 동일한 R을 세팅하는 단계를 추가로 포함하는 "동일" 분할 상태를 이용하며;
    B) C의 라운드 비트가 세트되며, 제로 프로시져로 향하는 IEEE 라운드와 관계하여 나머지없는 제산을 하기 위하여, 라운딩값 H은 넥스트어웨이[trunc(C)]와 동일하고 및 L=넥스트애프터(H, O)이며; A값은 H값으로 세트되며; 및 만일 분할 상태가 "보다 작은" 경우 H와 동일한 R, 만일 분할 상태가 "보다 큰" 경우 L과 동일한 R을 세팅하거나 또는 만일 분할 상태가 "동일" 경우 H와 동일한 R을 세팅하는 단계를 추가로 포함하는 분할 상태를 이용하여 L 또는 H를 선택하며;
    C) C의 라운드 비트가 클리어되며, 제로 프로시져로 향하는 IEEE 라운드와 관계하여 나머지없는 제산을 하기 위하여, 라운딩값 H은 trunc(C)와 동일하고 L=넥스트애프터(H, O)이며; A값은 H값으로 세트되며; 및 만일 분할 상태가 "보다 작은" 경우 H와 동일한 R, 만일 분할 상태가 "보다 큰" 경우 L과 동일한 R을 세팅하거나 또는 만일 분할 상태가 "동일" 경우 H와 동일한 R을 세팅하는 단계를 추가로 포함하는 분할 상태를 이용하여 L 또는 H를 선택하며;
    D) C의 라운드 비트가 세트되고 C의 부호가 양이며, 양의 무한 프로시져로 향하는 IEEE 라운드와 관계하여 나머지없는 제산을 하기 위하여, L값은 넥스트어웨이[trunc(C)]와 동일하고 H=넥스트어웨이(L)이며; C의 부호는 양이며, A값은 L값으로 세트되며; 및 C의 부호는 양이며 만일 분할 상태가 "보다 작은" 경우 H와 동일한 R, 만일 분할 상태가 "보다 큰" 경우 L과 동일한 R을 세팅하거나 또는 만일 분할 상태가 "동일" 경우 L와 동일한 R을 세팅하는 단계를 추가로 포함하는 분할 상태를 이용하여 L 또는 H를 선택하며;
    E) C의 라운드 비트가 클리어되고 C의 부호가 양이며, 양의 무한 프로시져로 향하는 IEEE 라운드와 관계하여 나머지없는 제산을 하기 위하여, L값은 trunc(C)와 동일하고 H=넥스트어웨이(L)이며; C의 부호가 양이며, A값은 L값으로 세트되며; 및 C의 부호는 양이며, 만일 분할 상태가 "보다 작은" 경우 H와 동일한 R, 만일 분할 상태가 "보다 큰" 경우 L과 동일한 R을 세팅하거나 또는 만일 분할 상태가 "동일" 경우 L와 동일한 R을 세팅하는 단계를 추가로 포함하는 분할 상태를 이용하여 L 또는 H를 선택하며;
    F) C의 라운드 비트가 세트되고 C의 부호가 음이며, 양의 무한 프로시져로 향하는 IEEE 라운드와 관계하여 나머지없는 제산을 하기 위하여, H값은 넥스트어웨이[trunc(C)]와 동일하고 L=넥스트애프터(H, O)이며; C의 부호가 음이며, A값은 H값으로 세트되며; 및 C의 부호는 음이며, 만일 분할 상태가 "보다 작은" 경우 H와 동일한 R, 만일 분할 상태가 "보다 큰" 경우 L과 동일한 R을 세팅하거나 또는 만일 분할 상태가 "동일" 경우 L와 동일한 R을 세팅하는 단계를 추가로 포함하는 분할 상태를 이용하여 L 또는 H를 선택하며;
    G) C의 라운드 비트가 클리어되고 C의 부호는 음이며, 양의 무한 프로시져로 향하는 IEEE 라운드와 관계하여 나머지없는 제산을 하기 위하여, H값은 trunc(C)와 동일하고 L=넥스트애프터(H, O)이며; C의 부호는 음이며, A값은 H값으로 세트되며; 및 C의 부호는 양이며, 만일 분할 상태가 "보다 작은" 경우 H와 동일한 R, 만일 분할 상태가 "보다 큰" 경우 L과 동일한 R을 세팅하거나 또는 만일 분할 상태가 "동일" 경우 L와 동일한 R을 세팅하는 단계를 추가로 포함하는 분할 상태를 이용하여 L 또는 H를 선택하며;
    H) C의 라운드 비트가 세트되고 C의 부호가 양이며, 음의 무한 프로시져로 향하는 IEEE 라운드와 관계하여 나머지없는 제산을 하기 위하여, H값은 넥스트어웨이[trunc(C)]와 동일하고 L=넥스트애프터(H, O)이며, C의 부호가 양이며, A값은 H값으로 세트되며; 및 C의 부호는 양이며, 만일 분할 상태가 "보다 작은" 경우 H와 동일한 R, 만일 분할 상태가 "보다 큰" 경우 L과 동일한 R을 세팅하거나 또는 만일 분할 상태가 "동일" 경우 H와 동일한 R을 세팅하는 단계를 추가로 포함하는 분할 상태를 이용하여 L 또는 H를 선택하며;
    I) C의 라운드 비트가 클리어되고 C의 부호가 양이며, 음의 무한 프로시져로 향하는 IEEE 라운드와 관계하여 나머지없는 제산을 하기 위하여, H값은 trunc(C)와 동일하고 L=넥스트애프터(H, O)이며; C의 부호가 양이며, A값은 H값으로 세트되며; 및 C의 부호는 양이며, 만일 분할 상태가 "보다 작은" 경우 H와 동일한 R, 만일 분할 상태가 "보다 큰" 경우 L과 동일한 R을 세팅하거나 또는 만일 분할 상태가 "동일" 경우 H와 동일한 R을 세팅하는 단계를 추가로 포함하는 분할 상태를 이용하여 L 또는 H를 선택하며;
    J) C의 라운드 비트가 세트되고 C의 부호가 음이며, 음의 무한 프로시져로 향하는 IEEE 라운드와 관계하여 나머지없는 제산을 하기 위하여, L값은 넥스트어웨이[trunc(C)]와 동일하고 H=넥스트어웨이(L)이며; C의 부호가 음이며, A값은 L값으로 세트되며; 및 C의 부호는 양이며, 만일 분할 상태가 "보다 작은" 경우 H와 동일한 R, 만일 분할 상태가 "보다 큰" 경우 L과 동일한 R을 세팅하거나 또는 만일 분할 상태가 "동일" 경우 L와 동일한 R을 세팅하는 단계를 추가로 포함하는 분할 상태를 이용하여 L 또는 H를 선택하며;
    K) C의 라운드 비트가 클리어되고 C의 부호는 음이며, 음의 무한 프로시져로 향하는 IEEE 라운드와 관계하여 나머지없는 제산을 하기 위하여, L값은 trunc(C)와 동일하고 H=넥스트어웨이(L)이며; C의 부호가 음이며, A값은 L값으로 세트되며; 및 C의 부호는 음이며, 만일 분할 상태가 "보다 작은" 경우 H와 동일한 R, 만일 분할 상태가 "보다 큰" 경우 L과 동일한 R을 세팅하거나 또는 만일 분할 상태가 "동일" 경우 L와 동일한 R을 세팅하는 단계를 추가로 포함하는 분할 상태를 이용하여 L 또는 H를 선택하며;
  10. 제6항에 있어서,
    A) 가장근사한(이븐) 프로시져로 향하는 IEEE 라운드와 관계하여 나머지없는 제곱근 결정하기 위하여, 라운딩값 L은 trunc(C)와 동일하며; A값은 L값 더하기 H값의 합의 1/2로 세트되며, 만일 제곱근 상태가 "보다 작은" 경우 H와 동일한 R과 만일 제곱근 상태가 "보다 큰" 경우 L과 동일한 R을 세팅하는 단계를 추가로 포함하는 제곱근 상태를 이용하여 L 또는 H를 선택하며; 및 만일 H의 1sb가 1와 동일한 경우 L과 동일한 R 또는 만일 H의 1sb가 제로와 동일한 경우 H와 동일한 R을 세팅하는 단계를 추가로 포함하는 "동일" 제곱근 상태를 이용하며;
    B) 가장근사한(이븐) 프로시져로 향하는 IEEE 라운드와 관계하여 나머지없는 제곱근 결정하기 위하여, 라운딩값 H는 넥스트어웨이[trunc(C)]와 동일하며; A값은 L값 더하기 H값의 합의 1/2로 세트되며, 만일 제곱근 상태가 "보다 작은" 경우 H와 동일한 R과 만일 제곱근 상태가 "보다 큰" 경우 L과 동일한 R을 세팅하는 단계를 추가로 포함하는 제곱근 상태를 이용하여 L 또는 H를 선택하며; 및 만일 H의 1sb가 1과 동일한 경우 L과 동일한 R 또는 만일 H의 1sb가 제로와 동일한 경우 H와 동일한 R을 세팅하는 단계를 추가로 포함하는 "동일" 제곱근 상태를 이용하며;
    C) C의 라운드 비트가 세트되며, 제로 프로시져로 향하는 IEEE 라운드와 음의 무한 프로시져로 향하는 IEEE 라운드와 관계하여 나머지없는 제곱근 결정하기 위하여, 라운딩값 H은 넥스트어웨이[trunc(C)]와 동일하고 라운딩값 L은 넥스트애프터(H, O)와 동일하며; A값은 H값으로 세트되며; 및 만일 제곱근 상태가 "보다 작은" 경우 H와 동일한 R, 만일 제곱근 상태가 "보다 큰" 경우 L과 동일한 R을 세팅하거나 또는 만일 제곱근 상태가 "동일"인 경우 H와 동일한 R을 세팅하는 단계를 추가로 포함하는 제곱근 상태를 이용하여 L 또는 H를 선택하며;
    D) C의 라운드 비트가 클리어되며, 제로 프로시져로 향하는 IEEE 라운드와 음의 무한 프로시져로 향하는 IEEE 라운드와 관계하여 나머지없는 제곱근 결정하기 위하여, 라운딩값 H은 넥스트어웨이[trunc(C)]와 동일하고 라운딩값 L은 넥스트애프터(H, O)와 동일하며; A값은 H값으로 세트되며; 및 만일 제곱근 상태가 "보다 작은" 경우 H와 동일한 R, 만일 제곱근 상태가 "보다 큰" 경우 L과 동일한 R을 세팅하거나 또는 만일 제곱근 상태가 "동일"인 경우 H와 동일한 R을 세팅하는 단계를 추가로 포함하는 제곱근 상태를 이용하여 L 또는 H를 선택하며;
    E) C의 라운드 비트가 클리어되며, 양의 무한 프로시져로 향하는 IEEE 라운드와 관계하여 나머지없는 제곱근 결정하기 위하여, 라운딩값 L은 넥스트어웨이[trunc(C)]와 동일하고 라운딩값 H은 넥스트어웨이(L)와 동일하며; A값은 L값으로 세트되며; 및 만일 제곱근 상태가 "보다 작은" 경우 H와 동일한 R, 만일 제곱근 상태가 "보다 큰" 경우 L과 동일한 R을 세팅하거나 또는 만일 제곱근 상태가 "동일"인 경우 L와 동일한 R을 세팅하는 단계를 추가로 포함하는 제곱근 상태를 이용하여 L 또는 H를 선택하며;
    F) C의 라운드 비트가 클리어되며, 양의 무한 프로시져로 향하는 IEEE 라운드와 관계하여 나머지없는 제곱근 결정하기 위하여, 라운딩값 L은 trunc(C)와 동일하고 라운딩값 H는 넥스트어웨이(L)와 동일하며; A값은 L값으로 세트되며; 및 만일 제곱근 상태가 "보다 작은" 경우 H와 동일한 R, 만일 제곱근 상태가 "보다 큰" 경우 L과 동일한 R을 세팅하거나 또는 만일 제곱근 상태가 "동일"인 경우 H와 동일한 R을 세팅하는 단계를 추가로 포함하는 제곱근 상태를 이용하여 L 또는 H를 선택하는 라운딩 방법.
KR1019910701019A 1989-12-29 1990-12-17 Ieee 754-1985 표준에 따라서 라운딩한 2진 부동 소숫점 연산 KR940008611B1 (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US459021 1989-12-19
US45902189A 1989-12-29 1989-12-29
PCT/US1990/007351 WO1991010189A1 (en) 1989-12-29 1990-12-17 Binary floating point arithmetic rounding in conformance with ieee 754-1985 standard
US459,021 1998-12-29

Publications (2)

Publication Number Publication Date
KR920701902A KR920701902A (ko) 1992-08-12
KR940008611B1 true KR940008611B1 (ko) 1994-09-24

Family

ID=23823065

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019910701019A KR940008611B1 (ko) 1989-12-29 1990-12-17 Ieee 754-1985 표준에 따라서 라운딩한 2진 부동 소숫점 연산

Country Status (5)

Country Link
EP (1) EP0461241A4 (ko)
JP (1) JPH04507023A (ko)
KR (1) KR940008611B1 (ko)
CA (1) CA2045662C (ko)
WO (1) WO1991010189A1 (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB9312745D0 (en) * 1993-06-21 1993-08-04 Questech Ltd Accurate digital divider
US5729481A (en) * 1995-03-31 1998-03-17 International Business Machines Corporation Method and system of rounding for quadratically converging division or square root
US6898614B2 (en) 2001-03-29 2005-05-24 Koninklijke Philips Electronics N.V. Round-off algorithm without bias for 2's complement data
EP1956479A4 (en) 2005-12-02 2010-03-17 Fujitsu Ltd ARITHMETIC UNIT FOR THE PERFORMANCE OF DIVISION OR SQUARE ROOT OPERATION OF A FLOW COMPARTMENT AND OPERATING PROCEDURES

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4468748A (en) * 1981-06-11 1984-08-28 Data General Corporation Floating point computation unit having means for rounding the floating point computation result
JPS6125245A (ja) * 1984-07-12 1986-02-04 Nec Corp 丸め処理回路
JPS61213927A (ja) * 1985-03-18 1986-09-22 Hitachi Ltd 浮動小数点演算処理装置
JPH0644225B2 (ja) * 1986-03-27 1994-06-08 日本電気株式会社 浮動小数点丸め正規化回路
US4777613A (en) * 1986-04-01 1988-10-11 Motorola Inc. Floating point numeric data processor
US4758972A (en) * 1986-06-02 1988-07-19 Raytheon Company Precision rounding in a floating point arithmetic unit
JPH01275377A (ja) * 1988-04-27 1989-11-06 Tech Res & Dev Inst Of Japan Def Agency 高速繰り出し用光ファイバリール

Also Published As

Publication number Publication date
EP0461241A1 (en) 1991-12-18
WO1991010189A1 (en) 1991-07-11
KR920701902A (ko) 1992-08-12
JPH04507023A (ja) 1992-12-03
CA2045662A1 (en) 1991-06-30
CA2045662C (en) 1994-04-26
EP0461241A4 (en) 1993-09-01

Similar Documents

Publication Publication Date Title
US5633818A (en) Method and apparatus for performing floating point arithmetic operation and rounding the result thereof
US5768170A (en) Method and apparatus for performing microprocessor integer division operations using floating point hardware
JPH10510383A (ja) シフト手段を使用した累乗回路および使用方法
US8370415B2 (en) Overflow detection and clamping with parallel operand processing for fixed-point multipliers
US7809784B2 (en) Apparatus and method for calculation of divisions and square roots
EP3798929A1 (en) Information processing apparatus, information processing method, and information processing program
KR940008611B1 (ko) Ieee 754-1985 표준에 따라서 라운딩한 2진 부동 소숫점 연산
EP3716043A1 (en) Information processor, information processing method, and program
US5867413A (en) Fast method of floating-point multiplication and accumulation
KR920003479B1 (ko) 곡선의 절선근사방법 및 장치
JPH0690668B2 (ja) ファジイ演算装置
US6005988A (en) Method and apparatus for rapid digital image resizing
EP0738959A1 (en) Method and apparatus for finding arctangents
JP6863907B2 (ja) 演算回路
US5432727A (en) Apparatus for computing a sticky bit for a floating point arithmetic unit
JP2578482B2 (ja) 浮動小数点演算器
JP2645422B2 (ja) 浮動小数点演算処理装置
JPH0831024B2 (ja) 演算プロセッサ
KR100309520B1 (ko) 라운드오프기능을갖는승산방법및승산회로
US5646876A (en) Method and apparatus for reducing rounding error when evaluating binary floating point polynomials
JPH086766A (ja) 正弦余弦演算装置
KR940008610B1 (ko) 고속 수렴 인자 결정 방법 및 프로세서
JPH10333883A (ja) 乗算方法および乗算回路
JP2508286B2 (ja) 平方根演算装置
JP3233432B2 (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: 19970707

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee