Få indlejrede mikroprocessor/FPGA-kombinationsdesigns hurtigt op og køre med SoM'er

Af Steve Leibson

Bidraget af DigiKeys nordamerikanske redaktører

Mange indlejrede designs kan gøre brug af single board-computere (SBC'er) og systemer på moduler (SoM'er) baseret på mikroprocessorer og mikrocontrollere (se f.eks. "Byg en billig industriel controller med Raspberry Pi 3"). Mange indlejrede applikationer kan imidlertid ikke tåle de forsinkelser, der er forbundet med softwareafhængige svartider.

Disse applikationer har brug for den ekstra ydeevne, der kun er tilgængelig med specialfremstillet hardware, og den hurtigste måde at udvikle specialfremstillet hardware på er ved hjælp af en FPGA.

I denne artikel diskuteres fordelene ved at bruge SoM'er til udvikling af indlejrede systemer, der har brug for den ekstra processorkraft, som FPGA'er giver. Der vil også blive introduceret en række FPGA SoM'er og diskuteret deres anvendelse i udviklingen af indlejrede designs.

FPGA-systemets rolle i forbindelse med modulet

En SoM hjælper designere med at udvikle indlejrede systemer med brugerdefinerede grænseflader i en formfaktor uden at skulle udvikle et centralt processorsystem fra bunden. Designere kan tilslutte en forud designet og testet SoM til enten et forud designet eller et specialfremstillet bærekort for at skabe et indlejret design, der fungerer identisk med et design, der er fuldt ud specialfremstillet. Hardwareudviklingen vil dog kræve meget mindre tid.

Der er en række fordele ved at bruge en SoM i forhold til at udvikle hardware fra bunden. Disse inkluderer:

  • Omkostningsbesparelser (når man tager de samlede NRE-omkostninger i betragtning, der er forbundet med udvikling og fejlfinding af et kort-baseret på et SoC)
  • Reduceret designrisiko
  • Flere SoC-valgmuligheder (på grund af SoM's tilslutningsmuligheder)
  • Lille fodaftryk
  • Parallel udvikling af hardware og software

SoM'er indtager nu den niche, som tidligere blev indtaget af mikroprocessorer og mikrocontrollere, da gennemgående og sokkelbaserede dele dominerede. Pin-kompatibilitet gjorde det muligt for designeren at vælge mellem en række kompatible processorer med den rigtige processorclockfrekvens og den helt rigtige mængde hukommelse på chippen. Men højere pin-antal og overflademontering har forladt denne designtilgang og åbnet op for skabelsen af SoM'er med formfaktorer og fodaftryk, der tjener samme formål som de tidligere pin-kompatible mikrocontroller-familier.

Ved at bruge en SoM til projektets computerplatform kan designingeniørerne fokusere deres indsats og ressourcer på at udvikle den endelige applikation i stedet for at blive opslugt af detaljerne i forbindelse med udformningen af en computerplatform. For eksempel bliver det ved clockfrekvenser på flere hundrede megahertz stadig vanskeligere at lave kortlayout til SDRAM'er, der er koblet til applikationsprocessoren, på grund af differentielle sporforsinkelser, støj, crosstalk og en lang række andre udfordringer. I mellemtiden har SoM-leverandørerne allerede taget disse udfordringer op og forkortet markedsføringstiden ved at få en stor del af designet udført, før projektet er startet.

Valg af en SoM-familie til et udviklingsprojekt kræver en omhyggelig analyse af faktorer, herunder forventede krav til indlejrede ressourcer, behovet for designskalering og fremtidssikring samt brugervenlighed. Det hjælper at vælge en SoM-formfaktor og et fodaftryk, der giver rigeligt med valgmuligheder til de kendte udfordringer og til uforudsete fremtidige udfordringer. Valg af en SoM-familie med flere medlemmer med en kompatibel formfaktor og stikfodaftryk udvider designteamets valgmuligheder og giver yderligere fremtidssikring.

En ny type SoM baseret på SOC'er med processorer og FPGA'er

SoM'er indeholder ofte SoC'er med flere applikationsprocessorer, men en ny klasse af indlejrede processor SoCs, der indeholder en FPGA, som f.eks. Xilinx All Programmable Zynq®-7000 SoC, er også velegnet til SoM-design . Xilinx Zynq-7000 SoC'er integrerer softwareprogrammerbarheden af en Arm® Cortex®-A9-applikationsprocessor med hardwareprogrammerbarheden af en FPGA. Zynq SoC's indbyggede Arm-mikroprocessorer, kombineret med hærdede perifere enheder og en SDRAM-hukommelsescontroller kaldet Zynq SoC's "processorsystem" eller "PS", udfører alle de softwarebaserede opgaver, der normalt håndteres af en indlejret mikroprocessor eller mikrocontroller, mens den integrerede FPGA (kaldet Zynq SoC's "PL" for "programmable logic") giver hardware I/O-responstider og hardwareacceleration til indlejrede opgaver, der kræver hurtigere udførelse.

