# Microcontroller with >30KB RAM and high performance in a TQFP-44 or similar package

I'm looking for a microcontroller in a TQFP-44 package with 30 KB or more of RAM and, if possible 40 MIPS instruction cycle speed or faster. I can find dsPIC33F's with 30 KB of RAM, but they come in TQFP-100 packages, and I'm only going to be using maybe 15-20 pins of those so it seems like a massive waste of space and money.

So I'm looking for some reasonably sized package with lots of RAM. I've given up on the SO28's but if anyone finds one it would be excellent as well.

Current candidates are the Parallax Propeller, but that only has 20 MIPS instruction cycle, and the dsPIC's in TQFP-100's. One parameter but not both!!

This is for my Super OSD project.

• >Current candidates are the Parallax Propeller, but that only has 20 MIPS instruction cycle -- but thats 20 MIPS for each of eight cogs, for a total of 160 MIPS for the entire chip. Of course you won't get high performance using their interpreted Spin language -- you'll need to go to assembly or C. Note: you are probably already aware of this, but the Propeller can output NTSC/PAL/VGA with just a few resistors as an interfacem which might be useful for an OSD project. – tcrosley Oct 28 '10 at 23:42
• I'm dealing with an OSD output stage which can't be made parallel. (Background things like line drawing could be "queued" and six of the eight cogs assigned to rendering them.) However, the chip DOES have an onboard TV scan line output stage which could be made to work with relative ease, I would need to disable the colour modulation though because without proper sync it will go all wrong. – Thomas O Oct 28 '10 at 23:44
• Not being parallelizeable is not necessarily an objection to the propeller. You could pipeline the operations, with each COG doing a small part of the computation, and passing the results off to the next COG through the hub ram. – Connor Wolf Oct 29 '10 at 5:08
• Farnell has a nice parametric search: export.farnell.com/microcontrollers-mcu – starblue Oct 29 '10 at 7:47

Atmel makes a 32-bit 60 MHz AT32UC3B1256 AVR microcontroller with 256K of flash, 32KB of RAM in a 48-pin TQFP package. That's as close as I could find to your specs.

• This is great - I'll check it out! – Thomas O Oct 28 '10 at 23:47
• I'm starting to like these AVR32's, they look pretty powerful. I might be losing my PIC religion. haha. – Thomas O Oct 28 '10 at 23:49
• p.s. Atmel has a $149 evaluation kit with the 64-pin 128KB flash, 32KB RAM version of the chip: store.atmel.com/PartDetail.aspx?q=p:10500065 – tcrosley Oct 29 '10 at 0:28 • I thought AVR32 was comparable to PIC32? – Kortuk Oct 29 '10 at 2:21 • I have been using the AVR32B for over a year now. They have worked really well. They are approximately equivalent to the Cortex-M3 but (for me) a better peripheral fit and vastly superior low power modes. – uɐɪ Oct 29 '10 at 8:27 Atmel makes some Cortex-M3 parts that come in LQFP-48 (or QFN-48) packages. There are three different RAM sizes available...16, 32, and 48 KB. ARM claims the Cortex-M3 executes 1.25 MIPS/MHz and these parts have a maximum clock speed of 64 MHz so figure 1.25*64 = 80 MIPS. • I wonder why these didn't show up in my Digikey search? Their parametric table is a nice way to select a part, I've never liked the rest of their site. By the way, their mature SAM7 series (ARM7TDMI, not Cortex-M3) is going to be cheaper and better stocked-their Cortex M3 line (for this question, the SAM3S2A) is only sampling right now. – Kevin Vermeer Oct 28 '10 at 23:40 • The reason was that the referenced parts aren't in Digikey's inventory yet, and the 48-pin devices have too little RAM, and the chips with sufficient RAM have 64 pins. – Kevin Vermeer Oct 28 '10 at 23:44 Consider an ARM microcontroller. To find exactly what you want, I recommend that you search manufacturer websites (TI/Luminary, Atmel, ST Micro, NXP, etc). They all have product search systems. • I was considering an STM32. It would be ideal. I could live with 20KB RAM, but I wouldn't have as much resolution. – Thomas O Oct 28 '10 at 23:40 Running your requirements through Digikey's interface (In stock, then 32kB+ of RAM, then 40MHz+, then >48-pin packages) results in: • P8X32A-XXX:$8, 80MHz Parallax Propeller, in DIP, QFP, and LQFN packages, 32kB RAM
• AT32UC3B1128: $10, 60MHz Atmel AVR32 in QFN Exposed Pad, 32kB RAM ( • LPC2105:$15, 60MHz NXP ARM7 chip in 48-LQFP, 64kB RAM

I feel bad just throwing Digikey pages at you, but it's pretty easy. I started to do Mouser, but they can't seem to figure out how to sort their values.

Also, the cost will probably be determined as much by the volume in which the part is produced as by the number of pins. Don't sweat 40 vs. 64 pins. Oh, and please break out the other pins to through holes or at least test points for future hackers!

• Every mm counts - but for hackers there is an I2C interface, two UART interfaces, and both chips have an ICSP interface for reprogramming. – Thomas O Oct 28 '10 at 23:36
• If every mm really counts, go QFN ... or BGA – Toby Jaffey Oct 28 '10 at 23:42
• BGA? Good luck soldering that! I need proper reflow facilities to do that. Actually, it turns out TQFP-100 packages aren't as big as I thought, and I may be able to move some functions like servo control and ADC over to the TQFP-100, then I wouldn't be wasting so many pins; a second micro could do the lesser tasks and act as the bus master for I2C. – Thomas O Oct 28 '10 at 23:46
• Ah, missed the space part. I just read 'waste of money'. I've edited to link to the smaller packages for the Parallax and NXP chips instead. – Kevin Vermeer Oct 28 '10 at 23:47
• Money is important but not critical, as long as it's <\$20 USD it'll be fine. – Thomas O Oct 28 '10 at 23:50

Check the PIC24 range - there are some 44 pin parts, some with USB host, which may have more than normal RAM to support the USB functions. You don't often see large RAM or flash in low pin counts due to the size of the die - the large pin count isn't a major factor in cost, it's the die size for the RAM etc. Similarly you don't see large pin counts on low-end devices as the size of the pad ring dictates the die size, so it would be a waste of silicon to not use it for functionality.