as seen in the generalized block diagram of fig1 a , processor 6 is connected through processor control logic 8 to a translator unit 15 . the translator unit 15 connects to a system bus interface unit 50 which separates through two buses into a input / output unit 60 and a task control unit 70 ( which controls which tasks a processor will work on ). the translation system is shown in greater detail in the block diagram of fig2 wherein a processor 6 , which may , for example , have the capability of single word handling , is connected via processor control logic 8 to the translator unit 15 . within the translator unit 15 is a translator controller 10 which connects to the processor control logic 8 and also receives data from the translator ram 20 . similarly , the translator controller 10 receives data from the translator counter 40 and from the system bus interface logic 50 by means of the bus 14 . the system bus interface logic 50 has provision for two ( a + b ) system buses 56 and 57 which connect to the input / output unit 60 and the task control unit 70 . further , the system bus interface logic provides , via bus 45 , information to the translator counter 40 , and , via bus 14 , provides information to the translator controller 10 . the translator bus 25 provides communication between the translator ram 20 and the system bus interface logic 50 . likewise , the translator bus 28 provides intercommunication between the translator ram 20 and the processor control logic 8 . with respect to the translator unit 15 of fig2 this unit will store a series of messages which are shown as indicated herein below : in fig3 the details of the buses involved are shown with more definition . bus 18 indicates the various types of signals functioning between the control logic 8 and the translator controller 10 . thus , in fig3 the bus 18 shows the particular signals between the control logic 8 and the translator controller 10 . the bus 12 shows the detailed individual signals between the translator controller 10 and the translator counter 40 . the bus 14 shows the detailed signals between the translator controller 10 and the system interface logic 50 . likewise , the bus 22 shows signals between the translator controller 10 and the translator ram 20 . the outputs of the translator ram 20 are shown on bus 21 being conveyed to the translator controller 10 . referring to fig2 the translator unit 15 is a temporary storage buffer for holding interprocessor communication messages prior to being transferred and after being received on the system buses 56 and 57 . the system buses 56 and 57 operate for message transfer in four word blocks at 16 mhz . the data for these messages can be transferred at a maximum rate of one word for every clock . the processor 6 ( imp ) reads or writes these messages one word per bus cycle over its translator unit interface 15 . the translator unit 15 serves as a speed matching buffer between the system bus interface logic 50 and the processor control logic 8 . in the presently described system , the messages are of three types : ( i ) external calls ; ( ii ) external requests ; and ( iii ) acknowledgements . &# 34 ; external calls &# 34 ; are request messages from the central processing module ( imp ) to other system modules such as the input / output unit 60 or task control unit 70 . external calls are only transmitted by the central processing module such as processor 6 and are not received by the processor 6 . &# 34 ; external requests &# 34 ; are requests to the processor 6 ( cpm ) from the task control unit 70 and the task control unit , which will then receive an acknowledgement when the processor 6 accepts the request . external requests are only received by the processor 6 and are not transmitted by this processor . ( i ) external calls -- requests by the cpm processor 6 to other modules ; ( ii ) external requests -- requests by the tcu 70 to the cpm processor 6 . &# 34 ; acknowledgment &# 34 ; messages are responses from other system modules ( as i / o unit 60 and tcu 70 ) to previously sent requests . acknowledgements can be transmitted by or received by the processor 6 ( cpm ). the translator controller 10 is able to hold a maximum of three outstanding messages at any one time : ( a ) one incoming acknowledgement ; ( b ) one incoming request ; and , ( c ) one outgoing message . in order to address the individual words within the message buffer section which is shown as the translator ram 20 , the translator unit 15 contains a four bit counter 40 . the logic of the translator counter 40 is implemented in a signetics plus 405 device called the translator counterprogrammable array logic ( pal ). this counter is incremented as words of a message are transferred out of or into the translator unit 15 . request messages and acknowledge messages received by the translator unit 15 cause interrupts to be generated to the imp processor 6 . request messages result in an interoperator interrupt to the imp processor 6 , while on the other hand , acknowledgement messages result in an immediate interrupt . the acknowledgement interrupt is monitored by imp microcode because after the imp processor has sent an external call ( while it is waiting for an acknowledgement ), it is in a state of idleness . the unisys a series computers operate on a internal program called the master control program or mcp , as does the unisys a16 series i / o subsystem . each of the a series processors and subsystems require the imposition of a set of protocol rules on the message transfer for operation of the translator unit 15 . the translator unit 15 will store both requests and acknowledgements to the task control unit ( tcu ) 70 ; it will also store requests &# 34 ; to &# 34 ; the input / output unit ( iou ) 60 ; the translator unit 15 will store requests and acknowledgements &# 34 ; from &# 34 ; the task control unit 70 and also acknowledgements &# 34 ; from &# 34 ; the iou 60 . however , requests received by the processor 6 from tcu 70 , while an external call from the imp processor 6 to tcu 70 is being accumulated by the translator unit 15 or is currently outstanding to the task control unit ( tcu ) 70 , will be &# 34 ; discarded &# 34 ;. since a discarded request message may already have generated an interrupt to the imp processor 6 , the translator unit 15 will maintain a &# 34 ; message status register &# 34 ; ( fig3 ) with a &# 34 ; discard &# 34 ; bit to notify the imp processor 6 of this condition . when the imp processor 6 receives a request interrupt , it will then first read the message status register to determine if the request has been discarded . the translator unit 15 , fig2 will interface to both the imp processor 6 and the system bus interface logic 50 and will be capable of accepting transfers at the 12 mhz processor frequency or also at the 16 mhz bus frequency . the translator controller 10 shown in fig2 and 3 provide a series of signals and operations for this system which are listed as follows : fig3 shows a block diagram of the translator unit logic and the signals which interface between the modules . the translator controller 10 carries out the following signal operations : send external request ( snd -- ext ): this command from the imp processor 6 causes the translator unit 15 to load a request message word into the next location of the output buffer , ram 20 . send acknowledge ( snd -- ack ): this command from the imp processor 6 causes the translator unit 15 to load an acknowledge message word into the next location of the output buffer , ram 20 . read request ( rcv -- req ): this command from the imp processor 6 causes the translator unit 15 to send the next word from the request buffer in ram 20 to the imp processor 6 . read acknowledge ( rcv -- ack ): this command from the imp processor 6 causes the translator unit 15 to send the next word from the acknowledge buffer in ram 20 to the imp processor 6 . send interprocessor message ( ipc -- cmd ): this command from the imp processor 6 causes the translator unit 15 to load the outgoing command word into the command buffer in ram 20 . the translator unit 15 then makes a request to the system bus interface for access to send a message . once permission has been received , the translator unit 15 will start sending the command and four message words to the system bus interface , 50 . read status ( rca -- sta ): this command from the imp processor 6 causes the translator unit 15 to send the &# 34 ; discard bit &# 34 ; status to the imp processor 6 . if the discard bit is &# 34 ; one &# 34 ;, this indicates that the pending request message need not be read . if it is zero , the pending request message is &# 34 ; valid &# 34 ; and should be read . within the elements of fig3 the following designated signal lines provide the functions indicated hereunder : imp encoded command imp -- cmd ( 4 : 0 ): this command field indicates to the translator controller 10 the current imp operation . data valid flip - flop ( a -- datvkdff -- b -- datvldff - -- b ): these flip - flops indicate that valid message data is being received from one of the two system buses ( 56 , 57 ) by the system bus interface logic 50 . these signals are used by the translator controller 10 to determine when a message has been completely received from a system bus ( 56 , 57 ). translator bus t -- bus ( 41 : 40 ): these two bits are used to determine whether the request message word the imp is sending has the tcu as a destination . if t -- bus ( 41 : 40 )= 10 , the discard bit is set , indicating that any subsequent request message received before an acknowledge for the outstanding imp request will be discarded . they are used with cnt1 and cnt0 as explained below . message word count ( cnt1 , cnt0 ): these bits from the translator counter 40 are used along with t -- bus ( 41 : 40 ) to set the discard bit only when the first message word is sent to the translator unit 15 from the imp . the first message word is the only one with destination data . both cnt1 and cnt0 must be zero . incoming message ( a -- msgin -- b , b -- msgin -- b ): these signals from the system bus interface 50 indicate that a valid message bound for the host module will be loaded from the indicated system bus beginning the clock after the signal becomes active . it is used by the translator controller 10 to transition the msgin state machine and setup the ram 20 to the proper address to receive message data . receiving incoming message ( a -- rcvng -- b , b -- rcv - ng -- b ): these signals from the system bus 50 interface indicate that a valid message is being loaded from the system bus . the translator unit 15 uses these signals to determine when the message has finished loading from the system bus . input register bit 47 ( ra -- bit47 , rb -- bit47 ): these signals from the system bus interface 50 are used to determine whether the incoming message on the indicated bus ( 56 or 57 ) is an &# 34 ; acknowledge &# 34 ; or &# 34 ; request &# 34 ; message . if the bit is one , it is an acknowledge message , while a zero indicates a request message . processing element acknowledge ( a -- peack -- b , b - -- peack -- b ): these signals from the system bus interface indicate that the message has been successfully received without errors . when one of these signals become active , an interrupt is sent to the imp processor 6 to indicate a new message is valid in the translator unit 15 and should be read . imp data acknowledge ( m -- dack -- b ): this signal from the imp interface control logic indicates that message data has been received from the translator unit 15 during a &# 34 ; read &# 34 ; operation . bus interface data acknowledge ( biu -- dack -- b ): this signal indicates that the system bus interface logic 50 has finished sending a complete message . when the controller 10 logic has seen this signal , the translator unit 15 will stop sending message words . discard bit m -- bus ( 39 ): when the imp 6 does a rca -- sta command , the status information will be returned on this bit . if it is high , the request message can be discarded , while low indicates it must be read . retry operation ( t -- retry -- b ): this signal from the system bus interface 50 tells the translator unit 15 that an error occurred sending the message and should be retried at a later time . the translator unit 15 will try to send the message again after this signal has gone inactive . a series of signal interconnections are provided between the translator controller 10 , ram 20 and the imp processor 6 : ram output enable ( ramoe -- b ): this signal causes the ram 20 to drive data onto the t -- bus 28 . it becomes active when the imp processor 6 is reading message data from the translator unit 15 or when the translator unit 15 is sending message data to the system bus interface , 50 . request interrupt ( reqi -- b ): this signal is active for one or two clocks , depending on synchronization , to tell the imp processor 6 that a new request message is pending in the translator controller 10 . acknowledge interrupt ( acki -- b ): this signal is active until the first acknowledge message word is read by the imp . it tells the imp that a new acknowledge message is pending in the translator controller 10 . translator imp grant ( t -- mgrnt -- b ): this signal is used when the imp processor 6 is writing message words to the imp . once a command has been sent by the imp to the translator controller 6 , this signal is used to indicate that the data phase of the write can be sent . translator data acknowledge ( t -- dack -- b ): this signal tells the imp processor 6 that valid data is being sent to it when doing a read , or that a message word has been correctly received when the imp processor 6 has received it . translator system bus request ( t -- breq -- b ): this signal is sent to the system bus interface 50 to make a request to send a command and four word message to another system module . write translator ram ( writen ): this signal causes data to be written into the ram 20 at the address set by the translator counter 40 . it is active when the imp processor 6 is writing message data to the translator controller 10 or when a message is being received from the system bus interface , 50 . as indicated in fig2 and 3 , there are three independent state machines ( sm1 , sm2 , sm3 ) located in translator controller 10 . these provide : the sends state machine , sm1 , implements the logic to accept message words sent by the imp processor 6 to be stored in the translator ram 20 . it operates in six states . fig4 illustrates the state machine functions . fig4 shows a schematic flow diagram of the functions involved in the sends state machine , sm1 . referring to fig4 the idle is a state entered by the state machine when the translator controller 10 is reset and at the end of each operation . the write function designated d4 operates such that if a message word is sent to the translator controller 10 by the imp processor 6 with the commands snd -- ret , snd -- ack , or ipc -- cmb , then this &# 34 ; write &# 34 ; state will be entered . writen becomes active in order to write the data into the translator ram 20 . the interprocessor command state ( ipc ) designated in block do is a state for the interprocessor command word which has been written into the translator ram 20 and the state machine is issuing t -- dack -- b and t -- mgrnt -- b to the imp processor 6 to indicate it has received a command word . the out state shown as d2 in fig4 indicates that during this state the command and message words are being sent to the system bus interface logic 50 and also to the destination module , such as , i / o unit 60 or task control unit 70 . this signal t -- breqb is active to make a request to the system bus interface logic 50 for access to a system bus . the signal ramoe -- b is active to output enable the ram 20 . the signal tbxmsg -- out is active to indicate to the translator counter 40 ( programmable array logic ) that a message is being sent out . the internal flip - flop retryff is reset in this state . if the signal t -- retry -- b becomes active , indicating the message should be retried at a later time , then the signal retryff will be set during the transition period . the block designated d3 as pause is the final state after a message has been sent out or a retry of the operation is required . the signal rstcnt -- b is active to reset the translator counter 40 back to an address of zero . the state machine sm1 will remain in a state as long as t -- retry -- b is active . in fig4 the designated area d1 marked send is a state which is entered during a snd -- req or a snd -- ack command with the imp processor 6 writing one word to the ram 20 . this state indicates that the word has been written into the ram 20 and the state machine ( sm1 ) is issuing the signals t -- dack -- b and also t -- mgrnt -- b to the imp processor 6 to indicate it has received the command word . it will also activate the signal incr -- b to increment the translator counter programmable array logic 40 to the next ram 20 address . idle to write : this transition will occur at the beginning of a snd -- req , snd -- ack , or imp -- cmd operation . write to ipc : write is a one clock state , and if the command was ipc -- cmd , this transition will be made . imp to out : the state machine will stay in the ipc state until the ipc -- cmd signal becomes inactive indicating that the imp logic has seen t -- dack -- b . this transition will then be made to start sending the completed message word to a system bus . out to pause : the state machine will stay in this state until the message has been successfully sent indicated by biu -- - dack -- b becoming active , or t -- retry -- b becoming active indicating the operation needs to be retried at a later time when t -- retry -- b becomes inactive . either of these cases cause the transition to be made . pause to out : this transition is made when t -- retry -- b goes inactive indicating that the state machine can proceed with another retry , and retryff is active indicating that this operation needs to be retried . pause to idle : if t -- retry -- b is active and retryff is inactive , this transition will immediately be made . the message has been completely sent . write to send : write is one clock state , and if the command was snd -- ack or snd -- req , this transition will be made . send to idle : the state machine will stay in this state until the snd -- ack and snd -- req command signals are both off . this indicates that the imp has recognized that the message word has been sent successfully . the reads state machine ( sm2 ) functions are shown in fig5 . the reads state machine implements the logic to allow the imp processor 6 to read messages one word at a time from the translator ram 20 . the basic functions of idle , wait ( rd0 , fig5 ) and receive ( rd1 ) can be indicated as follows : idle the state machine enters this state when the translator unit 10 is reset and at the end of each operation . wait ( rdo ) when a rca -- ack or rca -- req command is received from the imp processor 6 , this state is entered . ramoe -- b is set active to allow the ram 20 to drive the t -- bus . t -- datvld -- b datvld and t -- mgrnt -- b are set active to tell the imp logic that valid data is being sent . if the command was rca -- ack , then ack -- b is set active to cause the ram 20 to address the acknowledge message address range . if rca -- req was the command , then req -- b is set active to cause the ram to address the acknowledge message address range . internally , if the command is rca -- ack , the ack interrupt flip - flop is reset so the interrupt is no longer set to the imp processor 6 . the request interrupt is active for only two clocks , so it need not be reset by this state machine . receive ( rd1 ) the outputs in this state are similar to the ( rd1 ) wait state except that the ack interrupt is no longer being reset . in addition , when both the rca -- req and rca -- ack command lines become inactive , incr -- b will become active for one clock to cause the translator counter 40 to increment to the next ram 20 address . the transitions between the conditions of idle , wait , and receive in the reads state machine ( sm2 ) may be summarized as follows : idle to wait : when the rca -- ack or rca -- req command becomes active , this transition is immediately made . wait to receive : wait is a one clock state and this transition will immediately be made . receive to idle : when both rca -- req and rca -- -- ack are inactive , indicating that the imp processor 6 logic has received the message data from the translator controller 10 , this transition is made . fig6 illustrates the functional states of the third state machine designated as the &# 34 ; message in &# 34 ; or msgin state machine . the msgin state machine implements the logic to accept messages from the system busses 56 and 57 and to write them into the translator ram 20 . there are 6 states in this state machine as described below . idle : the state machine enters this state when the translator controller 10 is reset , and at the end of each operation . waita , waitb these two states ( designated md0 , md1 ) are similar , waita entered if the message is being received on system bus a and waitb entered if the message is being received on system bus b . if x -- rcvng -- b becomes active , indicating the message has been accepted by the system bus interface logic , 50 , save -- b will be driven active , telling the counter ( pal ) 40 to save the address at which the imp processor 6 will write to or read from the next ram message word so it can be restored after the message has been received . the small &# 34 ; x &# 34 ; in a signal name indicates two signals : one for system bus a and one for system bus b ( fig1 a and 3 ). if the message is an &# 34 ; acknowledge message &# 34 ;, the internal ackff is set and ack -- b is driven to the counter ( pal ) 40 to tell it which address range to use . if the message is a &# 34 ; request message &# 34 ;, the reqff is set and req -- b is driven to the counter ( pal ) 40 to tell it which address range to use . these two internal flip - flop &# 39 ; s are set to recognize which type of message was sent later in the same sequence . msga , msgb once again , these two states ( md2 , md3 of fig6 ) are similar , msga entered if the message is being received on system bus a and msga entered if the message is being received on system bus b . if x -- datvldff -- b is active , this indicates that valid message data is being received . writen and incr -- b are both driven active , writen to write the message data into the ram 20 and incr -- b to increment the counter ( pal ) 40 to the next address in the ram 20 . reset this state ( md4 ) is the final state when receiving messages . load -- b is driven active to cause the counter 40 to reassert the address bits it was asserting before the message came in . if x -- peack -- b becomes active , this indicates that the message was received unsuccessfully and acki -- b can be set active to the imp 6 if the message was an acknowledge , or reqi -- b can be set active to the imp 6 if the message was a request . note that acki -- b is active until the message is read by the imp , while reqi -- b is active for only two clocks . the internal ackff and reqff are both reset . if x -- peack -- b is not active during this state , it indicates an error occurred when sending the message , and there is not a valid message in the ram 20 , so no interrupts to the imp 6 will be set . the major transitions which occur in fig6 of the msgin state machine are : idle to waita , waitb : if the signal a -- msgin -- b becomes active the transition to waita will be made , and if b -- msgin -- b becomes active , the transition to waitb will be made . these two input signals indicate that a message command has been detected on a system bus , but it is not yet known whether the system bus interface logic 50 will accept the message . waita to msga , waitb to msgb : these transitions take place if a -- rcvng -- b or b -- rcvng -- b become active respectfully . these signals indicate that the system bus interface 50 logic has accepted a message from one of the system buses and it must be loaded into the translator controller 10 . waita to idle , waitb to idle : if a -- rcvng -- b is not active in the waita state or b -- rcvng -- b is not active in the waitb state , the appropriate transition will take place . this indicates that the system bus interface logic 50 did not accept the message . msga , msgb to reset : when a -- rcvng -- b or b -- rcvng -- b become inactive in each case , this indicates that the message is no longer being sent , either because all words have been sent , or an error occurred during the transmission and it was not completely sent . in either case , this transition is made . the reset state determines whether the entire message was valid . reset to idle : the reset state is a one clock state and immediately transitions to idle . discard bit : the discard bit is used by the imp processor 6 to determine whether the pending message in the translator controller 10 can be discarded . it is read by doing the rca -- sta , or receive status , command . data is returned active high on m -- bus ( 39 ), shown in fig3 . the discard bit is set if the imp processor 6 is loading a request message to be sent to the tcu 70 anytime after the first request message is received from another system module . it is reset when an acknowledge or request message is first loaded into the translator controller 10 from the system bus , making this the new pending message which is now valid . it is also set when a request message is read by the imp processor 6 . the ram 20 uses 13 different addresses . the addresses are shown in table i . the outgoing messages and the incoming request and ac knowledge messages all occupy four addresses each . the outgoing command word uses one address . when a command word is written to or read from the ram 20 , cmd -- b is forced low by the translator controller 10 to the counter 40 . when an acknowledge message is being written or read , ack -- b is forced low by the controller 10 to the counter 40 . when a request message is being written or read , req -- b is driven low by the controller 10 to the counter 40 . table i______________________________________ram addresses message words______________________________________0000 outgoing word 10001 outgoing word 20010 outgoing word 30011 outgoing word 40100 outgoing cmd word1000 ack word 11001 ack word 21010 ack word 31011 ack word 41100 req word 11101 req word 21110 req word 31111 req word 4______________________________________ the controller 10 contains a test bit cntr -- tstout , which when active high will cause the counter 40 to increment between 0000b and 1111b when the imp reads or writes from the ram 20 . this test is used to verify that the imp can read and write all addresses used in the ram 20 . in fig3 the translator counter 40 has a series of input signal lines which are described below . the counter 40 is a circuitry combination of programmable array logic ( pal ). the counter pal 40 is implemented in a signetics plus405 device running at 16 mhz . its purpose is to provide the four least significant address bits to the ram when reading and writing message data . it also implements a test mode when cntr -- tstout is active whereby sixteen addresses can be written to and read from in sequential order . these addresses are shown in table i . when the words of a message are being written or read by the imp processor 6 , the sequencing of the counter is controlled by the incr -- b signal from the controller 10 . if a message is being received off one of the system buses , it is also controlled by this signal . the particular system bus the message is being received from , is determined by looking at a -- rcvng -- b . when a message is being sent , the pal looks for sx -- bgntx -- b with a validating x -- busbusy -- b and then immediately starts sequencing . it will stop sequencing when x -- penrdy -- b becomes active , the count reaches three , or the controller 10 sends rstcnt -- b . if the translator controller 10 is being loaded by the imp processor 6 and , in between write operations , a message comes from a system bus , the current loading count will be stored within the counter pal 40 while the message is received . this saving action is done when the save -- b signal is asserted from the controller 10 . it will be reasserted with the load -- b signal after the message has been received . the counter pal 40 has input signals in fig3 which are described below : increment counter ( incr -- b ): this signal from the controller 10 causes the counter pal 40 address to increment by one . a side receiving message ( a -- rcvng -- b ): this signal from the system bus interface 50 indicates that a message is currently being received off of system bus a . it is used to determine which system bus an incoming message should be sourced from . acknowledge message ( ack -- b ): this signal from the controller 10 causes the counter pal 40 to address the acknowledge message portion of the ram , addresses 1000b - 1011b . it becomes active while loading an acknowledge message from a system bus or while the imp processor 6 is reading an acknowledge message word . request message ( req -- b ): this signal from the controller 10 causes the counter pal 40 to address the request message portion of the ram , addresses 1100b - 1111b . it becomes active while loading a request message from a system bus or while the imp processor 6 is reading a request message word . command word ( cmd -- b ): this signal from the controller 10 causes the counter pal 40 to address the command word portion of the ram , address 0100b . it becomes active while the imp is writing the command portion of the message to the controller 10 or while the controller 10 is sending the command word to the system bus . save counter value ( save -- b ): if , while the imp processor 6 is reading or writing message words from the translator unit 15 , a message must be loaded from the system bus , this signal causes the counter pal 40 to save the present ram address . it is sourced from the controller 10 . load old counter value ( load -- b ): this signal causes the pal to reassert the ram address saved with the save -- b signal . it is sourced from the controller . reset counter ( rstcnt -- b ): when this signal becomes active the counter pal 40 will reset its address to 00b . this is done at the end of a send message operation . it is sourced from controller 10 . tbox message out ( tbxmsg -- out ): this signal indicates that the translator controller 10 is currently sending a message to the system bus . it is used to validate a system bus grant so the counter pal 40 knows it should start incrementing . it is sourced from the controller 10 . system bus grant ( sx -- bgntx -- b ): this signal , validated with x -- busbusy -- b indicates that the requested central processor machine ( cpm ) has been granted the indicated system bus for a bus operation . it is used by the counter pal 40 to start incrementing the ram address when sending out a message . system bus busy ( x -- busbusy -- b ): this signal indicates that there is an active bus operation occurring on its system bus . it is used to validate sx -- bgntx -- b . it is sourced from the system bus interface , 50 . processing element not ready ( x -- penrdy -- b ): if the counter pal is sending a message , this signal being active will cause the pal to stop incrementing until the signal is no longer active . it is sourced from the system bus interface , 50 . counter test bit ( cntr -- tstout ): this signal is used for testing . when the signal is active , translator read and write commands from the imp 6 will cause the counter pal to increment between 0000b and 1111b rather than 00b and 11b . it is sourced from the controller , 10 . signal lines of the counter pal 40 are shown in fig3 on bus 42 marked cnt ( 3 . 0 ) to provide the ram address bits ( cnt3 , cnt2 , cnt1 , cnt0 ). these bits are used to address the ram 20 . in summary , the preceding disclosure discloses the operation of the specialized translator buffer system which is used to allow the passing of messages between a specialized processor ( imp processor 6 ) and either a task control unit module 70 or an input / output unit module 60 . the translator system allows the imp processor to write messages one word at a time while sending messages to the other modules in four word bursts . the external modules such as the input / output unit and the task control unit can send messages to the imp processor in four word bursts while the imp processor can read these messages one word at a time to fulfill its internal operating requirements . it can also determine whether incoming messages should be discarded . additionally , the translator system not only makes the different message length word transfers compatible but also renders compatible the different clock rates in the communicating modules . further the system recognizes messages as being requests or acknowledge types and determines whether an incoming message should be discarded in favor of a call request by the central processor module ( cpm ). while the described embodiment presents an illustrative example of the invention , it should be understood that other embodiments may fall within the scope of the invention as defined in the following claims . these are request messages from the processor ( cpm ) to other system modules . these are only transmitted by the processor and not received by the processor . these are requests to the processor ( cpm ) from other system modules . these are only received by the processor ( cpm ) and not transmitted . these are messages which are responses from other system modules to previously sent requests . acknowledges can be transmitted by or received by the processor ( cpm ). a cycle on a system bus starting with a valid command word and ending after all data words have been transmitted . a typical message bus cycle is 5 clock cycles . a single time period from the first positive pulse rise to the next succeeding positive pulse rise . the imp processor operates at a 12 mhz rate while the iou and tcu operate at a 16 mhz rate . a system card containing the imp processor , translator unit and system bus interface . allows i / o unit and tcu unit to communicate with all cpm and memory units . a unit which allows the system to interface to outside peripherals by being able to adapt protocols of outside devices . when a request ( received by the imp processor ) is received from the tcu ( while an external call from the imp processor to the tcu is being accumulated in the translator unit ) this request will be discarded or eliminated . the location of 5 addresses in translator ram 20 in which an outgoing message from a cpm is assembled this consists of once command word and four data words . the 4 locations in ram 20 where an incoming request message is stored . the 4 locations in ram 20 where an incoming acknowledge message is stored . the logic unit which enables two different systems with two message protocols to communicate . a processor for controlling a prescribed set of routines within its environment . this is a signal to the imp processor to stop operations and comes from request messages being delivered to the imp processor . this is also called an immediate interrupt . this provides immediate interrupt to the imp processor as a result of the acknowledge message . the acknowledge interrupt is monitored by the imp processor microcode since , after the processor sends an external call , it remains &# 34 ; idle &# 34 ; while waiting for an acknowledgement . the time period starting when the translator controller 10 requests use of a system bus from the interface logic 50 until an acknowledge is received from the destination module . also : the time period to transfer 4 words ( 4 words × 48 bits / word = 192 bits ) from the tcu to the ram 20 . it may be noted that each word is = to 6 bytes or 48 bits .