Transfer Count Unit for Dynamic Packet Sizing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In data acquisition systems, the aggregation of data in buffers introduces latency, reducing responsiveness and wasting processing power, as devices wait for a predetermined number of bytes to be accumulated before transferring data packets, especially in slow or bursty data acquisition scenarios.
Innovation Solution
Implementing a transfer count unit to manage packetized data transfers by maintaining a data transfer count and using a transfer count mark to determine when to send max or short packets, optimizing data transmission and reducing latency through dynamic packet sizing and notification mechanisms.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If data is accumulated in buffers until a predetermined number of bytes is reached, then data transfer efficiency is improved, but system responsiveness deteriorates
Solution Approach 1:
The patent implements dynamic packet sizing where the data acquisition device can transmit either maximum-size packets (containing a predetermined number of data bytes) or short packets (containing fewer bytes). This dynamic approach allows the system to adapt packet size based on whether accumulating more data would cause excessive latency, thus balancing transfer efficiency with responsiveness.
Solution Approach 2:
The host computer pre-programs the data acquisition device with a transfer count mark that corresponds to the specific count of the last data byte of requested data. This preliminary action allows the device to know in advance when to send a short packet to deliver the exact requested data, eliminating the need to wait for the buffer to fill completely.
2Productivity
If data is accumulated in buffers until a predetermined number of bytes is reached, then throughput is improved, but latency increases
Solution Approach 1:
The system dynamically adjusts packet size based on the difference between the current data transfer count and the transfer count mark. When this difference is greater than or equal to the predetermined number, maximum-size packets are transmitted for high throughput. When the difference is less than the predetermined number, short packets are transmitted to minimize latency and deliver the requested data.
3Reliability
If the host computer continuously polls the data acquisition device for requested data, then data availability is monitored, but processing power is wasted
Solution Approach 1:
The data acquisition device maintains a data transfer count and compares it with the pre-programmed transfer count mark. When the difference indicates that the requested data is ready (difference less than predetermined number), the device automatically transmits a short packet or sends an interrupt notification. This feedback mechanism eliminates the need for continuous polling by the host computer, as the device proactively notifies when data is available.
4Ease of operation
If data is aggregated in the receive buffer of the host computer, then data is organized for processing, but additional latency is introduced
Solution Approach 1:
The host computer receives and processes data in partial packets (short packets) as soon as the requested data becomes available, rather than waiting for complete maximum-size packets. This partial action approach allows the system to process the minimum necessary data (just the requested bytes) immediately, reducing latency while still organizing data in the receive buffer for subsequent processing.
Data Source
AI summary
A mechanism for managing packetized data transfers in a system including a transmitting and a receiving device. The transmitting device may transmit data to the receiving device in a plurality of packets, each packet a predetermined number of data bytes wide. The transmitting device may include a transfer count unit to maintain a data transfer count based on a number of transmitted data bytes. The receiving device may program the transmitting device with a transfer count mark, which may be a number that corresponds to a specific count of the data transfer count. The transmitting device may calculate a difference between the data transfer count and the transfer count mark. If the difference between the transfer count and the transfer count mark is less than the predetermined number, the transmitting device may transmit a short data packet having less than the predetermined number of data bytes to the receiving device.


