APPLICATION NOTE 4113

Guidelines for MAX9257/MAX9258 EV Kit Operation in I²C Mode


Abstract: Evaluating serializer/deserializer (SerDes) components prior to their selection for a desired application is crucial for a successful hardware design. The guidelines provided in this application note allow speedy setup of the MAX9257/MAX9258 EV kit in I²C mode and show step-by-step screen captures of each change to the graphic user interface (GUI). Following these instructions, you should have a setup running in I²C mode very quickly.

The following information provides insight into the test setup that utilizes the full functionality and features of the MAX9257/MAX9258 EV kit. As a specific example, the I²C mode was chosen. Before implementing this mode, follow the general guidelines to power up the EV kit and start the software. This application note assumes that the user is already in possession and familiar with the use of the MAX9257/MAX9258 EV kit. Note that the MAX9257/MAX9258 EV kit is a "by-request-only" EV kit.
  1. Verify that all the jumpers are set in their default positions, which can be seen in Table 1.

    Table 1. MAX9257/MAX9258 EV Kit Jumper Settings
    JU1 Shunted Active-low PD pin is pulled up to VCC by a 1kΩ resistor
    JU2 Open LVDS line-probing connector
    JU3 Open LVDS line-probing connector
    JU4 Shunted Active-low ERROR pin is pulled up to VCCOUT by a 1kΩ resistor
    JU5 Shunted LOCK pin is pulled up to VCCOUT by a 1kΩ resistor
    JU6 Shunted MAX9258 VCC is connected to an on-board LDO +3.3V output
    JU7 Shunted MAX9258 VCCOUT is connected to an on-board LDO +3.3V output
    JU8 Shunted MAX9258 VCCPLL is connected to an on-board LDO +3.3V output
    JU9 Shunted MAX9258 VCCSPLL is connected to an on-board LDO +3.3V output
    JU10 Shunted MAX9258 VCCLVDS is connected to an on-board LDO +3.3V output
    JU11 Shunt across pins 2-3 MAX9258 is powered by an on-board LDO (U4), whose input is +5V
    JU14 Shunt across pins 2-3 LVDS cable line 1 is connected to ground
    JU15 Shunted MAX9258 RX pin is connected to the on-board emulating ECU Rx line
    JU16 Shunted MAX9258 TX pin is connected to the on-board emulating ECU Tx line
    JU17 Shunt across pins 2-3 MAX9257 SCL/TX pin is pulled up to VCCIO
    JU18 Shunt across pins 2-3 MAX9257 SDA/RX pin is pulled up to VCCIO
    JU19 Shunted MAX9257 VCC is connected to an on-board LDO +3.3V output
    JU20 Shunted MAX9257 VCCIO is connected to an on-board LDO +3.3V output
    JU21 Shunted MAX9257 VCCFPLL is connected to an on-board LDO +3.3V output
    JU22 Shunted MAX9257 VCCSPLL is connected to an on-board LDO +3.3V output
    JU23 Shunted MAX9257 VCCLVDS is connected to an on-board LDO +3.3V output
    JU24 Shunt across pins 2-3 J6 connector has one side connected to ground
    JU25 Shunt across pins 2-3 MAX9257 REM pin is connected to ground
    JU26 Shunt across pins 1-2 MAX9257 SCL/TX pin is connected to the on-board emulating camera Rx line
    JU27 Shunt across pins 1-2 MAX9257 SDA/RX pin is connected to the on-board emulating camera Tx line
    JU29 Shunt across pins 2-3 LVDS cable line 1 is connected to ground
    JU30 Open LVDS line-probing connector
    JU31 Open LVDS line-probing connector

  2. Connect a 5V-power supply to the 5V and GND pads on both sides of the EV board (Figure 1). Keep the power turned off until all connections are made and all jumper positions have been verified.

    Figure 1. Setup configuration for lab tests.
    Figure 1. Setup configuration for lab tests.

  3. Connect the JAE cable between J2 and J7.
  4. Connect CH1 of the oscilloscope to J1-37.
  5. Connect CH2 of the oscilloscope to J1-35.
  6. Connect CH3 of the oscilloscope to J5-12.
  7. Connect the USB cable between the PC and J3 (note: not J8).
  8. Start the MAX9257_58 Evaluation Kit Software program by opening its icon in the Start menu.
  9. Click the Yes button when asked if ECU remotely wakes up the MAX9257. The software main window appears as shown in Figure 2.

    Figure 2. The software main window appears when the Yes button is clicked to indicate that the ECU remotely wakes up the MAX9257. Once ECU wakes up MAX9257, TxIN, RxOUT, and CCEN all are high.
    More detailed image
    (PDF)
    Figure 2. The software main window appears when the Yes button is clicked to indicate that the ECU remotely wakes up the MAX9257. Once ECU wakes up MAX9257, TxIN, RxOUT, and CCEN all are high.

  10. Verify that the "EV kit connected." message is displayed on the status bar of the software main window. This indicates the proper connection of the EV kit.
  11. Click the ECU Wakes Up MAX9257 button on the ECU Control page (Figure 3).

    Figure 3. Click the ECU Wakes Up MAX9257 button.
    More detailed image
    (PDF)
    Figure 3. Click the ECU Wakes Up MAX9257 button.

  12. Click the Deserializer MAX9258 tab to navigate to the Deserializer MAX9258 page (Figure 4).

    Figure 4. Navigate to the Deserializer MAX9258 page.
    More detailed image
    (PDF)
    Figure 4. Navigate to the Deserializer MAX9258 page.

  13. Click Read MAX9258 & 9257 button to read all of the MAX9258 and MAX9257 registers.
  14. Set both MAX9258 register 03 ETOCNT and MAX9257 register 03 ETOCNT to 0100 by selecting the ETOCNT dropdown menu and click Write button on the right of Reg03.
  15. Set both MAX9258 register 07 CTO and MAX9257 register 08 CTO to 111 by selecting the CTO dropdown menu and click Write button on the right of Reg07.
  16. Click the Serializer MAX9257 tab to navigate to the Serializer MAX9257 page.
  17. Enable the MAX9257 SEREN bit by selecting the SEREN dropdown menu and click Write button on the right of Reg04. Note that the SEREN window should always be activated whenever there is communication on the link.
  18. Click the Camera Control tab to navigate to the Camera Control page.
  19. Click the Slow Blink D4 button; verify that LED D4 flashes for about five seconds.
  20. Click the Enable PCLK_IN/HSYNC_IN/VSYNC_IN button; verify that LOCK indicator LED D1 turns on. If it turns on, this means that the system is locked.
  21. Use your multichannel oscilloscope to check the waveforms during the evaluation of this board. By setting the trigger accordingly, single transmit/receive sequences and data sent across the link can be observed.
