a m
play

A M A M IXED ED V ER ON ERIFICATION S TRATEG EGY T AILOR ED FOR OR - PowerPoint PPT Presentation

A M A M IXED ED V ER ON ERIFICATION S TRATEG EGY T AILOR ED FOR OR ORED N ET ORKS ON ON C C HIP ETWOR HIP G.Tsiligiannis, L.Pierre TIMA Laboratory, Grenoble, France I NTRODUCTION Questions: Is it worth defining a specific


  1. A M A M IXED ED V ER ON ERIFICATION S TRATEG EGY T AILOR ED FOR OR ORED N ET ORKS ON ON C C HIP ETWOR HIP � G.Tsiligiannis, L.Pierre TIMA Laboratory, Grenoble, France

  2. I NTRODUCTION �  Questions:  Is it worth defining a specific verification methodology for NoCs?  How should it look like?  Answer as a proposal:  Two-level approach:  Verification of coarse-grained features at the algorithmic level  Verification of fine-grained properties at the implementation level (VHDL RTL description)  For this latter goal  taxonomy of properties 2 NoCs'2012

  3. I NTRODUCTION �  « Verification »  Correctness of communications, considering NoC features:  Network architectural characteristics (topology)  Routing algorithm  Switching technique  Access control  Synchronous or asynchronous transmission protocol  Buffered or bufferless transmission  ... 3 NoCs'2012

  4. I NTRODUCTION �  Nowadays, few verification-oriented results  [Salaün et al, ASYNC’2007]: model checking approach, CHP specification translated into LOTOS description, some properties proven for FAUST (using CADP)  [Yean-Ru et al, ICGCS’2010]: verification of properties for a part of a wormhole XY-routing NoC router, using State Graph Manipulator  [Chenard et al, workshop at DATE’2007]: Assertion- Based Verification for a hierarchical ring network, debugging infrastructure  [Goossens et al, NoCs’2007]: also uses a monitor-based solution, and proposes a debug architecture 4 NoCs'2012

  5. P ROPOSAL �  Mixed verification strategy  Verification of high-level (algorithmic) properties  Network description at a high level of abstraction, focuses on functional features and ignores implementation details  Algorithmic specification + formal verification (description in a functional language and verification by theorem proving )  Complemented by verification of low-level (implementation) properties  Network description at a low level of abstraction: VHDL RTL source code  Specification by logic and temporal properties + semi-formal verification ( Assertion-Based Verification ) 5 NoCs'2012

  6. A PPLIED TO 2 STATE - OF - THE - ART N O C S �  Nostrum (http://www.ict.kth.se/nostrum/)  2D-mesh topology  Hot potato routing  Packet switching  Synchronous  Hermes (PUCRS, Brazil)  2D-mesh topology  Configurable routing (here minimal negative first routing)  Wormhole switching  Asynchronous (handshake protocol) 6 NoCs'2012

  7. A T THE ALGORITHMIC LEVEL �  Generic modeling and verification technique (*) GeNoC function + proof obligations 7 (*) D. Borrione, A. Helmy, L. Pierre, J. Schmaltz: “A formal approach to the verification of networks on chip”, EURASIP J. Embedded Systems, 2009 . NoCs'2012

  8. A T THE ALGORITHMIC LEVEL �  Generic modeling and verification technique (*) 8 (*) D. Borrione, A. Helmy, L. Pierre, J. Schmaltz: “A formal approach to the verification of networks on chip”, EURASIP J. Embedded Systems, 2009 . NoCs'2012

  9. A T THE IMPLEMENTATION LEVEL �  Assertion-Based Verification  Assertion : statement about the intended behaviour or a requirement of the design  Temporal logics: CTL, LTL,…  Specification languages: SVA (IEEE Std 1800), PSL (IEEE Std 1850)  Assertion-Based Verification : does the design obey these temporal assertions?  Static analysis (model checking)  Dynamic verification (during simulation) 9 NoCs'2012

  10. A T THE IMPLEMENTATION LEVEL �  Assertion-Based Verification  Assertion : statement about the intended behaviour or a requirement of the design  Temporal logics: CTL, LTL,…  Specification languages: SVA (IEEE Std 1800), PSL (IEEE Std 1850)  Assertion-Based Verification : does the design obey these temporal assertions?  Static analysis (model checking)  Dynamic verification (during simulation) 10 NoCs'2012

  11. A SSERTION - BASED VERIFICATION �  Verification of fine-grained properties on the signals of the design  Examples:  Temporal operators ERROR default clock = (posedge clk); END always (END -> next (START before ERROR)) START  Extended regular expressions default clock = (posedge clk); always ( { X and not Y; X and Y } |-> { not Ctrl [*8] ; Ctrl } ) 11 NoCs'2012

  12. A SSERTION - BASED VERIFICATION �  Hardware monitors from PSL assertions for router properties valid Monitor 1 valid Monitor 2 12 NoCs'2012

  13. C LASSIFICATION OF PROPERTIES �  General-purpose assertions for routers Property Routing QoS Synchronous/ Buffered/ asynchronous bufferless No packet loss + switching X technique No packet X X duplication Correct delivery Deterministic/ upon arrival fully adaptive Routing decision integrity Satisfaction of Guaranteed/best QoS effort Packet progression 13 NoCs'2012

  14. C LASSIFICATION OF PROPERTIES �  Example: No packet loss  Inside the router  Case of buffered communications  Wormhole: the allocated resources will remain allocated to the same packet flow until the last flit is transmitted  ...  Case of bufferless communications  If a packet enters the router, it will be ready to leave the router at the same cycle  A packet will not be dropped if the requesting destination is available  Between two routers  Case of synchronous communications  Case of asynchronous communications 14 NoCs'2012

  15. C LASSIFICATION OF PROPERTIES �  Example: No packet loss  Inside the router  Hermes (PUCRS, Brazil)  The allocated resources will remain allocated to the same packet flow until the last flit is transmitted 15 NoCs'2012

  16. C LASSIFICATION OF PROPERTIES �  Example: No packet loss  Inside the router  Hermes (PUCRS, Brazil)  The allocated resources will remain allocated to the same packet flow until the last flit is transmitted forall i in {0 to 4}: � always ((free(CONV_INTEGER(source(i)))=’0’ � and sender(i)=’1’) -> � (free(CONV_INTEGER(source(i)))=’0’ � and sender(i)=’1’) � until! sender(i)=’0’ ); � Relation output port / input port End of transmission 16 NoCs'2012

  17. C LASSIFICATION OF PROPERTIES �  Example: No packet loss  Inside the router  Nostrum (http://www.ict.kth.se/nostrum/)  If a packet enters the router, it will be ready to leave the router at the same cycle 17 NoCs'2012

  18. C LASSIFICATION OF PROPERTIES �  Example: No packet loss  Inside the router  Nostrum (http://www.ict.kth.se/nostrum/)  If a packet enters the router, it will be ready to leave the router at the same cycle forall i in {0 to 4}: � always (empty_temp(i)=’1’ -> � (N_select(i)=’1’ and N_empty=’0’) or � (S_select(i)=’1’ and S_empty=’0’) or � (E_select(i)=’1’ and E_empty=’0’) or � (W_select(i)=’1’ and W_empty=’0’) or � (R_select(i)=’1’ and R_empty=’0’)); � Packet at the input Routed to one output 18 NoCs'2012

  19. E XPERIMENTAL RESULTS �  Instrumentation of NoCs with PSL properties  Nostrum: 39 assertions  Hermes: 30 assertions  Properties automatically transformed into synthesizable verification components (*)  Can be used within the simulation or FPGA prototyping procedures: for debug during NoC design  Or can be used as embedded verification components (ASIC/FPGA synthesis): for the online verification of safety requirements (* ) TIMA « HORUS » technology (Y.Oddos, K.Morin-Allory, D.Borrione: "Assertion-Based Design with Horus", Proc. MEMOCODE’2008) integrated into Dolphin EDA tools: http://www.dolphin.fr/medal/sled/segment/sled_sdg.php 19 NoCs'2012

  20. E XPERIMENTAL RESULTS �  Simulation (with fault injection)  FPGA synthesis (Xilinx Virtex 5)  Example: 4 x 4 Hermes with 7 monitors on the 6 central routers  Without monitors: 21173 LUT, 64 MHz  With monitors: 22581 LUT (+ 6.65%), 48.25 MHz (- 24.6%) 20 NoCs'2012

  21. C ONCLUSION - O VERALL APPROACH � 21 NoCs'2012

  22. C ONCLUSION �  Multi-level verification solution  Experimented on:  Nostrum: 199 ACL2 theorems (proof obligations and auxiliary theorems), 39 PSL properties  Hermes: 272 ACL2 theorems, 30 PSL properties  Future work:  Embedded verification components  need specific synthesis optimisations, and specific facilities for collecting relevant diagnosis information  Runtime Assertion-Based Verification at the system level (NoC infrastructure in a SoC, SystemC TLM) 22 NoCs'2012

  23. T HANKS FOR YOUR ATTENTION ... � 23 NoCs'2012

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend