KR950010571B1 - 라운딩 회로 - Google Patents
라운딩 회로 Download PDFInfo
- Publication number
- KR950010571B1 KR950010571B1 KR1019930007691A KR930007691A KR950010571B1 KR 950010571 B1 KR950010571 B1 KR 950010571B1 KR 1019930007691 A KR1019930007691 A KR 1019930007691A KR 930007691 A KR930007691 A KR 930007691A KR 950010571 B1 KR950010571 B1 KR 950010571B1
- Authority
- KR
- South Korea
- Prior art keywords
- signal
- input data
- bit
- gate
- negative
- Prior art date
Links
Landscapes
- Complex Calculations (AREA)
Abstract
내용 없음.
Description
제 1 도는 데이타 비트수가 짝수인 경우에 있어서의 본 발명인 라운딩 회로의 구성 블럭도이다.
제 2 도는 데이타 비트수가 홀수인 경우에 있어서의 본 발명인 라운딩 회로의 구성 블럭도이다.
제3a도는 4비트 입력 데이타인 경우를 예를들어 설명히기 위한 구성도이다.
제3b도는 제 1 토글수단의 회로도이다.
제3c도는 제 2 토글수단의 회로도이다.
제 4 도는 본 발명의 라운딩 회로가 적용된 실시예의 구성 블럭도이다.
제 5 도는 상기 제 4 도에서 도시한 라운딩 회로 블럭도의 상세한 회로도이다.
* 도면의 주요부분에 대한 부호의 설명
T0-T15 : 토글신호 OVF : 오버플로우신호,
N1-N4 : N1: R D0D1D2,N2= D3D4D5D6, N3= D7D8D9D10, N4= D11D12D14.
본 발명은 라운딩 회로에 관한 것으로서, 특히 하드웨어 산술연산시 정확도를 높이기 위하여 추가적으로 오버플로우 방지의 로직을 포함하는 라운딩 회로에 관한 것이다.
일반적으로 산술연산시 정확도를 높이기 위해서는 리운딩 회로가 필수적이며, 특히 현재 산업상에서 가장 많이 사용되는 분야로서 통신 및 가전제품의 디지탈화로 인해서 부각되고 있는 디지탈 신호처리 분야(DSP : Digital Signal Processing)에서는 고속의 라운딩 회로가 필수적이다. 기존의 라운딩 회로의 동작은 라운딩 비트가 활성화되면 현재의 입력값에 '1'을 더하는 것으로 기존의 가산기와 같은 기능을 하지만, 가산기 사용시 차지하는 면적 및 속도에 있어서 용장도(Redundancy)가 크다.
종래의 라운딩 회로에서는 오버플로우 블럭의 오버플로우 신호가 디스인에이블되고 라운딩 비트가 활성화되면 입력 데이타에 가산기를 통해서 '1'을 더해진 값을 출력하고, 오버플로우 신호가 발생하면 출력은 항상 최대값으로 고정된다.
그러나, 상기 종래의 라운딩 회로에 있어서, 가산기를 사용함으로써 용장도가 많고 속도가 느리며, 오버플로우가 발생하면 최대값으로 고정되어 버리기 때문에 오버플로우를 검출할 수 없게 되어 용장도가 작고 속도는 빠르며 오버플로우를 검출할 수 있는 고속의 라운딩 회로의 필요성이 대두되었다.
본 발명의 목적은 2의 보수 형태의 n비트(n은 자연수) 입력 데이타와 라운딩 비트의 신호를 받아 상기 입력 데이타를 가산기 대신 토글수단을 이용하여 처리하고, 오버플로우 발생시 출력을 포화시키는 회로를 구성함으로써 고속의 라운딩 회로를 제공하는데 있다.
상기 목적을 달성하기 위하여 본 발명은, 16비트의 입력 데이타와 라운딩 비트신호를 입력으로 하여 고속의 라운딩을 위한 라운딩 회로에 있어서, 상기 라운딩 비트신호, 상기 입력 데이타의 첫번째 비트신호, 상기 입력 데이타의 두번째 비트신호, 및 상기 입력 데이타의 세번째 비트신호를 논리곱하여 제 1 신호를 출력하기 위한 제 1 신호 발생수단; 상기 입력 데이타의 네번째 배트신호, 상기 입력 데이타의 다섯번째 비트신호, 상기 입력 데이타의 여섯번째 비트신호, 및 상기 입력 데이타의 일곱번째 비트신호를 논리곱하여 제 2 신호를 출력하기 위한 제 2 신호 발생수단; 상기 입력 데이타의 여덟번째 비트신호, 상기 입력 데이타의 아홉번째 비트신호, 상기 입력 데이타의 열번째 비트신호, 및 상기 입력 데이타의 열한번째 비트신호를 논리곱하여 제 3 신호를 출력하기 위한 제 3 신호 발생수단; 상기 입력 데이타의 열두번째 비트신호, 상기 입력데이타의 열세번째 비트신호, 상기 입력 데이타의 열네번째 비트신호, 및 상기 입력 데이타의 열다섯번째 비트신호를 논리곱하여 제 4 신호를 출력하기 위한 제 4 신호 발생수단; 상기 라운딩 비트신호 및 상기 입력 데이타의 첫번째 비트신호를 논리곱하여 제 1 제어신호를 출력하기 위한 제 1 제어신호 발생수단; 상기 제 1 제어신호 및 상기 입력 데이타의 두번째 비트신호를 논리곱하여 제 2 제어신호를 출력하기 위한 제 2 제어신호 발생수단; 상기 제 1 신호 및 상기 입력 데이타의 네번째 비트신호를 논리곱하여 제 3 제어신호를 출력하기 위한 제 3 제어신호 발생수단; 상기 제 3 제어신호 및 상기 입력 데이타의 다섯번째 비트신호를 논리곱하여 제 4 제어신호를 출력하기 위한 제 4 제어신호 발생수단; 상기 제 4 제어신호 및 상기 입력 데이타의 여섯번째 비트신호를 논리곱하여 제 5 제어신호를 출력하기 위한 제 5 제어신호 발생수단; 상기 제 1 신호 및 상기 제 2 신호를 논리곱하여 제 6 제어신호를 출력하기 위한 제 6 제어신호 발생수단; 상기 제 6 제어신호 및 상기 입력 제이타의 어덟번째 비트신호를 논리곱하여 제 7 제어신호를 출력하기 위한 제 7 제어신호 발생수단; 상기 제 7 제어신호 및 상기 입력 데이타의 아홉번째 비트신호를 논리곱하여 제 8 제어신호를 출력하기 위한 제 8 제어신호 발생수단; 상기 제 8 제어신호 및 상기 입력 데이타의 열번째 비트신호를 논리곱하여 제 9 제어신호를 출력하기 위한 제 9 제어신호 발생수단; 상기 제 1 신호, 상기 제 2 신호 및 상기 제 3 신호를 논리곱하여 제10제어신호를 출력하기 위한 제10제어신호 발생수단; 상기 제10제어신호 및 상기 입력 데이타의 열두번째 비트신호를 논리곱하여 제11제어신호를 출력하기 위한 제11제어신호 발생수단; 상기 제11제어신호 및 상기 입력 데이타의 열세번째 비트신호를 논리곱하여 제12제어신호를 출력하기 위한 제12제어신호 발생수단; 상기 제12제어신호 및 상기 입력 데이타의 열네번째 비트신호를 논리곱하여 제13제어신호를 출력하기 위한 제13제어신호 발생수단; 상기 제 1 신호 상기 제 2 신호, 상기 제 3 신호 및 상기 제 4 신호를 논리곱하여 제14제어신호를 출력하기 위한 발생수단; 상기 제 2 신호, 상기 제 3 신호, 상기 제 4 신호, 상기 입력 데이타의 첫번째 비트신호, 상기 입력 데이타의 두번째 비트신호, 상기 입력 데이타의 세번째 비트신호, 및 상기 입력 데이나의 열여섯번째 비트신호의 반전신호를 논리곱하여 오버플로우 검출신호를 출력하기위한 오버플로우 검출신호 발생수단; 상기 라운딩 비트신호, 상기 제 1 신호, 및 상기 제1 내지 제14제어신호를 각각 제어신호로 하여 상기 입력 데이타를 라운딩하기 위한 라운딩 수단; 및 상기 라운딩 수단의 출력신호들과 상기 오버플로우 검출신호를 입력으로 하여 오버플로우시에는 오버플로우가 반영된 16비트 입력 데이타의 라운딩 신호를 출력하고 오버플로우가 아닐시에는 상기 라운딩 수단의 출력신호를 출력하기 위한 출력수단을 구비한 것을 특징으로 한다.
이하, 첨부된 도면을 참조로 하여 본 발명의 고속의 라운딩 회로를 설명하면 다음과 같다.
제 1 도 및 제 2 도는 본 발명인 고속의 라운딩 회로를 위한 구성도이다.
제 1 도는 입력 데이타 비트수가 짝수인 경우에 있어서의 고속의 라운딩 회로를 위한 구성도이고, 제 2 도는 입력 데이타 비트수가 홀수인 경우에 있어서의 고속의 라운딩 회로를 위한 구성도이다.
먼저, 제 1 도를 참조로 하여 본 발명의 구성을 살펴보면 다음과 같다.
첫번째 데이타 비트라인(D0)은 제 1 토글수단(100) 및 부정 논리곱 게이트(116)에 입력된다. 라운딩 비트 신호는 제 1 토글수단(100) 및 부정 논리곱 게이트(118)에 입력된다. 두번째 데이타 비트라운(D1)은 인버터(132)를 통해서 반전된 신호를 부정 논리합 게이트(118) 및 제 2토글수단(102)에 입력된다. 첫번째 데이타 비트라인(D0)과 두번째 데이타 비트라인(D1)을 입력으로 하는 조합회로(158)의 수는 사용하고자 하는 입력 데이타 비트수의 절반만큼 수성하면 된다. 필요한만큼의 상기 조합회로들의 출력은 마지막 입력 데이타 비트라인(Dn)에 대한 제 2 토글수단의 출력만을 제외하고는 부정 논리곱 게이트들(140, 132, 144, 146, 148, 150, 152)로 입력되고, 마지막 입력 데이타 비트라인(Dn)에 대한 제 2 토를 수단의 출력신호는 부정 논리합 게이트(156)에 입력된다, 상기 조합회로 중에서 마지막 조합회로의 두번째 입력 데이타 비트(Dn)에 대한 부정 논리합 게이트(130)의 출력신호는 부정 논리합 게이트(156) 및 인버터(154)를 통해서 반전된 신호는 부정 논리곱 게이트들(140, 142, 144, 146, 148, 152)에 입력된다.
다음으로 제 2 도는 참조로 하여 본 발명의 구성을 살펴보면 다음과 같다.
첫번째 데이타 비트라인(D0)은 제 1 토글수단(200)의 데이타 입력단자 및 부정 논리곱 게이트(216)에 입력된다. 라운딩 비트신호는 제 1 토글수단(200)에 제어단자 및 부정 논리곱 게이트(216)에 입력된다. 부정 논리곱 게이트(216)의 출력은 제 2 토글수단(202)의 제어단자 및 부정 논리합 게이트(218)에 입력된다. 두번째 데이타 비트라인(D1)은 인버터(232)를 통해서 반전된 신호를 부정 논리합 게이트(218) 및 제 2 토글수단(202)의 데이타 입력단자에 입력된다. 첫번째 데이타 비트라인(D0)과 두번째 데이타 비트라인(D1)을 입력으로 하는 조합회로(238)를 사용하고자 하는 입력 데이타 비트수에서 하나를 뺀다음 절반만큼의 수((n-1)/2)와 마지막 입력 데이타 비트신호(Dn)를 위한 제 1 토글수단(212), 인버터(228), 및 부정 논리곱 게이트(230)로 구성하면 된다. 필요한 수만큼의 상기 조합회로(238)들의 출력은 부정 논리곱 게이트들(240, 242, 244, 246, 248, 250)로 입력되고, 마지막 입력 데이타 비트라인(Dn)에 대한 제 1 토글수단의 출력신호는 부정 논리합 게이트(252)에 입력된다. 상기 마지막 입력 데이타 비트신호(Dn)는 인버터(228)를 통해서 반전되어 부정 논리합 게이트(230)로 입력된다. 부정 논리합 게이트(230)의 출력신호는 부정 논리곱 게이트들(240,242, 244, 246, 248, 250)로 입력되고, 또한 인버터(214)를 통해서 반전된 신호를 부정 논리합 게이트(252)로 입력된다.
라운딩 회로의 동작은 다음과 같다.
라운딩 비트신호가 활성화되면 현재의 입력 데이타에 '1'을 더하는 것이다. 임의의 2의 보수 형태의 n비트 입력 데이타(D)를
D=(Cn, Dn-1,…, D2, D1, D0)이라고 표시할 때, (D은 부호비트)
라운딩 회로의 출력(RD)은 다음과 같이 표시할 수 있다.
RD=(RDn, RDn-1,…, RD2, RD1, RD0)=D+1…(RDn은 부호비트)
또한, 입력 데이타가 최대값이 되는 경우, 예를들면 9비트 데이타가 D='0 1111 1111'=+25510인 경우에는 라운딩 회로에 의해서 RD='1 0000 0000'=-25610이 되므로 이때는 출력을 +25510로 고정시켜 주어야하므로 이와같은 기능의 라운딩 회로를 구성하기 위해서 입력 Dn이 토글수단을 통해서 토글되어 출력 RDn으로 될 경우를 Tn이라 하면 다음과 같이 전개하면 된다.
T0=R
T1=R D0=T0D
T2=R D0D1=T1D1
Tn-1= R D0D1D2D3…Dn-2=Tn-2Dn-2
Tn=R D0D1D2D3…Dn-2Dn-1=Tn-1Dn-1
또한 오버플로우 검출신호(OVF)는 다음과 같다.
OVE=D0D1D2D3…Dn-1/Dn
상기 제 1 도 및 제 2 도에서의 구성은 위의 논리식을 기초로 하여 구성되어 있기 때문에 라운딩 회로의 출력값은 상기 식의 출력에 따라 입력된 데이타에 '1'을 더하거나 오버플로우가 발생할 경우에는 상기 오버플로우 발생신호에 의해서 라운딩 회로를 제어한다.
제3a도는 4비트 입력 데이타 D3D2D1D0=0101(D3는 부호비트)인 경우를 예를들어 설명하기 위한 구성도이다. 제3A도를 참고로 하여 라운딩 회로의 동작을 설명하면 다음과 같다.
라운딩 비스신호(=1)가 〈1〉지점에서 부정 논리곱 게이트(300)에 입력되고, 제 1 토글수단(308)의 제어단자로 입력된다. 부정 논리곱 게이트(300)로 입력된 D0신호(=1)와 라운딩 비트신호(=1)의 연산결과 〈2〉지점에 0이 출력된다. 상기 〈2〉지점의 신호(=0)는 부정 논리합 게이트(302)에 입력되고, 제 2 토글수단(310)의 제어단자로 입력된다. 인버터(316)를 통하여 반전된 /D1(=1)신호와 상기 <2>지점의 신호(=0)가 부정 논리합 게이트(302)에 입력되어 연산결과 <3>지점에 0을 출력한다. 상기 <3>지점의 신호(=0)는 부정 논리곱 게이트(304)에 입력되고, 제 1 토글수단(312)의 제어단자로 입력된다. 부정 논리곱 게이트(304)로 입력된 D3신호( 1)와 상기 <3>지점의 신호(=0)의 연산결과 <4>지점에 1이 출력된다. 상기 <4>지점의 신호(=1)는 부정 논리합 게이트(306)에 입력되고, 제 2 토글수단(314)의 제어단자로 입력된다. 인버터(318)를 통하여 반전된 /D2(=1) 신호와 상기<4>지점의 신호(=1)가 부정 논리합 게이트(306)에 입력되어 연산결과 <5>지점에 0을 출력한다. 제 1 토글수단(308)은 <6>지점의 D0신호(=1)를 상기 <1>지점의 신호(=1)에 의해 <10>지점으로 1을 출력한다. 제 2 토글수단(310)은 <7>지점의 /D1신호(=1)를 상기 <2>지점의 신호(=0)에 의해서 <11>지점으로 0을 출력한다. 제 1 토글수단(312)은 <8>지점으로 0을 출력한다. 제 2 토글수단(314)은 <9>지점의 /D3신호(=1)를 상기 <4>지점의 신호(=1)에 의해서 <13>지점으로 1을 출력한다. 상기 <10>지점의 신호(=1)와 상기 <5>지점의 신호의 반전신호(=1)가 부정 논리곱 게이트(322)에 입력되어 RD0신호(=0)를 출력한다. 상기 <11>지점의 신호(=0)와 상기 <5>지점의 신호의 반전신호(=1)가 부정 논리곱 게이트(324)에 입력되어 RD1신호(=1)를 출력한다. 상기 <12>지점의 신호(=0)와 상기 <5>지점의 신호의 반전신호(=1)가 부정 논리곱 게이트(326)에 입력되어 RD2신호(=1)를 출력한다. 상기 <13>지점의 신호(=1)와 상기 <5>지점의 신호(=0)가 부정 논리합 게이트(328)에 입력되어 RD3신호(=0)를 출력한다. 결국, 입력 데이타 D3D2D1D0=0101에 대해서 라운딩 데이타 RD3RD2RD1RE0=0110를 출력함으로써 입력 데이타에 '1'을 더한 값, 즉 라운딩된 값을 출력하게 된다.
제 1도는 및 제 2 도에서의 상기 조합회로(158, 238)에서 상기 제1,2토글수단에 입력되는 토글신호를 만들기 위해서 부정 논리합 게이트와 부정 논리곱 게이트를 번갈아 사용함으로써 부정 논리합 게이트만을 사용하는 경우나 부정 논리곱 게이트만을 사용하는 경우에 상기 토글신호를 만드는 과정 중에서 인버터가 포함되어 버리기 때문에 전달지연(Propagation Delay)이 발생하게 되는 문제점을 해결하고 있다.
제3b도와 제3c도는 제 1 도 및 제 2 도에 사용된 제 1 토글수단 및 제 2 토글수단의 회로도이다.
제3b도는 제 1 토글수단의 회로도로서, 입력 데이타 비트신호 및 토글신호를 입력으로 하여 입력 데이타 비트신호에 대한 소정의 신호를 출력한다. 토글신호가 하이레벨인 경수에는 제 1 전송게이트(334)가 구동을하여 입력 데이타 비트신호가 그대로 출력되고, 토글신호가 로우레벨인 경우에는 제 2 전송게이트(336)가 구동을 하여 인버터(330)를 통해서 반전된 입력 데이타 비트신호가 출력된다.
제3c도는 제 2 토글수단의 회로도로서, 입력 데이타 비트신호 및 토글신호를 입력으로 하여 입력 데이타 비트신호에 대한 소정의 신호를 출력한다. 토글신호가 하이레벨인 경우에는 제 3전송게이트(342)가 구동을 하여 인버터(338)를 통해서 반전된 입력 데이타 비트신호가 출력되고, 토글신호가 로우레벨인 경우에는 제 4 전송게이트(344)가 구동을 하여 입력 데이타 비트신호가 그대로 출력된다.
제 4 도는 본 발명에 따른 실시예의 구성 블럭도이다.
디지탈 신호처리 프로세서에서 16비트 2의 보수형 데이타 A, B는 각각 A레지스터(500)와 B레지스터(502)에 저장되어 있다가 클럭신호에 의해서 가산기(504)로 전달된다. 상기 가산기(504)에서의 출력에 라운딩 비트신호까지 포함해서 17비트가 라운딩 회로(514)는 오버플로우 검출수단(506), 선택수단(508), 제어수단(510), 및 출력수단(512)으로 구성되어 있다. 상기 17비트 입력신호에 의해서 라운딩 회로(514)는 라운딩된 출력신호를 라운딩 레지스터(516)에 저장하고, 클럭신호에 의해서 상기 라운딩된 신호를 출력한다.
상기 제 4 도의 본 발명에 따른 실시예를 구성함에 있어서, 전달지연(Propagation Delay)에 의한 속도문제 해결을 위해서 좀더 빠른 고속의 라운딩 회로를 구성하고자 다음과 같은 최적화 과정을 거쳐서 제 5 도의 라운딩 회로의 상세한 회로도를 구성하였다.
16비트 라운딩 회로구성시,
N1=R D0D1D2
N2=D3D4D5D6
N3=D7D8D9D10
N4=D11D12D13D14라고 하면, 토글신호에 대한 식은 다음과 같이 쓸수 있다.
T0=R T8=N1N2N7
T1=R D0T9=N1N2D7D8
R2=R D0D1T10=N1N2D7D8D9
T3=N1T11=N1N2N3
T4=N1D3T12=N1N2N3D11
T5=N1D3D4T13=N1N2N3D11D12
T6=N1D3D4D5T14=N1N2N3D11D12D13
T7=N1N2T15=N1N2N3N4
OVF=N2N3N4D0D1D2/D15
상기 식처럼 최적화 함으로써 게이트수를 주링는 효과를 가져오므로 전체적인 속도를 향상시킬 수 있다.
제 5 도는 상기 식에 의해서 구성된 실시예에 따른 고속 라운딩 회로(514)의 상세한 회로도이다.
이상과 본 발명의 고속 라운딩 회로는 종래의 가산기를 사용하여 라운딩하는 경우에 있어서의 시간인 8나노세컨드에서 4나노세컨드로 줄었고, 입력 데이타에 대한 토글수단을 사용하여 라운딩 회로를 구성하므로써 게이트 수를 줄였다. 본 발명은 디지탈 신호처리 분야에서 5나노세컨드 이내에 동작하는 고속 라운딩 회로를 필요로 하는 곳에 적용될 수 있다. 특히, HDTV(High Defiition Tele Vision)용 IDCT(Inverse Discrete Cosine Transform) 에 적용될 수 있다. 따라서, 본 발명은 라운딩 회로의 라운딩 시간을 줄이고, 게이트 수를 줄이는데 있어서 효과적인 발명이다.
Claims (11)
- 라운딩 비트신호에 응답하여 제 1 입력데이타 비트신호를 그대로 또는 반전하여 출력하는 제 1 토글수단, 제 3 부정 논리곱 게이트의 출력신호에 응답하여 제 2 입력 데이타 비트신호의 반전신호를 그대로 또는 반전하여 출력하는 제 2 토글수단, 제 3 부정 논리합 게이트의 출력신호에 응답하여 제 3 입력 에이타 비트신호를 그대로 또는 반전하여 출력하는 제 3 토글수단, 및 제 4 부정 논리곱 게이트의 출력신호에 응답하여 제 4 입력 데이타 비트신호의 반전신호를 그대로 또는 반전하여 출력하는 제 4 토글수단을 구비하여 제 3 토글수단 및 제 4 토글수단은 n비트 입력 데이타의 전체 비트수에서 2를 뺀(n-2) 만큼의 제 3 토글수단 및 제 4 토글수단이 교대로 병렬 연결되어 라운딩 비트신호에 응답하여 n비트의 입력 데이타 신호를 라운딩하기 위한 라운딩수단; 상기 라운딩 비트신호에 응답하여 상기 제 1 입력 데이타 비트신호를 그대로 또는 반전하여 출력하는 제 1 토글수단, 상기 제 1 부정 논리곱 게이트의 출력신호에 응답하여 상기 제 2 입력 데이타 비트신호의 반전신호를 그대로 또는 반전하여 출력하는 제 2 토글수단, 상기 제 1 부정 논리합 게이트의 출력신호에 응답하여 상기 제 3 입력 데이타 비트신호를 그대로 또는 반전하여 출력하는 제 3 토글수단, 및 상기 제 2 부정 논리곱 게이트의 출력신호에 응답하여 상기 제 4 입력 데이타 비트신호의 반전신호를 그대로 또는 반전하여 출력하는 제 4 토글수단을 구비하여 상기 제 3 토글수단 및 상기 제 4 토글수단은 상기 n비트 입력 데이타의 전체 비트수에서 4를 뺀(n-4) 만큼의 상기 제 3 토글수단 및 상기 제 4 토글수단이 교대로 병렬 연결되어구성된 선택수단; 상기 입력 데이타의 비트수가 짝수일 경우, 상기 라운딩 비트신호 및 제 1 입력 데이타 비트신호를 입력으로 하는 제 1 부정 논리곱 게이트, 상기 제 1 부정 논리곱 게이트의 출력신호 및 제 1 입력 데이타 비트신호의 반전신호를 입력으로 하는 제 1 부정 논리합 게이트, 상기 제 1 부정 논리합 게이트의 출력신호 및 제 3 입력 데이타 비트신호를 입력으로 하는 제 2 부정 논리곱 게이트, 및 상기 제 2 부정 논리곱 게이트의 출력신호 및 제 4 입력 데이타 비트신호의 반전신호를 입력으로 하는 제 2 부정 논리합 게이트를 구비하여 상기 제 2 부정 논리곱 에이트 및 상기 제 2 부정 논리합 게이트는 상기 n비?입력 데이타의 전체비트수에서 2를 뺀(n-2) 만큼의 상기 제 2 부정 논리곱 게이트 및 상기 제 2 부정 논리합 게이트가 종속 연결되어 구성되고, 상기 입력 데이타의 비트수가 홀수일 경우, 상기 라운딩 비트신호 및 제 1 입력 데이타 비트신호를 입력으로 하는 제 3 부정 논리곱 게이트, 상기 제 3 부정 논리곱 게이트의 출력신호 및 제 2 입력 데이타 비트신호의 반전신호를 입력으로 하는 제 3 부정 논리합 게이트, 상기 제 3 부정 논리합 게이트의 출력신호 및 제 3 입력 데이타 비트신호를 입력으로 하는 제 4 부정 논리곱 게이트, 상기 제 4 부정 논리곱 게이트의 출력신호 및 제 4 입력 데이타 비트신호의 반전신호를 입력으로 하는 제 4 부정 논리합 게이트 및 상기 제 4 부정 논리합 게이트의 출력신호 및 제 5 입력 데이타 비트신호의 반전신호를 입력으로 하는 제 5 부정 논리곱 게이트를 구비하여 상기 제 4 부정 논리곱 게이트 및 상기 제 4 부정 논리합 게이트는 상기 n비트 입력 데이타의 비트수에서 3을 뺀(n-3) 만큼의 상기 제 4 부정 논리곱 게이트 및 제 4 부정 논리합 게이트 구성되어 상기 라운딩 비트신호와 상기 입력 데이타 신호를 입력으로 하여 오버플로우 신호를 발생하는 오버플로우 검출수단; 및 상기 오버플로우 검출수단의 출력신호에 응답하여 오버플로우시에는 오버플로우가 반영된 n비트 입력 데이타의 라운딩 신호를 출력하고 오버플로우가 아닐시에는 상기 라운딩 수단의 출력신호를 출력하기 위한 출력수단을 구비한 것을 특징으로 하는 라운딩 회로.
- 제 1 항에 있어서, 상기 제1, 3토글수단은 반전된 상기 제어신호의 제 1 상태에 응답하여 상기 입력 데이타를 전송하기 위한 제 1 전송게이트; 및 반전된 상기 제어신호의 제 2 상태에 응답하여 상기 입력 데이타의 반전된 신호를 전송하기 위한 제 2 전송게이트를 구비한 것을 특징으로 하는 라운딩 회로.
- 제 2 항에 있어서, 상기 제 1, 2전송게이트는 CMOS로 구성됨을 특징으로 하는 라운딩 회로.
- 제 1 항에 있어서, 상기 제2, 4토글수단은 상기 제어신호의 제 1 상태에 응답하여 상기 입력 데이타를 전송하기 위한 제 3 전송게이트; 및 반전된 상기 제어신호의 제 2 상태에 응답하여 상기 입력 데이타의 반전된 신호를 전송하기 위한 제 4 전송게이트를 구비한 것을 특징으로 하는 라운딩 회로.
- 제 4 항에 있어서, 상기 제3, 4전송게이트는 CMOS로 구성됨을 특징으로 하는 라운딩 회로.
- 제 1 항에 있엇, 고속의 라운딩 회로 구성을 위하여 상기 논리곱 게이트와 상기 논리합 게이트를 교대로 사용하여 상기 오버플로우 검출수단을 구성함을 특징으로 하는 라운딩 회로.
- 제 1 항에 있어서, 상기 출력수단은 상기 오버플로우 검출수단의 출력신호 및 상기 선택수단의 출력신호를 입력으로 하는 논리게이트로 구성됨을 특징으로 하는 라운딩 회로.
- 제 7 항에 있어서, 상기 입력 데이타의 비트수가 짝수일 경우의 상기 논리게이트는 상기 오버플로우 검출수단의 출력신호의 반전신호 및 상기 선택수단의 출력신호를 입력으로 하는 제 6 부정 논리곱 게이트; 및 상기 오버플로우 검출수단의 출력신호 및 상기 선택수단의 출력신호를 입력으로 하는 제 6 부정 논리합 게이트를 구비하여 상기 부전 논리곱 게이트가 상기 n비트 입력 데이타 비트수에서 1을 뺀(n-1) 만큼의 상기 부정 논리곱 게이트로 구성됨을 특징으로 하는 라운딩 회로.
- 제 7 항에 있어서, 상기 입력 데이타의 비트수가 홀수일 경우의 상기 논리게이트는 상기 오버플로우 검출수단의 출력신호 및 상기 선택수단의 출력신호를 입력으로 하는 제 7 부정 논리곱 게이트; 및 상기 오버플로우 검출수단의 출력신호의 반전신호 및 상기 선택수단의 출력신호를 입력으로 하는 제 7 부정 논리합 게이트를 구비하여 상기 부정 논리곱 게이트는 상기 n비트 입력 데이타 비트수에서 1을 뺀(n-1) 만큼의 상기 부정 논리곱게이트로 구성됨을 특징으로 하는 라운딩 회로.
- 16비트의 입력 데이타의 라운딩 비트신호를 입력으로 하여 고속의 라운딩을 위한 라운딩 회로에 있어서, 상기 라운딩 비트신호, 상기 입력 데이타의 첫번째 비트신호, 상기 입력 데이타의 두번째 비트신호, 및 상기 입력 데이타의 세번째 비트신호를 논리곱하여 제 1 신호를 출력하기 위한 제 1 신호 발생수단; 상기 입력 데이타의 네번째 비트신호, 상기 입력 데이타의 다섯번째 비트신호, 상기 입력 데이타의 여섯번째 비트신호, 및 상기 데이타의 일곱전째 비트신호를 논리곱하여 제 2 신호를 출력하기 위한 제 2 신호 발생수단; 상기 입력 데이타의 여덟번째 비트신호, 상기 입력 데이타의 아홉번째 비트신호, 상기 입력 데이타의 열번째 비트신호, 및 상기 입력 데이타의 열한번째 비트신호를 논리곱하여 제 3 신호를 출력하기 위한 제 3 신호 발생수단; 상기 입력 데이타의 열두번째 비트신호, 상기 입력 데이타의 열세번째 비트신호, 상기 입력 데이타의 열네번째 비트신호, 및 상기 입력 데이타의 열다섯번째 비트신호를 논리곱하여 제 4 신호를 출력하기 위한 제 4 신호 발생수단; 상기 라운딩 비트신호 및 상기 입력 데이타의 첫번재 비트신호를 논리곱하여 제 1 제어신호를 출력하기 위한 제 1 제어신호 발생수단; 상기 제 1 제어신호 및 상기 입력 데이타의 두번째 비트신호를 논리곱하여 제 2 제어신호를 출력하기 위한 제 2 제어신호 발생수단; 상기 제 1 신호 및 상기 입력 데이타의 네번째 비트신호를 논리곱하여 제 3 제어신호를 출력하기 위한 제 3 제어신호 발생수단; 상기 제 3 제어신호 및 상기 입력 데이타의 다섯번째 비트신호를 논리곱하여 제 4 제어신호를 출력하기 위한 제 4 제어신호 발생수단; 상기 제 4 제어신호 및 상기 입력 데이타의 여섯번째 비트신호를 논리곱하여 제 5제어신호를 출력하기 위한 제 5 제어신호 발생수단; 상기 제 1 신호및 상기 제2신호를 논리곱하여 제 6 제어신호를 출력하기 위한 제 6 제어신호 발생수단; 상기 제 6 제어신호 및 상기 입력 데이타의 여덟번째 비트 신호를 논리곱하여 제 7 제어신호를 출력하기 위한 제 7 제어신호 발생수단; 상기 제 7 제어신호 및 상기 입력 데이타의 아홉번째 비트신호를 논리곱하여 제 8 제어신호를 출력하기 위한 제 8 제어신로 발생수단; 상기 제 8 제어신호 및 상기 입력 데이타의 열번째 비트신호를 논리곱하여 제 9 제어신호를 출력하기 위한 제 9 제어신호 발생수? 상기 제 1 신호, 상기 제 2 신호 및 상기 제 3 신호를 논리곱하여 제10제어신호를 출력하기위한 제10제어신호 발생수단; 상기 제10제어신호 및 상기 입력 데이타의 열두번재 비트신호를 논리곱하여 제11제어신호를 출력하기 위한 제11제어신호 발생수단; 상기 제11제어신호 및 상기 입력 데이타의 열세번째 비트신호를 논리곱하여 제12제어신호를 출력하기 위한제12제어신호 발생수단; 상기 제12제어신호 및 상기 입력 데이타의 열네번째 비트신호를 논리곱하여 제13제어신호를 출력하기 위한 제13제어신호 발생수단; 상기 제 1 신호 상기 제 2 신호, 상기 제 3 신호 및 상기 제 4 신호를 논리곱하여 제14제어신호를 출력하기 위한 발생수단; 상기 제 2 신호, 상기 제 3 신호, 상기 제 4 신호,상기 입력 데이타의 첫번째 비트신호, 상기 입력 데이타의 두번째 비트신호, 상기 입력 데이타의 세번째 비트신호, 및 상기 입력 데이타의 열여섯번째 비트신호의 반전신호를 논리곱하여 오버플로우 검출신호를 출력하기 위한 오버플로우 검출신호 발생수단; 상기 라운딩 비트신호, 상기 제 1 신호, 및 상기 제1내지 제14제어신호를 각각 제어신호로 하여 상기 입력 데이타를 라운딩하기 위한 라운딩 수단; 및 상기 라운딩 수단의 출력신호들과 상기 오버플로우 검출신호를 입력으로 하여 오버플로우시에는 오버플로우가 반영된 16비트 입력 데이타의 라운딩 신호를 출력하고 오버플로우가 아닐시에는 상기 라운딩 수단의 출력신호를 출력하기 위한 출력수단을 구비한 것을 특징으로 하는 라운딩 회로.
- 제10항에 있어서, 상기 출력수단은 상기 오버플로우 검출신호의 반전신호 및 상기 라운딩 수단을 통하여 출력되는 상기 입력 데이타의 첫번째 비트신호 내지 상기 입력 데이타의 열다섯번째 비트신호를 각각 입력으로 하는 부정 논리곱 게이트; 및 상기 오버플로우 검출신호 및 상기 라운딩 수단을 통하여 출력되는 상기 입력 데이타의 열여섯번째 비트신호를 입력으로 하는 부정 논리합 게이트를 구비한 것을 특징으로 하는 라운딩 회로.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019930007691A KR950010571B1 (ko) | 1993-05-04 | 1993-05-04 | 라운딩 회로 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019930007691A KR950010571B1 (ko) | 1993-05-04 | 1993-05-04 | 라운딩 회로 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR950010571B1 true KR950010571B1 (ko) | 1995-09-19 |
Family
ID=19354965
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019930007691A KR950010571B1 (ko) | 1993-05-04 | 1993-05-04 | 라운딩 회로 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR950010571B1 (ko) |
-
1993
- 1993-05-04 KR KR1019930007691A patent/KR950010571B1/ko not_active IP Right Cessation
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6970897B2 (en) | Self-timed transmission system and method for processing multiple data sets | |
KR960003044B1 (ko) | 수치표현 변환장치 및 그것을 사용한 벡터ㆍ프로세서ㆍ유니트 | |
US5957996A (en) | Digital data comparator and microprocessor | |
US5303178A (en) | Multiplying system based on the Booth's algorithm and generating a positive or negative product in response to a mode signal | |
US5216628A (en) | Absolute value arithmetic circuit | |
US3970833A (en) | High-speed adder | |
US4486851A (en) | Incrementing/decrementing circuit as for a FIR filter | |
KR950010571B1 (ko) | 라운딩 회로 | |
JPH0612226A (ja) | 絶対値比較装置 | |
US5140546A (en) | Adder circuit apparatus | |
JPH0346024A (ja) | 浮動小数点演算器 | |
Chren Jr | Low delay-power product CMOS design using one-hot residue coding | |
JPH09222991A (ja) | 加算方法および加算器 | |
US5978826A (en) | Adder with even/odd 1-bit adder cells | |
GB1145661A (en) | Electronic calculators | |
JP3557366B2 (ja) | 大小比較方法および装置 | |
KR100223752B1 (ko) | 병렬 곱셈기 | |
RU2007034C1 (ru) | Устройство для формирования индексов элементов мультипликативных групп полей галуа gf (p) | |
JP3074958B2 (ja) | 加算機能付きシリアル乗算器 | |
RU2069009C1 (ru) | Суммирующее устройство | |
SU1151956A1 (ru) | Устройство дл возведени в квадрат | |
SU1509880A1 (ru) | Устройство дл вычислени функций синуса и косинуса | |
Parimaladevi et al. | Analysis of Power Efficient Modulo 2n+ 1 Adder Architectures | |
Guan et al. | A simple and high speed CMOS carry chain adder architecture | |
SU721820A1 (ru) | Веро тностное устройство дл вычислени квадратов обратных величин |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
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: 20060830 Year of fee payment: 12 |
|
LAPS | Lapse due to unpaid annual fee |