KR20010014633A - 제로 판정 신호 생성 회로 - Google Patents

제로 판정 신호 생성 회로 Download PDF

Info

Publication number
KR20010014633A
KR20010014633A KR1020000015459A KR20000015459A KR20010014633A KR 20010014633 A KR20010014633 A KR 20010014633A KR 1020000015459 A KR1020000015459 A KR 1020000015459A KR 20000015459 A KR20000015459 A KR 20000015459A KR 20010014633 A KR20010014633 A KR 20010014633A
Authority
KR
South Korea
Prior art keywords
shifter
output
circuit
bit
data
Prior art date
Application number
KR1020000015459A
Other languages
English (en)
Other versions
KR100567643B1 (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 KR20010014633A publication Critical patent/KR20010014633A/ko
Application granted granted Critical
Publication of KR100567643B1 publication Critical patent/KR100567643B1/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/06Arrangements for sorting, selecting, merging, or comparing data on individual record carriers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/30032Movement instructions, e.g. MOVE, SHIFT, ROTATE, SHUFFLE
    • 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/02Comparing digital values

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Computational Mathematics (AREA)
  • Liquid Crystal Display Device Control (AREA)
  • Manipulation Of Pulses (AREA)
  • Logic Circuits (AREA)

Abstract

본 발명에 따르면, 쉬프터의 출력 데이터가 0인지의 여부를 판정하기 위한 제로 판정 신호를 생성하는 제로 판정 신호 생성 회로가 제공된다. 본 발명의 제로 판정 신호 생성 회로에 있어서, 고속의 제로 판정이 성취될 수 있다. 특히, 쉬프터가 좌쉬프터로서 기능하는 경우, 다수의 좌쉬프터를 포함하는 좌쉬프터부의 쉬프트 동작이 수행됨으로써, 쉬프트량이 0인 좌쉬프터의 출력내의 사전결정된 비트는 제로 판정 신호를 생성하기 위해 OR 동작 또는 버퍼링 동작 처리된다. 쉬프터가 우쉬프터로서 기능하는 경우, 다수의 우쉬프터를 포함하는 우쉬프터부의 쉬프트 동작이 수행됨으로써, 쉬프트량이 0인 우쉬프터의 출력의 사전결정된 비트는 제로 판정 신호를 생성하기 위해 OR 동작 또는 버퍼링 동작 처리된다.

Description

제로 판정 신호 생성 회로{ZERO DETERMINATION SIGNAL GENERATING CIRCUIT}
본 발명은 LSI에 쉬프터(shifter)와 함께 탑재되어, 쉬프터의 출력 데이터가 0인지의 여부, 즉 쉬프터의 출력 데이터의 모든 비트가 논리 0(이하, 논리 0을 "0"으로 기재하고, 논리 1을 "1"로 기재함)인지의 여부를 판정하기 위한 제로 판정 신호를 생성하는 제로 판정 신호 생성 회로에 관한 것이다.
종래의 제로 판정 신호 생성 회로는 LSI에 쉬프터와 함께 흔히 탑재되는 쉬프터의 출력 데이터내의 모든 비트에 대해 OR 동작을 수행한다. 그러나, 종래의 제로 판정 신호 생성 회로는 쉬프터의 쉬프트 동작후에 제로 판정 신호를 생성하기 때문에, 쉬프터의 출력에 대한 고속의 제로 판정 동작을 수행하는 것이 곤란하다고 하는 문제가 있었다.
본 발명의 주요 목적은 전술한 문제점을 해결하는 제로 판정 신호 생성 회로를 제공하는 것이다.
본 발명의 보다 구체적인 목적은 쉬프터의 출력 데이터에 대한 제로 판정 동작을 고속으로 수행할 수 있는 제로 판정 신호 생성 회로를 제공하는 것이다.
도 1은 쉬프터와 본 발명의 제로 판정 신호 생성 회로를 도시하는 회로도.
도 2는 도 1에 도시한 쉬프터내에 구비된 좌쉬프터의 구성을 나타내는 회로도.
도 3은 도 1에 도시한 쉬프터내에 구비된 우쉬프터의 구성을 나타내는 회로도.
도 4는 본 발명의 제로 판정 신호 생성 회로의 좌쉬프터부용의 OR/버퍼 회로의 구성을 나타내는 회로도.
도 5는 쉬프트량, 쉬프트량 지시 신호, 반전 쉬프트량 지시 신호 및 좌쉬프터용의 OR/버퍼 회로에 의해 OR 동작 처리되는 신호 사이의 관계를 나타내는 도면.
도 6은 본 발명의 제로 판정 신호 생성 회로의 우쉬프터부용의 OR/버퍼 회로의 구성을 나타내는 회로도.
도 7은 쉬프트량, 쉬프트량 지시 신호 및 우쉬프터용의 OR/버퍼 회로에 의해 OR 동작 처리되는 신호 사이의 관계를 나타내는 도면.
도 8은 쉬프터가 좌쉬프터인 경우에 있어서의 쉬프터와 도 1에 도시한 본 발명의 제로 판정 신호 생성 회로의 등가 회로도.
도 9는 쉬프터가 우쉬프터인 경우에 있어서의 쉬프터와 도 1에 도시한 본 발명의 제로 판정 신호 생성 회로의 등가 회로도.
도 10은 쉬프터가 좌쉬프터이고 쉬프트량이 0인 경우에 있어서의 본 발명의 제로 판정 신호 생성 회로의 동작을 나타내는 도면.
도 11은 쉬프터가 좌쉬프터이고 쉬프트량이 9인 경우에 있어서의 본 발명의 제로 판정 신호 생성 회로의 동작을 나타내는 도면.
도 12는 쉬프터가 좌쉬프터이고 쉬프트량이 20인 경우에 있어서의 본 발명의 제로 판정 신호 생성 회로의 동작을 나타내는 도면.
도 13은 쉬프터가 우쉬프터이고 쉬프트량이 0인 경우에 있어서의 본 발명의 제로 판정 신호 생성 회로의 동작을 나타내는 도면.
도 14는 쉬프터가 우쉬프터이고 쉬프트량이 9인 경우에 있어서의 본 발명의 제로 판정 신호 생성 회로의 동작을 나타내는 도면.
도 15는 쉬프터가 우쉬프터이고 쉬프트량이 20인 경우에 있어서의 본 발명의 제로 판정 신호 생성 신호의 동작을 나타내는 도면.
도 16a 내지 도 16d는 본 발명의 제로 판정 신호 생성 회로에서 사용된 도 1에 도시한 OR 회로를 도시하는 도면.
<도면의 주요부분에 대한 부호의 설명>
1 : 쉬프터
2 : 제로 판정 신호 생성 회로
3, 4, 5, 6, 7 : 좌쉬프터
8, 9, 10, 11, 12 : 우쉬프터
13 : AND 회로
14, 27 : 선택기
15, 16, 17, 18, 19, 21, 22, 23, 24, 25 : OR 회로
20, 26 : OR/버퍼 회로
본 발명의 전술한 목적을 실현하기 위한 제로 판정 신호 생성 회로는, 2X-i비트(단, x는 3 이상의 정수) 또는 0비트의 쉬프트량으로 하는 2X비트 구성을 갖는 제1 좌쉬프터 내지 제x 좌쉬프터 중 하나의 좌쉬프터인 제i 좌쉬프터를 제1 좌쉬프터 내지 제x 좌쉬프터의 순서로 종렬 접속하고, 2X비트의 입력 데이터가 제1 좌쉬프터에 인가되며, 2X비트의 출력 데이터가 제x 좌쉬프터로부터 출력되는 쉬프터의 출력 데이터가 0인지의 여부를 판정하기 위한 제로 판정 신호를 생성하는 제로 판정 신호 생성 회로에 있어서,
제j OR 회로(단, j=1, 2, …, x-1) 중 하나인 제k OR 회로는 제k 좌쉬프터에 대응하여 설치되고, 제k 좌쉬프터에 입력되거나 또는 제k 좌쉬프터로부터 출력되며, 2의 (2X-2X-K)승의 디지트(digit)와 2의 (2X-2·2X-K+1)승의 디지트 사이에 위치하는 2X비트 데이터의 비트에 대해 OR 동작을 수행하는 제j OR 회로와;
쉬프트량이 0 내지 30인 경우, 쉬프트량이 0인 좌쉬프터 중 하나의 좌쉬프터에 대응하는 제j OR 회로 중 제1 OR 회로의 출력과, 2의 (2X-1)승의 디지트이며, 쉬프트 동작을 수행하지 않을 때 제x 좌쉬프터로부터 출력되는 2X비트 데이터의 비트와, 20의 디지트의 2X비트의 입력 데이터의 비트에 대해 OR 동작을 수행하고, 쉬프트량이 31인 경우, 20의 디지트의 2X비트 입력 데이터의 비트에 대해 버퍼링 동작하며, 제로 판정 신호를 출력하는 OR/버퍼 회로를 포함하는 것을 특징으로 한다.
이와 같은 구성에 의해, OR 동작 또는 버퍼링 동작은 쉬프트량이 0이고 좌쉬프터내로 입력되는 2X비트 입력 데이터와 쉬프트량이 0이고 좌쉬프터로부터 출력되는 2X비트 출력 데이터내의 사전결정된 비트에 대해 수행된다. 제로 판정 신호는 그후 OR 동작 또는 OR/버퍼 회로에 의한 버퍼링 동작을 통해 생성된다. 이 방법에 있어서, 제로 판정 신호는 쉬프터내에서 수행되는 쉬프트 동작과 동시에 생성될 수 있다.
또한, 본 발명의 전술한 목적을 실현하기 위한 제로 판정 신호 생성 회로는, 2X-i비트(단, x는 3 이상의 정수) 또는 0비트의 쉬프트량으로 하는 2X비트 구성을 갖는 제x 우쉬프터에 대한 제1 우쉬프터 내지 제x 우쉬프터중 하나의 우쉬프터인 제i 우쉬프터를 제1 우쉬프터 내지 제x 우쉬프터의 순서로 종렬 접속하고, 2X비트의 입력 데이터가 제1 우쉬프터에 인가되며, 2X비트의 출력 데이터가 제x 우쉬프터로부터 출력되는 쉬프터의 출력 데이터가 0인지의 여부를 판정하기 위한 제로 판정 신호를 생성하는 제로 판정 신호 생성 회로에 있어서,
제j OR 회로(단, j=1, 2, …, x-1) 중 하나인 제k OR 회로가 제k 우쉬프터에 대응하여 설치되고, 제k 우쉬프터에 입력되거나 또는 제k 우쉬프터로부터 출력되며 2의 (2X-(i-1)-2)승의 디지트와 2의 (2X-i-1)승의 디지트 사이에 위치하는 2X비트 데이터의 비트에 대해 OR 동작을 수행하는 제j OR 회로와;
쉬프트량이 0 내지 30인 경우, 쉬프트량이 0인 우쉬프터중 하나의 우쉬프터에 대응하는 제j OR 회로 중 제1 OR 회로의 출력과, 20의 디지트이며, 쉬프트 동작을 수행하지 않을 때 제x 우쉬프터로부터 출력되는 2X비트 데이터의 비트와, 2의 (2X-1)승의 디지트의 2X비트 입력 데이터의 비트에 대해 OR 동작을 수행하고, 쉬프트량이 31인 경우, 2의 (2X-1)승의 디지트의 2X비트의 입력 데이터의 비트에 대해 버퍼링 동작하며, 제로 판정 신호를 출력하는 OR/버퍼 회로를 포함하는 것을 특징으로 한다.
이와 같은 구성에 의해, OR 동작 또는 버퍼링 동작은 쉬프트량이 0이고 우쉬프터내로 입력되는 2X비트 입력 데이터 혹은 쉬프트량이 0이고 우쉬프터로부터 출력되는 2X비트 출력 데이터내의 사전결정된 비트에 대해 수행된다. 제로 판정 신호는 그후 OR 동작 또는 OR/버퍼 회로에 의한 버퍼링 동작을 통해 생성된다. 이 방법에 있어서, 제로 판정 신호는 쉬프터내에서 실행되는 쉬프트 동작과 동시에 생성될 수 있다.
또한, 본 발명의 전술한 목적의 제로 판정 신호 생성 회로는, 2X-i비트(단, x는 3 이상의 정수) 또는 0비트의 쉬프트량으로 하는 2X비트 구성을 갖는 제1 좌쉬프터 내지 제x 좌쉬프터 중 하나의 좌쉬프터인 제i 좌쉬프터를 제1 좌쉬프터 내지 제x 좌쉬프터의 순서로 종렬 접속하고, 2X비트의 입력 데이터ㄱ 제1 좌쉬프터에 인가되며, 2X비트의 출력 데이터가 제x 좌쉬프터로부터 출력되는 좌쉬프터부와;
2X-i비트(단, x는 3 이상의 정수) 또는 0비트의 쉬프트량으로 하는 2X비트 구성을 갖는 제1 우쉬프터 내지 제x 우쉬프터 중 하나의 우쉬프터인 제i 우쉬프터를 제1 우쉬프터 내지 제x 우쉬프터의 순서로 종렬 접속하고, 2X비트의 입력 데이터가 제1 우쉬프터에 인가되며, 2X비트의 출력 데이터가 제x 우쉬프터로부터 출력되는 우쉬프터부와;
쉬프터가 좌쉬프터로서 기능하는 경우, 상기 좌쉬프터부의 출력 데이터를 선택하여 출력하고, 쉬프터가 우쉬프터로서 기능하는 경우, 상기 우쉬프터부의 출력 데이터를 선택하여 출력하는 출력 데이터 선택기를 탑재하는 쉬프터의 출력 데이터가 0인지의 여부를 판정하기 위한 제로 판정 신호를 생성하는 제로 판정 신호 생성 회로에 있어서,
제j 좌쉬프터 OR 회로(단, j=1, 2, …, x-1) 중 하나인 제k 좌쉬프터 OR 회로가 제k 좌쉬프터에 대응하여 설치되고, 제k 좌쉬프터에 입력하거나 또는 제k 좌쉬프터로부터 출력되며, 2의 (2X-2X-K)승의 디지트와 2의 (2X-2·2X-K+1)승의 디지트 사이에 위치하는 2X비트 데이터의 비트에 대해 OR 동작을 수행하는 제j 좌쉬프터 OR 회로와;
쉬프트량이 0 내지 30인 경우, 쉬프트량이 0인 좌쉬프터 중 하나의 좌쉬프터에 대응하는 제j 좌쉬프터 OR 회로 중 제1 좌쉬프터 OR 회로의 출력과, 2의 (2X-1)승의 디지트이고 쉬프트 동작을 수행하지 않을 때 제x 좌쉬프터로부터 출력되는 2X비트 데이터의 비트와, 20의 디지트의 2X비트의 입력 데이터의 비트에 대해 OR 동작을 수행하고, 쉬프트량이 31인 경우, 20의 디지트의 2X비트 입력 데이터의 비트에 대해 버퍼링 동작을 수행하는 좌쉬프터 OR/버퍼 회로와;
제j 우쉬프터 OR 회로(단, j=1, 2, …, x-1) 중 하나인 제k 우쉬프터 OR 회로가 제k 우쉬프터에 대응하여 설치되고, 제k 우쉬프터에 입력되거나 또는 제k 우쉬프터로부터 출력되며 2의 (2X-(i-1)-2)승의 디지트와 2의 (2X-i-1)승의 디지트 사이에 위치하는 2X비트 데이터의 비트에 대해 OR 동작을 수행하는 제j 우쉬프터 OR 회로와;
쉬프트량이 0 내지 30인 경우, 쉬프트량이 0인 우쉬프터 중 하나의 우쉬프터에 대응하는 제j 우쉬프터 OR 회로 중 제1 우쉬프터 OR 회로의 출력과, 20의 디지트이고 쉬프트 동작을 수행하지 않을 때 제x 우쉬프터로부터 출력되는 2X비트 데이터의 비트와, 2의 (2X-1)승의 디지트의 2X비트 입력 데이터의 비트에 대해 OR 동작을 수행하고, 쉬프트량이 31인 경우, 2의 (2X-1)승의 디지트의 2X비트의 입력 데이터의 비트에 대해 버퍼링 동작을 수행하는 우쉬프터 OR/버퍼 회로와;
쉬프터가 좌쉬프터로서 기능하는 경우, 제로 판정 신호로서 상기 좌쉬프터 OR/버퍼 회로의 출력을 선택하여 출력하고, 쉬프터가 우쉬프터로서 기능하는 경우, 제로 판정 신호로서 상기 우쉬프터 OR/버퍼 회로의 출력을 선택하여 출력하는 제로 판정 신호 선택기를 포함하는 것을 특징으로 한다.
이와 같은 구성에 의해, 쉬프터가 좌쉬프터로서 기능하는 경우, OR 동작 또는 버퍼링 동작은 쉬프트량이 0인 좌쉬프터내로 입력되는 2X비트 입력 데이터 혹은 쉬프트량이 0인 좌쉬프터로부터 출력되는 2X비트 출력 데이터내의 사전결정된 비트에 대해 수행된다. 제로 판정 신호는 그후 OR 동작 또는 OR/버퍼 회로에 의한 버퍼링 동작을 통해 생성된다. 이 방법에 있어서, 제로 판정 신호는 좌쉬프터부내에서 실행되는 쉬프트 동작과 동시에 생성될 수 있다.
쉬프터가 우쉬프터로서 기능하는 경우, OR 동작 또는 버퍼링 동작은 쉬프트량이 0인 우쉬프터내로 입력되는 2X비트 입력 데이터 또는 쉬프트량이 0인 우쉬프터로부터 출력되는 2X비트 출력 데이터내의 사전결정된 비트에 대해 수행된다. 제로 판정 신호는 그후 OR 동작 또는 OR/버퍼 회로에 의한 버퍼링 동작을 통해 생성된다. 이 방법에 있어서, 제로 판정 신호는 우쉬프터부내에서 실행되는 쉬프트 동작과 동시에 생성될 수 있다.
본 발명의 전술한 목적과 기타 다른 목적 및 특징은 첨부한 도면을 참조하여 기술되는 이하의 상세한 설명으로부터 보다 명확이 이해될 수 있을 것이다.
이하, 첨부한 도면을 참조하여, 본 발명의 실시예를 설명한다. 명세서와 도면에 있어서, [j]는 디지털 신호 2j의 디지트(j비트)를 나타내고, [j:k]는 디지털 신호 2j의 디지트(j비트)에서부터 디지털 신호 2k의 디지트(k비트)까지의 부분을 나타낸다.
도 1은 쉬프터와 본 발명의 실시예로서 제로 판정 신호 생성 회로를 도시하는 회로도이다. 이 도면에 있어서, 참조번호(1)는 우쉬프트 방향 및 좌쉬프트 방향을 갖고, 쉬프트량이 1 내지 31인 32비트 쉬프터를 나타내고, 참조번호(2)는 본 발명의 실시예의 제로 판정 신호 생성 회로를 나타낸다.
DI[31:0]은 쉬프터(1)내로 입력되는 32비트 입력 데이터를 나타내고, OP는 산술 쉬프트 및/또는 우쉬프트를 나타내는 1비트 오퍼레이션 코드를 나타낸다. OP는 산술 우쉬프트를 지시하는 경우에는 "1"을, 산술 좌쉬프트 또는 논리 쉬프트를 지시하는 경우에는 "0"을 나타낸다.
SF[4:0]은 쉬프트량을 지시하기 위한 5비트 쉬프트량 지시 신호를 나타내고, /SF[4:0]은 5비트 쉬프트량 지시 신호 SF[4:0]를 반전하여 얻어지는 5비트 반전 쉬프트량 지시 신호를 나타낸다. 쉬프트량 지시 신호 SF[4:0]의 십진수는 쉬프트량을 나타낸다.
DO[31:0]은 쉬프터(1)의 32비트 출력 데이터를 나타내고, ZD는 데이터 출력 D0가 0인지의 여부를 판정하기 위한 제로 판정 신호이다. 출력 데이터 D0가 0인 경우, 제로 판정 신호 ZD는 "0"이고, 출력 데이터 D0가 0이 아닌 경우, 제로 판정 신호 ZD는 "1"이다.
참조번호(3)는 입력 데이터 DI[31:0]을 쉬프트하기 위한 32비트 좌쉬프터를 지시한다. 좌쉬프터(3)의 쉬프트 동작은 쉬프트량 지시 신호 SF[4]에 의해 제어된다. 신호 SF[4]를 지시하는 쉬프트량이 "1"인 경우, 쉬프트량은 좌측으로 16비트이다. 신호 SF[4]를 지시하는 쉬프트량이 "0"인 경우, 쉬프트량은 0이다.
참조번호(4)는 좌쉬프터(3)의 출력 데이터 DO[31:0]를 쉬프트하기 위한 32비트 좌쉬프터를 지시한다. 좌쉬프터(4)의 쉬프트 동작은 쉬프트량 지시 신호 SF[3]에 의해 제어된다. 신호 SF[3]을 지시하는 쉬프트량이 "1"인 경우, 쉬프트량은 좌측으로 8비트이다. 신호 SF[3]을 지시하는 쉬프트량이 "0"인 경우, 쉬프트량은 0이다.
참조번호(5)는 좌쉬프터(4)의 출력 [31:0]을 쉬프트하기 위한 32비트 좌쉬프터를 지시한다. 좌쉬프터(5)의 쉬프트 동작은 쉬프트량 지시 신호 SF[2]에 의해 제어된다. 신호 SF[2]가 지시하는 쉬프트량이 "1"인 경우, 쉬프트량은 좌측으로 4비트이다. 신호 SF[2]가 지시하는 쉬프트량이 "0"인 경우, 쉬프트량은 0이다.
참조번호(6)는 좌쉬프터(5)의 출력 [31:0]을 쉬프트하기 위한 32비트 좌쉬프터를 지시한다. 좌쉬프터(6)의 쉬프트 동작은 쉬프트량 지시 신호 SF[1]에 의해 제어된다. 신호 SF[1]을 지시하는 쉬프트량이 "1"인 경우, 쉬프트량은 좌측으로 2비트이다. 신호 SF[1]을 지시하는 쉬프트량이 "0"인 경우, 쉬프트량은 0이다.
참조번호(7)는 좌쉬프터(6)의 출력 [31:0]을 쉬프트하기 위한 32비트 좌쉬프터를 지시한다. 좌쉬프터(7)의 쉬프트 동작은 쉬프트량 지시 신호 SF[0]에 의해 제어된다. 신호 SF[0]을 지시하는 쉬프트량이 "1"인 경우, 쉬프트량은 좌측으로 1비트이다. 신호 SF[0]을 지시하는 쉬프트량이 "0"인 경우, 쉬프트량은 0이다. 좌쉬프터(3) 내지 좌쉬프터(7)은 좌쉬프터부를 구성한다.
참조번호(8)는 입력 데이터 DI[31:0]을 쉬프트하기 위한 32비트 우쉬프터를 지시한다. 우쉬프터(8)의 쉬프터 동작은 쉬프트량 지시 신호 SF[4]에 의해 제어된다. 신호 SF[4]를 지시하는 쉬프트량이 "1"인 경우, 쉬프트량은 우측으로 16비트이다. 신호 SF[4]를 지시하는 쉬프트량이 "0"인 경우, 쉬프트량은 0이다.
참조번호(9)는 우쉬프터(8)의 출력 [31:0]을 쉬프트하기 위한 32비트 우쉬프터이다. 우쉬프터(9)의 쉬프트 동작은 쉬프트량 지시 신호 SF[3]에 의해 제어된다. 신호 SF[3]을 지시하는 쉬프트량이 "1"인 경우, 쉬프트량은 우측으로 8비트이다. 신호 SF[3]을 지시하는 쉬프트량이 "0"인 경우, 쉬프트량은 0이다.
참조번호(10)는 우쉬프터(9)의 출력 [31:0]을 쉬프트하기 위한 32비트 우쉬프터이다. 우쉬프터(10)의 쉬프트 동작은 쉬프트량 지시 신호 SF[2]에 의해 제어된다. 신호 SF[2]를 지시하는 쉬프트량이 "1"인 경우, 쉬프트량은 우측으로 4비트이다. 신호 SF[2]를 지시하는 쉬프트량이 "0"인 경우, 쉬프트량은 0이다.
참조번호(11)는 우쉬프터(10)의 출력 [31:0]을 쉬프트하기 위한 32비트 우쉬프터이다. 우쉬프터(11)의 쉬프트 동작은 쉬프트량 지시 신호 SF[1]에 의해 제어된다. 신호 SF[1]을 지시하는 쉬프트량이 "1"인 경우, 쉬프트량은 우측으로 2비트이다. 신호 SF[1]을 지시하는 쉬프트량이 "0"인 경우, 쉬프트량은 0이다.
참조번호(12)는 우쉬프터(11)의 출력 [31:0]을 쉬프트하기 위한 32비트 우쉬프터이다. 우쉬프터(12)의 쉬프트 동작은 쉬프트량 지시 신호 SF[0]에 의해 제어된다. 신호 SF[0]을 지시하는 쉬프트량이 "1"인 경우, 쉬프트량은 우측으로 1비트이다. 신호 SF[0]을 지시하는 쉬프트량이 "0"인 경우, 쉬프트량은 0이다.
참조번호(13)는 입력 데이터 DI[31]과 오퍼레이션 코드 OP에 대해 AND 동작을 수행하여, 우쉬프터(8) 내지 우쉬프터(12)에 그 출력을 인가하는 AND 회로를 지시한다.
참조번호(14)는 좌쉬프터(7)의 출력 [31:0]과 우쉬프터(12)의 출력 [31:0]으로부터 출력 데이터 DO[31:0]을 선택하는 선택기를 지시한다. 선택기(14)의 선택 동작은 오퍼레이션 코드 OP에 따라 제어된다. 오퍼레이션 코드 OP가 "0"인 경우, 선택기(14)는 좌쉬프터(7)의 출력 [31:0]을 선택한다. 오퍼레이션 코드 OP가 "1"인 경우, 선택기(14)는 우쉬프터(12)의 출력 [31:0]을 선택한다.
참조번호(15)는 좌쉬프터(3)의 출력 [16:1]에 대해 OR 동작을 수행하는 OR 회로를 지시한다. 참조번호(16)는 좌쉬프터(4)의 출력 [24:17]에 대해 OR 동작을 수행하는 OR 회로를 지시한다. 참조번호(17)는 좌쉬프터(5)의 출력 [28:25]에 대해 OR 동작을 수행하는 OR 회로를 지시한다. 참조번호(18)는 좌쉬프터(6)의 출력 [30:29]에 대해 OR 동작을 수행하는 OR 회로를 지시한다. 참조번호(19)는 좌쉬프터(7)의 출력 [31]을 버퍼링하는 버퍼 회로를 지시한다.
참조번호(20)는 OR 회로(15, 16, 17 및 18)의 각각의 출력 LOR16, LOR8, LOR4 및 LOR2와, 버퍼 회로(19)의 출력 LBF를 수신하는 OR/버퍼 회로이다. OR/버퍼 회로(20)는 반전 쉬프트량 지시 신호 /SF[4:0]에 의해 제어된다. 쉬프트량이 0 내지 30인 경우, OR/버퍼 회로(20)는 입력 데이터 DI[0]과 버퍼 회로(19)의 출력 LBF로부터 선택된 신호와 OR 회로(15, 16, 17 및 18)의 각각의 출력 LOR16, LOR8, LOR4 및 LOR2에 대해 OR 동작을 수행하는 OR 회로로서 기능한다. 쉬프트량이 31인 경우, OR/버퍼 회로(20)는 입력 데이터 DI[0]을 버퍼링하는 버퍼 회로로서 기능한다.
참조번호(21)는 우쉬프터(8)의 출력 [30:15]에 대해 OR 동작을 수행하는 OR 회로를 지시한다. 참조번호(22)는 우쉬프터(9)의 출력 [14:7]에 대해 OR 동작을 수행하는 OR 회로를 지시한다. 참조번호(23)는 우쉬프터(10)의 출력 [6:3]에 대해 OR 동작을 수행하는 OR 회로를 지시한다. 참조번호(24)는 우쉬프터(11)의 출력 [2:1]에 대해 OR 동작을 수행하는 OR 회로를 지시한다. 참조번호(25)는 우쉬프터(12)의 출력 [0]을 버퍼링하는 버퍼 회로를 지시한다.
참조번호(26)는 OR 회로(21, 22, 23 및 24)의 각각의 출력 ROR16, ROR8, ROR4 및 ROR2와 버퍼 회로(25)의 출력 RBF를 수신하는 OR/버퍼 회로를 지시한다. OR/버퍼 회로(26)는 반전 쉬프트량 지시 신호 /SF[4:0]에 의해 제어된다. 쉬프트량이 0 내지 30인 경우, OR/버퍼 회로(26)는 입력 데이터 DI[31]과 버퍼 회로(25)의 출력 RBF로부터 선택된 신호와 OR 회로(21, 22, 23 및 24)의 각각의 출력 ROR16, ROR8, ROR4 및 ROR2에 대해 OR 동작을 수행하는 OR 회로로서 기능한다. 쉬프트량이 31인 경우, OR/버퍼 회로(26)는 입력 데이터 DI[31]를 버퍼링하는 버퍼 회로로서 기능한다.
참조번호(27)는 OR/버퍼 회로(20)의 출력과 OR/버퍼 회로(26)의 출력으로부터 제로 판정 신호 ZD를 선택하는 선택기를 지시한다. 선택기(27)의 선택 동작은 오퍼레이션 코드 OP에 따라 제어된다. 오퍼레이션 코드 OP가 "0"인 경우, 선택기(27)는 OR/버퍼 회로(20)의 출력을 선택한다. 오퍼레이션 코드 OP가 "1"인 경우, 선택기(27)는 OR/버퍼 회로(26)의 출력을 선택한다.
도 2는 좌쉬프터(3) 내지 좌쉬프터(7)의 일례의 구성을 나타내는 회로도이다. 좌쉬프터(3)의 경우에 있어서는, m은 "16"이고, n은 "4"이다. 좌쉬프터(4)의 경우에 있어서는, m은 "8"이고, n은 "3"이다. 좌쉬프터(5)의 경우에 있어서는, m은 "4"이고, n은 "2"이다. 좌쉬프터(6)의 경우에 있어서는, m은 "2"이고, n은 "1"이다. 좌쉬프터(7)의 경우에 있어서는, m은 "1"이고, n은 "0"이다.
도 2에 있어서, 참조번호(29)는 오퍼레이션 코드 OP[n]을 반전하는 반전기를 지시하고, 참조번호(30) 및 참조번호(31)는 오퍼레이션 코드 OP[n]과 입력 [31-m]에 대해 NAND 동작을 수행하는 NAND 회로를 지시하며, 참조번호(30-m)는 오퍼레이션 코드 OP[n]과 입력 [0]에 대해 NAND 동작을 수행하는 NAND 회로를 지시한다.
참조번호(31-31)는 반전기(29)의 출력과 입력 [31]에 대해 NAND 동작을 수행하는 NAND 회로를 지시한다. 참조번호(31-m)는 반전기(29)의 출력과 입력 [m]에 대해 NAND 동작을 수행하는 NAND 회로를 지시한다. 참조번호(31-(m-1))는 반전기(29)의 출력과 입력 [m-1]에 대해 NAND 동작을 수행하는 NAND 회로를 지시한다. 참조번호(31-0)는 반전기(29)의 출력과 입력 [0]에 대해 NAND 동작을 수행하는 NAND 회로를 지시한다.
참조번호(32-31)는 NAND 회로(30-31)와 NAND 회로(31-31)의 출력에 대해 NAND 동작을 수행하여 출력 [31]을 생성하는 NAND 회로를 지시한다. 참조번호(32-m)는 NAND 회로(30-m)과 NAND 회로(31-m)의 출력에 대해 NAND 동작을 수행하여 출력 [m]을 생성하는 NAND 회로를 지시한다. 참조번호(32-(m-1))는 NAND 회로(31-(m-1))의 출력을 반전하여 출력 [m-1]을 생성하는 반전기를 지시한다. 참조번호(32-0)는 NAND 회로(31-0)의 출력을 반전하여 출력 [0]을 생성하는 반전기를 지시한다.
도 2에 도시한 좌쉬프터의 오퍼레이션 코드 OP[n]이 "1"인 경우, 각각의 NAND 회로(30-31)와 NAND 회로(30-m)는 입력 [31-m:0]에 대한 반전기로서 기능하여, 반전기(29)의 출력은 "1"로 되고, NAND 회로(31-31) 내지 NAND 회로(31-0)의 각각의 출력은 "1"로 고정된다. 그 결과, NAND 회로(32-31) 내지 NAND 회로(32-m)는 각각의 NAND 회로(30-31) 내지 NAND 회로(32-m)에 대한 반전기로서 기능하여, 반전기(31-(m-1)) 내지 반전기(32-0)의 각각의 출력은 "1"로 된다. 따라서, 도 2에 도시한 좌쉬프터는 좌측으로 m비트의 쉬프트량을 갖는 쉬프터로서 기능한다.
오퍼레이션 코드 OP[n]이 "0"인 경우, NAND 회로(30-31) 내지 NAND 회로(30-m)의 각각의 출력은 "1"로 고정되어, 반전기(29)의 출력은 "1"로 되며, 각각의 NAND 회로(31-31) 내지 NAND 회로(31-0)는 입력 [31:0]에 대한 반전기로서 기능한다. 그 결과, NAND 회로(32-31) 내지 NAND 회로(32-m)는 각각의 NAND 회로(31-31) 내지 NAND 회로(31-m)에 대한 반전기로서 기능한다. 따라서, 도 2에 도시한 좌쉬프터는 쉬프트량이 0인 입력 [31:0]에 대한 버퍼로서 기능한다.
도 3은 우쉬프터(8) 내지 우쉬프터(12)의 일례의 구성을 나타내는 회로도이다. 우쉬프터(8)의 경우에 있어서는, m은 "16"이고, n은 "4"이다. 우쉬프터(9)에 있어서는, m은 "8"이고, n은 "3"이다. 우쉬프터(10)에 있어서는, m은 "2"이고, n은 "1"이다. 우쉬프터(12)의 경우에 있어서는, m은 "1"이고, n은 "0"이다.
도 3에 있어서, 참조번호(34)는 오퍼레이션 코드 OP[n]을 반전하는 반전기를 지시하고, 참조번호(35-31)는 오퍼레이션 코드 OP[n]과 AND 회로(13)의 출력에 대해 NAND 동작을 수행하는 NAND 회로를 지시하며, 참조번호(35-[31-(m-1)])는 오퍼레이션 코드 OP[n]과 AND 회로(13)의 출력에 대해 NAND 동작을 수행하는 NAND 회로를 지시한다.
참조번호(35-(31-m))는 오퍼레이션 코드 OP[n]과 입력 [31]에 대해 NAND 동작을 수행하는 NAND 회로를 지시하고, 참조번호(35-0)는 오퍼레이션 코드 OP[n]과 입력 [m]에 대해 NAND 동작을 수행하는 NAND 회로를 지시한다.
참조번호(36-31)는 반전기(34)의 출력과 입력 [31]에 대해 NAND 동작을 수행하는 NAND 회로이다. 참조번호(36-[31-(m-1)])는 반전기(34)의 출력과 입력 [31-(m-1)]에 대해 NAND 동작을 수행하는 NAND 회로를 지시한다. 참조번호(36-(31-m))는 반전기(34)의 출력과 입력 [31-m]에 대해 NAND 동작을 수행하는 NAND 회로를 지시한다. 참조번호(36-0)는 반전기(34)의 출력과 입력 [0]에 대해 NAND 동작을 수행하는 NAND 회로를 지시한다.
참조번호(37-31)는 NAND 회로(35-31) 및 NAND 회로(36-31)의 출력에 대해 NAND 동작을 수행하여 출력 [31]을 생성하는 NAND 회로를 지시한다. 참조번호(37-[31-(m-1)])는 NAND 회로(35-[31-(m-1)]) 및 NAND 회로(36-[31-(m-1)])의 출력에 대해 NAND 동작을 수행하여 출력 [31-(m-1)]을 생성하는 NAND 회로를 지시한다. 참조번호(37-(31-m))는 NAND 회로(35-(31-m)) 및 NAND 회로(36-(31-m))의 출력에 대해 NAND 동작을 수행하여 출력 [31-m]을 생성하는 NAND 회로를 지시한다. 참조번호(37-0)는 NAND 회로(35-0) 및 NAND 회로(36-0)의 출력에 대해 NAND 동작을 수행하여 출력 [0]을 생성하는 NAND 회로를 지시한다.
도 3에 도시한 우쉬프터의 오퍼레이션 코드 OP[n]이 "1"인 경우, 각각의 NAND 회로(35-31) 내지 NAND 회로(35-[31-(m-1)])는 AND 회로(13)의 출력에 대한 반전기로서 기능하고, 각각의 NAND 회로(35-(31-m)) 내지 NAND 회로(35-0)는 입력 [31:m]에 대한 반전기로서 기능하여, 반전기(34)의 출력은 "0"으로 되며, NAND 회로(36-31) 내지 NAND 회로(36-0)의 각각의 출력은 "1"로 고정된다. 그 결과, NAND 회로(37-31) 내지 NAND 회로(37-0)는 각각의 NAND 회로(35-31) 내지 NAND 회로(35-0)에 대한 반전기로서 기능한다. 따라서, 도 3에 도시한 우쉬프터는 좌측으로 m비트의 쉬프트량을 갖는 쉬프터로서 기능한다.
오퍼레이션 코드 OP[n]이 "0"인 경우, NAND 회로(35-31) 내지 NAND 회로(35-0)의 각각의 출력은 "1"로 고정되어, 반전기의 출력은 "1"로 되며, 각각의 NAND 회로(36-31) 내지 NAND 회로(36-0)는 입력 [31:0]에 대한 반전기로서 기능한다. 그 결과, NAND 회로(37-31) 내지 NAND 회로(37-0)는 각각의 NAND 회로(36-31) 내지 NAND 회로(36-0)에 대한 반전기로서 기능한다. 따라서, 도 3에 도시한 우쉬프터는 쉬프트량이 0인 입력 [31:0]에 대한 버퍼로서 기능한다.
도 4는 OR/버퍼 회로(20)의 구성을 나타내는 회로도이다. 이 도면에 있어서, 참조번호(39)는 OR 회로(15)의 출력 LOR16과 반전 쉬프트량 지시 신호 /SF[4]에 대해 NAND 동작을 수행하는 NAND 회로를 지시하고, 참조번호(40)는 NAND 회로(39)의 출력을 반전하는 반전기를 지시한다. 참조번호(41)는 OR 회로(16)의 출력 LOR8과 반전 쉬프트량 지시 신호 /SF[3]에 대해 NAND 동작을 수행하는 NAND 회로를 지시하고, 참조번호(42)는 NAND 회로(41)의 출력을 반전하는 반전기를 지시한다.
참조번호(43)는 OR 회로(17)의 출력 LOR4와 반전 쉬프트량 지시 신호 /SF[2]에 대해 NAND 동작을 수행하는 NAND 회로를 지시하고, 참조번호(44)는 NAND 회로(43)의 출력을 반전하는 반전기를 지시한다. 참조번호(45)는 OR 회로(18)의 출력 LOR2와 반전 쉬프트량 지시 신호 /SF[1]에 대해 NAND 동작을 수행하는 NAND 회로를 지시하고, 참조번호(46)는 NAND 회로(45)의 출력을 반전하는 반전기를 지시한다.
참조번호(47)는 버퍼 회로(19)의 출력 LBF와 반전 쉬프트량 지시 신호 /SF[0]에 대해 NAND 동작을 수행하는 NAND 회로를 지시하고, 참조번호(48)는 NAND 회로(47)의 출력을 반전하는 반전기를 지시한다. 참조번호(49)는 입력 데이터 DI[0]을 반전하는 반전기를 지시하고, 참조번호(50)는 반전기(49)의 출력을 반전하는 반전기를 지시한다.
참조번호(51)는 반전기(40, 42 및 44)의 출력에 대해 NOR 동작을 수행하는 NOR 회로를 지시한다. 참조번호(52)는 반전기(46, 48 및 50)의 출력에 대해 NOR 동작을 수행하는 NOR 회로를 지시한다. 참조번호(53)는 NOR 회로(51 및 52)의 출력에 대해 NAND 동작을 수행하는 NAND 회로를 지시한다.
도 5는 쉬프트량과, 쉬프트량 지시 신호 SF[4:0]과, 반전 쉬프트량 지시 신호 /SF[4:0]과, OR/버퍼 회로(20)에 의해 OR 동작 처리된 신호 사이의 관계를 나타내는 도면이다. 쉬프트량이 0 내지 30인 경우에 있어서는, OR/버퍼 회로(20)는 쉬프트량이 0인 좌쉬프터에 대응하는 OR 회로(15) 내지 OR 회로(18)의 출력 또는 좌쉬프터(7)가 쉬프트 동작을 수행하지 않는 경우에 있어서의 버퍼 회로(19)의 출력 LBF에 대해 OR 동작을 수행한다. 쉬프트량이 31인 경우에 있어서는, OR/버퍼 회로(20)는 입력 데이터 DI[0]을 버퍼링한다.
도 6은 OR/버퍼 회로(26)의 구성을 나타내는 회로도이다. 이 도면에 있어서, 참조번호(55)는 OR 회로(21)의 출력 ROR16과 쉬프트량 지시 신호 SF[4]에 대해 NAND 동작을 수행하는 NAND 회로를 지시하고, 참조번호(56)는 NAND 회로(55)의 출력을 반전하는 반전기를 지시한다. 참조번호(57)는 OR 회로(22)의 출력 ROR8과 쉬프트량 지시 신호 SF[3]에 대해 NAND 동작을 수행하는 NAND 회로를 지시하고, 참조번호(58)는 NAND 회로(57)의 출력을 반전하는 반전기를 지시한다.
참조번호(59)는 OR 회로(23)의 출력 ROR4와 쉬프트량 지시 신호 SF[2]에 대해 NAND 동작을 수행하는 NAND 회로를 지시하고, 참조번호(60)는 NAND 회로(59)의 출력을 반전하는 반전기를 지시한다. 참조번호(61)는 OR 회로(24)의 출력 ROR2와 쉬프트량 지시 신호 SF[1]에 대해 NAND 동작을 수행하는 NAND 회로를 지시하고, 참조번호(62)는 NAND 회로(61)의 출력을 반전하는 반전기를 지시한다.
참조번호(63)는 버퍼 회로(25)의 출력 RBF와 쉬프트량 지시 신호 SF[0]에 대해 NAND 동작을 수행하는 NAND 회로를 지시하고, 참조번호(64)는 NAND 회로(63)의 출력을 반전하는 반전기를 지시한다. 참조번호(65)는 입력 데이터 DI[31]을 반전하는 반전기를 지시하고, 참조번호(66)는 반전기(65)의 출력을 반전하는 반전기를 지시한다.
참조번호(67)는 반전기(56, 58 및 60)의 출력에 대해 NOR 동작을 수행하는 NOR 회로를 지시한다. 참조번호(68)는 반전기(62, 64 및 66)의 출력을 NOR 동작을 수행하는 NOR 회로를 지시한다. 참조번호(69)는 NOR 회로(67 및 68)의 출력에 대해 NAND 동작을 수행하는 NAND 회로를 지시한다.
도 7은 쉬프트량, 반전 쉬프트량 지시 신호 /SF[4:0] 및 OR/버퍼 회로(26)에 의해 OR 동작 처리된 신호 사이의 관계를 나타내는 도면이다. 쉬프트량이 0 내지 30인 경우에 있어서는, OR/버퍼 회로(26)는 쉬프트량이 0인 우쉬프터에 대응하는 OR 회로(21) 내지 OR 회로(24)의 출력 또는 우쉬프터(12)가 쉬프트 동작을 수행하지 않는 경우에 있어서의 버퍼 회로(25)의 출력 RBF에 대해 OR 동작을 수행한다. 쉬프트량이 31인 경우에 있어서는, OR/버퍼 회로(26)는 입력 데이터 DI[0]을 버퍼링한다.
앞서의 구성을 갖는 제로 판정 신호 생성 회로의 오퍼레이션 코드 OP가 "0"인 경우, 선택기(14)는 출력 데이터 DO[31:0]으로서 좌쉬프터(7)의 출력 [31:0]을 선택하고, 선택기(27)는 제로 판정 신호 ZD로서 OR/버퍼 회로(20)의 출력을 선택한다. 이에 따라, 쉬프터(1)과 본 발명의 제로 판정 신호 생성 회로(2)는 도 8에 도시한 구성과 등가로 된다.
오퍼레이션 코드 OP가 "1"인 경우에는 반면에, 선택기(14)는 출력 데이터 DO[31:0]으로서 우쉬프터(12)의 출력 [31:0]을 선택하고, 선택기(27)는 제로 판정 신호 ZD로서 OR/버퍼 회로(26)의 출력을 선택한다. 이에 따라, 쉬프터(1)와 본 발명의 제로 판정 신호 생성 회로(2)는 도 9에 도시한 구성과 등가로 된다.
도 10은 쉬프터(1)가 좌쉬프터로서 기능하고 쉬프트량이 0인 경우의 본 발명의 제로 판정 신호 생성 회로(2)의 동작을 도시한다. 출력 데이터 DO[31:0]이 0인지의 여부를 판정하기 위해, 출력 데이터 DO[31:0]내에 포함된 모든 비트는 OR 동작 처리되도록 요구된다.
이하, 출력 데이터 DO[31], DO[30:29], DO[28:25], DO[24:17], DO[16:1] 및 DO[0]의 논리값은 좌쉬프터(7)의 출력 [31], 좌쉬프터(6)의 출력 [30:29], 좌쉬프터(5)의 출력 [28:25], 좌쉬프터(4)의 출력 [24:17], 좌쉬프터(3)의 출력 [16:1] 및 입력 데이터 DI[0]의 각각의 논리값과 동일하다.
이러한 경우에 있어서, OR/버퍼 회로(20)는 도 5에 나타낸 바와 같이 OR 회로(15)의 출력 LOR16, OR 회로(16)의 출력 LOR8, OR 회로(17)의 출력 LOR4, OR 회로(18)의 출력 LOR2, 버퍼 회로(19)의 출력 LBF 및 입력 데이터 DI[0]에 대해 OR 동작을 수행한다. 이에 따라, OR/버퍼 회로(20)는 출력 데이터 DO[31:0]에 대해 OR 동작을 등가적으로 수행하여, 제로 판정 신호 ZD로서 그 결과값을 출력한다.
도 11은 쉬프터(1)가 좌쉬프터로서 기능하고 쉬프트량이 9인 경우에 있어서의 본 발명의 제로 판정 신호 생성 회로(2)의 동작을 도시한다. 이 경우에 있어서 출력 데이터 DO[8:0]이 0이기 때문에, 출력 데이터 DO[31:9]에 대해 OR 동작을 수행하여 출력 데이터 DO[31:0]이 0인지의 여부를 판정할 필요가 있다.
이하, 출력 데이터 DO[31:30], DO[29:26], DO[25:10] 및 DO[9]의 논리값은 좌쉬프터(6)의 출력 [30:29], 좌쉬프터(5)의 출력 [28:25], 좌쉬프터(3)의 출력 [16:1] 및 입력 데이터 DI[0]의 각각의 논리값과 동일하다. 이에 따라, OR/버퍼 회로(20)는 출력 데이터 DO[31:9]에 대해 OR 동작을 등가적으로 수행하여, 제로 판정 신호 ZD로서 그 결과값을 출력한다.
도 12는 쉬프터(1)이 좌쉬프터로서 기능하고 쉬프트량이 20인 경우에 있어서의 본 발명의 제로 판정 신호 생성 회로(2)의 동작을 도시한다. 이 경우에 있어서 출력 데이터 DO[19:0]이 0이기 때문에, 출력 데이터 DO[31:20]에 대해 OR 동작을 수행하여 출력 데이터 DO[31:0]이 0인지의 여부를 판정할 필요가 있다.
이하, 출력 데이터 DO[31], DO[30:29], DO[28:21] 및 DO[20]의 논리값은 좌쉬프터(7)의 출력 [31], 좌쉬프터(6)의 출력 [30:29], 좌쉬프터(4)의 출력 [24:17] 및 입력 데이터 DI[0]의 각각의 논리값과 동일하다.
OR/버퍼 회로(20)는 도 5에 나타낸 바와 같이 OR 회로(16)의 출력 LOR4, OR 회로(18)의 출력 LOR2, 버퍼 회로(19)의 출력 LBF 및 입력 데이터 DI[0]에 대해 OR 동작을 수행한다. 이에 따라, OR/버퍼 회로(20)는 출력 데이터 DO[31:20]에 대해 OR 동작을 등가적으로 수행하여, 제로 판정 신호 ZD로서 그 결과값을 출력한다.
도 13은 쉬프터(1)가 우쉬프터로서 기능하고 쉬프트량이 0인 경우에 있어서의 본 발명의 제로 판정 신호 생성 회로(2)의 동작을 도시한다. 이 경우에 있어서, 출력 데이터 DO[31:0]이 0인지의 여부를 판정하기 위해, 출력 데이터 DO[31:0]내에 포함된 모든 비트는 OR 동작 처리되도록 요구된다.
이하, 출력 데이터 DO[31], DO[30:15], DO[14:7], DO[6:3], DO[2:1] 및 DO[0]의 논리값은 입력 데이터 DI[31], 우쉬프터(8)의 출력 [30:15], 우쉬프터(9)의 출력 [14:7], 우쉬프터(10)의 출력 [6:3], 우쉬프터(11)의 출력 [2:1] 및 우쉬프터(12)이 출력 [0]의 각각의 논리값과 동일하다.
OR/버퍼 회로(26)는 도 7에 나타낸 바와 같이 OR 회로(21)의 출력 ROR16, OR 회로(22)의 출력 ROR8, OR 회로(23)의 출력 ROR4, OR 회로(24)의 출력 ROR2, 버퍼 회로(25)의 출력 RBF 및 입력 데이터 DI[31]에 대해 OR 동작을 수행한다. 이에 따라, OR/버퍼 회로(26)는 출력 데이터 DO[31:0]내에 포함된 모든 비트에 대해 OR 동작을 등가적으로 수행하여, 제로 판정 신호 ZD로서 그 결과값을 출력한다.
도 14는 쉬프터(1)가 우쉬프터로서 기능하고 쉬프트량이 9인 경우에 있어서의 본 발명의 제로 판정 신호 생성 회로(2)의 동작을 도시한다. 출력 데이터 DO[31:0]이 0인지의 여부를 판정하기 위해, 출력 데이터 DOI[31:0]내에 포함된 모든 비트는 OR 동작 처리되도록 요구된다.
이하, 출력 데이터 DO[31:22], DO[21:6], DO[5:2], DO[1:0]의 논리값은 입력 데이터 DI[31], 우쉬프터(8)의 출력 [30:15], 우쉬프터(10)의 출력 [6:3], 우쉬프터(11)의 출력 [2:1]의 각각의 논리값과 동일하다.
OR/버퍼 회로(26)는 도 7에 나타낸 바와 같이 OR 회로(21)의 출력 ROR16, OR 회로(23)의 출력 ROR4, OR 회로(24)의 출력 ROR2 및 입력 데이터 DI[31]에 대해 OR 동작을 수행한다. 이에 따라, OR/버퍼 회로(26)는 출력 데이터 DO[31:0]내에 포함된 모든 비트에 대해 OR 동작을 등가적으로 수행하여, 제로 판정 신호 ZD로서 그 결과값을 출력한다.
도 15는 쉬프터(1)가 우쉬프터로서 기능하고 쉬프트량이 20인 경우에 있어서의 본 발명의 제로 판정 신호 생성 회로(2)의 동작을 도시한다. 출력 데이터 DO[31:0]이 0인지의 여부를 판정하기 위해, 출력 데이터 DO[31:0]내에 포함된 모든 비트는 OR 동작 처리되도록 요구된다.
이하, 출력 데이터 DO[31:11], DO[10:3], DO[2:1] 및 DO[0]의 논리값은 입력 데이터 DI[31], 우쉬프터(9)의 출력 [14:7], 우쉬프터(11)의 출력 [2:1] 및 우쉬프터(12)의 출력 [0]의 각각의 논리값과 동일하다.
OR/버퍼 회로(26)는 도 7에 나타낸 바와 같이 OR 회로(22)의 출력 ROR8, OR 회로(24)의 출력 ROR2, 버퍼 회로(25)의 출력 RBF 및 입력 데이터 DI[31]에 대해 OR 동작을 수행한다. 이에 따라, OR/버퍼 회로(26)는 출력 데이터 DO[31:0]내의 모든 비트에 대해 OR 동작을 등가적으로 수행하여, 제로 판정 신호 ZD로서 그 결과값을 출력한다.
앞서 기술한 바와 같이, 쉬프터(1)가 좌쉬프터로서 기능하는 경우에 있어서, 본 발명의 제로 판정 신호 생성 회로(2)는 쉬프터(1)의 좌쉬프터부의 쉬프트 동작이 수행될 때와 동시에, 좌쉬프터(3) 내지 좌쉬프터(7)중 쉬프트량이 0인 좌쉬프터로부터 출력되는 32비트 데이터내의 사전결정된 비트에 대해 OR 동작을 수행하거나 버퍼링한다. OR/버퍼 회로(20)가 OR 동작 또는 버퍼링 동작을 완료한 후, 제로 판정 신호 ZD가 마지막으로 생성된다.
쉬프터(1)가 우쉬프터로서 기능하는 경우에 있어서는 반면에, 본 발명의 제로 판정 신호 생성 회로(2)는 쉬프터(1)의 우쉬프터부의 쉬프트 동작이 수행될 때와 동시에, 우쉬프터(8) 내지 우쉬프터(12)중 쉬프트량이 0인 우쉬프터로부터 출력되는 32비트 데이터내의 사전결정된 비트에 대해 OR 동작을 수행하거나 버퍼링한다. OR/버퍼 회로(26)가 OR 동작 또는 버퍼링 동작을 완료한 후, 제로 판정 신호 ZD가 마지막으로 생성된다.
요컨대, 본 발명의 제로 판정 신호 생성 회로(2)는 쉬프터(1)의 쉬프트 동작과 동시에 제로 판정 신호 ZD를 생성할 수 있기 때문에, 고속의 제로 판정 동작이 쉬프터(1)의 출력 데이터 DO[31:0]에 대해 수행될 수 있다.
OR 회로(15)는 데이터 [16:1]이 좌쉬프터(3)내로 입력되기 전에 데이터 [16:1]에 대해 OR 동작을 수행할 수 있다는 것이 이해되어져야 한다. 마찬가지로, OR 회로(16)는 데이터 [24:17]이 좌쉬프터(4)내로 입력되기 전에 데이터 [24:17]에 대해 OR 동작을 수행할 수 있고, OR 회로(17)는 데이터 [28:25]가 좌쉬프터(5)내로 입력되기 전에 데이터 [28:25]에 대해 OR 동작을 수행할 수 있으며, OR 회로(18)는 데이터 [30:29]가 좌쉬프터(6)내로 입력되기 전에 데이터 [30:29]에 대해 OR 동작을 수행할 수 있고, 버퍼 회로(19)는 데이터 [31]이 좌쉬프터(7)내로 입력되기 전에 데이터 [31]에 대해 버퍼링할 수 있다.
또한, OR 회로(21)는 데이터 [30:15]가 우쉬프터(8)내로 입력되기 전에 데이터 [30:15]에 대해 OR 동작을 수행할 수 있고, OR 회로(22)는 데이터 [14:7]이 우쉬프터(9)내로 입력되기 전에 데이터 [14:7]에 대해 OR 동작을 수행할 수 있으며, OR 회로(23)는 데이터 [6:3]이 우쉬프터(10)내로 입력되기 전에 데이터 [6:3]에 대해 OR 동작을 수행할 수 있고, OR 회로(24)는 데이터 [2:1]이 우쉬프터(11)내로 입력되기 전에 데이터 [2:1]에 대해 OR 동작을 수행할 수 있으며, 버퍼 회로(25)는 데이터 [0]이 우쉬프터(12)내로 입력되기 전에 데이터 [0]에 대해 버퍼링을 수행할 수 있다.
도 16a 내지 도 16d는 도 1에서도 도시한 본 발명의 제로 판정 신호 생성 회로에서 사용되는 OR 회로(15) 내지 OR 회로(18)를 도시한다.
도 16a에 도시한 OR 회로(18)는 한개의 NOR 게이트(18a)와 한개의 NOT 게이트(18b)를 포함한다. 도 16b에 도시한 OR 회로(17)는 2개의 NOR 게이트(17a)와 한개의 NAND 게이트(17b)를 포함한다. 도 16c에 도시한 OR 회로(16)는 3개의 NOR 게이트(16a)와 한개의 NAND 게이트(16b)를 포함한다. 도 16d에 도시한 OR 회로(15)는 총 16개의 입력을 수신하는 6개의 NOR 게이트(15a)와, 2개의 NAND 게이트(15b)와, NAND 게이트(15b)로부터의 출력을 수신하는 NOR 게이트(15c)와, NOR 게이트(15c)로부터의 출력을 수신하는 NOT 게이트(15d)를 포함한다.
본 발명의 앞서의 설명에 있어서, 쉬프터(1)는 좌쉬프터(3) 내지 좌쉬프터(7)로 이루어진 좌쉬프터부와 우쉬프터(8) 내지 우쉬프터(12)로 이루어진 우쉬프터부를 포함한다. 그러나, OR 회로(21) 내지 OR 회로(24), 버퍼 회로(25) 및 선택기(27)은 생략될 수 있다. 이러한 경우에 있어서, 쉬프터(1)는 좌쉬프터로서만 기능한다. 대안적으로, OR 회로(15) 내지 OR 회로(18), 버퍼 회로(19) 및 선택기(27)는 생략될 수 있다. 이러한 경우에 있어서, 쉬프터(1)는 우쉬프터로서만 기능한다.
본 발명은 특정하게 개시된 실시예로 한정되는 것이 아니라, 본 발명의 범주로부터 벗어나는 일없이 변동 및 수정이 이루어질 수 있다.
본 출원은 1999년 3월 29일자로 출원되고, 전체의 내용이 참조용으로 통합된 일본특허출원 제11-085026호에 근거한다.
본 발명에 따르면, 쉬프터의 출력 데이터에 대한 제로 판정 동작을 고속으로 수행할 수 있는 제로 판정 신호 생성 회로를 제공할 수 있다.

Claims (3)

  1. 2X-i비트(단, x는 3 이상의 정수) 또는 0비트의 쉬프트량으로 하는 2X비트 구성을 갖는 제1 좌쉬프터 내지 제x 좌쉬프터 중 하나의 좌쉬프터인 제i 좌쉬프터를 제1 좌쉬프터 내지 제x 좌쉬프터의 순서로 종렬 접속하고, 2X비트의 입력 데이터가 제1 좌쉬프터에 인가되며, 2X비트의 출력 데이터가 제x 좌쉬프터로부터 출력되는 쉬프터의 출력 데이터가 0인지의 여부를 판정하기 위한 제로 판정 신호를 생성하는 제로 판정 신호 생성 회로에 있어서,
    제j OR 회로(단, j=1, 2, …, x-1) 중 하나인 제k OR 회로가 제k 좌쉬프터에 대응하여 설치되고, 제k 좌쉬프터에 입력되거나 또는 제k 좌쉬프터로부터 출력되며 2의 (2X-2X-K)승의 디지트와 2의 (2X-2·2X-K+1)승의 디지트 사이에 위치하는 2X비트 데이터의 비트에 대해 OR 동작을 수행하는 제j OR 회로와;
    쉬프트량이 0 내지 30인 경우, 쉬프트량이 0인 좌쉬프터 중 하나의 좌쉬프터에 대응하는 제j OR 회로 중 제1 OR 회로의 출력과, 2의 (2X-1)승의 디지트이고 쉬프트 동작을 수행하지 않을 때 제x 좌쉬프터로부터 출력되는 2X비트 데이터의 비트와, 20의 디지트의 2X비트의 입력 데이터의 비트에 대해 OR 동작을 수행하고, 쉬프트량이 31인 경우, 20의 디지트의 2X비트 입력 데이터의 비트에 대해 버퍼링 동작하며, 제로 판정 신호를 출력하는 OR/버퍼 회로를 포함하는 것을 특징으로 하는 제로 판정 신호 생성 회로.
  2. 2X-i비트(단, x는 3 이상의 정수) 또는 0비트의 쉬프트량으로 하는 2X비트 구성을 갖는 제1 우쉬프터 내지 제x 우쉬프터 중 하나의 우쉬프터인 제i 우쉬프터를 제1 우쉬프터 내지 제x 우쉬프터의 순서로 종렬 접속하고, 2X비트의 입력 데이터가 제1 우쉬프터에 인가되며, 2X비트 출력 데이터가 제x 우쉬프터로부터 출력되는 쉬프터의 출력 데이터가 0인지의 여부를 판정하기 위한 제로 판정 신호를 생성하는 제로 판정 신호 생성 회로에 있어서,
    제j OR 회로(단, j=1, 2, …, x-1) 중 하나인 제k OR 회로가 제k 우쉬프터에 대응하여 설치되고, 제k 우쉬프터에 입력되거나 또는 제k 우쉬프터로부터 출력되며 2의 (2X-(i-1)-2)승의 디지트와 2의 (2X-i-1)승의 디지트 사이에 위치하는 2X비트 데이터의 비트에 대해 OR 동작을 수행하는 제j OR 회로와;
    쉬프트량이 0 내지 30인 경우, 쉬프트량이 0인 우쉬프터중 하나의 우쉬프터에 대응하는 제j OR 회로 중 제1 OR 회로의 출력과, 20의 디지트이고 쉬프트 동작을 수행하지 않을 때 제x 우쉬프터로부터 출력되는 2X비트 데이터의 비트와, 2의 (2X-1)승의 디지트의 2X비트 입력 데이터의 비트에 대해 OR 동작을 수행하고, 쉬프트량이 31인 경우, 2의 (2X-1)승의 디지트의 2X비트의 입력 데이터의 비트에 대해 버퍼링 동작하며, 제로 판정 신호를 출력하는 OR/버퍼 회로를 포함하는 것을 특징으로 하는 제로 판정 신호 생성 회로.
  3. 2X-i비트(단, x는 3 이상의 정수) 또는 0비트의 쉬프트량으로 하는 2X비트 구성을 갖는 제1 좌쉬프터 내지 제x 좌쉬프터 중 하나의 좌쉬프터인 제i 좌쉬프터를 제1 좌쉬프터 내지 제x 좌쉬프터의 순서로 종렬 접속하고, 2X비트의 입력 데이터가 제1 좌쉬프터에 인가되며, 2X비트의 출력 데이터가 제x 좌쉬프터로부터 출력되는 좌쉬프터부와;
    2X-i비트(단, x는 3 이상의 정수) 또는 0비트의 쉬프트량으로 하는 2X비트 구성을 갖는 제1 우쉬프터 내지 제x 우쉬프터 중 하나의 우쉬프터인 제i 우쉬프터를 제1 우쉬프터 내지 제x 우쉬프터의 순서로 종렬 접속하고, 2X비트이 입력 데이터가 제1 우쉬프터에 인가되며, 2X비트의 출력 데이터가 제x 우쉬프터로부터 출력되는 우쉬프터부와;
    쉬프터가 좌쉬프터로서 기능하는 경우, 상기 좌쉬프터부의 출력 데이터를 선택하여 출력하고, 쉬프터가 우쉬프터로서 기능하는 경우, 상기 우쉬프터부의 출력 데이터를 선택하여 출력하는 출력 데이터 선택기를 탑재하는 쉬프터의 출력 데이터가 0인지의 여부를 판정하기 위한 제로 판정 신호를 생성하는 제로 판정 신호 생성 회로에 있어서,
    제j 좌쉬프터 OR 회로(단, j=1, 2, …, x-1) 중 하나인 제k 좌쉬프터 OR 회로가 제k 좌쉬프터에 대응하여 설치되고, 제k 좌쉬프터에 입력하거나 또는 제k 좌쉬프터로부터 출력되며, 2의 (2X-2X-K)승의 디지트와 2의 (2X-2·2X-K+1)승의 디지트 사이에 위치하는 2X비트 데이터의 비트에 대해 OR 동작을 수행하는 제j 좌쉬프터 OR 회로와;
    쉬프트량이 0 내지 30인 경우, 쉬프트량이 0인 좌쉬프터 중 하나의 좌쉬프터에 대응하는 제j 좌쉬프터 OR 회로 중 제1 좌쉬프터 OR 회로의 출력과, 2의 (2X-1)승의 디지트이며, 쉬프트 동작을 수행하지 않을 때 제x 좌쉬프터로부터 출력되는 2X비트 데이터의 비트와, 20의 디지트의 2X비트 입력 데이터의 비트에 대해 OR 동작을 수행하고, 쉬프트량이 31인 경우, 20의 디지트의 2X비트의 입력 데이터의 비트에 대해 버퍼링 동작을 수행하는 좌쉬프터 OR/버퍼 회로와;
    제j 우쉬프터 OR 회로(단, j=1, 2, …, x-1) 중 하나인 제k 우쉬프터 OR 회로가 제k 우쉬프터에 대응하여 설치되고, 제k 우쉬프터에 입력되거나 또는 제k 우쉬프터로부터 출력되며, 2의 (2X-(i-1)-2)승의 디지트와 2의 (2X-i-1)승의 디지트 사이에 위치하는 2X비트 데이터의 비트에 대해 OR 동작을 수행하는 제j 우쉬프터 OR 회로와;
    쉬프트량이 0 내지 30인 경우, 쉬프트량이 0인 우쉬프터 중 하나의 우쉬프터에 대응하는 제j 우쉬프터 OR 회로 중 제1 우쉬프터 OR 회로의 출력과, 20의 디지트이며, 쉬프트 동작을 수행하지 않을 때 제x 우쉬프터로부터 출력되는 2X비트 데이터의 비트와, 2의 (2X-1)승의 디지트의 2X비트 입력 데이터의 비트에 대해 OR 동작을 수행하고, 쉬프트량이 31인 경우, 2의 (2X-1)승의 디지트의 2X비트의 입력 데이터의 비트에 대해 버퍼링 동작을 수행하는 우쉬프터 OR/버퍼 회로와;
    쉬프터가 좌쉬프터로서 기능하는 경우, 제로 판정 신호로서 상기 좌쉬프터 OR/버퍼 회로의 출력을 선택하여 출력하고, 쉬프터가 우쉬프터로서 기능하는 경우, 제로 판정 신호로서 상기 우쉬프터 OR/버퍼 회로의 출력을 선택하여 출력하는 제로 판정 신호 선택기를 포함하는 것을 특징으로 하는 제로 판정 신호 생성 회로.
KR1020000015459A 1999-03-29 2000-03-27 제로 판정 신호 생성 회로 KR100567643B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP99-085026 1999-03-29
JP08502699A JP3562373B2 (ja) 1999-03-29 1999-03-29 ゼロ判定信号生成回路

Publications (2)

Publication Number Publication Date
KR20010014633A true KR20010014633A (ko) 2001-02-26
KR100567643B1 KR100567643B1 (ko) 2006-04-05

Family

ID=13847219

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020000015459A KR100567643B1 (ko) 1999-03-29 2000-03-27 제로 판정 신호 생성 회로

Country Status (5)

Country Link
US (1) US6522690B1 (ko)
EP (1) EP1041720B1 (ko)
JP (1) JP3562373B2 (ko)
KR (1) KR100567643B1 (ko)
DE (1) DE60013674T2 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7496167B2 (en) * 2005-01-20 2009-02-24 Marvell World Trade Ltd. Storage efficient sliding window sum
JP6804389B2 (ja) 2017-05-30 2020-12-23 株式会社ニューフレアテクノロジー 描画装置および描画方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3697734A (en) * 1970-07-28 1972-10-10 Singer Co Digital computer utilizing a plurality of parallel asynchronous arithmetic units
US5568410A (en) * 1994-09-29 1996-10-22 International Business Machines Corporation Method and apparatus for determining the amount of leading zeros or ones in a binary data field
US5724572A (en) * 1994-11-18 1998-03-03 International Business Machines Corporation Method and apparatus for processing null terminated character strings
US5754885A (en) * 1996-04-04 1998-05-19 International Business Machines Corporation Apparatus and method for selecting entries from an array
US6112218A (en) * 1998-03-30 2000-08-29 Texas Instruments Incorporated Digital filter with efficient quantization circuitry

Also Published As

Publication number Publication date
EP1041720B1 (en) 2004-09-15
DE60013674D1 (de) 2004-10-21
EP1041720A1 (en) 2000-10-04
JP3562373B2 (ja) 2004-09-08
KR100567643B1 (ko) 2006-04-05
US6522690B1 (en) 2003-02-18
JP2000276327A (ja) 2000-10-06
DE60013674T2 (de) 2005-02-24

Similar Documents

Publication Publication Date Title
US6510446B1 (en) Floating point calculation method and unit efficiently representing floating point data as integer and semiconductor integrated circuit device provided with the same
US9678716B2 (en) Apparatus and method for performing absolute difference operation
KR100260494B1 (ko) 정수 결과를 구하기 위해 정수 오퍼런드를 우-쉬프트하고 분수 중간 결과를 라운드하기 위한 방법 및 장치
JP2000155671A (ja) 浮動小数点演算装置
JPH07182141A (ja) 演算装置及び演算方法
US4648059A (en) N-bit magnitude comparator
KR100567643B1 (ko) 제로 판정 신호 생성 회로
US5991786A (en) Circuit and method for shifting or rotating operands of multiple size
US6269385B1 (en) Apparatus and method for performing rounding and addition in parallel in floating point multiplier
JPH09222991A (ja) 加算方法および加算器
JPH0346024A (ja) 浮動小数点演算器
JP2509279B2 (ja) 浮動小数点数一固定小数点数変換装置
US6678711B1 (en) Incrementer/decrementer circuit
US7277909B2 (en) High speed adder
US6519620B1 (en) Saturation select apparatus and method therefor
US6411975B1 (en) Digital processing
US5905428A (en) N-bit comparator using count leading 1 circuits
JP4204482B2 (ja) ゼロ検出で速い計算が可能なインクリメンタ及びその方法
US20050210089A1 (en) Saturating shift mechanisms within data processing systems
KR970049455A (ko) 홀/짝수의 1-비트 가산기 셀을 구비하는 가산기
KR100203742B1 (ko) 멀티플렉스를 이용한 가산기
JP2004259282A (ja) デジタルデータの飽和処理装置
KR0154934B1 (ko) 개선된 2의 보수회로
US6041341A (en) Method and circuit for adding operands of multiple size
KR200232068Y1 (ko) 고속 동작을 위한 2의 보수 변환 장치

Legal Events

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

Payment date: 20130304

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20140228

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20150302

Year of fee payment: 10

LAPS Lapse due to unpaid annual fee