200 likes | 354 Views
The SRC Arithmetic and Logic Unit. Marcos Mejías Del Valle Carlos Mateo Rojas Daniel Castro Gambedotti The Unbelievables Department of Electrical and Computer Engineering Wednesday, December 15, 2004. Outline. Brief Description Discussion of each Component
E N D
The SRC Arithmetic and Logic Unit Marcos Mejías Del Valle Carlos Mateo Rojas Daniel Castro Gambedotti The Unbelievables Department of Electrical and Computer Engineering Wednesday, December 15, 2004
Outline • Brief Description • Discussion of each Component • Discussion of Integration Process • Conclusions
What is an ALU? • The component of the CPU that performs all arithmetic computations and all comparison and logic operations. • It has direct input and output access to the main memory, the processor controller, and I/O devices in order to operate on data obtained from them.
Shift Unit • In essence, a Universal Parallel-load Shift Register. • It is in charge of all shifting operations within the ALU (SHL, SHR, SHRA and SHC).
Shift Unit (Cont.) • Originally implemented separately by their behavior. • All shift operations were put together into a single unit, controlled by signals from the controller.
Logic Unit • It carries out all logical functions in the instruction set (AND, OR, NOT) • Implemented as a single unit controlled by operation signals from the controller.
Arithmetic Unit • Component that carries out all general arithmetic calculations (ADD, ADDI, SUB, NEG, ADC) as well as location calculations (INC_3, branches, load and store). • Composed of three main blocks: Adder/Subtractor, PC Incrementation Block and Negation Block.
Arithmetic Unit (Adder/Subtractor) • Implemented using the Block Diagram Editor tool in Active HDL. • Carries out ADD, ADDI, ADC and SUB operations from the instruction set.
Arithmetic Unit (INC-3) • Exclusively designed for incrementing the Program Counter. • Implemented in software in terms of its behavior.
Arithmetic Unit (Negation) • Created exclusively for the NEG function; negates the value placed in “A”. • Implemented in software in terms of its behavior.
Integration • All of the separate units were connected and integrated to form the completed system: the ALU. • The Block Diagram Editor tool was used because it was easier and faster for this stage of the project. • Separate Register and Buffer banks were also created and integrated into the design.
Conclusion • The SRC ALU was successfully implemented using VHDL, using a variety of methods. • The ALU is capable of carrying out all logical, comparison and arithmetic operations from the Instruction set, as well as calculating directions for branches, load and store functions. • The ADC function was not implemented internally in the ALU due to unknown problems and inconsistencies in Active HDL.
References • Computer Systems Design and Architecture, 2nd edition, Vincent P. Heuring and Harry F. Jordan, Pearson Prentice Hall, Inc. • Writing Formal Reports: An Approach for Engineering Students in 21st Century, 3rd edition, Nayda G. Santiago and Manuel A. Jimenez • http://www.ece.uprm.edu/~nayda/Courses/arq/Lectures.htm
We’d like to thank The Buhos, for their emotional support and excellent crisis management plan. The ADASEL lab, for providing us with support and a home away from home ADASEL’s chairs for doubling as portable beds The Internet, for providing us all the information (and entertainment) we could ever need MSN Messenger, for bringing us closer even if we are in the same room Domino’s Pizza, for providing catering services Manuelito and Diana, for not driving their mother crazy Jump drives, for giving us space in our account Acknowledgements