Programming the 32 bits CRAPS/SPARC processor on Xilinx Spartan-6 FPGA board (Nexys 3)
Coding > Programming the 32 bits CRAPS/SPARC processor on Xilinx Spartan-6 FPGA board (Nexys 3)
L'implémentation du processeur CRAPS sur la carte Nexys 3 se fait tout d'abord en synthétisant sur Xilinx ISE les sources VHDL modélisant son fonctionnement. Voici les sources VHDL ainsi que le "User Constraint File" (propre à la carte Nexys 3) utilisés ici :
Une fois la synthèse effectuée, on obtient un fichier binaire (.bit pour la mémoire volatile ou .mcs pour la EEPROM) que l'on charge sur la carte FPGA. Voici le .mcs pour Nexys 3 :
Nous allons maintenant utiliser un moniteur écrit en Java qui permet d'interagir en temps réel avec le processeur CRAPS. Ce programme utilise des fonctions natives en C++ (voir JNI), elles-mêmes faisant appel aux fonctions bas-niveau de la librairie Dcputil. Le moniteur est téléchargeables ici :