ECS notes.pdf
Document Details
Tags
Full Transcript
Unit-1: REGISTER TRANSFER AND MICROOPERATIONS CONTENTS: Register Transfer Language Register Transfer Bus And Memory Transfers Types of Micro-operations Arithmetic Micro-operations Logic Micro-operations Shift Micro-operations Arithmetic...
Unit-1: REGISTER TRANSFER AND MICROOPERATIONS CONTENTS: Register Transfer Language Register Transfer Bus And Memory Transfers Types of Micro-operations Arithmetic Micro-operations Logic Micro-operations Shift Micro-operations Arithmetic Logic Shift Unit BASIC DEFINITIONS: A digital system is an interconnection of digital hardware modules. The modules are registers, decoders, arithmetic elements, and control logic. The various modules are interconnected with common data and control paths to form a digital computer system. Digital modules are best defined by the registers they contain and the operations that are performed on the data stored in them. The operations executed on data stored in registers are called microoperations. A microoperation is an elementary operation performed on the information stored in one or more registers. The result of the operation may replace the previous binary information of a register or may be transferred to another register. Examples of microoperations are shift, count, clear, and load. The internal hardware organization of a digital computer is best defined by specifying: 1. The set of registers it contains and their function. 2. The sequence of microoperations performed on the binary information stored in the registers. 3. The control that initiates the sequence of microoperations. REGISTER TRANSFER LANGUAGE: The symbolic notation used to describe the micro-operation transfer among registers is called RTL (Register Transfer Language). The use of symbols instead of a narrative explanation provides an organized and concise manner for listing the micro-operation sequences in registers and the control functions that initiate them. COMPUTER ARCHITECTURE AND ORGANIZATION Page 1 A register transfer language is a system for expressing in symbolic form the microoperation sequences among the registers of a digital module. It is a convenient tool for describing the internal organization of digital computers in concise and precise manner. Registers: Computer registers are designated by upper case letters (and optionally followed by digits or letters) to denote the function of the register. For example, the register that holds an address for the memory unit is usually called a memory address register and is designated by the name MAR. Other designations for registers are PC (for program counter), IR (for instruction register, and R1 (for processor register). The individual flip-flops in an n-bit register are numbered in sequence from 0 through n-1, starting from 0 in the rightmost position and increasing the numbers toward the left. Figure 4-1 shows the representation of registers in block diagram form. The most common way to represent a register is by a rectangular box with the name of the register inside, as in Fig. 4-1(a). The individual bits can be distinguished as in (b). The numbering of bits in a 16-bit register can be marked on top of the box as shown in (c). 16-bit register is partitioned into two parts in (d). Bits 0 through 7 are assigned the symbol L (for low byte) and bits 8 through 15 are assigned the symbol H (for high byte). The name of the 16-bit register is PC. The symbol PC (0-7) or PC (L) refers to the low-order byte and PC (8-15) or PC (H) to the high-order byte. Register Transfer: Information transfer from one register to another is designated in symbolic form by means of a replacement operator. The statement R2← R1 denotes a transfer of the content of register R1 into register R2. It designates a replacement of the content of R2 by the content of R1. By definition, the content of the source register R 1 does not change after the transfer. If we want the transfer to occur only under a predetermined control condition then it can be shown by an if-then statement. if (P=1) then R2← R1 COMPUTER ARCHITECTURE AND ORGANIZATION Page 2 P is the control signal generated by a control section. We can separate the control variables from the register transfer operation by specifying a Control Function. Control function is a Boolean variable that is equal to 0 or 1. control function is included in the statement as P: R2← R1 Control condition is terminated by a colon implies transfer operation be executed by the hardware only if P=1. Every statement written in a register transfer notation implies a hardware construction for implementing the transfer. Figure 4-2 shows the block diagram that depicts the transfer from R1 to R2. The n outputs of register R1 are connected to the n inputs of register R2. The letter n will be used to indicate any number of bits for the register. It will be replaced by an actual number when the length of the register is known. Register R2 has a load input that is activated by the control variable P. It is assumed that the control variable is synchronized with the same clock as the one applied to the register. As shown in the timing diagram, P is activated in the control section by the rising edge of a clock pulse at time t. The next positive transition of the clock at time t + 1 finds the load input active and the data inputs of R2 are then loaded into the register in parallel. COMPUTER ARCHITECTURE AND ORGANIZATION Page 3 P may go back to 0 at time t+1; otherwise, the transfer will occur with every clock pulse transition while P remains active. Even though the control condition such as P becomes active just after time t, the actual transfer does not occur until the register is triggered by the next positive transition of the clock at time t +1. The basic symbols of the register transfer notation are listed in below table Symbol Description Examples Letters(and numerals) Denotes a register MAR, R2 Parentheses ( ) Denotes a part of a register R2(0-7), R2(L) Arrow