Abstract-Transaction-nivå modellering gör det möjligt att utforska flera SoC design arkitekturer, vilket leder till bättre prestanda och enklare verifiering av slutprodukten. I detta dokument presenterar vi en strategi för att designa och verifiera SystemC-modeller på transaktionsnivå. Vi integrerar verifieringen som en del av designflödet där vi först modellerar både design och egenskaper (skrivs in Property Specification language) i Unifed Modeling Language (UML); sedan översätter vi dem till ett mellanformat modellerat med AsmL [språk baserat på Abstract State Machines (ASM)]. AsmL modellen används för att generera en ändlig tillstånd maskin i konstruktionen, inklusive egenskaperna. Kontroll av att egenskaperna är korrekta utförs i farten medan man genererar statsmaskinen. Slutligen översätter vi den verifierade konstruktionen till SystemC och kartlägger egenskaperna till en uppsättning påståenden (som monitorer i C#) som kan återanvändas för att validera konstruktionen på lägre nivåer genom simulering. För befintliga SystemC-konstruktioner föreslår vi att koden ska översättas tillbaka till AsmL för att tillämpa samma verifieringsmetod. På SystemC-nivå presenterar vi också en genetisk algoritm för att förbättra påståendenas täckning. Vi kommer att säkerställa sundheten i vår strategi genom att bevisa riktigheten i SystemC-till-AsmL och AsmL-tillSystemC transformationer. Vi illustrerar vår strategi i två fallstudier inklusive PCI-bussstandarden och en master/slave generisk arkitektur från SystemC-biblioteket.
Habibi m.fl. REF konverterar en AsmL-modell av TLM till SystemC. En uppsättning egenskaper som anges i PSL omvandlas via AsmL till C#. På AsmL-nivån är egenskaperna kodade i varje tillstånd av konstruktionen och kan kontrolleras i farten under den ändliga tillstånd maskingenerering.
Design and verification of SystemC transaction-level models
{'venue': 'IEEE Transactions on Very Large Scale Integration (VLSI) Systems', 'journal': 'IEEE Transactions on Very Large Scale Integration (VLSI) Systems', 'mag_field_of_study': ['Computer Science']}