Revision de IFT1213



- Portes et circuits logiques combinatoires
- Bascules bistables
- Machines à état fini (FSM), circuits séquentiels synchrones
- Unité arithmétique, transferts sur bus
- Architecture du jeu d’instruction (ISA : Instruction Set Architecture)
- Organisation de base de l’unité centrale


Le matériel :  (app.A)

Portes logiques :
Les portes de base sont présentées aux pages 482-483 (Figures A.5, A.6).  Ces portes sont celles qui sont le plus souvent utilisées pour décrire un circuit logique combinatoire, mais ne sont pas nécessairement les portes qui sont réellement implatées au niveau matériel (transistores), dépendant de la technologie utilisée.  Par exemple, dans plusieurs technologies (dont TTL et CMOS), le AND est fait avec un NAND suivi d’un NOT (voir figures A.10 et A.8).

Un circuit combinatoire est un ensemble de portes logiques (noeuds) connectées ensemble (arcs), sans qu’il n’y ait de cycle (graphe dirigé acyclique).

Circuits combinatoires importants : multiplexeur (MUX), démultiplexeur (DEMUX), décodeur, Full Adder  (pages 497-506).

Minimisation des expressions booléennes (pages 506-516) :
Pour trouver la somme de produits (SOP) ou le produit de sommes (POS) minimal, on peut utiliser les tables de Karnaugh (K-maps).  Ça fonctionne bien jusqu’à 4 variables; pour plus, ça devient un exercice de représentation mentale intéressant.

Il est à noter que ce n’est pas parcequ’une expression est en forme SOP (ou POS) minimale que c’est l’expression la plus simple, ni que c’est celle qui prendra le moins de temps à calculer par le circuit.  Fan-in versus profondeur du circuit :  en utilisant la forme SOP ou POS on fait un circuit avec une porte qui a un gros fan-in (beaucoup d’entrées), et ces portes sont grosses, lentes, et difficiles à réaliser directement en matériel.  Il est donc parfois préférable d’augmenter la profondeur du circuit pour dimminuer le nombre d’entrées des portes.

Circuits séquentiels :
C’est un circuit qui contient des cycles.  Par exemple, la bascule D (figure A.57, page 522).  Ces circuits fonctionnent à cause du délais de propagation des informations.  Quand on analyse un tel circuit il faut donc décrire son comportement dans le temps plutot que seulement une fonction combinatoire simple.  Les circuits combinatoires auquels on ajoute des boucles, sont difficiles à vérifier et à modéliser, alors on utilise plutôt des élements séquentiels synchrones de base (bascules bistables type D).  Pour chaque cycle dans le cicuit on met au moins une bascule, qui nous permet d’avoir un modèle de temps plus simple.  Les bascules D sont les plus utilisées (et les seules utilisées dans ce cours).  On modélisera donc nos circuits séquentiels comme dans la figure A.50 (page 517).

Écriture sur un bus : portes à trois états.
On veut utiliser un seul fil pour transmettre des informations venant de plusieurs sources (une après l’autre; pas en même temps).  Un MUX peut faire ça, mais il faut savoir d’avance le nombre de sources et le circuit peut devenir gros si ce nombre est grand.  Si plusieurs portes ont leur sortie branchées sur un même fil, il y a un court circuit si une porte écrit un 0 pendant qu’une autre écrit un 1.  On utilise donc des portes à 3 états.  Au lieu d’avoir une sortie à 0 ou 1, on a une sortie à 0, 1 ou Z (haute impédence).  Cette dernière met une grande résistance entre l'alimentation/masse et la sortie, ce qui laisse le fil de sortie à un voltage "flottant", c’est à dire qu’une autre porte peut facilement faire varier le voltage pour écrire un 0 ou un 1.  Donc on peut utiliser un seul fil, avec des portes à 3 états, où toutes sont à Z sauf une, au lieu d’utiliser un gros MUX.



Description d'un processeur :  (app.B et chap.2)

Ordinateur simple SRC

- Architecture RISC (Reduced Instruction Set Computer)
- Trois formats de base pour les instructions (op  ra, c1      op| ra, rb, c2       op ra, rb, rc, c3)
- Sept sousformats (Figure 2.9, page 51)
- 32 registres généraux

Types d’opérations :
- Chargement/Rangement (Load/Store)
    - ld r2, 4(r6)
    - st r2, 6(r6)
- Arithmétique/Logique entre les registres (ou petite constante)
    - add r1, r2, r3
- Branchement
    - brnz ici

Exemples d’encodage des instructions : pages 54 et 58
Description de l’exécution des instructions : pages 59-67


Projection en classe (.PDF)