General Standards Corporation PCIe4-SIO8BX2 User Manual

Eight channel high performance serial i/o pcie card featuring rs422/rs485/rs232 software configurable transceivers and 32k byte fifo buffers (512k byte total)
Table of Contents

Advertisement

Quick Links

PCIe4-SIO8BX2
User's Manual
EIGHT CHANNEL HIGH PERFORMANCE
SERIAL I/O PCIe CARD
FEATURING RS422/RS485/RS232 SOFTWARE CONFIGURABLE
TRANSCEIVERS
AND 32K BYTE FIFO BUFFERS (512K BYTE TOTAL)
RS-485
RS-422/V.11
RS-232/V.28
General Standards Corporation
8302A Whitesburg Drive
Huntsville, AL 35802
Phone: (256) 880-8787
Fax: (256) 880-8788
URL:
www.generalstandards.com
E-mail:
techsupport@generalstandards.com
Revision NR

Advertisement

Table of Contents
loading
Need help?

Need help?

Do you have a question about the PCIe4-SIO8BX2 and is the answer not in the manual?

Questions and answers

Summary of Contents for General Standards Corporation PCIe4-SIO8BX2

  • Page 1 EIGHT CHANNEL HIGH PERFORMANCE SERIAL I/O PCIe CARD FEATURING RS422/RS485/RS232 SOFTWARE CONFIGURABLE TRANSCEIVERS AND 32K BYTE FIFO BUFFERS (512K BYTE TOTAL) RS-485 RS-422/V.11 RS-232/V.28 General Standards Corporation 8302A Whitesburg Drive Huntsville, AL 35802 Phone: (256) 880-8787 Fax: (256) 880-8788 URL: www.generalstandards.com E-mail: techsupport@generalstandards.com...
  • Page 2 General Standards Corporation does not assume any liability arising out of the application or use of any product or circuit described herein, nor is any license conveyed under any patent right of any rights of others.
  • Page 3 RELATED PUBLICATIONS ZILOG Z16C30 USC® User’s Manual ZILOG Z16C30 USC® Product Specifications Databook ZILOG, Inc. 210 East Hacienda Ave. Campbell, CA 95008-6600 (408) 370-8000 http://www.zilog.com/ PLX PCI 9056 Data Book PLX Technology Inc. 390 Potrero Avenue Sunnyvale, CA 4085 (408) 774-3735 http://www.plxtech.com/ EIA-422-A –...
  • Page 4: Table Of Contents

    TABLE OF CONTENTS EIGHT CHANNEL HIGH PERFORMANCE SERIAL I/O PCIe CARD ............. I CHAPTER 1: INTRODUCTION ..........................1 ..........................1 ENERAL ESCRIPTION Z16C30 U ....................2 NIVERSAL ERIAL ONTROLLER FIFO ........................2 RANSMIT ECEIVE ........................3 ULTIPROTOCOL RANSCEIVERS PMC/PCI I .............................
  • Page 5 3.2.3 FIFO S ..............................20 ......................... 20 OARD VS HANNEL EGISTERS ................. 21 ROGRAMMABLE SCILLATOR ROGRAMMABLE LOCKS ............................... 21 LOCK ETUP ....................23 ULTIPROTOCOL RANSCEIVER ONTROL DCE/DTE M ............................23 ............................23 OOPBACK ODES IO ..........................24 ENERAL URPOSE 3.10 ..............................
  • Page 6: Chapter 1: Introduction

    PCIe interface engine, give the PCIe4-SIO8BX2 unsurpassed performance in a serial interface card. The PCIe4-SIO8BX2 is board based on the SIO4BX product line from General Standards Corporation. In order to maintain software compatibility, the PCIe4-SIO8BX2 is implemented as two independent four channel SIO4BX cards.
  • Page 7: Z16C30 Universal Serial Controller

    Figure 1-1 Block Diagram of PCIe4-SIO8BX2 Z16C30 Universal Serial Controller The PCIe4-SIO8BX2 is designed around the Z16C30 Universal Serial Controller( USC). The Z16C30 is a dual channel multi-protocol serial controller which may be software configured to satisfy a wide variety of serial communications applications.
  • Page 8: Multiprotocol Transceivers

    General Standards will also work with customers to fabricate custom cables. Consult factory for details on custom cables. New Features The PCIe4-SIO8BX2 has been enhanced with several new features. These include improved receive data status recording, timestamping of data, flexible FIFO memory allocation, sync/standard channel select, and channel reset. Rev NR...
  • Page 9: Chapter 2: Local Space Registers

    CHAPTER 2: LOCAL SPACE REGISTERS Register Map The SIO8BX2 is accessed through three sets of registers – PCI Registers, USC Registers, and GSC Firmware Registers. The GSC Firmware Registers and USC Registers are referred to as Local Space Registers and are described below.
  • Page 10: Firmware Revision : Local Offset X 0000

    The Firmware ID register provides version information about the firmware on the board. This is useful for technical support to identify the firmware version. See Appendix B for more detailed information. D31:16 HW Board Rev E500 = PCIE4-SIO8BX2 Rev NR D15:8 Firmware Type ID 01 = SIO4B Standard...
  • Page 11: Board Control : Local Offset X 0004

    2.1.2 Board Control: Local Offset 0x0004 The Board Control Register defines the general control functions for the board. Board Reset 1 = Reset all Local Registers and FIFOs to their default values Notes: This bit will automatically clear to 0 following the board reset. Board Reset will NOT reset programmable oscillator.
  • Page 12: Board Status : Local Offset X 0008

    2.1.3 Board Status: Local Offset 0x0008 The Board Status Register gives general overall status for a board. The Board Jumpers (D1:D0) are physical jumpers which can be used to distinguish between boards if multiple SIO4 boards are present in a system. D31:9 RESERVED 0 = Standard...
  • Page 13: Hannel Rx Almost Lags Ocal Ffset 0044

    2.1.6 Channel RX Almost Flags: Local Offset 0x0014 / 0x0024 / 0x0034 / 0x0044 The Rx Almost Flag Registers are used to set the Almost Full and Almost Empty Flags for the transmit FIFOs. The Almost Full/Empty Flags may be read as status bits in the Channel Control/Status Register, and are also edge- triggered interrupt sources to the Interrupt Register.
  • Page 14: Hannel Ync Etect Yte Ocal Ffset 005C

    D7:0 Channel Control Bits 1 = Reset USC ((Pulsed - will automatically clear to ‘0’) Notes:  Following a USC Reset, the next access to the USC must be a write of 0x00 to Local Offset 0x100 (Ch1/2) or Local Offset 0x300 (Ch3/4). ...
  • Page 15: Interrupt Control : Local Offset X 0060

    IRQ14 Channel 4 Rx FIFO Almost Full Rising Edge Falling Edge IRQ15 Channel 4 USC Interrupt Level Hi NONE IRQ16 Channel 1 Tx FIFO Empty Rising Edge Falling Edge IRQ17 Channel 1 Tx FIFO Full Rising Edge Falling Edge IRQ18 Channel 1 Rx FIFO Empty Rising Edge Falling Edge...
  • Page 16: Interrupt Edge /Level : Local Offset X 0068

    Likewise, if a level interrupt is enabled and the interrupt source is true, the interrupt status will be reasserted immediately after clearing the interrupt, and an additional interrupt will be requested. 2.1.10.3 Interrupt Edge/Level: Local Offset 0x0068 The Interrupt Edge Register is an information only (read only) register. This register can be used by a generic driver to determine if the interrupt source is edge or level triggered.
  • Page 17 DCE/DTE Mode When DCE/DTE Mode is enabled (Bit D31=1), this bit set the mode to DCE (1) or DTE (0). DCE/DTE mode changes the direction of the signals at the IO Connector. D27:24 Transceiver Protocol Mode Transceiver Mode RS-422 / RS-485 RESERVED RS-232 RESERVED...
  • Page 18 D14:13 Cable RTS Output Source Output Source Notes USC_CTS field (D10:D9) must equal ‘11’ USC_CTS Output RTS Output Rx FIFO Almost Full ‘0’ Drive low ‘1’ Drive Hi D12:11 USC_DCD Direction Setup  If DCD is used as GPIO, set this field to ‘00’ and set Pin Source Register D16:D15 for output / Pin Status Register D3 for input.
  • Page 19: Hannel In Tatus Ocal Ffset 009C

    D5:3 USC_RxC Source The clock source must agree with the USC Clock setup (USC I/O Control Reg D5:3) to ensure the signal is not being driven by both the USC and the FPGA. USC_RxC Source USC IOCR D2:D0 Setup Prog Clock 000 (Input) Inverted Prog Clock 000 (Input)
  • Page 20: Xac

    2.1.13 Programmable Clock Registers: Local Offset 0x00A0 / 0x00A4 / 0x00A8 / 0xAC The Programmable Clock Registers allow the user to program the on-board programmable oscillator and configure the channel clock post-dividers. As GSC should provide software routines to program the clock, the user should have no need to access these registers.
  • Page 21: Features Register : Local Offset X 00Fc

    2.1.17 Features Register: Local Offset 0x00FC The Features Register allows software to account for added features in the firmware versions. Bits will be assigned as new features are added. See Appendix B for more details. D31:21 RESERVED 1 = No Rx Status byte (std only) D19:D18 10 = Internal Timestamp (std only) D17:D16...
  • Page 22: 8-Bit Usc Register Access

    Since the USC Reset physically resets the USC, the first access to the USC following the reset must reinitialize the BCR in the USC. To complete the Reset process, the user should write data 0x00 to USC base address offset 0x100 or 0x300 to correctly initialize the BCR.
  • Page 23: Usc Register Memory Map

    2.2.4 USC Register Memory Map To access the USC in 8-bit mode, the driver is required to access the upper and lower bytes of each register independently. The odd address byte will access the upper byte of each register (D15-D8), and the even address byte will access the lower byte (D7-D0).
  • Page 24: Chapter 3: Programming

    CHAPTER 3: PROGRAMMING Introduction This section addresses common programming questions when developing an application for the SIO8BX2. General Standards has developed software libraries to simplify application development. These libraries handle many of the low-level issues described below, including Resets, FIFO programming, and DMA. These libraries may default the board to a “standard”...
  • Page 25: Fifo Counters

    The Almost Flag value represents the number of bytes from each respective “end” of the FIFO. The Almost Empty value represents the number of bytes from empty, and the Almost Full value represents the number of bytes from full (NOT the number of bytes from empty). For example, the default value of “0x0007 0007” in the FIFO Almost Register means that the Almost Empty Flag will indicate when the FIFO holds 7 bytes or fewer.
  • Page 26: Programmable Oscillator / Programmable Clocks

    Programmable Oscillator / Programmable Clocks Two On-Board Programmable Oscillator provides each channel with a unique programmable clock source using Cypress Semiconductor CY22393 Programmable Clock generators. In order to program the oscillator, it is necessary to calculate and program values for different clock frequencies. General Standards has developed routines to calculate the necessary values for a given setup and program the clock generator.
  • Page 27 FPGA CLOCK CONTROL ProgClk TxAuxC Source TxAuxC Pin Source Reg D18:D17 RxAuxC / RxAuxC TxAuxC Connector RxAuxC On-Board TxC Source Programmable ProgClk Oscillator Pin Source Reg D8:D6 USC TxC Source Pin Source Reg D2:D0 USC TxC USC TxC USC RxC Source USC RxC USC RxC...
  • Page 28: Multiprotocol Transceiver Control

    cable RxC in the Pin Source Register. Since the FPGA will source both USC clocks, they must be programmed as inputs in the USC I/O Control Register. The preceding suggestions should work for most applications. The default Pin Source Register value should set the clocks to work with both scenarios –...
  • Page 29: General Purpose Io

    location for the transmit signals (TxC, TXD, RTS), and the receive signals will use these same signals as the receive inputs. Since signals are transmitted and received through the transceivers, this mode allows the setup to be verified (including signal polarity) without any external connections. Since external signals could interfere with loopback operation, all cables should be disconnected when running in external loopback mode.
  • Page 30 data, the transfer will complete with invalid results. This is the preferred mode for DMA operation. The FIFO Counters may be used to determine how much space is available for DMA so that the FIFO will never over/under run. Demand Mode DMA requires less software control, but runs the risk of losing data due to an incomplete transfer.
  • Page 31: Chapter 4: Pci Interface

    Since many features of the PCI9056 are not utilized in this design, it is beyond the scope of this document to duplicate the PCI9056 User’s Manual. Only those features, which will clarify areas specific to the PCIe4-SIO8BX2 are detailed here. Please refer to the PCI9056 User’s Manual (See Related Publications) for more detailed information.
  • Page 32: Local Configuration Registers

    4.1.2 Local Configuration Registers The Local Configuration registers give information on the Local side implementation. These include the required memory size. The SIO8BX2 memory size is initialized to 4k bytes. All other Local Registers initialize to the default values described in the PCI9056 Manual. 4.1.3 Runtime Registers The Runtime registers consist of mailbox registers, doorbell registers, and a general-purpose control register.
  • Page 33: Chapter 5: Hardware Configuration

    CHAPTER 5: HARDWARE CONFIGURATION Board Layout The following figure is a drawing of the physical components of the PCIe4-SIO8BX2: RP10 RP12 FPGA FPGA RP15 RP14 RP16 RP18 RP21 RP20 PCIe Bridge PCI Bridge PCI Bridge RP22 RP23 Figure 5-1: Board Layout – Top Board ID Jumper J1 Jumper J1 allows the user to set the Board ID in the GSC Board Status Register (See Section 2.1.3).
  • Page 34: Termination Resistors

    Termination Resistors The PCIE4-SIO8BX2 transceivers have built in termination resistors for RS-422 mode. The built in RS-422 termination is a 120 Ohm parallel termination only on the high speed receiver signals – RxC, RxD, RxAuxC, and DCD. If desired, the internal termination resistors may be disabled by setting bit D30 in the Pin Source Register.
  • Page 35: Interface Connector

    Interface Connector User Interface Connector: 160-pin LFH connector (female) - P2. Part Number: Molex 51-24-1040. Molex 70984-4009 (contacts – qty 4) Mating Connector: Molex 71624-3000 (housing). Pin 80 Pin 41 Pin 1 Pin 40 Pin 68 Pin 120 Pin 121 Pin 160 Pin 81 Note: RS422/RS485 mode or RS232 mode is set on a per channel basis...
  • Page 36 System I/O Connections (cont): Pin 80 Pin 41 Pin 1 Pin 40 Pin 68 Pin 120 Pin 121 Pin 160 Pin 81 Note: RS422/RS485 mode or RS232 mode is set on a per channel basis RS422/RS485 RS232 RS422/RS485 RS232 TXD3+ RXC3+ Unused (Hi) TXC3+...
  • Page 37: Chapter 6: Ordering Options

    (quotes@generalstandards.com). Interface Cable General Standards Corporation can provide an interface cable for the SIO8BX2 board. This standard cable is a twisted pair cable for increased noise immunity. Several standard cable lengths are offered, or the cable length can be custom ordered to the user’s needs. Versions of the cable are available with connectors on both ends, or the cable may be ordered with a single connector to allow the user to adapt the other end for a specific application.
  • Page 38: Appendix A: Programmable Oscillator Programming

    APPENDIX A: PROGRAMMABLE OSCILLATOR PROGRAMMING The 4 on-baord clock frequencies are supplies via two Cypress Semiconductor CY22393 Programmable Clock Generatosr. In order to change the clock frequencies, this chip must be reprogrammed. This document supplies the information necessary to reprogram the on-board clock frequencies. GSC has developed routines to calculate and program the on-board oscillator for a given set of frequencies, so it should not be necessary for the user need the following information –...
  • Page 39 Measure Channel 3 Clock Measure Channel 4 Clock Reserved (Unused) Status Word Readback Control 0 => Status Word D31-D8 == Measured Channel Value 1 => Status Word D31-D8 == Control Word D23-D0 Post-divider set 0 = Ignore D23-D8 during Command Word Write 1 = Set Channel Post-Dividers from D23-D8 during Command Word Write D11-D8 Channel 1 Post-Divider...
  • Page 40 The Internal RAM is defined as follows: RAM Address 0x08–0x57 correspond directly to the CY22393 registers. Address Description Default Value 0x00 – 0x05 Reserved (Unused) 0x00 0x06 Reserved 0xD2 0x07 Reserved 0x08 0x08 ClkA Divisor (Setup0) 0x01 0x09 ClkA Divisor (Setup1) 0x01 0x0A ClkB Divisor (Setup0)
  • Page 41: Appendix B: Firmware Revisions / Features Register

    Firmware Register - Local Offset 0x00 (0xE5000101) D31:16 HW Board Rev 0xE00 PCIe4-SIO8BX2 Rev NR 1 = Features Register Present 1 = Complies with this standard 1 = 66MHz PCI bus interface...
  • Page 42 Feature Register - Local Offset 0xFC (0x00197AF4) D31:D21 Unused 1 - Rx Status byte inserted in FIFO D19:D18 Timestamp 01 = single external clock 10 = single internal clock D17:D16 FPGA Reprogram field 01 = Present 00 = Not Present D15:D14 Configurable FIFO space 01 - Rx/Tx select.

Table of Contents