Tektronix IBIN-A, IBIN-LP PC Interfaces Rev. D User manual

IBIN-A, IBIN-LP PC Interfaces
The IBIN-Ainterface plugs into any slot in an IBM I’C/XT/AT/386/486 Personal System/2 Models 25, 30, or compatible, and serves as an interface between the computer and the Series 500. In addition, the interface card hosts other functions ccmmon to the Series 500 system: the programmable interval timer, and the switch selectable wait state generator.
The IBIN-LP is a low-power version of the standard IBIN-A interface which was designed for use in lap-tops or other computers which cannot supply enough current in their expansion slots to power the standard IBIN-A. The IBIN-Ll’ achieves its reduced power requirement through the use of low-power components. Physically, the IBIN-A and IBJN-Ll’ are identical, and share the same component layout
The programmable interval timer can be used to time events, create software delays, and generate pe­riodic interrupts in the PC. The timer consists of three independent 16-bit counters with a resolution of
one microsecond. The three counters can be cascaded to create longer timing intervals.
The wait state generator provides compatibility with many computers which use non-standard bus
timing or processor speeds.
Configuring the IBIN-A Interface Card
User configurable features of the IBIN-A interface include an address mapping switch, a PC bus wait state generator switch, and a removable cable for connecting the interface card to the Series 500 system. In addition, there are several jumpers that can be used in special applications to achieve additional flex­ibility
Switch Sl selects the address range of the interface in the system memory map. This switch is normally set for a starting location of hex CFFSO (the factory default), but can be configured over the full one megabyte addressing range of the PC. The switch setting determines the most significant 8 bits of the Series 500’s address region, which is 4K in size. The upper 128 bytes of memory in this 4K area contain the active memory locations used to communicate with the Series 500.
Functionally, switch set Sl consists of two groups of four switches. Switches l-4 control which 64K seg­ment of memory the IBIN-A resides in. For any 64K segment, the second address digit can be set from 0 through F (hex). The last three digits of the address are hard-wired to “F80”. This permits the interface
address to be set to the top 127 bytes of consecutive 4K blocks of memory within any 64K segment.
Document Number: 501-910-01 Rev. D
IBIN-
Table 1. IBIN-A Address Switch Setting Information
64K Segment 1 2
Fxxxx off off off off xFF80 Exxxx off off Dxxxx off off on cxxxx off BXXXX Axxxx off on 9xxxx off on on off x9F80 off on on 8xxxx off on on on
As an example, to set the interface to respond at address CFF80 you would set the switches 1 through 8 as follows:
1 2 3 4 5 6 7 8 off off on on
An address range which is almost universally available regardless of computer is CAF80 through CFFSO. Note that many of the possible addresses will conflict with other hardware, RAM, or ROM al-
ready in the computer, so the practical range of addresses is fewer than the switches provided for. How­ever, there will normally be many more addresses available than are actually needed.
off on off off xBF80 off on
off on on XCFSO off off on on
3
off on xEF80 off off off on
off on XAFSO off on off on
4
off xDF80 off off on off
off off off off
4K Region 5 6 7
off off off off
off off
XSFSO off on on on
8
off
Hardware options for the PC or AT, such as fixed disks, enhanced graphics adapters, and expanded
memory occupy portions of the PC memory map, and preclude using the same addresses for the IBIN-Ainterface. Memory conflicts occur when the computer attempts to read an address occupied by more than one piece of hardware. These problems can be manifest as error messages at boot-up, or fail­ure of the computer or data acquisition system to operate properly. If this occurs, examine the memory usage of all hardware in your computer, and make changes where necessary. Usually, changing the ad­dress of the IBIN-A interface is all that is required.
The following is a map of common memory usage in a standard AT or 386:
FOOOO-FF’FFI? Universally used for ROM BI05. Interface should generally not be addressed to this block.
EOOOO-EFFFF: Used by some 16 bit VGA cards. May be used by Lotus-Intel-Microsoft “EMS” expansion memory. Also reserved for system use in AT-class computers. If no functions or hardware use all these addresses, area may be used for IBIN-A interface.
DOOOO-DFFFF: May be used by Lotus-Intel-Microsoft “EMS” expansion memory. This page is often the location of a LAN card. If no functions or hardware use all these addresses, area may be used for IBIN-A interface.
IBIN-
COOOO-CFFFF: Lower portion of this page typically occupied by Fixed disk ROM B105 and Video BI05 ROM. Interface can be set to use CAFSO through CFFSO for most systems.
AOOOO-BFFFF: Universally used by VGA, EGA, or CGA. Interface cannot be set to this block. This area not normally available for interface.
00000-9FFlP RAM space from OK to 640K. This area should not be used for interface.
You should have no technical difficulty finding usable addresses, although you may have to do some research to find out what addresses are free in your computer. Normally, CFFSO will be compatible with any computer and installed hardware.
Memory Conflicts
In very rare cases, a system may be loaded with options which use addresses in the COOO, DOOO, and EOOO address blocks. Increasingly, hardware and software options such as EMS memory, “shadowed ROM BIOS”, and VGA cards are being added by computer manufacturers or end users. These options can monopolize the one or two complete pages of memory. If the COOO, DOOO, and EOOO pages are all used, the process of integrating the computer and IBIN-A becomes much more complex. Finding a free
address in such computers can require trial and error testing, a search through the computer documen­tation, or a call to the computer manufacturer. The IBIN-A installation may ultimately result in a sacri­fice of some of the computer’s speed, enhancements, or overall performance. Examples include:
1. I6-BIT VGA VIDEO ADAPTERS -Some VGA adapters feature 16-bit addressing, and use ad­dresses up to E000:O. These cards can be identified by the presence of a second AT-type card edge connector behind the main card-edge connector. Memory usage will vary as the adapter enters and leaves its various display modes. When the card permits, the solution is to reconfigure the VGAfor &bit operation by setting switches or running utility software. This may cause a reduction in video update speed or loss of some unique resolution modes or enhancements designed in by the VGA manufacturer.
2. EMS MEMORY - Expanded memory is also called “paged” memory. EMS was originally de­signed to provide PC/XT computers with up to eight or more megabytes of RAM, even though the 8088kP can address only 1 Mbyte of memory. EMS can also be used in 286- and 386.based comput­ers. Most EMS boards require a free, contiguous 64k address space which acts as a window into all the EMS memory. The solution is to install the EMS software to specifically exclude the space that the IBIN-A requires. Instructions for excluding a particular range of segment addresses for an EMS page are given below for three popular 386 expanded memory manager packages. Add the exclude statement to the CONFIG.SYS declaration which corresponds to the memory manager you are us­ing.
IBIN-
386 Expanded
MeIlKlly Minimum
Manager Exclude Statement CONFIGSYS Declaration Exclusion
DOS 5.0’s X = CFOO-WOO EMM386
Qualita’s 386 MAX
Quarterdeck’s EXCLUDE = CFOO-CFFF DEVICE = QEMMSYS 4K
EXCLUDE = CCOO-DO00 DEVICE = 386MAX.SYS 16K
DEVICE = EMM386.EXE
4K
QEW
Each of the above examples assumed that the IBIN-A address switch is set to the default CFFS hex. Note: an exclude statement is required because the IBIN-A cannot be detected by a memory man­ager. A memory manager is likely to take all unexcluded memory blocks for its own use.
3. “SHADOWING” -This technique copies system ROM BIOS or VGA BIOS information stored in relatively slow system ROM chips to faster-reading RAM, usually in the DO00 or EOOO pages. Once in RAM, the information can be read more quickly by the computer’s pP, resulting in a faster sys­tem. By itself, shadowing does not necessarily consume all the available high memory addresses.
However; a system which combines shadowing, 16-bit VGA, and EMS memory may leave no ad-
dresses vacant for the IBIN-A. Consult your computer documentation for instructions on disabling
the shadow RAM.
Any of these problems require a careful study of the documentation for the affected hardware to deter­mine how memory is allocated in a specific computer, and what steps may be available to solve the problem. Keithley can offer specific suggestions on setting up the IBIN interface, but users may have to contact vendors of the other equipment to find a complete solution.
IBIN-
Figure 1. IBIN-A Interface
See Table 2 for user-configured components on the interface card. See Figure 1 for an illustration of the PC interface.
Table 2. User-Configured Components on the IBIN-A
NiXme Designation Cable 1 CBl
Switch set Sl Sl Switch set 52 S2
Jumper Wl Wl Jumper W2 W2 EXT lNT
TPl
Function
Cable between IBIN-A and Series 500. Memory Address Range Switch Wait State Selector Switch External Interrupt Enable/Disable Series 500 Interrupt Enable/Disable External Interrupt Connect
(used with Wl)
Default
­CFFSO disabled installed
removed
IBIN-
Installing the IBIN-A Interface Card
CAUTION: Turn off the power before installing or removing the interface card in the computer.
The IBIN-Ainterface is installed into expansion slots inside the PC system unit. It may be installed into any vacant slot of the computer.
Install the IBIN-A into an expansion slot as follows: Make sure the PC is turned off, and unplug the power cord. Consult the computer manufacturer’s documentation for instructions on opening the com­puter. Remove the outer case and any other covers to gain access to the computer’s expansion slots.
A rear panel opening is provided at the end of each expansion slot for mounting I/O connectors. If a slot is unused, then this opening will be covered by a metal plate held in place by a screw on top of the plate. Remove the retaining screw and cover plate from the desired expansion slot. Be very careful not
to drop the retaining screw into the computer, it may be difficult to retrieve.
Carefully insert the IBlN-A into the expansion slot, fitting the DB25 connector through the rear panel operating so that the mounting bracket is in the correct position to be fastened securely by the retaining screw removed earlier. Insert the card edge into the mother board card edge receptacle. With the board firmly in place, install and tighten the retaining screw. Finally, attach the interfacing cable to the connec­tor (JZ) on the interface card at the rear of the computer. The cable connecting the PC to the Series 500 is a shielded 23-contact cable. The cable should be attached to the baseboard of the Series 500 unit. Nev­er strain the connection between cable and connector. The outer end of the cable should be plugged into the connector (Jll7) on the rear panel of the Series 500 base unit. This connection should be made with power to the Series 500 turned off. Avoid entangling the interface cable in 60 cycle AC power lines.
Software Installation and Wait States
Switch SW2 enables and disables the wait state generator. For most computers, this feature can be left disabled (all wait state switches set to OFF). The need to change the wait state switches will become ev­ident for a given computer if certain problems arise during installation or operation of software. For in­stance, some PC compatibles running at rates higher than 8MHz will not work properly with the Series
500. One indication would be if the INSTALL program supplied with KDAC500 aborts or issues error messages such as “Interface not found” or “Can’t trigger interrupts”. Another indication would be if KDAC500 installs correctly, but later yields incorrect data during acquisition.
If you are running a compatible computer which uses non-standard bus or processor speeds, you should try installing KDAC500 even if you are planning to use a software package other than KDAC500. If any timing problems exist, you may then add wait states to see if the problem can be COT­rected.
To change the number of wait states, see Figure 1 to locate switch 52. There are seven switches on the 52 switch set. In order to add one wait state to the bus you would set switch 1 to on. Reinstall the Keithley software, and then re-run your test. If the system still does not function, try setting both 1 and 2 on. Continue in this manner until all switches are on. Run the INSTALL software supplied with the Keithley software each time you make a change.
IBIN-
If you are using a third-party software package, consult its documentation for installation details.
Interrupt Selection
The interrupt levels, in order of priority, are shown in the following chart. Interrupt usage is controlled through software;
PC or XT (8088 or 8086)
CLOCK CLOCK LEV2 LEV3 LEV3 LEV5
See the installation section of the KDACSOO software manual for complete instructions on running IN­STALL with command modifiers which select other interrupts.
Jumper Settings for Selection of Interrupt Source
Method of Interrupt Generation
On board timer 8254 (Default) External interrupt applied to
TPl Interrupt generated by a Series
500 option module
AT (80286) or 80386
LEV9
LEV5
Jumper Wl Jumper W?. Note:
Installed Removed Removed Allows synchronization to an
Removed
Removed
Installed 500.TRGl is currently the only
Default
external time base.
module which can generate an interrupt.
Hardware installation is completed, Reassemble the computer in reverse order of disassembly, being careful that no screws or other hardware have dropped into the system. Plug the computer’s power cord back in.
Interrupt Conflicts
The IBIN-A interface can use the NM1 (Non-Maskable Interrupt), CLOCK, INT2, INT3, or lNT5 for in­terrupt-driven data acquisition under Keithley’s KDAC500 software. The selection is made during the installation of the software, with NM1 being the default. The interrupts are activated by the CALL IN­TON command. Third-party software packages can have their own interrupt strategies, but quite often use CLOCK.
Keithley recommends using the NM1 because the NM1 takes priority over all other system interrupts
and events, and gives the most precisely-timed acquisition. The NM1 was originally designed for use
with memory parity checking. However, some hardware accessories also use the NM1 for other tasks.
Among these are “auto-switching” EGA cards and the dynamic RAM refresh of some Zenith comput-
IBIN-
em Such systems will operate properly until the user runs a data acquisition program including a CALL INTON command, at which point a “Parity Check” or other error results.
There are two solutions to making the IBIN-A work in systems which use the NM1 for other functions. One is to disable the other hardware’s use of the NMI. Some EGA cards have a switch or programmable register to disable use of the NMI. This is not possible with all hardware, and the second solution is to simply install the Keithley software to use another of the available IBIN-A interrupts.
Interrupt Usage in PCs and ATs
Keithley’s KDAC500 can be installed to use the NMI, CLOCK, INT2, INT3, or INT5 interrupts. The ac­tual choice of interrupt depends on other hardware which may be in the system.
The following table summarizes inteirupt usage in XT-type computers:
INT
Application
0 Timer 1
Keyboard 2 Reserved 3
Secondary asynch adapter (COM2) 4
Primary asynch adapter (COMI) 5 1 Iard disk controller 6
Floppy disk controller 7
Printer (not used in most machines)
The following rules can be defined for XT computers:
1. Use NMl for the most precisely timed data acquisition.
2. If NM1 causes problems in the system, consider INT2, INT3, or lNT5 in that order.
3. If the XT contains a hard disk, lNT5 cannot be used.
4. If the system contains COMl and COM2, INT3 cannot be used. A serial mouse and an available COM port probably eliminate lNT3. A bus mouse and one COM port may leave lNT3 available. A LAN adapter probably uses INT3.
5. If there are no other adapter boards in the computer, lNT2 is probably available, although some multi-function I/O boards may use INT2.
6. Use CLOCK as a last alternative.
IBIN-
The following table summarizes interrupt usage in PC/AT computers:
INT Application
Timer Keyboard Orred summary of INTB-INT15 Secondary asynch adapter (COM2J Primary asynch adapter (COMl) Parallel port 2 (LPT2) Floppy disk controller Parallel port 1 (LPTl)
This table provides these guidelines for AT computers:
1. Use NMl for the most precisely timed data acquisition.
2. If using NM1 causes problems in the computer, consider INT2,lNT3, or INT5 in that order.
3. On a true AT compatible, INT2 is not available. However, many AT compatibles do not use INT2 as the original IBM PC/AT did. In this case, INT2 may be usable.
4. If the computer contains COMl and COM2, INT3 cannot be used. A serial mouse and a COM port probably make lNT3 unavailable. A bus mouse and a single COM port probably mean INT3 is available. A LAN adapter probably uses INT3.
5. If the computer contains no other adapter boards, then INT5 is probably available.
6. While lNT5 is assigned for printer use, there seem to be few printer adapters that really use inter­rupts. In fact, the DOS print spooler does not support it. Therefore, lNT5 is usually a workable al­ternative (provided something else doesn’t use it).
7. Use CLOCK as a last alternative.
In summary, use NM1 if possible. To use INT2,lNT3, or INT5, first determine what other options may be using these interrupts and choose accordingly. The ultimate confirmation of whether a given inter­rupt is suitable may require trying it. The usual symptoms of interrupt conflicts are POST error messag­es, bad data, or a locked-up computer. Since INT2,lNT3, and INT5 are used by various hardware options, problems with serial ports, fixed disks, or printer ports may also occur, although they have been rare. These symptoms will usually appear immediately when the system is turned on, or soon af-
terward. Use CLOCK as a last alternative.
Programmer Model for the Memory Map
A summary of memory locations used with the interface card is given in Table 3. These addresses cor­respond to the “Command A” and “Command I%” functions which are associated with each module in the Series 500 module library. Note that some modules also use “Command C” and “Command D” ad-
IBIN-
dresses for special functions. Collectively, these addresses are labeled “CMDA”, “CMDB”, CMDC”, and “CMDD”.
Table 3. Memory Map Locations and Functions
Function/Use Location
Slot 1
CMDA CMDB CMDC CMDD
Slot 2
CMDA CMDB CMDC
Slot 3
CMDA CMDB CMDC
Slot 4
CMDA CMDB
Slot 5
CMDA CMDB
Slot 6
CMDA CMDB
Slot 7
CMDA CMDB
Slot 8
CMDA CMDB
Slot 9
CMDA CMDB
Slot 10
CMDA CMDB
R/W COUNTER 0 R/W COUNTER 1 R/W COUNTER 2 COUNTER CONTROL TIMER GLOBAL TIMER STATUS CLEAR INTERRUPT SET IN-I’ LEVEL
xxx00
XXX01
XXXlA xxxlB
xxx02 xxx03 XXX18
xxx04 xxx05
xxx19 xxx06
xxx07 XXX08
xxx09
xxxOA xxxOB
xxxoc xxxOD
xxxOE xxxOF
xxx10 XXX11
XXX12
xxx13 xxx40 xxx41 xxx42
xxx43 xx60 xxx61 xxx62 xxx63
IBIN-
(Presumes prior execution of a DEF SEG=CFT* command)
Loading...
+ 22 hidden pages