You are on page 1of 7

Tamayo, Charles Rex S.

August 10, 2018

9:30 – 10:30 MWF PL Assign 1

Von Neuman Architecture

Von Neumann architecture was first published by John von Neumann in 1945.

His computer architecture design consists of a Control Unit, Arithmetic and Logic Unit (ALU), Memory
Unit, Registers and Inputs/Outputs.

Von Neumann architecture is based on the stored-program computer concept, where instruction data
and program data are stored in the same memory. This design is still used in most computers produced
today.

Central Processing Unit (CPU)

The Central Processing Unit (CPU) is the electronic circuit responsible for executing the instructions of a
computer program.

It is sometimes referred to as the microprocessor or processor.

The CPU contains the ALU, CU and a variety of registers.

Registers

Registers are high speed storage areas in the CPU. All data must be stored in a register before it can be
processed.
MAR Memory Address Register Holds the memory location of data that needs to be accessed

MDR Memory Data Register Holds data that is being transferred to or from memory

AC Accumulator Where intermediate arithmetic and logic results are stored

PC Program Counter Contains the address of the next instruction to be executed

CIR Current Instruction Register Contains the current instruction during processing

Arithmetic and Logic Unit (ALU)

The ALU allows arithmetic (add, subtract etc) and logic (AND, OR, NOT etc) operations to be carried out.

Control Unit (CU)

The control unit controls the operation of the computer’s ALU, memory and input/output devices,
telling them how to respond to the program instructions it has just read and interpreted from the
memory unit. The control unit also provides the timing and control signals required by other computer
components.

Buses

Buses are the means by which data is transmitted from one part of a computer to another, connecting
all major internal components to the CPU and memory.

A standard CPU system bus is comprised of a control bus, data bus and address bus.

Carries the addresses of data (but not the data) between the processor and
Address Bus
memory

Carries data between the processor, the memory unit and the input/output
Data Bus
devices

Carries control signals/commands from the CPU (and status signals from other
Control Bus
devices) in order to control and coordinate all the activities within the computer
Memory Unit

The memory unit consists of RAM, sometimes referred to as primary or main memory. Unlike a hard
drive (secondary memory), this memory is fast and also directly accessible by the CPU.

RAM is split into partitions. Each partition consists of an address and its contents (both in binary form).

The address will uniquely identify every location in the memory.

Loading data from permanent memory (hard drive), into the faster and directly accessible temporary
memory (RAM), allows the CPU to operate much quicker.

Harvard Architecture

The Harvard architecture is nothing but a kind of storage of data. When it comes to the physical storage
of the data the Harvard architecture always stood first. Though the concept is a not a new one still the
Harvard architecture has got huge appreciation form all. The Harvard Mark I relay-based computer is the
term from where the concept of the Harvard architecture first arises and then onwards there has been a
significant development with this architecture. The main function of this architecture is to separate and
physical storage of the data and giving the signal pathways for instruction and data.

Application and Features of the Harvard Architecture

It has got an extensive application in the audio and video processing products and with every
audio and video processing instrument you will notice the presence of Harvard architecture. Blackfin
processors by Analog Devices, Inc. are the particular device where it has got a premier use. In other
electronic chip based product the Harvard architecture is also widely used.
Memory Status

In the previous architecture, we have witnessed the presence of two memories. However, in case of the
Harvard architecture you will not find two memories and there will be one memory. The existing
memory will be able to perform all the functions. Yes, there will be only read only memory and this
memory will be used for the purpose of reading, coding, decoding and storing of data.

The speed aspect

A lot has been discussed about the Harvard architecture, but without the speed any architecture can’t
be accepted. But in case of the Harvard architecture the manufacturers have designed the architecture
in such a way that it will be able to process the data with a much higher speed. Yes, all care has been
taken so that the architecture can process data with a high speed.

By implementing the same formula the modern days CPU are being manufactured so that the new CPU
can run with a much faster sped and can also process the data effectively. The concept of the CPU cache
is also being implemented while designing the Harvard architecture.

Why Harvard Architecture is Effective?

After coming across all, the fact definitely one question will strike to your mind that why Harvard
architecture is so effective. The answer is quite clear and simple that the architecture is able to read an
instruction and it can also perform data memory access simultaneously at a fast speed. Hence the
Harvard architecture is being widely accepted.

Modified Harvard architecture

A Modified Harvard architecture machine is very much like a Harvard architecture machine, but it
relaxes the strict separation between instruction and code while still letting the CPU concurrently access
two (or more) memory busses.

The most common modification includes separate instruction and data caches backed by a common
address space. While the CPU executes from cache, it acts as a pure Harvard machine. When accessing
backing memory, it acts like a von Neumann machine (where code can be moved around like data, a
powerful technique). This modification is widespread in modern processors such as the ARM
architecture and X86 processors. It is sometimes loosely called a Harvard architecture, overlooking the
fact that it is actually "modified".

