KR0155932B1 - Alu for data path - Google Patents
Alu for data pathInfo
- Publication number
- KR0155932B1 KR0155932B1 KR1019950049691A KR19950049691A KR0155932B1 KR 0155932 B1 KR0155932 B1 KR 0155932B1 KR 1019950049691 A KR1019950049691 A KR 1019950049691A KR 19950049691 A KR19950049691 A KR 19950049691A KR 0155932 B1 KR0155932 B1 KR 0155932B1
- Authority
- KR
- South Korea
- Prior art keywords
- data path
- arithmetic logic
- control code
- adder
- function
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods 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/57—Arithmetic logic units [ALU], i.e. arrangements or devices for performing two or more of the operations covered by groups G06F7/483 – G06F7/556 or for performing logical operations
- G06F7/575—Basic arithmetic logic units, i.e. devices selectable to perform either addition, subtraction or one of several logical operations, using, at least partially, the same circuitry
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)
- Complex Calculations (AREA)
Abstract
본 발명은 연산 논리함수를 직접 수행할 수 있는 컨트롤 코드를 구현하여 연산 처리 속도를 높이기 위한 데이터 경로(data path) 용 연산 논리장치에 관한 것으로서, 버퍼 트랜스미션 게이트를 이용하여 입력변수 a 및 b와 오퍼레이션 코드 c[0] 내지 c[7]의 조합에 의해 가산기의 입력항을 구하는 것을 특징으로 한다.The present invention relates to a calculation logic device for a data path for implementing a control code that can directly perform arithmetic logic functions to speed up arithmetic processing, and to operate with input variables a and b using a buffer transmission gate. The input term of the adder is obtained by the combination of the codes c [0] to c [7].
따라서, 상술한 바와 같이 본 발명에 따른 데이터 경로용 연산 논리장치는 가산기에서 실행할 연산 논리함수들에 대한 컨트롤 코드를 구현함으로써, 데이터 처리 속도를 높이는 효과를 갖는다.Therefore, as described above, the arithmetic logic device for a data path according to the present invention implements a control code for arithmetic logic functions to be executed in an adder, thereby increasing the data processing speed.
Description
제1도는 종래의 연산 논리장치의 개념을 보이는 블록도.1 is a block diagram showing the concept of a conventional arithmetic logic device.
제2도는 본 발명에 따른 데이터 경로용 연산 논리장치의 구성을 보이는 도면.2 is a diagram showing the configuration of an arithmetic logic device for a data path according to the present invention.
제3도는 제2도에 도시된 n개의 데이터 경로용 연산 논리장치로 구성된 전체 블록도.FIG. 3 is an overall block diagram of the arithmetic logic unit for the n data paths shown in FIG.
본 발명은 연산 논리장치(ALU : Arithmetic Logic Unit)에 관한 것으로서, 더욱 상세하게는 연산 논리의 함수를 직접 수행할 수 있는 컨트롤 코드를 구현하여 연산 처리 속도를 높이기 위한 데이터 경로(data path)용 연산 논리장치에 관한 것이다.The present invention relates to an arithmetic logic unit (ALU), and more particularly, an operation for a data path for speeding up a computational process by implementing a control code that can directly perform a function of arithmetic logic. It relates to a logic device.
제1도는 종래의 연산 논리장치의 개념을 보이는 블록도로서, 각 함수에 대한 로직(logic) 블록(10)과 이 로직블럭의 동작 코드(operation code ; c[0] 내지 c[7])에 의해 디코딩(decoding)하는 디코우더(12)로 구성된다.FIG. 1 is a block diagram showing the concept of a conventional arithmetic logic device. The logic block 10 for each function and an operation code (c [0] to c [7]) of the logic block are shown in FIG. And a decoder 12 for decoding.
제1도에 나타낸 종래의 연산 논리장치는 먼저 로직게이트(logic gate)를 이용하여 명령어 코드(Instruction code)를 구현하고, 이 로직 게이트의 출력을 디코우더(12)를 이용하여 디코딩하여 연산하는 방법을 사용한다. 그러나, 이 방법은 명령어 코드를 특정 규정에 맞게 설계할 수 있는 장점이 있지만 반도체 메모리 셀의 면적을 많이 차지하고 처리 속도면에서 느리다는 단점이 있다.The conventional arithmetic logic device shown in FIG. 1 implements an instruction code by using a logic gate, and decodes and outputs the output of the logic gate by using a decoder 12. Use the method. However, this method has an advantage in that the instruction code can be designed according to a specific regulation, but has a disadvantage in that it occupies a large area of the semiconductor memory cell and is slow in processing speed.
따라서, 본 발명은 상술한 문제점을 해결하기 위해 창출된 것으로서, 연산 논리함수는 산술함수와 논리함수로 구현되기 때문에 처리 속도면에서 많이 개선되는 여러 가지 가산기능을 갖는 알고리즘을 직접 사용할 수 있는 컨트롤 코드를 구현함으로써, 연산 처리 속도를 향상시킬수 있는 데이터 경로용 연산 논리장치를 제공하는 것을 그 목적으로 한다.Accordingly, the present invention was created to solve the above-described problems, and the control code can directly use an algorithm having various addition functions which are greatly improved in terms of processing speed because the arithmetic logic function is implemented as an arithmetic function and a logic function. It is an object of the present invention to provide an arithmetic logic device for a data path that can improve arithmetic processing speed.
상기의 목적을 달성하는 본 발명에 따른 데이터 경로용 연산 논리 연산 장치는 버퍼 트랜스미션 게이트를 이용하여 입력변수 a 및 b와 오퍼레이션 코드 c[0] 내지 c[7]의 조합에 의해 가산기의 입력항을 구하는 것을 특징으로 한다.According to the present invention for achieving the above object, an arithmetic logic unit for a data path uses a buffer transmission gate to input an input term of an adder by a combination of input variables a and b and operation codes c [0] to c [7]. It is characterized by obtaining.
본 발명에 있어서, 입력변수를 변화시켜 컨트롤 코드를 출력하고, 이 출력된 컨트롤 코드에 의해 연산 논리함수를 수행하는 것을 특징으로 한다.In the present invention, the control variable is output by changing an input variable, and the operation logic function is performed by the output control code.
이하, 첨부한 도면을 참조하여 본 발명을 보다 상세히 설명한다.Hereinafter, with reference to the accompanying drawings will be described the present invention in more detail.
제2도는 본 발명에 따른 데이터 경로용 연산 논리장치의 구성을 보이는 도면으로서, 버퍼 트랜스미션 게이트(Buffer trasmission gate : 20)을 사용하여 가산기에서 실현하고자 하는 연산 논리함수에 대한 컨트롤 코드를 만들기 위한 회로도이다. 이 회로를 통해 만들어진 컨트롤 코드에 의해 가산기에서 연산 논리함수를 수행한다. 여기서 이 버퍼 트랜스미션 게이트(20)는 윗쪽으로 입력되는 신호가 하이이고, 아랫쪽으로 입력되는 신호가 로우일 때만, 좌에서 입력되는 신호가 우로 도통하는 특성을 갖는 게이트이다.2 is a diagram showing the configuration of an arithmetic logic device for a data path according to the present invention, and is a circuit diagram for making a control code for an arithmetic logic function to be realized in an adder using a buffer transmission gate (20). . The control code created through this circuit performs an arithmetic logic function on the adder. Here, the buffer transmission gate 20 is a gate having the characteristic that the signal input from the left conducts to the right only when the signal input upward is high and the signal input downward is low.
이와 같이 구성된 회로를 통해 본 발명에서 구현하고자 하는 연산논리함수들을 살펴보면 아래의 표 1a과 표 1b와 같다. 표 1a은 연산함수를 나타내고, 표 1b는 논리함수를 나타낸다.Looking at the operation logic functions to be implemented in the present invention through the circuit configured as described above are shown in Table 1a and Table 1b below. Table 1a shows arithmetic functions, and Table 1b shows a logic functions.
본 발명에 따른 데이터 경로용 연산 논리장치(ALU)는 GG값과 PP값을 구하기 위해 입력변수 a와 b 및 오퍼레이션 코드 c[0] 내지 c[7]의 조합으로 구성된다.The operation logic unit ALU for a data path according to the present invention is composed of a combination of input variables a and b and operation codes c [0] to c [7] to obtain a GG value and a PP value.
제2도에 도시된 회로를 이용하여 각 함수들에 대응하는 컨트롤 코드를 결정할 수 있다.The control code corresponding to each function can be determined using the circuit shown in FIG.
먼저, 입력변수 a 와 b값으로부터 GG 및 PP값을 구하고 이값으로부터 오퍼레이션 코드를 정의한다. 여기서, GG 값은 a, b가(1, 1)일 때에만 0이 되고, 그 이외에는 1이 된다. 또한, PP값은 a, b의 신호가 같으면 0이 되고 다르면 1이 된다. 예를들면, a,b의 값이(0,0)이면 a+b+cin의 함수를 수행하기 위한 GG값은 1이 되고, PP값은 0이 된다.First, the GG and PP values are obtained from the input variables a and b and the operation code is defined from these values. Here, the GG value becomes 0 only when a and b are (1, 1), and the other value is 1. Further, the PP value is 0 when the signals a and b are the same and 1 when they are different. For example, if the value of a, b is (0,0), the GG value for performing the function of a + b + cin is 1, and the PP value is 0.
이와 같은 원리에 의해 정리하면 표 2a과 표 2b와 같다.Summarized by such a principle, it is as Table 2a and Table 2b.
표 2a은 연산함수들을 처리하기 위한 오퍼레이션 코드를 정의한 표이고, 표 2b는 논리함수들을 처리하기 위한 오퍼레이션 코드를 정의한 표이다.Table 2a is a table that defines operation codes for processing operation functions, and Table 2b is a table that defines operation codes for processing logical functions.
상기 표 2a과 표 2b에 도시된 바와 같이 정의된 오퍼레이션 코드의 조합에 의해 각 함수를 수행하는 2진수의 컨트롤 코드와 이 컨트롤 코드를 헥사데시멀(hexadecimal : 16진수)값으로 환산한 값을 구할 수 있다.A binary control code for performing each function and a value obtained by converting the control code into hexadecimal (hexadecimal) values are obtained by a combination of operation codes defined as shown in Tables 2a and 2b. Can be.
여기서, 오퍼레이션 코드 c4=1이면, 연산함수들의 연산만을 실행하는데, a와 b가 (0,0)이면 GG=1, PP=0이고, a와 b가 (0,1)이면 GG=C5, PP=C1이고, a와 b가 (1,0)이면 GG=C6, PP=C2이고, a와 b가 (1, 1)이면 GG=C7, PP=C3이 된다.Here, if the operation code c4 = 1, only operations of the calculation functions are executed. If a and b are (0,0), GG = 1, PP = 0, and if a and b are (0, 1), GG = C5, If PP = C1, and a and b are (1,0), GG = C6 and PP = C2. If a and b are (1,1), then GG = C7 and PP = C3.
또한, C4=0 이면, 논리함수을 실행하고, a와 b가 (0,0)이면, GG=1, PP=C0이고, a와 b가 (0,1)이면 GG=1, PP=C1이고, a와 b가 (1,0)이면 GG=1, PP=C2이고, a와 b가 (1,1)이면 GG=1, PP=C3이 된다.If C4 = 0, the logic function is executed. If a and b are (0,0), GG = 1, PP = C0, and if a and b are (0, 1), GG = 1, PP = C1. If a and b are (1,0), GG = 1, PP = C2. If a and b are (1,1), GG = 1, PP = C3.
이와 같이 표 2a및 표 2b부터 구해진 컨트롤 코드와 이에 따른 16진수값은 표 3a 및 표 3b에 표시되어 있다. 표 3a은 연산함수에 대한 컨트롤 코드에 따른 실행 함수를 나타내고, 표 3b는 논리함수에 대한 컨트롤 코드에 따른 실행 함수를 나타낸다.As such, the control codes obtained from Tables 2a and 2b and the corresponding hexadecimal values are shown in Tables 3a and 3b. Table 3a shows an execution function according to the control code for the operation function, and Table 3b shows an execution function according to the control code for the logic function.
이와 같이 만들어진 컨트롤 코드에 의해 각 함수들이 가산기에서 실행할 수 있도록 제2도에 도시된 회로에 의해 GG/PP값을 출력한다.The control code thus produced outputs the GG / PP value by the circuit shown in FIG. 2 so that each function can be executed in the adder.
제3도는 제2도에 도시된 n개의 연산 논리장치로 구성된 전체 블록도로서, 각각의 연산 논리장치의 셀이 가산기의 입력항(PP 및 GG)이 된다. 이 입력항의 값에 따라 가산기에서 함수들이 수행된다. 상술한 바와 같이 본 발명에 따른 데이터 경로용 연산 논리장치는 가산기에서 실행할 함수들에 대한 컨트롤 코드를 구현함으로써, 데이터 처리 속도를 높이는 효과를 갖는다.FIG. 3 is an overall block diagram composed of the n arithmetic logic units shown in FIG. 2, wherein the cells of each arithmetic logic units are the input terms PP and GG of the adder. Functions are performed in the adder according to the value of this input term. As described above, the arithmetic logic unit for the data path according to the present invention implements a control code for functions to be executed in an adder, thereby increasing the data processing speed.
Claims (2)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019950049691A KR0155932B1 (en) | 1995-12-14 | 1995-12-14 | Alu for data path |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019950049691A KR0155932B1 (en) | 1995-12-14 | 1995-12-14 | Alu for data path |
Publications (2)
Publication Number | Publication Date |
---|---|
KR970049423A KR970049423A (en) | 1997-07-29 |
KR0155932B1 true KR0155932B1 (en) | 1998-11-16 |
Family
ID=19439945
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019950049691A KR0155932B1 (en) | 1995-12-14 | 1995-12-14 | Alu for data path |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR0155932B1 (en) |
-
1995
- 1995-12-14 KR KR1019950049691A patent/KR0155932B1/en not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR970049423A (en) | 1997-07-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH01204138A (en) | Arithmetic circuit | |
KR19990044925A (en) | Data Extractor and Extraction Method | |
KR0155932B1 (en) | Alu for data path | |
US5764550A (en) | Arithmetic logic unit with improved critical path performance | |
KR940009819A (en) | Offset Value Calculation Circuit and Method of Data Processing System | |
JPH09114639A (en) | Mask data generation circuit and bit field operation circuit | |
KR960018871A (en) | Multi-valued OR | |
US5880978A (en) | Method and apparatus for creating an output vector from an input vector | |
KR100475012B1 (en) | 64bits arithmetic operator for processing arithmetic operation on group data | |
KR930002850B1 (en) | Variable bit field making processor circuit | |
KR930007012B1 (en) | Circuit for set/clear processing of the variable bit field | |
KR100242985B1 (en) | A circuit of adder | |
KR100188088B1 (en) | Numerical operating device of binary data | |
JPH0460252B2 (en) | ||
KR970002707A (en) | Linear interpolator with rounding | |
KR930007326B1 (en) | Variable bit field sign/non-sign abstracting processing circuit | |
JPH0799808B2 (en) | Arithmetic logic unit | |
RU2090924C1 (en) | Modulo-three computer | |
JP3525582B2 (en) | Bit operation circuit | |
US5373291A (en) | Decoder circuits | |
KR200156144Y1 (en) | A circuit of absolute value | |
KR100203742B1 (en) | Adder using multiplex | |
KR100197529B1 (en) | Data compression circuit using pass transistor multiplex | |
JPS56121148A (en) | Arithmetic control equipment | |
JPS57196355A (en) | Data processor |
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: 20080701 Year of fee payment: 11 |
|
LAPS | Lapse due to unpaid annual fee |