The CoaXPress Standard Version 2.0 brings a rich new set of features while remaining backwards compatible to previous CoaXPress versions:
1. Unified Time Stamping
CoaXPress 2.0 introduces the Unified Time Stamping function, which allows the reporting of events coming from devices, hosts, and software into a unified time reference. It uses the basis of the Host and Device maintaining an internal, independent free-running timeclock. Both host and device will timestamp internal events with their respective time clock (“t-dev” for device events and “t-host” for host events). The device periodically sends a time synchronization message to the host, allowing it to keep track of the relationship between t-dev and t-host. Based on this relationship, the host can translate any timestamp expressed in t-dev to a timestamp expressed in t-host.
2. Event channel
The event channel is a new communication path introduced in CoaXPress 2.0 that provides the device with a mechanism to asynchronously send messages and status updates to a host. All Event messages are timestamped using the previously mentioned Unified Time Stamping mechanism. Through this new channel, the device can precisely inform the application when specific internal events occur.
3. Error reporting
Also introduced are a series of counters to give users a clear view of the link quality during operation. These counters are incremented whenever a link-related problem occurs, such as link loss, wrong 8b/10b symbols detected, CRC errors, or differences between duplicated characters. The application can read or reset these counters via GenApi.
4. Control Packet Tag
A tag field feature now allows the control of packets packets in order to improve the robustness of the control channel. This tag field is a free running number, incremented for each new command issued by the host. The device must send an acknowledgment message along with the tag received in the corresponding command packet. With this rule, the host and the device can consistently recover from error conditions, for example, in case of a lost acknowledgment message. In this particular case, aft er a given time-out, the host will resend the command while keeping the same tag. the device will be able to verify if this command was already executed based on the received tag.