KR100226757B1 - 병렬제산 연산장치 - Google Patents

병렬제산 연산장치 Download PDF

Info

Publication number
KR100226757B1
KR100226757B1 KR1019960073499A KR19960073499A KR100226757B1 KR 100226757 B1 KR100226757 B1 KR 100226757B1 KR 1019960073499 A KR1019960073499 A KR 1019960073499A KR 19960073499 A KR19960073499 A KR 19960073499A KR 100226757 B1 KR100226757 B1 KR 100226757B1
Authority
KR
South Korea
Prior art keywords
bit
subtraction circuit
input
bits
jets
Prior art date
Application number
KR1019960073499A
Other languages
English (en)
Other versions
KR19980054351A (ko
Inventor
박성휘
Original Assignee
구본준
엘지반도체주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 구본준, 엘지반도체주식회사 filed Critical 구본준
Priority to KR1019960073499A priority Critical patent/KR100226757B1/ko
Publication of KR19980054351A publication Critical patent/KR19980054351A/ko
Application granted granted Critical
Publication of KR100226757B1 publication Critical patent/KR100226757B1/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

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Executing Machine-Instructions (AREA)
  • Advance Control (AREA)

Abstract

본 발명은 고속의 제산연산이 가능한 병렬제산 연산장치를 제공하기 위한 것으로 n비트의 피젯수 및 젯수를 이용하여 n비트의 몫을 제산하는 제산 연산장치에 있어서, 해당비트의 피젯수와 이전비트의 연산결과에 따른 나머지를 일입력으로 하고 이전비트의 젯수에서 순차적으로 1비트 증가한 젯수를 다른입력으로 하여 연산하며 상기 해당비트가 최상위비트일 경우에는 상기 일입력은 단위비트가 되고 순차적으로 단위비트씩 증가하여 상기 해당비트가 최하위비트일 경우에는 상기 일입력이 n비트가 되는 n개의 감산회로와, 이전비트의 젯수중 최하위 비트의 젯수를 제외한 나머지 비트의 젯수와 해당 감산회로에서 출력하는 캐리신호를 입력으로 하여 해당 비트의 몫을 출력하며 상기 해당 감산회로가 최하위비트 연산을 위한 감산회로일 경우에는 인버터로 구성되고 상기 해당 감산회로가 상기 최하위 비트를 제외한 나머지 비트의 연산일 경우에는 노아 게이트로 구성되는 n개의 논리게이트와, 해당 감산회로의 일입력이 되는 해당 비트의 피젯수 및 이전비트의 나머지 값을 일입력으로 하고 상기 해당 감산회로의 연산결과 값을 다른입력으로 하여 해당비트의 나머지 값을 출력하고 상기 감산회로가 최상위비트 연산을 위한 감산회로일 경우에는 상기 일입력이 단위비트가 되고 순차적으로 단위비트씩 증가하여 상기 감산회로가 최하위비트 연산을 위한 감산회로일 경우에는 상기 일입력이 n비트가 되는 n개의 멀티플렉서를 포함하여 구성된다.

Description

병렬제산 연산장치
본 발명은 반도체장치의 제산장치에 관한 것으로 특히, 고속의 제산이 가능하도록 하여 반도체 중앙처리장치(CPU), 마이크로 컨트롤러(MCU), 디지탈 신호처리장치(DSP)등에 내장하여 그 성능을 향상시키는데 적당하도록 한 병렬제산 연산장치에 관한 것이다.
이하, 종래 병렬제산 연산장치를 첨부된 도면을 참조하여 설명하면 다음과 같다.
도1은 종래 병렬제산 연산장치의 구성블록도이다.
종래 병렬제산 연산장치는 도1에 도시한 바와같이 n비트의 피젯수와 n비트의 젯수를 입력하여 감산하는 n비트 2입력 감산회로(11)와, 상기 n비트의 피젯수와 상기 n비트 2입력 감산회로(11)의 출력을 입력으로 하여 나머지를 출력하는 n비트 멀티플레서(12)와, 상기 n비트 2입력 감산회로(11)의 출력값을 반전시켜 해당비트의 몫으로 출력하는 인버터(13)로 구성된다.
상기와 같이 구성된 종래 병렬제산 연산장치의 동작설명은 다음과 같다.
먼저, 종래 병렬제산 연산장치는 최상위비트에서부터 최하위비트까지의 연산을 전술한 구성을 갖는 연산장치를 각각 사용한다.
예를 들어 최상위비트의 몫을 연산하고자 할 경우, 상기 피젯수가 젯수보다 크면 상기 감산회로(11)는 입력되는 피젯수와 젯수를 가지고 연산동작을 수행하며 그 나머지를 다음 차상위비트의 몫을 연산하는 단계로 출력한다.
그리고, 최상위비트의 제산결과를 1로 출력한다.
한편, n비트 2입력 감산회로(11)로 입력되는 피젯수와 젯수중 상기 피젯수가 젯수보다 작으면 상기 감산회로(11)는 감산동작을 하지 않고 입력되는 피젯수를 다음 차상위비트의 몫을 연산하는 단계로 전달한다.
그리고 최상위비트의 제산결과를 0으로 출력한다.
상기 최상위비트의 연산을 위해 n비트 2입력 감산회로(11)로 입력되었던 피젯수는 차상위비트의 연산을 위한 n비트의 2입력 감산회로(11)의 일측입력으로 하고 다른 입력단자로는 상기 최상위비트 연산을 위해 입력된 젯수를 2로 나누어 차상위비트의 연산을 위한 젯수로 하여 n비트 2입력 감산회로(11)로 입력한다.
여기서 최상위비트의 연산을 위한 젯수를 2로 나눈다는 것은 1비트 우측으로 쉬프트한다는 것을 의미한다.
따라서 차상위비트의 연산동작은 최상위비트의 연산동작과 동일하게 이루어진다.
이와같은 과정을 통해 n비트의 제산연산을 수행하며 전술한 바와같이 각각의 해당비트의 몫을 연산하기 위해서는 각각의 감산회로(11), 멀티플렉서(12) 및 인버터(13)을 구비하여야 한다.
그러나 상기와 같은 종래 병렬제산 연산장치는 다음과 같은 문제점이 있었다.
n비트를 제산할 경우 각 해당비트의 연산마다 n비트의 감산회로를 사용하여 해당비트의 몫과 나머지를 연산하게 되므로 회로구성이 복잡하고 연산속도가 매우 느리다.
본 발명은 상기의 문제점을 해결하기 위해 안출한 것으로서 회로의 구성을 간략화하고 감산회로의 연산시 최상위비트는 1비트 감산연산만 하고 순차적으로 단위비트씩 증가하는 연산을 할 수 있도록 하여 연산속도를 빠르게 하는데 적당한 병렬제산 연산장치를 제공하는데 그 목적이 있다.
제1도는 종래 병렬제산 연산장치의 구성블록도
제2a,2h도는 본 발명의 병렬제산 연산장치의 구성블록도
〈도면의 주요부분에 대한 부호의 설명〉
31 : 감산회로 32 : 노아게이트
33 : 멀티플렉서 34 : 인버터
상기의 목적을 달성하기 위한 본 발명의 병렬제산 연산장치는 n비트의 피젯수 및 젯수를 이용하여 n비트의 몫을 제산하는 제산 연산장치에 있어서, 해당비트의 피젯수와 이전비트의 연산결과에 따른 나머지를 일입력으로 하고 이전비트의 젯수에서 순차적으로 1비트 증가한 젯수를 다른입력으로 하여 연산하며 상기 해당비트가 최상위비트일 경우에는 상기 일입력은 단위비트가 되고 순차적으로 단위비트씩 증가하여 상기 해당비트가 최하위비트일 경우에는 상기 일입력이 n비트가 되는 n개의 감산회로와, 이전비트의 젯수중 최하위 비트의 젯수를 제외한 나머지 비트의 젯수와 해당 감산회로에서 출력하는 캐리신호를 입력으로 하여 해당 비트의 몫을 출력하며 상기 해당 감산회로가 최하위비트 연산을 위한 감산회로일 경우에는 인버터로 구성되고 상기 해당 감산회로가 상기 최하위비트를 제외한 나머지 비트의 연산일 경우에는 노아 게이트로 구성되는 n개의 논리게이트와, 해당 감산회로의 일입력이 되는 해당 비트의 피젯수 및 이전비트의 나머지 값을 일입력으로 하고 상기 해당 감산회로의 연산결과 값을 다른입력으로 하여 해당비트의 나머지 값을 출력하며 상기 감산회로가 최상위비트 연산을 위한 감산회로일 경우에는 상기 일입력이 단위비트가 되곤 순차적으로 단위비트씩 증가하여 상기 감산회로가 최하위비트 연산을 위한 감산회로일 경우에는 상기 일입력이 n비트가 되는 n개의 멀티플렉서를 포함하여 구성된다.
이하, 본 발명의 병렬제산 연산장치를 첨부된 도면을 참조하여 설명하면 다음과 같다.
도2a 내지 2h는 본 발명의 병렬제산 연산장치의 구성을 도시한 것으로서 8비트 나누기 8비트의 제산 연산장치를 나타내었다.
여기서 8비트 이상 또는 그 이하의 비트수를 갖는 제산에 있어서는 각 비트수에 맞게 하드웨어를 추가 또는 감소시키면 된다.
본 발명에 따른 병렬제산 연산장치에 있어서 입력신호는 피젯수 A7∼A0이고 젯수는 B7∼B0이다.
그리고 출력신호는 몫 M7∼M0와 나머지 R7∼R0이다.
여기서 M = A÷ R B, R : 나머지이다. 그리고 모든 값은 2진수의 정수로 취급된다.
먼저, 8비트중 몫의 최상위 비트의 연산은 도2a에 도시한 바와같이 피젯수의 최상위비트(A7)와 젯수의 최하위비트(B0)를 입력하여 연산하는 1비트의 감산회로(31)와, 상기 1비트 감산회로(31)의 캐리(Carry)출력(C7)과 최하위비트의 젯수(B0)를 제외한 나머지 7비트의 젯수(B7∼B1)를 입력하여 최상위비트의 몫(M7)을 출력하는 8입력 노아게이트(32)와, 다음비트의 연산을 위하여 나머지 값을 출력하는 1비트 2입력 멀티플렉서(33)로 구성된다.
여기서 상기 캐리(Carry)출력(C7)은 상기 1비트 감산회로(31)의 연산결과가 부(-)의 값을 가질 경우 1이된다.
그리고 상기 1비트 2입력 멀티플렉서(33)의 일입력은 피젯수의 최상위비트(A7)이고 다른 입력은 상기 1비트 감산회로(31)의 연산결과 값(S70)이다.
따라서 상기 1비트 2입력 멀티플렉서(33)에서 출력되는 나머지 값은 R70이다.
이때 상기 최상위비트의 몫(M7)이 1인 경우, 상기 1비트 2입력 멀티플렉서(33)에서 출력되는 나머지는 상기 1비트 연산회로(31)의 연산결과 값과 동일하고 상기 최상위비트의 몫이 0인 경우, 상기 1비트 2입력 멀티플렉서(33)에서 출력되는 나머지 값은 상기 피젯수의 최상위비트(A7)와 동일하다.
이어서, 몫의 차상위비트를 연산하기 위해서는 도2b에 도시한 바와같이 이전비트의 나머지값(R70)과 차상위비트(A6)를 일입력으로 하고, 젯수의 최하위비트(B0)와 상기 최하위비트(B0)에서 1비트 증가한 차하위비트(B1)를 입력하여 연산하는 2비트 감산회로(31a)와, 상기 2비트 감산회로(31a)의 캐리(Carry)출력(C6)과 6비트의 젯수(B7∼B2)를 입력하여 몫의 차상위비트를 출력하는 7입력 노아게이트(32a)와, 다음비트의 연산을 위하여 차상위 연산의 나머지 값(R60∼R61)을 출력하는 2비트 2입력 멀티플렉서(33a)로 구성된다.
여기서 상기 캐리(Carry)출력(C6)은 상기 2비트 감산회로(31a)의 연산결과가 부(-)의 값을 가질 경우 1이 된다.
그리고 상기 2비트 2입력 멀티플렉서(33a)의 일입력은 최상위비트의 나머지 값(R70)과 피젯수의 차상위비트(A6)이고 다른 입력은 상기 2비트 감산회로(31a)의 연산결과 값(S61)(S60)이다.
따라서 상기 2비트 2입력 멀티플렉서(33a)에서 출력되는 나머지 값은 (R61)(R60)이다.
이때 상기 차상위비트의 몫(M6)이 1인 경우, 상기 2비트 2입력 멀티플렉서(33a)에서 출력되는 나머지는 상기 2비트 감산회로(31a)의 연산결과값과 동일하고 상기 차상위비트의 몫이 0인 경우, 상기 2비트 2입력 멀티플렉서(33a)에서 출력되는 나머지 값은 상기 최상위비트의 나머지 값(R70)과 피젯수의 차상위비트(A6)가 된다.
이와같이 M5∼M0까지의 제산 연산장치가 구성되어 있으며 최하위 연산의 나머지 값은 RO7∼RO0이 된다.
여기서 상기 최하위 연산을 설명하면 아래와 같다.
도2h에 도시한 바와같이 피젯수의 최하위비트(A0)와 이전비트(A1)의 나머지값(R10,R11,R12,R13,R14,R15,R16)을 일입력으로하고, 젯수의 최하위비트(B0)에서부터(B7)까지를 다른입력으로 하여 연산하는 8비트 감산회로(31g)와, 상기 8비트 감산회로(31g)의 캐리(Carry)출력(C6)을 반전시켜 최하위비트의 몫(M0)으로 출력시키는 인버터(34)와, 다음비트의 연산을 위하여 최하위 연산의 나머지 값(R00∼R07)을 출력하는 8비트 2입력 멀티플렉서(33g)로 구성된다.
여기서 상기 캐리(Carry)출력(C0)은 상기 8비트 감산회로(31g)의 연산결과가 부(-)의 값을 가질 경우 1이된다.
그리고 상기 8비트 2입력 멀티플렉서(33g)의 일입력은 차하위비트의 나머지 값(R10∼R16)과 피젯수의 최하위비트(A0)이고 다른 입력은 상기 8비트 감산회로(31g)의 연산결과 값(S00∼S07)이다.
따라서 상기 2비트 2입력 멀티플레서(33g)에서 출력되는 나머지 값은 상기 8비트 감산회로(31g)에서 출력되는 연산결과 값과 동일한(R00∼R07)값이 된다.
즉, 상기 최하위비트의 몫(M0)이 1인 경우, 상기 8비트 2입력 멀티플렉서(33g)에서 출력되는 나머지 값은 상기 8비트 감산회로(31g)의 연산결과 값과 동일하다.
이상 상술한 바와같이 본 발명에 따른 병렬제산 연산장치는 다음과 같은 효과가 있다.
구성이 간단하고 반복성이 높으므로 회로구성이 용이하며 병렬처리에 의해 연산속도가 빠르므로 고성능의 제산 연산기능을 요구하는 제어, 처리장치에 적합하다.

Claims (2)

  1. n비트의 피젯수 및 젯수를 이용하여 n비트의 몫을 제산하는 제산 연산장치에 있어서, 해당 비트의 피젯수와 이전비트의 연산결과에 따른 나머지를 일입력으로 하고 이전비트의 젯수에서 순차적으로 1비트 증가한 젯수를 다른입력으로 하여 연산하며 상기 해당비트가 최상위비트일 경우에는 상기 일입력은 단위비트가 되고 순차적으로 단위비트씩 증가하여 상기 해당비트가 최하위비트일 경우에는 상기 일입력이 n비트가 되는 n개의 감산회로와, 이전비트의 젯수중 최하위 비트의 젯수를 제외한 나머지 비트의 젯수와 해당 감산회로에서 출력하는 캐리신호를 입력으로 하여 해당 비트의 몫을 출력하여 상기 해당 감산회로가 최하위비트 연산을 위한 감산회로일 경우에는 인버터로 구성되고 상기 해당 감산회로가 상기 최하위비트를 제외한 나머지 비트의 연산일 경우에는 노아 게이트로 구성되는 n개의 논리게이트와, 해당 감산회로의 일입력이 되는 해당 비트의 피젯수 및 이전비트의 나머지 값을 일입력으로 하고 상기 해당 감산회로의 연산결과 값을 다른 입력으로 하여 해당비트의 나머지 값을 출력하며 상기 감산회로가 최상위비트 연산을 위한 감산회로일 경우에는 상기 일입력이 단위비트가되고 순차적으로 단위비트씩 증가하여 상기 감산회로가 최하위비트 연산을 위한 감산회로일 경우에는 상기 일입력이 n비트가 되는 n개의 멀티플렉서를 포함하여 구성되는 것을 특징으로하는 병렬제산 연산장치.
  2. 제1항에 있어서, 단위비트의 몫을 제산하는 감산회로, 논리게이트 그리고 멀티플렉서는 제산하고자 하는 비트 수에 맞게 각각의 수를 추가 및 감소시키는 것을 특징으로 하는 병렬제산 연산장치.
KR1019960073499A 1996-12-27 1996-12-27 병렬제산 연산장치 KR100226757B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019960073499A KR100226757B1 (ko) 1996-12-27 1996-12-27 병렬제산 연산장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019960073499A KR100226757B1 (ko) 1996-12-27 1996-12-27 병렬제산 연산장치

Publications (2)

Publication Number Publication Date
KR19980054351A KR19980054351A (ko) 1998-09-25
KR100226757B1 true KR100226757B1 (ko) 1999-10-15

Family

ID=19491367

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019960073499A KR100226757B1 (ko) 1996-12-27 1996-12-27 병렬제산 연산장치

Country Status (1)

Country Link
KR (1) KR100226757B1 (ko)

Also Published As

Publication number Publication date
KR19980054351A (ko) 1998-09-25

Similar Documents

Publication Publication Date Title
US6820107B1 (en) Square root extraction circuit and floating-point square root extraction device
JPH0479013B2 (ko)
JPH07182141A (ja) 演算装置及び演算方法
EP0529101A1 (en) Floating-point dividing circuit
KR20010058674A (ko) 버스 인코딩/디코딩 장치 및 그 방법
JP2596909B2 (ja) 最小/最大検索命令を有するデジタル処理装置
KR100226757B1 (ko) 병렬제산 연산장치
US20060212500A1 (en) Exponent encoder circuit and mask circuit
KR100331846B1 (ko) 실수 연산기
KR920006322B1 (ko) 나눗셈기
CN112350716B (zh) 一种补码运算方法及装置、补码运算装置的运算方法
KR19980043591A (ko) 정보 보호용 모듈러 승산 장치
US6044063A (en) Unsigned integer comparator
KR920009092B1 (ko) 나눗셈기 회로
US6343303B1 (en) Method of determining a scaling factor
US7240085B2 (en) Faster shift value calculation using modified carry-lookahead adder
KR100196520B1 (ko) 면적 개선을 위한 2의보수 변환 장치
KR0154934B1 (ko) 개선된 2의 보수회로
KR100259095B1 (ko) 정규화 기능을 갖는 가산기
KR0182038B1 (ko) 젯수가 2의 급수인 나눗셈 회로
KR100188088B1 (ko) 2진 데이타의 수치연산장치
KR0161485B1 (ko) 산술 연산 장치를 이용한 부스 알고리즘 곱셈 연산 장치
KR970005175A (ko) 파이프라인 구조에 근거한 곱셈/나눗셈 공유 처리기 구조
JP3109080B2 (ja) 語長制限回路
KR950015180B1 (ko) 고속연산형 가산기

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20050620

Year of fee payment: 7

LAPS Lapse due to unpaid annual fee