Classifications of Computer Architecture

Neso Academy
23 Apr 202106:29

Summary

TLDRThis lecture delves into the classifications of computer architecture, focusing on two main models: Von Neumann and Harvard. Von Neumann architecture, also known as Princeton architecture, features a single path between the CPU and memory, leading to the Von Neumann bottleneck. In contrast, Harvard architecture separates instruction and data memory to overcome this limitation. The session also covers Flynn's taxonomy, categorizing architectures based on instruction and data streams, with SISD, SIMD, MISD, and MIMD types, providing a foundational understanding for modern processor design.

Takeaways

  • πŸ›οΈ Computer architecture is classified into two main categories: Von Neumann architecture and non-Von Neumann architecture.
  • πŸ” Von Neumann machines have three basic hardware subsystems: CPU, main memory, and I/O system, and they operate as stored program computers with sequential instruction execution.
  • πŸ”„ The Von Neumann bottleneck occurs when data and instructions share a single memory pathway, limiting simultaneous instruction and data processing.
  • 🏫 The Harvard architecture, proposed by Harvard University, overcomes the Von Neumann bottleneck by using separate memory units for instructions and data, allowing parallel processing.
  • πŸ› οΈ Modified Harvard architecture combines elements of both Harvard and Von Neumann architectures, with a small, fast cache memory that can act as either depending on the access mode.
  • πŸ€– Flynn's taxonomy classifies computer architectures based on the number of instruction streams and data streams, such as SISD, SIMD, MISD, and MIMD.
  • πŸ”’ SISD (Single Instruction Stream, Single Data Stream) is the category where Von Neumann architecture falls, with one CPU executing one instruction at a time.
  • 🌟 SIMD (Single Instruction Stream, Multiple Data Stream) machines have multiple ALUs executing the same operation on different data sets in parallel, controlled by a single control unit.
  • πŸ›‘ MISD (Multiple Instruction Streams, Single Data Stream) is a theoretical category with no practical implementation, where different instructions operate on the same data item.
  • πŸ”„ MIMD (Multiple Instruction Streams, Multiple Data Streams) refers to multiprocessors with independent processors, each executing different instructions on different data sets.
  • πŸ“š Michael J. Flynn's classification system has been instrumental in the design and functionality of modern processors since its introduction in 1966.

Q & A

  • What are the two broad classifications of computer architecture discussed in the script?

    -The two broad classifications of computer architecture discussed are Von Neumann architecture and non-Von Neumann architecture.

  • What are the three basic hardware subsystems of a Von Neumann machine?

    -The three basic hardware subsystems of a Von Neumann machine are the CPU, the main memory, and the I/O system.

  • What is the main characteristic that defines a stored program computer?

    -A stored program computer is defined by its ability to hold the program controlling the computer operation in the main memory, allowing the computer to manipulate its own program as well as any other data stored inside the memory.

  • What is the 'Von Neumann bottleneck' and why does it occur?

    -The 'Von Neumann bottleneck' refers to the limitation where a processor cannot simultaneously read an instruction and operate on data because both instructions and data are fetched over the same path. This occurs in systems with pure Von Neumann architecture where instructions and data are stored in the same memory unit.

  • What is the Harvard architecture and how does it differ from the Von Neumann architecture?

    -The Harvard architecture is a model that uses separate memory units for storing instructions and data items. This allows the processor to read an instruction and perform data memory access simultaneously, unlike the Von Neumann architecture where both operations share a single memory pathway.

  • What is the Modified Harvard architecture and how does it combine features of both Harvard and Von Neumann architectures?

    -The Modified Harvard architecture is similar to the Harvard architecture but it relaxes the strict division of instruction memory and data memory. It includes a small, fast memory storage called caching. When the processor executes from the cache, it acts like a pure Harvard architecture, and when accessing from the backing memory, it acts like a pure Von Neumann machine.

  • What does SISD stand for in computer architecture and what are its characteristics?

    -SISD stands for Single Instruction Stream, Single Data Stream. Computers in this category have one CPU that executes one instruction at a time and fetches and stores one item of data at a time.

  • What is SIMD and how does it differ from SISD?

    -SIMD stands for Single Instruction Stream, Multiple Data Stream. Unlike SISD, SIMD machines have a control unit that operates like a Von Neumann machine executing a single instruction stream, but they have more than one ALU, allowing the execution of the same operation on different sets of data items in lock steps.

  • What is the difference between MISD and MIMD in Flynn's taxonomy?

    -MISD stands for Multiple Instruction Streams, Single Data Stream, where theoretically different programs would execute on the same data items. MIMD stands for Multiple Instruction Streams, Multiple Data Streams, where each processor can execute a different set of instructions on its own set of data, making it suitable for parallel processing.

  • Who proposed the classification model used to categorize computer architectures by the number of processors, programs, and memory structures?

    -The classification model was proposed by Michael J. Flynn in 1966, and it is commonly known as Flynn's taxonomy.

  • What is the significance of Flynn's taxonomy in the design of modern processors?

    -Flynn's taxonomy is significant as it has been used as a tool in the design of modern processors and their functionalities, helping to understand and categorize different types of computer architectures based on their instruction and data handling capabilities.

