Methods and apparatus for performing automated formal
clock domain crossing
verification on a device are detailed. In various implementations of the invention, a device may be analyzed, wherein the
clock domain crossing boundaries are identified. Subsequently, a formal
clock domain crossing
verification method may be applied to the identified
clock domain crossing boundaries, resulting in
clock domain crossing assertions being identified. After which the identified assertions may be promoted for post
clock domain crossing analysis. With various implementations of the invention, a formal clock domain crossing method is provided, wherein the device components near an identified clock domain crossing are extracted. Assertions may then be synthesized and verified based upon the extracted components. Various implementations of the invention provide for clock domain crossing
verification to be performed iteratively, wherein a larger and larger selection of the device is extracted during
formal verification. Additionally, various implementations of the present invention provide that the clock domain crossing verification operate
on the fly during a device
verification procedure. With further implementations, a bit-blasted approach to clock domain crossing verification may be provided during
formal verification.