Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

Differences between cpu Harvard and cpu Von Neumman

Status
Not open for further replies.

LOKELE

Newbie level 2
Joined
Dec 30, 2010
Messages
2
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,281
Activity points
1,308
Hi,
Since I'm still at high school (first year), I started studying "Computer organization and architecture" book by William Stalling on my own.

Will that book help me learn Microcontroller Risc Harvard architecture ? I know that there are differences between mcu and computer architecture, for example von neumann vs harvard, memory external located (computer),peripherals and so on, but when the book talks about MBR, MAR, is that theory applicable to mcu?
Does MBR and MAR exist on mcu ?

My main goal is to understand how the instructions are decoded on harvard architecture.

The Computer desktop has Von Neumman and many books talks about that architecture.
I know that books are important for the beginner but many mcu datasheet take for granted that you knows the harvard architecture and don't explain how it really works ,

so I dont know what really differences there are between mcu's CPU and computer desktop cpu

Does you know a book that talk about harvard architecture in deep ?
sry for bad english
Thank
 

Hi,

My personal opinion:
It's not that complicated. I see no need for a whole book to explain the differences.
The most important difference is the memory interface...

But then you speak about decoding of the instructions.
For sure decoding will differ on architecture...but it will differ on a lot of other parameters.
That means there are different decoding schemes on the same architecture.

There are harvard microcontrollers with all internal memory or mixed or external memory.
There are harvard microcontrollers really with reduced instruction set, others have more than hundred instructions...
There are harvard microcontroller with pipelined instruction decoding...I assume there are some without pipelining.

Klaus
 
  • Like
Reactions: LOKELE

    LOKELE

    Points: 2
    Helpful Answer Positive Rating
I would say the main difference is the data and program memory are accessed through different bus structures.

Unless you are designing MCU/CPU in silicon yourself there isn't much difference between the two. From a programming perspective they are almost the same as long as you recognize the limitations of accessible memory. There is a tendency, but it isn't mandatory, that Harvard architecture is used on RISC processors and Von Neumann is used on systems with external memory storage (i386 for example).

MAR and MBR are used in some processors to hold (freeze) the contents of the address or data bus while the core CPU carries on with other work. In Harvard there is a more intimate connection between the buses and core so they are less likely to be needed.

The main differences between MCUs and CPUs is that MCU's have internal memory and internal peripherals, even if it is only I/O ports. It lets them work as independent devices, reading, processing and writing data without the need to address outside memory or peripherals. A CPU is more dedicated to handling larger amounts of memory and has external bus connections and control signals to communicate with support devices outside of itself.

Brian.
 
  • Like
Reactions: LOKELE

    LOKELE

    Points: 2
    Helpful Answer Positive Rating
Thank you both , maybe I realized how it works.

There are basic differences among different processors , for example :

The type of internal storage in a processor ( stack, an accumulator, or a set of registers):
https://imgur.com/a/jXR2g9i


if you choose the general-purpose register architecture , it can be divided in
register-to-register
register-memory
memory-memory
with advantages and disadvantages and many others stuff that I'm reading

but if you want to know a specific mcu model , most probably you shoud ask to constructor or to go for opencore(?)8-O
 

Status
Not open for further replies.

Similar threads

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top