Hybrid Memory Cube Controller IP Core User Guide - Intel Stratix 10 Beta Version

ID 683854
Date 8/08/2016
Public
Document Table of Contents

2.5.2.2. Adding the External I2C Master Module

The HMC Controller IP core requires that you instantiate an external I2C master module in your design. Your design must include this module to initialize the HMC device to which your IP core connects. Alternatively, you can implement the required initialization sequence with a JTAG master module.

The I2C master module in your system must load the HMC device configuration registers according to the initialization requirements of the specific HMC device in your system.

The HMC specification requires that you set the HMC device REGISTER REQUEST commands register to the value of Init Continue after sending the commands to initialize the HMC. Therefore, the I2C master module must set this register to indicate successful completion of the HMC device configuration register load sequence.

In addition, the I2C master module must provide the following two signals to connect to the HMC Controller IP core:

  • An input signal that accepts requests to load the configuration registers of the HMC device. You must connect this signal to the HMC Controller IP core i2c_load_registers output signal. If multiple HMC Controller IP cores connect to the same HMC device, you must connect this input signal to the AND of the individual HMC Controller IP core i2c_load_registers output signals. You must provide the AND function.
  • An output signal that indicates successful completion of the configuration register load sequence. The I2C master must implement this signal with the following behavior:
    1. Deassert this signal when coming out of reset.
    2. Assert this signal after writing Init Continue to the HMC device REGISTER REQUEST commands register.
    3. Deassert this signal in response to the falling edge of the input signal described above.
    You must connect this signal to the HMC Controller IP core i2c_registers_loaded input signal. If multiple HMC Controller IP cores connect to the same HMC device, you must connect this signal to the i2c_registers_loaded signals of all of the HMC Controller IP cores.

For information about the required register configuration sequence, you must refer to the data sheet of the HMC device that is connected to your HMC Controller IP core. Recall that the HMC Controller IP core operates in Response Open Loop Mode, and you must configure the HMC device to communicate correctly with the IP core in this mode. In addition, because the IP core does not support the TGA field, you must configure the HMC device to respond to every non-posted Write request with a Write response packet.