En réalité je travaille sur un projet sur la limite de communication de données par laser.
Actuellement on a réalisé des transmissions numériques sur fibre optique à 160 gigahertz de fréquence horloge
.
Industriellement on réalise du 40 gigahertz et du 10 gigahertz toujours de fréquence horloge.
Attention à ne pas mélanger fréquence horloge et fréquence des données.
Si le micro avec le timer en mode CTC ne peut pas générer plus de 8MHz c'est parce qu'avec une électronique synchrone on ne peut pas générer de signaux avec une fréquence supérieure à la moitiée de celle de l'horloge.
Voir le fonctionnement d'une bascule D pour comprendre pourquoi et/ou le théorème de Shannon.
Autre point tu veux envoyer une suite d'octets le plus rapidement possible mais as-tu défini un protocole ?
Un protocole aide à "retrouver ses petits" en réception. Mais pour ce faire il introduit des informations suplémentaires donc le débit utile, celui des données à transmettre, est inférieur au débit réel.
L'exemple le plus simple est le protocole de l'UART avec ses bits de start, stop, parité, etc.
En transmission en France on parle de "débit en ligne" et de "charge utile", aux US ils parlent aussi de débit en ligne mais au lieu de charge utile ils utilisent "payload". Nous pensons fonctionnement, les américains pensent manque à gagner. 
Le protocole peut induire un codage en ligne. Je ne vais parler que des deux faciles à générer avec la PWM : le mode NRZ (Non Retour à Zéro) et le mode RZ (Retour à Zéro).
La bande passante du canal de transmission (émetteur, conduit, récepteur) en mode RZ est le double de celle du mode NRZ. Par contre s'il faut récupérer une horloge à partir du flux de données c'est plus simple en mode RZ.
En mode NRZ le canal de transmission doit avoir une bande passante minimale de 0,8 fois la fréquence horloge. Cela correspond à la fréquence du théorème de Shannon plus une marge de sécurité pour assurer une linéarité de la phase.
Quel est ton besoin ?
-
Tirer le maximum d'une carte arduino et puis c'est tout
-
Réaliser une liaison la plus rapide.
Si c'est cette deuxième proposition je pense que les bonnes questions que tu devrais te poser sont :
- De quel débit j'ai réellement besoin ?
- qu'est ce qu'il me faut faire pour être en mesure de retrouver l'information dans le flot de données reçues.
En particulier quel protocole je vais utiliser à l'émission et quel traitement je vais devoir faire à la réception ?
En fonction des différentes réponses tu devrais être en mesure de déterminer quelle devra être la fréquence d'horloge du micro-processeur.
Edit :
Les trois timers peuvent faire du CTC ou du PWM
T2 est 8 bits
T1 est 16 bits --> pas utile pour aller vite
T0 est 8 bits --> il est utilisé par les fonctions arduino de gestion du"temps" : delay, millis,etc
A mon avis T2 est à utiliser en priorité, T0 peut l'être si tu n'a pas besoin des fonctions arduino gérant le temps.