FPGA-ontwikkelprint gericht op kostengevoelige applicaties

Voor ontwerpers die de snelheid en hard gecodeerde werking van een FPGA willen benutten terwijl het uiteindelijke product vooral ook een lage kostprijs moet hebben, introduceerde Arrow het ontwikkelbord Max 1000. Dit combineert een Max 10 van Altera met extern geheugen en enkele aanvullende componenten. Het is toegankelijk via USB en haalt daar ook zijn voeding uit. Voor de in- en uitvoer zijn wat led’s en een paar schakelaars geïntegreerd maar vooral ook twee rijen aansluitingen die overeenkomen met de MKR-standaard zodat het mogelijk is om Arduino-extensies te gebruiken.

Het printje is er en het werkt, althans er gebeurt wat als het via de micro-USB-poort voeding krijgt. Maar veel meer zit er nog niet in en dat komt omdat gedetailleerde hardwarebeschrijvingen en passende ontwikkelhulpjes nog niet beschikbaar zijn. Dat is ook niet onlogisch want officieel is de Max1000 pas vanaf begin augustus bij Arrow te verkrijgen. En tegen die tijd zal, aldus de aankondiging, het FPGA-ontwikkelbordje vergezeld gaan van passende ondersteuning en diverse demo’s.

Doel van de 6 bij 2,5 cm metende module is om ontwerpers te helpen bij het realiseren van FPGA-gebaseerde applicaties en dan vooral toepassingen die niet heel complex zijn en vooral een lage kostprijs moeten hebben. Met het oog daarop is gebruik gemaakt van een Max 10, de instapserie programmeerbare componenten die Altera – inmiddels onderdeel van Intel – zo’n tweeënhalf jaar geleden op de markt bracht.

De bouwsteen wordt geflankeerd door een 64-Mbit dram en een drieassige mems-acceleratiesensor. Een USB-chip met fifo beheert de datastromen van en naar de PC-poort. Verder bevat het printje een 3,3-V spanningsregelaar en een mems-klokgenerator.

Dubbele configuratie

De Max 10-reeks telt zeven varianten die alle hun configuratie in niet-vluchtig flitsgeheugen bewaren. Zes daarvan, waaronder de op het ontwikkelbordje toegepaste M08, hebben genoeg ruimte om twee verschillende sets data op te slaan. Een afzonderlijke ingangslijn van het IC bepaalt welke daarvan bij het opstarten wordt geladen. In beide gevallen duurt het een kleine 10 ms tot de component bedrijfsklaar is.

Een alternatieve optie is dat de ene sectie fungeert als spiegelkopie van de tweede. Wordt van buitenaf nieuwe of bijgewerkte code in de chip geladen dan bestaat het risico dat, als dit proces wordt onderbroken, de schakeling helemaal niet meer functioneert. Door op te starten met de reserveconfiguratie kan dan de oude situatie worden hersteld.

De Max 10M08 heeft 8000 logicaelementen, 378 Kbyte statisch ram en, afhankelijk van de hoeveelheid code, 32 tot 172 Kbyte vrij te gebruiken flashgeheugen. Dat is voldoende om behalve hard geconfigureerde functies ook de Nios II, een eenvoudige microcontroller, te implementeren. Op de chip zitten verder 24 18-bit vermenigvuldigers, een temperatuursensor en een 12-bit negenkanaals 1-MHz analoog/digitaalomzetter. De 130 programmeerbare in- en uitgangen en 47 LVDS-lijnen en kunnen onder andere rechtstreeks dram en LCD’s aansturen.

schemaHet geïntegreerde flashgeheugen wordt zowel gebruikt voor een of twee sets configuratiedata als voor applicatiegerelateerde opslag

Arduino

Ten behoeve van uitbreiding met specifieke extensies voor in- en uitvoer, meten en regelen en bedrade dan wel draadloze communicatie bevat het bordje een Pmod-steker en twee connectorrijen. Deze volgen de MKR-standaard van de Arduino-computers zodat gebruik kan worden gemaakt van de vele, doorgaans zeer voordelige I/O-kaartjes in die markt.

aansluitingen

De ledjes doen het leuk in eenvoudige demo’s, voor het realiseren van hun complete applicatie zullen ontwikkelaars vooral de aansluitingen voor Arduino-compatibele extensies gebruiken.

Behalve met de Nios II-processor en met de toegezegde demotoepassingen kunnen ontwikkelaars qua FPGA-coderen ook helemaal in het diepe duiken. Het USB-stuurprogramma, dat inmiddels al wel beschikbaar is, maakt de module tevens toegankelijk vanuit Quartus Prime. Altera biedt deze omvangrijke ontwikkelomgeving onder meer in een kosteloze Lite-versie aan. Met dit pakket kunnen de programmeerbare bouwstenen van de fabrikant tot in het kleinste detail worden geconfigureerd en op verschillende niveaus gesimuleerd. Houd wel rekening met een lange leercurve, de algemene en Max 10-specifieke programmaonderdelen meten in ongeïnstalleerde vorm zo’n 3,3 Gbyte en de handleiding telt bijna 2000 pagina’s.

trenz 

Ontwikkelaar is het Duitse Trenz Electronic en op hun website is een, nu nog grotendeels lege, wiki te vinden met ondersteunende info, documenten en bestanden.

www.arroweurope.com

www.trenz-electronic.de