EmbeddedRelated.com
Forums
The 2024 Embedded Online Conference

AVR or 8051

Started by Yukuan January 19, 2005
If anyone can tell me when to use AVR and when to 8051.
We all have known that AVR has fine instruction set and
 is much faster than 8051.
During product developing, what make you choose 8051?
Any comment is appreciated.
Thanks
On Thu, 20 Jan 2005 00:01:19 +0800, the renowned Yukuan
<ykjiang@kkcity.com.tw> wrote:

>If anyone can tell me when to use AVR and when to 8051.
No, I think not.
>We all have known that AVR has fine instruction set and > is much faster than 8051. >During product developing, what make you choose 8051?
If it's a better fit for the job. Not just the core, but the available chips with their peripherals, prices, supplier(s), distributors etc. etc. Development costs may figure in there too.
>Any comment is appreciated. >Thanks
Best regards, Spehro Pefhany -- "it's the network..." "The Journey is the reward" speff@interlog.com Info for manufacturers: http://www.trexon.com Embedded software/hardware/analog Info for designers: http://www.speff.com
AVR:  tools available from one manufacturer; AVR Studio is free; some 
compilers have free evaluation versions; STK-500 development kit is cheap.

8051:  no single manufacturer supports it any more; tools are freeware (old) 
or commercial; lots of code already exists.


"Yukuan" <ykjiang@kkcity.com.tw> wrote

