One of the new features in XJTAG 3.13 is an option to speed up the setup of new test device files for I²C devices.

When creating a new test device file, XJDeveloper will try to determine whether the device being categorised is an I²C device. It attempts to detect an I²C interface by looking at the nets that the device is on. If any of these nets contain the text “SCL” or “SDA”, or are connected to the SCL and SDA pins on previously categorised I²C devices, then they are considered to be potential SCL and SDA pins. The detection algorithm will only search for one I²C interface per device, so the device is reported to be an I²C device if it has exactly one potential SCL pin and exactly one potential SDA pin.

If the device being categorising is detected as an I²C device, then the new “Create I²C device file” option will be available. This option automates some of the work required to set up a new test device file for I²C devices. It will add IIC.xje (from the XJTAG library) as an additional code file to the new device file, and carry out some automatic setup if the library is version 173 or above.

Previously, new I²C device files had to be set up manually according to the instructions in IIC.xje. This involved creating busses, copying text into the body of the device file, and potentially setting up a configuration variable. The latest version of IIC.xje uses the new XJEaseFileDoc tags to specify that this setup should happen automatically.

The new device file will have SCL and SDA busses created on the relevant pins detected. These busses will have their test coverage set to opens, stuck high, and stuck low, and the SDA bus will also have a disable value of “input”. The IIC_ADDRESS variable will be set up as a configuration variable, and the other required variables will have their variable declarations added to the text of the device file. There will also be an I²C-specific test function template added to the device file automatically, instead of the “Create Function Prototype” option being available.