Outlines

00:00

πŸ’Ύ Introduction to Computer Architecture Classifications

The video script begins with an introduction to the topic of computer architecture classifications. It explains that computer architecture can be broadly divided into two categories: Von Neumann and non-Von Neumann architectures. Von Neumann architecture, also known as Princeton architecture, is characterized by three basic hardware subsystems: the CPU, main memory, and I/O system. It is a stored-program computer where the program controlling the computer operation is stored in the main memory. This architecture is known for its sequential instruction execution and the single path between the main memory and the processor, which can lead to the Von Neumann bottleneck. The Harvard architecture, proposed by Harvard University, is a non-Von Neumann model that uses separate memory units for instructions and data, allowing for parallelism and overcoming the bottleneck issue. Modified Harvard architecture is also discussed, which combines elements of both Harvard and Princeton architectures, featuring a cache memory that can act as a pure Harvard architecture when executing from cache and as a Von Neumann machine when accessing from the backing memory. The script provides a detailed explanation of these classifications and their significance in modern processor design.

05:01

πŸ” Flynn's Taxonomy of Computer Architectures

The second paragraph delves into the classification of computer architectures based on the number of instruction streams and data streams they handle. It introduces the concept of SISD (Single Instruction Stream, Single Data Stream), where computers like the Von Neumann architecture execute one instruction at a time and process one data item at a time. SIMD (Single Instruction Stream, Multiple Data Stream) is explained as architectures with a control unit that operates like a Von Neumann machine but with multiple ALUs executing the same operation on different data items in parallel. The paragraph also mentions MISD (Multiple Instruction Streams, Single Data Stream), which theoretically executes different programs on the same data but lacks practical implementation. Finally, MIMD (Multiple Instruction Streams, Multiple Data Streams), also known as multiprocessors, is described as architectures with more than one independent processor, each capable of executing different instructions on different data sets. This classification, proposed by Michael J. Flynn in 1966, is known as Flynn's taxonomy and has been instrumental in the design and functionality of modern processors.

Mindmap

Keywords

πŸ’‘Computer Architecture

Computer architecture refers to the design and organization of computer components and systems. It is the fundamental concept that this video is built upon, as it discusses various classifications and models within this field. The script delves into how different architectures affect the operation and performance of computers.

πŸ’‘Von Neumann Architecture

The Von Neumann architecture, also known as Princeton architecture, is a model where the CPU, main memory, and I/O system are the basic hardware subsystems, and it operates on a stored program concept. The video explains this architecture as having a single path between the main memory and the processor, which can lead to the Von Neumann bottleneck.

πŸ’‘Harvard Architecture

Harvard architecture is another model that separates instruction memory from data memory, allowing for parallel processing of instructions and data. This separation overcomes the Von Neumann bottleneck by providing two distinct memory pathways, as mentioned in the script when discussing the need for this architecture.

πŸ’‘Von Neumann Bottleneck

The Von Neumann bottleneck is a concept where the data and instructions share a common bus, leading to a limitation in processing speed since the CPU cannot read an instruction and operate on data simultaneously. The script uses this term to illustrate the limitations of the pure Von Neumann architecture.

πŸ’‘Modified Harvard Architecture

Modified Harvard architecture is a hybrid model that combines elements of both Harvard and Von Neumann architectures. It includes a small, fast cache memory and a larger backing memory. The script explains that when the processor uses the cache, it operates like a Harvard architecture, and when accessing the backing memory, it behaves like a Von Neumann machine.

πŸ’‘SISC (Single Instruction Stream, Single Data Stream)

SISC is a classification within Flynn's taxonomy, referring to computers that have one CPU executing one instruction at a time and processing one piece of data at a time. The script mentions that the Von Neumann architecture belongs to this category.

