Program Counter - Consequences in Machine Architecture

Consequences in Machine Architecture

Use of a PC that normally increments assumes that what a computer does is execute a usually linear sequence of instructions. Such a PC (or equivalent hardware that serves the same purpose) is central to the von Neumann architecture. Thus programmers write a sequential control flow even for algorithms that do not have to be sequential. The resulting “von Neumann bottleneck” led to research into parallel computing, including non-von Neumann or dataflow models that did not use a PC; for example, rather than specifying sequential steps, the high-level programmer might specify desired function and the low-level programmer might specify this using combinatory logic.

This research also led to ways to making conventional, PC-based, CPUs run faster, including:

  • Pipelining, in which different hardware in the CPU executes different phases of multiple instructions simultaneously.
  • The very long instruction word (VLIW) architecture, where a single instruction can achieve multiple effects.
  • Techniques to predict out-of-order execution and prepare subsequent instructions for execution outside the regular sequence.

Read more about this topic:  Program Counter

Famous quotes containing the words consequences, machine and/or architecture:

    The consequences of our actions grab us by the scruff of our necks, quite indifferent to our claim that we have “gotten better” in the meantime.
    Friedrich Nietzsche (1844–1900)

    The chrysanthemums’ astringent fragrance comes
    Each year to disguise the clanking mechanism
    Of machine within machine within machine.
    Wallace Stevens (1879–1955)

    Art is a jealous mistress, and if a man have a genius for painting, poetry, music, architecture or philosophy, he makes a bad husband and an ill provider, and should be wise in season and not fetter himself with duties which will embitter his days and spoil him for his proper work.
    Ralph Waldo Emerson (1803–1882)