Xilinx Zynq SoC'er fås med en række forskellige processorkonfigurationer og hastigheder, og der er endnu flere forskellige muligheder med hensyn til mængden af FPGA-struktur, der er tilgængelig på chippen. Valg af en SoM-familie baseret på en hybrid processor/FPGA SoC som Xilinx Zynq-7000-familien udvider valgmulighederne og forbedrer fremtidssikrin endnu mere.

En af disse SoM-familier er TE0720-serien (figur 1) og det tilhørende SoM-bærerkort, TE0703 fra Trenz Electronic. Alle SoM'er er baseret på en fælles formfaktor på 4 x 5 cm. Modulerne i Trenz Electronic TE0720-serien indeholder et af to medlemmer fra Xilinx Zynq-7000 SoC-familien:

Alle disse SoM'er har et fælles stikfodaftryk, der omfatter tre Samtec LSHM hermafroditiske stik med flere hundrede I/O-stifter samt strøm- og jordstifter mellem SoM'en og bærekortet.

Diagram af Trenz Electronic TE0720 SoM

Figur 1: Trenz Electronic TE0720 SoM indeholder enten Xilinx Zynq Z-7020 eller Z-7014S SoC'en sammen med 1 Gbyte SDRAM og yderligere ikke-flygtige hukommelser. (Billedkilde: Trenz Electronic)

Måske er den bedste måde at forstå fleksibiliteten i SoM-designtilgangen på at se på TE0703-bærerkortet til TE0720 SoM-serien og derefter arbejde sig tilbage ind i SoM'en gennem I/O-pin'erne for at se på SoM'ens ressourcer (figur 2).

Diagram over Trenz TE0703-bærerkortet

Figur 2: Trenz TE0703-bærerkortet fordeler de mange I/O-stifter fra det tilhørende 4 x 5 cm SoM-kort til resten af det indlejrede system. (Billedkilde: Trenz Electronic)

Blokdiagrammet for TE0703 viser de mange vigtige I/O-funktioner, der er uddelt fra SoM-kortet, herunder:

  • 1 Gbit/s Ethernet
  • USB og Mini USB
  • Micro SD-kort
  • Hundredvis af I/O-stifter (kan konfigureres som individuelle digitale I/O-stifter eller som LVDS-par (Low Voltage Differential Signaling Pairs))

SoM'er og SBC'er har hver deres plads

Behandlingshastighed, responstid og I/O-kapacitet er kendetegnende for SoM'er. SBC'er som Arduino Uno og Raspberry Pi-familien indgår dog også ofte i indlejrede systemer, da de også har en bred base af support. Derfor tilbyder Trenz Electronic også versioner af Arduino- og Raspberry Pi-kort, TE0723-03M ArduZynq og TE0726-03M ZynqBerry, som er baseret på en Xilinx Zynq-7000 SoC. Disse SBC'er danner bro til mange eksisterende plugin-kort såsom Arduino-skjolde og Raspberry-hatte og -hjelme.

