AT32u in a nutshell

I’m new to the scene and trying to wrap my mind around exactly what the AT “u” series chips do as compared to the more common AVR chips. I’ve seen they include a “native USB core”, but what exactly does that mean?

To put this in perspective, I found a project online that allows an ATmega8 to become a USB slave device with a few zener diodes and resistors. The data line triggers an ISR via Int0, and some highly-optimized assembly routines handle the software portion. Incidentally, on the other side of the ATmega is a set of NES/SNES controllers, thereby allowing use of old-skool gamepads as HID joysticks. Great! It’s limited to low-speed USB, and can’t really handle bulk transfers, but that’s OK for projects like this.

Since apparently you can make a USB device from a mega8, what’s the justification for the “u” family? What advantages are there to having “native” USB support? Is there any reason not to use a generic AVR? Parts count is already ridiculously low, and from what I can tell, the “u” chips still require a software stack, so I’m assuming the difference is reliability, speed, or code simplicity.

(Disclaimer: I haven’t read the datasheet yet, since I expect that to be much more detailed and targeted towards someone that already knows why they’ve chosen that part. I’m looking for a high-level bullet list to get my frame of reference. If there’s some high-profile article on this, I’ve missed it.)

While you can bit-bang USB on any digital pins, it’s like dedicated SPI, serial, or I2C - the more the hardware can do for you, the less you have to do yourself. Given the limited memory on the AVR chips, that’s always a good thing.

The native USB support in the “u” chips means easy, high-speed communication mostly done for you, so you can concentrate on your project and not have to worry about host connectivity.

The other point I can think of would be cost: The old method needed a FT232RL ($4.50) + ATMega328 ($3.93) = $8.43 ea. The Uno method substitutes an ATmega16U2 ($3.82), lowering price to $7.75. Using an ATMega32U4 only one chip is needed, simplifying circuit design and part layout, and since it’s $6.21, costs less too.

(all prices qty 1 ea from Digi-Key).

There are also performance issues (bit-banging USB on a normal ATmega requires a substantial fraction of the total CPU power), and conformance issues (VUSB and friends won't actually pass the tests needed to be an "official" USB interface.)