1. A method of performing a simulation of a target digital system, using a simulator, the method comprising: providing a simulator model of the target digital system partitioned into a functional component that models the target digital system's functionality to simulate the target digital system at function levels and a behavior prediction component that models structures required to predict the behavior of the target digital system; executing the functional and behavior prediction components; passing an output of the functional component to the behavior prediction component that uses that output to predict behavior; comparing information from the functional component output with behavior predicted by the behavior prediction component; and when the output of the functional component is inconsistent with the predicted behavior, providing information from the behavior prediction component to the functional component to correct the functional component output.