česky english Vítejte, dnes je úterý 19. březen 2024

Hledání formátu pro ověřování napříč platformami

12.02. 2019 | Zprávy
Autor: Radek Řezníček
PortableStimulusVerificationUvodni1.jpg

Accellera je nezávislá nezisková organizace pro tvorbu standardů a podporu návrhu na úrovni systému (system-level design), jeho modelování a testování. Vyvíjí specifikaci formátu přenositelného mezi platformami z různých oblastí testování (ověřování). Ověřování v návrhu na systémové úrovni zabírá až 70 % doby vývoje.

Návrh na úrovni systému (system-level design) je metodologie návrhu, kdy inženýr bere v potaz všechny komponenty budoucího systému. Jednotliví experti na dané komponenty nemusí rozumět ostatním částem, a to může vést k mnoha nedorozuměním v průběhu návrhu. Nástroje pro návrh systému přináší větší abstrakci a intuitivní propojení hardwaru a softwaru, návrhář pracuje na vyšší úrovni, která bere v potaz rozličné součásti, které ovšem nemusí znát do detailu a stále je schopný navrhnout použitelný produkt.

Použití stejného nástroje (stejných testovacích postupů, vstupů, podnětů) pro testování a ověřování ve všech oblastech návrhu (formal, emulace, FPGA, prototypování, …) je v současnosti prakticky nemožné, jelikož se využívá rozdílných nástrojů pro různé části, bloky (SystemC, VHDL, …) nebo celé SoC (vestavěný software). Proto Accellera vytváří standard Portable Stimulus Specification (PSS) shrnující použití jednoho budícího impulzu, stimulu na všech platformách.

Problémem od začátku byl výběr nástroje, kterým by mělo být sjednocení dosaženo, jelikož kód pro vestavěné procesory je psaný v C, výjimečně v C++. Kdežto návrháři hardwaru používají primárně SystemVerilog a koncepty UVM a constrined-random stimulus obsahující biasing a další přístupy k ověřování. Vznikly proto dva formáty PSS-DSL vycházející ze SystemVerilogu a sémanticky ekvivalentní PSS-C++.

PortableStimulusVerification

Oba formáty poskytují funkce pro popis složitých SoC tak, aby je bylo možné realizovat pomocí EDA. Accellera PSS podporuje náhodná i systematická data a struktury, omezení známá ze SystemVerilogu i algoritmus dědění známý z objektově orientovaných programovacích jazyků.

Přenositelný budící impulz (portable stimulus) je relativně nový koncept, ale je poměrně důležitým krokem v ověřování funkce složitých SoC. Proto vznikl PSS a Accellera Systems Iniciative nyní nabádá k jeho využití a usnadnění ověřování napříč hierarchií i mezi rozdílnými použitými platformami. Přičemž doporučovaná je verze PSS-DSL.

Více se můžete dozvědět z článku na Tech Design Forum nebo z odborného článku.

radek@cadware.cz