Unless the logic inside embedded cores can be merged with the surrounding user-defined logic (UDL), the System on Chip (SoC) test requires reuse of test data and test structures specific to individual cores (designs) when integrated into larger systems. This standard defines language constructs sufficient to represent the context of a core and of the integration of that core into a system, to facilitate reuse of test data previously developed for that core. The SoC test also requires that the core be embedded in the SoC to allow for efficient testing of the logic external to the core. To that effect, this standard defines constructs that represent the test structures internal to the core for reuse in the creation of the tests for the logic outside the core. This provides constructs that allow for the wrapping operation of an unwrapped core and the necessary wrapper-specific information for a wrapped core. In particular, CTL shall support IEEE Std 1500-2005 for the information needs for wrapped and unwrapped cores. Semantic rules are defined for the language to facilitate interoperability between the different entities (the core provider, the system integrator, and the automation tools) involved in the creation of an SoC. This standard is limited to SoC testing with multiple and/or hierarchical cores through digital interfaces. All constructs defined in the CTL shall be consistent with IEEE Std 1450-1999 and extensions (STIL) to
support the complete description of the test for cores integrated into SoC environments. Although the preferred syntax for the bulk of the test data is STIL, this language provides constructs for linking other test data representations to incorporate legacy cores. The constructs in the language shall support a vast variety of cores and different test methodologies with particular support for the IEEE 1500 standard for embedded core testing. These constructs shall facilitate the transportation of test information from the core provider to the system integrator and support test automation by providing a consistent and uniform definition of the constructs such that the information provided by a core provider is understood in the same way by the system integrator and the tools developed by EDA.