Design och verifiering på elektronisk systemnivå

Design och verifiering på elektronisk systemnivå (ESL) är en elektronisk designmetod, fokuserad på problem på högre abstraktionsnivå. Termen Electronic System Level eller ESL Design definierades först av Gartner Dataquest , ett EDA-industrianalysföretag, den 1 februari 2001. Det definieras i ESL Design and Verification som: "användningen av lämpliga abstraktioner för att öka förståelsen om ett system och att öka sannolikheten för en framgångsrik implementering av funktionalitet på ett kostnadseffektivt sätt."

Grundförutsättningen är att modellera beteendet för hela systemet med hjälp av ett högnivåspråk som C , C++ eller med grafiska "modellbaserade" designverktyg. Nyare språk dyker upp som möjliggör skapandet av en modell på en högre abstraktionsnivå, inklusive systemdesignspråk för allmänna ändamål som SysML såväl som de som är specifika för design av inbäddade system som SMDL och SSDL. Snabb och korrekt implementering av systemet kan automatiseras med hjälp av EDA- verktyg som högnivåsyntes och inbyggda mjukvaruverktyg, även om mycket av det utförs manuellt idag. ESL kan också uppnås genom att använda SystemC som ett abstrakt modelleringsspråk .

ESL är ett etablerat tillvägagångssätt hos många av världens ledande System-on-a-chip (SoC) designföretag och används alltmer inom systemdesign . Från sin tillkomst som en algoritmmodelleringsmetodik utan "inga länkar till implementering", utvecklas ESL till en uppsättning kompletterande metoder som möjliggör design, verifiering och felsökning av inbyggda system till hård- och mjukvaruimplementering av anpassad SoC , system-on- FPGA , system-on-board och hela multi-board-system.

Design och verifiering är två distinkta discipliner inom denna metodik. Vissa metoder är att hålla de två elementen åtskilda, medan andra förespråkar en närmare integration mellan design och verifiering.

Design

Oavsett om det gäller ESL eller andra system, hänvisar design till "samtidig design av hårdvaru- och mjukvarudelar i en elektronisk produkt."

Verktyg

Det finns olika typer av EDA-verktyg som används för ESL-design. Nyckelkomponenten är den virtuella plattformen som i huvudsak är en simulator. Den virtuella plattformen stöder oftast Transaction-level modellering (TLM), där operationer för en komponent på en annan modelleras med ett enkelt metodanrop mellan objekten som modellerar varje komponent. Denna abstraktion ger en avsevärd hastighet upp över cykel-exakt modellering, eftersom tusentals händelser på nätnivå i det verkliga systemet kan representeras genom att helt enkelt skicka en pekare, t.ex. för att modellera att ett Ethernet-paket har tagits emot, SystemC används ofta.

Andra verktyg stödjer import och export eller interkommunikation med komponenter modellerade på andra abstraktionsnivåer. Till exempel kan en RTL-komponent konverteras till en SystemC -modell med VtoC eller Verilator. Och High Level Synthesis kan användas för att konvertera C-modeller av en komponent till en RTL-implementering.

Verifiering

I ESL-design och -verifiering används verifieringstestning för att bevisa integriteten hos konstruktionen av systemet eller enheten. Många verifieringstekniker kan användas; dessa testmetoder är vanligtvis modifierade eller skräddarsydda för att bättre passa systemet eller enheten som testas. Vanliga ESL-verifieringsmetoder inkluderar, men är inte begränsade till:

  • Modulär arkitektur
  • Begränsad slumpmässig stimulansgenerering
  • Felinjektion
  • Kompletta simuleringsmiljöer

Verifiering tillhandahålls ofta av system-/enhetsdesignern, men i många fall krävs ytterligare oberoende verifiering

Utmaningar och kritik

En del kritik av ESL-design och verifiering har framförts. Dessa inkluderar för mycket fokus på C-baserade språk och utmaningar i att representera parallella processer. Det kan också hävdas att ESL-design och -verifiering är en delmängd av verifiering och validering .

Se även

Vidare läsning

  •   Alice C. Parker ; Yosef Tirat-Gefen; Suhrid A. Wadekar (2007). "Design på systemnivå". I Wai-Kai Chen (red.). VLSI-handboken (2:a upplagan). CRC Tryck. ISBN 978-0-8493-4199-1 . kapitel 76.
  •   Brian Bailey; Grant Martin (2010). ESL-modeller och deras tillämpning: Design och verifiering av elektroniska systemnivåer i praktiken . Springer. ISBN 978-1-4419-0964-0 .
  •   Frank Rogin; Rolf Drechsler (2010). Felsökning på elektronisk systemnivå . Springer. ISBN 978-90-481-9254-0 .
  •   Liming Xiu (2007). VLSI-kretsdesignmetodologi avmystifierad: en konceptuell taxonomi . Wiley-IEEE. ISBN 978-0-470-12742-1 .