Design of ALU Digital Logic and Computer Design by Ravinder Nath Rajotiya - December 15, 2022December 15, 20220 Design of ALU ALU forms one of the important block of a digital computer. It is a multi-operation, combinational circuit. Number of operations supported depend on the complexity of its design. It takes two numbers of n-bit wide as input, performs an operation depending on the function select inputs and produces the output Fn, It also has carry-in input to provide additional functionality and carry-out line which can be part of the result or can act as input to the next stage when the functionality is extended to accommodate numbers with more number of bits. If an ALU has k function select lines, then it will have 2k operations. Figure-1 shows the block diagram of an ALU. Modular design technique can be
Arithmetic Micro-operations Computer Organization and Architecture by Ravinder Nath Rajotiya - March 17, 2021April 28, 20210 Arithmetic Micro-operation RTL notation description Addition R3 <-- R1 + R2 Content of R1 and R2 added, result in R3 Subtraction R3 <-- R1 - R2 Content of R2 subtracted from content of R1 added, result in R3 1’s complement R2 <-- R2’ Content of R2 complemented 2’s complement R2 <-- R2’ +1 2’s complement on the Content of R2 Subtraction using 2’s complement R3 <-- R1 + R2’ + 1 Subtraction using 2’s complement Increment R1 <-- R1+1 An increment micro-operation Decrement R1 <-- R1 - 1 A decrement micro-operation We now describe the arithmetic circuits for performing the above arithmetic micro-operations. A Half adder and full adders are the basic building blocks used in above operation. Half Adder: A half adder is an arithmetic circuit used to add two binary bits. These bits are carry-in and a bit of the number. The symbolic notation