KR920006324B1 - 실시간 2's콤플리멘트 코드 승산기의 최적화방법 - Google Patents

실시간 2's콤플리멘트 코드 승산기의 최적화방법 Download PDF

Info

Publication number
KR920006324B1
KR920006324B1 KR1019890020078A KR890020078A KR920006324B1 KR 920006324 B1 KR920006324 B1 KR 920006324B1 KR 1019890020078 A KR1019890020078 A KR 1019890020078A KR 890020078 A KR890020078 A KR 890020078A KR 920006324 B1 KR920006324 B1 KR 920006324B1
Authority
KR
South Korea
Prior art keywords
value
bit
bits
decoding
subtotal
Prior art date
Application number
KR1019890020078A
Other languages
English (en)
Other versions
KR910012901A (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 KR1019890020078A priority Critical patent/KR920006324B1/ko
Publication of KR910012901A publication Critical patent/KR910012901A/ko
Application granted granted Critical
Publication of KR920006324B1 publication Critical patent/KR920006324B1/ko

Links

Images

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/50Adding; Subtracting

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Computational Mathematics (AREA)
  • Computing Systems (AREA)
  • Mathematical Optimization (AREA)
  • General Engineering & Computer Science (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Complex Calculations (AREA)
  • Error Detection And Correction (AREA)

Abstract

내용 없음.

Description

실시간 2'S콤플리멘트 코드 승산기의 최적화방법
제1도 및 제2도는 종래의 블럭도.
제3도-제5도는 본 발명의 블럭도.
* 도면의 주요부분에 대한 부호의 설명
301-315 : 래치 316-319 : 디코더
320-323 : 가산기 324-326 : 오아게이트
본 발명은 디지탈 신호처리 시스템에 있어서 승산기(Multiplier)에 관한 것으로, 특히 비트 포울딩(folding)을 이용한 실시간 2'S콤플리멘트(complement)코드 승산기의 최적화기법에 관한 것이다.
일반적으로 실시간 디지탈 신호를 처리하기 위해서는 이러한 신호처리를 위한 요소중에서 가장 시간이 많이 걸리는 승산기를 먼저 구현하여야 하는데 종래에는 제1도에 도시된 바와 같이 파이프라인(pipeline)구성의 메그니튜트 승산기를 사용할 수 있으며, 2'S컴플리먼트 숫자까지 계산 가능하도록 구성을 취할 수 있다. 상기 두 승산기 및 2'S콤플리멘트 코드에 관해서는 본원 출원인에 의하여 선출원된 바 있는 출원번호 "89-8480"에 상세히 기재되어 있으므로 구체적인 설명은 생략키로 하고 상기와 같은 종래의 기술의 문제점을 살펴보면, 2'S콤플리멘트 코드를 사용하면 가/감산기의 일관적인 구성이 가능한 장점이 있으므로 상기 선출원 "89-8480"에서는 2'S콤플리멘트 코드의 승산기를 파이프라인 구조로 설계하고 각각의 보정회로를 설명하였으나 이러한 구성의 실시간 2'S콤플리멘트 코드승산기를 구현함에 있어서 그 구성소자의 속도가 좀더 빠르다고 가정한다면 제1도에서와 같이 매번 1비트씩 계산해야 했던 불편함을 해소할 수도 있게 된다. 즉 2'S콤플리멘트 코드(편의상 8비트라고 가정한다)인 두수
Figure kpo00001
를 곱하는 경우를 생각해 보면 그 결과는 하기한 (1)식과 같다.
Figure kpo00002
그런데 상기 (1)식과 같은 결과를 얻기위하여 전술한 바와 같이 제2도에 도시된 곱셉 과정을 통하여 상기 두수(X,Y)의 승산을 하게 되면 하기한 (2)식과 같이 뒤에서 부터 하나씩 더하는 구성을 취하게 되어있었으므로 계산으로 인해 소요되는 시간이 긴 단점이 있었을 뿐만 아니라 회로적으로도 복잡한 불편이 있었다.
Figure kpo00003
따라서 본 발명의 목적을 실시간 처리 2'S콤플리멘트 승산기의 다수 비트를 한꺼번에 디코딩하여 계산으로 인한 지연시간을 줄일 수 있도록 하는 실시간 2'S콤플리멘트 코드 승산기의 최적화기법을 제공함에 있다.
이하 본 발명을 첨부한 도면을 참조하여 설명한다.
제3도는 본발명의 블럭도로써, n비트(ynyi-1yn-2…yl)피승주의 LSB측으로 부터 두번째, 첫번째 비트 및 0(y2y10)를 m비트(XmXm-1…X1)의 승수와 디코딩하는 제1디코딩부, 상기 제1디코딩 값과 n비트 초기값(0)의 취상위 비트를 논리합하여 새로운 최상위 비트를 설정하는 제1논리 조합부, 상기 제1디코딩 값과 상기 제1논리값의 각 최상위 비트를 제외한 나머지 비트를 가산하는 제1가산부, 상기 제1논리값과 제1가산값을 래치하여 제1부분합을 산출하는 제1부분합 래치부로 이루어진 제1부분합 산출수단과, 상기 피승수의 LSB측으로 부터 K+1, K+2, K+3번째 비트를 상기 승수와 디코딩하는 제K디코딩부, 상기 제K디코딩 값과 소정비트 확장된 상기 제K-1부분합의 최상위 비트를 논리합하여 새로운 최상위 비트를 설정하는 제K논리조합부, 상기 제K디코딩 값과 소정비트 확장된 상기 제K-1부분합의 각 최상위 비트를 제외한 나머지 비트를 가산하는 제K가산부, 상기 제K논리값과 상기 제K가산값을 래치하여 제K부분합을 산출하는 제K부분합 래치부와 상기 제K-1부분합의 LBS측 2비트를 래치하는 제K-1래치부로 이루어진 제K부분합 산출수단이 상기 K가 2부터 n보다 첫번째로 작은 짝수까지 변하도록 구성된다.(본 발명에서는 승수 및 피승수가 각 8피트이고 3비트 폴딩한다고 가정하여 K=4까지 변하게 된다.)
제4도는 제3도중 디코딩 블럭의 펑선(function)정의 도로써, 5a)는 개념적으로 가장 간단한 구성을 도시한 것이고, 5b)는 하드웨어를 최적화한 구성도이다. 제5도는 제3도중 디코딩 블럭의 구체 회로도이다. 상술한 구성에 의거 본 발명을 상세히 설명한다. 먼저 전술한 X와 Y의 곱셈 연산을 변형하여 하기한 식(4)와 같이 계산해보면,
Figure kpo00004
상기한 식(4)와 같이 연산을 할 경우 부분합을 구해야 하는 갯수가 7개에서 개로 줄어든다. 이때 포울딩하는 비트를 증가할 수록 부분합의 수는 줄어들지만 곱해야하는 (y1-1+y1-2y1+1)·X의 수는 복잡해진다. 여기서 상기 y1-1, y1, y1+1의 디코딩 테이블을 구하면 하기한 [표1]과 같다.
[표 1]
Figure kpo00005
Figure kpo00006
상기 디코딩 테이블에 의하면(y1-1+y1-2y1+1)·X의 값은 y1-1, y1, y1+1의 비트상태에 따라 0, ±X, ±2X가 된다. 그러므로 하기한 식(5)와 같이 나타내어지는 X·Y는 상기 디코딩 테이블의 출력에 의하여 X를 변화시켜 부분합에 더하면 된다.
Figure kpo00007
즉 제3도중 임의의 부분합에 X·(ya-2y1)가 저장되어 있다고 가정하면 y1,y2,y3의 비트 상태에 따라 부분합에 (0,±X,±2X)·22이 더해지게 된다. 왜냐하면 상기 디코딩 테이블 및 제6도의 평션의의 예시도에 도시된 바와 같이 y1-,y1,y1+1의 3비트의 상태에 따라 디코더 출력은 하기와 같이 0, ±X, ±2X가 되기때문이다.
첫번째로, 0인 경우 디코더에 입력되는 X값에 관계없이 출력값을 0으로 한다. 두번째로, X인 경우 디코더는 X를 그대로 출력토록 한다. 세번째로, 2X인 경우 디코더는 입력되는 X를 1비트 확장하고 쉬프트 라이트한다. 네번째로, -X인 경우 디코더는 입력 X를 1의 보수처리하여 출력한 다음 가산기에서는 캐리입력(Cin)을 1로하여 실제 -X가 되도록 만든다. 다섯번째로, -2X인 경우는 디코더 출력을 2X로 하고 난후 이를 1의 보수 처리하고 가산기 클럭입력(Cin)을 1로 하여 실제로 2X가 뺄셈이 되도록 만들어 준다.
여기서 상기 디코더 동작을 이 실시예로서 첨부한 제5도의 (5a)를 참조하여 설명하면 하기와 같다. y1-,y1,y1+1이 (000) 혹은 (111)일대는 앤드케이트 입력값(A)을 0으로 한다. 다음으로 상기 y1-1,yl,y1+1이 (10),(011),)100),(101)일때는 출력이 ±X이므로 관계없으나 (001)(110)일때는 출력이 ±2X이므로 2X는 X로 부터 각 비트를 1번 쉬프트 라이트해주어야 한다.
이러한 동작은 일반적인 2:1멀티플렉서(예 : TTL74LS157)를 사용하여 예를들어 포트(port)에서는 X를 그대로 넣고 ψ포트에는 1번 쉬프트한 것을 넣으면 된다. 또한 상기 y1-1,y1,y1+1d1(001),(011),(101)일때는 출력을 1의 보수처리한다.
상기 보수처리 잡업으로 가장 간단하게는 예를들어 제5도(5b)에 도시된 바와 같은 이스크루시브 오아게이트를 사용하면 되는데 상기 익스크루시브 오아게이트 특성에 의해 컨트롤단자(C)가 0이면 출력은 입력과 동일하게 되나(D=E) 상기 콘트롤단자(C)가 1이면 입력(D)은 반전되어 출력(E=D)되므로 원하는 동작을 수행할 수 있게 된다. 또한 계산상 발생하는 에러발생을 방지하기 위하여 MSO의 오아케이트 보정을 행할수 있다. MSB의 오아케이트 보정이유는 부분합과 디코딩부 출력이 합산되면서 출력의 MSB가 바뀌는 경우에 이를 원상복귀하기 위한 것으로 더 상세한 내용은 선출원된 "89-8480"에 기재되어 있으므로 생략한다. 또한 본 발명은 실시간 2'S콤플리메트 코드 이외의 일반적인 활용이 가능하다. 이는 메그니튜트 승산기에 대하여 이를 수직적으로 전개함으로서 쉽게 증명되는데, 이는 본 발명으로 부터 쉽게 유추할 수 있다. 또한 본 발명은 8X8 2'S콤플리멘트 승산기를 예로하여 설계한 것이나, nXm비트의 형태로도 확장 가능하다.
상술한 바와 같이 실시간 처리가능한 2'S콤플리멘트 코드 승산기의 몇개의 비트를 한꺼번에 디코딩하여 계산 딜레이를 줄이므로써 MSB보정을 통하여 보다 간편하게 실시할 수 있을 뿐만 아니라 일반적인 부품으로도 쉽게 구현할 수 있어 경제적인 이점이 있다.

