24.04.2013 Views

Verification of Parameterised FPGA Circuit Descriptions with Layout ...

Verification of Parameterised FPGA Circuit Descriptions with Layout ...

Verification of Parameterised FPGA Circuit Descriptions with Layout ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

CHAPTER 7. CONCLUSION AND FUTURE WORK 173<br />

to achieve better automation. While Quartz combinators are usually high-order blocks and<br />

require a high-order formalism to verify their layouts, Quartz circuits tend to be parame-<br />

terised purely by integer or boolean parameters. As such, it is possible that Quartz libraries<br />

could be verified in higher-order logic and these pro<strong>of</strong>s could be in some way be treated as<br />

axiomatic in pro<strong>of</strong>s for a whole circuit using a different prover <strong>with</strong> a different formalism.<br />

The ACL2 theorem prover [34] is known for supporting very high levels <strong>of</strong> automation but<br />

proves theorems in the first-order Boyer-Moore logic [9], it is possible that a combination<br />

<strong>of</strong> Isabelle and ACL2 could produce better results than Isabelle alone. A major practical<br />

difficulty that would need to be overcome here is ensuring the soundness <strong>of</strong> the interaction<br />

between the two different logics.<br />

7.4.3 Integrating <strong>Layout</strong> and Functional <strong>Verification</strong><br />

In this work we have developed a shallow embedding <strong>of</strong> Quartz designed specifically to enable<br />

the verification <strong>of</strong> design layouts. It seems slightly paradoxical to maintain two different<br />

verification systems, one for functionality and one for layout, when the two could potentially<br />

be combined into a single embedding <strong>with</strong>in a theorem prover.<br />

To support full functional reasoning (some limited reasoning about functional properties is<br />

already possible) Quartz<strong>Layout</strong> would need to be extended <strong>with</strong> a timing model to allow the<br />

data values on wires to be properly modelled in synchronous circuits. It is likely that a deep<br />

embedding <strong>of</strong> Quartz, rather than a shallow semantic embedding, would be the best way to<br />

combine functional and layout verification in a single environment. We have already laid the<br />

foundations for the definition <strong>of</strong> such an embedding by defining a formal semantics <strong>of</strong> Quartz<br />

in HOL and this function could be translated into an Isabelle implementation to provide a<br />

meaning function for the deep embedding.<br />

7.4.4 Run-time Reconfiguration<br />

In Chapter 5 we demonstrated the ability <strong>of</strong> our layout framework to support the special-<br />

isation <strong>of</strong> designs. Dynamic specialisation <strong>of</strong> designs at run-time is potentially a highly<br />

worthwhile activity, <strong>with</strong> performance gains outweighing the time required to reconfigure a

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!