The TNT4882™ integrated circuit (“equipment”) is warranted against defects in material
and workmanship under normal use and service for a period of one (1) year from the date
of shipment from the National Instruments factory. During this period of one year,
National Instruments shall at its sole option either repair, replace, or credit the Buyer for
defective equipment if: (i) Buyer returns the equipment to National Instruments, FOB the
National Instruments factory in Austin, Texas; (ii) Buyer notifies National Instruments
promptly upon discovery of any defect in writing, including a detailed description of the
defect; and (iii) upon examination of the returned equipment, National Instruments is
satisfied that the circuit is defective and that the cause of such defect is not alteration or
repair by someone other than National Instruments, neglect, accident, misuse, improper
installation, or use contrary to any instructions issued by National Instruments.
A Return Material Authorization (RMA) number must be obtained from the factory and
clearly marked on the outside of the package before any equipment will be accepted for
warranty work. Prior to issuance of an RMA by National Instruments, Buyer shall allow
National Instruments the opportunity to inspect the equipment on-site at Buyer’s facility.
This warranty expires one year from date of original shipment regardless of any warranty
performance during that warranty period. The warranty provided herein is Buyer’s sole
and exclusive remedy for nonconformity of the equipment or for breach of any warranty.
THE ABOVE IS IN LIEU OF ALL OTHER WARRANTIES EXPRESSED OR
IMPLIED. NATIONAL INSTRUMENTS SPECIFICALLY DISCLAIMS THE
IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A
PARTICULAR PURPOSE. BUYER’S RIGHT TO RECOVER DAMAGES CAUSED
BY FAULT OR NEGLIGENCE ON THE PART OF NATIONAL INSTRUMENTS
SHALL BE LIMITED TO THE AMOUNT THERETOFORE PAID BY THE BUYER.
NATIONAL INSTRUMENTS WILL NOT BE LIABLE FOR DAMAGES RESULTING
FROM LOSS OF DATA, PROFITS, USE OF PRODUCTS, OR INCIDENTAL OR
CONSEQUENTIAL DAMAGES, EVEN IF ADVISED OF THE POSSIBILITY
THEREOF. This limitation of the liability of National Instruments will apply regardless
of the form of action, whether in contract or tort, including negligence. National
Instruments recommends against the use of its products as critical components in any life
support devices or systems whose failure to perform can reasonably be expected to cause
significant injury to a human. Buyer assumes all risk for such application and agrees to
indemnify National Instruments for all damages which may be incurred due to use of the
National Instruments standard devices in medical or life support applications. Any action
against National Instruments must be brought within one year after the cause of action
accrues.
National Instruments believes that the information in this manual is accurate. The
document has been carefully reviewed for technical accuracy. In the event that technical
or typographical errors exist, National Instruments reserves the right to make changes to
subsequent editions of this document without prior notice to holders of this edition. The
reader should consult National Instruments if errors are suspected. In no event shall
National Instruments be liable for any damages arising out of or related to this document
or the information contained in it.
Copyright
nder the copyright laws, this publication may not be reproduced or transmitted in any
form, electronic or mechanical, including photocopying, recording, storing in an
information retrieval system, or translating, in whole or in part, without the prior written
consent of National Instruments Corporation.
Trademarks
NAT4882®, Turbo488®, and TNT4882™, are trademarks of National Instruments
Corporation.
Product and company names listed are trademarks or trade names of their respective
companies.
WARNING REGARDING MEDICAL AND CLINICAL
USE OF NATIONAL INSTRUMENTS PRODUCTS
National Instruments products are not designed with components and testing intended to
ensure a level of reliability suitable for use in treatment and diagnosis of humans.
Applications of National Instruments products involving medical or clinical treatment can
create a potential for accidental injury caused by product failure, or by errors on the part
of the user or application designer. Any use or application of National Instruments
products for or involving medical or clinical treatment must be performed by properly
trained and qualified medical personnel, and all traditional medical safeguards,
equipment, and procedures that are appropriate in the particular situation to prevent
serious injury or death should always continue to be used when National Instruments
products are being used. National Instruments products are NOT intended to be a
substitute for any form of established process, procedure, or equipment used to monitor
or safeguard human health and safety in medical or clinical treatment.
Contents
About This Manual ............................................................................................. xvii
Organization of This Manual......................................................................... xvii
Conventions Used in This Manual................................................................. xviii
Related Documentation ................................................................................. xviii
Customer Communication ............................................................................. xix
Chapter 1
Introduction and General Description
TNT4882 Features ......................................................................................... 1-1
This manual describes the programmable features of the TNT4882 and contains
information that is suitable for programmers and engineers who wish to write software
for the TNT4882.
This manual assumes that you are already familiar with general IEEE 488 concepts.
Organization of This Manual
This manual is organized as follows:
•Chapter 1, Introduction and General Description, explains the features and
capabilities of the TNT4882.
•Chapter 2, TNT4882 Architectures, discusses the internal hardware architectures of
the TNT4882.
•Chapter 3, TNT4882 Interface Registers, contains TNT4882 address maps and a
detailed description of the TNT4882 interface registers.
•Chapter 4, TNT4882 Programming Considerations, explains important TNT4882
programming considerations.
•Chapter 5, Hardware Considerations: Generic Pin Configuration, supplements the
information contained in the TNT4882 Single-Chip IEEE 488.2 Talker/Listener ASIC
data sheet.
•Chapter 6, Hardware Considerations: ISA Pin Configuration, supplements the
information contained in the TNT4882 Single-Chip IEEE 488.2 Talker/Listener ASIC
data sheet.
•Appendix A, Common Questions, list common questions and answers.
•Appendix B, Clocking the TNT4882 at Frequencies Less than 40 MHz, discusses
some factors to consider when clocking the TNT4882 at frequencies less than 40
MHz.
•Appendix C, Introduction to the GPIB, discusses the history of the GPIB, GPIB
hardware configurations, and serial polling.
•Appendix D, Introduction to HS488, describes HS488 and the sequence of events in
•ANSI/IEEE Standard 488.1-1987, IEEE Standard Digital Interface for
Programmable Instrumentation
•ANSI/IEEE Standard 488.2-1992, IEEE Standard Codes, Formats,
Protocols, and Common Commands
You may obtain the two ANSI/IEEE documents through the Institute of Electrical and
Electronics Engineers, 345 East 47th Street, New York, New York 10017.
You may obtain more information about Standard Commands for Programmable
Instruments from the SCPI Consortium, 8380 Hercules Drive, Suite P3, La Mesa,
CA 91942.
Customer Communication
National Instruments wants to receive your comments on our products and manuals. We
are interested in the applications you develop with our products, and we want to help if
you have problems with them. To make it easy for you to contact us, this manual
contains comment and configuration forms for you to complete. These forms are in
Appendix H, Customer Communication, at the end of this manual.
This chapter explains the features and capabilities of the TNT4882.
The National Instruments TNT4882 provides a single-chip Talker/Listener (TL) interface
to the General Purpose Interface Bus (GPIB). It combines the circuitry of the Turbo488
performance-enhancing ASIC, the NAT4882 IEEE 488.2 ASIC, and many new features
to provide a complete GPIB solution.
The TNT4882 performs the interface functions defined in the ANSI IEEE Standard
488.1-1987 and the additional requirements and recommendations of the ANSI IEEE
Standard 488.2-1987. For faster data transfers, the TNT4882 includes an on-chip, first-in
first-out (FIFO) buffer and circuitry to implement HS488, a new high-speed mode for
GPIB transfers. The TNT4882 contains 16 enhanced IEEE 488.1 compliant transceivers
and can be directly connected to the GPIB. The flexible CPU interface can be easily
interfaced to any 16- or 8-bit microprocessor.
Because the TNT4882 contains the NAT4882 register set, which in turn contains the
NEC µPD7210 and TI TMS9914A register sets, you can easily port existing code directly
to the TNT4882. The TNT4882 also contains Turbo488 circuitry and many new features
to reduce software overhead.
The TNT4882 can be characterized as a bus translator: it converts messages and
signals from the CPU into appropriate GPIB messages and signals. In GPIB
terminology, the TNT4882 implements GPIB board and device functions to
communicate with the central processor and memory. From the host CPU, the
TNT4882 is an interface to the outside world.
TNT4882 Features
IEEE 488 Capabilities
The National Instruments TNT4882 has the features necessary to provide a
high-performance IEEE 488 interface. Table 1-1 lists the capabilities of the TNT4882 in
terms of the IEEE 488 standard codes.
E2Three-State Drivers (Open-Collector Drivers During Parallel
Polls)
The TNT4882 has complete Source and Acceptor Handshake capability. It can operate
as a basic Talker or an extended Talker and can respond to a Serial Poll. If you place
the TNT4882 in talk-only mode, it is unaddressed to talk when it receives its listen
address. The TNT4882 GPIB interface can also operate as a basic Listener or an
extended Listener. If you place it in listen-only mode, it is unaddressed to listen when it
receives its talk address. The TNT4882 can request service from a Controller.
Device Clear and Trigger capability is included in the interface, but the interpretation is
software dependent.
Other GPIB features include the following:
•Messages are not sent when there are no Listeners
•HS488 capable
•16 IEEE 488.1 transceivers integrated on-chip
•Automatic detection of EOS and/or New Line (NL) messages
•Programmable data transfer rates
•Automatic processing of IEEE 488 commands and read undefined commands
•Ability to use six addressing modes
–Automatic single or dual primary addressing detection
–Automatic single primary with single secondary address detection
–Single or dual primary with multiple secondary addressing
–Multiple primary addressing
This chapter discusses the internal hardware architectures of the TNT4882.
The TNT4882 has three different internal hardware architectures: one-chip mode,
Turbo+7210 mode, and Turbo+9914 mode. The architecture determines which set of
registers is available to the host interface, the behavior of the bits in the registers, and
how the FIFOs interface to the GPIB.
Turbo+7210 Mode
In Turbo+7210 mode, the TNT4882 behaves like a Turbo488 ASIC that is connected to a
NAT4882BPL ASIC. The NAT4882BPL behaves like a µPD7210 that hasmany
enhancements.
To write data to the GPIB, the host interface writes the data to the FIFOs of the
TNT4882. A transfer state machine transfers the data from the FIFOs to the NAT4882
circuitry, then the NAT4882 circuitry sends the data across the GPIB.
To read data from the GPIB, the NAT4882 circuitry reads data bytes from the GPIB. The
transfer state machine transfers the data from the NAT4882 circuitry to the FIFOs, then
the host interface reads the data from the FIFOs.
ISA
Interface
Logic
Read/
Write
Control
Turbo488 Circuitry
FIFOs
Byte
Counter
Status Registers
NAT4882
Interface
Circuitry
Transfer
Machine
Configuration
and
Interrupt Control
State
NAT4882 Circuitry
Read/
Write
Control
Configuration
and
Status Registers
Interrupt Control
Timer
GPIB
Data
Registers
IEEE 488
Interface
Functions
IEEE 488 Monitor
IEEE 488
Transceivers
Local GPIB Signals
GPIB
Figure 2-1. Turbo+7210 or Turbo+9914 Mode Block Diagram
In Turbo+9914 mode, the TNT4882 behaves like a Turbo488 ASIC that is connected to a
NAT4882BPL ASIC. The NAT4882BPL behaves like a TMS9914A that has many
enhancements.
Like Turbo+7210 mode, a transfer state machine in Turbo+9914 mode must transfer data
between the FIFOs of the TNT4882 and the NAT4882 circuitry.
One-Chip Mode
In one-chip mode, the FIFOs of the TNT4882 are directly connected to the GPIB and the
TNT4882 has a register set that is similar to Turbo+7210 mode. However, one-chip
mode does not need a transfer state machine to transfer data either to or from the FIFOs.
FIFOs
ISA
Interface
Logic
Read/
Write
Control
Byte
Counter
Configuration
and
Status Registers
Timer
Interrupt Control
IEEE 488 Monitor
IEEE 488
Interface
Functions
HS488
Interface
Functions
IEEE 488
Transceivers
Figure 2-2. One-Chip Mode Block Diagram
Choosing a TNT4882 Architecture Mode
One-Chip Mode
One-chip mode is the simplest and fastest TNT4882 architecture. National Instruments
recommends that you use one-chip mode to develop new software. The National
Instruments ESP-488TL package uses one-chip mode.
You can use the TNT4882 in one-chip mode without using the HS488 high-speed GPIB
protocol, but HS488 is available only when the TNT4882 is in one-chip mode.
Therefore, you cannot use HS488 in Turbo+9914 and Turbo+7210 mode.
Turbo+9914 Mode
If you are porting code that was written for the TMS9914A to the TNT4882, you may
want to use Turbo+9914 mode. The 7210-style registers used in one-chip mode are
similar to the 9914-style registers, so it is not difficult to port code to use one-chip mode.
However, you may feel more comfortable if you use the 9914-style registers.
Turbo+7210 Mode
In Turbo+7210 mode, the TNT4882 is compatible with the Turbo488+NAT4882BPL
chip set: only applications written for this chip set should use Turbo+7210 mode.
Turbo+7210 mode is similar to one-chip mode, so National Instruments recommends that
you use one-chip mode to develop new software.
Changing the TNT4882 Architecture Modes
Figure 2-3 shows how you change the TNT4882 architecture modes.
Hardware Reset while
Mode Pin Grounded
sw7210 auxiliary
command
Turbo + 9914
sw9914 auxiliary
ONEC=1
Illegal.
Don't do this
Note: ONEC is bit 0 of the HSSEL Register
Figure 2-3. Changing the Three TNT4882 Architecture Modes
During a hardware reset, the TNT4882 examines the level of the MODE pin. Generally,
the MODE pin is either connected to logic ground or unconnected. If the MODE pin is
unconnected, an internal pull-up resistor pulls the MODE pin to a logic high level. If the
MODE pin is at a logic low level during a hardware reset, the TNT4882 enters
Turbo+9914 mode. If the MODE pin is at a logic high level during a hardware reset, the
TNT4882 enters Turbo+7210 mode.
Changing between Turbo+9914 Mode and Turbo+7210 Mode
After the hardware reset, the host interface can change the TNT4882 from Turbo+9914
mode to Turbo+7210 mode by writing the sw7210 auxiliary command to the Accessory
Read Register (ACCR). The host interface can change the TNT4882 from Turbo+7210
mode to Turbo+9914 mode by writing the sw9914 auxiliary command to the Auxiliary
Mode Register (AUXMR).
Changing between One-Chip Mode and Turbo+7210 Mode
The host interface can change the TNT4882 from Turbo+7210 mode to one-chip mode by
writing a 1 to the One Chip (ONEC) bit of the Handshake Select Register (HSSEL[0]).
The host interface can change the TNT4882 from one-chip mode to Turbo+7210 mode by
writing a 0 to ONEC.
In addition to the registers shown in Table 3-1, the TNT4882 contains hidden registers.
All hidden registers are write-only registers. Two or more hidden registers can appear at
the same offset. When you write an 8-bit pattern to these offsets, some of the bits
determine the hidden register that will be written; the other bits represent the value
written to the register.
Address Register Map
The TNT4882 has two address registers: ADR1 and ADR0. Table 3-1 shows the offsets
for the readable portion of ADR1 and ADR0. The writable portion of ADR0 and ADR1
appears at the offset of the Address Register (ADR) shown in Table 3-1. Table 3-2
shows the bit map for the two writable address registers.
ENA
T17W010T17_4T17_3T17_2T17_1T17_0
T12W100T12_4T12_3T12_2T12_1T12_0
T13W110T13_ 4T13_3T13_2T13_ 1T13_0
PT1_4PT1_3PT1_2PT1_1PT1_0
The Page-In State (One-Chip Mode/Turbo+7210 Mode)
The TNT4882 implements a Page-In state to be compatible with designs that assume the
TNT4882 ASIC is used in 7210 mode. When the Page-In state is true, several registers
are mapped to different locations and other registers are not accessible at any offset.
When to Use the Page-In State
New software should not use the Page-In state. Only applications that require complete
software compatibility with the Turbo488 and NAT4882 ASICs should use the Page-In
state.
The TNT4882 enters the Page-In state when the host interface writes the Page-In
auxiliary command to the AUXMR. The TNT4882 registers appear at their Page-In state
offset for the first register access after the Page-In command. The TNT4882 leaves the
Page-In state at the end of the first register access after the Page-In command. The
TNT4882 also enters the Page-In state when the PAGE pin of the TNT4882 is asserted.
The TNT4882 exits the Page-In state when the PAGE pin is unasserted. See Table 3-5.
Table 3-5. One-Chip Mode and Turbo+7210 Mode Page-In State Register Offsets
Table 3-6 is the register bit map for the TNT4882 in Turbo+9914 mode. The offsets in
Table 3-6 assume that the SWAP bit is set. See The SWAP Bit section, which is located
later in this chapter.
Table 3-6. TNT4882 Register Bit Map: Turbo+9914 Mode
In addition to the registers shown above, the TNT4882 contains hidden registers. All
hidden registers are write-only registers. Two or more hidden registers can appear at
the same offset. When you write an 8-bit pattern to these offsets, some of the bits
determine the hidden register that will be written; the other bits represent the value
written to the register.
Accessory Read Register Map
Several hidden registers appear at the ACCR offset. Table 3-7 shows these hidden
registers.
The offsets of some Turbo+9914 mode registers depend on the value of the SWAP bit.
SWAP does not affect the offsets of Turbo+7210 mode or one-chip mode registers.
In Turbo+9914 mode, the TNT4882 transfer state machine moves data between the
FIFOs and the TNT4882 circuitry. The transfer state machine assumes that the Data
In Register (DIR) and the Command/Data Out Register (CDOR) are located at offset 0.
In Turbo+9914 mode, however, the DIR and CDOR are located at offset 0 only if
SWAP = 1. If the FIFOs will be used in Turbo+9914 mode, the SWAP bit should be 1.
Setting the SWAP Bit
During a hardware reset, the TNT4882 samples the logic value on the SWAPN pin. If
SWAPN is low during a hardware reset, the SWAP bit is set. If SWAPN is high during a
hardware reset, the SWAP bit is cleared. You can also set or clear the SWAP bit by
writing to the Key Control Register (KCR). KCR is accessible only when the TNT4882
is in Turbo+7210 mode or one-chip mode.
Note:If you use the TNT4882 in the ISA pin configuration, the SWAPN pad is not
accessible external to the chip but is internally shorted to the MODE pin.
Thus, in ISA pin configuration, if the MODE pin is asserted during a
hardware reset, the TNT4882 powers up in Turbo+9914 mode with the SWAP
bit set.
Recommendation
For applications that use Turbo+9914 mode, National Instruments recommends that the
SWAP bit is set in Turbo+9914 mode. The easiest way to implement a Turbo+9914
mode application is to connect the MODE pin and SWAPN pin to ground.
The Page-In Condition (Turbo+9914 Mode)
Four writable registers can appear at the same offset as the Address Status Register
(offset 4 if SWAP = 0; offset 8 if SWAP = 1). After a hardware or software reset, no
writable register appears at the Address Status Register (ADSR) offset; the TNT4882
ignores writes to that offset.
One Page-In auxiliary command exists for each of the four registers. The host interface
can make one of the four registers accessible by issuing the appropriate Page-In
command to the Auxiliary Command Register (AUXCR). The paged-in register remains
accessible at the ADSR offset until the host interface either pages-in another register or
issues the Clear Page-In Register auxiliary command.
When any one of the four writable registers is accessible at the ADSR offset, Interrupt
Status Register 2 (ISR2) is accessible at the same offset as the ADR, and the Serial Poll
Status Register (SPSR) is accessible at the same offset as the Serial Poll Mode Register
(SPMR).
Register Bit Descriptions
8-Bit Versus 16-Bit Accesses
All TNT4882 registers are 8-bit registers. However, by making a 16-bit access to the
same offset as FIFO B, the host interface can access FIFO A and FIFO B simultaneously
to form a 16-bit register.
Some registers are accessible only in Turbo+9914 mode and some registers are accessible
only in Turbo+7210 mode or one-chip mode. Some registers are accessible in several
modes, but their bits have completely different meanings. Make sure you read the bit
descriptions that are appropriate for the mode your application uses.
All registers are listed in alphabetical order. The registers are alphabetized according to
their mnemonics.
Accessory Register A (ACCRA) controls the EOS and END messages. A ch_rst
auxiliary command or a hardware reset clears ACCRA.
BitMnemonicDescription
4wBINBinary bit
The BIN bit selects the length of the EOS message. If
BIN = 1, the EOSR is treated as an 8-bit byte. When
BIN = 0, the EOSR is treated as a 7-bit register (for
ASCII characters), and only a 7-bit comparison is done
with the data on the GPIB.
3wXEOSTransmit END With EOS bit
The XEOS bit permits or prohibits automatic transmission
of the GPIB END message at the same time as the EOS
message when the TNT4882 is in Talker Active State
(TACS). If XEOS = 1 and the byte in the CDOR matches
the contents of the EOSR, the EOI line is sent true along
with the data.
2wREOSEND On EOS Received bit
The REOS bit permits or prohibits setting the END bit
(ISR0[3]r) when the TNT4882 receives the EOS message
as a Listener. If REOS = 1 and the byte in the DIR
matches the byte in the EOSR, the END bit is set and the
acceptor function treats the EOS character just as if it
were received with EOI asserted.
ISS determines the value of the TNT4882 ist message.
When ISS = 1, ist takes on the value of the TNT4882
SRQS. (The TNT4882 is asserting the GPIB SRQ
message when it is in SRQS.) If ISS = 0, ist takes on the
value of the TNT4882 Parallel Poll Flag. You set and
clear the Parallel Poll Flag by using the Set Parallel Poll
Flag and Clear Parallel Poll Flag auxiliary commands.
1wSPEOISend Serial Poll EOI bit
SPEOI permits or prohibits the transmission of the END
message in SPAS. If SPEOI = 1, EOI is sent true when
the TNT4882 is in SPAS and is sourcing an STB.
Otherwise, EOI is sent false in SPAS.
Accessory Register E (ACCRE) determines how the TNT4882 uses a Data Accepted
(DAC) holdoff. A ch_rst auxiliary command or a hardware reset clears ACCRE.
Each bit of ACCRE enables DAC holdoffs on a GPIB command or group of commands.
When a GPIB Controller sends the specified command to the TNT4882, the CPT bit sets
and the TNT4882 performs a DAC holdoff. See the DAC Holdoffs section in Chapter 4,
Accessory Register F (ACCRF) determines how the TNT4882 uses a DAC holdoff.
A ch_rst auxiliary command or a hardware reset clears ACCRF.
Each bit of ACCRF enables DAC holdoffs on a GPIB command or group of commands.
When a GPIB Controller sends the specified command to the TNT4882, the CPT bit sets
and the TNT4882 performs a DAC holdoff. See the DAC Holdoffs section in Chapter 4,
TNT4882 Programming Considerations.
BitMnemonicDescription
3wDHATADAC Holdoff On All Talker Addresses bit
2wDHALADAC Holdoff On All Listener Addresses bit
1wDHUNTLDAC Holdoff On The UNT Or UNL Command bit
0wDHALLDAC Holdoff On All UCG, ACG, And SCG Commands
If USTD = 1, the T1 delay can be as short as 350 ns. See
the T1 Delay Generation section in Chapter 4, TNT4882Programming Considerations.
2wPP1Parallel Poll bit 1
The PP1 bit permits or prohibits the TNT4882's ability
to automatically respond to remote parallel poll
configuration. If PP1 = 1, the interface can be configured
remotely for parallel polls.
The Acceptor Handshake does not perform a DAC
holdoff or set the UNC bit when it receives a Parallel Poll
Command (PPC or PPU).
If PP1 = 0, parallel polls must be configured through the
PPR, and Parallel Poll commands must be monitored by
UNC.
0wDMAEDMA Enable bit
If you use the FIFOs for data transfers, set DMAE. For
GPIB reads, also set DMAI in IMR0. For GPIB writes,
also set DMAO in IMR0.
Accessory Register J (ACCRJ) sets the timeout value of the Timer interrupt. The timeout
value can be set between 15 µs to 125 s when the TNT4882 clock is 40 MHz. The Timer
starts when TM[3–0] are written with a nonzero value. The TO bit in ISR2 sets when
the timeout value expires. The Timer is cleared when a 0 is written to TM[3–0]. For
more information on the Timer interrupt capability, see the Interrupt Status Register 2(ISR2)—Turbo+9914 Mode section in this chapter. The ACCRJ is reset by a hardware
reset or a ch_rst auxiliary command.
Note:This timer is independent of the DRQ assertion timer described by the TIMER.
BitMnemonicDescription
3–0wTM[3–0]Timer bits 3 through 0
Table 3-8 lists the approximate timeout values that
ACCRJ supports at 40 MHz. If the TNT4882 uses
another clock frequency, the timeout value can be
computed with the following formula:
Depending on the value of the BTO bit, IMR2[4]w, the Timer works with two different
types of timeouts. If BTO = 0, the Timer starts when the host interface writes a
nonzero value to the Timer Register. When the Timer reaches the timeout value, it sets
the TO bit.
If BTO = 1, the Timer operates in byte timeout mode. In this mode, the Timer starts
when the host interface writes a nonzero value to the Timer Register. The Timer counts
until it reaches the timeout value. However, reads of the DIR or writes of the CDOR
clear the Timer and force it to begin counting again. If TO is set in byte timeout mode, it
remains set until the Timer Register is written. Further reads of DIR or writes of CDOR
have no effect on TO until the Timer Register is written.
When DMAEN = 0, the TNT4882 tristates the DRQ pin
and ignores the DACKN pin. When DMAEN = 1, the
TNT4882 responds to DMA accesses and drives DRQ
high or low. The host interface should set DMAEN at the
beginning of a DMA transfer, before the host interface
enables the DMA controller. The host interface should
clear DMAEN at the completion of a DMA transfer.
The host interface can put the TNT4882 into one of six GPIB addressing modes by
writing to the Address Mode Register (ADMR). The value of the ADMR is undefined
after a hardware reset. Before the host interface can clear pon, it must write a valid
pattern to the ADMR. All values not defined in the following table are reserved.
Table 3-9. Valid ADMR Patterns
Hex Value
of ADMR
30No Addressing
The Controller cannot address the TNT4882 to become a Talker or
Listener in no-addressing mode.
31Normal Dual Addressing
The TNT4882 can implement one or two logical devices by using
normal dual addressing.
See the GPIB Addressing section in Chapter 4, TNT4882 ProgrammingConsiderations.
32Extended Single Addressing
Extended single addressing mode implements the Extended Listener and
Extended Talker functions, as defined in the IEEE 488 standard, without
intervention from the host interface.
See the GPIB Addressing section in Chapter 4, TNT4882 ProgrammingConsiderations.
Extended dual addressing mode implements the Extended Listener and
Extended Talker functions, as defined in the IEEE 488 standard. This
mode requires intervention from the host interface.
See the GPIB Addressing section in Chapter 4, TNT4882 ProgrammingConsiderations.
70Listen Only (lon)
The TNT4882 becomes a GPIB Listener and enters the Listener Active
State (LACS). Do not use lon if a GPIB Controller is present in the
GPIB system.
The host interface should write a hex 30 (No Addressing) to the ADMR
immediately after it writes lon to the ADMR. To force the TNT4882 to
exit LACS, issue the unlisten (lul) auxiliary command.
B0Talk Only (ton)
The TNT4882 becomes a GPIB Talker. Do not use ton if a GPIB
Controller is present in the GPIB system.
The host interface should write a hex 30 (No Addressing) to the ADMR
immediately after it writes ton to the ADMR. To force the TNT4882 to
exit TACS, issue the local untalk (lut) auxiliary command.
Writing to the Address Register (ADR) loads the internal registers ADR0 and ADR1.
You must load both ADR0 and ADR1 for all addressing modes.
BitMnemonicDescription
7wARSAddress Register Select bit
If ARS = 1, writing to the ADR loads the seven low-order
bits of ADR into internal register ADR1. If ARS = 0,
writing to the ADR loads the seven low-order bits of ADR
into ADR0.
6wDTDisable Talker bit
DT = 1 disables recognition of the GPIB talk address
formed from AD5 through AD1(ADR[4–0]w). ADR0
and ADR1 have independent DT bits.
5wDLDisable Listener bit
DL = 1 disables recognition of the GPIB listen address
formed from AD5 through AD1(ADR[4–0]w). ADR0
and ADR1 have independent DL bits.
4–0wAD[5–1]TNT4882 GPIB Address bits 5 through 1
These bits specify the GPIB address of the TNT4882.
The corresponding GPIB talk address is formed by adding
hex 40 to AD[5–1], while the corresponding GPIB listen
address is formed by adding hex 20 to AD[5–1]. The
value written to AD[5–1] should not be 11111 (binary),
because the corresponding talk and listen addresses would
conflict with the GPIB Untalk (UNT) and GPIB Unlisten
(UNL) commands.
ADR is used to load the primary GPIB address of the interface.
BitMnemonicDescription
7wedpaEnable Dual Primary Addressing Mode bit
Setting edpa enables the dual primary addressing mode of
the TNT4882. If edpa = 1, the TNT4882 ignores the least
significant bit (A1) of its GPIB address. The TNT4882
then has two consecutive primary addresses. The ulpa bit
indicates which address is active.
6wdalDisable Listener bit
Setting dal returns the TNT4882 Listener function to
LIDS and forces the TNT4882 Listener function to remain
in LIDS even if the chip receives its GPIB listen address
or a lon auxiliary command.
5wdatDisable Talker bit
Setting dat returns the TNT4882 Talker function to TIDS
and forces the Talker function to remain in TIDS even if
the chip receives its GPIB talk address or a ton auxiliary
command.
4–0wA[5–1]TNT4882 GPIB Address bits 5 through 1
AD[5–1] specify the primary GPIB address of the
TNT4882. The corresponding GPIB talk address is
formed by adding hex 40 to AD[5–1], while the
corresponding GPIB listen address is formed by adding
hex 20. AD[5–1] should not be 11111 (binary), because
the corresponding talk and listen addresses then conflict
with the GPIB UNT and GPIB UNL commands.
Address Register 0 (ADR0) reflects the internal GPIB address status of the TNT4882.
In extended single addressing mode, ADR0 indicates the address and enable bits for the
primary GPIB address of the TNT4882. In the dual primary addressing modes, ADR0
indicates the TNT4882 major primary GPIB address. See the GPIB Addressing section in
Chapter 4, TNT4882 Programming Considerations.
BitMnemonicDescription
7rXReads back a 1 or 0.
6rDT0Disable Talker 0 bit
If DT0 = 1, the primary (or major) Talker is not enabled,
and this register is not compared with GPIB Talker
addresses.
If DT0 = 0, the TNT4882 responds to a GPIB talk address
matching bits AD[5–0 through 1–0].
5rDL0Disable Listener 0 bit
If DL0 = 1, the primary (or major) Listener is not enabled,
and this register is not compared with GPIB Listener
addresses.
If DL0 = 0, the TNT4882 responds to a GPIB listen
address matching bits AD[5–0 through 1–0].
4–0rAD[5–0 – 1–0] TNT4882 GPIB Address bits 5–0 through 1–0
These are the lower 5 bits of the TNT4882 GPIB primary
(or major) address. The primary talk address is formed by
adding hex 40 to AD[5–0 through 1–0], while the listen
address is formed by adding hex 20.
Address Register 1 (ADR1) indicates the status of the GPIB address and enable bits for
the secondary address of the TNT4882 if extended single addressing is used. ADR1
indicates the minor primary address of the TNT4882 if dual primary addressing is used.
See the GPIB Addressing section in Chapter 4, TNT4882 Programming Considerations.
BitMnemonicDescription
7rEOIEnd-or-Identify bit
EOI indicates the value of the GPIB EOI line that is
latched when a data byte is received by the TNT4882
GPIB Acceptor Handshake (AH) function. If EOI = 1, the
EOI line was asserted with the received byte. EOI is
cleared by issuing the chip reset auxiliary command. EOI
is updated after each byte is received.
6rDT1Disable Talker 1 bit
If DT1 = 1, the secondary (or minor) Talker function is
not enabled—that is, the GPIB secondary address (or
minor primary talk address) is not compared with this
register.
5rDL1Disable Listener 1 bit
If DL1 = 1, the secondary (or minor) Listener function is
not enabled—that is, the GPIB secondary address (or
minor primary listen address) is not compared with this
register.
4–0rAD[5–1 – 1–1]TNT4882 GPIB Address bits 5–1 through 1–1
These bits indicate the TNT4882 secondary or minor
address. Form the secondary address byadding hex 60 to
bits AD[5–1 through 1–1]. Form the minor talk address
by adding hex 40 to AD[5–1 through 1–1]. Form the
listen address by adding a hex 20.
LPAS indicates that the TNT4882 has received its
primary listen address. See the Address Mode Register(ADMR) section in this chapter.
LPAS is cleared by
(PCG & ~MLA & ACDS) + pon
3rTPASTalker Primary Addressed State bit
TPAS indicates that the TNT4882 has received its
primary GPIB talk address. See the Address ModeRegister(ADMR) section in this chapter.
TPAS is cleared by
(PCG & ~MTA & ACDS) + pon
2rLAListener Active bit
LA = 1 when the TNT4882 has been addressed or
programmed as a GPIB Listener—that is, the TNT4882 is
in the Listener Active State (LACS) or the Listener
Addressed State (LADS). The TNT4882 is addressed to
listen when it receives its listen address from the CIC.
The TNT4882 can also be programmed to listen by using
the Listen-Only (lon) bit in the ADMR.
If the TNT4882 is addressed to listen, it is automatically
unaddressed to talk.
LA is also cleared by
(UNL & ACDS) + IFC + pon + lul
1rTATalker Active bit
TA = 1 when the TNT4882 has been addressed or
programmed as the GPIB Talker—that is, the TNT4882 is
in the Talker Active State (TACS), the Talker Addressed
State (TADS), or the Serial Poll Active State (SPAS).
The TNT4882 can be addressed to talk when it receives
its talk address from the CIC. It can also be programmed
to talk by using the Talk-Only (ton) bit in the ADMR.
If the TNT4882 is addressed to talk, it is automatically
unaddressed to listen.
TA is also cleared by
(OTA & ACDS) + IFC + pon + lut
0rMJMNMajor-Minor bit
MJMN indicates whether the information in the other
ADSR bits applies to the TNT4882 major or minor Talker
and Listener functions. MJMN = 1 when the TNT4882
receives its GPIB minor talk address or minor listen
address. MJMN clears when the TNT4882 receives its
major talk or major listen address. The pon message also
clears MJMN.
Note: Only one Talker or Listener can be active at a
time. The MJMN bit indicates which, if either,
of the TNT4882 Talker and Listener functions is
addressed or active.
MJMN is always 0 unless the normal or extended dual
primary addressing mode is enabled. (See the Address
The Address Status Register (ADSR) contains information that you can use to monitor
the TNT4882 GPIB address status.
BitMnemonicDescription
7rREMRemote bit
6rLLOLocal Lockout bit
LLO and REM indicate the status of the TNT4882 GPIB
Remote/Local (RL1) function. REM = 1 when the
TNT4882 GPIB RL1 function is in either Remote State
(REMS) or Remote With Lockout State (RWLS).
LLO = 1 when the TNT4882 is in Local With Lockout
State (LWLS) or RWLS.
REMLLORL1 State
00LOCS
01LWLS
10REMS
11RWLS
5rATNAttention bit
ATN indicates the current level of the GPIB ATN signal.
If ATN = 1, the GPIB ATN signal is asserted.
4rLPASListener Primary Addressed State bit
LPAS indicates that the TNT4882 has accepted its
primary listen address.
TPAS indicates that the TNT4882 has accepted its
primary talk address.
TPAS is cleared by
(PCG & ~MTA & ACDS) + pon
2rLAListener Active bit
LA = 1 when the TNT4882 has been addressed or
programmed as a GPIB Listener—that is, the TNT4882
is in LACS or LADS. The TNT4882 is addressed to
listen by receiving its listen address from the CIC. You
can also program the TNT4882 to listen by using the
Listen-Only auxiliary command.
If the TNT4882 is addressed to listen, it is automatically
unaddressed to talk.
LA is cleared by
pon + IFC + (UNL & ACDS)
1rTATalker Active bit
TA = 1 when the TNT4882 has been addressed or
programmed as the GPIB Talker—that is, the TNT4882
is in TACS, TADS, or SPAS. The TNT4882 can be
addressed to talk by receiving its talk address from the
CIC. You can also program the TNT4882 to talk by
using the Talk-Only auxiliary command.
If the TNT4882 is addressed to talk, it is automatically
unaddressed to listen.
Use the AUXCR to issue auxiliary commands. Two basic types of commands are
implemented in the AUXCR: pulsed and static. Use static commands to enable (set) or
disable (clear) various features of the TNT4882. The pulsed commands stay active for
one clock pulse after the AUXCR has been written.
Note:Writes to the AUXCR must be separated by at least four clock cycles.
Table 3-10 summarizes the auxiliary commands and Table 3-11 describes the auxiliary
commands.
Clear Software Reset (~swrst)
Set Software Reset (swrst)
The local swrst message places all GPIB interface functions into their idle
states. swrst is equivalent to the GPIB local pon message.
swrst is set by a hardware reset, the ch_rst auxiliary command, or the
swrst auxiliary command. You should configure the TNT4882 while
swrst is set. Configuration includes writing the address of the device into
the Address Register, writing mask values into the Interrupt Mask
Registers, and selecting the desired features in the Auxiliary Command,
Accessory, and Address Registers.
When swrst is cleared, the device becomes logically existent on the GPIB.
These commands clear a DAC holdoff condition. When APT = 1,
nonvalid indicates that the last GPIB command byte received from the
Controller was an invalid secondary address. Valid indicates a valid
secondary address.
A DAC holdoff caused by any other GPIB command byte should be
released with the invalid command.
02Release RFD Holdoff (rhdf)
This command releases any RFD holdoffs that hdfa or hlde have caused.
Clear Holdoff On All Data (~hdfa)
Set Holdoff On All Data (hdfa)
If hdfa is true, the TNT4882 performs an RFD holdoff after it receives a
data byte. To complete the handshake, you must issue the rhdf command
after the TNT4882 receives each byte.
The Send EOI command causes the GPIB EOI line to go true with the
next data byte transmitted.
09
89
0A
8A
13
93
Clear Listen Only (~lon)
Set Listen Only (lon)
lon forces the Listener function into the Listener Active State. ~lon forces
the Listener function to leave the Listener Active State.
Clear Talk Only (~ton)
Set Talk Only (ton)
ton forces the Talker function into the Talker Active State. ~ton forces
the Talker function to leave the Talker Active State.
Clear Disable IMR2, IMR1, And IMR0 Interrupts (~dai)
Set Disable IMR2, IMR1, And IMR0 Interrupts (dai)
Issuing dai disables the interrupt pin. The Interrupt Status Registers and
any holdoffs selected in the Interrupt Mask Register are not affected by
the dai command.
After you issue the pts command, UNC (ISR1[5]) sets when the TNT4882
receives a secondary command from the Controller.
If PP1 = 0, you can use the pts command to implement remote parallel
poll configuration.
Note:It is simpler to set the PP1 bit to implement remote parallel poll
configuration. When PP1 = 1, the TNT4882 interprets remote
parallel poll configuration commands without software
intervention.
If the TNT4882 receives the PPC command, UNC sets. When the control
program detects UNC, the control program issues pts. UNC sets again
when the Controller sends the PPE command. The control program reads
the CPTR to obtain the PPE command, then the control program writes
the appropriate value to the PPR.
15
95
Clear Short T1 Delay (~stdl)
Set Short T1 Delay (stdl)
Clear Very Short T1 Delay (~vstdl)
Set Very Short T1 Delay (vstdl)
Issuing vstdl reduces the T1 delay time to 500 ns.
Clear Request Service bit 2 (~rsv2)
Set Request Service bit 2 (rsv2)
The rsv2 bit performs the same function as the rsv bit in the SPMR, but it
provides a means of requesting service that is independent of the SPMR.
With rsv2, you can make minor updates to the SPMR without affecting
the state of service request. rsv2 is cleared when the serial poll status byte
is sent to the Controller during a serial poll (SPAS & APRS & STRS).
Issuing sw7210 places the TNT4882 into 7210 compatibility mode.
1A
9A
1CChip Reset (ch_rst)
Request rsv False (reqf)
Request rsv True (reqt)
The reqt and reqf commands are inputs to the IEEE 488.2 Service Request
Synchronization Circuit. Use these commands to set and clear the local
rsv message.
If STBO IE = 0, reqt and reqf are not issued immediately; they are issued
on the write of the SPMR that follows the issuing of the reqt or reqf
auxiliary command.
If STBO IE = 1, reqt and reqf are issued immediately. See the IEEE
488.2 Service Requesting section in Chapter 4, TNT4882 Programming
Considerations.
The ch_rst auxiliary command resets the TNT4882 to the following
conditions:
Description
•The local swrst message is set and the interface functions are
placed in their idle states.
•The SPMR bits are cleared.
•The EOS and NL bits are cleared.
•The ACCRA, ACCRB, ACCRE, ACCRF, ACCRI, and ACCRJ
registers are cleared.
Clear Parallel Poll Flag (~ist)
Set Parallel Poll Flag (ist)
The ~ist and ist commands set and clear the Parallel Poll Flag. The value
of the Parallel Poll Flag is used as the local ist message when bit four of
Accessory Register B (ISS) = 0. The value of SRQS is used as the local
ist message when ISS = 1. A ch_rst auxiliary command or a hardware
reset clears the local ist message.
Issuing piimr2 maps IMR2 to the ADSR offset. After this command is
issued, you can access IMR2 at the ADSR offset until one of the
following events occurs:
•A hardware reset occurs.
•The ch_rst auxiliary command is issued.
•Another register is paged into the ADSR offset.
•The Clear Page-In auxiliary command is issued.
Description
1FPage-In Bus Control Register (pibcr)
Issuing pibcr maps the BCR to the ADSR offset. After this command is
issued, you can access BCR at the ADSR offset until one of the following
events occurs:
Issuing clrpi removes the previously paged-in Accessory Register from
the ADSR offset. After this command is issued, writes to offset 2 have no
effect until a Page-In auxiliary command is issued.
9EPage-In End-of-String Register (pieosr)
Issuing pieosr maps the EOSR to the ADSR offset. After this command is
issued, you can access EOSR at the ADSR offset until one of the
following events occurs:
•A hardware reset occurs.
•The ch_rst auxiliary command is issued.
•Another register is paged into the ADSR offset.
•The Clear Page-In auxiliary command is issued.
9FPage-In Accessory Register (piaccr)
Issuing piaccr maps the Accessory Register to the ADSR offset. After
this command is issued, you can access ACCR at the ADSR offset until
one of the following events occurs:
The Immediate Execute Power-On auxiliary command sets the local
pon message true, then clears it. If the local pon message is already
asserted, the pon auxiliary command simply clears the local pon
message. The following figure illustrates the behavior of the local
pon message:
local pon
message
true
HW reset +
chip_reset aux. command
When the local pon message is true, the TNT4882 holds all GPIB
interface functions in their idle states.
Clear Parallel Poll Flag (~ist)
Set Parallel Poll Flag (ist)
These commands set and clear the Parallel Poll Flag. The value of
the Parallel Poll Flag is used as the local ist message when
AUXRB[4]w = 0. The value of SRQS is used as ist when ISS = 1.
A chip reset auxiliary command or hardware reset clears ist.
The chip reset auxiliary command resets the TNT4882 to the
following conditions:
•The local pon message is set and the interface functions are
•The SPMR bits are cleared.
•The TRM[1–0] bits are cleared.
•The EOI bit is cleared.
•The AUXRA, AUXRB, AUXRE, AUXRF, AUXRG, AUXRI,
•The Parallel Poll Flag is cleared.
Description
placed in their idle states.
and AUXRJ registers are cleared.
–The BCR is cleared.
–The MISC register is cleared.
–The HIER is cleared.
–The PT1 bit is cleared.
The interface functions remain in their idle states until they are
released by an Immediate Execute pon command. While the
interface functions are in their idle states, the host interface can
program the TNT4882 writable bits to their desired states.
03Finish Handshake (rhdf)
The Finish Handshake command finishes a GPIB handshake that was
stopped because of a Holdoff On RFD condition.
See The GPIB rdy Message and RFD Holdoffs section in Chapter 4,
TNT4882 Programming Considerations.
The Trigger command generates a high pulse on the TRIG pin. The
Trigger command performs the same function as if the DET (Device
Trigger) bit (ISR1[5]r) were set. The DET bit is not set by issuing
the Trigger command.
05
0D
06Send EOI (seoi)
Return To Local (rtl)
Return To Local (rtl)
The two Return To Local commands implement the rtl message as
defined by the IEEE 488 standard. If the host interface writes 05 hex,
the rtl message is generated in the form of a pulse. If rtl is already
set, this command clears it. If the host interface writes 0D hex, the rtl
command is set and remains set until either the 05 hex rtl command is
issued or a chip reset auxiliary command is issued.
One-Chip Mode
The seoi command is ignored. In one-chip mode, you can use CCEN
to make the TNT4882 automatically generate EOI. See the CCEN bit
in the Configuration Register (CFG) section of this chapter.
Turbo+7210 Mode
The seoi command causes the GPIB End-or-Identify (EOI) line to go
true with the next data byte transmitted. The EOI line is cleared upon
completion of the Handshake for that byte. The TNT4882 recognizes
the seoi command only if TACS = 1 (that is, the TNT4882 is in the
Talker Active State) when NTNL = 0.
Description
07Nonvalid Secondary Command Or Address (nonvalid)
The Nonvalid command releases a DAC holdoff. If APT = 1, the
TNT4882 operates as if an Other Secondary Address (OSA) message
had been received.
0B*Untalk (lut)
This command issues the local unt message, forcing the Talker
function to enter TIDS.
This command issues the local unl message, forcing the Listener
function to enter LIDS.
0E*New Byte Available False (nbaf)
One-Chip Mode
The nbaf is ignored in one-chip mode. See description of the nba bit,
ISR0[7]r.
Turbo+7210 Mode
The nbaf command causes the local message, nba, to become false.
Consider the following situation. The TNT4882 is a Talker. A byte
is written to the CDOR. The GPIB Controller asserts ATN before the
TNT4882 transfers this byte. The Controller unasserts ATN and the
TNT4882 is still a Talker.
If NTNL is set, the Talker transmits the byte stored in the CDOR.
The nbaf command suppresses the transmission of this byte.
0FValid Secondary Command Or Address (valid)
The Valid command releases a DAC holdoff. If APT = 1, the
TNT4882 operates as if a My Secondary Address (MSA) message
had been received.
Description
15*Switch to 9914A Mode
One-Chip Mode
The TNT4882 should not be switched to the 9914A compatibility
mode.
Turbo+7210 Mode
This command puts the interface chip in Turbo+9914 compatibility
mode.
The reqt and reqf commands are inputs to the IEEE 488.2 Service
Request Synchronization Circuitry. These commands set and clear
the local rsv message.
If STBO = 1, the reqt and reqf commands are issued immediately.
If STBO IE = 0, the reqt and reqf commands are not issued
immediately: they are issued on the write of the SPMR that follows
the issuing of the reqt or reqf auxiliary command.
The Page-In command is implemented only for compatibility. You
should not use it in new designs, because you can directly access all
registers.
The Page-In command causes the TNT4882 to enter the Page-In
state. The Page-In state changes the offset of several registers. See
The Page-In State (One-Chip Mode/Turbo+7210 Mode) section,
which is located earlier in this chapter.
The TNT4882 exits the Paged-In state when either the host interface
accesses any 7210 register or when the Turbo488 transfer function
performs a carry cycle.
Description
51*Immediate Holdoff
This command forces the Acceptor Handshake function to
immediately perform an RFD holdoff when Listener. Issuing this
command forces a transition into ANRS, where the handshake is held
off until a finish handshake is issued.
54*Clear DET
This command clears the DET bit (ISR1[5]r). Use this command to
clear the DET bit when SISB = 1.
AUXRA controls the EOS and END messages and specifies the RFD holdoff mode.
A chip reset auxiliary command or a hardware reset clears AUXRA. You write to
AUXRA at the same offset as the AUXMR.
BitMnemonicDescription
4wBINBinary bit
BIN selects the length of the EOS message. If BIN = 1,
the End-of-String Register (EOSR) is treated as an 8-bit
byte. When BIN = 0, the EOSR is treated as a 7-bit
register (for ASCII characters), and only a 7-bit
comparison is done with the data on the GPIB.
3wXEOSTransmit END With EOS bit
One-Chip Mode
XEOS is used to transmit the GPIB END message.
However, the preferred method of sending END in
one-chip mode uses the CCEN bit, CFG[3]w.
Turbo+7210 Mode
XEOS permits or prohibits automatic, simultaneous
transmission of the GPIB END message and the EOS
message when the TNT4882 is in TACS. If XEOS = 1
and the byte in the CDOR matches the contents of the
EOSR, the EOI line is sent true along with the data.
The REOS bit permits or prohibits setting the END bit
(ISR1[4]r) when the TNT4882 receives the EOS message
as a Listener. If REOS = 1 and the byte in the DIR
matches the byte in the EOSR, the END RX bit is set and
the acceptor function treats the EOS character just as if it
were received with EOI asserted.
1–0wHLDEHoldoff On End bit
HLDAHoldoff On All Data bit
HLDE and HLDA together determine the GPIB
data-receiving mode. The following table shows the four
possible data-receiving modes.
HLDEHLDAData-Receiving Mode
00Normal Handshake Mode
01RFD Holdoff on All Data Mode
10RFD Holdoff on END Mode
11Continuous Mode
See The GPIB rdy Message and RFD Holdoffs section in
Chapter 4, TNT4882 Programming Considerations.
AUXRB affects several interface functions. A chip reset auxiliary command or a
hardware reset clears AUXRB. You write to AUXRB at the same offset as the AUXMR.
BitMnemonicDescription
4wISSIndividual Status Select bit
ISS determines the value of the TNT4882 ist message.
When ISS = 1, ist takes on the value of the TNT4882
Service Request State (SRQS). (The TNT4882 is
asserting the GPIB SRQ message when it is in SRQS.)
If ISS = 0, ist takes on the value of the TNT4882 Parallel
Poll Flag. You set and clear the Parallel Poll Flag by
using the Set Parallel Poll Flag and Clear Parallel Poll
Flag auxiliary commands.
2wTRIThree-State Timing bit
TRI determines the TNT4882 GPIB Source Handshake
Timing (T1). Clearing TRI sets the low-speed timing
(T1 ≥ 2 µs). Setting TRI enables the TNT4882 to use a
shorter T1 delay. See the T1 Delay Generation section in
Chapter 4, TNT4882 Programming Considerations.
1wSPEOISend Serial Poll EOI bit
SPEOI determines whether the TNT4882 sends EOI when
a Controller serial polls the TNT4882.
AUXRE determines when the TNT4882 performs a DAC holdoff. A chip reset auxiliary
command or a hardware reset clears AUXRE.
Each bit of AUXRE enables DAC holdoffs on a GPIB command or group of commands.
When a GPIB Controller sends the specified command to the TNT4882, the CPT bit sets
and the TNT4882 performs a DAC holdoff. See the DAC Holdoffs section in Chapter 4,
AUXRF determines when the TNT4882 uses a DAC holdoff. A chip reset auxiliary
command or a hardware reset clears AUXRF.
Each bit of AUXRF enables DAC holdoffs on a GPIB command or group of commands.
When a GPIB Controller sends the specified command to the TNT4882, the CPT bit sets
and the TNT4882 performs a DAC holdoff. See the DAC Holdoffs section in Chapter 4,
TNT4882 Programming Considerations.
BitMnemonicDescription
3wDHATADAC Holdoff On All Talker Addresses Command bit
2wDHALADAC Holdoff On All Listener Addresses Command bit
1wDHUNTLDAC Holdoff On The UNT Or UNL Command bit
0wDHALLDAC Holdoff On All UCG, ACG, And SCG Commands
A chip reset auxiliary command or a hardware reset clears AUXRG.
BitMnemonicDescription
3wNTNLNo Talking When No Listener bit
One-Chip Mode
NTNL is not used. Write 0 to this bit.
Turbo+7210 Mode
Set NTNL to prevent the TNT4882 from sourcing data
(talking) when there is no external Listener, to modify the
setting of the ERR bit, to modify the way the nba local
message is cleared, and to change the EOI generation
function. If the TNT4882 is used in an IEEE 488.2
device, you should set NTNL.
If NTNL = 0, the following actions occur:
•The TNT4882 handshake function enters STRS after
the T1 delay has elapsed and NRFD is unasserted.
•The ERR bit is set on TACS & SDYS & DAC &
RFD or SIDS & (write CDOR) or the transition from
SDYS to SIDS.
•The local nba message is cleared upon entering SIDS
or STRS.
•The Send EOI auxiliary command is ignored or
forgotten upon exiting TACS.
•The TNT4882 handshake function does not make the
transition from SDYS to STRS unless an external
Listener exists—that is, a device on the GPIB is
asserting NDAC.
•The ERR bit is set when the T1 delay has elapsed and
TACS & SDYS & EXTDAC & RFD (where
EXTDAC refers to some device on the GPIB
asserting NDAC).
0wCHESClear Holdoff On End Select bit
CHES determines how long the TNT4882 remembers that
it detected an END condition.
If CHES = 0, the TNT4882 remembers the detection of
the END condition until the host interface issues the
Release Handshake Holdoff auxiliary command.
If CHES = 1, the TNT4882 remembers the detection of
the END condition until the Release Handshake Holdoff
auxiliary command is issued or the DIR is read when in
the normal Handshake Holdoff mode—that is, HLDE and
HLDA = 0.
A chip reset auxiliary command or a hardware reset clears AUXRI.
BitMnemonicDescription
3wUSTDUltra Short T1 Delay bit
USTD sets the value of the T1 delay (used by the Source
Handshake function for data setup) to 350 ns for the
second and subsequent data bytes sent after ATN
unasserts. If USTD = 0, the TRI bit (AUXRB[2]w)
determines the value of T1. See the T1 Delay Generation
section in Chapter 4, TNT4882 ProgrammingConsiderations.
2wPP2Parallel Poll bit 2
If PP2 = 0, the TNT4882 responds to parallel polls in the
same manner as the µPD7210—that is, it supports Parallel
Poll functions PP1 and PP2 simultaneously. However, a
contradiction arises because PP1 requires the interface to
be configured by remote GPIB commands, and PP2
requires the interface to be configured locally and ignore
remote GPIB commands.
When PP2 = 1, the chip ignores remote GPIB
commands—that is, PPC and PPU are treated as
undefined commands, allowing a true implementation of
PP2. In addition, setting PP2 and U (PPR[4]w) lets the
TNT4882 support PP0 (no Parallel Poll response).
AUXRJ sets the timeout value of the Timer interrupt. The timeout value can be set
between 15 µs to 125 s when the TNT4882 clock is 40 MHz. The Timer is started when
TM[3–0] are written with a nonzero value; the Timer sets the TO bit in ISR0 when the
timeout value expires. The Timer is cleared when a 0 is written to TM[3–0]. For
more information on the Timer interrupt capability, see the Interrupt Status Register 0(ISR0)—One-Chip Mode, Turbo+7210 Mode section in this chapter. AUXRJ is reset by
a hardware or chip reset auxiliary command.
Note:This timer is independent of the DRQ assertion timer described by the TIMER.
BitMnemonicDescription
3–0wTM[3–0]Timer bits 3 through 0
Table 3-15 lists the approximate timeout values that
AUXRJ supports at 40 MHz. If the TNT4882 uses
another clock frequency, the timeout value can be
computed with the following formula:
Depending on the value of the BTO bit, IMR0[4]w, the Timer works with two different
types of timeouts. If BTO = 0, the Timer starts when the host interface writes a nonzero
value to the Timer Register. When the Timer reaches the timeout value, it sets the TO
bit. If BTO = 1, the Timer operates in byte timeout mode. In this mode, the Timer starts
when the host interface writes a nonzero value to the Timer Register and counts until it
reaches the timeout value. However, reads of the DIR or writes of the CDOR clear the
Timer and force it to start counting over. If TO is set in byte timeout mode, it remains set
until the Timer Register is written. Further reads of DIR or writes of CDOR have no
effect on TO until the Timer Register is written.
When BTO = 1 in one-chip mode, the Timer is cleared whenever a byte is transferred
between the FIFOs and the GPIB.
Bus Control Register (BCR)/Bus Status Register (BSR)
Type:All modes
Attributes:Write only (BCR)
Read only (BSR)
Reads of the Bus Status Register (BSR) return the status of the GPIB control lines at the
time of the read. Write ones to bits in the Bus Control Register (BCR) to assert the
corresponding GPIB control lines.
76543210
ATNDAVNDACNRFDEOISRQIFCREN
BitMnemonicDescription
7rATNGPIB Attention Status bit
7wATNGPIB Attention Control bit
6rDAVGPIB Data Valid Status bit
6wDAVGPIB Data Valid Control bit
5rNDACGPIB Not Data Accepted Status bit
5wNDACGPIB Not Data Accepted Control bit
4rNRFDGPIB Not Ready For Data Status bit
4wNRFDGPIB Not Ready For Data Control bit
3rEOIGPIB End-or-Identify Status bit
3wEOIGPIB End-or-Identify Control bit
2rSRQGPIB Service Request Status bit
2wSRQGPIB Service Request Control bit
1rIFCGPIB Interface Clear Status bit
1wIFCGPIB Interface Clear Control bit
0rRENGPIB Remote Enable Status bit
0wRENGPIB Remote Enable Control bit
The Carry Cycle Register (CCR) is ignored in one-chip mode. See the description of the
CCEN bit, CFG[3]w, in the Configuration Register(CFG) section in this chapter.
Turbo+7210 Mode
Turbo+9914 Mode
If CCEN = 1, the TNT4882 performs a carry cycle before the last byte of a GPIB transfer
operation is transferred between the FIFOs and the CDOR or DIR. During a carry cycle,
the TNT4882 writes the contents of the CCR to the register at offset 0A (hex) of the
TNT4882.
The CCR holds the 8-bit auxiliary command that is written during carry cycles. Any
auxiliary command is valid. For GPIB writes, you generally write the seoi auxiliary
command pattern to the CCR. For GPIB reads, you generally write the Holdoff On All
auxiliary command pattern to the CCR. If the last byte of the current transfer requires no
special action, the CCEN bit in the Configuration Register must be cleared so a carry
cycle will not take place. The CCR is not affected by a reset.
In Turbo+7210 mode, the AUXMR is at offset 0A. Notice that auxiliary registers also
appear at offset A.
In Turbo+9914 mode, carry cycles are usually performed when the SWAP condition is
true. If SWAP is true, the ACCR appears at offset 0A.
The CDOR moves data from the CPU to the GPIB when
the interface is the GPIB Talker. Writing to the CDOR
sets the local message, nba. When nba is true, the Source
Handshake (SH) function can transfer the data in the
CDOR to other GPIB devices. Writing to the CDOR can
also reset the internal timer. (See the Auxiliary Register J
section in this chapter.)
The CDOR and the DIR use separate latches. A read of
the DIR does not change data in the CDOR. The CDOR
is a transparent latch; thus, the GPIB data bus (DIO(8–1))
reflects changes on the CPU data bus during write cycles
to the CDOR.
The Configuration Register (CFG) contains bits that are used to configure the TNT4882
for a GPIB transfer. All the bits in the CFG are cleared on reset.
BitMnemonicDescription
7w0Write 0 to this bit.
6wTLCHLTETLC Halt Enable bit
If TLCHLTE = 1, IMR2, IMR1, and IMR0 interrupts
cause the HALT signal to assert. HALT causes the GPIB
transfer to stop.
If the NOAS bit, MISC[1], or the NOTS bit, MISC[0], is
set, certain TNT4882 interrupts do not cause a HALT
even if TLCHLTE is asserted.
5wINData Direction Transfer bit
IN determines the direction of the GPIB transfer
operation. IN = 1 indicates a GPIB read operation.
The TNT4882 reads data from the GPIB and stores it
in its FIFOs.
IN = 0 indicates a GPIB write operation. The TNT4882
transfers data from the FIFOs to the GPIB.
4wA/BNFIFO First bit
This bit indicates which FIFO—A or B—the first GPIB
data byte should be transferred to or from. If A/BN = 1,
FIFO A is first.
If CCEN = 1, the TNT4882 inserts a carry cycle before
the last byte of a GPIB transfer operation is transferred
between the FIFOs and the TNT4882.
One-Chip Mode
In this mode, the CCR is ignored. On the last byte of a
GPIB write, EOI is asserted if CCEN = 1.
Turbo+7210 Mode
Turbo+9914 Mode
During a carry cycle, the TNT4882 writes the contents
of the CCR to the register at offset 0A (hex) of the
TNT4882. In Turbo+7210 mode, the AUXMR appears
at offset A. In Turbo+9914 mode, the ACCR appears at
offset A if the SWAP bit is set. CCEN forces a GPIB
read operation to holdoff the handshake on the last byte or
forces a GPIB write operation to send EOI with the last
byte.
2wTMOETimer Timeout Enable bit
TMOE limits the duration of DMA burst transfers. If
TMOE = 1, the TNT4882 unasserts the DMA Request
(DRQ) signal after the amount of time or the number of
transfers specified by the TIM/BYTN bit and the Timer
Register (TIMER) passes. This bit helps limit the amount
of time that the DMA Controller serving the TNT4882
holds the bus while transferring data between the
TNT4882 and memory.
1wTIM/BYTNTime Or Byte Limit bit
If TIM/BYTN = 1, the DRQ assertion timer begins
counting when the host interface performs a DMA access
of the TNT4882 FIFOs. If DRQ unasserts, the DRQ
assertion timer resets and reloads the timeout value from
the TIMER. If the DRQ assertion timer reaches its time
limit, the TNT4882 unasserts DRQ during the next DMA
access of the TNT4882 FIFOs.
If TIM/BYTN = 0, the TIMER contains the number of
transfers for which the DMA Request signal remains
asserted. TIM/BYTN is not used if TMOE = 0.
0w16/8N16- or 8-Bit Mode bit
16/8N determines whether the TNT4882 packs and
unpacks data from both FIFO A and B or from only
FIFO B.
If 16/8N = 1, the TNT4882 packs and unpacks data from
both FIFO A and B. The host interface should transfer
data to and from the FIFOs as 16-bit words.
If 16/8N = 0, the TNT4882 uses only FIFO B. Data
should transfer to and from FIFO B as 8-bit bytes.
By writing command codes to the Command Register (CMDR), you cause special actions
to occur. A command code is assigned to each special action. Patterns that are not
specified in Table 3-16 are reserved; do not write them to the CMDR.
Note:Accesses to the CMDR must be separated by at least four clock cycles.
Table 3-16. Command Summary: Detailed Description
Hex
Code
04GO
Description
One-Chip Mode
The GO command clears the HALT signal. The transfer state machine is
not used in one-chip mode.
Turbo+7210 Mode
Turbo+9914 Mode
The GO command starts the Turbo+7210 and Turbo+9914 transfer state
machine, which is a functional module within the TNT4882. This
command is sent after all the programming registers in the TNT4882 are
programmed for a GPIB transfer. Sending this command clears the
DONE and STOP bit in ISR3 so that command or data transfers between
the FIFOs and the CDOR or DIR begin.
The Turbo488 transfer state machine is not used in one-chip mode. The
STOP command sets the HALT signal. The GO command clears the
HALT signal. When HALT = 1, the nba and rdy messages become false.
Thus, the TNT4882 does not accept or send any GPIB data bytes.
Turbo+7210 Mode
Turbo+9914 Mode
The STOP command stops the TNT4882 transfer state machine. Send
this command to stop a GPIB transfer in progress. If a byte is being
transferred between the CDOR or DIR and the FIFOs when the STOP
command is sent, the byte finishes transferring before the transfer state
machine is stopped. After the STOP command is sent, DONE is set
when the GPIB is synchronized—that is, the last byte is accepted by all
GPIB Listeners and (for GPIB reads only) the FIFOs are empty.
10RESET FIFO
The RESET FIFO command resets both FIFOs to the empty state.
22SOFT RESET
Sending the SOFT RESET command
•Clears the CFG, HSSEL, and IMR3 registers.
Description
•Sets the DONE, HALT, STOP, and GSYNC bits.
•Resets the internal FIFOs to empty.
•Resets the GPIB transfer state machine.
•Clears the DRQ signal.
•Configures the byte counters for 16-bit operation.
These four count registers—CNT0, CNT1, CNT2, and CNT3—store the transfer count of
the GPIB transfer operation. The transfer counter operates in one of two modes:
16-bit mode and 32-bit mode. The HWE signal determines which mode is used. When
HWE is true, the byte counters operate in 32-bit mode. When HWE is false, the byte
counters operate in 16-bit mode. A hardware reset or the SOFT_RESET command clears
HWE. A write to the CNT3 or CNT2 sets HWE.
A hardware reset sets the CNT0, CNT1, CNT2, and CNT3 to 0xFF. The SOFT_RESET
command sets the CNT3 and CNT2 to 0xFF. Before a transfer begins, the transfer count
registers must be loaded with the two's complement of the transfer count.
32-Bit Mode
Write the least significant byte of the two's complement of the GPIB transfer count to the
CNT0, then write the next most significant bytes of the two's complement of the GPIB
transfer count to the CNT1 and CNT2. Finally, write the most significant byte of the
two's complement of the GPIB transfer count to the CNT3. Until it reaches the terminal
value of zero, the 32-bit counter is incremented once for every byte transferred. You can
read the counters at any time to learn the two's complement of the current GPIB transfer
count.
Note:To guarantee proper operation, always write to the CNT0 first, then write to
the CNT1. Next, write to the CNT2, then the CNT3. The operation may not
complete properly if you write to the counters in any other order.
16-Bit Mode
Write the low byte of the two's complement of the GPIB transfer count to the CNT0, then
write the high byte of the two's complement of the GPIB transfer count to the CNT1.
Until it reaches the terminal value of zero, the 16-bit counter is incremented once for
every byte that is transferred. You can read the counters at any time to learn the two's
complement of the current GPIB transfer count.
The host interface can examine the GPIB DIO lines by reading the Command Pass
Through Register (CPTR). The CPTR has no storage; the host interface should read the
CPTR only during a DAC holdoff. See the DAC Holdoffs section in Chapter 4, TNT4882
The Chip Signature Register (CSR) contains a value unique to each version of the
TNT4882. This value can distinguish the CSR from other IEEE 488 chips.
BitMnemonicDescription
7–4rV[3–0]Reads back 0011, a value unique to the TNT4882. Future
versions of the TNT4882 may read back 01XX.
3rKEYDQKey Data bit
KEYDQ returns the logic value of the KEYDQ pin. If
you are using an electronic key, the KEYDATEN bit in
the KEY register must be clear to read data from the key.
Key data bits are read from the key memory on the rising
edge of KEYCLK.
2rMODEMODE bit
MODE returns the logic value of the MODE pin. The
MODE pin determines which mode the TNT4882 is in
following a hardware reset. If MODE = 0, the TNT4882
functions in Turbo+9914 mode following a hardware
reset. If MODE = 1, the TNT4882 functions in
Turbo+7210 mode following a hardware reset.