Hay ventajas en usar un chip USB separado, y dejar que el AVR se comunique a través de su UART.
Una pila USB tiene que responder al sondeo del PC anfitrión. Esto ocurre al menos cada milisegundo. Esto significa que es aún más difícil garantizar una respuesta en tiempo real a los eventos, ya que la MCU puede ser interrumpida para responder al sondeo USB del host.
Cuando no hay nada que comunicar, o la MCU quiere centrarse completamente en una tarea en tiempo real, todavía tiene que responder a algunos eventos de sondeo USB del host, o el host "perderá" el dispositivo. Por tanto, es difícil de ignorar. Un chip USB dedicado, como un FTDI, descarga esas tareas del AVR.
Un pequeño problema es que la pila USB consumirá una cantidad razonable de memoria flash y RAM, por lo que el chip necesita más recursos que un simple AVR.
Además, las dos partes pueden separarse en dos placas, por lo que el USB no es un coste fijo, sino que podría compartirse entre varias placas.
Por otro lado, la mayor ventaja de utilizar un AVR con un periférico USB y una pila USB integrados es que sólo hay que comprar y montar una pieza.
No lo he comprobado recientemente, pero creo que los nuevos chips FTDI proporcionan una mayor velocidad de transferencia de datos USB que el USB del AVR. Sin embargo, las UART del AVR eran tan lentas que un AVR con USB es una transferencia más rápida que la combinación de FTDI (o cualquier interfaz USB) comunicándose a través de la UART del AVR debido a la lentitud de la UART del AVR.
Edición: FTDI hace otras interfaces además de la UART. Por ejemplo SPI. No tengo experiencia en su uso. Algunos AVR's soportan transferencias SPI de 9 (quizás 12) megabits. El FTDI es el maestro SPI, lo que no es ideal. Si el AVR está transmitiendo, podría estar bien, ya que los FTDI tienen búferes, pero recibir podría ser "como beber de una manguera". Según parece, tendrás que trabajar en el PC anfitrión para que funcione.
La mayor velocidad de transferencia puede ser a través de una placa hija Ethernet de 100mbits, pero no he visto mediciones de rendimiento.
Me parece bien utilizar otros microcontroladores que no sean AVR. Así que podría usar algo con una UART rápida y un controlador DMA que pudiera mover los caracteres sin la participación de la CPU. Si ese es un enfoque útil, tal vez mirar el Arduin Due, o el mbed, el ST mbed se llama nucelo que es de bajo costo.