De façon régulière, nous parlons de chip binning dans nos actualités et dossiers, et certains voient ça comme une manière détournée de nous vendre des puces défectueuses au prix fort. Mais le chip binning ne se limite pas à ce cliché : c'est une solution essentielle dans l'arsenal des concepteurs des puces pour segmenter facilement les gammes et nous livrer des puces à prix élevé… mais aussi des composants d'entrée de gamme.
La gravure, c'est juste des carrés dans des ronds
Pour comprendre la suite, il faut expliquer succinctement comment fonctionne la gravure. Quand une société décide de fabriquer une puce, elle va créer un masque, c'est-à-dire le plan de cette dernière. Dans un système sur puce moderne, on va trouver des cœurs CPU, des cœurs GPU, des blocs pour l'USB, le contrôleur mémoire, etc. Le masque permet de confectionner la puce, qui est rectangulaire et qui intègre donc un nombre prédéfini de cœurs pour le processeur, la partie graphique, etc. Elle est gravée sur ce qu'on appelle un wafer, un disque de silicium. Le nom est imagé : les cases ressemblent à des gaufrettes (wafer en anglais).
Ce qu’il est important de comprendre, c'est que le wafer a une taille fixe (300 mm de diamètre) et surtout un prix fixe. Il est de l'ordre de 20 000 $ avec les finesses de gravure modernes, selon plusieurs sources. Le coût réel d'une puce va donc être basiquement le prix du wafer divisé par le nombre de composants gravés. Pour donner une idée, un système sur puce d'iPhone classique (l'A18 par exemple) mesure 90 mm² et plus la complexité augmente, plus le tarif monte. Les puces M3, M3 Pro et M3 Max sont significativement plus grandes que l'A18.
Le nombre de pièces dans un wafer n'est pas un calcul bête et méchant : le wafer est circulaire, tandis que les puces sont rectangulaires et qu’il y a un peu de pertes. Pas besoin d'être un crack en mathématiques pour comprendre : quand on met des carrés dans un cercle, on gaspille de l'espace. Et surtout le processus de gravure n'est pas parfait et génère des erreurs, qui peuvent rendre une puce inutilisable.
Dans le jargon technique, on parle de yield (rendement en français), qui est donc le nombre de puces exploitables sur un wafer. Même si les fabricants sont discrets sur les chiffres, il est généralement admis qu'un rendement de 60 % est le minimum pour une production en masse et qu'une valeur élevée est plus intéressante économiquement. Un exemple (qui ne prend pas en compte les pertes liées à la surface circulaire) permet de bien comprendre la situation : à 20 000 $ le wafer, il est possible de fabriquer à la grosse louche environ 750 puces de 90 mm², soit un coût de production (hors R&D) de l'ordre de 26 $ (20 000/750). Mais si le rendement est de seulement 60 %, le client récupérera à peu près 450 puces et le prix passe à 44 $ étant donné que celui du wafer ne bouge pas.
Pour tenter de réduire les pertes, les fabricants optimisent les puces (ce qui explique les différentes révisions d'un composant) mais font donc aussi ce qu'on appelle du chip binning, le sujet de cet article. L'idée est simple : les erreurs évoquées peuvent être vues comme un ensemble de transistors qui ne fonctionnent pas correctement, ou schématiquement à un élément qui rend la puce inutilisable. Mais si votre masque comprend 5 cœurs pour le GPU, par exemple, il est possible de récupérer certaines puces avec des erreurs. Si la partie défectueuse est dans un des cœurs GPU, il « suffit » de vendre le composant en tant que modèle avec 4 cœurs.
Ce n'est pas un remède magique : il faut que les erreurs se concentrent dans une zone précise qui peut être désactivée (CPU, GPU, etc.), mais cette technique permet d’augmenter artificiellement le rendement. Pour l'exemple, s'il est possible de récupérer 10 % des puces, le rendement passe à 70 %, avec 525 composants utilisables et un prix qui descend à 38 $. Le chip binning n'est pas une solution parfaite et nécessite de nombreux compromis, mais l'idée est là : réduire les pertes.