Presentation on theme: "Memory Interface Analysis Using the Real-Time Model Checker UPPAAL Egle Sasnauskaite Marius Mikucionis Supervisor: Gerd Behrmann Co-cupervisor: Thomas."— Presentation transcript:
Memory Interface Analysis Using the Real-Time Model Checker UPPAAL Egle Sasnauskaite Marius Mikucionis Supervisor: Gerd Behrmann Co-cupervisor: Thomas Hune Aalborg University Computer science departement Software systems Engineering 31 May, 2002
Motivation Radar principles: 1. Frequency diversity 2. Sweep integration MI system: (adders, FIFO buffers,register, an arbiter, SDRAM): Synchronize. Storing data in the memory module Combine Sliding window sum calculation Sum d,i =e d,i +sum d-1,i - e d-m,i ´´ 1´´ 2 e 0,3 e 1,3 e 2,3 e 3,3 e 0,4 e 1,4 e 2,4 e 4,4 e 1,2 e 0,2 e 2,2 e 3,2 e 4,2 e 3,4 2` 1`
The Main Goals To analyse and to model the MI between input, output and the memory. To verify the model within a reasonable amount of time and memory space. To optimise the model in terms of buffer sizes and an arbiter algorithm. To summarise the modelling methods for similar systems.
Modelling Modelling tool – UPPAAL (a modelling toolbox of symbolic simulation and verification) The model of the MI is a combination of timed automata with UPPAAL extensions
Verification Model based techniques – Simulation and automated model checking Verification method – Partial order reduction Optimisation technique for full verification – Heuristical periodical approximation
Partial-order Reduction Method Purpose – to avoid combinatorial explosion of states due to the modelling concurrency by interleaving. Implementation – by introducing additional components. Gain: Event serialization order and determinism Problem: State space is still too big to verify the model Disadvantage: Only particular ordering is examined
Heuristic Periodic Approximation Purpose – to predict how many states should be explored to fully verify the model Implementation: find smaller subsystems in the compound system, define periods of subsystems in a bigger system, calculate the system period, which is expected to be the least common multiple of the subsystem periods.
Definitions in Heuristical Periodical Approximation a i – delay-transition a i ´ – action-transition A state of an automaton changes if changes: Valuation of clocks Valuation of data variables Location of the automaton. S=(l, v) SiSi aiai S i+1 A Path l 0,v 0 a0a0 a` 0 l 0,v 0 ´l 1,v 1 a1a1 l 1,v 1 ´ a1`a1` l i,v i aiai l i,v i ´ ai´ai´ … A compressed path a k+1 a` k+1 a` k+n-1 l 0,v 0 a0a0 a` 0 l 0,v 0 ´ l k,v k akak l k,v k ´ ak`ak` l k+1,v k+1 l k+1,v k+1 ´ … l k+n-1,v k+n-1 l k+n-1,v´ k+n-1 a k+n-1 … A state cycle A period of a state cycle:
Small MI with Memory Refresh Verification space is proportional to LCM(P MI, P R )
Complete MI with Memory Refresh The verification space can hardly be characterized by LCM(P MI, P R ) 4E+6
Arbiter Algorithm Synthesis (future) Round-robin Heuristic (fullest buffer) Optimal No halting problem for particular buffer sizes: If algorithm exists it contains a finite cycle, since the number of states is finite If algorithm does not exist buffer over/under-flow in all verification branches
Conclusions The biggest challenge - state explosion problem. Proposed a UPPAAL model of MI which is small enough to verify with an approximate memory refresh timing. The model is flexible for various configurations. We used eight times smaller buffer sizes. We introduced ideas for optimisations in the future.