******************************************************************************* ** Copyright © 2008, Xilinx, Inc. ** This design is confidential and proprietary of Xilinx, Inc. All Rights Reserved. ******************************************************************************* ** ____ ____ ** / /\/ / ** /___/ \ / Vendor: Xilinx ** \ \ \/ Version: 1.0 ** \ \ Filename: iic_sfp_readme.txt ** / / ** /___/ /\ ** \ \ / \ ** \___\/\___\ ** **Device: **Purpose: **Reference: ** ******************************************************************************* ** ** Disclaimer: LIMITED WARRANTY AND DISCLAIMER. These designs are ** provided to you "as is." Xilinx and its licensors make and you ** receive no warranties or conditions, express, implied, ** statutory or otherwise, and Xilinx specifically disclaims any ** implied warranties of merchantability, noninfringement, or ** fitness for a particular purpose. Xilinx does not warrant that ** the functions contained in these designs will meet your ** requirements, or that the operation of these designs will be ** uninterrupted or error free, or that defects in the Designs ** will be corrected. Furthermore, Xilinx does not warrant or ** make any representations regarding use or the results of the ** use of the designs in terms of correctness, accuracy, ** reliability, or otherwise. ** ** LIMITATION OF LIABILITY. In no event will Xilinx or its ** licensors be liable for any loss of data, lost profits, cost ** or procurement of substitute goods or services, or for any ** special, incidental, consequential, or indirect damages ** arising from the use or operation of the designs or ** accompanying documentation, however caused and on any theory ** of liability. This limitation will apply even if Xilinx ** has been advised of the possibility of such damage. This ** limitation shall apply notwithstanding the failure of the ** essential purpose of any limited remedies herein. ** ******************************************************************************* Application: iic_sfp -------------------- This IIC example consists of a polled mode design which uses the Xilinx IIC peripheral in dynamic mode along with its low-level driver to access the IIC interface of a user supplied SFP module plugged into the ML507 board. The application reads 64 bytes, beginning at offset 0x0, over the IIC bus. The SFP module used in this example was accessible at address 0x50 on the IIC_SCL_SFP, IIC_SDA_SFP IIC chain. Data output from a user supplied SFP module may differ from that shown below. CONFIG Switch Settings: 00010101 1. Connect the Host PC to the ML507 (J1 header) using a PC-IV or Platform USB JTAG cable 2. Connect the Host PC serial port to the ML507 serial port using a null modem cable and launch a terminal program on the Host (eg. TeraTerm) with the settings: 9600 baud, 8-N-1, No flow control 3. Launch XPS and open the ML507 EDK project (ml507_bsb_system.xmp) 4. Launch a Shell window using XPS menu selection: Project > Launch EDK Shell 5. Download bitstream in shell window by typing: impact -batch etc/download.cmd 6. XPS menu selection: Debug > Launch XMD 7. At XMD% prompt type: cd ppc440_0/code 8. At XMD% prompt type: rst 9. At XMD% prompt type: dow iic_sfp.elf 10. At XMD% prompt type: con Serial Port Output: ------------------- IIC Dynamic mode SFP access example - Calling SFP ReadByte Routine BytesRead = 64 ReadBuffer[0] = 03 ReadBuffer[1] = 04 ReadBuffer[2] = 80 ReadBuffer[3] = 01 ReadBuffer[4] = 00 ReadBuffer[5] = 00 ReadBuffer[6] = 00 ReadBuffer[7] = 41 ReadBuffer[8] = 00 ReadBuffer[9] = 80 ReadBuffer[10] = 04 ReadBuffer[11] = 00 ReadBuffer[12] = 19 ReadBuffer[13] = 00 ReadBuffer[14] = 00 ReadBuffer[15] = 00 ReadBuffer[16] = 00 ReadBuffer[17] = 00 ReadBuffer[18] = 00 ReadBuffer[19] = 00 ReadBuffer[20] = 4D ReadBuffer[21] = 6F ReadBuffer[22] = 6C ReadBuffer[23] = 65 ReadBuffer[24] = 78 ReadBuffer[25] = 20 ReadBuffer[26] = 49 ReadBuffer[27] = 6E ReadBuffer[28] = 63 ReadBuffer[29] = 2E ReadBuffer[30] = 20 ReadBuffer[31] = 20 ReadBuffer[32] = 20 ReadBuffer[33] = 20 ReadBuffer[34] = 20 ReadBuffer[35] = 20 ReadBuffer[36] = 00 ReadBuffer[37] = 00 ReadBuffer[38] = 09 ReadBuffer[39] = 3A ReadBuffer[40] = 37 ReadBuffer[41] = 34 ReadBuffer[42] = 37 ReadBuffer[43] = 32 ReadBuffer[44] = 30 ReadBuffer[45] = 2D ReadBuffer[46] = 30 ReadBuffer[47] = 35 ReadBuffer[48] = 30 ReadBuffer[49] = 31 ReadBuffer[50] = 20 ReadBuffer[51] = 20 ReadBuffer[52] = 20 ReadBuffer[53] = 20 ReadBuffer[54] = 20 ReadBuffer[55] = 20 ReadBuffer[56] = 44 ReadBuffer[57] = 20 ReadBuffer[58] = 20 ReadBuffer[59] = 20 ReadBuffer[60] = 00 ReadBuffer[61] = 00 ReadBuffer[62] = 00 ReadBuffer[63] = 31 Test passed