Claims (1)

  1. 실시간 2의 보수코드 승산기의 최적화 방법에 있어서, n비트(ynyn-1yn-2…y1)피승수의 LSB측으로 부터 두번째, 첫번재 비트 및 0(y2y10)를 m비트(XmXm-1…X1)의 승수와 디코딩하는 제1디코딩부, 상기 제1디코딩 값과 n비트 초기값(0)의 최상위 비트를 논리합하여 새로운 최상위 비트를 설정하는 제1논리 조합부, 상기 제1디코딩 값과 상기 제1논리값의 각 최상위 비트를 제외한 나머지 비트를 가산하는 제1가산부, 상기 제1논리값과 제1가산값을 래치하여 제1부분합을 산출하는 제1부분합 래치부로 이루어진 제1부분합 산출수단과, 상기 피승수의 LSB측으로 부터 K+1,K+2,K+3번째 비트를 상기 승수와 디코딩하는 제K디코딩부, 상기 제K디코딩 값과 소정비트 확장된 상기 제K-1부분합의 최상위 비트를 논리합하여 새로운 최상위 비트를 설정하는 제K논리조합부, 상기 제K디코딩 값과 소정비트 확장된 상기 제K-1부분합의 각 최상위 비트를 제외한 나머지 비트를 가산하는 제K가산부, 상기 제K논리값과 상기 제K가산 값을 래치하여 제K부분합을 산출하는 제K부분합 채치부와 상기 제K-1부분합의 LBS측 2비트를 래치하는 제K-1래치부로 이루어진 제K부분합 산출수단이 상기 K가 2부터 n보다 첫번째로 작은 짝수까지 변하도륵 구성됨을 특징으로 하는 회로.
