Étape 1: matériaux
Afin de travailler sur ce projet, vous aurez besoin de ces matériaux suivants :
MCBSTM32F400 - CŒUR ARM CORTEX M3
Cette planche MCU est l’hôte de notre système d’exploitation temps réel, l’API de haut niveau graphique et l’API audio de haut niveau.
Caractéristiques principales concernant notre projet :
CODEC Audio Line-In/Out et Microphone/haut-parleur est disponible sur la carte MCU et serviront pour jeu audio.
2,4 pouces couleur QVGA TFT LCD avec écran tactile résistif : cet écran LCD est supprimé de la carte de MCU, révélant un connecteur 34 broches qui utilisera pour se connecter à la carte Nexys 3 à la MCU.
Contrôleur de mémoire de statique flexible (EFM): l’embarqué dans le jury de la MCU. Il a quatre sorties de Chip Select supportant les modes suivants : PCCard/Compact Flash, SRAM, PSRAM, ni Flash et Flash NAND. Pour notre application, nous allons utiliser le mode SRAM afin de transférer des données entre la carte FPGA et le jury de la MCU.
Contrôleur DMA : Le dispositif de deux polyvalents double port DMAs 8 flux de chaque. Ils sont capables de gérer les transferts de mémoire-à-mémoire, périphériques-à-mémoire et mémoire-à-périphérique. Nous allons utiliser le contrôleur DMA pour faire un transfert rapide et direct des sprites et des images de fond à la mémoire FPGA (RAM vidéo).
Carte MicroSD Interface : La fente pour carte SD disponible dans le jury de MCBSTM32F400 servira à charger n’importe quel jeu à exécuter sur notre console portable.
Boutons poussoirs et 5 positions levier de commande : Le microcontrôleur ARM CORTEX M3 nous avons utilisé ont deux boutons et une manette de jeu 5-position que nous pouvons en fait utiliser n’importe quel jeu sur notre console.
FGPA - Xilinx Spartan 6
Notre GPU sera exécuté sur la carte Nexys 3.
Caractéristiques principales concernant notre projet :
- 16Mbyte Micron RAM cellulaire : La RAM cellulaire peut effectuer des opérations asynchrones avec un temps d’accès 70 et éclater acess opérations vers le haut au taux de 80 MHz.
- 8-bit VGA : Le port VGA servira pour fins de débogage. Application réelle apparaît sur l’affichage Tech DT035TFT LCD.
- Quatre connecteurs à double largeur Pmod™ : Ces connecteurs servira à raccorder la carte MCU avec la carte Nexys 3.
- VHDC connecto r: Ce connecteur servira à relier l’écran LCD avec la carte FPGA.
Affichage LCD DT035TFT Tech :
Ce LCD remplacera celui intégrés à la carte de la MCU. C’est qu'un plus puissant 24 bit RGB LCD avec Novatek NT39016 pilote.
LCD - Nexys 3 PCB :
L’objectif principal de ce PCB est de connecter le FPGA à l’écran LCD en utilisant le connecteur VHDC le FPGA.
La première chose à faire est de connecter les signaux de données venant de la puce NOVATEK du LCD au connecteur où sera branché le connecteur VHDC. Le sol va être directement relié à la terre de l’approvisionnement. Afin de générer les 18 V, permet de mettre sous tension le rétroéclairage de l’écran LCD, nous avons utilisé l’un régulateur de tension variable à convertir le 24 V générée par l’alimentation à la 18 V connecté directement à l’écran LCD.
Pour générer le 3.3 V servi d’alimentation de l’écran LCD, nous avons utilisé un autre régulateur de tension fixe. Puisque ce régulateur génère les 3,3 V à partir d’une tension V 15, nous avons utilisé un pont diviseur de tension pour générer une tension de 15V à partir le 24 entraîne un recours V par l’alimentation.
Nexys 3 - MCU PCB :
Afin de connecter le microcontrôleur STM32 pour les FPGA, nous avons conçu un PCB très simple contenant uniquement deux connecteurs. L’une est reliée à broches du connecteur LCD sur le STM32. Ces broches sont directement connectés à l’EFM périphérique. Le second connecteur est relié aux connecteurs Pmod de FPGA.
Nous pouvons donc résumer ce PCB comme un circuit simple de diriger les signaux venant de l’EFM pour le FPGA, plus précisément l’interface MCU mis en œuvre sur le FPGA.