> During product developing, what make you choose 8051? > Any comment is appreciated.
Do what you know: as in the catch phrase: "Building on core competencies." Master something new when you _have_ to. Chasing after the uP of the month will leave you knowing a little bit of everything, but not knowing a lot about anything. If you are picking a uP for you and your company to start using for the first time, then the AVR is a good choice. If your firm has been using an 8051/68xx/H8 ..., and it will do the job, then you should stick to that standard. If your old uP is not up to the task then the AVR can again be a good choice. However, in general, anything an AVR can do an 8051 can do. 8051's have a long established record, the bugs are out (famous last words), lots of tools are available and many engineers are fluent with this processor. For SOC/ASIC/FPGA an AVR has the advantage of needing less silicon. -- Nicholas O. Lindan, Cleveland, Ohio Consulting Engineer: Electronics; Informatics; Photonics. Remove spaces etc. to reply: n o lindan at net com dot com psst.. want to buy an f-stop timer? nolindan.com/da/fstop/
>During product developing, what make you choose 8051?
Perhaps a better question is why your choices are so limited - if your application could use AVR or 8051, then there are literally dozens of other possible candidates. For my low-volume consulting projects where 8-bit cores are indicated, I use AVR because I'm familiar with the architecture, the costs are _reasonable_, and the tools are free and easy to use. Plus the commonality across the entire spectrum of feature sets is much greater than with 8051s (which need to come from different vendors if you're covering all possible performance/feature sets). E.g. one standard ISP header for all AVRs, close family resemblance of peripheral programming, ... ... For day-job production projects, I use whatever makes sense, be that 8051, PIC, NEC 78K0, COP, MSP430, ...............
In article <md0tu091bne6sacbvm9oo1gi6235i57c3l@4ax.com>, Yukuan
<ykjiang@kkcity.com.tw> writes
>If anyone can tell me when to use AVR and when to 8051.
No. You have to work that you for yourself.
>We all have known that AVR has fine instruction set and > is much faster than 8051.
Faster than which 8051? There are over 600 of them and some have single clock cores. Also the peripherals are often independent to the core
>During product developing, what make you choose 8051? >Any comment is appreciated.
Well there are 600 odd variants from 30+ silicon vendors and another dozen or so IP cores and radiation hardened parts. With ROM, EPROM, EEPROM, FLASH and external memory parts. Memory from 1K to 16M A lot of free and cheap tools as well as high quality tools suitable for high end safety critical work. There is masses of information and free software for the family as well as the fact that 90% of all embedded engineers have used the 51 at some time and are familiar with it. That said if you are well used to the AVR, have the tools, expertise and a code base and the AVR will do the job why use a 51? You will probably develop faster with the parts and tools you know. Unless of course you are producing a lot of them and there is a suitable 51 that is a lot cheaper. SO the cost of buying a new tool set and learning a new part is worth the hassle. All you need is Experience :-) Some Chines philosopher said:- "Experience is what you get looking for something else." but I don't think he mentioned 51 or AVR /\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\ \/\/\/\/\ Chris Hills Staffs England /\/\/\/\/\ /\/\/ chris@phaedsys.org www.phaedsys.org \/\/ \/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/
Yukuan wrote:
> If anyone can tell me when to use AVR and when to 8051. > We all have known that AVR has fine instruction set and > is much faster than 8051.
?! - you need to do more research, or is a smiley missing ?
> During product developing, what make you choose 8051?
Multi sourced, Direct memory opcodes, Boolean opcodes, interrupt structures, speed, power, Analog performance, tool chain performance, smallest packages, .... -jg
"Nicholas O. Lindan" <see@sig.com> wrote in message 
news:ZuwHd.646$cZ1.388@newsread2.news.atl.earthlink.net...
> "Yukuan" <ykjiang@kkcity.com.tw> wrote > > Do what you know: as in the catch phrase: "Building on core > competencies." Master something new when you _have_ to. > > Chasing after the uP of the month will leave you knowing > a little bit of everything, but not knowing a lot about > anything.
Right. And in fact it is better to master one of them, and then switch at a later stage, than to switch around all the time without ever mastering any of them.
"Jim Granville" <no.spam@designtools.co.nz> skrev i meddelandet
news:41eed3b5$1@clear.net.nz...
> Yukuan wrote: > > If anyone can tell me when to use AVR and when to 8051. > > We all have known that AVR has fine instruction set and > > is much faster than 8051. > > ?! - you need to do more research, or is a smiley missing ? > > > During product developing, what make you choose 8051? > > Multi sourced
I think you will find most 8051 chips to be single sourced except the very basic ones.
> Direct memory opcodes
I think that the RISC approach to have load/store and many registers is well proven
> Boolean opcodes,
This is nice, the AVR can sort of do so in the I/O area, but so far there is not a lot of resources for this in the actual chips.
> interrupt structures
AVR interrupt processing is limited to 6 clocks, and the good compilers will not cause excessive push/pops. For real high performance you can use global variables in registers, even in C, so no PUSH/POP is needed. Not even the PSR needs to be pushed if the instructions in the interrupt handler does not update the PSR Very few chips on the market have as fast interrupts as the AVR.
> speed
A 100 MHz 8051 will not be faster than a 48 MHz AVR which is the current top of the line for std micros You need three instructions to add two bytes and 16 bit performance (as required by ANSI C) is horrible. Most 8051s are a lot slower than most AVRs. I find that there is quite a relation between memory size and the performance needs and very few projects are lost on AVR performance. The AVR core runs at 70-80 MIPS in ASICs. When you go above 64 kB of code you are normally in trouble with an 8051, and with an AVR up to 8 MB is supported.
>power
Most 8051s use a lot more power than the average AVR.
> Analog performance,
Customer have achieved 16,5 bit resolution on the AVR ADC converter There is a lot of new analog stuff in the new AVRs, especially in the AT90PWMxxx parts
> tool chain performance,
Hard to measure, typically a lot more expensive than the AVR toolchain. The AVR normally generate less bytes of code for a large program.
> smallest packages, ....
4 x 4 mm available for the smallest AVR.
> > -jg >
-- Best Regards Ulf at atmel dot com These comments are intended to be my own opinion and they may, or may not be shared by my employer, Atmel Sweden.
Ulf Samuelsson wrote:
<snip>
>>Direct memory opcodes > > > I think that the RISC approach to have load/store and many registers is well > proven
Well proven for what - proven to consume code memory in the many index loads that are needed ? RISC made sense when memory was off chip, and large, but in a 8 bit uC you can have working poduct in 64-256 bytes RAM, so it only makes sense to have opcodes that can directly access that ? - see the Z8 for a example of a register-register uC design that understands that.
>>interrupt structures > > > AVR interrupt processing is limited to 6 clocks, and the good compilers > will not cause excessive push/pops. > For real high performance you can use global variables in registers, even in > C, > so no PUSH/POP is needed. Not even the PSR needs to be pushed > if the instructions in the interrupt handler does not update the PSR > > Very few chips on the market have as fast interrupts as the AVR.
The C51 has register bank switching, and the direct memory and boolean opcodes mean you can write functioning interrupts without pushing anything. Most C51s now have FOUR int priority levels as standard. AVR Int priority handling ?
> >>speed > > > A 100 MHz 8051 will not be faster than a 48 MHz AVR which is the current top > of the line for std micros
Wow - I missed the release of the 48MHz Flash AVRs - where can I get some ?
>>Analog performance, > > > Customer have achieved 16,5 bit resolution on the AVR ADC converter
...and sustained that across replacements, temperature, and production ? [ and all with a 10 bit result register, that has a 4 bit typ [no max] error band ?! ] ALL of the highest performance Analog 8 bit uC's out there, (and there are many :ADi, BB, SiLabs, TDK ), use the 80C51 core.
>>smallest packages, .... > > > 4 x 4 mm available for the smallest AVR.
That puzzles me - if the AVR core is so tiny, then how come SiLabs can ship an 8K/256R+ADC device in 3mm, and now Philips too have 3mm C51 devices 1K/128R+ADC (both with 10/11 pin MLF), how is it that the 8 pin Tiny13 (1K/64R) die has to go into the 4mm MLF20 package ? -jg

The 2024 Embedded Online Conference