Skip to main content

Customer Login

This content is for Speedgoat customer only. Log in to see content.

Forgot your password?

Don't have a Speedgoat account? Create an account.

Documentation
CONTENTS

Speedgoat IO342 I2C configuration

Speedgoat IO342 I2C configuration — The Speedgoat IO342 I2C configuration driver block is used to configure the primary and secondary FMC plug-in and the on-board clock oscillator for the FireFly interface

Library

  • >> speedgoatlib_hdlCoder_IO3xx

Description

This Speedgoat block performs the setup and configuration to use the Speedgoat I/O modules. To use this block, open the HDL Coder HDL Workflow Advisor and use it to generate a Simulink Real-Time interface subsystem. This block is located inside the generated Simulink Real-Time interface subsystem. The mask of this block controls the block parameters. Do not edit the parameters directly. The FPGA I/O module block descriptions are for information purposes only. The relevant parameters are promoted to the top level of the generated Simulink Real-Time interface mask.

Ports

This driver block has no input or output ports.

Parameters

FPGA Module Identifier - Unique identifier for FPGA I/O module

1 (default) | n

Enter a unique number. This setting must match the setting of the corresponding design under test (DUT) subsystem generated. This is usually only relevant in a multi-module model, as otherwise the default value 1 is applied. The module identifier ordinal sequence will also correspond to the ordinal sequence of the modules' positions on the PCIe bus. In this way such modules of the same device type can be uniquely identified. For this reason, if multiple modules of the same type are installed in the target machine and one module is not in use within a given model, a bus and slot for the modules which should be used must be specified.

Primary FMC module - defines the primary FMC module

empty (default) | -51 (fmc 424) | -63 (fmc 120)

Depending on the interface used, the appropriate primary FMC module is enabled and configured.

Secondary FMC module - defines the secondary FMC module

empty (default) | -51 (fmc 424) | -63 (fmc 120)

Depending on the interface used, the appropriate secondary FMC module is enabled and configured.

FireFly - enables the FireFly interface

disabled (default) | enabled

If the FireFly interface is selected, the FireFly is enabled and configured.

Target Screen Output

This section contains an overview of the output which may be seen on the target machine's display.

Model Initialization
S-Function

If the amount of passed input arguments for the S-Function is not correct:

  • Wrong number of input arguments passed. 4 arguments are expected.

The cause of this error message could be the mex file missing in the MATLAB path. Please reinstall the HCIP.

Model Start
I2C Core Status Register

If the pointer to the Status register of the I2C core does not have the expected value:

  • IO342 i2c: please tg.reboot the target

After reconfiguration of the FPGA the kernel lost the connection to the PCIe endpoint on the module. This is the cause of the error message. Please warm boot the target machine (tg.reboot) .

I2C Switch Configuration

If a timeout occurs while waiting for the Transmit FIFO Empty interrupt, the following error message will be output:

  • timeout on i2c switch config, while waiting for TXfifo empty

If you see this error message please contact Support.

I2C Core Write Access

If a timeout occurs while waiting for the Transmit FIFO Empty interrupt, the following error message will be output:

  • timeout on i2c switch config, while waiting for TXfifo empty

If you see this error message please contact Support.

I2C Core Read Access

If a timeout occurs while waiting for the Transmit FIFO Empty interrupt, the following error message will be output:

  • timeout on i2c switch config, while waiting for TXfifo empty

If a timeout occurs while waiting for the Receive FIFO Empty interrupt, the following error message will be output:

  • timeout on i2c switch config, while waiting for RXfifo full

If you see one of the above error messages please contact Support.

Configuration of the Primary FMC IO34x-51 Plug-in

During model initialization, the reference clock of the aurora core connected to the QSFP ports must be set to the correct frequency. The following output shows a successful clock configuration after power-up:

  • Selected primary fmc IO34x-51 to initialize.

  • configuring clock generator on primary fmc plug-in:

  • please wait .........................done

