Bonnell est une microarchitecture de processeur utilisée par les processeurs Intel Atom qui peut exécuter jusqu’à deux instructions par cycle[1],[2]. Comme beaucoup d’autres microprocesseurs x86, il traduit les instructions x86 (instructions CISC) en opérations internes plus simples (parfois appelées micro-ops, en fait des instructions de style RISC) avant l’exécution. La majorité des instructions produisent une micro-opération lorsqu’elles sont traduites, environ 4 % des instructions utilisées dans des programmes typiques produisant plusieurs micro-opérations. Le nombre d’instructions qui produisent plus d’une micro-opération est nettement inférieur à celui des microarchitectures P6 et NetBurst. Dans la microarchitecture Bonnell, les micro-opérations internes peuvent contenir à la fois une lecture mémoire et un stockage mémoire en même temps qu'une opération ALU, ce qui les rapproche du niveau x86 et les rend plus puissants que les micro-opérations utilisées dans les conceptions précédentes[3]. Cela permet des performances relativement bonnes avec seulement deux ALU sur entiers, et sans aucune réorganisation des instructions, exécution spéculative ou renommage de registres. Un effet secondaire de l’absence d’exécution spéculative est l’invulnérabilité contre Meltdown et Spectre.
La microarchitecture Bonnell représente donc une reprise partielle des principes utilisés dans les conceptions antérieures d’Intel telles que le P5 et le i486, dans le seul but d’améliorer le rapport de performance par watt. Cependant, l’hyper-threading est mis en œuvre de manière simple (c’est-à-dire à faible consommation) pour utiliser efficacement l’ensemble du pipeline en évitant les dépendances typiques d’un seul thread[3].