A method of time coding of asynchronously transmitted data from multiple sources has been invented. The method is especially applicable to a data-acquisition and transfer system that operates in a standard asynchronous transfer mode (ATM), in which, at a transmitter, streams of data acquired simultaneously from multiple sources are time-multiplexed, packaged into cells that are sent sequentially over a single wide-band transmission line or other channel to a receiver. The packaging destroys the original temporal relationship among the data streams, but the method enables reconstruction of the data streams in their original temporal relationships at the receiver.
A typical generic system in which the method could be utilized acquires data streams consisting of the digitized outputs of X+1 sensors (see figure). The sampling period of the analog-to-digital converter (ADC) that processes the output of each sensor is controlled by a system clock that is synchronized with an external real-time clock known to have requisite high precision. Also connected to the system clock is a sample counter, which is so named because it counts system- clock cycles and thereby indirectly counts samples. The output of the sample counter also serves as a record of the time of acquisition of each sample. The output of each ADC is fed to a buffer, along with a partial count (consisting of the least significant bits) from the sample counter. In each buffer, the partial sample count is combined sequentially with the sample data. The outputs of all the buffers are fed to a multiplexer, wherein they are combined sequentially into a single larger stream. The multiplexer must operate at a clock rate significantly greater than that of the buffers in order to be able to multiplex all the data acquired during a given sampling period, before the arrival of data from the next sampling period.
The output of the multiplexer is fed to a data formatter, wherein the stream of sensor data and associated timing information is further buffered into a sequence of data cells. The method of the invention applies to the data-formatting process. Each data cell contains a sample of sensor data, the associated partial count, and a label identifying which sensor was the source of the data. Data cells from all X+1 sensors are grouped into a longer sequence denoted a data frame. Data frames are further grouped into longer sequences denoted cell frames, the number of data frames in each cell frame being the maximum partial count, after which the least significant bits roll over to zero and the partial count restarts. Cell frames are grouped into yet longer sequences denoted time frames.
A “heads-up” cell is inserted into the data stream after the last data cell of each time frame, before the arrival of the next time frame, to alert the receiver to the imminent arrival of the next time frame. The heads-up cell contains the full count of the sample counter. Another additional cell, denoted a time/count cell, is inserted at a suitable point between two of the cell frames (preferably between the third and fourth cell frames) within each time frame. The contents of the time/count cell consist of the full count of the sample counter and the associated time from the real-time clock.
The output of the formatter is fed to an ATM transmitter, through the channel, to an ATM receiver. The output of the receiver is fed to a digital processor wherein the count, time, and sensor identifying information are used, along with the sensor-output samples, to reconstruct the original sensor data streams in their original temporal relationships. The reconstruction algorithm can incorporate, or be used in conjunction with, an error-detecting or error correcting algorithm that enables proper accounting for data cells lost or corrupted in transmission.
This work was done by David J. Moretti of the Naval Undersea Warfare Center for the Naval Research Laboratory.
This Brief includes a Technical Support Package (TSP).
Time Coding of Asynchronously Transmitted Multi-Source Data
(reference NRL-0026) is currently available for download from the TSP library.
Don't have an account? Sign up here.