Vetra Systems Corporation
KVM solutions that work
 

Application Note V-103
VIP-335 Data Throughput and CTS Behavior

This Application Note provides information for users of the VIP-335 to determine what, if anything, they need to do to insure data integrity, and to prevent potential data loss. The main factors under the user's control are baud rate, character rate, character block size, and handling of the CTS signal.

Before these factors are discussed, a brief review of the architecture and operation of Vetra's VIP-335 "SmartPipe" is presented. Each incoming RS-232 byte is stored in an internal 64 character buffer. When the buffer fills with 32 bytes, and under certain other circumstances given below, the VIP-335 deactivates the CTS line (pin 7) to avoid potential loss of incoming data. The buffered data is then presented to the PC at its keyboard port. The PC is the main limitation of the VIP-335 throughput rate. The maximum character rate into the PC is 13.6 characters/second for all unshifted characters, and as low as 9.0 characters/sec for 100% shifted characters, as detailed below, and is, therefore, the maximum rate that can be presented at the input of the VIP-335. The maximum rate can be exceeded for short bursts of data, since they will be stored in the internal VIP-335 data buffer. The maximum bursts for given character rates are given later in this Note.

"Character rate" and "baud rate" are not the same and should not be confused. "Baud rate" is the clock rate of the RS-232 signal. "Character rate" is the number of 8-bit bytes, or characters, that are sent in one second to the VIP-335. The maximum character rate at a given baud rate is limited, and is given in the table below. It will exist when the characters are sent continuously, without any break. At any given baud rate, characters may be sent at slower rates than the maximum.

RS-232 Input Baud Rate The input character rates for all baud rates that are supported by the VIP-335 are shown in the table below. These character rates are for the condition where each byte follows another without a break.

 Baud Rate

 Max. Character RateCharacters/sec

300 

30

1200 

120 

2400 

240 

4800 

480 

9600

960 

19200

1920


The table shows that all baud rates exceed the maximum character rate of 13.6 or 9.0 characters/second, if characters are sent continuously. To prevent data loss, the user must limit data to block sizes given later in this Note, throttle at the source to control the character rate to be 13.6 characters/sec or less, or obey CTS.

RS-232 Input Character Rate For character input rates faster than 13.6 for all unshifted or 9.0 characters/sec for 100% shifted, the user needs to arrange for the data source to obey CTS, or to throttle the data at the source to bring the average rate within specification. Input character rate is independent of baud rate. That is, a data source may be sending only 10 characters/sec at 19,200 baud.

Character Block (Burst) Size The VIP-335 has an internal buffer that can store 64 characters of incoming data. If incoming data does not obey CTS, but can be limited in the number of characters sent at any given time (burst size), the table below gives maximum for six character rates, each corresponding to the maximum character rate of the six baud rate of the VIP-335. The time to empty the 64 character buffer of all unshifted characters is 4.71 seconds, and 7.1 seconds if all the characters are shifted. If the time between bursts is more than specified above, no data loss will occur.

 Max. Character Rate Characters/sec

 Max. Burst Size All Characters Unshifted

 Max. Burst Size 10% of Characters Shifted

 Max. Burst Size All Characters Shifted

30

117

114 

91

120

72

72

69

240

68

68

66

480

66

66

65

960

65

65

65

1920

64

64

64 

CTS Signal In addition to controlling the baud rate, character rate, or the burst size, the user also has the option to set the source to obey the CTS signal, that is, stop sending data whenever the CTS signal goes inactive. If the RS-232 data source is strict in obeying the CTS signal from the VIP-335, no data will be lost. By "strict" is meant that the source immediately stops sending data when CTS goes inactive. Many PC's have a FIFO buffer associated with the COM port, and will continue to send data after CTS goes inactive until the FIFO buffer is empty. The VIP-335 has a tolerance of 32 characters after CTS goes inactive. At this point, its internal buffer still has room for the 32 characters. If the source sends no more data than 32, the potential for data loss is minimal.

In addition, the CTS signal will also go inactive when certain the VIP-335 executes certain internal processes that are not interruptible. When they are being executed, CTS drops to warn the RS-232 data source that the VIP-335 is not ready to accept data. One such process is output to the PC. Therefore, when a character is received from the RS-232 source, CTS will drop for approximately 1 ms while the scan code is sent to the PC. About 35 ms later the break code for the character is generated. It consists of two bytes and CTS will drop for each of them.

Rate at which the PC accepts data The maximum typematic (repeat) rate that the PC can command a keyboard to generate is 30 characters per second. In this mode the keyboard is repeating make codes only; no break codes are generated. Normally, the PC keyboard generates one byte for the make (key down) code, and two bytes for the break (key up) code. There are no make/break codes in ASCII. For each received ASCII code, the VIP-335 generates both the make and the break code, three bytes in all. If the ASCII character is a shifted character, the VIP-335 generates an additional three bytes, one for Shift key down and two for the Shift key up. A total of six bytes into the PC are generated if the ASCII character is shifted. In addition, since a human typist will not release (break) a key faster than about 40 milliseconds, most PC's will lose the break code, resulting in a "stuck" key, if the break code comes much faster than 40 milliseconds. To insure reliable operation, the VIP-335 delays the break code by about 35 milliseconds and the next character by 35 milliseconds. The PC takes 1 millisecond to accept each keyboard byte, giving an effective maximum throughput rate of 13.6 characters/second if all characters are unshifted, and 9.0 characters/second if all the characters are shifted. The maximum rate is between these two rates for a mix of shifted and unshifted characters.

Summary If the average character rate of the RS-232 data source is less than 13.6 char/sec the possibility of overrun is minimal. If the average character rate exceeds 13.6 characters/second, the user has several options to insure data integrity. The user can:

a) Throttle the data source to an average of 13.6 characters/second;
b) Limit the burst size sent to the sizes given in the table earlier, and insure at least 4.71 seconds between bursts.
c) Obey CTS, with no more than 32 characters sent after CTS is deactivated.


 [ Home ]

  [ Products ]

  [ About Us ]

 [ Site Map ]

 [ Contact Us ]

 [ Order Info ]

 [ What's New ]

 [ KVM Switches ]

 [ Dual-Head KVM Switches ]

  [ Touch Screen Products ]

 [ Video Products ] 

 [ KVM Splitters ]

 [ PC Keyboard Encoders ]

 [ Keyboard & Mouse Terminators ]

 [ KVM Extenders ]

 [ Safe Computing Products ]

 [ Foot-operated Devices ]

 [ Protocol Converters ]

 [ Accessories ]

Vetra Systems Corporation logo

 VETRA Systems Corporation
275 Marcus Blvd. Ste-J Hauppauge, NY 11788-2022 USA
Tel: 631-434-3185 Fax: 631-434-3516 e-mail: sales@vetra.com