Discussion in "General help Guidance and Discussion" started by    Nirmaan    Feb 1, 2009.
Sun Feb 01 2009, 04:33 AM
#1


hello forum

i would like to know the important differences between the above 3 micros regarding stability, speed and cost.

thank you,

nirmaan


Sun Feb 01 2009, 04:44 AM
#2

hello nirmaan,

i don't know if its a co-incidence that a member asked exactly the same question few days back in our neighbouring forum and i replied there in great length,

so here's my reply cut and pasted from the other forum( i just don't want to retype the whole post).


Hello Defensive06,

you'll have to study the architecture of all the 3 micros in question to know exact differences, but briefly we can distinguish between the 3 as:

8051 - 8 bit micro based on CISC architecture ( Complex Instruction Set Computer)

PIC - 8 bit micro based on RISC architecture ( Reduced Instruction Set Computer)

AVR - 8 bit micro based on RISC architecture ( Reduced Instruction Set Computer)


there are also 16bit and 32 bit micros from the same family

invention wise, 8051 is the forefather ( date of birth = 1985), next cam PIC s and then came the AVRs.


its essential to learn 8051 to be able to learn other micros. if we come to instruction set of these micros :

8051 has 250 instructions which take 1 to 4 machine cycles to executive
PIC has nearly 40 instructions which are mostly 4 cycles instructions
AVRs have 140 instructions whcih are mostly 1 cycle based

if we come to speed factor:

1 machine cycle in 8051 (normal) divides the clock freq. by 12 ( some derivatives divide by 6 and by 1 also)

1 machine cycle in PIC divides the clock freq by 4

1 M.C in AVRs divides the clock freq by 1

for eg: if we use 12 Mhz Xtal in all the 3 micros then the speed of execution will be as follows:

8051 = 12Mhz /12 = 1 Mhz i,e = 1 million instructions per second
PIC = 12Mhz/4 = 3 Mhz i,e = 3 million instructions per second
AVR = 12Mhz/1 = 12 MHz i,e = 12 Million instructions per second

so you can clearly see the that AVR executes more no:of instructions per given time and can be considered as the fastest among the 3.

also 8051 consumes more power than the other two and PIC consumes the least power.

Both PIC and AVR are RISC based but their instruction Sets are entirely different.

from Programming ( i,e writing code ) point of view : 8051s are easy to code , next come PIcs and last comes AVRs.

8051 has very powerful instruction set, it has commands which do more complex calculations, it also has got strong arithmetic logic unit which makes computation simple.

whereas PICs and AVRs have simple single instrcutions and the programmer has to tell (dictate) each and every step to achieve the final outcome.

for eg:

you would be surprised to know that normal AVRs do not have Multiplication instruction.

in 8051 Assembly we can simple use the instruction : MUL A,B

but in AVR you have to write some 20 lines of code to multiply two resgisters or values.

similiarly division also : in 8051 we have DIV A,B but in AVR again you have to write some 20 lines of code.

There is no ADD instruction in AVRs, in 8051 we can Compliment a port bit or a bit variable by using CPL instruction but in AVR we don't have this instruction.

in 8051 we can easily access the individual port bits but in AVRs we don't have this freedom.

8051 is still in use bcoz of its simplicity and popularity and lowest cost.

AVRs and PICS are costly and come with many on chip peripherals like : hardware SPI, ADC, I2C, USART , Analog comparator, internal RC oscillator, in-system programmablity etc.

also if see vendor support: 8051 are manufactured by over 50 companies whereas PIC & AVRs are manufactured only by their parent companies i,e microchip and Atmel.

for eg: if you are using a particular variant of AVR and Atmel discontinues it then you'll have no other choice than to shift to another variant offered by Atmel which may be costly and need program changes.

but with 8051 you can run the code in any 8051s manufactured by so many companies.


i hope my answer has given you enough insight into the topic.


Arun



Sun Feb 01 2009, 06:08 AM
#3
Gr8 Arun I never seen such nice ,concept clearing explanation - Very Impressive
I'll give this article A+++++ Rating !dance :-)
Sun Feb 01 2009, 06:21 AM
#4

AVRs and PICS are costly and come with many on chip peripherals like : hardware SPI, ADC, I2C, USART , Analog comparator, internal RC oscillator, in-system programmablity etc.



There are many 8051 devices that have these features as well, including one that has a CPLD : ST Micro upsd3334D (one of my favorites!)

For a quick comparison gude of 8051 derivatives, visit this link:
http://www.keil.com/dd/parms/8051.htm
Sun Feb 01 2009, 06:36 AM
#5
Woh Arun :-) This is the very classic reply for to understand the architectural difference between 8051,PIC , AVR. Thanks :-)
Including RISC & CISC even Von- neuman & Harward Memory model comes into picture we we tell about the Architecture of any controller.

!dance !dance !dance
Sun Feb 01 2009, 02:24 PM
#6


Excellent ! Arun, you have cleared my doubts which were lingering in my mind since a long time. now i have good understanding about these micros.

thanks a lot and keep up the good work !

nirmaan
Sun Feb 01 2009, 08:31 PM
#7


AVRs and PICS are costly and come with many on chip peripherals like : hardware SPI, ADC, I2C, USART , Analog comparator, internal RC oscillator, in-system programmablity etc.



There are many 8051 devices that have these features as well, including one that has a CPLD : ST Micro upsd3334D (one of my favorites!)

For a quick comparison gude of 8051 derivatives, visit this link:
http://www.keil.com/dd/parms/8051.htm

DavesGarage


I think this confirms my confusion

I really don't think comparing the various families is worthwhile.
Each one has so many variants that almost any feature you want can found from any family.

In the same way each has good software support from various sources.