Now that the general functionality of the board has been verified, the EV kit can be put into I²C mode by following the steps below. I²C is a desired mode, as it allows the user to maintain control over all control registers and their contents.

If the camera has an I²C interface, both the MAX9258 and MAX9257 should be configured to work on an I²C interface. Because the onboard emulating camera works on default UART interface, the camera first needs to be switched from its UART interface to its I²C interface. Follow the steps below to access the evaluation board’s I²C interface.
  • Start the program or click the Reset the EVKIT button on the ECU Control page.
  • If the MAX9257 REM is set to high (JU25 shunt is set across pins 1-2), click the ECU Wakes Up MAX9257 button on the ECU Control page. If the MAX9257 REM is set to low (JU25 shunt is set across pins 2-3), skip this step.
  • Navigate to the Deserializer MAX9258 page. Click the Read MAX9258 & 9257 button to refresh the current register values on the GUI. This showcases what were the last-known (or, in case of startup, default) values of the registers.
  • Keep the four checkboxes under the W/R Both 9258&9257 label checked. This allows the SerDes registers to be set up at the same time, allowing the user to eliminate any unwanted discrepancies between SerDes parameter setups.
  • Set tCTO on both MAX9258 and MAX9257 to 64 bits (CTO = 100).
  • Navigate to the Camera Control page; click the Exit UART Mode -> Enter I²C Mode button.
  • Follow the reminder message—move the shunts from JU26/JU27 pins 1-2 to pins 2-3. Click the OK button.
  • Now the camera and the SerDes work on the I²C interface. You can verify proper functionality and emulation of the camera by testing the on/off and fast/slow blinking features of the D4 diode. Control buttons for this are located on the left side of the software. Navigate to any page and exercise the features (e.g., rewriting to the various accessible registers) of the SerDes.
  • The emulating camera’s I²C interface can operate on speeds up to 4.25MHz, which is the same for the MAX9258 and the MAX9257. Before changing the ECU I²C master clock, configure the MAX9258 and the MAX9257 BITRATE register bits properly.
  • Ensure that SEREN is set to Enabled if data is to be transmitted through the link.