KR1019890020078A 1989-12-29 1989-12-29 실시간 2's콤플리멘트 코드 승산기의 최적화방법 KR920006324B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019890020078A KR920006324B1 (ko) 1989-12-29 1989-12-29 실시간 2's콤플리멘트 코드 승산기의 최적화방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019890020078A KR920006324B1 (ko) 1989-12-29 1989-12-29 실시간 2's콤플리멘트 코드 승산기의 최적화방법

Publications (2)

Publication Number Publication Date
KR910012901A KR910012901A (ko) 1991-08-08
KR920006324B1 true KR920006324B1 (ko) 1992-08-03

Family

ID=19294116

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019890020078A KR920006324B1 (ko) 1989-12-29 1989-12-29 실시간 2's콤플리멘트 코드 승산기의 최적화방법

Country Status (1)

Country Link
KR (1) KR920006324B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100362186B1 (ko) * 1995-12-29 2003-03-28 주식회사 하이닉스반도체 멀티플렉서를이용한직렬부스승산기

Also Published As

Publication number Publication date
KR910012901A (ko) 1991-08-08

Similar Documents

Publication Publication Date Title
US5726924A (en) Exponentiation circuit utilizing shift means and method of using same
US5500812A (en) Multiplication circuit having rounding function
EP0158530B1 (en) Nonrestoring divider
US5111421A (en) System for performing addition and subtraction of signed magnitude floating point binary numbers
US6182100B1 (en) Method and system for performing a logarithmic estimation within a data processing system
US5862068A (en) Arithmetic circuit for calculating a square-root of a sum of squares
US5268857A (en) Device and method for approximating the square root of a number
KR920003494B1 (ko) 디지탈 신호처리 시스템에서의 실시간 2's 콤플리멘트코드 숫자의 승산방법 및 회로
EP0436905B1 (en) High performance adder using carry predictions
EP0366155A2 (en) Logarithmic function arithmetic unit including means for separately processing pseudo division and multiplication
WO1991018355A1 (en) Integrated interpolator and method of operation
KR920006324B1 (ko) 실시간 2's콤플리멘트 코드 승산기의 최적화방법
KR100290906B1 (ko) 부동소수점곱셈기에서반올림과덧셈을동시에수행하는장치및방법
US4979141A (en) Technique for providing a sign/magnitude subtraction operation in a floating point computation unit
US6014683A (en) Arithmetic operation system for arithmetically operating a first operand having an actual point and a second operand having no actual point
US5754458A (en) Trailing bit anticipator
US5886911A (en) Fast calculation method and its hardware apparatus using a linear interpolation operation
US4956802A (en) Method and apparatus for a parallel carry generation adder
US6615228B1 (en) Selection based rounding system and method for floating point operations
JP2645422B2 (ja) 浮動小数点演算処理装置
JPH08504046A (ja) 浮動小数点2進数を2進形式における対数に変換しまたはその逆変換をするための装置
JP2991788B2 (ja) 復号器
JP2569976B2 (ja) ディジタルフィルタ
JP2608090B2 (ja) 高基数非回復型除算装置
KR0182169B1 (ko) 로그값 계산회로

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: 19970829

Year of fee payment: 8

LAPS Lapse due to unpaid annual fee