Cost probably depends mainly on where you are, but generally a simple, useful
device from any family will not be expensive.


its essential to learn 8051 to be able to learn other micros.

Arun


A step too far
Many good programmers have never used the 8051








Mon Feb 02 2009, 03:14 AM
#8


I think this confirms my confusion

I really don't think comparing the various families is worthwhile.
Each one has so many variants that almost any feature you want can found from any family.

In the same way each has good software support from various sources.

Cost probably depends mainly on where you are, but generally a simple, useful
device from any family will not be expensive.
A step too far
Many good programmers have never used the 8051

ExperimenterUK


I totally agree :-).
It all depends upon the application and as far as cost is concerned,in small analog processing applications, i feel that the PIC/ AVRs make the whole system far more cheaper than the commonly available 8051 derivatives. conversely, the enhanced derivatives of 8051 like the Dallas DS89c4XX and the NXP P89X51RDX are more suitable for moderately complex applications.

As far as learning assembly programming, i think what arun meant was that 8051 is a good place to start with due to its simplicity though i agree that 'recommended' would be much suitable than 'essential' . personally, i started commercial programming in the Z80 processor and found porting all applications into 8051 relatively easier.
:-)


[ Edited Mon Feb 02 2009, 03:31 AM ]
Thu Feb 19 2009, 03:04 AM
#9

its essential to learn 8051 to be able to learn other micros.

A step too far
Many good programmers have never used the 8051




90% of seasoned embedded engineers would have used 8051 at some point or the other in their career.

8051 is included in Electronics Engineering course curriculum,the Govt, educationists,syllabus writers etc all would have thought it would be "essential" for the students to learn 8051 as a foundation.



Arun
Thu Feb 19 2009, 08:40 AM
#10
wow.. nice discussion here..

Adding to all this, if you visit Atmel's website you will get all flavors of 8051 with plenty of features including MP3 decorder and USB host controllers onchip.

there are Ultra high speed Controllers available from Dallas with all single cycle instructions which means it can execute 12 times faster than any 8051 running in market today and max speed of 33Mhz boosts its performance even higher to 33MIPS. Which is amazing for any 8051.
More information here..
http://www.maxim-ic.com/quick_view2.cfm/qv_pk/4078

Get Social

Information

Powered by e107 Forum System

Conversation

hareeshchamiyar
Thu Mar 29 2018, 10:47 AM
please help me for the configuration bits for dspic30f2010
hareeshchamiyar
Thu Mar 29 2018, 10:45 AM
can any one using dspic30f2010.
Thu Mar 29 2018, 06:03 AM
Neena
can anybody give solar tracking in 8051 using proteus and keil to mail [email protected]
ExperimenterUK
Mon Mar 19 2018, 07:33 PM
sorry bedo.. maybe next time
Sun Mar 18 2018, 07:48 AM
Mourya Manojkumar
Please send me circuit diagram and PCB diagram
Thu Mar 01 2018, 05:49 AM
Felixc
May you please help me with a code for programmable load shedding controlling 4 loads
Sun Feb 25 2018, 08:29 PM
ezeoke.charles
i need of it
Sat Feb 24 2018, 03:35 AM
Aaquib
I want help for digital ic tester
ExperimenterUK
Tue Feb 20 2018, 04:01 PM
Join up.. and post your problem
Mon Feb 19 2018, 11:17 AM
ashishkumar
i needs help for my project

Downloads

Comments

Pater
Fri Apr 20 2018, 02:38 PM
jamiel
Sat Apr 14 2018, 12:47 AM
akrepkral76
Wed Apr 04 2018, 07:51 PM
samanthaeaves
Mon Apr 02 2018, 06:27 AM
rana2056
Sat Mar 31 2018, 02:11 PM
Darshanparabbnb
Mon Mar 26 2018, 07:17 AM
marttinsmarcio
Sat Mar 24 2018, 12:31 PM
LAMBO
Tue Mar 20 2018, 09:51 AM

Online

Guests: 50, Members: 0 ...

most ever online: 182184
(Members: , Guests: 182184) on 06 Aug 2010: 05:37 AM

Members: 37994
Newest member: Pater
Forum Activity
Pater Avatar
Posted By Pater
Fri Apr 20 2018, 02:40 PM
Actually I want to transmit 3 bits serially using ...
ExperimenterUK Avatar
Posted By ExperimenterUK
Mon Apr 16 2018, 08:49 PM
On the diagram, a diode feeds a rectified sine wav...
LAMBO Avatar
Posted By LAMBO
Mon Apr 16 2018, 06:39 AM
Hi sir i haven't connected any serial connec...
ExperimenterUK Avatar
Posted By ExperimenterUK
Fri Apr 13 2018, 02:09 AM
I assume you are doing this project.http://www.805...
LAMBO Avatar
Posted By LAMBO
Thu Apr 12 2018, 06:51 PM
hii sir,I am working on ac motor controller .I hav...
ExperimenterUK Avatar
Posted By ExperimenterUK
Tue Apr 10 2018, 06:12 PM
The lpc214x has a 32-bit prescaler , so I would ...
Praneeth1299 Avatar
Posted By Praneeth1299
Tue Apr 10 2018, 09:16 AM
Hi,I'm generating constant frequency of 1hz and va...
akrepkral76 Avatar
Posted By akrepkral76
Sat Apr 07 2018, 01:57 PM
I have used diptrace.I think ı have recevied from ...
ExperimenterUK Avatar
Posted By ExperimenterUK
Sat Apr 07 2018, 01:45 AM
You will need to say which software you are using,...
akrepkral76 Avatar
Posted By akrepkral76
Fri Apr 06 2018, 12:22 PM
I have drawed many PCB board. But it is still not ...