Another modification provides a pathway between the instruction memory (such as ROM or flash) and
the CPU to allow words from the instruction memory to be treated as read-only data. This technique is
used in some microcontrollers, including the Atmel AVR. This allows constant data, such as text strings
or function tables, to be accessed without first having to be copied into data memory, preserving scarce
(and power-hungry) data memory for read/write variables. Special machine language instructions are
provided to read data from the instruction memory. (This is distinct from instructions which themselves
embed constant data, although for individual constants the two mechanisms can substitute for each
other.)

Super Harvard Architecture

Analog Devices' 32-Bit Floating-Point SHARC® Processors are based on a Super Harvard architecture that
balances exceptional core and memory performance with outstanding I/O throughput capabilities. This
"Super" Harvard architecture extends the original concepts of separate program and data memory
busses by adding an I/O processor with its associated dedicated busses. In addition to satisfying the
demands of the most computationally intensive, real-time signal-processing applications, SHARC
processors integrate large memory arrays and application-specific peripherals designed to simplify
product development and reduce time to market.

The SHARC processor portfolio currently consists of four generations of products providing code-
compatible solutions ranging from entry-level products priced at less than $10 to the highest
performance products offering fixed- and floating-point computational power to 450 MHz/2700
MFLOPs. Irrespective of the specific product choice, all SHARC processors provide a common set of
features and functionality useable across many signal processing markets and applications. This baseline
functionality enables the SHARC user to leverage legacy code and design experience while transitioning
to higher-performance, more highly integrated SHARC products.
Common Architectural Features

 32/40-Bit IEEE Floating-Point Math

 32-Bit Fixed-Point Multipliers with 64-Bit Product & 80-Bit Accumulation

 No Arithmetic Pipeline; All Computations Are Single-Cycle

 Circular Buffer Addressing Supported in Hardware

 32 Address Pointers Support 32 Circular Buffers

 Six Nested Levels of Zero-Overhead Looping in Hardware

 Rich, Algebraic Assembly Language Syntax

 Instruction Set Supports Conditional Arithmetic, Bit Manipulation, Divide & Square Root, Bit
Field Deposit and Extract

 DMA Allows Zero-Overhead Background Transfers at Full Clock Rate Without Processor
Intervention

First Generation SHARC products offer performance to 66 MHz/ 198 MFLOPs and form the cornerstone
of the SHARC processor family. Their easy-to-use Instruction Set Architecture that supports both 32-bit
fixed-point and 32/40-bit floating data formats combined with large memory arrays and sophisticated
communications ports make them suitable for a wide array of parallel processing applications including
consumer audio, medical imaging, military, industrial, and instrumentation.

Second Generation SHARC products double the level of signal processing performance (100MHz /
600MFLOPs) offered by utilizing a Single-Instruction, Multiple-Data (SIMD) architecture. This hardware
extension to first generation SHARC processors doubles the number of computational resources
available to the system programmer. Second generation products contain dual multipliers, ALUs,
shifters, and data register files - significantly increasing overall system performance in a variety of
applications. This capability is especially relevant in consumer, automotive, and professional audio
where the algorithms related to stereo channel processing can effectively utilize the SIMD architecture.

Third Generation SHARC products employ an enhanced SIMD architecture that extends CPU
performance to 450 MHz/2700 MFLOPs. These products also integrate a variety of ROM memory
configurations and audio-centric peripherals design to decrease time to market and reduce the overall
bill of materials costs. This increased level of performance and peripheral integration allow third
generation SHARC processors to be considered as single-chip solutions for a variety of audio markets.

The fourth generation of SHARC® Processors, now includes the ADSP-21486, ADSP-21487, ADSP-21488,
ADSP-21489 and offers increased performance, hardware-based filter accelerators, audio and
application-focused peripherals, and new memory configurations capable of supporting the latest
surround-sound decoder algorithms. All devices are pin-compatible with each other and completely
code-compatible with all prior SHARC Processors. These newest members of the fourth generation
SHARC Processor family are based on a single-instruction, multiple-data (SIMD) core, which supports
both 32-bit fixed-point and 32-/40-bit floating-point arithmetic formats making them particularly
suitable for high-performance audio applications
Fourth-generation SHARC Processors also integrate application-specific peripherals designed to simplify
hardware design, minimize design risks, and ultimately reduce time to market. Grouped together, and
broadly named the Digital Applications Interface (DAI), these functional blocks may be connected to
each other or to external pins via the software-programmable Signal Routing Unit (SRU). The SRU is an
innovative architectural feature that enables complete and flexible routing amongst DAI blocks.
Peripherals connected through the SRU include but are not limited to serial ports, IDP, S/PDIF Tx/Rx, and
an 8-Channel asynchronous sample rate converter block. The fourth generation SHARC allows data from
the serial ports to be directly transferred to external memory by the DMA controller. Other peripherals
such as SPI, UART and Two-Wire Interface are routed through a Digital Peripheral Interface (DPI).

The Super Harvard Architecture improves upon the Harvard design by adding an instruction cache and a
dedicated I/O controller.