Étape 6: Conception matérielle interne
Dans cette étape, je me suis concentré sur la conception de matériel dans le Zynq SoC.
- Un nouveau design est créé avec le matériel présent sur la carte (XC7Z010CLG400-1).
- Un système de traitement des ZYNQ bras est utilisé comme dispositif principal (MicroBlaze alternativement peut être utilisé en cas de FPGA - mais cela sera couvert dans une autre instructable). La configuration de base peut être téléchargée à partir du Centre de ressources
- Peu de personnalisation doit être fait sur mon appareil : BL2 le module sera relié à un connecteur PMOD donc un périphérique UART doit être mappé aux broches EMIO. La ADS1299 communique sur le protocole SPI, donc le SPI est également outrouted. Un périphérique I2C est nécessaire pour l’EEPROM série avec une adresse MAC. Il faut activer les chronométreurs et le watchDog Timer dans le noyau de bras. Dernière mais non des moindres le contrôleur d’interruption Global doivent être modifié en activant les ports d’interruption partagées du tissu interruption PL-PS.
- La carte SD périphérique doit être activée, et l’écriture protéger peu attaché à 0.
- Maintenant les broches EMIO doivent figurer certains numéros de ports. Cela peut être fait en ajoutant un fichier de contrainte. Avec les options modifier un jeu de contraintes et d’ajouter une contrainte, je pouvais créer le fichier XDC requis. Les deffinitions de goupille ZYBO se trouvent dans le Manuel de référence.
Le fichier XDC a la syntaxe suivante :
La première ligne mappe une tige interne (comme UART_txd) sur une broche externe (comme W14), tandis que la seconde ligne fixe les normes de cet axe.
Maintenant, j’ai ajouté seulement un sapin du compilateur IP pour des fins de test, mais le filtre sera remplacé plus tard par IIR + FIR versions faite à HLS.
Afin de travailler avec l’IP de compilateur de sapin, un bloc moteur AXI Stream doit être ajouté au système avec ports de largeur de données correspondant ou plus. Les coefficients de sapin ont été sauvés de l’outil de la FDA dans un fichier .coe au format hexadécimal, 16 bits entiers signés.
Avec cela, nous avons fait un matériel prêt pour le test inicial du noyau d’os à nu contenant le logiciel d’acquisition et pour le Core avec OS là-dessus. La seule étape à faire est de générer un bitstream et importer la conception SDK.