Академический Документы
Профессиональный Документы
Культура Документы
BRIEF HISTORY
Fig: ENIAC (Source: http://www.lgcnsblog.com/) Fig: John V Neumann with IAS Machine
(Source: http://dailynewshungary.com/)
Most advances in computing began around world war and most computers
developed, therefore, were intended to be used for war purposes like
calculating missile trajectory.
John von Neumann was a consultant in the ENIAC project which was a first
programmable general-purpose computer
But lacking the ability to store programs.
EDVAC draft report was the first document to suggest Von Neumann’s idea
of stored program ability in general-purpose computers, In 1946, Von
Neumann officially published a paper titled “Preliminary Discussion of the
Logical Design of an Electronic Computing Instrument” which described
organization of a stored-program computer which took shape as IAS
machine in 1951*.
Meanwhile, the development of the famous Mark series was being carried
at Harvard. Mark-1 read instructions from punched paper tape and input
*Manchester Mark-1 (1949) was however the first stored program computer
© Rhythm Gupta
was read from a separate tape. Although it wasn’t a stored-program
computer, the sense of separation of instruction and data memories lead to
the idea of Harvard architecture.
Mark-3 (1951) however was a stored-program computer.
VON-NEUMANN ARCHITECTURE
© Rhythm Gupta
1. The main memory, which stores both data and instructions
2. Arithmetic and Logic Unit(ALU)
3. Control Unit
4. Input and output (I/O) equipment
© Rhythm Gupta
self-modifying code needs the exchange of information between
data and instruction memory and can be efficiently executed
only if both share a common address space.
VON-NEUMANN BOTTLENECK
HARVARD ARCHITECTURE
© Rhythm Gupta
Therefore, with Harvard Architecture, parallel transfer of data, as well as for
instructions, is possible between processor and memory.
Clearly Harvard Architecture provides the following advantages when
compared to Von-Neumann architecture:
1. Faster Execution:
Since data and instructions can be fetched parallelly in Harvard
Architecture, waiting time for CPU reduces making execution faster.
2. Efficiency in Data Storage:
In Von-Neumann Architecture, data and instructions share a common
address space, however, a data unit usually requires less number of
bits than an instruction unit. In Harvard Architecture, both data and
instructions have different word sizes, therefore saving memory
space while storing data.
3. Fewer collisions between data and instructions
PIPELINING
© Rhythm Gupta
Pipelines are an important part of modern processors and most pipelines
require access to instructions and data parallelly.
Example:
Fig: Typical ARM pipeline (Source: Patterson Computer Organisation and Design)
CPU Cache
CPU Cache is a memory store located very near (or inside) CPU chip. It is
an integral part of modern computers. Time taken to fetch information from
the cache is much much lower than time to fetch it from the main memory.
Like the main memory, CPU cache can either be unified or split.
Unified Cache: Both data and instructions stored on a single cache
Split Cache: Different cache for both data and instructions
© Rhythm Gupta
be split or unified. These are then backed by main memory which follows
common addressing for both data and instructions. Therefore, it is a
combination of Harvard Architecture (operational at Cache Level) and
Von-Neumann Architecture (operational at Main-Memory Level).
Examples:
A) Intel Pentium 4
Fig: Pentium 4 Block Diagram (Source: Stallings Computer Organisation and Architecture)
© Rhythm Gupta
Fig: Intel i7 Memory Hierarchy (Source: Patterson Computer Architecture)
© Rhythm Gupta