Abstract:
An operation apparatus and an operation control method thereof which detect logic transitions by each bit of an input signal, and, by variably adjusting an operation time in accordance with the number of detected logic transitions, reduces an average operation time, and improves an operation function, wherein an average operation time is reduced since the operation time is varied in accordance with the number of input bit logic transitions, which improves an operation efficiency of a computer system.

Description:
BACKGROUND OF THE INVENTION 
     1. Field of the Invention 
     The present invention relates to an operation apparatus for a computer processor and an operation control method thereof, and in particular, to an operation apparatus and an operation control method thereof which are capable of varying an operation time in accordance with the number of logic transitions by detecting the logic transitions by bits of an input signal to the operation apparatus. 
     2. Description of the Conventional Art 
     Conventionally, an operation device is used for a central processing unit (CPU) of a digital computer performing arithmetic operations such as an addition, substraction, multiplication, and division. In an operation apparatus, it is very important to reduce the operation time in order to perform a high speed operation. To achieve the above-mentioned high speed operation, it is necessary to operate a plurality of operation apparatuses in parallel, or perform operations by a pipeline control method. 
     FIG. 1 shows a conventional operation apparatus. As shown therein, the conventional operation apparatus includes a first operation unit 10 for receiving an input signal V in  and performing an operation thereon, a second operation unit 20 for receiving an output signal V 01  of the first operation unit 10 and performing a second operation thereon, and a controller 30 for receiving a control signal CTL and a clock signal CLK, outputting a first latch signal VL1, a first output enable signal OEN1 to the first operation unit 10 and outputting a second latch signal VL2, and a second output enable signal OEN2 to the second operation unit 20 for thereby controlling an operation function of the first and the second operation units 10 and 20. 
     A conventional operation of an operation apparatus will be described with reference to FIGS. 2A through 2G. 
     First, when an input signal V in  is inputted to a first operation device 10, a controller 30 is enabled in accordance with the control signal CTL and counts the clock signal CLK, and generates first and a second latch signals VL1 and VL2, and first and second output enable signals OEN1 and OEN2. When the first latch signal VL1 is inputted to the first operation unit 10, the first operation unit 10 latches and operates upon input signal V in . Next, the first operation unit 20 outputs the operated output signal V 01  to the second operation unit 20 in accordance with the first output enable signal OEN1 from the controller 30. In the same manner, when the second latch signal VL2 is inputted to the second operation unit 20, the second operation unit 20 latches and operates upon output signal V 01  outputted from the first operation unit 10, and outputs an operated output signal V 02  in accordance with the second output enable signal OEN2 from the control unit 30. 
     Here, the clock signal CLK is referred to a signal with which the controller 30 controls the timing of the first and the second latch signals VL1 and VL2 and the first and second output enable signals OEN1 and OEN2. 
     The above-mentioned conventional operation of an operation apparatus will be described in detail below with reference to the timing drawings of FIGS. 2A through 2G. 
     The controller 30, when enabled in accordance with the control signal CTL, counts the clock signal CLK, as shown in FIG. 2A, and outputs first and second latch signals VL1, VL2, as shown in FIGS. 2B and 2F and a first output enable signal FIG. 2C to the first and second operation units 10 and 20, respectively. As illustrated in FIGS. 2C and 2F, the first output enable signal OEN1 and the second latch signal VL2 are enabled at the same time. In addition, the input signal Vin is inputted at the same time when the first latch signal VL1 is enabled, as shown in FIG. 2D. 
     In the first operation unit 10, the input signal Vin latched in accordance with the first latch signal VL1 is operated upon, and the operated output signal V01 is inputted to the second operation unit 20 in accordance with the first output enable signal OEN1 of FIG. 2C. In the same manner, in the second operation unit 20, the output signal V o1  of the first operation unit 10 latched in accordance with the second latch signal VL2 is operated upon, and the operated output signal V 02  is outputted in accordance with the second output enable signal OEN2. FIG. 2G shows an input signal Vin having a predetermined data value. 
     When one cycle of the clock signal CLK is 1T in an operation of the first operation unit 10, the time of 3T elapses from the moment the input signal Vin is latched in accordance with the first latch signal to the moment the operated output signal V 01  is outputted in accordance with the first output enable signal OEN1. Here, &#34;3T&#34; is time required when the first operation unit 10 performs an operation function and is determined by the input signals to the controller 30, that is by the control signal CTL and the clock signal CLK. 
     The time required is proportional to the number of logic transitions based on the bits of the input signal Vin when the input signal Vin is inputted to the first operation unit 10 by n bits (for example, 4 bits), and the first operation unit 10 operates upon the n bits of the input signal Vin. For example, as shown in FIG. 2G, when the input signal Vin changes from the form of &#34;0000&#34; to the form of &#34;1111&#34;, the number of logic transitions by bits is four (4), and when the input signal Vin changes from the form of &#34;1111&#34; to the form of &#34;1011&#34;, the number of logic transitions based on the bits of the input signal Vin is one (1). Here, a logic transition by bit means that each bit changes from a low logic level to a high logic level or from a high logic level to a low logic level. 
     As described above, although the time required for the first operation unit 10 to operate upon the input signal Vin is proportional to the number of bit logic transitions, in the conventional art, an operation time of the first operation unit 10 is fixed as &#34;3T&#34;, irrespective of the number of bit logic transitions. An example of this is shown in Table 1; 
     
                       TABLE 1______________________________________number of      actual     conventionalinput bit transition          operation time                     operation time______________________________________0, 1, 2        2T         3T3, 4           3T         3T______________________________________ 
    
     As shown in Table 1, when the number of logic transitions by bits of the input signal is zero, one, or two (0,1,2), the operation time is &#34;2T&#34;, but the operation time controlled by the first latch signal VL1 and the first output enable signal OEN1 is &#34;3T&#34;. The reason that the operation time is fixed at &#34;3T&#34; is that an operation requiring &#34;3T&#34; cannot be performed when the operation time is fixed at &#34;2T&#34;. Therefore, as shown in Table 1, when the possible operation times are &#34;2T&#34; and &#34;3T&#34;, the longest time &#34;3T&#34; should be fixed. 
     As mentioned above, the longest operation time of a conventional operation device is fixed at &#34;3T&#34;, regardless of the number of logic transitions by bits of the input signal. Therefore, when an actual operation time of an input signal is less than &#34;3T&#34;, the operated signal must wait until the time &#34;3T&#34; lapses, which results in a waste of time, and an unnecessarily long operation time. 
     In addition, since the conventional operation device has a fixed operation time, the operation time cannot be adjusted variably, according to the applied system. 
     SUMMARY OF THE INVENTION 
     Accordingly, it is an object of the present invention to provide an operation apparatus in which an operation time is able to be adjusted in accordance with the number of logic transitions by bits of an input signal. 
     It is another object of the present invention to provide a means for adjusting an operation time of an operation apparatus in accordance with the number of logic transitions detected by bits of an input signal. 
     To achieve the above object, there is provided an operation apparatus which includes an operation unit for latching and operating an input signal in accordance with a latch signal, and then outputting the operated signal in accordance with an output enable signal, a controller for controlling a time gap between outputting of a latch signal in accordance with first and second levels of a time control signal and outputting of an output enable signal and for controlling an operation of the operation unit, a logic transition detector for receiving a signal inputted to the operation unit and detecting the number of a logic transition by bit of an input signal, and a signal generator for outputting a first and a second levels of a time control signal in accordance with the value of a logic transition detecting signal and a transition bit detecting signal. 
     In the controller, the logic transition detector, the signal generator, and a clock signal are used as a standard signal. In addition, a first latch signal of the controller is applied to the logic transition detector, and used when detecting a logic transition. 
     Besides, an operation control method of the present invention includes a stage for detecting the number of a logic transition by bit of an input signal and outputting a logic transition detecting signal, a stage for outputting a time control signal of first and second levels in accordance with the logic transition detecting signal and a transition bit selecting signal, a stage for adjusting a time gap between a latch signal and an output enable signal in accordance with first and second levels of the time control signal, and a stage for latching and operating the input signal in accordance with the latch signal, and then outputting the operated signal in accordance with output enable signal. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     The present invention will become more fully understood from the detailed description given hereinbelow and the accompanying drawings which are given by way of illustration only, and thus are not limitative of the present invention, and wherein: 
     FIG. 1 is a block diagram of a conventional operation device; 
     FIGS. 2A through 2G are timing diagrams of the operation signals in the conventional operation apparatus of FIG. 1; 
     FIG. 3 is a block diagram of an operation apparatus of the present invention; 
     FIG. 4A is a circuit diagram illustrating an embodiment of a logic transition detector of FIG. 3; 
     FIG. 4B is a block diagram illustrating a logic transition detector when an input signal is four bits; 
     FIG. 5 is a circuit diagram illustrating an embodiment of a signal generator of FIG. 3; 
     FIG. 6 is a table showing example of logic transitions by bits of an input signal; and 
     FIGS. 7A through 7G are diagrams showing the operation time of the apparatus of FIG. 3. 
    
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS 
     The present invention will now be described in more detail with reference to the accompanying drawings. As shown in FIG. 3, an operation apparatus in accordance with the present invention includes a logic transition detector 400 for detecting logic transitions by bits of an input signal V in  and outputting a logic transition detection signal Vp, a signal generator 500 for receiving the logic transition detection signal Vp and outputting a time control signal V s  in accordance with the value of an externally applied transition bit selecting signal SB i , a controller 300 for outputting a first latch signal VL1, a second latch signal VL2, and a first output enable signal OEN1 in accordance with the value of an applied control signal CTL and the time control signal V s  from the signal generator 500, a first operation unit 100 for latching and operating upon the input signal V in  in accordance with a first latch signal VL1 outputted from the controller 300, and then outputting the operated signal V o1  in accordance with the first output enable signal OEN1, and a second operation unit 200 for latching and operating upon the output signal V 01  of the first operation unit 100 in accordance with the second latch signal VL2 from the controller 300 and then outputting the operated output signal V o2  in accordance with OEN2. 
     Here, a clock signal CLK is applied to the controller 300, the logic transition detector 400, and the signal generator 500, and used as a standard signal. In addition, the first latch signal VL1 from the controller 300 is applied to the logic transition detector 400, and used when detecting a logic state transition. 
     As shown in FIG. 4A, a logic transition detector 400 of the present invention includes a first flip-flop 410 as a first storing unit for storing a previous value of the input signal V in , a second flip-flop as a second storing unit 420 for storing a present value of the input signal V in , and an exclusive OR gate 430 as a comparing unit for comparing the previous and present values of the input signal V in . In addition, the clock signal CLK inverted by an inverter 440 is ANDed with the first latch signal VL1 by an AND gate 450, and the output signal of the AND gate 450 is applied to the clock &#34;C&#34; input terminals of the first and second flip-flops 410,420. 
     FIG. 4B illustrates an example of a four-bit wide logic transition detector for detecting logic state transitions of an input signal of four bits V ino  -V in3 , and includes four of the logic transition detector circuits 400 of FIG. 4A in parallel. 
     Figure. 5 illustrates an embodiment of a signal generator 500 of the present invention when the inputted logic transition detection signal VP is four bits V p0  -V p3 . The signal generator 500 includes a PMOS transistor PM11, the source of which is applied with a supply voltage V cc  and the gate of which is applied with the clock signal CLK, series NMOS transistors NM 11  -NM 14 , NM 21  -NM 23 , NM 31  -NM 33 , NM 41  -NM 43 , and NM 51  -NM 53  which are respectively connected in parallel between the drain of the PMOS transistor PM11 and ground, and a NAND gate NA1 for NANDing the signal outputted from the drain of the PMOS transistor PM11 with the transition bit selecting signal SB i . Here, a first-bit signal V p0  of the four bit-wide logic transition detection signal V p  is applied to the gates of the NMOS transistors NM 11 , NM 21 , NM 31 , and NM 41 , respectively, and a second-bit signal V p1  of the logic transition detection signal VP is applied to the gates of NMOS transistors NM 12 , NM 22 , NM 42 , and NM 51 , respectively , and a third-bit signal V p2  of the logic transition detecting signal V p  is applied to the gates of NMOS transistors NM 13 , NM 23 , NM 32 , and NM 52 , respectively, and a fourth-bit V p3  of the transition detection signal V p  is applied to the gates of the NMOS transistors NM 14 , NM 33 , NM 43 , and NM 53 , respectively. 
     In addition, a signal generator 500 of the present invention, although not illustrated here, could include a plurality of AND gates for receiving the output signal V p  of a logic transition detector 400, and a plurality of OR gates for receiving the output signal V p  and the transition bit selecting signal SB i . 
     The operation and effect of the operation apparatus of the present invention will now be described in detail. 
     Description of the function of the first operation unit 100, second operation unit 200, and controller 300 will be omitted, since their function is similar to that in the conventional arrangement of FIG. 1. 
     First, an input signal V in  applied to a first operation unit 100 and an externally inputted clock signal CLK are respectively inputted to a logic transition detector 400. The logic transition detector 400 receives the above-mentioned input and clock signals, detects a logic transition by each bit of the input signal V in , and outputs the logic transition detection signal V p  to the signal generator 500. 
     That is, the logic transition detector 400 compares each bit of the input signal V in  with its corresponding bit in the previous input signal, detects the occurrence of a logic state transition, and outputs a logic transition detection signal V p , depending on the consequence of the detection. Here, the logic transition detection signal V p  is outputted in the same number of bits as the bits of the input signal V in , and when a logic transition appears in a bit of an input signal V in , a corresponding bit of the logic transition detection signal V p  becomes high level. When no logic transition occurs in a bit of the input signal V in , a corresponding bit of the logic transition detection signal V p  becomes low level. For example, when the input signal V in  is four bits V in0  -V in3  wide, the corresponding logic transition detection signal V p  becomes four bits V p0  -V p3  wide. 
     To describe in more detail the operation of the logic transition detector 400, an example of a bit of the input signal V in  will be followed with reference to the accompanying drawing of FIG. 4A. 
     As shown in FIG. 4A, the input signal V in0  is applied to input terminal D of the second flip-flop 420. The output signal of the AND gate 450 is applied to the clock input terminal C of the second flip-flop 420. Therefore, in the second flip-flop 420, when the output signal of the AND gate 450 applied to an input terminal C becomes high level, the input signal V in0  applied to the input terminal D is outputted through output terminal Q. The signal outputted through the output terminal Q of the second flip-flop 420 is applied to the input terminal D of the first flip-flop 410, and also to one input terminal of the exclusive OR gate 430. The output signal of the AND gate 450 is applied to the clock input terminal C of the first flip-flop 410. Also in the first flip-flop 410, when the output signal of the AND gate 450 applied to the input terminal C thereof becomes high level, a signal applied to the input signal D thereof is outputted through an output terminal Q thereof. 
     Next, the signal outputted through the output terminal Q of a first flip-flop 410 is applied to the other input terminal of an exclusive OR gate 430. Therefore, the exclusive OR gate 430 exclusively ORs the output signals of the first and second flip-flops 410 and 420, to output the logic transition detection signal V p . 
     For example, when a bit A of an input signal is outputted through the second flip-flop 420, the bit A of the input signal is applied to the D input terminal of the first flip-flop 410 and to one input of the exclusive OR gate 430. Continuously, while a corresponding succeeding present bit of B of the input signal is outputted through a second flip-flop 420, the previous bit A of the input signal is outputted through the first flip-flop 410 and applied to the other input of the exclusive OR gate 430. Therefore, the exclusive OR gate 430 exclusively ORs the previous bit A of the input signal and the present bit B of the input signal. When a logic transition occurs in the input signal, that is, when the bit A is zero (0) and the bit B is one (1), or when the bit A is one (1) and the bit B is zero (0), the exclusive OR gate 430 outputs a high level as the logic transition detection signal V p , indicating that a logic transition occurs in the input signal. But, when no logic transition occurs in the input signal, in other words, when bits A and B are both zero, or both one, the exclusive OR gate 430 outputs a low level as the logic transition detection signal V p , indicating that a logic transition has not occurred in the input signal. 
     Next, the logic transition detection signal V p  outputted from a logic transition detector 400 is applied to a signal generator 500. The signal generator 500 receives the logic transition detection signal V p , and outputs the time control signal V s  in accordance with the value of the externally applied transition bit selecting signal SB i . That is, when the number of bit-wide logic transitions detected in a logic transition detector 400 exceeds a predetermined number set by the transition bit selecting signal SB i , a high level of the time control signal V s  is outputted. When the number of logic transitions is below the predetermined number set by the transition bit selecting signal SB i , a low level of the time control signal V s  is outputted. For example, as shown in FIG. 5, when the input signal V p  is four bits V p0  -V p3  wide, and when the number of logic transition is three (3) or four (4), a high level of the time control signal V s  is outputted, and when the number of logic transitions is zero, one, or two, a low level of the time control signal V s  is outputted. 
     Here, the number of logic transition groups is proportional to the number bits of the transition bit selecting signal SB i . For example, when the transition bit selecting signal SB i  is one bit wide, the number of groups of logic transitions is divided into two, and when the transition bit selecting signal SB i  is two bits wide, the number of groups of logic transitions is divided into four. 
     FIG. 6 is a table showing the output signal V p0  -V p3  of the logic transition detector 400, when the number of logic transitions is divided into two groups, that is, a first group including zero (0), one (1), and two (2) transitions, or three (3) transitions and another group for four transitions (4). 
     Therein, a signal generator 500 which has the construction as in FIG. 5 generates a corresponding time control signal V s  in accordance with the output signal V p  of the logic transition detector 400. In other words, when the output signal V p0  -V p3  has a value according to the table of FIG. 6, since at least one of the five paths which are connected between the drain and ground of the PMOS transistor PM11 is turned on, an electrical potential of the PMOS transistor PM11 becomes low level. After this low level value and the high level of the transition bit selecting signal SB i  are operated by the NAND gate NA1, a high level time control signal V s  is outputted. But, when the value of the logic transition detection signal is not the same as that in the table of FIG. 6, in other words, if the number of high level values is below three (3), the five paths are all shut off. Thus, when the PMOS transistor PM11 is turned on by the clock signal CLK, the supply voltage V cc  applied to the PMOS transistor PM11 is transmitted to the drain. The supply voltage V cc  is operated in accordance with a high level of the transition bit selecting signal SB i  in the NAND gate NA1, and a low level time control signal V s  is outputted. 
     Meanwhile, a controller 300, similar to a conventional controller 30, is enabled in accordance with the control signal CTL, counts the clock CLK, and generates the first and second latch signals VL1 and VL2, and first and second output enable signals OEN1 and OEN2. However, the time gap between the first latch signal VL1 and the first output enable signal OEN1 is determined by the time control signal V s  outputted from a signal generator 500. That is, when the output signal V s  of the signal generator 500 is low level, the controller 300 sets a time gap of `2T` between the first latch signal VL1 and the first output enable signal OEN1, and when the output signal of the signal generator 500 is high level, the controller 300 sets a time gap of `3T` between the first latch signal VL1 and the first output enable signal OEN1. 
     
                       TABLE 2______________________________________                    operation timenumber of input         actual     of the presentbit transition         operating time                    invention______________________________________0, 1, 2       2T         2T3, 4          3T         3T______________________________________ 
    
     In the meantime, the set first latch signal VL1 and the first output enable signal OEN1 are outputted to a first operation unit 100, and a second latch signal VL2 and a second output enable signal OEN2 are outputted to a second operation unit 200. In addition, the first latch signal VL1 is outputted to the AND gate 450 of a logic transition detector 400 to be ANDed with the clock signal CLK, and used as a control signal for determining the operation timing of the flip-flops 410 and 420. 
     Therefore, a first operation unit 100 operates upon the input signal V in  latched in accordance with the first latch signal VL1 from a controller 300, and outputs the operated signal V o1  in accordance with the first output enable signal OEN1. Meanwhile, the second operation unit 200 operates upon the operated output signal V o1  from the first operation unit 100, and outputs an output signal V o2  in accordance with the second output enable signal OEN2 from the controller 300. 
     In other words, operating of the first operation unit 100 doesn&#39;t waste unnecessary time, and transmits the output signal V o1  to a second operation unit 200, due to the latch and enable signals VLs and OENs being outputted from a controller 300 with a variable time difference therebetween. And, the operation of a second operation unit 200 is the same as that of a first operation unit 100. 
     The operation of these signals will be described in detail with reference to FIGS. 7A through 7H. 
     When the input signal V in  of FIG. 7D is applied thereto, a logic transition detector 400 indicates that the number of a logic transition is two (2), by outputting the logic transition detection signal V p  of &#34;1111&#34;, when the input signal V in  transits from &#34;0000&#34; to &#34;1111&#34;. Next, a signal generator 500, to which the logic transition detection signal V p  is inputted, outputs the low level time control signal V s  of FIG. 7H, since the number of logic transitions is below three (3). Therefore, a controller 300 sets a time gap of 2T between the first latch signal VL1 and the first output enable signal OEN1, as shown in FIGS. 7B and 7C. 
     In addition, when the input signal V in  transits from &#34;1100&#34; to &#34;0011&#34;, a logic transition detector 400 outputs the logic transition detection signal V p  of &#34;1111&#34;, as shown in FIG. 7G, which indicates that the number of logic transitions is four (4). Since the number of logic transitions exceeds three (3), as shown in FIG. 7H, a signal generator 500 outputs the high level time control signal V s  to a controller 300. Therefore, the controller 300 sets a 3T time gap between the first latch signal VL1 and the first output enable signal OEN1, as shown in FIGS. 7B and 7C. Accordingly, a first operation 100 outputs the output signal V o1  of FIG. 7E to a second operation unit 200, when the first enable signal OEN1 is inputted thereto. Here, FIG. 7F illustrates the second latch signal VL2 which is enabled at the same time as the first output enable signal OEN1. 
     As described in detail above, whereas in the conventional operation system, an operation time is fixed at the highest value among the possibly required actual operation times, the present invention can advantageously reduce the average operation time, and has the effect of improving an operation efficiency of the system since the operation time is adjusted in accordance with the number of input bit transitions. 
     Although the preferred embodiments of the present invention have been disclosed for illustrative purposes, those skilled in the art will appreciate that various modifications, additions and substitutions are possible, without departing from the scope and spirit of the invention as recited in the accompanying claims.