Digital cryptographic system having synchronous and asynchronous capabilities4133973Abstract The specification discloses a digital cryptographic system wherein each of the transmitting and receiving units includes a housing having a front panel. A push-button switch input array is mounted on the front panel, with each push-button switch corresponding to a different number to enable the manual inputting of code variables therethrough. A digital display is provided on the front panel to temporarily display each of the code variables input through the array. Storage circuits are provided to store the code variables input through the array. A switch is provided on the front panel to enable any one of the stored code variables to be selected. A random code generator is operable in response to the selected stored code variables in order to generate a sequence of randomized key digital bits. Circuitry is provided to encipher clear text digital data in a synchronous manner and to transmit enciphered data through a synchronous data link. Claims What is claimed is: Description FIELD OF THE INVENTION
______________________________________
MBA Send Data Output to the modem
MBB Receive Data from the modem
MCG Signal Quality input from the modem
MRTS Request to send to the modem
MCTS Clear to send from the modem
MDSR Data set ready from the modem
MCF Carrier detect from the modem
MDB Send cock from the modem
MDD Receive clock from the modem
MDTR Data terminal ready to modem
MDA Send clock to the modem
MTCK (TCLK)
Modem test clock used during test mode
only
TBA Send data from data terminal
TBB Received data to data terminal
TRTS Request to send from data terminal
TCTS Clear to send to data terminal
TDSR Data set ready to data terminal
TCF Carrier detect to data terminal
TDB Send clock to data terminal
TDD Receive clock to data terminal
TDTR Data terminal ready from data terminal
TDA Send clock from data terminal
TSTBA Data Source used during test mode only
XV Unscrambled send data from data terminal
TCVID Transmit coded video send data
PRB Signal which corresponds with TCTS
TCRYPT Transmit crypto
THOLD This signal goes high during each
transmit data clock interval
QVID Received scrambled data from the modem
after data has been buffered and
synchronized with the internal master
clock
DVID Received data after it has been decoded
REC Initialization for the receive
synchronization
RECRYPT Receive crypto signal
RHOLD Signal goes high during each receive
data clock interval
FC1 Fast clock phase one
FC3 Fast clock phase two
AL1C Alarm signal from code generaor checker
AL3- Alarm signal from key variable entry
circuits
CGC Code generator clock
HORN Signal line to the alarm horn
HDCONT Half duplex control
TLOAD* Signal to the key variable storage
circuit to load the selected key variable
into the send code generator
RLOAD* Signal to the key variable storage
circuit to load the selected key variable
into the receive code generator
RKEY Key bits used to decipher the received
data
TKEY Key bits used to encipher the send data
TRK Transmit request for key
TC Test clock signal
CLRR Clear signal
CLRF Clear function signal
DELAY- Delay signal from terminal
RSNK- Resynchronization signal
TEST Test signal, TM test mode
TPDO Transmit prime data out from the send
key generator
TRDI Transmit prime data to the send key
generator
TCT Delayed cipher text for the send code
generator
TRAND Stand-by mode signal to the code
generator to place it in the randomize
mode
TPRIM Transmit send prime signal
RRK Receive request for key
RPDI Received prime data to the receive code
generator
RCT Delayed received cipher text for the
code generator
RRAND Stand-by signal to the receive code
generator
RPRIM Receive prime signal
AL1 Code generator failure alarm signal
ALC Code generator checker failure alarm
signal
LR1(T), Code generator key variable distribution
LR2(T), lines to the send code generator
K1(T), K2(T),
K3(T)
KEY(T) Key bit stream from transmit send code
generator
LOAD(T) Transmit load control to the send code
generator
KGCP(T) Gated clock to the send code generator
MCLR Master Clear
CRYPT(T) Signal places the send code generator in
the crypto mode
CRYPT(R) Signal places the receive code generator
in the crypto mode
LR1(R), Key variable distribution lines to the
LR2(R), receive code generator
K1(R), K2(R),
K3(R)
LDRSNK Reset for resync delay
TNS New sync input from data terminal
CT15 Count 15
SRCPB Receive clear control line
STCPB Send clear control line
SRRST Receive reset
STRST Send reset
ITBA Terminal send data indicator
ITBB Terminal receive data indicator
ITCA Terminal request to send indicator
ITCB Terminal clear to send indicator
ITCF Terminal carrier detect indicator
IMBA Modem send data indicator
IMBB Modem receive data indicator
IMCA Modem request to send indicator
IMCB Modem clear to send indicator
IMCF Modem carrier detect indicator
IALM Alarm indicator
ITCPT Send crypto indicator
IRCPT Receive crypto indicator
ITCLR Send clear indicator
IRCLR Receive clear indicator
ITCLK Send clock indicator
IRCLK Receive clock indicator
ICD Data terminal ready indicator
ICC Data set ready indicator
KEY(R) Receive code generator key bit stream
LOAD(R) Receive load control to the receive code
generator
KGCPR Gated clock pulses to the receive code
generator
BINT(T) Battery interlock
BINT(R) Battery interlock
UNIV Signal to the code generator to place
code generator in the universal encipher-
ing mode
E1, E2, E3 Address control lines for the key
variable memory
ENT Enter
VSCP Clock used to transfer the key variable
from the external load
ESRO* External shift register output
OFF Control signal from the code level switch
AL1* Alarm signal indicator
SRO* Key variable data shift register output
UKEY Universal mechanical lock switch signal
to allow entry of universal key variable
CKEY custom mechanical lock switch signal to
allow entry to custom key variable
L1, L2, L3 Code level select lines
U1, U2 Universal code select lines
CB, CC, CD Custom code select lines
KS- Key select
AL3 Signal from the receive correlator
indicating the receipt of a perfect
inverted correlation pattern
MD Majoridy decision, signal from the
receive correlator
TM Test signal, test mode
ST Test signal, self-test mode
LB Test signal, loop back mode
TCH Out of sync, initiate from the terminal
MCI Data signal rate selector to the modem
______________________________________
INTERFACE LOGIC Referring to FIG. 3, a block diagram of the interface logic 62 (FIG. 2) is illustrated. The transmit data input (TBA) is applied to the transmit input buffer 90. The transmit data output (MBA) is output from a transmit data output buffer 92. The receive data input (MBB) is applied to a receive data input buffer 94. The receive data output (TBB) is generated from the receive data output buffer 96. The clear switch 93 is operable by response to the position of the clear push-button switch 28, previously shown in FIG. 1, and is connected to buffers 92, 102 and 106 in order to enable operation in the clear mode. Similarly, the clear switch 97 operable in response to the operation of the receive push-button 32 (FIG. 1) is connected to buffers 96 and 126. A send clock buffer 98 receives the send clock input from either the data modem or the terminal and applies the input to a send clock synchronizer 100. The send clock buffer 98 thus receives the clock from the modem which is asynchronous to the internal circuitry and synchronizes the modem clock with the internal clock of the system. The request to send control logic 102 converts data to the EIA signal levels for transmission in digital form, and also checks to see if the clear switch 28 has been depressed. The send reset switch 30 is connected to the control logic 102. The data terminal ready control logic 108 receives the data set or data terminal ready signal and applies the DR signal to the request to send control logic 102 in order to enable the request to send output signal MRTS to be applied to the data modem. When the data modem receives the request to send output, the modem establishes synchronism and then sends back the clear to send input signal MCTS to the control logic 106. Control logic 106 then immediately applies the signal PRB to the control circuitry to be subsequently described. The send clear push-button 28 is connected to the send clear control 110 which operates the clear switch 93. When the signal TCRYPT is received by the send clear control 110, the clear control 110 cannot operate the clear switch 93 due to depression of the send clear push-button switch 61 and prevents the unit from being placed in the clear mode. The send clear control 110 enables the system to go to the clear only between the time that request to send goes high, but before the unit goes to the crypto mode of operation. If the system is not placed in the clear during this period of time, then the clear control 110 is inhibited from going to the clear. The TCRYPT signal is also applied to the clear to send control logic 106 and, assuming that the ready control logic 108 is set correctly and the alarm circuit is not on, the clear to send control logic 106 transmits the clear to send signal TCTS to the terminal in order to complete initialization for the system for transmission. An alarm control and test pattern generator 112 generates a test pattern, an alarm and horn signal in a manner to be subsequently described. The master clock generator 114 provides timing clock signals FC1 and FC3 to the remainder of the circuit. The FC3 clock signal generated by the master clock generator 114 is applied to the test clock generator 115, which generates the MTCK clock signal. An automatic resynchronization select switch 116 is disposed internal to the unit 10 and controls an automatic resync control 118 in order to place the system in the automatic resync mode. The auto resynchronization control 118 operates such that if carrier detect is momentarily lost from the modem, the unit 10 is caused to go to an automatic resync cycle. Thus, the request to send is inhibited via the request to send control logic 102, thereby causing the transmit section of the modem to drop its carrier. After a predetermined period of time, the request to send is allowed to come back on, thereby causing the reinitialization of the synchronization cycle and the reinitialization of the system. In addition to reinitialization of the system upon loss of carrier detect, the automatic resynchronization control 118 will reinitialize the system upon request to send being turned on from the terminal, momentary or prolonged loss of data terminal ready (CD), momentary or prolonged loss of data set ready (CC), momentary or prolonged loss of signal quality (CG), momentary or prolonged loss of CH from the terminal or CI from the modem, clear to send control line activity out of synchronization, excess transitions beyond the out-of-sync noise tolerance and a long mark signal on the receive data line. These options will be subsequently described in connection with the operation of the auto resynchronization control 118 and FIG. 5a. On the receive side of the interface circuitry, the RCRYPT signal is generated after initialization of the code generator of the system. The signal RCRYPT is applied to the receive clear control 120, thereby turning the receive clear key control off so that the unit cannot be placed into the clear by depression of the receive clear push-button switch 32 (FIG. 1). The receive clear control 120 controls the operation of the clear switch 97. The receive clock buffer 122 synchronizes the receive clock from the modem to the internal high speed master clock of the present invention. To receive clock synchronizer 124 metes out the data clocks to the receive controller, to be subsequently described, during the operation of the correlator of the system. The carrier detect control logic 126 generates a signal REC to the receive controller, in response to input MCF assuming that the unit is not placed in the clear and that the RCRYPT signal has not yet been received. If the signal RCRYPT is received and the unit is not in the alarm state, the signal TCF is applied as the carrier detect signal to the terminal. FIGS. 4a and 4b illustrate a portion of the schematic circuitry which corresponds to the block diagram of the interface logic shown in FIG. 3. FIGS. 4a and 4b are drawn to be matched in a side-by-side relationship to illustrate this portion of the electrical schematic of the interface circuitry. Referring to FIG. 4a, operational amplifier 200 is interconnected to a converter 201 to form a conversion circuit 202 for receiving the TBA signal. The conversion circuit 202 is a special integrated circuit that converts EIA signals to standard logic signals and may comprise, for example, a 75154 I/C. Conversion circuit 202 holds the data signals for one data bit and is interconnected to flip-flop 204. Flip-flop 204 together with the conversion circuit 202, comprise the transmit data input buffer 90 (FIG. 3). Flip-flop 204 generates the XV signal, and integrated circuit 202 through inverter 203 generates the ITBA signal. Flip-flop 204 is interconnected to a flip-flop 206, which is interconnected to a flip-flop 207. Flip-flop 206 is interconnected to a flip-flop 208. Flip-flops 206, 207 and 208 are standard dual "D" flip-flops and may comprise, for example, 4013 I/Cs. Flip-flop 208 is interconnected to NAND gate 209, which with NAND gate 210 is interconnected to NAND gate 211. NAND gate 211 is connected through a converter 212 to a dual line driver 214. Driver 214 may comprise, for example, a 75150 circuit to generate the MBA output signal. Converter 212 is also interconnected to inverter 216 to generate the IMBA output signal. Flip-flops 206, 207 and 208 together with NAND gates 209, 210 and 211 and driver 214 comprise the transmit data input buffer 90 (FIG. 3). The TCRYPT signal is applied to NOR gate 218, which is a dual 4-input NOR gate and may comprise, for example, a 4002 I/C. NOR gate 218 is interconnected to a flip-flop 220, which is interconnected to NAND gate 221. Flip-flop 220 generates the TC- and TC signals. NOR gate 218, flip-flop 220 and NAND gate 221 comprise the clear switch 93 (FIG. 3). The TCRYPT signal is also applied to inverter 224, which through driver 225 generates the ITCPT output signal. The MDB signal is applied to receiver 226, which may comprise, for example, a 75154 I/C. Receiver 226 is interconnected to NAND gate 228, which is interconnected to NAND gate 230. The TDA signal is applied to receiver 232, which may comprise, for example, a 75154 I/C. Receiver 232 is interconnected to NAND gate 234, which is interconnected to NAND gate 230. Switch 236 provides an input to NAND gate 228 and an input through inverter 237 to NAND gate 234. Switch 236 provides a clock source from the modem when in the open position and from the terminal when in the closed position. The output of NAND gate 230 is applied to a flip-flop 238, which generates the TCLK signal applied to the transmit data output buffer 92 and the send clock sync period 100 (FIG. 3). Receivers 226 and 232 together with NAND gates 228, 230 and 234 and flip-flop 238 comprise the send clock buffer circuit 98 (FIG. 3). The send clock buffer 98 takes the clock from the data modem 64 which is asynchronous to the internal working of the system and synchronizes that clock with the internal clock of the system so that the data clock corresponds or is in synchronism with the internal clock, and then transmits it back to the data modem 64. Flip-flop 238 is interconnected to OR gate 240, which provides an input to a multivibrator 242. Multivibrator 242 is a dual retrigger/reset multivibrator and may comprise, for example, a 4528 I/C. The output of multivibrator 242 is applied to an inverter 243, which is interconnected to a driver 244 which generates the ITCK signal. OR gate 240, multivibrator 242 together with inverter 243 and driver 244 comprise the clock indicating driving circuit for the send clock indicator on the front panel of unit 10 and is a portion of the circuitry represented by block 100, the send clock sync. (FIG. 3) The output of flip-flop 238 is also interconnected to flip-flop 246, which is interconnected to a counter 248. Counter 248 is a dual binary up counter and may comprise, for example, a 4520 I/C. Counter 248 is interconnected through an inverter 250 to a flip-flop 252. The flip-flops 246 and 252, together with counter 248 and their associated circuitry, comprise a portion of the send clock synchronizer identified in FIG. 3 by block 100 which generates the THOLD signal. A crystal oscillator 254 is interconnected to a counter 256. Counter 256 is a four bit binary counter and may comprise, for example, a 7493 I/C. An output of counter 256 is interconnected through NAND gate 257, which is interconnected to an inverter 258 to generate the FC1 signal. The output of counter 256 which is applied to NAND gate 257 is also applied through an inverter 259 to NAND gate 260. NAND gate 260 is interconnected to an inverter 262 to generate the FC3 output signal. Additional outputs of counter 256 generate the KGCLOCK and CGC signals. In the preferred embodiment, crystal oscillator operates at 5.5296 Hz to produce the KGCLOCK signal having a frequency of 2,764,800 MHz, the CGC signal having a frequency of 691,200 Hz and the signals FC1 and FC3 having a frequency of 345,600 Hz. Crystal oscillator 254, counter 256 together with NAND gates 257 and 260 and their associated inverters comprise the electronic circuitry for the master clock generator identified by block 114 in FIG. 3. The FC3 signal generated at the output of inverter 262 is applied to a counter 264 which is interconnected to a counter 266. Counters 264 and 266 are dual binary up counters and may comprise, for example, a 4520 I/C. Counter 266 is interconnected through inverter 267 to a driver 268. Driver 268 may comprise, for example, a 75150 I/C and generates the MTCK test clock signal. The MTCK clock source is used during test modes only. Counters 264 and 266 together with converter 267 and driver 268 comprise the circuitry for the test clock generator identified as block 115 in FIG. 3. The send clear control signal, STCPB- is applied to inverter 270 upon depressing the send clear push-button switch 28. Inverter 270 is interconnected to a NAND gate 272, which is interconnected to AND gate 274. The AL1C signal is applied through inverter 275 to provide an input to NAND gate 276. AND gate 274 also provides an input to AND gate 276, which is interconnected to inverter 278. The output of inverter 278 is interconnected to a driver 280, which generates the IALM alarm indicator signal. The output of driver 280 also generates the HORN output signal applied to the alarm horn if internal switch 282 is in the closed position. Switch 282 functions as a horn inhibit switch. The TCRYPT signal is applied to NAND gate 283 to generate the CTSA- signal. Inverters 270 and 275 together with NAND gates 272, 276 and 283, AND gate 274, inverter 278 and driver 280 comprise the send clear control circuitry represented by block 110 and the alarm control and test pattern generator circuitry represented by block 112 of FIG. 3. Referring to FIG. 4b, the circuitry representing blocks 102, 106 and 108 of FIG. 3 is shown. The TRTS signal is applied to a receiver 284, and may comprise, for example, a 75154 I/C. The output of receiver 284 is applied to a driver 286 to generate the ITCA signal. The output of receiver 284 is also applied through an inverter 288 and an internal carrier control switch 289 to a NAND gate 290. NAND gate 290 is interconnected through inverter 292 to NAND gates 294 and 296. NAND gate 294 is interconnected to NAND gate 298, which is interconnected through inverter 300 to an integrated circuit 302. Integrated circuit 302 is a driver circuit and may comprise, for example, a 75150 I/C, which generates the MRTS signal. The output of NAND gate 296 is interconnected through an inverter 304 to a shift register 306. Shift register 306 is a dual four-bit static shift register and may comprise, for example, a 4015 I/C. The output of shift register 306 is applied to NAND gate 308, which is interconnected to a NAND gate 310. The output of NAND gate 310 is applied to an inverter 312 to generate the PRB signal. Integrated circuit 284, shift register 306, driver 302 and NAND gates 290, 294, 296, 298, 308 and 310 comprise the circuitry for the request to send control logic identified as block 102 in FIG. 3. The request to send control logic 102 essentially controls the request to send to the modem. It receives the request to send signal from the terminal, provided that the carrier control switch 289 is not in the open position and the data terminal and data set ready are both on. The RTS signal is then passed by the logic 102 to the MRTS output to the modem. If the unit 10 is in the TC, transmit clear mode, the TRTS signal is applied directly to the MRTS output. The MCTS signal is applied to a receiver 314 and may comprise, for example, a 75154 I/C. The output of integrated circuit 314 is applied through an inverter 316 to NAND gate 318. NAND gate 318 is interconnected to NAND gate 320, which is interconnected to NAND gate 322. The output of NAND gate 322 is applied through an inverter 326 to generate the TCTS*-signal. The output of NAND gate 322 is also applied through converter 324 to a driver 328 to generate the ITCS signal. The output of converter 324 is also applied to a driver 330 to generate the TCTS output signal. The RTS signal generated at the output of inverter 288 of the request to send control logic 102 (FIG. 3) is applied through an inverter 332 to counter 334. The output of counter 266 of the test clock generator 115 is also applied to counter 334. Counter 334 is interconnected through delay switches 336 and 338 to counter 340. Counter 340 is interconnected to NAND gate 342, which is interconnected to a flip-flop 344. Flip-flop 344 is interconnected to an internal switch 346, which is the terminal CA to CB delay enable switch. The output of flip-flop 344 is interconnected to NAND gate 348, which generates the DELAY-signal. The data terminal ready control logic, identified as block 108 in FIG. 3, is composed of the receivers 350 and 352 and NOR gate 354. The TDTR signal is applied to receiver 350, which through driver 356 generates the ICD signal. The MDSR signal is applied to receiver 352, which through driver 358 generates the ICC output signal. The outputs of receivers 350 and 352 are also interconnected to internal switches 360 and 362, which are override switches interconnecting integrated circuits 350 and 352 with NOR gate 354. The output of NOR gate 354 is applied to NAND gate 296 of the request to send control logic 102 (FIG. 3). FIGS. 5a and 5b illustrate the remaining portion of the schematic circuitry which corresponds to the interface logic shown in FIG. 3. FIGS. 5a and 5b are drawn to be matched in a side-by-side relationship to illustrate this portion of the electrical schematic of the interface circuitry. Referring to FIG. 5a, the circuitry which corresponds to the automatic resynchronization control, block 118 of FIG. 3, is shown. A resynchronization cycle can be initiated automatically using one of the several selectable options in control 118 or a resynchronization cycle can be initiated either from the data modem 64 or the data terminal 56. If either the receive or the send section of the unit 10 is placed in the clear mode, the automatic resynchronization is inhibited. The automatic resynchronization is enabled by switch 116 (FIGS. 3 and 5a). Automatic resynchronization control 118 generates the RSNK-signal which is applied to the request to send control logic, block 102 of FIG. 3. Referring to FIG. 5a, the ST-, TM- and LB- signals are applied to NAND gate 380. These three input signals are generated by operation of test switch 40 (FIG. 1). Inverter 381 generates the ST signal, and inverter 382 generates the LB signal. The output of NAND gate 380 is applied through inverters 383 and 384 to generate the TEST output signal. The output of NAND gate 380 is applied through inverter 386 to NAND gates 388 and 390. The DELAY- signal is also applied to NAND gate 388, which is interconnected to frequency divider 392. Frequency divider 392 is a 24-state frequency divider and may comprise, for example, a 4521 I/C. Divider 392 is interconnected to switches 394a and 394b, which can be preset for either a six or twenty-two second period during which time the clear to send signal will be sampled. The clear to send control line to the terminal is constantly being turned on and off. Should the unit 10 lose synchronization, this activity will stop. If no activity is detected during the time period programmed by switches 394a and 394b, an automatic resynchronization cycle is initiated. This option of the automatic resynchronization control, 118, is the RTS Activity Check and can be inhibited by leaving switches 394a and 394b in the open position. The output of divider 392 through switches 394a and 394b is applied to NAND gate 396, whose output is applied to NAND gate 398. A second option of the automatic resynchronization control, block 118 of FIG. 3, includes the out-of-sync noise tolerance option (OOS NOISE). The circuitry comprising this option includes NAND gate 390, which receives input signals RCRYPT, TCTS*-, TEST- and RSNK-. The output of NAND gate 390 is applied to counter 400. Counter 400 is a dual binary up counter and may comprise, for example, a 4520 I/C. The output of counter 400 is applied through switches 402a and 402b to NAND gate 404. The out-of-sync noise tolerance option monitors the mark to space transistions on the receive data line while clear to send to the terminal is on. Any number of transitions beyond the out-of-sync noise tolerance selected by switches 402a and 402b, either two or eight mark to space transitions will cause a resynchronization cycle to occur. To inhibit this function switches 402a and 402b are left in the open position. The initiation of the automatic resynchronization circuit inhibits request to send to the modem and the unit 10 for the time selected by the automatic resync delay option. At the end of the automatic resynchronization delay, request to send to the modem is restored and synchronization is reinitiated. At the end of the retry time delay, if the receive side of unit 10 has not gone to the CRYPTO-R mode, a resynchronization cycle is again initiated. This option is provided in the event of a prolonged interruption of the data communication link. The circuitry representing the retry and resync delay option comprises divider 406 and switches 408a, 408b, 410a, 410b and 410c. The LDRSNK signal is applied to frequency divider 406, which is a 24-state frequency divider and may comprise, for example, a 4521 I/C. The output of divider 406 is applied through switches 408a and 408b to NAND gate 412. The retry delay time is programmed by presetting switches 406a and 406b for a time period of either seven or twenty-five seconds. The output of divider 406 is interconnected through switches 410a, b and c to NAND gate 414. Switches 410a, b and c are preset to inhibit the request to send to the modem and the unit 10 for between 0.5 and four seconds. The outputs of NAND gates 396, 404 and 412 are applied to NAND gate 398. The output of NAND gate 398 and the FC1 signal are applied to flip-flop 416. The output of flip-flop 416 is applied to flip-flop 418, which is interconnected to flip-flop 420. Flip-flop 420 generates the RSNK signal applied to NAND gate 414, and generates the RSNK- signal applied NAND gates 388 and 390, and the request to send control logic block 102 of FIG. 3. Flip-flop 420 is also interconnected to AND gate 422 which generates the LDRSNK signal applied to the divider 406. If momentary or prolonged loss of TCH from the terminal or from MCI from the modem occurs a synchronization cycle will occur. This option is referred to as the TNS new sync and is provided in order to allow the terminal to initiate the synchronization cycle. The TNS signal is applied to a receiver circuit 424, which may comprise, for example, a 75154 I/C. Circuit 424 is interconnected to TNS new sync switch 426, which applies the TNS- signal to NAND gate 428. The CTSA- signal is applied to NAND gate 429. The outputs of NAND gates 428 and 429 are applied to NAND gate 430, which through inverter 431 provides an input to shift register 432. Shift register 432 is a dual 4-bit static shift register and may comprise, for example, a 4015 I/C. The output of shift register 432 is applied to flip-flop 418. As previously stated, the automatic resynchronization cycle is enabled by switch 116. Switch 116 is interconnected to gate 434. Gate 434 may comprise, for example, a 4501 I/C and also receives the HDCONT signal. The output of gate 434 is applied to NAND gates 396, 404 and 412 which form part of the RTS activity check, out-of-sync noise tolerance and retry delay resynchronization options. The output of gate 434 is also applied through NAND gate 436 to flip-flop 418. Automatic resynchronization is inhibited if the CLR signal, generated whenever the send section of the unit 10 is placed in the clear mode, appears through converter 438 at the resynchronization switch 116. To summarize, a resynchronization cycle consists of the following: 1. An abnormal condition is detected by the data terminal 56, the unit 10 or the data modem 64, which initiates the automatic resynchronization circuits 118; 2. The initiation of the automatic resynchronization circuits inhibits requests to send (MCA) to the data modem 64 and the unit 10 for the time selected by the automatic resynchronization delay option (switches 410a, b and c); 3. At the end of the automatic resynchronization delay, request to send to the data modem 64 is restored and synchronization is reinitiated; and 4. At the end of the retry delay time programmed by switches 408a and b, if the receive side of either unit 10 has not gone to the CRYPTOR mode, a resynchronization cycle is again initiated. The following functions can cause a synchronization cycle to occur: 1. Request to send being turned on from the data terminal 56 through switch 30 (FIGS. 3 and 4a). 2. Momentary or prolonged loss of carrier detect from the modem, or momentary or prolonged loss of clear to send from the modem. 3. Momentary or prolonged loss of data terminal ready (TCD). This function can be inhibited by switch 360 (FIG. 4a). 4. Momentary or prolonged loss of data set ready (TCC). This function can be inhibited by switch 362 (FIG. 4a). 5. Momentary or prolonged loss of signal quality (CG). This function can be inhibited by switch 444 (FIG. 5b). 6. Momentary or prolonged loss of TCH from the terminal, or MCI from the modem. This function can be inhibited by switch 426 (FIG. 5a). This option is provided in order to allow the terminal to initiate a synchronization cycle. This can be used in cases where the operating system provides an out-of-sync indication. 7. Loss of activity on the clear to send control line to the terminal. If no activity is detected in the time programmed by switches 394a and b (FIG. 5b) an automatic resynchronization cycle is initiated. 8. If the mark-to-space transitions on the receive data line are not steady, the number of transitions beyond the out-of-sync noise tolerance function, selected by switches 402a and 402b (FIG. 5a), will cause a resynchronization cycle to occur. 9. A long mark signal on the receive data line will inhibit carrier detect from the data modem 64 and cause a resynchronization cycle. This function can be inhibited by leaving switches 282 and 236 (FIG. 4a) and switches 360 and 362 (FIG. 4b) in the open position. Referring to FIG. 5b, the MCG signal quality input signal is applied to integrated circuit 442. Integrated circuit 442 may comprise, for example, a 75154 I/C and is interconnected through converter 443 to signal quality switch 444. Switch 444 provides an input to NOR gate 445. An additional input to NOR gate 445 is provided from integrated circuit 446 which receives the MCF input signal. The output of NOR gate 445 is applied to inverter 447, which through driver 448 generates the IMCF signal. The output of NOR gate 445 is applied to NAND gate 449, which also receives an input of the SRRST- signal through switch 127 (FIG. 3). The output of NAND gate 449 is interconnected through inverter 450 to NAND gate 451. NAND gate 451 is interconnected to inverter 452 which generates the REC signal. The RCRYPT signal is applied through inverter 453, which through driver 454 generates the IRCPT signal. Inverter 453 is interconnected to NAND gate 454a, which through inverter 455 is interconnected to driver 456. Driver 456 may comprise, for example, a 75150 I/C and generates the TCF output signal. Inverter 455 is also interconnected to driver 457, which generates the ITCF output signal. Integrated circuits 442, 446, switch 444, NOR gate 445, NAND gates 449, 451, 454a, driver 456 and their associated inverters and drivers comprise the carrier detect control logic identified as block 126 in FIG. 3. The SRCPB- signal is applied through switch 32 (FIG. 3) to NOR gate 458, which is interconnected to flip-flop 459. Flip-flop 459 comprises the clear switch identified as block 97 in FIG. 3. The output of flip-flop 459 is applied to NAND gate 454a in the carrier detect control logic 126 (FIG. 3) and NAND gates 460 and 461. The SRCPB- signal is applied through inverter 462 to NAND gate 461 which generates the CLRR- signal. NOR gate 458 and NAND gates 460 and 461 comprise the receive clear control identified as block 120 in FIG. 3. The output of NAND gate 460 applies the CLEAR signal to NAND gate 463, which generates the CLRF- output signal. An output of the divider 406 (FIG. 5a) is applied through inverter 464 to driver 465 to generate the TSTBA output signal. NAND gate 463, inverter 464 and driver 465 comprise the alarm control and test pattern generator identified as block 112 in FIG. 3. The receive data input buffer identified as block 94 in FIG. 3 comprises receiver 466 and flip-flop 467. The MBB signal is applied to receiver 466, which may comprise, for example, a 75154 I/C. The output of receiver 466 is applied through driver 468 to generate the IMBB output signal and to flip-flop 467 to generate the QVID output signal. The DVID input signal is applied to flip-flop 469, which is interconnected to flip-flop 470. Flip-flop 470 applies its output signal, together with the RC- signal generated by flip-flop 459, to NAND gate 471. The RC signal generated by flip-flop 459 and the MBB signal are applied to NAND gate 472. The outputs of NAND gates 471 and 472 are applied to NAND gate 473, which generates the TBB* signal. The TBB* signal is applied through a driver 474 to a driver 475 to generate the TBB output signal. The RC signal is also applied through inverter 476 and driver 477 to generate the IRCLR output signal. The TBB* signal generated at the output of NAND gate 473 is also applied to NAND gate 478. NAND gate 478 is interconnected to NAND gate 479, which is interconnected to NAND gate 480. NAND gate 480 applies its output to inverter 481, which through driver 482 generates the ITBB output signal. Flip-flops 469 and 470, driver 475 and NAND gates 471, 472, 473, 478, 479 and 480 and their associated inverters comprise the receive data output buffer identified as block 96 in FIG. 3. The MDD signal is applied to receiver 483, which generates the MDD- signal. The MDD- signal is applied to flip-flop 484. Receiver 483 and flip-flop 484 comprise the circuitry comprising the receive clock buffer identified by block 122 in FIG. 3. The receive clock buffer 122 synchronizes the receive clock from the data modem 64 to the internal high speed master clock. The outputs of flip-flop 484 are applied to flip-flop 485 and NOR gate 486. Flip-flop 485 generates the RHOLD- and RHOLD signals. Flip-flop 485 is interconnected to shift register 487, which through inverter 488 is interconnected to flip-flop 489. The RCLK signal generated by flip-flop 484 is applied through NOR gate 486 to multivibrator 490. Multivibrator 490 is a dual retrigger/reset multivibrator and may comprise, for example, a 4528 I/C. The output of multivibrator 490 is applied through inverter 491 to a driver 492 to generate the IRCLK output signal. Flip-flops 485 and 489, shift register 487, together with multivibrator 490 and their associated inverters comprise the receive clock synchronizer identified as block 124 in FIG. 3. The receive clock synchronizer 124 metes out the sixteen data clocks to the control logic 66 (FIG. 2). CONTROL LOGIC Referring to FIG. 6, a block diagram of the control logic 66 previously described in FIG. 2 is illustrated. Referring to FIG. 6, the transmit or send portion of the controlled logic will be first described. The send data control 500 provides control gating to gate in the correct signal at the correct time during operation. The send data control 500 provides gating to correlation pattern and other logic signals, including signals transmitted to the modem. The send frame and corp generator 502 generate the frame timing signals and the correlation pattern CORP. The signal PRB is applied to the corp generator 502 and to the send controller 504 in order to initiate operation thereon. The transmit portion of the control logic 66 operates in the frame synchronization mode wherein a specific correlation pattern is transmitted. The circuit may send out three, five or seventeen multibit correlation patterns, depending upon programming internal switches of the unit 10. The initially transmitted correlation patterns are inverted. At the end of the transmission of the predetermined number of inverted correlation patterns, the transmitting control logic will automatically send out a single upright correlation pattern. The correlation pattern comprises a fifteen or seven bit predetermined series of digital ones and zeros. The number of bits in the series is determined by programming internal switches. After the end of the transmission of the upright pattern, which is termed the start pattern, the logic automatically shifts to the prime mode. During the prime mode, the prime data is transmitted from the transmitting unit to the receiving unit. The prime data is transmitted in one of three different levels of redundancy which may be programmed through switches internal to the unit 10: with fifteen bit redundancy, seven bit redundancy or with no redundancy. During the prime mode of operation, an upright correlation pattern corresponds to a prime bit value of one and an inverted correlation pattern corresponds to a prime data bit value of zero. The prime data is received from the code generator previously described via the line TPDO and is applied through the prime data control 506 and is returned to the transmit code generator via line TPDI. Line TPDI is also routed to the send data control 500, along with the correlation pattern CORP. At the send data control 500, the prime data and the correlation pattern are modulo-2 added together to provide the inverted and noninverted correlation patterns for the transfer of prime data to the receiving unit. Each time a correlation pattern is transmitted, the prime counter 508 accumulates one count. At the same time, at the end of each correlation pattern, the send RK generator 510 generates one request for key so that the code generator will transmit the next prime data bit. Once the prime counter 508 has counted to its completion of twenty-five bits, the prime counter 508 transmits a signal TLOAD* to the key variable storage logic to be subsequently described. The code generator check 512 checks the data being transmitted in order to detect a condition wherein a logic one or zero is stuck in the system. Such a malfunction is indicated by a constant relationship between the input and output data of the modulo-2 enciphering gate which is contained in the send data control 500. If the signals remain constant for 256 continuous bits, the code generator checker 512 is initiated and cuts off the transmit data coming from the terminal and also cuts off the clear to send signal applied to the terminal to terminate operation. In addition, at the beginning of a cycle when frame sychronization is being transmitted, the code generator checker 512 is forced into a test mode to insure that it will operate satisfactorily. Referring now to the receive portion of the control logic, the receive correlator 514 detects the correlation patterns transmitted from a remote transmitter. The receive correlator 514 detects the inverted correlation patterns and in response thereto generates an output AL1. When the complete correlation pattern has been detected and is acceptable, the receive frame generator in turn generates a signal RENDW. The receive controller 518 detects two inverted correlation patterns in succession that are perfectly received and then looks for an upright correlation pattern which is received according to a majority decision basis only. The RRAND signal is then turned off and a RPRIM signal is turned on by the receive controller 518. The prime data control 520 selects whether or not redundancy in the correlation pattern is utilized. When the correlation pattern redundancy is utilized, a signal MD in combination with the signal RENDW is utilized to form a signal CGD. If no redundancy is selected, than the signal QVID is utilized by the prime data control 520. In either case, the output of prime data control is RP (receive prime) data input or RPDI. The receive RK generator 522 is interconnected to generate an RK signal to the code generator each time a bit of prime data is received or a new key bit is required. The receive prime counter 524 operates in a similar manner as the prime counter 508. The receive data logic 526 receives the RKEY and QVID signals and applies a signal to a modulo-2 gate to provide the output signal DVID which is applied to the output data buffer. Receive logic 526 thus operates to provide deciphering of the received enciphered signal. FIG. 7 illustrates the schematic circuitry which corresponds to the send controller system represented by blocks 500-512 in FIG. 6. AND gate 530 is interconnected to an EXCLUSIVE OR gate 532, which is interconnected to NAND gate 534. EXCLUSIVE OR gate 536 receives the TKEY and XV signals and applies its output to NAND gate 538. AND gate 530 is also interconnected to NAND gate 540, which together with NAND gates 542, 534 and 538 provide inputs to NAND gate 544. The output of NAND gate 544 is applied to flip-flop 546, which receives a second input through inverter 547. Flip-flop 546 generates the TCT- signal which is applied to NAND gate 548. The RCT and HDCONT signals are applied to NAND gate 550. The output of NAND gate 550 is applied to NAND gate 548, which generates the TCT output signal. The EXCLUSIVE OR gates 532 and 536, together with NAND gates 534, 538, 540, 542, 544, 548 and 550, AND gate 530 and flip-flop 546, comprise the send data control circuitry represented by block 500 in FIG. 6. The send data control 500 essentially provides the gating, function, to gate in the proper signal at a proper time. NAND gate 556 receives the TPDO signal and is interconnected to NAND gate 558 which generates the TPDI signal. The RPDI signal is applied to NAND gate 558 through NAND gate 560. The three NAND gates 556, 558 and 560 comprise the prime data control circuit represented by block 506 in FIG. 6. The prime data control circuit has test mode capability. The prime data generated from the code generator send 80 is routed immediately back to the code generator send 80 through the TPDI signal. The TPDO signal goes through gating which is controlled by internal switches 562 and 564. Switch 562 forces all zeros and switch 564 forces all ones in the prime data for test purposes. EXCLUSIVE OR gate 565 receives the XV signal and output of EXCLUSIVE OR gate 536 and is interconnected to flip-flop 566. The REC* signal is applied to NAND gate 567. The PRB signal is applied to a 4-bit shift register 568, which may comprise, for example, a 4015 I/C. The output of shift register 568 is applied through inverter 569 to AND gate 570, which generates the PRB* signal. AND gate 570 is also interconnected to inverter 571. NAND gates 572 and 573 are interconnected to flip-flop 568 through NAND gate 574. EXCLUSIVE OR gate 565 is also interconnected to EXCLUSIVE OR gate 576, which is interconnected through NAND gate 578 to NAND gate 580. NAND gate 574 and NAND gate 580 are interconnected to counter 582. Counter 582 is a four stage binary counter and is interconnected to a second four stage binary counter 584. Counter 584 is interconnected through inverter 586 to flip-flop 588. NAND gate 580 is interconnected through NAND gates 590 and 592 to flip-flop 588. Flip-flop 588 is also interconnected to flip-flop 594, which is interconnected through AND gate 596 to flip-flop 598. The ALIC signal is generated by flip-flop 598 through NAND gate 600. Switches 602 and 604 are internal alarm inhibit switches. The flip-flops 566, 588, 594 and 598, together with counters 582 and 584 and gates 565, 576, 578 and 580 and their associated circuitry, comprise the code generator checker represented by block 512 in FIG. 6. The code generator checker 512 checks the operation of the code generator send 80 and looks for a stuck one or a stuck zero position. A stuck one or a stuck zero condition would be indicated by a constant relationship between the input and output data of the input and output signals of the modulo-2 enciphering data which is contained in the send data control 500. If the input and output data stays constant for 256 continuous bits, the code generator checker 512 will be actuated, which will in turn cut off the transmit data coming from the terminal and cut off the clear to send to the terminal. Inverter 610 is interconnected through NAND gate 612 to NAND gate 614. NAND gate 616 also provides an input to NAND gate 614. The output of NAND gate 614 is interconnected through an inverter 618 to a four stage shift register 620. Shift register 620 is interconnected to OR gate 622 which in turn is interconnected to flip-flop 624. Inverter 610 is also interconnected to AND gate 626, which is interconnected to OR gate 622. The shift register 620, flip-flop 624, OR gate 622 and their associated circuitry comprise the send frame and corp generator identified as block 502 in FIG. 6. The shift register 620 and associated logic controls can operate in the modulo-7 or modulo-15 modes of operation. The mode of operation is controlled using the send redundancy select switch 628. The send frame and corp generator 502 generates the TCORP and ENDW signals. Switch 630 is used in the test mode. Counter 632 is interconnected through the sync pattern redundancy select switches 634 to inverter 636. Inverter 636 is interconnected to flip-flop 638, which in turn is interconnected to flip-flop 640. Flip-flop 640 and NAND gate 642 are interconnected to flip-flop 644, which generates the TRAND-signal. Switch 646 is used in the test mode. Flip-flop 644 is also interconnected to NAND gate 646, which through inverter 648 is interconnected to OR gate 650. OR gate 650 generates the TPRIM signal. Flip-flop 644 is also interconnected to OR gate 652 which generates the TRAND signal. OR gate 654 provides a second input to AND gate 652. AND gate 656 receives the RPRIM signal and provides an input to OR gate 650 and is interconnected to OR gate 654. The four stage binary counter 632, flip-flops 638, 640 and 644, together with AND gate 652 and OR gate 650 and their associated gates comprise the electronic circuitry for the send controller represented by block 504 in FIG. 6. The send controller is clocked essentially by the ENDW signals. Inverter 658 provides an input to shift register 568 and is interconnected to NAND gate 660, which provides an input to NAND gate 662. A second input to NAND gate 662 is provided by NAND gate 664. NAND gate 666 is interconnected through NAND gate 668 which receives the THOLD signal to provide a third input to NAND gate 662. NAND gate 662 generates the TRK signal. The prime redundancy select switch 670 is interconnected to NAND gate 666. The inverter 658 and NAND gates 660, 662, 664, 666 and 668 comprise the send RK generator circuit represented in FIG. 6 by block 510. The send RK generator 510 generates the RK signal to the code generator send 80 in the proper timing in response to signals from the send frame and corp generator 502 and the send controller 504. The send prime redundancy select switch 670 selects whether the prime data is transmitted with redundancy or with no redundancy. NAND gate 668 is interconnected to a four stage binary counter 672, which is interconnected to a second four stage binary counter 674. Counter 674 is interconnected to a NAND gate 676, which generates the TLOAD*- signal, and which through NAND gate 678 generates the TLOAD* signal. Switch 679 is used in the test mode. The counter 672 and 674, together with NAND gates 676 and 678 comprise the circuitry represented as the prime counter, block 508 in FIG. 6. FIG. 8 illustrates the electronic circuitry represented by blocks 514 through 526 previously shown in FIG. 6. Referring to FIG. 8, the receive data logic block 526 (FIG. 6) is composed of an EXCLUSIVE OR gate 700. EXCLUSIVE OR gate 700 has as its input the randomized key string RKEY and the receive data QVID signal. The gate decodes by modulo-2 addition and the output is the DVID signal, which is transmitted to the receive data output buffer 96 (FIG. 3). The QVID signal and the RHOLD signal, through inverter 701, are applied to shift register 702, which is a four stage shift register. Shift register 702 is interconnected to shift register 704, which is interconnected to shift register 706, which in turn is interconnected to shift register 708. The shift registers 702, 704, 706 and 708 are four stage shift registers and detect the transmitted correlation pattern. Shift registers 702 and 704 are interconnected through inverters 710 and 712, and are connected through EXCLUSIVE OR gates 714, 716, 718 and 720 to a multiplexer 722. Inverter 723 is interconnected to the receive redundancy select switch 724. Shift register 706 is interconnected through inverters 725 and 726 to a multiplexer 728. Shift register 708 is interconnected to multiplexer 728. Inverter 723 also provides an input to multiplexer 728. The output of multiplexers 722 and 728 are applied to counter 730 which is a four stage binary counter. This circuitry operates to detect the correlation pattern in the receive mode. Multiplexers 722 and 728 are also interconnected through inverter 732, which is interconnected to flip-flop 734. Flip-flop 734 is interconnected to NAND gate 736, which also has an input from multiplexer 728. The output of NAND gate 736 is interconnected to counter 738. Counter 738 is a four stage binary counter, which has its output applied to OR gate 740 and NAND gates 742 and 744. The outputs of NAND gates 742 and 744 are interconnected to NAND gate 746. Inverter 747 receives the RCRYPT signal and is interconnected to flip-flop 747a to generate the RCT signal. The shift registers 702, 704, 706 and 708, together with multiplexers 722 and 728, and counters 730 and 738 and their associated circuitry comprise the receive correlator identified in FIG. 6 as block 514. The output from the OR gate 740 is applied to flip-flop 748, which is interconnected through AND gate 750 to flip-flop 752. Flip-flop 752 has an inverted input supplied by NOR gate 754. Flip-flop 752 is also interconnected to flip-flop 756, which is interconnected to flip-flop 758. Flip-flop 758 generates the RRAND signal. Flip-flops 756 and 758 are interconnected and generate the RRAND signal. Inverter 760 is also interconnected to NAND gate 762, which generates the REC* signal. NAND gate 762 is interconnected to a four bit shift register 763, such as a 4015 I/C, through inverter 763a. Shift register 763 receives the THOLD and REC signals. The output of NAND gate 746 is interconnected to NAND gate 764 to supply an input to flip-flop 756. The HDCONT and PBR* signals are applied through NAND gate 766 as an input to NAND gate 762. The flip-flops 748, 752, 756 and 758 and their associated components comprise the receive controller identified as block 518 in FIG. 6. The output from NAND gate 746 is also interconnected to flip-flop 768, which also receives as inputs the outputs of AND gate 770 and NAND gate 772. The output of flip-flop 768 is applied to NAND gate 774, which generates the RPDI signal. A second input to NAND gate 774 is applied from inverter 776 through NAND gate 778. The flip-flop 768 and AND gate 770, together with NAND gates 772 and 774, and inverter 776, comprise the prime data control circuitry represented by block 520 in FIG. 6. The outputs from NAND gates 780 and 782 are applied as inputs to NAND gate 784. The output of NAND gate 784 is applied directly to and through an inverter 786 to shift register 788. Shift register 788 is a four stage shift register, which is interconnected through AND gate 790 and OR gate 792 to flip-flop 794. The output of OR gate 740 is also interconnected to shift register 788 through flip-flop 796. The shift register 788, together with flip-flops 794 and 796 and their associated circuitry, comprise the receive frame synchronizer identified in FIG. 6 as block 516. OR gate 792 generates the RENDW signal which is applied through flip-flop 794 to AND gate 770 in the prime data control circuit 520 (FIG. 6). The flip-flop 758 generates the RRAND- signal which is applied to NAND gates 772, 778 and 810, and flip-flop 796. The RAND signal is applied to counters 798 and 800. Counters 798 and 800 are four stage binary counters having outputs applied to NAND gate 802. NAND gate 802 has its output applied through an inverter 804 to generate the RLOAD* signal. The counters 798 and 800, gate 802 and inverter 804 comprise the receive prime counter circuitry represented in FIG. 6 by block 524. The output from NAND gate 802 is also applied to NAND gate 810, which through inverter 812 generates the RPRIM signal. The output of inverter 812 is applied to NAND gate 814, which also is interconnected to counter 738. A third input to NAND gate 814 is supplied from AND gate 770 through inverter 816 and the prime redundancy switch 817 both interconnected to NAND gate 818. The outputs of NAND gate 814 and NAND gate 820 are interconnected to NAND gate 822 to generate the RRK signal. NAND gates 810, 814, 818, 820 and 822, together with inverters 812 and 816 comprise the receive RK generator represented by block 522 in FIG. 6. The receive RK generator 522 performs essentially the same function as the send RK generator. The receive generator 522 generates an RK signal to the code generator receive 78 (FIG. 2) each time a bit of prime data is received or a new key bit is required. KEY VARIABLE STORAGE FIG. 9 is a block diagram of the key variable storage circuit 68 as previously shown in FIG. 2. The key variable storage circuitry includes a transmitting and receiving section. The key variable select logic 850 receives the control signals from the front panel of the unit 10 which are generated by operation of the code selector switches 14 and 18 and converts the signals into binary signals which are usable by the code selector send circuit 852. The code selector send circuit 852 loads in new key variables into the send key variable memory 854. The key variable interlock 856 prevents the key variables from being entered if the operator has not used the correct procedure for entering into the front panel of the unit 10. For example, the key variable interlock prevents the entering of a custom code with the use of only a universal code key lock being turned on, or in the reverse, if a universal code is attempted to be entered with only the custom lock turned on. The send code selector 852 responds to information from the key variable select logic and converts the information into addresses which are used by the memory address generator 858. The memory address generator send 858 comprises a set of counters which successively address key variable memory send 854 to either write in or read out the key variable into or from memory. These memory addresses are utilized to address the memory 854. A key variable logic control send circuit 860 controls the operation of the key variable logic by synchronizing the enter signal for entering of the key variable data into the front panel of the unit 10. In addition, the logic control 860 contains a delay circuit which delays for a number of data bits before the system enters the encrypt mode. This function is accomplished by measuring a fixed amount of time from when the key load start signal goes high until the time the TCRYPT signal is generated for the remainder of the system. During this period of time, the code generator send 80 (FIG. 2) of the system is loading variables from the key variable memory 854. Once the loading of these variables is completed, then the code generator 80 (FIG. 2) initiates an initialization phase. The key variable distribution logic send 862 receives the serial data stream coming out of the memory 854 and converts it into five parallel output data streams which are applied to the code generator send 80 (FIG. 2). The memory 854 is a random access memory which is addressed by the memory address generator send 858 and the code selector send 852 in order to generate the write stream of data bits for the code generator. The key variable input control 866 is responsive to the external key variable input and the external control in order to control the operation of either the transmit or receive section of the circuit. The key variable logic control receive 868 receives the RLOAD* signal in order to generate a load signal to the code generator, thereby placing the code generator in the load mode wherein key variable signals selected from the front panel of the unit are transferred from memory to the code generator via the key variable distribution logic 870. The code variable information is stored in the key variable memory receive 872. After this data has been transmitted to the code generator, the key variable logic control receive 868 generates a load complete signal and the code generator is signaled to begin its initialization mode. The code selector receive 874 receives binary signals from the key variable select logic 850 and generates signals to the memory address generator 876 for accessing the memory 872. The block diagram shown in FIG. 9 will now be described in greater detail with respect to the schematic circuitry shown in FIG. 10. The AL3*- signal is applied to analog gate 880. The output of gate 880 and NOR gate 882 provide inputs to NOR gate 884 which generates the AL3- signal. NAND gates 886 and 888 receive the L1-, L2- and L3- signals. The outputs of NAND gates 886 and 888 are interconnected to NAND gates 890 and 892. NAND gate 890 is interconnected through inverter 894 to analog gate 896. Analog gate 896 is interconnected to provide an input to NOR gate 898. NAND gate 892 is interconnected through inverter 900 to analog gate 902, which also provides an input to NOR gate 898. The UNIV- signal is applied to NOR gate 904, which is interconnected to NOR gate 906. NOR gate 906 is interconnected to inverter 908 to analog gate 910. Analog gates 896, 902 and 910 generate the E3, E2 and E1 signals, respectively. The analog gates 880, 896, 902 and 910, together with NAND gates 886, 888, 890, and 892, and NOR gates 882, 884, 898, 904 and 906 comprise the circuitry for the key variable select logic circuit represented by block 850 in FIG. 9. Analog gate 880 is interconnected to analog gate 912 which also receives the SRO* signal. Analog gate 912 is interconnected to NAND gate 914, which is interconnected to NAND gate 916. NAND gate 918 receives the ESRO* signal and is interconnected to NAND gate 916. The analog gate 912 and NAND gates 914, 916 and 918 comprise the key variable input control circuitry represented by block 866 in FIG. 9. NOR gate 898 is interconnected to NOR gate 920, and through inverter 922 for interconnection to NOR gate 924. The outputs of NOR gates 920 and 924 are interconnected to NOR gate 926 which is interconnected to NOR gate 928. A second input to NOR gate 928 is provided from the OFF- signal through inverter 930. The output of NOR gate 928, through driver 932, generates the KS signal. NOR gates 920 and 924 receive the CKEY- and UKEY- signals. The NOR gates 920, 924, 926 and 928, together with inverters 922 and 930, comprise the key variable interlock circuitry represented by block 856 in FIG. 9. The key variable interlock 856 prevents the key variables from being entered into the unit 10 if the operator has not used the correct procedure for entering into the front panel. The memory address generator send circuitry represented by block 858 in FIG. 9 comprises binary counters 934, 936 and 938. These counters successively address key variable memory send to either write in, or read out the key variable into or from memory. Counter 934 is interconnected to NOR gate 940 and multiplexer 942. The multiplexer 942 is a quad two input multiplexer and comprises with NOR gate 940 the code selector send circuitry represented by block 852 in FIG. 9. Counters 936 and 938 are interconnected to random-access memory (RAM) 944. RAM 944 is interconnected to analog gates 946, 948 and 950, which together with RAM 944 comprise the key variable memory send circuitry represented by block 854 in FIG. 9. Flip-flop 952 is interconnected to AND gate 954, which is interconnected to OR gate 956. OR gate 956 provides an input to NAND gates 958 and 964, AND gate 960 and flip-flop 962. NAND gate 958 is interconnected to NAND gate 964, which through driver 966 is interconnected to analog gate 946. NAND gate 958 is also interconnected to AND gate 968, which through driver 970 generates the VSCP signal. The output of OR gate 956 is applied through inverter 972 to flip-flop 962. The TFC1 signal is applied through inverter 974 to flip-flop 962. The output of AND gate 960 is applied through driver 961 to counter 938. The CRYPT(T) signal is applied to flip-flop 976, which is interconnected to AND gate 978. A second input to AND gate 978 is applied through inverter 980 from counters 934 and 936. AND gate 978 is interconnected to flip-flop 982, which is interconnected to flip-flop 984 to generate the CRYPT(T) signal. Flip-flop 982 is also interconnected to AND gate 986, and through inverter 988 to AND gate 990. AND gates 986 and 990 are interconnected to OR gate 992, which through driver 994 generates the KGCP(T) signal. Flip-flop 982 is also interconnected to OR gate 996, which through driver 998 is interconnected to analog gate 948. Flip-flop 982 also generates the LOAD(T) signal. The TFC2 signal is applied through inverter 1000 to flip-flop 1002, which is also interconnected to flip-flop 982 and OR gate 996. Flip-flop 1002 is interconnected to AND gate 1004, which is further interconnected to AND gate 986. Flip-flop 976 receives the TLOAD* signal and is further interconnected to AND gate 1006. AND gate 1006 is interconnected to inverter 1008, which receives the THOLD signal. AND gate 1006 is also interconnected through inverter 1010 to flip-flop 984. AND gate 1006 is interconnected to a four stage binary counter 1012, which is interconnected through inverter 1014 to flip-flop 1016. Flip-flop 1016 generates the TCRYPT signal. Flip-flop 952 receives an input from NAND gate 1018, which is interconnected to NAND gates 1020 and 1022. NAND gate 1020 is interconnected to analog gate 1024 which receives the ENT signal. NAND gate 1020 also receives the EXT- signal, and is interconnected through inverter 1026 to the base of transistor 1027 to generate the EHB signal. Flip-flops 952, 962, 976, 982, 984, 1002 and 1016, counter 1012, together with their associated gates, comprise the key variable logic control send circuitry represented by block 860 in FIG. 9. The key variable logic control send circuit 860 controls the operation of the key variable logic by synchronizing the enter signal for entering of the key variable data from the front panel of the unit 10 into the memory and also controls the loading of these variables into the key generator send. In addition, the logic control 860 contains a delay circuit which delays a number of data bits before the system enters the encrypt mode. RAM 944 is interconnected to an addressable latch circuit 1028, which is interconnected to multiplexer 1030. Multiplexer 1030 is a quad-two input multiplexer which generates the K1(T), K2(T) and K3(T) signals. Multiplexer 1030 is interconnected through inverter 1032 to receive the CB signal, and is interconnected to NAND gate 1034 to receive the CD- and CB- signals. NAND gate 1034 is interconnected to NAND gate 1036 which receives the CC- signal. NAND gate 1036 is also interconnected to RAM 994 through analog gate 1038. NAND gate 1036 receives the U2- signal which is also applied to NAND gate 1040. NAND gate 1040 through inverter 1042 generates the UNIV signal. Addressable latch 1028 is interconnected to flip-flop 1044. Flip-flop 1044 is interconnected to NAND gates 1046 and 1048, which generate the TCF1 and TCF2 signals. NAND gate 1046 is interconnected to driver 1050 to receive the CGC signal. The integrated circuit 1028, multiplexer 1030, analog gate 1038 and their associated circuitry comprise the key variable distribution logic send circuitry represented by block 862 in FIG. 9. The receiving section of the key variable storage circuitry includes the code selector 874, memory address generator 876, key variable memory 872, key variable logic control 868 and the key variable distribution logic 870 circuitry represented in FIG. 9. The circuitry comprising these individual functions is identical to the circuitry in the send section of the key variable storage circuit. For example, the key variable memory receive 872 circuitry is identical to the key variable memory send 854 circuitry described above in connection with FIG. 10. Similarly, the code selector 874, memory address generator 876, key variable logic control 868 and the key variable distribution logic 870 circuits are identical to the code selector send 852, memory address generator send 858, key variable logic control 860 and the key variable distribution logic 862, respectively. Referring to FIG. 11, schematic circuitry is shown representing the key variable entry keyboard and logic, block 74 and the display and memory block 76 in FIG. 2. The key variable entry keyboard and logic 74 comprises the keyboard circuitry 1058, which is an eight key keyboard encoder, having keyboard push-button switches 20 (FIG. 1). The key variable entry keyboard and logic 74 further comprises push-button switches 24 and 22 and logic and debounce circuitry to control the key variable entry. The entry keyboard 1058 is interconnected to flip-flop 1060, which is interconnected through flip-flop 1062. Flip-flops 1060 and 1062 are interconnected through NAND gate 1064 to shift registers 1066 and 1068. The shift registers 1066 and 1068 indicate to the keyboard 1058 which digit is being entered next in the display. Shift register 1068 is interconnected to OR gate 1070, which through inverter 1072 generates the AL3- signal. The push-button entry switch 24 is interconnected to NOR gate 1074, which through inverter 1076 receives the KS signal. NOR gate 1074 is also interconnected to flip-flop 1078, which is interconnected to flip-flop 1080, which generates the ENTER signal. The ENTER signal is also applied to shift registers 1066 and 1068 through transistor 1081. A second input to flip-flops 1078 and 1080 is provided by NAND gate 1082 which is interconnected to NAND gate 1084. NOR gate 1074 is also interconnected through inverter 1086 to shift register 1068. The eight key keyboard encoder 1058, push-button switches 22 and 24, shift registers 1066 and 1068, together with their associated circuitry, comprise the key variable entry keyboard and logic represented by block 74 in FIG. 2. The eight key keyboard encoder 1058 is also interconnected through inverters 1088 and 1090 and 1092 to the light emitting diode array identified generally by the numeral 1094. The light emitting diode array consists of twelve light emitting diode assemblies identified as 1096(a)-(e). Each light emitting diode assembly in the array 1096 corresponds to one of the digit positions in the display 26 in FIG. 1. Light emitting diode assemblies 1096(a)-(h) are interconnected to shift register 1066, and light emitting diode assemblies 1096 (i)-(e) are interconnected to shift register 1068. The light emitting diode array 1094 comprises the display portion of block 76 in FIG. 2. The memory portion of the display and memory block 76 in FIG. 2 comprises the internal LED latches and the shift registers 1098(a)-(e). The shift registers 1098(a)-(e) are interconnected to the light emitting diodes of array 1094 and receive the output of NAND gate 1100. Input to NAND gate 1100 is supplied by flip-flops 1078 and 1080 in the key variable logic circuitry and the CLEAR ENTRY push-button switch 22. The shift registers 1098(a)-(e) are also interconnected to inverter 1102, to receive through inverter 1104 the VSCP signal. At initial entry, the shift registers 1066 and 1068 are all set at zero. The code is entered by entering twelve digits through the keyboard 20 by depression of the various keys. This causes the output lines 1, 2 and 4 from the eight key keyboard 1058 to be activated in accordance with the binary code, which drives all the light emitting diodes in array 1094. Upon depression of a key in the keyboard 20, a pulse is generated which causes the shift registers 1066 and 1068 to increment one pulse. When the shift registers 1066 and 1068 increment one pulse this causes that particular readout to lock the information contained on the lines 1, 2 and 4 and to display the number that was depressed in the corresponding position in display 26. This procedure continues until all twelve digits have been entered. If during entry, an error is made in entering a digit, the clear entry push-button switch 22 upon depression will reset the shift registers 1066 and 1068 back to the zero state and clear the display 26. Once the twelve digits have been entered the entry push-button switch 24 is depressed. This operation causes a transfer from the memory of the display and memory circuitry to the key variable storage circuitry represented by block 68 in FIG. 2. A reset pulse then causes the shift registers 1066 and 1068 to be reset back to the zero level. This pulse also clears the memory circuits of the shift registers 1098(a)-(e) by shifting the data onto the SRO* line, under the control of the VSCP clock pulses. Referring to FIG. 12, the circuitry representing the code select switch 18 (FIG. 1) is diagrammed and generally referred to as 1106. The switch 18 can be positioned to the universal code 1, custom code A, custom code B, universal code 2, custom code C or custom code D to generate the U1-, CA-, CB-, U2-, CC- and the CD- signals. These signals are applied to select the desired code as previously described. FIG. 13 illustrates the circuitry that comprises the code level select switch 14 (FIG. 1) and is generally referred to as 1110. The switch 14 can be positioned in either the off position or levels 1, 2 or 3 which generate the L1-, L2- and L3- signals, respectively. These signals are applied to select the desired code level to be input. FIG. 14 represents the circuitry comprising the universal key lock 12 and custom key lock 16 illustrated in FIG. 1, and is generally referred to as 1114. The custom switch 16, shown in its closed position in FIG. 14 generates the CKEY- signal. The universal code switch 12, shown in its closed position in FIG. 14 generates the UKEY- signal. Switches 1114 and 1116 in the closed position permit both universal and custom codes to be utilized for enciphering. Alternatively, either the custom or the universal code can be used individually. TEST CIRCUITRY Referring now to FIG. 15, the circuitry comprising the test circuitry 58 of FIG. 2 is shown. The LB signal is applied from the interface logic 62 (FIG. 2) to a driver circuit 1124. Driver circuit 1124 may comprise, for example, a 75452 I/C. The output of transistor 1124a is applied to a relay coil 1126. Actuation of relay coil 1126 closes relay contact 1126a to place the unit 10 in the loop back test mode. The ST signal is generated by the interface logic 62 and is applied to driver 1124. The output of transistor 1124b is applied to relay coils 1128 and 1130. Actuation of relay coils 1128 and 1130 cause relay contacts 1128a-d and relay contacts 1130a-d to close to place the unit 10 in the self-test mode, thereby disconnecting the unit 10 from the data modem 64. In the self-test mode of operation all send outputs from the interface logic 62 to the data modem 64 are connected to the receive inputs from the data modem 64. For example, the MRTS signal, request to send to the modem is connected through relay contact 1128d to form the MCTS signal clear to send from the modem to the interface logic 62. The MTCK signal is routed through relay contact 1130d to generate the MDB signal to the interface logic 62, and the MBA send data output to the modem is routed through relay contact 1130a to generate the MBB, receive data from the modem to the interface logic 62. The TEST signal is applied from the interface logic 62 to a driver 1132. Driver 1132 may comprise, for example, a 75452 I/C. The TEST signal is generated whenever the test switch 40 (FIG. 1) is positioned to any of the three test modes, TM, LB or ST. The output of transistor 1132a is applied to relay coils 1134 and 1136. Actuation of relay coils 1134 and 1136 closes relay contacts 1134a-d and 1136a-d to disconnect the unit 10 from the data terminal 56 (FIG. 2). FIG. 15 illustrates the positioning of the relay contacts 1126a, 1128a-d, 1130a-d, 1134a-d and 1136a-d, when test switch 40 is in the off position. FIG. 15 also illustrates a portion of the resynchronization circuit previously described with reference to FIG. 5a. The MCF, carrier detect from the modem is applied through relay contact 1128c to receiver 1140 which is interconnected to receiver 1142. Receivers 1140 and 1142 may comprise, for example, a 75154 I/C. The output of receiver 1142 represents the carrier detect, which is applied to NAND gate 1144. The MBB signal is applied to NAND gate 1146 and the CLEAR signal is applied through inverter 1148 to NAND gate 1146. The CGC signal is applied to NAND gate 1150, whose output together with the output of NAND gate 1146 is applied to a frequency divider 1152. Frequency divider 1152 is a 24 state frequency divider and may comprise, for example, a 4521 I/C. Switches 1154a-d interconnect the frequency divider 1152 to NAND gate 1156. The output of NAND gate 1156 is applied to NAND gate 1144, which through inverters 1158 and 1160 is interconnected to driver 1162, which also receives an input from driver 1164. Driver 1162 generates the MCF output signal. The carrier detect signal from the modem is inhibited if the receive data from the data modem 64 remains in a constant state for a length of time greater than the period preselected by the programming of switches 1154a-d. Switches 1154a-d are internal switches and are programmable for a 0.2-1.5second interval. If the state of the receive data from the modem MBB remains constant for the predetermined time period, NAND gate 1156 generates the inhibit signal to inhibit the modem carrier detect signal, thereby generating the MCF signal to cause a resynchronization cycle. The carrier detect signal generated from the data modem 64 indicates that there is a detected carrier being received, which indicates data is being transmitted to the unit 10. Should a problem develop in either the send or receive unit 10, the data modems or the data link, the carrier detect signal will be inhibited to cause a resynchronization cycle to occur. The operation of the various testing modes will now be summarized. To test a data link in one direction only, the test switch 40 (FIG. 1) is positioned in the TM position on the send end of the data link. The send unit 10 is thereby disconnected from the data terminal and the test pattern previously described is connected to the send data input (terminal BA). The terminal BB indicator on the front panel of the unit 10 on the receive end of the data link should illuminate according to the three second test pattern. If an erroneous indication is received, the push-button 30 on the send end of the data link should be depressed to resynchronize the data link. If an out of sync condition persists, the code settings on the code selector switches 14 and 18 on both ends of the data link should be checked to determine if identical code settings are used. This test mode verifies the code settings of the unit 10 on both ends of the data link. If the out of sync condition cannot be corrected each unit should be checked in the self-test mode to be subsequently described. To test the complete data link, both modems and the unit 10 on each end of the data link, the send unit 10 test switch 40 is placed in the TM position and the receive unit 10 test switch 40 is placed in the LB position. The modems should be in their normal operating modes. The send unit 10 is thereby disconnected from the data terminal and the test pattern is connected to the send data input. The receive unit 10 is thereby disconnected from the data terminal and the receive decoded data output is connected directly to the send data input. After resynchronization, the terminal BA and BB indicators on the front panel of unit 10 should illuminate in unison on both the send and receive unit 10. Failure of these indicators to illuminate in unison indicates an out of sync condition. This test verifies the entire communication link and the code settings of both send and receive unit 10. In the ST test mode the unit 10 is sending data to itself and does not test for the proper entry of the code variables. A successful test indicates that all control circuits and interface circuits are properly working. Three self-tests can be conducted. The first self-test tests the unit 10 by itself. The test switch 40 is placed in the ST position and the push-button 30 is depressed. After resynchronization, the terminal BA and BB indicators should illuminate in unison if the unit 10 is properly operating. The second self-test tests the unit 10 and the modem at one end of the data link. The test switch 40 is positioned to the TM position and the modem is placed in the analog loop back test mode. In this mode the modem transmitter output should be connected to the received input. The control signals in the interface logic 62 must work normally. The push-button switch 30 is depressed and after synchronization, the terminal BA and BB indicators should illuminate in unison at the three second repetition rate previously described. The third self-test that can be conducted tests one of the units 10 and both modems. The test switch 40 is positioned to the TM mode and the modem test function on the opposite end of the communications link is set to the digital loop back test mode in which the receive data output is looped back to the send data input. The push-button 34 is then depressed and the terminal BA and BB indicators should illuminate in unison to indicate a proper operation of the sending unit 10 and both data modems. ASYNCHRONOUS CONVERTER Referring now to FIGS. 16a and 16b, the circuitry comprising the asynchronous converter represented by block 60 in FIG. 2 is shown. FIGS. 16a and 16b are drawn to be matched in a side-by-side relationship to illustrate the entire electrical schematic. As previously stated, the asynchronous converter 60 is interconnected between the test circuitry 58 and interface logic 62 (FIG. 2). The asynchronous converter 60 functions to convert asynchronous data from the data terminal 56 to synchronous data for utilization by the interface logic 62, and functions to convert synchronous data from the interface logic 62 to asynchronous data for utilization by the data terminal 56. Referring to FIG. 16a, the circuitry for converting asynchronous data to synchronous data is illustrated. The TBA signal in the form of asynchronous data is applied from the data terminal 56 (FIG. 2) to a receiver 1180. Receiver 1180 may comprise, for example, a 75154 I/C. Receiver 1180 is interconnected to a flip-flop 1182 through inverter 1184. Receiver 1180 is also interconnected to flip-flop 1182 through NAND gates 1186 and 1187. The output of flip-flop 1182 is applied to flip-flops 1188 and 1190. The output of flip-flop 1190 is interconnected to NAND gate 1186 through AND gate 1192. The asynchronous data through inverter 1184 is also applied to a shift register 1194, which is interconnected to a shift register 1196. Shift registers 1194 and 1196 are four stage static shift registers and may comprise, for example, 4015 I/Cs. The outputs of shift registers 1194 and 1196 are applied to a shift register 1198. Shift register 1198 is an eight bit shift register and may comprise, for example, a 4021 I/C. The output of register 1198 is applied to a multiplexer 1200. Multiplexer 1200 is a dual four channel select multiplexer and may comprise, for example, a 4539 I/C. The output of multiplexer 1200 is applied to a flip-flop 1202, which is interconnected to a flip-flop 1204. The output of flip-flop 1204 is applied to the "X" input of a multiplexer 1206. Multiplexer 1206 is a four bit AND/OR selector multiplexer and may comprise, for example, a 4519 I/C. The output of multiplexer 1206 is applied through inverter 1208 to a driver 1210. Driver 1210 is a dual line driver and may comprise, for example, a 75150 I/C. Driver 1210 generates the TBA* output signal, which represents synchronous data converted from the TBA asynchronous input data. The asynchronous converter 60 may also be utilized to route synchronous data through converter 60 to the interface logic 62. If the TBA signal was synchronous data initially, the output of inverter 1184 would apply this synchronous data to the "Y" input of multiplexer 1206. The output of driver 1210 would, therefore, represent synchronous data applied to the interface logic 62. A mode select switch 1212 is utilized to select either the "X" or "Y" inputs to multiplexer 1206 depending upon whether the input data is asynchronous or synchronous. Mode select switch 1212 in the open position programs the converter 60 to receive asynchronous data and, therefore, the X input to multiplexer 1206 is selected. Mode select switch 1212 in the closed position programs the converter 60 to receive synchronous data, which is applied to the Y input of multiplexer 1206. Select switch 1212 is interconnected to an inverter 1214, which is interconnected to a multiplexer 1216. Multiplexer 1216 is a four bit AND/OR selector multiplexer and may comprise, for example, a 4519 I/C. An input to shift registers 1194 and 1196 is the asynchronous data rate, which is used to clock the asynchronous data into shift registers 1194 and 1196. This asynchronous data rate must be generated by the converter 60 from the internal clock of the unit 10. Various asynchronous data rates can be utilized depending upon the type of asynchronous data being generated by the data terminal 56. The desired data rate is programmable by operation of switches 1218a-1218g. The position of these switches is determined by the particular asynchronous data rate desired. For typical asynchronous data rates, the switch positions of switches 1218a-g are tabulated in Table 1 below.
TABLE 1
__________________________________________________________________________
Asynchronous Data
Switch 1218
Rate, Hz a b c d e f g
__________________________________________________________________________
1800 open
closed
closed
open
open
open
open
1200 closed
open
open
closed
open
open
open
600 open
closed
open
open
closed
open
open
300 open
open
closed
open
open
closed
open
150 open
open
open
closed
open
open
closed
135 open
open
open
open
closed
open
closed
110 open
closed
open
open
open
closed
closed
__________________________________________________________________________
The outputs of switches 1218a-1218g are applied to counters 1220 and 1222. Counters 1220 and 1222 are divide-by-N four bit counters and may comprise, for example, 4526 I/Cs. The CGC fast clock generated by the unit 10 is applied to counter 1220. The CGC clock is 691,200 Hz and this frequency is divided by counters 1220 and 1222 according to the inputs generated by the closing of switches 1218a-1218g. Switches 1218a-g apply a 2, 4, 8, 16, 32, 64 and a 128 input to counters 120 and 122, which form the divisor for the 691,200 Hz fast clock signal. For example, if an asynchronous data rate of 1800 Hz were desired, switches 1218b and 1218c would be closed while the other switches 1218 would remain open. The closing of switches 1218b and 1218c would apply a 4 and an 8 input to counter 1220 to cause counter 1220 to divide the fast clock frequency by 12. The output of counters 1220 and 1222 is applied through NAND gate 1224 to a flip-flop 1226, which is interconnected to a counter 1228. Counter 1228 is a dual binary up counter and may comprise, for example, a 4520 I/C. Counter 1228 performs a further division of the output frequency of counters 1220 and 1222 by dividing the output frequency by 32. The output of counter 1228 will, therefore, represent the selected asynchronous data rate of approximately 1800 Hz which is applied to shift registers 1194 and 1196. To further illustrate the operation of switches 1218a-1218g and counters 1220, 1222 and 1228, suppose it is desired to operate the converter 60 at the 110 Hz asynchronous data rate. Referring to Table 1, switches 1218b, 1218f and 1218g must be placed in the closed position. The closing of these three switches provides a 4, 64 and 128 input signal to counters 1220 and 1222 to provide a divisor of 196. The CGC clock signal of 691,200 Hz is divided by 196 through operation of counters 1220 and 1222. The output frequency of counter 1220 is approximately 3,526.5 Hz which is applied through flip-flop 1226 to counter 1228. Counter 1228 divides this output frequency by 32, which produces an asynchronous data rate of approximately 110 Hz, which is applied to shift registers 1194 and 1196. The number of bits per character of the asynchronous data must also be preselected depending upon the type of asynchronous data being converted by the converter 60. There may be 8, 9, 10 or 11 bits per character of asynchronous data and this information is preprogrammed by operation of switches 1230a and 1230b. The positioning of switches 1230a and 1230b is determined by the number of bits per character selected. For a typical number of bits per character, the switch positions of switches 1230a and 1230b are tabulated in Table 2 below.
TABLE 2
______________________________________
Asynchronous Bits/ Switch 1230
Code Level Character a b
______________________________________
6 8 open open
7 9 closed open
8 10 open closed
8 11 closed closed
______________________________________
Once selected, the number of bits per character is applied via signal lines A and B to multiplexer 1232. Multiplexer 1232 is a four channel select/multiplexer and may comprise, for example, a 4539 I/C. The asynchronous data rate generated at the output of counter 1228 is applied to a counter 1234. Counter 1234 is a dual binary up counter and may comprise, for example, a 4520 I/C. The output of counter 1234 is applied through AND gate 1236 to a shift register 1238 and through an inverter 1237 to counter 1234. Shift register 1238 is a dual four stage static register and may comprise, for example, a 4015 I/C. The output of shift register 1238 is applied to multiplexer 1232 to generate an output signal which signifies that a completed character of asynchronous data has been received by the converter 60. The character complete signal generated by multiplexer 1232 is applied to a shift register 1240. Shift register 1240 is interconnected through inverter 1242 to AND gate 1244. The output of AND gate 1244 is applied to counter 1198 and is a signal to counter 1198 to dump the preselected number of bits of asynchronous data from shift registers 1194 and 1196 into shift register 1198. The rate at which the asynchronous data is clocked out of shift register 1198 and into multiplexer 1200 is determined by the synchronous clock rate supplied by the data modem 64 (FIG. 2). The synchronous clock rate is applied to shift register 1198 from a shift register 1246. Shift register 1246 receives the CGC fast clock rate through an inverter 1248 and AND gate 1250. A second input to AND gate 1250 is applied from the shift register 1240 through an inverter 1252 and NAND gate 1254. The transmit clock DB from the data modem 64 is also applied to the shift register 1246 through a driver 1256 and an inverter 1258. The request to send signal TCA is applied to a driver 1260 which is interconnected to a driver 1262. Driver 1262 is interconnected to AND gate 1264, which supplies its output to flip-flop 1226, counter 1228, and through inverter 1265 and NAND gate 1265a to counters 1220 and 1222. Driver 1262 is also interconnected to a counter 1266, which through inverter 1268 is interconnected to a flip-flop 1270. The output of flip-flop 1270 is applied to the "X" input of a multiplexer 1272. The output of multiplexer 1272 is interconnected through an inverter 1274 to a driver 1276 to generate the TCA* output signal. The output of flip-flop 1270 is applied to the "X" input of multiplexer 1272. If the mode select switch 1212 is in the open position, the converter receives asynchronous data. If synchronous data is received by the converter 60, mode select switch 1212 is closed so that the TCA signal is then applied to the "Y" input of multiplexer 1272 to be merely routed through the converter 60 as synchronous data. To summarize the conversion from asynchronous to synchronous data performed by asynchronous converter 60, mode select switch 1212 is placed in the open position, switches 1218 are positioned to generate the desired asynchronous data rate and switches 1230 are positioned to generate the desired number of bits per character of the asynchronous data. Upon receipt of a request to send TCA signal the output of receiver 1262 is applied to the input of flip-flop 1 | ||||||