Instruments and Components for a Valid Setup to Verify the MAX9257/MAX9258 EV Kit Performance

  • Hewlett-Packard E3620A: Dual 0 to 25V, 0 to 1A Power Supply Source
  • Tektronix TDS 3014: 4-Channel DSO with 100MHz BW, 1.25Gsps Sampling Speed, and Standard 10x Probes
  • Windows® XP-Based PC or Notebook Computer that Supports USB Interfacing
  • 2m JAE-Based Cable (for a Valid Link Between the MAX9257 Serializer and MAX9258 Deserializer)

I²C-Mode Communication with the MAX9257/MAX9258 EV Kit Board

This test program describes the steps to communicate with the EV kit board in I²C mode. For this mode to work or to be set up properly, the system must first be started in UART interface mode. Setting up the MAX9257/MAX9258 requires that the software be set to INTMODE = I²C (make sure to check the box on the right side of the screen to update/write to both of the devices MAX9257 and MAX9258). Writing to the device and conducting a single trigger off the TxIN pin allows capturing the sequence of commands to be written to the device (e.g., setting it up for I²C mode). Figure 5 shows a snapshot of the transmitted (TxIN, CH2) and received (RxIN, CH3) sequence of setting the board up in finite CTO mode, which is the mode that is required to configure the board for I²C mode. Note that all these steps are still conducted in UART mode (JU26 and JU27 shunted across pins 1-2).

Figure 5. Monitoring RxIN and TxIN with a digital oscilloscope (DSO) shows that the data transmitted over the link is received by the MAX9258.
Figure 5. Monitoring RxIN and TxIN with a digital oscilloscope (DSO) shows that the data transmitted over the link is received by the MAX9258.

Once the jumpers have been set, the camera control tab must turn off the UART mode and enter the I²C mode: click on Exit UART Mode -> Enter I²C Mode. For the I²C mode to work properly, the JU26 and JU27 must be shunted across pins 2-3—simply follow the instructions that appear in the software popup window (Figure 6).

Figure 6. Screen directions for proper I²C operation. Make sure that jumpers JU26 and JU27 are shunted to pins 2-3 for I²C mode.
More detailed image
(PDF)
Figure 6. Screen directions for proper I²C operation. Make sure that jumpers JU26 and JU27 are shunted to pins 2-3 for I²C mode.

Now the system has enabled the lower portion of the Camera Control page. As seen in Figure 7, the upper portion of the page is grayed out, reflecting that the UART mode is not enabled, though the I²C mode is.

Figure 7. The upper portion of the Camera Control page is grayed out, indicating that I²C mode is enabled.
More detailed image
(PDF)
Figure 7. The upper portion of the Camera Control page is grayed out, indicating that I²C mode is enabled.

