Research Article
Formal Modeling and Verification for MVB
Listing 3
PROMELA codes of the asynchronous bus.
active proctype Asynchronous_Bus ( ) { | atomic { | if | :: BA_0. out_count > 0 ->… /*receive a frame from BA_0*/ | :: else ->skip; | fi; | if | :: !recv0 && !recv1 && !recv2 ->skip; | :: !recv0 && !recv1 && !recv2 ->… /*frame loss*/ | :: else -> skip; | fi; | if | :: recv0 == true; /*receive a frame from BA_0*/ | if | :: true -> …/*change the frame*/ | :: true -> … /*frame loss*/ | :: true -> skip; | fi; | … /*broadcast the frame*/ | fi; | … | } |
|