Author Topic: Why are you still using 8 bit MCUs?  (Read 91278 times)

0 Members and 1 Guest are viewing this topic.

Offline john

  • Contributor
  • Posts: 7
Why are you still using 8 bit MCUs?
« on: March 01, 2011, 06:11:52 pm »
Why would anyone, today in 2011., choose an 8 bit microcontroller for his project?
There are lots of small, very cheap, low power 32 bit devices on the market (like for example Cortex M0 series). I don't mean just 32 bit ARM CPUs, but also all others like AVR32, TMS320C2000 series, PIC32, and many others...

What's wrong with you people?  ;D
 

Offline Lance

  • Frequent Contributor
  • **
  • Posts: 312
  • Resistance if futile if R<1Ohm
Re: Why are you still using 8 bit MCUs?
« Reply #1 on: March 01, 2011, 06:15:51 pm »
Because a lot of those are overkill for smaller projects. There's no point to using something that powerful unless you actually need it. Just because it's 8 bit doesn't mean it's useless.
« Last Edit: March 01, 2011, 06:31:30 pm by Lance »
#include "main.h"
#include <pic.h>
//#include <killallhumans.h>
 

Offline red_mamba

  • Contributor
  • Posts: 15
Re: Why are you still using 8 bit MCUs?
« Reply #2 on: March 01, 2011, 06:28:32 pm »
And sometimes you have to look at components price
 

Offline john

  • Contributor
  • Posts: 7
Re: Why are you still using 8 bit MCUs?
« Reply #3 on: March 01, 2011, 06:30:17 pm »
I heard that excuse couple of times, and I think it's a quite a lame excuse...
How do you define "overkill"? What do you get when you use 8 bit instead of 32 bit? Many 8 bit CPUs are actually more expensive than 32bit, so cost is not the issue (and even if it costs 2-3$ more,  it's hardly an issue for hobby projects)... So, what is?

When you write software, there is no such thing as "too fast" CPU  ::)
 

Offline qno

  • Frequent Contributor
  • **
  • Posts: 422
  • Country: nl
Re: Why are you still using 8 bit MCUs?
« Reply #4 on: March 01, 2011, 06:40:33 pm »
A lot of designers grew up with 8 bit and know the settings.
With a new one you have to set a zillion bits to get it working.

Also a new development environment and a lot of silicon errata decrease time to market.

If you do not need it why use an 32 bit when you can do it with 8.
Why spend money I don't have on things I don't need to impress people I don't like?
 

Offline jahonen

  • Super Contributor
  • ***
  • Posts: 1046
  • Country: fi