If you click the buttons on the left side for turning on/off and fast/slow blinking D4, thus emulating camera control, you will see that you have full control in I²C mode on the camera side. D4 is located right above the FPGA and close to the microcontroller on the deserializer board.

In order for the link to work properly, you must set up your SerDes and pixel clock links. For test purposes, let us assume we are running the SerDes at a pixel clock rate of 10MHz and a bit resolution of 12 bits (Figures 8 and 9).

Figure 8. Serializer MAX9257 page after setting up all parameters.
More detailed image
(PDF)
Figure 8. Serializer MAX9257 page after setting up all parameters.

Figure 9. Camera Control screen after proper setup.
More detailed image
(PDF)
Figure 9. Camera Control screen after proper setup.

Note that the SerDes screens are similar and, for the purpose of this application note, only the serializer setup screen has been displayed for the camera mode. Follow the same settings for SerDes screens to operate the system properly in camera mode.

This will result in the settings shown in Table 2.

Table 2. Results of Setting Up the SerDes
Page Designator Signal Setting
Camera Control PCLK_IN 10MHz
SerDes Control PRATE 00 (5MHz to 10MHz)
SRATE 01 (100Mbps to 200Mbps)
PWIDTH 001 (12 bits)

Make sure to write all these parameters before enabling the PCLK on the Camera Control page.

Clicking the Enable PCLK_IN/HSYNC_IN/VSYNC_IN button on the Camera Control page displays the screen in Figure 10. This screen shows a typical transmitting sequence for enabling or disabling the PCLK on the Camera Control page. It exists solely for verification purposes and to show how the signals should appear when data is transmitted in I²C mode.

Figure 10. This transmitting sequence illustrates what I²C-mode data looks like when PCLK is enabled.
Figure 10. This transmitting sequence illustrates what I²C-mode data looks like when PCLK is enabled.

Setting up the deserializer properly should result in the Figure 11 screen, which shows details on PRATE, SRATE, and PWIDTH. If triggered on the TxIN pin, writing this information to the deserializer produces the Figure 12 scope screen, which only shows the transmitted information, not the received information.

Figure 11. The MAX9258 deserializer is set up properly.
More detailed image
(PDF)
Figure 11. The MAX9258 deserializer is set up properly.

Figure 12. This scope screen shows the transmitted result of writing the appropriate settings to the MAX9258 deserializer.
Figure 12. This scope screen shows the transmitted result of writing the appropriate settings to the MAX9258 deserializer.

Likewise, setting up the serializer properly should result in the Figure 13 screen that shows details on PRATE, SRATE, and PWIDTH. Note that, for proper/any communications, the SEREN bit needs to be enabled on the serializer. Because the I²C mode provides highly flexible communication with the interface, the SEREN bit can be enabled even later in the setup.

Figure 13. If the display appears as shown here, the MAX9257 serializer is properly set up. The Deserializer MAX9258 screen will need to look similar to this screen in order for the system to operate at its full capacity in camera or I²C mode.
More detailed image
(PDF)
Figure 13. If the display appears as shown here, the MAX9257 serializer is properly set up. The Deserializer MAX9258 screen will need to look similar to this screen in order for the system to operate at its full capacity in camera or I²C mode.

Conclusion

From this point, the user can essentially manipulate the screens/bits/registers as needed. If the MAX9257/MAX9258 become nonresponsive, the system may need a reset. Remember to return to the ECU Control page, click the Reset the EVKIT button, turn off the power supplies, turn them back on, and remotely wake up the MAX9257 again. Start the above procedure again, if you wish to operate in I²C mode. Also remember that you will need to reset the two shunts on jumpers JU26 and JU27, because the board resets in UART mode. The UART mode is required to set up the MAX9257/MAX9258 in I²C mode after proceeding with finite CTO mode (e.g., set the CTO timing to 64 bits in the CTO register for both the serializer and the deserializer).