COMPUTER ORGANIZATION and ARCHITECTURE/INTRODUCTION to COMPUTER ORGANIZATION and ARCHITECTURE Copyright © 2012 Lovely Professional University All Rights Reserved
Total Page:16
File Type:pdf, Size:1020Kb
www.lpude.in DIRECTORATE OF DISTANCE EDUCATION COMPUTER ORGANIZATION AND ARCHITECTURE/INTRODUCTION TO COMPUTER ORGANIZATION AND ARCHITECTURE Copyright © 2012 Lovely Professional University All rights reserved Printed by EXCEL BOOKS PRIVATE LIMITED A-45, Naraina, Phase-I, New Delhi-110028 for Directorate of Distance Education Lovely Professional University Phagwara Directorate of Distance Education LPU is reaching out to the masses by providing an intellectual learning environment that is academically rich with the most affordable fee structure. Supported by the largest University1 in the country, LPU, the Directorate of Distance Education (DDE) is bridging the gap between education and the education seekers at a fast pace, through the usage of technology which significantly extends the reach and quality of education. DDE aims at making Distance Education a credible and valued mode of learning by providing education without a compromise. DDE is a young and dynamic wing of the University, filled with energy, enthusiasm, compassion and concern. Its team strives hard to meet the demands of the industry, to ensure quality in curriculum, teaching methodology, examination and evaluation system, and to provide the best of student services to its students. DDE is proud of its values, by virtue of which, it ensures to make an impact on the education system and its learners. Through affordable education, online resources and a network of Study Centres, DDE intends to reach the unreached. 1 in terms of no. of students in a single campus SYLLABUS Computer Organization and Architecture/Introduction to Computer Organization and Architecture Objectives: The objectives of this course are: To understand how computers are constructed out of a set of functional units To understand how these functional units operate, interact and communicate To understand the factors and trade-offs that affect computer performance To understand concrete representation of data at the machine level To understand how computations are actually performed at the machine level To understand how problems expressed by humans are expressed as binary strings in a machine DCAP502 COMPUTER ORGANIZATION AND ARCHITECTURE Sr. No. Description 1. Review of Basics of Digital Electronics: Codes, logic gates, flip flops, registers, counters, multiplexer, demultiplexer, decoder, and encoder. 2. Integers Representation: Signed Magnitude, 1s & 2s Complement) & Real numbers (Fixed point & Floating Point representation), Register Transfer and Micro operations: Register transfer language Bus & memory transfer, logic micro operation, shift micro operation, Arithmetic Logic Shift Unit 3. Basic Computer Organization: Instruction codes, computer instructions, timing & control, instruction cycles 4. Memory reference instruction, Input/output & interrupts, Design of basic computer Control Unit: Hardwired vs. micro programmed control unit, Control Memory, Address Sequencing, Micro program Sequencer 5. Central Processing Unit: General register organization, stack organization, instruction format, Addressing Modes Data transfer & manipulation, program control, RISC, CISC. 6. Introduction to Parallel Processing: Pipelining, Instruction pipeline, RISC Pipeline, Vector Processing 7. Computer Arithmetic: Addition, Subtraction, Multiplication & Division Algorithm(s), Decimal arithmetic units & Operations. 8. Input-Output Organization: Peripheral devices, I/O interface, data transfer schemes, program control, interrupt, DMA transfer, I/O Processor 9. Memory Organization Concepts: Cache & Virtual memory 10. Multiprocessors: Characteristics, Interconnection Structures, Interprocessor Communication and synchronization DCAP206 INTRODUCTION TO COMPUTER ORGANIZATION & ARCHITECTURE Sr. No. Description 1. Tools for course understanding: Awareness of ISA bus interface, a popular bus architecture used in IBM and compatible personal computer systems. Digital Logic Circuits: Digital computers, Logic gates, Boolean Algebra, Map Simplification, Half Adder, Full Adder, Flip flops – SR, JK, D, T, Edge triggered flip flops, Sequential Circuits 2. Digital Components: Integrated circuits, Decoders – NAND gate decoder, Encoders, Multiplexers, Demultiplexers, Registers, Shift registers, Bidirectional Register with parallel load, Binary counters, Memory Unit – RAM, ROM, Types of ROMs 3. Data Representation: Number systems – decimal, octal, hexadecimal, Complement – (r-1)’s complement, r’s complement, Fixed point representation, floating point representation, Gray code, Decimal codes, alphanumeric codes, Error detection codes 4. Register Transfer and Micro-operations: Register transfer language, Register transfer, Bus and memory transfers – three state bus buffers, Arithmetic micro-operations – binary adder, binary adder subtractor, binary incrementer, arithmetic circuit 5. Logic micro-operations and its hardware implementation, Shift micro-operations and hardware implementation, Arithmetic Logic Shift unit, Hardware description languages 6. Basic Computer Organization and Design: Instruction Codes, Stored program organization, Computer registers, Common bus system, Computer instructions, Timing and Control, Instruction cycle, Memory reference instructions, Input output and interrupt, complete design of basic computer 7. Central Processing Unit: General register organization, control word, Stack organization, register stack, memory stack, Instruction formats – three address, two address, one address, zero address instructions, Addressing modes, Data transfer and manipulation, arithmetic, logical, bit manipulation, Program control, Reduced Instruction Set Computer (RISC), CISC characteristics 8. Input-Output Organization: Input output interface, I/O bus and interface modules, I/O vs memory bus, Isolated vs Memory mapped I/O 9. Asynchronous data transfer, handshaking, Programmed I/O, Interrupt-initiated I/O, Priority Interrupt – Daisy chaining, parallel priority, priority encoder, interrupt cycle, DMA controller and transfer 10. Memory Organization: Memory hierarchy, RAM, ROM chips, memory address map, Associative memory, Cache memory, Virtual memory, Memory management hardware CONTENTS Unit 1: Review of Basics of Digital Electronics 1 Unit 2: Devices Used in Digital Electronics 23 Unit 3: Data Representation and Data Transfer 43 Unit 4: Computer Organization I 65 Unit 5: Computer Organization II 81 Unit 6: Control Unit 95 Unit 7: Central Processing Unit 111 Unit 8: Addressing Modes 125 Unit 9: Computer Arithmetic I 143 Unit 10: Computer Arithmetic II 155 Unit 11: Input/Output Organization 165 Unit 12: Memory Organization Concepts 185 Unit 13: Multiprocessors 205 Unit 14: Introduction to Parallel Processing 229 Unit 1: Review of Basics of Digital Electronics Notes Unit 1: Review of Basics of Digital Electronics CONTENTS Objectives Introduction 1.1 Codes in Digital Electronics 1.1.1 Classification of Binary Codes 1.2 Logic Gates 1.3 Summary 1.4 Keywords 1.5 Self Assessment 1.6 Review Questions 1.7 Further Readings Objectives After studying this unit, you will be able to: • Discuss the codes in digital electronics • List the functions of different logic gates • Discuss the truth table for all the logic gates Introduction Digital electronics is a field of computer science. It deals with devices that are used to carry out computer applications. In digital electronics, we use two-state or binary logic. The two logic states are “0” (low) and “1” (high). Computer uses binary number system for its operations. Digital electronics represents the two binary numbers, 1 and 0, using two voltage levels in a device called a logic gate. Sometimes the two states can also be represented using Boolean logic functions, “true” or “false” states, or using an “on” or “off” state. Logic gates are important components of a digital circuit. A logic gate takes two inputs and generates a single output. In this unit we will discuss about the basic logic gates and their corresponding truth tables. 1.1 Codes in Digital Electronics Basically, digital data is represented, stored, and transmitted as groups of binary digits which are called bits. The group of bits is known as binary code. Binary codes are used in computers as they allow computers to perform complex calculations quickly and efficiently. Binary codes are used in financial, commercial, and industrial applications. To understand how binary codes are applied in these fields, we first have to understand the classification of binary codes. 1.1.1 Classification of Binary Codes Binary codes can be represented as numbers and letters of the alphabets as well as many special characters and control functions. They are classified as numeric or alphanumeric codes. Numeric codes are used to represent numbers, whereas alphanumeric codes are used to represent alphabetic letters and numerals. LOVELY PROFESSIONAL UNIVERSITY 1 Computer Organization and Architecture/Introduction to Computer Organization and Architecture Notes The binary codes are classified as shown in figure 1.1. Figure 1.1: Classification of Binary Codes As mentioned earlier, numeric codes are used to represent numbers. The following are the numeric codes: 1. Weighted Binary Codes: Weighted binary codes are those which follow the positional weighting principles. In weighted codes, each position of the number represents a specific weight. For example, in decimal code, if the number is 345, then the weight of 3 is 100, 4 is 10, and 5 is 1. In the 8421 weighted binary code, each digit has a weight of 8, 4, 2 or 1 corresponding to its position.