Mesa 7i92 User Manual

7I92 ETHERNET ANYTHING I/O MANUAL
Version 1.7
This page intentionally not blank
iii
GENERAL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
DESCRIPTION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
HARDWARE CONFIGURATION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
GENERAL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
BREAKOUT POWER OPTION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
5V I/O TOLERANCE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
PRECONFIG PULL-UP ENABLE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
IP ADDRESS SELECTION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
CONNECTORS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
CONNECTOR LOCATIONS AND DEFAULT JUMPER POSITIONS . . . . . . . . 4
7I92 I/O CONNECTOR PIN-OUT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
POWER CONNECTOR PIN-OUT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
JTAG CONNECTOR PIN-OUT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
OPERATION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
FPGA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
FPGA PINOUT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
IP ADDRESS SELECTION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
HOST COMMUNICATION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
UDP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
LBP16 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
WINDOWS ARP ISSUES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
CONFIGURATION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
FALLBACK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
DUAL EEPROMS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
EEPROM LAYOUT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
BITFILE FORMAT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
iv
OPERATION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
MESAFLASH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
SETTING EEPROM IP ADDRESS . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
FREE EEPROM SPACE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
FALLBACK INDICATION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
FAILURE TO CONFIGURE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
CLOCK SIGNALS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
LEDS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
PULLUP RESISTORS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
I/O LEVELS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
STARTUP I/O VOLTAGE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
INTERFACE CABLES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
v
SUPPLIED CONFIGURATIONS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
HOSTMOT2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
7I76X1D . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
7I76_7I74D . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
G540X2D . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
7I77X2D . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
7I77_7I76D . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
7I77_7I74D . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
7I74X2D . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
7I78X2D . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
PROB_RFX2D . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
PIN FILES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
REFERENCE INFORMATION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
LBP16
LBP16 COMMANDS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
INFO AREA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
INFO AREA MEMSIZES FORMAT . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
INFO AREA MEMRANGES FORMAT . . . . . . . . . . . . . . . . . . . . . . . . . 20
INFO AREA ACCESS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
7I92 SUPPORTED MEMORY SPACES . . . . . . . . . . . . . . . . . . . . . . . . 22
SPACE0: HOSTMOT2 REGISTERS . . . . . . . . . . . . . . . . . . . . . . . . . . 22
SPACE1: ETHERNET CHIP ACCESS . . . . . . . . . . . . . . . . . . . . . . . . . 24
SPACE2: ETHERNET EEPROM CHIP ACCESS . . . . . . . . . . . . . . . . 24
ETHERNET EEPROM LAYOUT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
SPACE3: FPGA FLASH EEPROM CHIP ACCESS . . . . . . . . . . . . . . . 27
FLASH MEMORY REGISTERS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
SPACE4: LBP TIMER/UTIL REGISTERS . . . . . . . . . . . . . . . . . . . . . . 30
SPACE6: LBP STATUS/CONTROL REGISTERS . . . . . . . . . . . . . . . . 31
MEMORY SPACE 6 LAYOUT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
ERROR REGISTER FORMAT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
SPACE7: LBP READ ONLY INFORMATION . . . . . . . . . . . . . . . . . . . . 33
MEMORY SPACE 7 LAYOUT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
ELBPCOM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
SPECIFICATIONS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
CARD DRAWING . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
7I92 1
GENERAL
DESCRIPTION
The MESA 7I92 is a low cost, general purpose, FPGA based programmable I/O card
with 100 BaseT Ethernet host connection. The 7I92 that uses standard parallel port pinouts and connectors for compatibility with most parallel port interfaced motion control / CNC breakout cards/ multi axis step motor drives, allowing a motion control performance boost while retaining a reliable real time Ethernet interface. Unlike the parallel port that the 7I92 replaces, each I/O bit has individually programmable direction and function.
The 7I92 has a simplified UDP host data transfer systems that allows operation in
real time and compatibility with standard networks. The 7I92 provides 34 I/O bits (17 per connector) All I/O bits are 5V tolerant and have pullup resistors. A power source option allows the 7I92 to supply 5V power to breakout boards if desired. This 5V power is protected by a PTC.
Firmware modules are provided for hardware step generation, quadrature encoder
counting, PWM generation, digital I/O, Smart Serial remote I/O, BISS, SSI, SPI, UART interfaces and more. Configurations are available that are compatible with common breakout cards and multi axis step motor drives like the Gecko G540 and LeadshineMX3660/4660. All motion control firmware is open source and easily modified to support new functions or different mixes of functions.
In addition to standard parallel port breakouts, There are currently six 7I92
compatible breakout cards available from Mesa, the 7I74 through 7I78 and 7I85. The 7I76 is a step/dir oriented breakout with 5 axis of buffered step/dir outputs, one spindle encoder input, one isolated 0-10V analog spindle speed plus isolated direction and enable outputs, one RS-422 expansion port, 32 isolated 5-32V inputs and 16 isolated 5-32V 300 mA outputs. The 7I77 is a analog servo interface with 6 encoder inputs, 6 analog +-10V outputs, one RS-422 expansion port, 32 isolated 5-32V inputs, and 16 isolated 5-32V 300 mA outputs. The 7I92 supports two breakout cards so for example a 10 Axis step/dir configuration or 12 axis analog servo configuration is possible with a single 7I92 and two Mesa breakout cards.
7I92 2
HARDWARE CONFIGURATION
GENERAL
Hardware setup jumper positions assume that the 7I92 card is oriented in an upright
position, that is, with the Ethernet connector towards the left and the I/O connectors towards the right.
CONNECTOR 5V POWER
The 7I92 has the option to supply 5V power from the to the breakout board. This
option is used by all Mesa breakout boards to simplify wiring. The option uses 4 parallel cable signals that are normally used as grounds for supplying 5V to the remote breakout board (DB25 pins 22,23,24 and 25). These pins are AC bypassed on both the 7I92 and Mesa breakout cards so do not compromise AC signal integrity. The 5V power option is individually selectable for each of the four I/O connectors. The breakout 5V power is protected by per connector PTC devices so will not cause damage to the 7I92 or system if accidentally shorted. This option should only be enabled for Mesa breakout boards or boards specifically wired to accept 5V power on DB25 pins 22 through 25. When the option is disabled DB25 pins 22 through 25 are grounded. Jumper W3 sets the power option on header P1, and W4 sets the power option on DB25 connector P2.
JUMPER POS FUNCTION
W3,W4 UP BREAKOUT POWER ENABLED W3,W4 DOWN BREAKOUT POWER DISABLED (DEFAULT)
5V I/O TOLERANCE
The FPGA used on the 7I92 has a 4V absolute maximum input voltage
specification. To allow interfacing with 5V inputs, the 7I92 has bus switches on all I/O pins. The bus switches work by turning off when the input voltage exceeds a preset threshold.
The 5V I/O tolerance option is the default and should normally be left enabled.
For high speed applications where only 3.3V maximum signals are present and
overshoot clamping is desired, the 5V I/O tolerance option can be disabled. W1 controls the 5V I/O tolerance option. When W1 is on the default UP position, 5V tolerance mode is enabled. When W1 is in the DOWN position, 5V tolerance mode is disabled. Note that W4 controls 5V tolerance on both I/O connectors.
PULLUP VOLTAGE
Jumper W1 also selects the I/O connector pull-up resistor voltage, When W1 is in
the UP position the 4.7K I/O pullup resistor common is connected to 5V, When W1 is in the down position, The 4.7K I/O pullup resistor common is connected to 3.3V.
7I92 3
HARDWARE CONFIGURATION
IP ADDRESS SELECTION
The 7I92 has three options for selecting its IP address. These options are selected
by Jumpers W5 and W6. W5 W6 IP ADDRESS DOWN DOWN FIXED 192.168.1.121 (DEFAULT) DOWN UP FIXED FROM EEPROM UP DOWN BOOTP UP UP INVALID Note: that the initial EEPROM IP address is set to 10.10.10.10 at Mesa, but can be
changed to any address with the mesaflash utility.
7I92 4
CONNECTORS
CONNECTOR LOCATIONS AND DEFAULT JUMPER POSITIONS
7I92 5
CONNECTORS
I/O CONNECTORS
The 7I92 has 2 I/O connectors, P1 and P2 please see the 7I92IO.PIN file on the
7I92 distribution disk. Depending on 7I92 model P2 may be a DB25 female, DB25 male or 26 pin header. 7I92 IO P2 connector pinouts are as follows:
P2 FIRST I/O CONNECTOR PINOUT
DB25 PIN HDR PIN FUNCTION DB25 PIN HDR PIN FUNCTION
1 1 IO0 14 2 IO1 2 3 IO2 15 4 IO3 3 5 IO4 16 6 IO5 4 7 IO6 17 8 IO7 5 9 IO8 18 10 GND 6 11 IO9 19 12 GND 7 13 IO10 20 14 GND 8 15 IO11 21 16 GND 9 17 IO12 22 18 GND or 5V 10 19 IO13 23 20 GND or 5V 11 21 IO14 24 22 GND or 5V 12 23 IO15 25 24 GND or 5V 13 25 IO16 XX 26 GND or 5V
7I92 6
CONNECTORS
I/O CONNECTORS
P1 HDR26 CONNECTOR PINOUT
HDR PIN FUNCTION HDR PIN FUNCTION
1 IO17 2 IO18 3 IO19 4 IO20 5 IO21 6 IO22 7 IO23 8 IO24 9 IO25 10 GND 11 IO26 12 GND 13 IO27 14 GND 15 IO28 16 GND 17 IO29 18 GND or 5V 19 IO30 20 GND or 5V 21 IO31 22 GND or 5V 23 IO32 24 GND or 5V 25 IO33 26 GND or 5V
Note: 26 pin header P1 will match standard parallel port pin-out if terminated with
flat cable 26 pin receptacle/DB25F cable with pin1s connected (and header pin 26 left open)
A cable kit is available from MESA for the second port.
7I92 7
CONNECTORS
POWER CONNECTOR PINOUT
P3 is the 7I92s power connector. P3 is a 3.5MM plug-in screw terminal block. P3
pinout is as follows:
PIN FUNCTION
1 +5V TOP, SQUARE PAD 2 GND BOTTOM, ROUND PAD
JTAG CONNECTOR PINOUT
P4 is a JTAG programming connector. This is normally used only for debugging or
if both EEPROM configurations have been corrupted. In case of corrupted EEPROM contents the EEPROM can be re-programmed using Xilinx’s Impact tool.
P4 JTAG CONNECTOR PINOUT
PIN FUNCTION
1 TMS 2 TDI 3 TDO 4 TCK 5 GND 6 +3.3V
7I92 8
OPERATION
FPGA
The 7I92 use a Xilinx Spartan6 XC6SLX9-TQ144 Spartan6 FPGA.
IP ADDRESS SELECTION
Initial communication with the 7I92 requires knowing its IP address. The 7I92 has
3 IP address options: Default, EEPROM, and Bootp, selected by jumpers W5 and W6. Default IP address is always 192.168.1.121. The EEPROM IP address is set by writing Ethernet EEPROM locations 0x20 and 0X22. BootP allows the 7I92 address to be set by a DHCP/ BootP server. If BootP is chosen, the 7I92 will retry BootP requests at a ~1 Hz rate if the BootP server does not respond.
HOST COMMUNICATION
The 7I92 standard firmware is designed for low overhead real time communication
with a host controller so implements a very simple set of IPV4 operations. These operations include ARP reply, ICMP echo reply, and UDP packet receive/send for host data communications. UDP is used so that the 7I92 can be used on a standard network with standard tools for non-real time applications. No fragmentation is allowed so maximum packet size is 1500 bytes.
UDP
All 7I92 data communication is done via UDP packets. The 7I92 socket number for
UDP data communication is 27181. Read data is routed to the requesters port number. Under UDP, a simple register access protocol is used. This protocol is called LBP16.
LBP16
LBP16 allows read and write access to up to eight separate address spaces with
different sizes and characteristics. Current firmware uses seven of these spaces. For efficiency, LBP16 allows access to blocks of registers at sequential increasing addresses. (Block transfers)
WINDOWS ARP ISSUES
Windows TCP stack has a characteristic that causes it to drop outgoing UDP
packets when refreshing its ARP cache. Because of this you must either verify packet transmission via echoing data from the 7I92 for every transaction (reading RXUDPCount is suggested) and retrying failed transactions, or alternatively, setting up a static entry for the 7I92 in the ARP table. This is done with windows ARP command.
Loading...
+ 28 hidden pages