Вы находитесь на странице: 1из 6

IE5 FST 2020/2021

TP4 : Conception schématique de chemin de données et unité de contrôle sous


QUARTUS II

Objectif :

L’objectif de ce Lab est de proposer une implémentation schématique de quelques


éléments constituants une architecture RISC à 8 bits sous environnement Quartus.
Le schéma de son chemin de données est donné par la figure suivante

Les signaux de contrôle sont générés une unité de contrôle suivant le format d’instruction à
la sortie de la mémoire d’instruction. Sachant que encodage de chaque instruction sur un
mot de 16 bits et elle s’exécute sur un seul cycle horloge de Clk

Dr Dhafer MEZGHANI Page 1


IE5 FST 2020/2021

1. Conception de l’Unité Arithmétique et Logique sous Quartus


1.1. Conception d’une UAL élémentaire sous Quartus

L’UAL élémentaire proposée obéit à la table de fonctionnement suivante suivant ALU_op

Inv C0 S_Select fonction


x x 00 A and B
x x 01 A OR B
0 0 10 A plus B
1/ Rappeler la schématique de cette UAL
1 1 10 A moins B
x x 11 e3 élémentaire (Voir TP1)

2/Implémenter ce schéma déduit sous


environnement quartus sous le nom d’un projet « UAL_ele »

1.2. Conception d’une UAL à 8 bits sous Quartus

Une UAL à 8 bits est constitué de 8 UAL élémentaire en cascade suivant le schéma suivant

Dr Dhafer MEZGHANI Page 2


IE5 FST 2020/2021

Cette UAL à 8 bits dispose de trois drapeaux indiquant l’état de la retenue finale, le résultat
zéro et le débordement. Les signaux de contrôle ALU_ctr sont générés par l’unité de contrôle

1/Implémenter ce schéma sous environnement Quartus sous le nom d’un projet


« UAL_8bits » en faisant appel au symbole UAL_ele. 

2. Conception de Banc de registres sous Quartus

Ce banc de registres contient:

– Des registres à chargement parallèle


– Un mécanisme pour les charger à partir d’un port d’entrée (Décodeur+And)
– Un mécanisme pour aiguiller leur valeur à des ports de sortie (Multiplixeurs)

Dr Dhafer MEZGHANI Page 3


IE5 FST 2020/2021

2.1. Conception schématique de registres à chargement parallèle

Les registres de notre processeur RISC est formé de 8 bascules D dont le chargement dépond
de la variable C au moment du front montant de l’horloge Clk. Le schéma bloc est donné
comme suit.

1/Implémenter ce schéma sous environnement Quartus sous le nom d’un projet


« Reg_para » en faisant appel aux symboles de la bascule D et multiplixeur prédéfinis dans
l’environnement.

2.2. Conception du Banc de registres à 8 bits

1/Implémenter le schéma de la figure …. Sous environnement Quartus sous le nom de projet


« Banc_reg_8bits » en utilisant le symbole « Reg_para ».

3. Conception de la mémoire de données

On veut concevoir la schématique suivante, sous environnement Quartus, d’une mémoire de


données à 8 bits d’adresse et un bus de données à 8 bits

1/Implémenter le schéma de la figure ci-dessus Sous environnement Quartus sous le nom de


projet « memoireRAM » de la mémoire de données.

4. Conception de l’unité de Contrôle


4.1. Encodage des instructions en mémoire

Pour l’encodage des instructions, nous supposons que :

– Encodage sur un seul mot de 16 bits: chaque instruction s’exécute en un seul


cycle.

Dr Dhafer MEZGHANI Page 4


IE5 FST 2020/2021

– Le mot d’instruction est divisé en 6 champs pour le type R et 4 champs pour le


type I

– Modes d’adressage limités conformément à la philosophie RISC.

Nous voulons implémenter le jeu d’instructions suivantes :

Add $2,$3,$4

Sub $3,$3,5F

Ori $1,$2,0F

Lw $2, 10($3)

Sw $1, 10($2)

1/déterminer le format d’instruction de chaque instruction Sachant que :

Pour les instructions de type R, code opératoire est 00, fonction 00 pour add, fonction 01
pour sub

Pour les instructions de type I, code opératoire de lw est 01 et code opératoire de sw est 10
et code opératoire 11 pour ori

2/Implémenter les formats en fichier Hexadécimal (Voir TP3) sous le nom tableau3.hex

3/Concevoir une mémoire d’instruction de type ROM en utilisant le symbole utilisé dans le
TP3 en faisant appel à ce fichier héxadécimal. Enregistrer le projet sous le nom
« memoireROM ». dont le bus d’adresse est générér d’un registre à 8 bits qui charge la
nouvelle valeur de PC=PC+1 ou PC=PC+1+imm8 suivant la valeur de NPC_sel

Dr Dhafer MEZGHANI Page 5


IE5 FST 2020/2021

4.2. Conception de l’Unité de Contrôle

1/ Proposer la logique câblée de cette unité de contrôle pour implémentation des


instructions citées précédemment

2/ Proposer une schématique de cette unité sous le nom «  unite_controle »

Dr Dhafer MEZGHANI Page 6

Вам также может понравиться