ABSTRACT

Besides the characteristic behavior variations between hardware and software, a reconfigurable system design has an additional dimension of complexity. Hardware and/or software may be reconfigurable at runtime, which leads to not only behavior changes of fixed components, but also architectural changes that might drastically alter the system behavior. Further, conventional CAD or simulation tools do not support runtime reconfiguration. It is a basic assumption in currently available tools that the system architecture is fixed statically at design time. However, reconfigurable systems violate this basic assumption and thus it is not feasible to use conventional tools and methodologies to verify them. Verification methods and tools specifically targeted at reconfigurable systems exist but are still in the development stages. In this chapter, we first highlight some of the tools and methods that can be used to verify reconfigurable systems. We will then focus on a design space exploration framework called Perfecto [90].