SparkFun Forums 

Where electronics enthusiasts find answers.

Have questions about a SparkFun product or board? This is the place to be.
User avatar
By roach
#10780
I'm using the Atmega128 header board (great product, BTW) from sparkfun, and was wondering if anyone can recommend an alternate (hopefully Atmel) uC with support for a higher XTAL. 16MHz is fine for tinkering, but some of the hardware I'm trying to interface runs at 20, or sometimes 32 MHz. I know that there are some PICs that can run faster, but is there anything from the AVR line?
User avatar
By leon_heller
#10783
roach wrote:I'm using the Atmega128 header board (great product, BTW) from sparkfun, and was wondering if anyone can recommend an alternate (hopefully Atmel) uC with support for a higher XTAL. 16MHz is fine for tinkering, but some of the hardware I'm trying to interface runs at 20, or sometimes 32 MHz. I know that there are some PICs that can run faster, but is there anything from the AVR line?
NO AVR can run that fast, why not use a 16-bit PIC or dsPIC? They can do 30 MIPS.
By Nutter
#10785
The fastest AVR can run up to 48MHz/MIPS: http://www.atmel.com/dyn/products/produ ... rt_id=3556

There are a number of ATMega products that will run at 20MHz/MIPS, see this list for the full lines specs: http://www.avrfreaks.net/index.php?modu ... nc=viewDev

Also, when comparing to PICs, remember that the clock rate of PICs is divided by 4 to get the MIPs - a 80MHz PIC is still only 20MIPS; no faster than an AVR. So the 48MHz AVR is nearly 2.5x the speed of the closest PIC. ;)

*edit: There's 30MIPS PICs now? Slipped my radar! The 48MHz AVR is hard to come by last I looked though, so it may be better to look at either the PIC or a ARM (much faster than either AVR or PIC).
User avatar
By leon_heller
#10787
Nutter wrote:The fastest AVR can run up to 48MHz/MIPS: http://www.atmel.com/dyn/products/produ ... rt_id=3556

There are a number of ATMega products that will run at 20MHz/MIPS, see this list for the full lines specs: http://www.avrfreaks.net/index.php?modu ... nc=viewDev

Also, when comparing to PICs, remember that the clock rate of PICs is divided by 4 to get the MIPs - a 80MHz PIC is still only 20MIPS; no faster than an AVR. So the 48MHz AVR is nearly 2.5x the speed of the closest PIC. ;)

*edit: There's 30MIPS PICs now? Slipped my radar! The 48MHz AVR is hard to come by last I looked though, so it may be better to look at either the PIC or a ARM (much faster than either AVR or PIC).
The new PICs are actually clocked at 120 MHz, with a PLL.

Most ARMs have very slow I/O, so probably aren't suitable for his application. Even the new 70 MIPS LPC2103 pins can only be toggled at about 18 MHz.

Leon
By wiml
#10788
How about Scenix's (Ubicom's?) fast PIC clone? I remember them advertising fairly fast 16C5x-equivalents.
User avatar
By roach
#10791
dang, this is more response than I expected! Thanks for all the ideas!
User avatar
By roach
#10800
Nutter wrote:The fastest AVR can run up to 48MHz/MIPS: http://www.atmel.com/dyn/products/produ ... rt_id=3556

There are a number of ATMega products that will run at 20MHz/MIPS, see this list for the full lines specs: http://www.avrfreaks.net/index.php?modu ... nc=viewDev
Yeah, unfortunately, they tend to trade off features for speed. The fastest one you pointed to, the AT76C713, has only 22K of program memory (compared to the ATmega128 with 128 K of rewriteable flash).
By Philba
#10801
22K is a LOT of program. why do you need so much?
User avatar
By phalanx
#10822
Microchip's dsPIC30F devices can run at 30MIPS (120Mhz PLL). You can run them faster but heat becomes an issue. If you can cool them properly, crank up the MIPS until you see errors and then back off a little.

The newest lines that will be commercially available shortly are the PIC24F and the dsPIC33F. Besides moving to 3.3V, these chips are now 2 clocks per instruction instead of 4. They are rated for 40MIPS which means the the PLL will be running at 80Mhz.

Don't forget that the 48Mhz AVR is only an 8-bit controller where the 3 I listed above from Microchip are 16-bit. While instruction speed might be a bit slower, you are working on twice as much data at a time. This will really become noticable if you are working with complex math equations or other large sets of data. The dsPIC controllers also have powerful (for a microcontroller anyway) DSP engines which can significantly increase the speed of mathematical calculations.

From what I understand, the DMA interface on the AVR is limited to 12Mhz where the ones in the PIC24 and dsPIC33F will run at the full instruction clock.

If memory space is a concern, even though the AVR supports 32K of external memory, the largest PIC controllers have up to 256K built in with 32K of RAM.

The higher MIPS PICs also seem to have a lot more built in functionality than the AVRs. Things like several more timers, dual SPI, dual I2C, multiple CCP modules, a/d converters, CAN controllers, CODEC interfaces, software error traps, and an alternative Interrupt Vector Table. While a lot of this could be done with clever coding, that takes up a lot of MIPS where it is directly handled by hardware in the PICs.

I just wish my dsPICs had 16 byte hardware FIFOs on the UART ports like the AVR! I also wouldn't be surprised if the AVR was a fair amount cheaper too.

-Bill
By transcendentnb2
#10831
In defense of the AVR fans out there, Atmel is going to announce a 32bit MCU/DSP line that can handle up to 400mhz this spring :wink:. Even besting ARMs...
By SOI_Sentinel
#10833
You mean release, the chip's already has some prelim data on their site. It's quite nice. dsPICs are really low level "true" DSPs. Mid level (100-500MIPs) are pretty much untouchable without expensive software (exception, the Analog Devices 600MHz 16 bit Blackfin) and usually need external memory and program storage. High end ones are just unaffordable (GFLOPs of performance, $500+ a chip).

Although it needs external SDRAM/SRAM and storage (flash), I REALLY LIKE the Blackfin design. It has one thing I wish I saw more often: a DMA parallel port with 2D DMA capability.

Anyway, this is not an AVR vs PIC war. They're both popular, they have their strengths and weaknesses. How about this...

Is this a parallel interface? Does it transfer in bursts (for instance, the camera here looks to transmit at bes 40% useful data)? What's the bus width if it's parallel?
User avatar
By roach
#10834
Philba wrote:22K is a LOT of program. why do you need so much?
Excellent question. The answer is, I don't. I'm developing a general-purpose platform, and want to have the biggest and fastest of everything, in order to hedge against future requirements :)

Gimme everything, and give it to me now! God, I sound like management.