πŸ’‘SIMD (Single Instruction Stream, Multiple Data Stream)

SIMD computers have a single instruction stream but can process multiple data streams simultaneously, often using multiple ALUs under the control of a single control unit. The script describes SIMD as machines where the same operation is performed on different data items in lock steps.

πŸ’‘MISD (Multiple Instruction Streams, Single Data Stream)

MISD is a theoretical model where multiple instructions operate on a single data stream. The script notes that there is no practical implementation of this model, but it is part of the classification system proposed by Michael J. Flynn.

πŸ’‘MIMD (Multiple Instruction Streams, Multiple Data Streams)

MIMD, also known as multiprocessors, are computers with more than one independent processor, each capable of executing different sets of instructions on different data sets. The script explains that this classification represents the most flexible and powerful type of computer architecture.

πŸ’‘Flynn's Taxonomy

Flynn's Taxonomy is a classification system for computer architectures proposed by Michael J. Flynn in 1966. It categorizes architectures based on the number of instruction streams and data streams they can handle. The script uses this taxonomy to explain the different types of computer architectures, such as SISC, SIMD, MISD, and MIMD.

Highlights

Introduction to the lecture on classifications of computer architecture.

Broad classification of computer architecture into Von Neumann and non-Von Neumann architectures.

Characteristics of Von Neumann machines including three basic hardware subsystems and stored program concept.

Sequential instruction execution in Von Neumann architecture leading to a single path debate.

The concept of Princeton architecture as an evolution of Von Neumann's model.

Harvard architecture's introduction of separate memory units for instructions and data to overcome Von Neumann bottleneck.

Understanding the need for Harvard architecture due to limitations in pure Von Neumann architecture.

Modified Harvard architecture combining features of both Harvard and Princeton models with caching.

Flynn's taxonomy as a classification model based on the number of instruction streams and data streams.

SISD (Single Instruction Stream, Single Data Stream) classification and its relation to Von Neumann architecture.

SIMD (Single Instruction Stream, Multiple Data Stream) classification and its application in processor arrays.

MISD (Multiple Instruction Streams, Single Data Stream) as a theoretical model with no practical implementation.

MIMD (Multiple Instruction Streams, Multiple Data Streams) as a category for multiprocessors with independent processors.

Practical applications of modified Harvard architecture in modern processors with caching mechanisms.

Flynn's taxonomy's impact on the design and functionality of modern processors since 1966.

Conclusion of the lecture with a summary of the two popular classifications of computer architecture.

Appreciation for the audience's attention and an invitation to the next lecture.

Transcripts

play00:03

[Music]

play00:06

well hello everyone welcome to the

play00:08

session and as promised in this

play00:10

particular lecture we are going to dive

play00:13

right into various classifications of

play00:15

computer architecture so without any

play00:18

further ado let's get to learning now

play00:20

coming to computer architecture's

play00:22

classifications there are various models

play00:24

among them we will be learning about two

play00:27

most popular approaches so let's start

play00:29

with the first one computer architecture

play00:31

is broadly classified into specifically

play00:33

two categories one newman architecture

play00:36

and non-von neumann architecture now one

play00:39

newman machines have the following

play00:40

characteristics it has three basic

play00:42

hardware subsystems the cpu the main

play00:45

memory and the i o system

play00:47

moreover it must be a stored program

play00:50

computer that means the main memory

play00:52

system holds the program which controls

play00:54

the computer operation and the computer

play00:56

can manipulate its own program more or

play00:59

less also it can do the same to any

play01:02

other data stored inside the memory

play01:04

furthermore it carries out instructions

play01:07

sequentially so the cpu appears to

play01:10

execute one operation at a time well the

play01:13

major debate has always been about

play01:15

having a single path between the main

play01:17

memory and the processor proposed by

play01:19

this very architecture now already in

play01:22

our previous discussion we came to know

play01:24

about von neumann's professorship at

play01:26

princeton university and that is the

play01:28

reason why this architecture was also

play01:30

referred to as princeton architecture

play01:33

now people from harvard university

play01:35

proposed another model which adopted

play01:38

most of the features proposed in the

play01:40

princeton architecture except for the

play01:42

fact they used two different memory

play01:44

units and thus pioneered parallelism

play01:47

this is popularly known as harvard

play01:50

architecture let's try to understand the

play01:52

need of it first of all systems having

