Chapter 3
Programming Overview
3-3
Confirmation Handshaking
Whenever the scanner services a host command, it places a confirmation
(which includes completion status of the command) into its confirmation
queue. Confirmations are removed from the queue and copied into the
confirmation buffer in the dual port as the confirmation buffer is processed
by the host. This diagram illustrates the handshaking for a confirmation
sequence. Notice the host may not initiate a confirmation sequence until
the
int_status_from_host
variable in dual port has been cleared.
When the confirmation becomes nonempty AND the
host has acknowledged the last confirmation, the KT
x
copies a confirmation into the confirmation buffer.
On receipt of interrupt, copies the next confirmation into
the confirmation buffer (if a confirmation is available).
KT
x
Host
Writes 02 (CONFIRMATION_INTERRUPT) in
int_status_to_host.
Causes a host interrupt by writing to the host
interrupt register of the ASIC.
Reads the confirmation from the confirmation buffer.
Writes 0 into the first byte of the confirmation buffer.
Writes 02h into int_status_from_host to indicate the
interrupt type is a CONFIRMATION_PROCESSED.
Writes 0 into int_status_to_host.
Interrupts the KT
x
by writing any value to
KT
x
register :801h, host_to_ktx_int_reg.
Writes 0 to int_status_from_host.