February 2011Bachelor of Science in Information Technology (BScIT) – Semester 2/ Diploma in Information Technology (DIT) – Semester 2 BT0068 – Computer Organization and Architecture – 4 Credits (Book ID: B0952) Assignment Set – 1 (60 Marks)Answer all questions 10 x 6 = 60 1. Convert the following decimal numbers to binary: a. 1231 b. 673 c. 1998Ans:-a. 10011001111b. 1010100001c. 11111001110 2. Give and explain one stage of logic circuit.Ans:- Logic Microoperations:- Logic micro operations specify binary operations forstrings of bits stored in registers. These operations consider each bit of the registerseparately and treat them as binary variables. For example, the exclusive-OR microoperation with the contents of two registers R1 and R2 is symbolized by the statementIt specifies a logic micro operation to be executed on the individual bits of the registersprovided that the control variable P = 1. As a numerical example, assume that eachregister has four bits. Let the content of R1 be 1010 and the content of R2 be 1100.The exclusive-OR micro operation stated above symbolizes the following logiccomputation:1010 Content of R11100 Content of R2
0110 Content of R1 after P = 1The content of R1, after the execution of the micro operation, is equal to the bit-by-bitexclusive-OR operation on pairs of bits in R2 and previous values of R1. The logicmicro operations are seldom used in scientific computations, but they are very usefulfor bit manipulation of binary data and for making logical decisions.Special symbols will be adopted for the logic micro operations OR, AND, andcomplement, to distinguish them from the corresponding symbols used to expressBoolean functions. The symbol V will be used to denote an OR micro operation andthe symbol ʌ to denote an AND micro operation. The complement micro operation isthe same as the 1’s complement and uses a bar on top of the symbol that denotes theregister name. By using different symbols, it will be possible to differentiate between alogic micro operation and a control (or Boolean) function. Another reason for adoptingtwo sets of symbols is to be able to distinguish the symbol +, when used to symbolizean arithmetic plus, from a logic OR operation. Although the + symbol has twomeanings, it will be possible to distinguish between them by noting where the symboloccurs. When the symbol + occurs in a micro operation, it will denote an arithmeticplus. When it occurs in a control (or Boolean) function, it will denote an OR operation.We will never use it to symbolize an OR micro operation. For example, in thestatement.. 3. Explain Von Neumann Architecture.Ans:-IAS is the first digital computer in which the von Neumann Architecture was employed.The general structure of the IAS computer is as shown in figure 3.10:
• A main memory, which stores both instructions and data • An arithmetic and logic unit (ALU) capable of operating on binary data • A control unit, which interprets the instructions in memory and causes them to be executed • Input and Output (I/O) equipment operated by the control unitThe von Neumann Architecture is based on three key concepts: 1. Data and instructions are stored in a single read-write memory. 2. The content of this memory is addressable by location, without regard to the type of data contained therein. 3. Execution occurs in a sequential fashion unless explicitly modified from one instruction to the next 4. Compare the register organizations of 8085, Z8000 and MC68000.Ans:- It is very much instructive to examine and compare the register organization ofcomparable systems. In this section we will discuss the register organization of 16-bitmicroprocessors that were developed more or less at the same time.The register organization of Z8000 machine. Here only purely internal registersstructure is given and memory address registers are not shown. Z8000 consists of
sixteen 16-bit general purpose registers, which can be used for data, address andindexing. The designers of this machines felt that it was useful to provide aregularized, general set of registers than to save instruction bits by using specialpurpose registers. Further the way the functions are assigned to these registers is theresponsibility of the programmer. There might be different functional breakdown fordifferent applications. A segmented address space uses 7-bit segment number and a16-bit offset. It uses two registers to hold a single address. There are two otherregisters called stack pointers that are necessary for stack module. One register usedfor system mode and one for normal mode.MC68000 register organization:-This machine uses a structure that falls between theZilog Z8000 and Intel 8086. The register organization of MC68000 is as shown infigure 4.8 The MC6800 machine partitions the 32-bit registers into eight data registersand nine address registers. The data registers are used in data manipulations and arealso used in addressing only as index registers. The width of data register allows 8-bit,16-bit and 32-bit data operations depending upon the opcode. The address registerscontain a 32-bit address. It does not support segmentation. Two of the addressregisters are used as stack pointers: One for the users and one for the operatingsystem, depending upon the current execution mode. Both the stack pointers arenumbered as seven i.e., A7 as only one can be used at a time. The MC68000 also hasprogram counter and status register as in the other two machines. The programcounter is 32-bit register and status register is 16-bit. Like Zilog the Motorola team alsosupports a regular instruction set with no special purpose registers. For the purpose ofcode efficiency they divided the registers into functional components, saving one bit ateach registers. 5. Give the advantages and disadvantages of physical and functional buses.Ans:- Data Bus: A bus, which carries a word to or from memory, is called data bus.Its width is equal to the word length of the memory. Also, it provides a means formoving data between the different modules of a system. The data bus usually consistsof 8, 16 or 32 separate lines. The number of lines implies the data bus..Address bus: A bus that is used to carry the address of the data in the memory andits width is equal to the number of bits in the Memory Address Register (MAR) of thememory.
Example: If a computer memory has 64K, 32-bit words, then the data bus will be 32-bits wide and the address bus will be 16-bits wide.Control bus: A bus that is used to control the access carries the control signalsbetween the various units of the computer. The processor has to send commandsREAD and WRITE to the memory which requires single wire. A START command isnecessary for the I/O units. All these signals are carried by the control bus.Types of Control Lines· Memory Write: Causes data on the bus (data bus) to be written into the addressedlocation.· Memory Read: Causes data from the addressed location to be placed on the bus(data bus).· I/O Write: Causes data on the data bus to be output to the addressed I/O port.· I/O Read: Causes data from the addressed I/O port to be placed on the bus (databus).· Transfer ACK: Indicates that data has been accepted from or placed on the bus.· Bus Request: Indicates that a module needs to gain control of the bus.· Bus Grant: Indicates that a requesting module has been granted control of the bus.· Interrupt Request: Indicates that an interrupt is pending.· Interrupt ACK: Acknowledges that the pending interrupt has been recognized.· Clock: Used to synchronize operations.· Reset: Initializes all modules. 6. Explain different types of binary codes.Ans:-
7. Give and explain the block diagram of the bus system with four registers.Ans:- 8. Explain the System Bus structure. 9. Explain the register organization of 8086.Ans:- 8086 register organization:- In this machine every register is a special purposeregister. There are some registers that also serve as general purpose registers. The8086 machine contains four 16-bit data registers that are accessible on a byte or 16-bitbasis. It also has four 16-bit pointers and index registers. The data registers can beused as general purpose registers in some instructions. In others registers are usedimplicitly.Example: A multiply instruction always uses accumulator. The four pointer registerseach with segment offset are also used in a number of operations implicitly. There arealso four segment registers. Three of these segment registers are used in a dedicated,implicit way to point to the segment of the current instruction, a segment containingdata and a segment containing a stack. This type of structure is useful in branchoperations. The dedicated and implicit uses provide for compact encoding at the costof reduced flexibility. The 8086 also includes an instruction pointer and a set of 1 bitstatus and control flags. 10. Explain the single bus structure.Ans:- Single Bus System:- In this type of inter-connection, the three units share asingle bus. Hence the information can be transferred only between two units at a time.Here the I/O units use the same memory address space. This simplifies programmingof I/O units as no special I/O instructions are needed. This is one of advantages ofsingle bus organization.
The transfer of information over a bus cannot be done at a speed comparable to theoperating speed of all the devices connected to the bus. Some electromechanicaldevices such as keyboards and printers are very slow whereas disks and tapes areconsiderably faster. Main memory and processors operate at electronic speeds. Sinceall the devices must communicate over the bus, it is necessary to smooth out thedifferences in timings among all the devices.A common approach is to include buffer register with the devices to hold theinformation during transfers. To illustrate this let us take one example. Consider thetransfer of an encoded character from the processor to a character printer where it isto be printed. The processor sends the character to the printer output register over thebus. Since buffer is an electronic register this transfer requires relatively little time.Now the printer starts printing. At this time bus and the processor are no longerneeded and can be released for other activities. Buffer register is not available forother transfers until the process is completed. Thus buffer register smoothes out thetiming differences between the processor, memory and I/O devices. This allows theprocessor to switch rapidly from one device to another interweaving its processingactivity with data transfer involving several I/O devices.
February 2011Bachelor of Science in Information Technology (BScIT) – Semester 2/ Diploma in Information Technology (DIT) – Semester 2 BT0068 – Computer Organization and Architecture – 4 Credits (Book ID: B0952) Assignment Set – 2 (60 Marks)Answer all questions 10 x 6 = 60 1. Give the details of data types specified for VAX & IBM 370 machines.Ans:- Logical Data:- With logical data, memory can be used most efficiently for thisstorage. Logical values are also called as Boolean values which are 1 = true,0 = false.IBM 370 Data types:- The IBM S/370 architecture provides the following data types.· Binary integer: Binary integer may be either unsigned or signed. Signed binaryintegers are stored in 2’s compliment form. Allowable lengths are 16 and 32 bits.· Floating point: Floating point numbers of length 32, 64, and 128 bits are allowed.All use 7-bit exponent field.· Decimal: Arithmetic on packed decimal integers is provided. The length is from 1 to16 bytes. The rightmost 4 bits of the rightmost byte hold the sign. Hence signednumbers from 1 to 31 decimal digits can be represented.· Binary logical: Operations are defined for data units of length 8, 32, and 64 bits.And variable length logical data of up to 256 bytes.· Character: EBCDIC is used.VAX Data types:- The VAX provides an impressive array of data types. It is a byteoriented machine. All data types are in terms of bytes including 16-bit word, 32-bit long
word, and the 64-bit quad-word, and even the 128 bit octa-word. The data type of VAXmachine provides the following five types of data.· Binary integer: Binary integers are usually considered as in 2’s complement form.However they can be considered and operated on unsigned integers. Allowablelengths are 8, 16, 32, 64, and 128 bits.· Floating point: It provides four different types of representations. They are· F: 32 bits with an 8-bit exponent· D: 64 bits with an 8-bit exponent· G: 64 bits with an 11-bit exponent· H: 128 bits with an 15-bit exponentThe F type is normal or default representation. D is usual double precisionrepresentation. G and H are provided for variety of applications to give successivelyincreasing range and precision over F.· Decimal: Arithmetic on packed decimal integers is provided. Two formats areprovided.Packed decimal strings: The length is from 1 to 16 bytes with 4 bits holding the sign.Unpacked numeric strings: Stores 1 digit in ASCII representation, per byte with up to31 bytes of length.· Variable bit field: These are small integers packed together in large data unit. A bitfield is specified by three operands: address of byte containing the start of field,starting bit position within the byte, the length in bits of the field. This data type is usedto increase memory efficiency.· Character: ASCII is used.
2. Discuss various number representations in a computer system.Ans:- Number Representations:- Computers are built using logic circuits that operateon information represented by two valued electrical signals. We label the two valuesas 0 and 1; and we define the amount of information represented by such a signal as abit of information, where bit stands for binary digit. The most natural way to representa number in a computer system is by a string of bits, called a binary number. A textcharacter can also be represented by a string of bits called a character code. We willfirst describe binary number representations and arithmetic operations on thesenumbers, and then describe character representations.Non-negative Integers:- The easiest numbers to represent are the non-negativeintegers.Negative Integers:-Things are easy as long as we stick to non-negative integers.They become more complicated when we want to represent negative integers as well.In binary arithmetic, we simply reserve one bit to determine the sign. In the circuitry foraddition, we would have one circuit for adding two numbers, and another forsubtracting two numbers. The combination of signs of the two inputs would determinewhich circuit to use on the absolute values, as well as the sign of the output. While thismethod works, it turns out that there is one that is much easier to deal with byelectronic circuits. This method is called the ‘two’s complement’ method. It turns outthat with this method, we do not need a special circuit for subtracting two numbers. Inorder to explain this method, we first show how it would work in decimal arithmetic withinfinite precision. Then we show how it works with binary arithmetic, and finally how itworks with finite precision.Infinite-Precision Ten’s Complement:- Imagine the odometer of an automobile. Ithas a certain number of wheels, each with the ten digits on it. When one wheel goesfrom 9 to 0, the wheel immediately to the left of it advances by one position.Finite-Precision Ten’s Complement:-What we have said in the previous sectionworks almost as well with a fixed bounded number of odometer wheels
Finite-Precision Two’s Complement:- So far, we have studied the representation ofnegative numbers using ten’s complement. In a computer, we prefer using base tworather than base ten.Rational Numbers:-Integers are useful, but sometimes we need to compute withnumbers that are not integer.An obvious idea is to use rational numbers. Manyalgorithms, such as the simplex algorithm for linear optimization, use only rationalarithmetic whenever the input is rational. There is no particular difficulty in representingrational numbers in a computer. It suffices to have a pair of integers, one for thenumerator and one for the denominator. To implement arithmetic on rational numbers,we can use some additional restrictions on our representation. We may, for instance,decide that:· Positive rational numbers are always represented as two positive integers (the otherpossibility is as two negative numbers),· Negative rational numbers are always represented with a negative numerator and apositive denominator (the other possibility is with a positive numerator and a negativedenominator),· The numerator and the denominator are always relative prime (they have nocommon factors).Such a set of rules makes sure that our representation is canonical, i.e., that therepresentation for a value is unique, even though, a priori, many representations wouldwork.Circuits for implementing rational arithmetic would have to take such rules intoaccount. In particular, the last rule would imply dividing the two integers resulting fromevery arithmetic operation with their largest common factor to obtain the canonicalrepresentation.Rational numbers and rational arithmetic is not very common in the hardware of acomputer. The reason is probably that rational numbers don’t behave very well withrespect to the size of the representation. For rational numbers to be truly useful, theircomponents, i.e., the numerator and the denominator both need to be arbitrary-
precision integers. As we have mentioned before, arbitrary precision anything does notgo very well with fixed-size circuits inside the CPU of a computer. 3. Explain the addition of two floating point numbers with examples.Ans:- The steps of a floating-point addition:1. The exponents of the two floating-point numbers to be added are compared to findthe number with the smallest magnitude.2. The significant of the number with the smaller magnitude is shifted so that theexponents of the two numbers agree.3. The significants are added.4. The result of the addition is normalized.5. Checks are made to see if any floating-point exceptions occurred during theaddition, such as overflow.6. Rounding occurs.Floating-Point Addition ExampleExample: s = x + y· numbers to be added are x = 1234.00 and y = -567.8· these are represented in decimal notation with a mantissa (significand) of four digits· six stages (A – F) are required to complete the addition. 4. Discuss the organization of main memory.+Ans:- Main Memory:- The main memory stores data and instructions. Main memoriesare usually built from dynamic IC’s known as dynamic RAMs. These semiconductor
ICs can also implement static memories referred to as static RAMs (SRAMs). SRAMsare faster but cost per bit is higher. These are often used to build caches.Types of Random-Access Semiconductor Memory:Dynamic RAM (DRAM): Example: Charge in capacitor. It requires periodic refreshing.Static RAM (SRAM): Example: Flip-flop logic-gates. Applying power is enough (noneed for refreshing). Dynamic RAM is simpler and hence smaller than the static RAM.Therefore they are denser and less expensive. But it requires supporting refreshcircuitry. Static RAMs are faster than dynamic RAMs.ROM: The data is actually wired in the factory. It can never be altered.PROM: Programmable ROM. It can only be programmed once after its fabrication. Itrequires special device to program.EPROM: Erasable Programmable ROM. It can be programmed multiple times. Wholecapacity need to be erased by ultraviolet radiation before a new programming activity.It cannot be partially programmed.EEPROM: Electrically Erasable Programmable ROM. Erased and programmedelectrically. It can be partially programmed. Write operation takes considerably longertime compared to read operation.Each more functional ROM is more expensive to build, and has smaller capacity thanless functional ROM’s.OrganizationBasic element of semiconductor memory is the memory cell. All semiconductormemory cells have certain properties:· Have two stable states that represent binary 0 and 1.· Capable of being written into (at least once), to set the state.
· Capable of being read to sense the state.Individual cells can be selected for reading and writing operations.The cell has three functional terminals which are shown in figure 9.1. The selectterminals selects a cell for read or write operation, the control indicates read or write,and the third terminal is used to write into the cell, that is to set the state of the cell to 0or 1. Similarly for read operation the third terminal is used to output the state of thecell. 5. Explain various replacement algorithms.Ans:- Replacement algorithms:- For any set associative mapping a replacementalgorithm is needed. The most common algorithms are discussed here. When a newblock is to be brought into the cache and all the positions that it may occupy are full,then the cache controller must decide which of the old blocks to overwrite. Becausethe programs usually stay in localized areas for a reasonable period of time, there ishigh probability that the blocks that have been referenced recently will be referencedagain soon. Therefore when a block is to be overwritten, the block that has notreferenced for the longest time is overwritten. This block is called least-recently-usedblock (LRU), and the technique is called the LRU replacement algorithm. In order touse the LRU algorithm, the cache controller must track the LRU block as computationproceeds.There are several replacement algorithms that require less overhead than LRUmethod. One method is to remove the oldest block from a full set when a new blockmust be brought in. This method is referred to as FIFO. In this technique no updatingis needed when hit occurs. However, because the algorithm does not consider the
recent patterns of access to blocks in the cache, it is not effective as LRU approach inchoosing the best block to remove. There is another method called least frequentlyused (LFU) that replaces that block in the set which has experienced the fewerreferences. It is implemented by associating a counter with each slot. Yet anothersimplest algorithm called random, is to choose a block to be overwritten in random. = 6. Discuss the different categories of instructions.Ans:- In most modern CPU’s, the first byte contains the opcode, sometimes includingthe register reference in some of the instructions. The operand references are in thefollowing bytes.The different categories of instructions is given below:-Example: High level language statement: X = X + YIf we assume a simple set of machine instructions, this operation could beaccomplished with three instructions: (assume X is stored in memory location 624, andY in memory loc. 625.)1. Load a register with the contents of memory location 624.2. Add the contents of memory location 625 to the register,3. Store the contents of the register in memory location 624.As seen, a simple "C" (or BASIC) instruction may require 3 machine instructions.As we have seen before, the instructions fall into one the following four categories:· Data processing: Arithmetic and logic instructions.· Data storage: Memory instructions.· Data movement: I/O instructions.· Control: Test and branch instructions.
Number of Addresses:- Virtually all arithmetic and logic operations are either unary(one operand) or binary (two operands). The result of an operation must be stored,suggesting a third address. Finally, after the completion of an instruction, the nextinstruction must be fetched, and its address is needed.This line of reasoning suggests that an instruction could be required to contain 4address references: two operands, one result, and the address of the next instruction.In practice, the address of the next instruction is handled by the Program Counter(PC); therefore most instructions have one, two or three operand addresses. Three-address instruction formats are not common, because they require a relatively longinstruction format to hold three address references. 7. Explain various operations of ALU.Ans:- The ALU is the part of the CPU that actually performs arithmetic and logical operationson data. All of the other elements of the computer system – control unit, registers, memory, I/O– are there mainly to bring data into ALU for it to process and then take the results back out.ALU Inputs and OutputsThe inputs and outputs of ALU are shown in figure 7.1. The inputs to the ALU are the controlsignals generated by the control unit of CPU, and the registers of the CPU where the operandsfor the manipulation of data are stored. The output is a register called status word or flagregister which reflects the result and the registers of the CPU where the result can be stored.Thus data are presented to the ALU in registers, and the results of an operation are also storedin registers. These registers are connected by signal paths to the ALU. ALU does not directlyinteract with memory or other parts of the system (e.g. I/O modules), it only interacts directlywith registers. An ALU like all other electronic components of a computer is based on the useof simple digital devices that store binary digits and perform Boolean logic operations.The control unit is responsible for moving data to memory or I/O modules. Also, it is thecontrol unit that signals all the operations that happen in the CPU. The operations, functionsand implementation of Control Unit will be discussed in the tenth unit.
In this unit we will concentrate on the ALU. An important part of the use of logic circuits is forcomputing various mathematical operations such as addition, multiplication, trigonometricoperations, etc. Hence we will be discussing the arithmetic involved in using ALU.First, before discussing the computer arithmetic we must have a way of representing numbersas binary data. 8. Discuss the different formats of floating point numbers.Ans:- Floating Point Numbers:- Instead of using the obvious representation of rationalnumbers presented in the previous section, most computers use a different representation of asubset of the rational numbers. We call these numbers floating-point numbers.Floating-point numbers use inexact arithmetic, and in return require only a fixed-sizerepresentation. For many computations (so-called scientific computations, as if othercomputations weren’t scientific) such a representation has the great advantage that it is fast,while at the same time usually giving adequate precision.There are some (sometimes spectacular) exceptions to the “adequate precision” statement in theprevious paragraph, though. As a result, an entire discipline of applied mathematics, callednumerical analysis, has been created for the purpose of analyzing how algorithms behave withrespect to maintaining adequate precision, and of inventing new algorithms with betterproperties in this respect.The basic idea behind floating-point numbers is to represent a number as mantissa and anexponent, each with a fixed number of bits of precision. If we denote the mantissa with m andthe exponent with e, then the number thus represented is m * 2e.Again, we have a problem that a number can have several representations. To obtain acanonical form, we simply add a rule that m must be greater than or equal to 1/2 and strictlyless than 1. If we write such a mantissa in binal (analogous to decimal) form, we always get anumber that starts with 0.1. This initial information therefore does not have to be represented,and we represent only the remaining “binals”.The reason floating-point representations work well for so-called scientific applications are thatwe more often need to multiply or divide two numbers. Multiplication of two floating-pointnumbers is easy to obtain. It suffices to multiply the mantissas and add the exponents. Theresulting mantissa might be smaller than 1/2, in fact, it can be as small as 1/4. In this case,the result needs to be canonicalized. We do this by shifting the mantissa left by one position
and subtracting one from the exponent. Division is only slightly more complicated. Notice thatthe imprecision in the result of a multiplication or a division is only due to the imprecision inthe original operands. No additional imprecision is introduced by the operation itself (exceptpossibly 1 unit in the least significant digit). Floating-point addition and subtraction do nothave this property.To add two floating-point numbers, the one with the smallest exponent must first have itsmantissa shifted right by n steps, where n is the difference of the exponents. If n is greater thanthe number of bits in the representation of the mantissa, the second number will be treated as 0as far as addition is concerned. The situation is even worse for subtraction (or addition of onepositive and one negative number). If the numbers have roughly the same absolute value, theresult of the operation is roughly zero, and the resulting representation may have no correctsignificant digits.The two’s complement representation that we have mentioned above is mostly useful foraddition and subtraction. It only complicates things for multiplication and division. Formultiplication and division, it is better to use a representation with sign + absolute value. Sincemultiplication and division is more common with floating-point numbers, and since they resultin multiplication and division of the mantissa, it is more advantageous to have the mantissarepresented as sign + absolute value. The exponents are added, so it is more common to usetwo’s complement (or some related representation) for the exponent.Usually, computers manipulate data in chunks of 8, 16, 32, 64, or 128 bits. It is thereforeuseful to fit a single floating-point number with both mantissa and exponent in such a chunk. Insuch a chunk, we need to have room for the sign (1 bit), the mantissa, and the exponent. Whilethere are many different ways of dividing the remaining bits between the mantissa and theexponent, in practice most computers now use a norm called IEEE, which mandates the formatsas shown in figure.
9. Explain the characteristics of memory system.Ans:- Characteristics of Memory Systems:- Memory systems are classified according totheir key characteristics. The most important are listed below:LocationThe classification of memory is done according to the location of the memory as:· CPU: The CPU requires its own local memory in the form of registers and also the controlunit requires local memories which are fast accessible. We have already studied this in detail inour earlier discussions.· Internal (main): It is often equated with the main memory. There are other forms of internalmemory. We will be discussing the internal memory in the next coming sections of this unit.External (secondary): It consists of peripheral storage devices like hard disks, magnetic disks,magnetic tapes, CDs etc.CapacityCapacity is one of the important aspects of the memory.
Word size: Word size is the natural unit of organization of memory. The size of the word istypically equal to the number of bits used to represent a number and is equal to the instructionlength. But there are many exceptions. Common word lengths are 8, 16 and 32 bits.Number of words: The addressable unit is the word in many systems. However externalmemory capacity is generally expressed in terms of bytes.Unit of TransferUnit of transfer for internal memory is equal to the number of data lines into and out ofmemory module.· Word: For internal memory, unit of transfer is equal to the number of data lines into and outof the memory module. Need not be equal to a word or addressable unit.· Block: For external memory, data are often transferred in much larger units than a word, andthese are referred to as blocks.Access Method· Sequential: Tape units have sequential access. Data are generally stored in units called"records". Data is accessed sequentially; the records may be passed (or rejected) until therecord that is searched for is found. The access time to a certain record is highly variable.· Direct: Individual blocks or records have a unique address based on physical location. Ablock may contain a group of data. Access is accomplished by direct address to reach generalvicinity, plus sequential searching, counting or waiting to reach the final location. Disk unitshave direct access.· Random: Each addressable location in memory has a unique, physically wired-in addressingmechanism. The time to access a given location is independent of the sequence of prioraccesses and constant. Any location can be selected at random and directly addressed andaccessed. Main memory and some cache systems are random access.· Associative: This is a random-access type of memory that enables one to make a comparisonof desired bit locations within a word for a specified match, and to do this for all wordssimultaneously. Thus, a word is retrieved based on a portion of its contents rather than itsaddress. Some cache memories may employ associative access.Performance
· Access time: For random-access memory, this is the time it takes to perform a read or writeoperation. That is, the time from the instant that an address is presented to the memory to theinstant that data have been stored or made available for use. For non-random-access memory,access time is the time it takes to position the read-write mechanism at the desired location.· Cycle time: Applied to random-access memory. It consists of the access time plus anyadditional time required before a second access can commence.· Transfer rate: This is the rate at which data can be transferred into or out of a memory unit.For random-access memory, it is equal to (1/<cycle-time>).For non-random-access memory, the following relationship holds:Tn = Ta + N/Rwhere Tn = Average time to read or write N bits;Ta = Average access time,N = Number of bitsR = Transfer rate, in bits per second (bps).Physical Type· Semiconductor: Main memory, cache. RAM, ROM.· Magnetic: Magnetic disks (hard disks), magnetic tape units.· Optical: CD-ROM, CD-RW.· Magneto-Optical: The recording technology is fundamentally magnetic. However an opticallaser is used. The read operation is purely optical.Physical Characteristics· Volatile/Non-volatile: In a volatile memory, information decays naturally or is lost whenelectrical power is switched off. In a non-volatile memory, information once recorded remainswithout deterioration until deliberately changed; no electrical power is needed to retain
information. Magnetic-surface memories are nonvolatile. Semiconductor memories may beeither volatile or non-volatile.· Erasable/Non-erasable: Non-erasable memory cannot be altered (except by destroying thestorage unit). ROMs are non-erasable.Memory HierarchyDesign constraints: How much? How fast? How expensive?· Faster access time, greater cost per bit· Greater capacity, smaller cost per bit,· Greater capacity, slower access time. 10. Discuss the physical characteristics of DISK.Ans:- External MemoryMagnetic Disk:- A disk is a circular platter constructed of metal or of plastic coated with amagnetic material. Data are recorded on and later retrieved from the disk via a conducting coilnamed the head. During a read or write operation, the head is stationary while the platter rotatesbeneath it. Writing is achieved by producing a magnetic field which records a magnetic patternon the magnetic surface.Data Organization and Formatting:- depicts the data layout of disk. The head is capable ofreading or writing from a portion of the platter rotating beneath it. This gives rise toorganization of data on the platter in a concentric set of rings called Tracks. Each track is thesame width as the head. Adjacent tracks are separated by gaps that minimize errors due tomisalignment of head. Data is transferred to and from the disk in blocks. And the block issmaller than the capacity of a track. Data is stored in block regions which is an angular part of atrack and is referred to as a sector. Typically 10-100 sectors are there per track. These may beeither of fixed or variable length.
Physical CharacteristicsHead motion : Fixed-head disk (one / track) or Movable-head disk(one/surface).Disk portability : No removable disk vs. Movable disk.Sides : Double-sided vs. single-sided.Platters : Single platter vs. Multiple platter disks.Head mechanism : Contact (floppy), Fixed gap, Aerodynamic gap(Winchester [= hard disk]).Disk Performance Parameters1. Seek time: Time required to move the disk arm (head) to the required track.Where Ts = estimated seek time, n = number of tracks traversed,m = constant that depends on the disk drive, s = startup time.
2. Rotational delay: time required to rotate the disk to get wanted sector beneath the head.3. Transfer time: T = b / (r N)Where T = transfer time, b = number of bytes to be transferred,N = number of bytes on a track, r = rotation speed, in revolutions per second.4. Access time: Ta = total average access time.Ta = Ts + (1 / 2 r) + (b / r N) where Ts = average seek time.RAID1. RAID is a set of physical disk drives viewed by the operating system as a single logicaldrive.2. Data are distributed across the physical drives of an array.3. Redundant disk capacity is used to store parity information, which guarantees datarecoverability in case of a disk failure.Optical Memory & Magnetic Tape are other two external memories.