Stap 13: Pinout.json
De map $CONNECTALDIR/boardinfo bevat een json-bestand voor elk ondersteund platform waarin de fysieke pinnen van de FPGA-apparaat. Deze pinnen zijn onderverdeeld in groepen die ruwweg met de fysieke aansluitingen op het bord corresponderen. zedboard.json, bevat bijvoorbeeld een groep "fmc1", waarin de pennen van de stekker van de VCC. "Pmoda", "pmodb", "pmodc", "pmodd" en "pmode" waarin de pinnen voor elk van de 5 pmod verbindingslijnen bevat. Tenslotte is er een groep met de naam "pinnen", waarin een willekeurige selectie van randapparatuur die we hebben gebruikt in onze voorbeelden, zoals leds en switches.
hbridge_simple exporteert een aanvullende pinnen interface. We moeten specificeren hoe u verbinding van deze signalen naar de fysieke pinnen. Niet volledig opgeven deze pinout zal leiden tot een mislukking van de bouw (Vivado kwesties een waarschuwing tijdens de fase van de koppeling en mislukt in de fase van laatste bitgen). We hebben de toewijzing opgegeven in pinout.jason, die naam in de gegenereerde Verilog aan een pin in het boardinfo-bestand wordt gekoppeld. Omdat veel van de connectoren enigszins modulaire zijn, hebben we vonden het nuttig toe te voegen een niveau van indirecte tussen de groepsnamen in de pinout bestand- en groepsnamen gedefinieerd op het boardinfo-bestand gebruikt. In pinout.json ziet u dat we met behulp van pennen J1, J2 en J5, J6 in groep "pmod". Omdat de groep "pmod" niet in de Raad van bestuur info bestand bestaat, geven we PIN_BINDING ter naar de Makefile om aan te geven van de werkelijke PMOD-connector, die wij zijn aangesloten. We kunnen net zo gemakkelijk hebt opgegeven "pmodc" direct in pinout.json, maar met behulp van deze toewijzing geven we onszelf meer flexibiliteit als we ooit willen aansluiten van de hbridges aan de verschillende pmod-connector.
Tot slot, wij een afhankelijkheid aan de doelgroep makefile gentarget ter naar de Makefile voor het genereren van de werkelijke consraints-bestand toevoegen. Het gegenereerde .xdc-bestand moet worden toegevoegd als een beperking van de te bouwen met behulp van CONNECTALFLAGS.