If the FMC IO34x-51 has already been configured, reconfiguration is not necessary.

  • Selected primary fmc IO34x-51 to initialize.

  • primary fmc IO34x-51 has already been initialized.

If the expected I2C slave address is not detected, the following error message displays:

  • IO342 device index x: IIC slave address not detected.

The cause of this error could be an incorrectly installed FMC plug-in module. Please ensure that a IO34x-51 is installed on the primary fmc slot of the module selected.

Configuration of the Primary FMC IO34x-63 Plug-in

During model initialization, the clocks of the -63 A/D and D/A must be initialized and then the A/D and D/A communication channels over the JESD204B communication protocol must be trained and tested. The sequence of events which occur may require a few seconds to complete. This sequence of events is only required at the first model run after the performance machine is powered on, and will not be repeated in subsequent model runs.

  • Selected primary fmc IO34x-63 to initialize.

  • ADC0 Failed Bit Alignment! This is normal. The module is checking the uninitialized ADC for alignment, and it of course fails.

  • Configuring clock tree ...

  • Using Internal Reference Oscillator.

  • Configuring ADC Channels ...

  • Configuring DAC Channels ...

If the FMC IO34x-63 has already been configured, reconfiguration is not necessary.

  • Selected primary fmc IO34x-63 to initialize.

  • Primary fmc IO34x-63 has already been initialized.

If the expected I2C slave address is not detected, the following error occurs:

  • IO342 device index x: IIC slave address not detected.

The cause of this error could be an incorrectly installed FMC plug-in module. Please ensure that a IO34x-63 is installed on the secondary fmc slot of the module selected.

Configuration of the Secondary FMC IO34x-51 Plug-in

During model initialization, the reference clock of the Aurora core connected to the QSFP ports must be set to the correct frequency. The following output shows a successful clock configuration after power-up:

  • Selected secondary fmc IO34x-51 to initialize.

  • configuring clock generator on secondary fmc plug-in:

  • please wait .........................done

If the FMC IO34x-51 has already been configured, reconfiguration is not necessary.

  • Selected secondary fmc IO34x-51 to initialize.

  • secondary fmc IO34x-51 has already been initialized.

If the expected I2C slave address is not detected the following error occurs:

  • IO342 device index x: IIC slave address not detected.

The cause of this error could be an incorrectly installed FMC plug-in module. Please ensure that there is a IO34x-51 installed on the secondary fmc slot of the module selected.

Configuration of the Secondary FMC IO34x-63 Plug-in

During model initialization, the clocks of the -63 A/D and D/A must be initialized and then the A/D and D/A communication channels over the JESD204B communication protocol must be trained and tested. The sequence of events which occur may require a few seconds to complete. The sequence of events is only required at the first model run after the performance machine is powered on, and will not be repeated in subsequent model runs.

  • Selected secondary fmc IO34x-63 to initialize.

  • ADC0 Failed Bit Alignment!

    This is normal. The module is checking the uninitialized A/D for alignment, and it of course fails.

  • Configuring clock tree ...

  • Using Internal Reference Oscillator.

  • Configuring ADC Channels ...

  • Configuring DAC Channels ...

If the FMC IO34x-63 has already been configured, reconfiguration is not necessary.

  • Selected secondary fmc IO34x-63 to initialize.

  • secondary fmc IO34x-63 has already been initialized.

If the expected I2C slave address is not detected, the following error occurs:

  • IO342 device index x: IIC slave address not detected.

The cause of this error could be an incorrectly installed FMC plug-in module. Please ensure that there is a IO34x-63 installed on the secondary fmc slot of the module selected.

Polling Mode Initialization

If polling mode is being used, the polling must be registered with the operating system. If there is a conflict with another polling function, or if multiple blocks are attempting to use polling, the following error may occur:

  • Failed Setting DMA Polling Function!

Polling Mode Initialization

If polling mode is being used, the polling must be registered with the operating system. If there is a conflict with another polling function, or if multiple blocks are attempting to use polling, the following error may occur:

  • Failed Setting DMA Polling Function!