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

What are the steps in multiplication algorithm, What are the steps in multi...

What are the steps in multiplication algorithm?   Check for zeros.   Multiply mantissas   Add the exponents.   Normalize the product.

What do you meant by a multimedia authoring system, Problem : a) What d...

Problem : a) What do you meant by a Multimedia Authoring System? b) Compare the verbose syntax to the dot syntax in Lingo. c) Explain each of the following terms: i) L

A function declaration and function definition, Explain the difference betw...

Explain the difference between a function declaration and function definition.    Function declaration and Function definition:  A function declaration having the name of th

What is zero address instruction, Zero address instruction.  It is also...

Zero address instruction.  It is also possible to use instruction where the location s of all operand is explained implicitly. This operand of the use of the method for storing

Why we use addressing schemes, Q Why we use addressing schemes? An ope...

Q Why we use addressing schemes? An operation code of an instruction tells the operation to be performed. This operation is executed on some data stored in memory or register.

Use of delay loops, A very useful application of assembly is to generate de...

A very useful application of assembly is to generate delay loops. These loops are used for waiting for some time before execution of subsequent instruction. However how to find

Write an applet that display the directory holding html file, Write an appl...

Write an applet that display the directory holding the HTML file that started the applet and the directory from which, applet class file was loaded. An applet is here given bel

What is a crosstab query wizard, What is a crosstab query wizard? A wiz...

What is a crosstab query wizard? A wizard that helps us to show the data in a two-dimensional tabular format is the crosstab query wizard. You can use this to make queries that

Explain about the public key cryptography, Explain about the Public Key Cry...

Explain about the Public Key Cryptography. Public Key Cryptography: It is a cryptographic system which uses two keys as a public key identified to everyone and a private

What are the main data structures used in rdbms, What are the main data str...

What are the main data structures used in the following areas: RDBMS, Network data model and Hierarchical data model? RDBMS = Array (i.e. Array of structures) Network data m

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