Skriv ut
Nya systemkretsar som kombinerar FPGA-logik med hårda, flerkärniga processorer gör det enklare att möta tuffa specifikationer för prestanda, effektförbrukning och kostnad. Det skriver Chris Jenkins för Arrow Electronics Europe i Elektroniktidningens rapportserie Embedded Expert.
embexLadda ner artikeln med bilder i en PDF på 1,1 Mbyte (länk, pdf).
Fler tekniska rapporter finns på etn.se/papers
Trenden mot mindre och energieffektivare elektronik går vidare med oförminskad styrka. Även i produkter som skulle kunna tyckas vara tillräckligt små fortsätter användarna att kräva nya finesser, fler funktioner och bättre prestanda utan att produkten får blir större. Och elektronikindustrin svarar på kraven genom att integrera allt fler funktioner på samma krets, med nya halvledarprocesser, smart kretskonstruktion och sänkt effektförbrukning. För att inte tala om vilken effekt rätt utformad mjukvara kan ha för funktionalitet och effektförbrukning.

Den enorma framgången för FPGA:er beror till viss del på OEM-företagens konstanta krav på ständiga förbättringar, fler funktioner och kompaktare elektronik, liksom korta utvecklingscykler. Enligt siffror från Gartner har den globala försäljningen av programmerbar logik stigit från lite drygt 2 miljarder dollar år 2002 till nästan 6 miljarder dollar år 2011. Kapaciteten mätt i antal logikelement och RAM-minne har växt än snabbare, från cirka 100 000 till över 10 miljoner logikceller och från 1000 kbit till nästan 100 000 kbit RAM-minne under samma period.

AV:
Chris Jenkins,
EMEA Supplier Business Manager,
Arrow Electronics Europe
Idag har FPGA:erna stora mängder logikceller och minne liksom DSP-block, plus möjlighet att ansluta till snabba seriella bussar vilket gör att konstruktörerna kan implementera komplexa uppgifter i dem. Detta kan spara såväl kostnad som storlek och ingenjörstid jämfört med att använda ett antal standardkomponenter. Dessutom slipper man vänta på dessa standardkretsar, som också är tillgängliga för konkurrenterna.

Kompletta systemkretsar baserade på FPGA:er har funnits på konstruktörernas önskelistor en tid. Och nu finns produkter som stödjer mjuka och hårda processorer. Det är bland annat Stratix- och Cyclonefamiljerna från Altera som stödjer mjuka processorer som Nios II. Processorn använder resurserna i FPGA:an. De kan klockas upp till en maximal hastighet som bestäms av logikblocken. Bland funktionerna hos Nios II finns vektorinterrupt och möjligheten till användardefinierade instruktioner vilket gör det möjligt att pressa prestanda så att kretsarna klarar realtidskrav.

Figur 1 visar hur en mjuk Nios II-processor samverkar med DSP-blocken och logikdelen i FPGA:an. Applikationen är en industriell motorstyrning på en krets.

Utvecklingen av Arms styrkretsfamilj Cortex-M och applikationsprocessorn Cortex-A har gjort det möjligt att lyfta de FPGA-baserade systemkretsarna en nivå.

Cortex har i många avseenden förändrat spelplanen. Den har dramatiskt ökat förväntningarna avseende kostnadseffektivitet och prestanda hos både produktutvecklare och konsumenter. Vad gäller FPGA:er så medför den vitt spridda Cortexarkitekturen att företagen kan ta fram en ny typ av system-FPGA:er som dramatiskt ökar processorkapacitet och exekveringshastighet. De kan snabbt ta fram nya kretsar som erbjuder en intressant kombination av kraftfulla processorer, DSP-block, applikationsspecifik IP och logik som svarar på komplexa systembehov.

De här kretsarna gör det möjligt för konstruktörerna att sänka effektförbrukningen, kostnaden och ytan genom att FPGA:an och processorn integreras i en och samma krets. Dessutom kan konstruktörerna differentiera slutprodukterna vad gäller hård- och mjukvara. Det går också att förlänga livslängden och därmed inkomsterna genom att uppdatera mjukvara i fält.

Alteras SoC-FPGA:er – 28nm-familjerna Cyclone V och Arria V – har en processordel (HPS) med två hårda Cortex-A9-kärnor plus periferienheter och minneskontroller. Dessa är tätt kopplade till FPGA-logiken via ett ”bakplan” som klarar datatakter upp till 125 Gbit/s. Kopplingen ger helt andra busshastigheter än när man har två separata kretsar som snabb access till DSP-blocken med upp till 1600 GMACS och 300 Gflops i Arria V eller 150 GMACS och 100 Gflops för Cyclone V. Figur 2 visar arkitekturen i Alteras SoC-FPGA med kopplingen mellan processordelen och FPGA-logiken.

Processordelen ger upp till 4000 Mips med en effektförbrukning under 1,8 W. De hårda periferiblocken frigör FPGA-logik till andra uppgifter samtidigt som de sänker effektförbrukningen. Den hårda minneskontrollern – som delas mellan processorn och FPGA-logiken  – stödjer DDR2, DDR3, mobile DDR och LPDDR2. Den har inbyggd felkorrigering för säkerhetskritiska tillämpningar och annat som kräver hög tillförlitlighet.

Dessutom förbättrar processorsystemet realtidsegenskaperna i system där beräkningshastighet eller genomströmning bestämmer svarstiden. Genom att nyttja asymmetrisk multiprocessning (AMP) kan den ena Cortexkärnan köra operativsystemet och applikationsprogrammet medan den andra Cortexkärnan hanterar de tidskritiska realtidsuppgifterna.

Figur 3 visar ett sådant realtidssystem för avancerad motorstyrning med flera nätverksanslutningar i en enda SoC-FPGA.

Flexibiliteten i FPGA-delen av systemkretsen ökar friheten för konstruktörerna genom att tillåta implementation av i princip alla typer av gränssnitt. Vidare sänker kretsen kostnaden för systemet samtidigt som ytan och komplexiteten på kretskortet minskar. Antalet matningsspänningar blir färre – Cyclone V behöver bara två och Arria V bara tre. De har integrerade PLL:er vilket minskar behovet av oscillatorer på kortet. Kretsarna kan laddas med protokoll som använder PCIe vilket sänker kostnaden för flashminnet.

Den flexibilitet som FPGA-delen erbjuder gör det möjligt för konstruktörerna att differentiera sina produkter genom att lägga in egenutvecklad IP eller att använda färdiga IP-block från Altera eller någon av företagets samarbetspartners.

Det här gör att det går snabbt att anpassa produkten till olika protokoll eller gränssnitt och att addera algoritmer för tidskritiska uppgifter, samtidigt som energiförbrukningen och behovet av logik går ner genom att funktioner som PCI Express och minnesaccess har fått hårdkodade block.

Precis som för andra inbyggnadsplattformar är tillgängligheten kritisk. Konstruktörerna kan dra nytta av det ekosystem som finns runt Cortex-A9 inklusive utvecklingsverktyg, operativsystem och mellanvara. Mjukvaruutvecklingen görs på samma sätt som för andra inbyggda system.

Altera tillhandahåller tillsammans med sina samarbetspartners verktyg för varje steg i processen. Det finns operativsystem som Linux och Wind Rivers VxWorks men även en Linuxkärna och Board Support Package (BSP) för andra operativsystem, vilket gör att det går snabbt att komma igång.

För utveckling av mjukvaran finns Alteras SoC Embedded Design Suite (EDS). Den underlättar flytt av uppgifter mellan hårdvara och mjukvara, Linuxutveckling, programmering utan inblandning av operativsystem (bare metal) liksom adaptiv FPGA-avlusning.

Hårdvaruverktygen inkluderar Quartus II med systemintegrationsverktyget Qsys. Verktygen underlättar integrationen av IP-block och subsystem – att automatiskt generera förbindelser och HDL-kod.

Det finns verktyg för att möta tidskraven (timing closure) och för verifiering, för att automatiskt generera en simuleringsmodell och för att skapa dokumentation som kan användas av både hårdvaru- och mjukvaruutvecklarna.

Överlämning av uppgifter mellan hård- och mjukvara hanteras av Quartus II och Qsys, som ingår i Alteras EDS-svit. Verktygen genererar filer som gör det möjligt för de två designteamen att arbeta oberoende av varandra.

För att ge ytterligare stöd till utvecklarna har Arrow gått samman med Altera och Linear Technology kring ett utvecklingspaket kallat SoCKIT. Det innehåller ett utvärderingskort med en Cyclone V-SoC och många olika typer av bussar, inklusive Ethernet, USB och Uart. Vidare finns 256 Mbyte QSPI liksom in- och utgångar för ljud. Kortet har en hållare för SD-kort, 1 Gbit flash och 2x1 Gbit SDRAM. Vidare finns en 128x64 punkters LCD-panel.

Revolutionen i embeddedvärlden som Arms Cortexprocessor skapat med sin licensierbara modell har gjort det möjligt för FPGA-tillverkarna att ta ett stort steg mot att erbjuda enkretslösningar i form av fullt programmerbara plattformar.

Den nya generation av system-FPGA:er som nu ser dagens ljus, som Alteras Arria V och Cyclone V med hårda kärnor av typen Cortex-A9, svarar mot konstruktörernas behov av ett system där man på ett flexibelt sätt kan nyttja IP-block för att öka prestanda på ett energieffektivt sätt samtidigt som man får en bra utväxling på satsade pengar.