Projet TICS

Oni's blog

TICS: Présentation du projet

TICS (The Integrated Circuit Simulator) à pour but de fournir une suite d'outils ergonomiques et puissants pour apprendre, créer et simuler des circuits logiques.

Cette suite d'outils sera intégrée dans un jeu, avec une histoire et une progression linéaire pour apprendre la conception de micro circuits et le reverse engineering (rétro-ingénierie) de manière ludique.

Le jeu sera lui même associé à une bibliothèque collaborative de micro architectures, accessible à tous.

Animation d'un 7-segment simulé
Simulation TICS d'un decodeur 7-Segment


Preservation et conservation

L'un des nombreux buts du projet TICS est de mettre au point un programme de preservation et de conservation d'architectures réelles et obsolètes de circuits intégrés (ou IC pour integrated circuits).

En effet, les architectures hardware évoluant très vite, de nombreux CPU et IC ne sont plus produits, deviennent difficiles à trouver, et disparaissent tout simplement. De nombreuses entreprises perdent les "plans" de ces fameuses puces et rares sont ceux qui vont les placer dans le domaine public.

Intel 4003
Circuit TICS du Intel 4003

Pourtant, ces architectures ont à la fois une valeur historique (il s'agit la des débuts de l'informatique) mais aussi intellectuelle. En effet, plus on remonte dans le passé, et moins les architectures comportent de composants. Cela les rend alors bien plus accessibles que ce soit au niveau de la comprehension, ou de la visualisation (en utilisant des outils de simulation).

Reverse engineering

Etant donné que dans la majorité des cas les plans ne sont plus accessibles, il faut alors les recréer directement à partir des puces.

C'est un travail complexe, fastidieux, qui demande un certain matériel, une certaine expertise et beaucoup de temps, d'ou l'importance d'un travail collaboratif.

Le jeu permettra aux personnes interessées par le projet d'apprendre tout ce qui est nécessaire pour participer au reverse engineering des circuits disponibles.

Analyse d'un IC

Pour reverse les plans d'une puce, il faut avoir accès à son DIE. Le DIE d'une puce est le petit block de silicium ou est gravé le circuit intégré. Il est généralement bien protégé dans un boitier noir, composé d'une matière plastique. Avec une photo assez précise (prise au microscope) d'un DIE, on peut recréer les plans d'origines utilisés pour la "gravure" de la puce (par photolithography), appellés layouts.

image-text
DIE du Intel 4004

Ce sont des images sur plusieurs couches, généralement:

Cela n'est évidemment vrai que pour certaines technologies (comme PMOS ou CMOS). Des technologies récentes peuvent avoir beaucoup plus de couches.

Il est possible d'acceder au DIE d'une puce de deux façons. Soit quelqu'un à déjà extrait le DIE d'une puce et a posté des photographies de bonne qualité sur un site dédié comme siliconpr0n.
Soit il faut extraire la puce soit même, ce qui demande un minimum de technique et de matériel pour accèder aux premières couches, voir un laboratoire complet pour acceder a des couches plus profondes.

Intel 4003 Intel 4003
Simulation TICS d'un circuit réel

Il faut bien entendu un microscope optique de bonne qualité pour pouvoir ensuite faire des photographies utilisables. Si on ne voit pas bien le circuit il est presque impossible de faire un reverse engineering fonctionnel.

Etapes du RE

Le reverse engineering consiste alors en plusieurs étapes:

A partir de cette étape, on a normalement une simulation fonctionnelle. Si l'IC possède une documentation, on peut alors emuler les I/O (entrées/sorties) et utiliser la simulation comme un circuit fonctionnel.

Sinon il faudra comprendre le fonctionnement du circuit de manière empirique.

Compteur 3 bit Intel 4003
Simulation TICS transistor level
et logic gate level du même circuit


Challenges

Le reverse engineering d'une puce est une tache complexe, longue et fastidieuse à mettre en place seul. Le but de ce projet sera de fournir un maximum d'outils pour simplifier les opérations, et pousser les collaborations en présentant cela sous forme d'un jeu.

image-text
Simulation TICS du Intel 4004

Tous les articles

  • Reverse Engineering du intel 4004