Der er en betydelig forskel i mængden af FPGA-kapacitet mellem Zynq Z-7010 SoC'erne, der er indbygget i TE0723-03M ArduZynq- og TE0726-03M ZynqBerry SBC'erne, sammenlignet med den kapacitet, der er indbygget i TE0720-serien af Trenz Electronic SoM'er, som indeholder Zynq Z-7014S og Zynq Z-7020 SoC-enhederne. Selv om alle Zynq-7000 SoC'er indeholder en Arm Cortex-A9-processor med to kerner, er der forskel på enhederne med hensyn til mængden af FPGA'er på enheden, som vist i tabel 1:

Xilinx Zynq SoC Programmerbare logiske celler Mbits Block RAM DSP-skiver
Z-7010 28K 2,1 80
Z-7014S 65K 3,8 170
Z-7020 85K 4,9 220

Tabel 1: Xilinx Zynq-7000 SoC'er, der anvendes i Trenz Electronic's SOM'er (Z-7014S og Z-7020), har mange flere FPGA-ressourcer end Zynq Z-7010, der anvendes i Trenz Electronic ArduZynq- og ZynqBerry SBC'er. (Datakilde: DigiKey)

Desuden har TE0723-03M ArduZynq- og TE0726-03M ZynqBerry SBC'erne 512 MByte SDRAM om bord, mens TE0720 SoM'erne har 1 GByte.

Trenz Electronic leverer flere bærekort til sine SoM'er, herunder TE0703-05, TE0706-02, TE0701-06 og TEB0745-02. Disse kort giver en bred vifte af standardiserede I/O-funktioner. Et af disse bærerkort kan være velegnet til et bestemt indlejret program, men det er også muligt at opdele designet af det indlejrede system i et specialudviklet bærerkort, der accepterer en række SoM'er inden for en familie for at opfylde forskellige behandlingsbehov. Denne fleksibilitet understreger nytten af en designtilgang, der er baseret på en SoM-familie som grundlaget for et indlejret design. SoM's konsistente og standardiserede stikfodaftryk gør det nemt at udskifte en SoM med en anden for at imødekomme ændringer i systemspecifikationen.

Konklusion

SoM'er kan i høj grad reducere den tid, der er nødvendig for at lave prototyper af indlejrede systemer, og reducere projektrisikoen. Når først en SoM-formfaktor og et stikfodaftryk er vedtaget, kan SoM'er med større mængder FPGA-ressourcer tilsluttes for at opfylde voksende behov. Derudover kan en række kompatible SoM'er baseret på Xilinx Zynq-7000 SoC'er, som kombinerer processorkraften i en dobbeltkerne Arm Cortex-A9-processor med FPGA-ressourcer, også bidrage til at fremskynde udviklingen af indlejrede designs.

Denne SoM-tilgang til indlejret design forkorter ikke blot den tid, der er nødvendig for at udvikle hardwaredelen, men gør det også muligt at starte softwareudviklingen tidligere i projektet og dermed reducere designrisikoen. Det giver også en god fleksibilitet, hvis projektets omfang og krav skulle vokse.

 
DigiKey logo

Disclaimer: The opinions, beliefs, and viewpoints expressed by the various authors and/or forum participants on this website do not necessarily reflect the opinions, beliefs, and viewpoints of DigiKey or official policies of DigiKey.

Om denne forfatter

Image of Steve Leibson

Steve Leibson

Steve Leibson was a systems engineer for HP and Cadnetix, the Editor in Chief for EDN and Microprocessor Report, a tech blogger for Xilinx and Cadence (among others), and he served as the technology expert on two episodes of “The Next Wave with Leonard Nimoy.” He has helped design engineers develop better, faster, more reliable systems for 33 years.

Om udgiveren

DigiKeys nordamerikanske redaktører