Re: Why are you still using 8 bit MCUs?
« Reply #5 on: March 01, 2011, 06:41:32 pm »
I think there are two reasons, one is that 32-bit MCUs tend to come only in modern IC packages (no DIPs) and another is that most people are reluctant to change to another modern MCU family (there are still people who insist on 8051 cores what they have learned in the 80's :P). Also, there is huge amount of code and documented projects for AVRs and (8-bit) PICs available on the Internet, not so much for ARM (although that will probably change as time passes).

Regards,
Janne
 

Offline john

  • Contributor
  • Posts: 7
Re: Why are you still using 8 bit MCUs?
« Reply #6 on: March 01, 2011, 06:48:49 pm »
I agree on packages issue, most (if not all) 32bit MCUs I've worked with are 0.5mm QFP, and there are also more and more BGAs coming... However, unless you use MCU to blink LEDs, many other chips are also coming in small pitch QFPs these days, and even worse, there are more and more LGAs. Try finding accelerometer or gyroscope in some decent, easy to solder package...  ??? 
 

Offline FreeThinker

  • Frequent Contributor
  • **
  • Posts: 791
  • Country: england
  • Truth through Thought
Re: Why are you still using 8 bit MCUs?
« Reply #7 on: March 01, 2011, 06:53:06 pm »
Then of  course there is the support issues, most 8 bit software is free or very cheap and you need a programmer too so while the 8 bit may not be the cheapest chip if you have to spend x amount extra to support it then you need a good reason to migrate
Machines were mice and Men were lions once upon a time, but now that it's the opposite it's twice upon a time.
MOONDOG
 

Offline Zero999

  • Super Contributor
  • ***
  • Posts: 15162
  • Country: gb
  • 0999
Re: Why are you still using 8 bit MCUs?
« Reply #8 on: March 01, 2011, 07:18:48 pm »
I heard that excuse couple of times, and I think it's a quite a lame excuse...
How do you define "overkill"? What do you get when you use 8 bit instead of 32 bit? Many 8 bit CPUs are actually more expensive than 32bit, so cost is not the issue (and even if it costs 2-3$ more,  it's hardly an issue for hobby projects)... So, what is?
What a load of rubbish.

Suppose you want a simple timer. Push a button to turn on a light for 10 minutes, push it at any time ro turn the light off and reset the timer. This can be done with the cheap six pin 8-bit PIC10F200 why would you want a more powerful MCU than that? Maybe it you needed more accuracy you'd use the PIC12F508 which can use a crystal but any more processing power is a waste of money.

There are 100s of project which only need a cheap low power 8-bit processor to replace a few logic gates, counters and 555 timers.

If I were your employer and you wasted my money by using a 32-bit MCU for something so simple, you'd be out the door so fast your sorry arse wouldn't touch the floor!
 

Offline Mechatrommer

  • Super Contributor
  • ***
  • Posts: 10334
  • Country: my
  • reassessing directives...
Re: Why are you still using 8 bit MCUs?
« Reply #9 on: March 01, 2011, 07:24:12 pm »
john, can you point to any pin compatible or closest in size that is cheaper but the same (or more will be preferable) in capability than 8bit soic atTiny13a? if you can, than i will accept that i'm wrong and willing to jump in your 32bit boat. if not, then i think something wrong with you.
« Last Edit: March 01, 2011, 07:28:36 pm by Mechatrommer »
It's extremely difficult to start life.. one features of nature.. physical laws are mathematical theory of great beauty... You may wonder Why? our knowledge shows that nature is so constructed. We simply have to accept it. One could describe the situation by saying that... (Paul Dirac)
 

Offline john

  • Contributor
  • Posts: 7
Re: Why are you still using 8 bit MCUs?
« Reply #10 on: March 01, 2011, 07:30:59 pm »
Your example is valid, but a bit extreme...

But, lets take for example ATMEGA32/64, or PIC16 series... These MCUs are neither small, nor dirty cheap (like your PIC10/12)...

@Machatrommer
Take a look at LPC1100 series, like LPC1111. These 32bit MCUs are cheap, small, much faster and have MUCH more memory...
Yeah, I know, it's not SOIC...  ;D
 

Offline jahonen

  • Super Contributor
  • ***
  • Posts: 1046
  • Country: fi
Re: Why are you still using 8 bit MCUs?
« Reply #11 on: March 01, 2011, 07:37:01 pm »
Then of  course there is the support issues, most 8 bit software is free or very cheap and you need a programmer too so while the 8 bit may not be the cheapest chip if you have to spend x amount extra to support it then you need a good reason to migrate

Good thing about most ARMs is that they contain a boot loader for programming the flash memory which can be used with just an RS-232 level converter (or USB-to-serial transceiver), so no big issue there. Boot loader uses RS-232 in normal way, so no bit banging friendly hardware is required. Software is also free, FlashMagic for example. I'd say that programming is even more simple than with most PICs. Of course, if you want to debug seriously, one obviously needs a JTAG adapter.

There are 100s of project which only need a cheap low power 8-bit processor to replace a few logic gates, counters and 555 timers.

If I were your employer and you wasted my money by using a 32-bit MCU for something so simple, you'd be out the door so fast your sorry arse wouldn't touch the floor!

I think we have done this evaluation many times at my work and then came to conclusion that for most needs what we do, 32-bit MCU is the most cost effective option, even if it feels an overkill. Of course, the application is usually a bit more complex than just lighting leds etc., so comparison would probably be something like to PIC16F etc.

Regards,
Janne
 

Offline Mechatrommer

  • Super Contributor
  • ***
  • Posts: 10334
  • Country: my
  • reassessing directives...
Re: Why are you still using 8 bit MCUs?
« Reply #12 on: March 01, 2011, 08:05:26 pm »
Take a look at LPC1100 series, like LPC1111. These 32bit MCUs are cheap, small, much faster and have MUCH more memory...
Yeah, I know, it's not SOIC...  ;D
the datasheet is here http://pdf1.alldatasheet.com/datasheet-pdf/view/345419/NXP/LPC1111.html
dev kit here http://cgi.ebay.com.my/Mini-development-board-ARM-Cortex-M0-LPC1114-Z-/160517506659?pt=LH_DefaultDomain_0&hash=item255f96c663
only in qfn, not a problem for factory, more problem with hobbiest.
still bigger, will be a problem if "small size project does matter"

price at digikey compared to attiny here
http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name=568-4957-ND
http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name=ATTINY13A-SSH-ND
for order 100qty, lpc is 60cents more expensive, more quantity (1000+) will be price competetive.

imho, from my short search, overall the lpc is suitable for professional mass production, not so for hobbiest unless 50MHz speed and more pins matter. for a person who have learnt pic and atmel a bit like me, lpc is a new to study and to buy the programmer, enhance my soldering skill or need to buy/build a reflow machine.

pls give me reason why i should upgrade to 32bit if all i want is few pins (2-4), very small, easy to solder, and already know how to program and have the programmer. if i need the 28pins and 50MHz, sure i will look into 32bit Cortex M0. is atTiny13a has something wrong?
« Last Edit: March 01, 2011, 08:10:40 pm by Mechatrommer »
It's extremely difficult to start life.. one features of nature.. physical laws are mathematical theory of great beauty... You may wonder Why? our knowledge shows that nature is so constructed. We simply have to accept it. One could describe the situation by saying that... (Paul Dirac)
 

Offline john

  • Contributor
  • Posts: 7
Re: Why are you still using 8 bit MCUs?
« Reply #13 on: March 01, 2011, 08:21:44 pm »
for a person who have learnt pic and atmel a bit like me, lpc is a new to study and to buy the programmer, enhance my soldering skill or need to buy/build a reflow machine.
pls give me reason why i should upgrade to 32bit if all i want is few pins (2-4), very small, easy to solder, and already know how to program and have the programmer. if i need the 28pins and 50MHz, sure i will look into 32bit Cortex M0. is atTiny13a has something wrong?

First, you don't need a programmer, most of the 32bit chips can be programmed through serial port, although, getting a JTAG for debugging is very handy.
I don't accept "need to learn new stuff" as a good reason. Why? Because, sooner or later (probably sooner), you will do some project that will require more powerfull MCU. And then what? You'll probably try to squeze your application in a poor little fellow, instead of using a decent MCU...
This is exacly why I think that working with 32bit parts for hobby projects is actually better, because once you master 32bit chips, you can do both simple and complex project with the same architecture, without need to learn new stuff...

But as I agreed above, nice package like DIP or SOIC is a very good reason to use those 8 bit chips...
 

Offline slburris

  • Frequent Contributor
  • **
  • Posts: 535
Re: Why are you still using 8 bit MCUs?
« Reply #14 on: March 01, 2011, 09:25:51 pm »
For myself, I rarely use PICs or AVRs anymore.  I *used* to struggle with
designs that outgrew their memory and/or program space.  Now days
I just use the LM3SXXXX TI (formerly Luminary Micro) chips.  Nice
Cortex ARM chips with plenty of everything, and the cost is pretty much
a wash.

I have friends trying to fit things into 2K of RAM or 8K of flash, and when
they start mumbling about switching some of their code to assembly,
I just ask why they are still using such chips?  The economics of trying to
squeeze every possible byte out of something just don't make sense anymore.

And I'm a big proponent of slapping a small $6 FPGA on every design as well,
and that gives me the ultimate flexibility to decide what to do in hardware and
what to do in software.  But you do have to climb the VHDL/Verilog learning
curve.  But none if this is beyond the capability of a hobbyist.

Scott
 

Offline Psi

  • Super Contributor
  • ***
  • Posts: 7891
  • Country: nz
Re: Why are you still using 8 bit MCUs?
« Reply #15 on: March 01, 2011, 09:52:07 pm »
For myself, I rarely use PICs or AVRs anymore.  I *used* to struggle with
designs that outgrew their memory and/or program space.  Now days
I just use the LM3SXXXX TI (formerly Luminary Micro) chips.  Nice
Cortex ARM chips with plenty of everything, and the cost is pretty much
a wash.

Thanks for that, the LM3SXXXX series actually looks quite good.
Built in serial flash loader looks great, I'm sick of using the lpt port :P

Greek letter 'Psi' (not Pounds per Square Inch)
 

Offline john

  • Contributor
  • Posts: 7
Re: Why are you still using 8 bit MCUs?
« Reply #16 on: March 01, 2011, 10:38:06 pm »
Thanks for that, the LM3SXXXX series actually looks quite good.
Built in serial flash loader looks great, I'm sick of using the lpt port :P

If you are looking for something powerful, you can also take a look at TMS320F28335. It's 150Mhz MCU with FPU. Serial flash loader, free c/c++ eclipse based IDE, reasonably priced jtag (79$). But other than that, they are crap (no 8bit data types, very funky when you need to pack a structure and send to a serial port, poor docs, etc...) and worst of all, they are so damn popular that you can't buy them, out of stock for last six months or so...   ;D

@slburris
Where did you find $6 FPGA? Cheapest I could find so far (large enough to put soft core CPU and some peripherals, and NOT BGA) are Cyclone3/4, 20k+LE for 30$-40$.
« Last Edit: March 01, 2011, 10:43:23 pm by john »
 

Offline slburris

  • Frequent Contributor
  • **
  • Posts: 535
Re: Why are you still using 8 bit MCUs?
« Reply #17 on: March 01, 2011, 10:55:16 pm »

@slburris
Where did you find $6 FPGA? Cheapest I could find so far (large enough to put soft core CPU and some peripherals, and NOT BGA) are Cyclone3/4, 20k+LE for 30$-40$.

Xilinx XC3S50A-4VQ100C $5.75 qty 1 at Avnet:

http://avnetexpress.avnet.com

Large enough to put in several PicoBlaze soft cores, not sure about bigger soft cores
since I don't usually do that.  I haven't done much with Altera's chips, but I know of
no cheap FPGA from them.

At the very least, it's stupid to have to implement UART, SPI, I2C, etc in software
with associated timing constraints, when in a $6 chip like this I can easily create 20
such peripherals and run it on SPI back to the main processor.  No bit-banging needed
here!

Or for a big chip not in BGA:

Xilinx XC3S500E-4PQG208C but that's about $24.

Scott
 

Offline mikeselectricstuff

  • Super Contributor
  • ***
  • Posts: 12401
  • Country: gb
    • Mike's Electric Stuff
Re: Why are you still using 8 bit MCUs?
« Reply #18 on: March 01, 2011, 11:45:48 pm »

@slburris
Where did you find $6 FPGA? Cheapest I could find so far (large enough to put soft core CPU and some peripherals, and NOT BGA) are Cyclone3/4, 20k+LE for 30$-40$.

Xilinx XC3S50A-4VQ100C $5.75 qty 1 at Avnet:

http://avnetexpress.avnet.com


FPGA pricing is strange - 'published' prices at places like Digikey are a lot higher than what you can actually get them for. e.g. I was recently quoted GBP2.80 (~USD4.20) for XC3S50A in QFP144 in low-100 qty. I've had comparable pricing on similar Lattice EC1 parts. I'm told that a reason is the manufacturers consider FPGAs need a lot of support from the distributor and want to tie customers in to a distributpr to recoup support costs so you have to go through the pantomime of the disti applying to the manufacturer for 'supported pricing'.
With  FPGAs you also have to consider the additional costs - config memory, core voltage regulator, oscillator and the fact that routing on 2 layer boards can be tricky due to the number of power/ground pins needed even if you don't actually want to use many pins. Board area is also a significant issue - QFP100 is generally the smallest non-BGA package, and by the time you've added the  support parts and decoupling you're talking a fair size and.or double-sided assembly.
I don't think there are many situations where you'd use an FPGA for an app that a micro was capable of - it would lose out on at least some of power, cost and space considerations.  

As regards why still use 8 bit, there are a number of reasons, but most of the low-end ARMs have limitations - typically no onboard EEPROM, and 3.3V-only operation being common reasons I choose a PIC or AVR over an ARM for some applications.
The only reason 32 bit costs are approaching 8 bit is they're made on newer processes that probably aren't worth the 8-bit families' manufacturers' investing in. For a given process, 8 bit will always use less die area and less power than 32 bit except maybe for the few  applications that can really make better use of the extra bus width.  

As it has always been, an always will be, it's a case of 'different horses for different courses', there are just a few new types of horse out there, but the old nags aren't going to keel over anytime soon. Some people are still using 8051 based MCUs !

It would  be nice to see NXP's tiny little ARM in something like a SSOP-16 though...!
  
« Last Edit: March 01, 2011, 11:49:55 pm by mikeselectricstuff »
Youtube channel:Taking wierd stuff apart. Very apart.
Mike's Electric Stuff: High voltage, vintage electronics etc.
Day Job: Mostly LEDs
 

Online EEVblog

  • Administrator
  • *****
  • Posts: 32505
  • Country: au
    • EEVblog
Re: Why are you still using 8 bit MCUs?
« Reply #19 on: March 02, 2011, 12:12:38 am »
Why would anyone, today in 2011., choose an 8 bit microcontroller for his project?
There are lots of small, very cheap, low power 32 bit devices on the market (like for example Cortex M0 series). I don't mean just 32 bit ARM CPUs, but also all others like AVR32, TMS320C2000 series, PIC32, and many others...

What's wrong with you people?  ;D


Price and simplicity.
And they are NOT "small"

The cheapest in-stock 32bit micro from Digikey in 1-off qty is the LPC1111FHN33/102,5
$2.02 in a 32-VQFN package.
Hardly cheap, nor the friendliest package to use.
And that's the smallest 32bit micro package.

8 bit on the other hand.
Cheapest in stock part is a PIC10F200-I/P
$0.58 1-off qty 8 pin DIP package
Smallest package is SOT23-6 and plenty available in DIP etc.

Easily capable of doing the many small tasked required of a micro.

What's wrong with people who don't understand horses for courses! :-P

Dave.
 

Offline mkissin

  • Regular Contributor
  • *
  • Posts: 94
Re: Why are you still using 8 bit MCUs?
« Reply #20 on: March 02, 2011, 12:48:00 am »
Something else which is often a consideration in the high-power electronics that I work with is the operational voltages.

8-bit micros are very simple to obtain with a 5V operating voltage, but the same isn't true of 32-bit micros which generally run at 3.3V or lower. That 1.7V drop can make a huge difference in an electrically noisy environment. Limiting yourself to a 5V micro greatly restricts the number of >8-bit chips available.
 

Offline Mechatrommer

  • Super Contributor
  • ***
  • Posts: 10334
  • Country: my
  • reassessing directives...
Re: Why are you still using 8 bit MCUs?
« Reply #21 on: March 02, 2011, 03:09:10 am »
Price and simplicity.
Cheapest in stock part is a PIC10F200-I/P
$0.58 1-off qty 8 pin DIP package
got it. just look how cute they are... 10f200 and tiny13a

It's extremely difficult to start life.. one features of nature.. physical laws are mathematical theory of great beauty... You may wonder Why? our knowledge shows that nature is so constructed. We simply have to accept it. One could describe the situation by saying that... (Paul Dirac)
 

Online EEVblog

  • Administrator
  • *****
  • Posts: 32505
  • Country: au
    • EEVblog
Re: Why are you still using 8 bit MCUs?
« Reply #22 on: March 02, 2011, 03:20:30 am »
Something else which is often a consideration in the high-power electronics that I work with is the operational voltages.

8-bit micros are very simple to obtain with a 5V operating voltage, but the same isn't true of 32-bit micros which generally run at 3.3V or lower.

Good point.
Many in fact need lower rails and have built in low drop regs to power the core that need an external cap.
Is there a 32bit micro at all that runs from 5V? Off the to of my head I can't think of one.

Dave.
 

Offline slburris

  • Frequent Contributor
  • **
  • Posts: 535
Re: Why are you still using 8 bit MCUs?
« Reply #23 on: March 02, 2011, 04:07:27 am »
It all comes down to what your needs are.  I stand by my
point that it's silly to spend hours these days trying to squeeze
into a small micro if your problem space is really bigger than
the chip you choose.

On the other hand, if the problem easily fits, go for it!  I had
a problem recently where I needed a fairly precise reset sequence,
i.e. a signal changed state and I needed to reset a couple other
things in sequence for a certain number of microseconds.  How did
I do it?  I programmed a little PIC10 to do the right thing.  Worked
like a charm.

Sure I could probably have done the same thing, with less precision,
using a 556 or a couple 555's, but this took up far less board space
and performed easily within the timing criteria I needed.

Re 5V designs.  I really don't do many of those anymore.  Mostly
I work at 3.3v.  The FPGAs I work with can use 3.3v for both I/O
and JTAG, so I just need a little LDO to generate 1.2v, so the multi-voltage
thing really isn't that hard.  But yes, I concede routing can be
a pain, especially with 2 layer boards.  But a little planning ahead
on the pin layout can go a long way.  I do realize my FPGAs everywhere
philosophy is in the minority :-)

The other way to go is with something like the Propeller chip, where you
basically have cores to waste doing cycle counting to generate signals
and you can run the main software on cores not doing cycle counting.

Scott
 

Offline Lance

  • Frequent Contributor
  • **
  • Posts: 312
  • Resistance if futile if R<1Ohm
Re: Why are you still using 8 bit MCUs?
« Reply #24 on: March 02, 2011, 05:49:44 am »
It all comes down to what your needs are.  I stand by my
point that it's silly to spend hours these days trying to squeeze
into a small micro if your problem space is really bigger than
the chip you choose.

On the other hand, if the problem easily fits, go for it!  I had
a problem recently where I needed a fairly precise reset sequence,
i.e. a signal changed state and I needed to reset a couple other
things in sequence for a certain number of microseconds.  How did
I do it?  I programmed a little PIC10 to do the right thing.  Worked
like a charm.

Sure I could probably have done the same thing, with less precision,
using a 556 or a couple 555's, but this took up far less board space
and performed easily within the timing criteria I needed.

Re 5V designs.  I really don't do many of those anymore.  Mostly
I work at 3.3v.  The FPGAs I work with can use 3.3v for both I/O
and JTAG, so I just need a little LDO to generate 1.2v, so the multi-voltage
thing really isn't that hard.  But yes, I concede routing can be
a pain, especially with 2 layer boards.  But a little planning ahead
on the pin layout can go a long way.  I do realize my FPGAs everywhere
philosophy is in the minority :-)

The other way to go is with something like the Propeller chip, where you
basically have cores to waste doing cycle counting to generate signals
and you can run the main software on cores not doing cycle counting.

Scott

Agreed. Find what fits your needs. 32 bits micros aren't friendly to newcomers. Just because one is simpler doesn't make it useless. 
#include "main.h"
#include <pic.h>
//#include <killallhumans.h>
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf