Page 2
National Instruments Corporate Headquarters 6504 Bridge Point Parkway Austin, TX 78730-5039 (512) 794-0100 Technical support fax: (800) 328-2203 (512) 794-5678 Branch Offices: Australia 03 9 879 9422, Austria 0662 45 79 90 0, Belgium 02 757 00 20, Canada (Ontario) 519 622 9310, Canada (Québec) 514 694 8521, Denmark 45 76 26 00, Finland 90 527 2321, France 1 48 14 24 24,...
Page 3
Limited Warranty The GPIB-SBX is warranted against defects in materials and workmanship for a period of two years from the date of shipment, as evidenced by receipts or other documentation. National Instruments will, at its option, repair or replace equipment that proves to be defective during the warranty period. This warranty includes parts and labor.
Page 4
Organization of the GPIB-SBX User Manual The GPIB-SBX User Manual is organized as follows: • Chapter 1, Introduction, contains a brief description of the GPIB-SBX kit, a list of equipment supplied, and a list of optional equipment. • Chapter 2, General Description, contains the physical and electrical specifications for the GPIB-SBX and describes the characteristics of key interface board components.
Page 6
If you encounter any technical problems, you can use the following toll-free number between the hours of 8:00 a.m. and 5:30 p.m. (central time) to reach the National Instruments applications engineering department: (512) 794-0100 (800) IEEE-488 (toll-free U.S.
Contents Chapter 1 Introduction ......................... 1-1 GPIB-SBX Interface Kit Description ................1-1 What Your Kit Should Contain ..................1-2 Optional Equipment ...................... 1-2 Chapter 2 General Description ......................2-1 GPIB-SBX Specifications....................2-1 Physical Specifications ..................2-1 Electrical Specifications..................2-1 SBX Interface Bus Signals..................... 2-3 Control Lines......................
Page 8
Going from Active to Standby Controller............5-3 Going from Standby to Active Controller............5-4 Going from Active to Idle Controller ..............5-4 The GPIB-SBX as GPIB Talker and Listener ............... 5-5 Programmed Implementation of Talker and Listener........5-5 Addressed Implementation of Talker and Listener..........5-5 Address Mode 1 ..................
Page 9
GPIB Talker/Listener/Controller (TLC) ................ 6-2 GPIB Interface ....................... 6-3 Chapter 7 Diagnostic and Troubleshooting Test Procedures ..........7-1 Interpreting Test Procedures ..................7-1 GPIB-SBX Hardware Installation Tests ................ 7-2 Appendix A Parts List and Schematic Diagram ................A-1 Appendix B Sample Programs ........................
Introduction Chapter 1 What Your Kit Should Contain Your kit should contain the following components: Component Part Number GPIB-SBX Interface Board 179770-01 20-in. Interface Cable (chassis mount) 179753-01 GPIB-SBX User Manual 320015-01 Make sure each of these items is in your kit. If any item is missing, contact National Instruments.
The physical and electrical specifications are described in the following sections. Physical Specifications The GPIB-SBX measures 2.85 in. by 3.7 in. and is supplied with a 36-pin plug and spacing studs for mounting on the host board. A 26-pin male header connects to the GPIB adapter cable.
8 mA @ 0.35 V, -0.4 mA @ 3.4 V Additional circuitry permits the GPIB-SBX to automatically become System Controller or give up control automatically when the GPIB-SBX receives the Take Control or Release Control auxiliary commands. No special software support or hardware setting are necessary to make the GPIB-SBX System Controller or not System Controller.
• 2 Power Lines The following paragraphs describe the signals used by the GPIB-SBX. The GPIB-SBX uses 29 of the available 36 SBX bus signals. Table 2-4 lists all 36 signals and indicates which ones are used and which ones are not used.
Page 16
General Description Chapter 2 Table 2-4. GPIB-SBX Connector Pin Assignments (continued) Used/ Mnemonic Description Not Used MINTR0 M Interrupt 0 Used IORD* I/O Read Command Used MWAIT* M Wait Used Signal Ground Used +5 Volts Used M Data Bit 7...
DMA cycle. TDMA is tied to ground so that it does not float to a true state. Initialize Line (MRESET) MRESET is an active-high signal used by the host board to place the GPIB-SBX in a known quiescent state. Clock Line (MCLK) MCLK is a 10-MHz timing signal provided by the host board to the GPIB-SBX.
SBX bus. MD7 is the most significant bit. Interrupt Line (MINTR1-MINTR0) MINTR0 is an active-high signal generated by the GPIB-SBX to send an interrupt to the host board. MINTR1 is tied to ground so that it does not float to a true state.
In DMA mode, data is transferred directly between memory and the CDOR/DIR, using the facilities of a DMA Controller that is external to the GPIB-SBX (that is, it is a function of the host board or the computer system). The data transfer in this mode can exceed 500 kbytes/sec provided that the Controller, memory, and external GPIB devices are capable of sustaining this rate.
GPIB terminology, the GPIB-SBX implements GPIB interface functions for communicating with other GPIB devices and device functions for communicating with the central processor and memory. From the point of view of the host board, the GPIB-SBX is an interface to the outside world.
General Description Chapter 2 Figure 2-2 shows the GPIB-SBX used along with other National Instruments interface boards to connect a Multibus computer to other processors in order, for example, to transfer files electrically rather than manually (via a removable storage medium) or to perform other interprocessor communication functions.
Chapter 2 General Description Figure 2-3 is a block diagram of the GPIB-SBX-1. Data Transceiver Control Transceiver System Controller GPIB Adapter Select Figure 2-3. GPIB-SBX Block Diagram The interface consists of these major sections that are discussed in greater detail in Chapters 4, 5, and 6: •...
Special transceivers interface the TLC to the GPIB itself. Table 2-6 lists the capabilities of the GPIB-SBX in terms of the codes in Appendix C of the IEEE-488 standard.
Page 27
The GPIB-SBX has complete Source and Acceptor Handshake capability. • The GPIB-SBX can operate as a basic Talker or Extended Talker and can respond to a Serial Poll. It can be placed in a Talk Only mode, and is unaddressed to Talk when it receives its Listen address.
To GPIB-SBX Figure 3-1. GPIB Cable Shield Grounding Installation The GPIB-SBX is installed on a host board by means of the SBX connector and a nylon spacer provided in the interface kit. Warning: Never attempt to install the GPIB-SBX on a host board that has power applied to it.
2. Place the nylon threaded spacer between the component side of the host board and the circuit side of the GPIB-SBX directly in line with the mounting holes provided. 3. Insert screws from the component side of the GPIB-SBX into the spacer and from the circuit side of the host board into the spacer.
GPIB device. The cable is generally run through the back panel of the computer and strain relieved in some manner. Both cables connect to the GPIB-SBX at the right-angle header labeled J1 at the top of the circuit card. Take care when installing the connector. Pin 26 of the cable connector and the associated pin of the J1 are keyed to prevent the connectors from being installed backwards.
Figure 3-4. GPIB-SBX Cable-to-Interface Board Connection Verification Testing The GPIB-SBX is tested twice and receives a 96-hour burn-in before shipment. Nonetheless, a performance verification test should be run to ensure that the board has not been damaged during shipment and also to ensure that the board has been configured correctly. To do this requires an interactive control program or an equivalent mechanism, such as front panel control switches or front panel emulator, that can load and read memory and I/O addresses.
Register Descriptions Introduction All software control of the GPIB-SBX is performed through a set of interface registers located within a block of eight consecutive I/O addresses. Some of the registers are read only and some are write only. Some registers are not storage registers at all, but buffers through which status signals can be read or through which control pulses can be sent.
(MA2-MA0), the I/O Read or Write command (IORD, IOWRT*), and the SBX device select command. Figures 4-1 and 4-2 show the register and bit mnemonics of each GPIB-SBX register, its I/O port offset, and its read/write accessibility (the value of MA2-MA0). Figure 4-1 shows the regular GPIB-SBX interface registers.
Page 59
Holdoff on RFD or DAC. 0 0 1 0 0 Trigger Note: Trigger is not implemented on the GPIB-SBX. The Trigger command generates a high pulse on the TRIG pin (T/R3 pin when TRM1=0) of the TLC. The Trigger command performs the same function as if the DET (Device Trigger) bit (ISR1[5]r) were set.
0 1 1 1 0 0 0 0 Unconfigures PPR 0 1 1 0 0 0 0 0 0 0 0 0 0 is written to the PPR. The GPIB-SBX participates in a Parallel Poll, asserting the DIO1 line if ist=0. Otherwise, the GPIB-SBX does not participate.
The INV bit affects the polarity of the TLC INT pin. Setting INV causes the polarity of the Interrupt (INT) pin on the TLC to be active low. As implemented on the GPIB-SBX, configuring the INT pin to active low results in interrupt request errors.
Page 69
The TRI bit determines the TLC GPIB Source Handshake Timing, T1. TRI can be set to enable high-speed data transfers (T1 ≥ 500 nsec) when tri-state GPIB drivers are used. (The GPIB-SBX uses tri-state GPIB drivers except during Parallel Poll responses, in which case the GPIB drivers automatically switch to Open Collector.) Setting TRI enables high-speed timing as T1 of the...
A typical programming initialization sequence for the GPIB-SBX might include the following steps: 1. Write the Chip Reset command to the AUXMR to place the GPIB-SBX in a known quiescent state. 2. Set or clear the desired Interrupt Enable bits in the Interrupt Mask Register 1 (IMR1) and the Interrupt Mask Register 2 (IMR2).
8. Execute the desired auxiliary commands. The GPIB-SBX as GPIB Controller The GPIB-SBX Controller function is generally in one of two modes: idle or in charge. When in charge, the Controller function is either active (asserting Attention (ATN)) or standby (not asserting ATN).
Control/Data Out Register (CDOR) in response to the CO status bit in ISR2. The GPIB-SBX can address itself to be both Talker and Listener in address mode 1 or 2; that is, the TLC recognizes its address when it sends or receives it.
Status Register 1 (ISR1). This indicates that a Holdoff is in progress. When the tcs auxiliary command is used, the GPIB-SBX takes control of the GPIB only at the end of a data transfer. This implies that one transfer must follow or be in progress when the tcs auxiliary command is issued.
Addressed Implementation of Talker and Listener When the GPIB-SBX is the GPIB Active Controller, it can address itself to talk or listen by sending its own GPIB talk or listen address using the CO bit and the CDOR. When there is another device on the GPIB acting as Controller, the GPIB-SBX is addressed with GPIB command messages to become a Talker or Listener.
Read the secondary address in the CPTR and determine whether or not it is the address of the GPIB-SBX. 5. If it is not the GPIB-SBX address, issue the Non-Valid auxiliary command. If it is the GPIB- SBX address, issue the Valid auxiliary command.
7. If the Non-Valid auxiliary command is issued, the GPIB-SBX assumes that an Other Secondary Address (OSA) message has been received, which causes: • The GPIB-SBX Talker or Listener function to go to its idle state (TIDS=1 or LIDS=1) if either the TPAS or LPAS bit was set; and •...
Programming Considerations Chapter 5 To receive data, wait until the GPIB-SBX has been programmed or addressed to listen and the CDOR is empty. When this occurs, the DI bit in the ISR1 is set, indicating that the GPIB Talker has written a byte to the DIR. Once that byte has been read, the DI bit is set again when a new byte is received from the GPIB Talker.
Before requesting service, you must check the Pending (PEND) bit of the SPSR to ensure that the GPIB-SBX is not presently in the middle of a Serial Poll (SPAS=0). If PEND=0, write the desired Status Byte (STB) to the SPMR with the rsv bit set. At that time, PEND sets and remains set until the Serial Poll (SP) completes.
Parallel Poll auxiliary command is issued and the GPIB-SBX internal local message rpp is set, the PP is executed (that is, the GPIB message IDY is sent true) as soon as the GPIB-SBX Controller interface function is placed in the proper state (CAWS or CACS). The PPR is automatically read from the GPIB DIO line into the CPTR and the rpp local message is cleared.
AUXRB is zero, ist is set and cleared via the Set and Clear Parallel Poll auxiliary commands. If ISS is one, ist is set if the Service Request function of the GPIB-SBX is in the Service Request State (SRQS) and the GPIB-SBX is asserting the GPIB SRQ signal line and cleared otherwise.
• DMA acknowledge extender The TLC, which is the heart of the GPIB-SBX, is discussed in greater detail in the GPIB Interface section later in this chapter. The System Controller (SC) selection circuit decodes auxiliary commands written to the TLC and sets or clears the SC flip-flop when specified commands are detected.
ATN and SRQ signals. T/R3 is high when the three- state driver mode is active and low when the open collector mode is active; when the GPIB-SBX is parallel polled, the transceiver switches to open collector mode during the poll. SC is set as explained in the SBX Bus Interface section earlier in this chapter.
For this reason, users are advised to perform the tests in the order given. If the GPIB-SBX does not perform as described in the test procedures, carefully perform the following steps. 1. Verify that the test instructions have been followed correctly.
Chapter 7 After these items have been carefully checked, if the interface is still not functioning properly, gather together the information concerning what the GPIB-SBX is and is not doing with regard to the expected results and contact National Instruments.
8088 code appears on the left, 8080 code appears in the middle, and comments applying to both sets of code are on the right. Assumptions regarding the state of the GPIB-SBX appear at the beginning of each routine and must be adhered to for proper, error-free operation.
Page 102
; * * * * * * * * * * * * * * * ; Summary: - Initialize the interface function of other GPIB devices ; Assumptions on entry: - GPIB-SBX has been initialized ; Actions: - Assert GPIB IFC (the interface automatically becomes System Controller and Active Controller)
Page 103
; Assumptions on entry: - User specified sre is non-zero if REN is to be asserted and is zero if REN is to be unasserted - GPIB-SBX is System Controller and Active Controller ; Actions: - Check sre flag. if non-zero (true) send REN else send clear REN ;...
Page 104
GPIB-SBX is Idle Controller ; Assumptions on entry: - GPIB-SBX is Standby or Idle Controller - GPIB-SBX is or will be addressed to listen - The GPIB Talker has been or will be addressed - The Talker will send END with last byte...
Page 106
; * READ * ; * * * * * * ; Summary: - Called to read device dependent (data) messages when the GPIB-SBX is Controller- In-Charge (RCV is called when the GPIB-SBX is Idle Controller) ; Assumptions on entry:...
Page 107
CMD call CMD ; Command routine will address the Talker al,LTN ; a,LTN ; Program GPIB-SBX to be a Listener AUXMR,al; AUXMR ; so it can take control synchronously al,GTS ; a,GTS ; later; then go to standby and drop ATN AUXMR,al;...
Page 108
- The GPIB-SBX is Standby or Idle Controller - GPIB-SBX is or will be addressed to talk - If the GPIB-SBX is Idle Controller, the current CIC will go to standby - The bx(bc) register pair contains the byte count...
Page 110
; Actions: - Set up cmdbuf and cmdct and call CMD to address the GPIB-SBX as Talker, to address the Listener, and to unaddress all other devices - Go to standby and unassert ATN - Transfer the contents of datct to the...
Page 112
; Summary: - Called by CMD to send interface (command) messages ; Assumptions on entry: - The GPIB-SBX is Active Controller - The bl(b) register contains the number of bytes to send - The si(hl) register pair contains the address of cmdbuf ;...
Page 113
; Summary: - Send GPIB interface or command messages ; Assumptions on entry: - The GPIB-SBX is Controller-In-Charge - The commands to be sent are in cmdbuf - The variable cmdct contains the number of commands to be sent, which must be...
Page 114
GPIB-SBX is at standby - Set up the command buffer and command count - Call CMD to send the command bytes ; Status on return: - The GPIB-SBX is Idle Controller ; 8088 Code 8080 Code Comments ;----------------------- ---------------------------- ; ------------------------------------------------ PASSC: mov al,TCA ;PASSC: mvi...
Page 126
User Comment Form National Instruments encourages you to give us your comments on the documentation supplied with its products. This information helps us provide quality products to meet your needs. Title: GPIB-SBX User Manual Edition Date: January 1996 Part Number: 320015-01 Please comment on the completeness, clarity, and organization of the manual.
Page 128
Auxiliary Register E (AUXRE), 4-38, 6-2 BIN (Binary Bit), 4-34 bus signals. See signals and lines. cabling of GPIB-SBX, 3-3 capability codes for GPIB-SBX, 2-14 to 2-16 CDO[7-0] (Command/Data Out Bits 7 through 0), 4-6 CDOR. See Command/Data Out Register (CDOR). Chip Reset command...
Page 131
Parallel Poll Register (PPR), 4-32 to 4-33 HLDA (Holdoff on All Bit), 4-35 HLDE (Holdoff on END Bit), 4-35 ICR. See Internal Counter Register (ICR). IEEE-488 interface capabilities of GPIB-SBX, 2-14 to 2-16 IFC (Interface Clear) line, 2-9 Immediate Execute Pon command codes for, 4-25 description, 4-26 IMR1.
Page 132
IORD* command line, 2-5 IOWRT* command line, 2-5 ISR1. See Interrupt Status Register 1 (ISR1). ISR2. See Interrupt Status Register 2 (ISR2). jumpers for configuring GPIB-SBX, 3-1 LA (Listener Active Bit), 4-19 lines. See signals and lines. Listen command codes for, 4-25...
Page 133
Non-Valid Secondary Command or Address command codes for, 4-25 description, 4-27 NRFD (Not Ready for Data) line, 2-8 optional equipment for GPIB-SBX, 1-2 P[3-1] (Parallel Poll Response Bits 3 through 1), 4-33 Parallel Poll Register (PPR), 4-32 to 4-33, 6-2 parallel polls...
Page 134
5-9 to 5-11 sample programs COMMAND-CMD, B-19 COMMAND SEND-CSEND, B-18 DATA SEND-DSEND, B-14 to B-15 GPIB-SBX Sample Functions for Driver, B-3 to B-5 INITIALIZE-INIT, B-6 to B-7 INTERFACE CLEAR-IFC, B-8 overview, B-1 to B-2 READ, B-12 to B-13...
Page 135
S8 (Serial Poll Status Bit 8), 4-17 sample programs COMMAND-CMD, B-19 COMMAND SEND-CSEND, B-18 DATA SEND-DSEND, B-14 to B-15 GPIB-SBX Sample Functions for Driver, B-3 to B-5 INITIALIZE-INIT, B-6 to B-7 INTERFACE CLEAR-IFC, B-8 overview, B-1 to B-2 READ, B-12 to B-13...