play01:55

pure von neumann architecture stores the

play01:57

instructions and the data in the same

play02:00

memory unit thus both the data and the

play02:02

instructions are phased over the same

play02:04

path

play02:05

this means the processor can't

play02:08

simultaneously read an instruction and

play02:10

operate on data this phenomenon is known

play02:13

as von neumann bottleneck and was first

play02:16

officially discussed by the great john

play02:18

backers inventor of backus normal form

play02:21

for context free languages during his

play02:23

1977 acm turing hour lecture next there

play02:27

is modified harvard architecture which

play02:30

cannot completely be classified as von

play02:32

neumann architecture as it doesn't

play02:34

strictly follow the von neumann

play02:36

principles but it is more of a

play02:38

combination between both the harvard and

play02:41

the princeton architecture now let's

play02:43

study them in a bit details

play02:45

now in harvard architecture we have

play02:47

separate memory units

play02:49

one is for strictly storing the

play02:51

instructions and the other for the data

play02:53

items

play02:54

this way the processor can both read an

play02:56

instruction and perform data memory

play02:58

access at the same time therefore

play03:00

computers belonging to this architecture

play03:03

family are faster because instruction

play03:06

fetches and data accesses are not

play03:08

competing for the single memory pathway

play03:11

anymore now coming to modified harvard

play03:13

architecture it is very much like the

play03:15

harvard architecture itself however it

play03:18

relaxes the strict division of

play03:20

instruction memory and data memory here

play03:22

the processor is accompanied by a small

play03:25

yet fast memory storage called caching

play03:28

when the processor is executing from the

play03:30

cachet it acts as a pure harvard

play03:32

architecture and when it is accessing

play03:34

from the backing memory it acts like a

play03:36

pure von neumann machine this

play03:38

modification it wide spread in modern

play03:41

processors so this was the first

play03:43

approach of classification of computer

play03:45

architecture

play03:46

let's move on to the next one in this

play03:48

model computer architectures are

play03:50

classified by a variety of

play03:52

characteristics including the number of

play03:54

processors the number of programs they

play03:56

can execute and the memory structures

play03:58

being used the first group is sisd that

play04:02

is single instruction stream single data

play04:05

stream the von neumann architecture

play04:08

belongs to this specific category sisd

play04:11

computers have one cpu that executes one

play04:14

instructions at a time hence single

play04:17

instruction stream and fetches and

play04:19

stores one item of data at a time hence

play04:23

single data stream the next group is

play04:26

simd that is single instruction stream

play04:29

multiple data stream

play04:31

processor array falls into this category

play04:34

simd machines have a control unit that

play04:37

operates like a von neumann machine that

play04:39

executes a single instructions stream

play04:42

but they have more than one alus the

play04:46

control unit generates the control

play04:48

signals for all the alus which execute

play04:51

the same operation on different set of

play04:54

data items generally in lock steps hence

play04:58

multiple data streams

play05:01

the next group of computers are misd

play05:04

multiple instruction streams single data

play05:07

stream logically machine of this class

play05:09

would execute various different programs

play05:12

on the same data items this group

play05:15

doesn't have any particular practical

play05:17

implementation nonetheless some machines

play05:20

belonging to the next category can be

play05:22

used in this manner all right the next

play05:24

and the final type is mimd multiple

play05:27

instruction streams multiple data

play05:29

streams machines these are also known as

play05:32

multiprocessors

play05:34

these are comprised of more than one

play05:36

independent processors and each one of

play05:39

them can execute a different set of

play05:41

instructions hence multiple instruction

play05:44

streams on its own set of data hence

play05:47

multiple data streams now this

play05:50

classification was proposed by michael j

play05:52

flynn in 1966

play05:54

since then it has been used as a tool in

play05:57

design of modern processors and their

play06:00

functionalities that is why it is also

play06:02

known as flynn's taxonomy

play06:06

alright folks that was the two most

play06:08

popular classifications of computer

play06:10

architecture hope you liked it and

play06:12

learned something new i'll see you guys

play06:15

in the next one thank you all for

play06:17

watching

play06:18

[Applause]

play06:20

[Music]

play06:28

you

Rate This
β˜…
β˜…
β˜…
β˜…
β˜…

5.0 / 5 (0 votes)

Related Tags
Computer ArchitectureVon NeumannHarvard ModelParallelismInstruction FlowData AccessModified HarvardSISCSIMDMIMDFlynn's Taxonomy