Speed of memory versus speed of CPU, Computer Engineering

Assignment Help:

In the past there was a large gap between speed of a memory andprocessor. So a subroutine execution for an instruction for illustration floating point addition may have to follow a lengthy instruction sequence. Question is; if we make it a machine instruction then just one instruction fetch will be needed and rest will be done with control unit sequence. So a 'higher level' instruction can be added to machines in an effort to improve performance.

Though this supposition is not very valid in present era where Main memory is supported with Cache technology. Cache memories have decreased the difference between memory and CPU speed and so an instruction execution by a subroutine step may not be that difficult.

Let's explain it with help of an illustration:

Suppose floating point operation ADD A, B needs the subsequent steps (presuming the machine doesn't have floating point registers) and registers being used for exponent are E1, E2, and EO (output); for mantissa M1, M2 and MO (output):

  • Load exponent of A in E1
  • Load mantissa of A in M1
  • Load exponent of B in E2
  • Load mantissa of B in M2
  • Compare E1 and E2

-  If E1 = E2 then MO ← M1 + M2 and EO ← E1

Normalise MO and adjust EO

  • Result will be contained in MO, E1

Else if E1< E2 then find the difference = E2 - E1

  • Shift Right M1, by difference
  • MO ← M1 + M2 and EO ← E2
  • Normalise MO and adjust EO
  • Result is contained in MO, EO

 Else E2 < E1, if so find the difference = E1 - E2

  • Shift Right M2 by difference above
  • MO ← M1 + M2 and EO ← E1
  • Normalise MO and adjust E1 into EO
  • Result is contained in MO, EO

 Store the above results in A

 Checks overflow underflow if any.

If all above steps are coded as one machine instruction then this simple instruction will need many instruction execution cycles. If this instruction is made as part of machine instruction set as: ADDF A,B (Add floating point numbers A and B and store results in A) then it would just be a single machine instruction. All above steps needed will then be coded with help of micro-operations in form of Control Unit Micro-Program. Soonly one instruction cycle (though a long one) may be required. This cycle will need only one instruction fetch. While in the program memory instructions will be fetched.

Though faster cache memory for data and Instruction stored in registers can create an almost similar instruction execution environment. Pipelining can further increase such speed. So creating an instruction as above may not result in faster execution.


Related Discussions:- Speed of memory versus speed of CPU

Transaction, Explain Shadow Copy Scheme in detail.

Explain Shadow Copy Scheme in detail.

Prints the hundreds digit in two integers , Write an application that prin...

Write an application that prints the hundreds digit  in two integers read from the keyboard. For example if the data values are 1456 and 255 respectably, output should include the

Implementation of BUS, Q. Implementation of BUS Construction of a bus s...

Q. Implementation of BUS Construction of a bus system for four registers employing 4×1 multiplexers is displayed below. Every register has four bits which are numbered 0 throug

Analysis of sort bitonic, Analysis of Sort_Bitonic(X) The bitonic sorti...

Analysis of Sort_Bitonic(X) The bitonic sorting network needs log n number of phases for performing task of sorting the numbers. The first n-1 phases of circuit can sort two n/

Internrt application, what is the significance of telecommunications deregu...

what is the significance of telecommunications deregulation for managers and organization

What kind of system do we need to run gimp, Any system able of run Gnome 2,...

Any system able of run Gnome 2, KDE 3.2, Windows 2000, Mac OS X and later versions should be capable to run GIMP. GIMP's biggest appetite is for memory and how much you will requir

Define memory cell, Define memory cell? A memory cell is capable of sto...

Define memory cell? A memory cell is capable of storing single bit of information. It is usually organized in the form of an array

What is a demultiplexer, What is a demultiplexer? Ans: Demultiplex...

What is a demultiplexer? Ans: Demultiplexer: This is a logic circuit which accepts one data input and distributes this over some outputs. This has one data input, m selec

Define about EMS, Define EMS The area at location C8000H-DFFFFFH is oft...

Define EMS The area at location C8000H-DFFFFFH is often free oropen. This area is used for the expanded memory system in a XT or PC system, or for the upper memory system in an

Explain about mainframes computer, Q. Explain about Mainframes computer? ...

Q. Explain about Mainframes computer? Mainframes, capable of executing in excess of 53 MIPS, are high-performance, general- purpose computers supporting very large databases, r

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd