Stratix® 10 Hard Processor System Technical Reference Manual

ID 683222
Date 8/15/2024
Public
Document Table of Contents

A. Booting and Configuration

This appendix provides an overview on booting of the HPS and FPGA configuration for the Stratix® 10 SoC device.

The Secure Device Manager (SDM) in the FPGA manages the hard processor system (HPS) boot and FPGA configuration of the Stratix® 10 SoC device. Both the HPS boot and FPGA configuration comprise a series of stages that always begins with SDM initialization.

After the Stratix® 10 SoC device is released from power-on-reset (POR), the SDM manages the initial configuration of the device. All configuration and boot source interfaces are connected to the SDM. The SDM determines and enforces the security level on the device, ensuring the bitstream and HPS boot stages originate from a trusted source.

You can program the Stratix® 10 SoC device to configure the FPGA first and then boot the HPS. Alternatively, you can also boot the HPS first and then configure the FPGA core as part of the second-stage boot loader (SSBL) or after the OS boots.

The following documents provide a comprehensive guidance on managing the HPS boot, FPGA configuration and security:

Intel describes configuration schemes from the point-of-view of the FPGA. Stratix® 10 devices support active and passive configuration schemes. In active configuration schemes the FPGA acts as the master and the external memory acts as a slave device. In passive configuration schemes an external host acts as the master and controls configuration. The FPGA acts as the slave device. All Stratix® 10 configuration schemes support design security, and partial reconfiguration. All Stratix® 10 active configuration schemes support remote system update (RSU) with quad SPI flash memory. To implement RSU in passive configuration schemes, an external controller must store and drive the configuration bitstream.

Stratix® 10 devices support the following configuration schemes:

  • Avalon® Streaming ( Avalon® -ST)
  • JTAG
  • Configuration via Protocol (CvP)
  • Active Serial (AS) normal and fast modes

Avalon-ST

The Avalon® -ST configuration scheme is a passive configuration scheme. Avalon® -ST is the fastest configuration scheme for Stratix® 10 devices. Avalon® -ST configuration supports x8, x16, and x32 modes. The x16 and x32 bit modes use general-purpose I/Os (GPIOs) for configuration. The x8 bit mode uses dedicated SDM I/O pins.

Note: The AVST_data[15:0], AVST_data[31:0], AVST_clk, and AVST_valid use dual-purpose GPIOs. You can use these pins as regular I/Os after the device enters user mode.

Avalon® -ST supports backpressure using the AVST_READY and AVST_VALID pins. Because the time to decompress the incoming bitstream varies, backpressure support is necessary to transfer data to the Stratix® 10 device. For more information about the Avalon® -ST refer to the Avalon® Interface Specifications.

JTAG

You can configure the Stratix® 10 device using the dedicated JTAG pins. The JTAG port provides seamless access to many useful tools and functions. In addition to configuring the Stratix® 10, you use the JTAG port for debugging with Signal Tap or the System Console tools.

The JTAG port has the highest priority and overrides the MSEL pin settings. Consequently, you can configure the Stratix® 10 device over JTAG even if the MSEL pins specify a different configuration scheme unless you disabled JTAG for security reasons.

CvP

CvP uses an external PCIe* host device as a Root Port to configure the Stratix® 10 device over the PCIe* link. You can specify up to a x16 PCIe* link. Typically, the bitstream compression ratio and the SDM input buffer data rate, not the PCIe* link width, limit the configuration data rate. Stratix® 10 devices support two CvP modes, CvP initialization and CvP update.

CvP initialization process includes the following two steps:
  1. CvP configures the FPGA periphery image which includes I/O and hard IP blocks, including the PCIe* IP. CvP uses quad SPI memory in AS x4 mode to configure the FPGA fabric. Because the PCIe* IP is in the periphery image, PCIe* link training establishes the PCIe* link of the CvP PCIe* IP before the core fabric configures.
  2. The host device uses the CvP PCIe* link to configure your design in the core fabric.

CvP update mode updates the FPGA core image using the PCIe* link already established from a previous full chip configuration or CvP initialization configuration. After the Stratix® 10 enters user mode, you can use the CvP update mode to reconfigure the FPGA fabric. This mode has the following advantages:

  • Allows to change core algorithms logic blocks.
  • Provides a mechanism for standard updates as a part of a release process.
  • Customizes core processing for different components that are part of a complex system.

    For both CvP initialization and CvP update modes, the maximum data rate depends on the PCIe* generation and number of lanes.

For Stratix® 10 SoC devices, CvP is only supported in FPGA configuration first mode.

For more information refer to the Stratix® 10 Configuration via Protocol (CvP) Implementation User Guide.

AS Normal Mode

Active Serial x4 or AS x4 or Quad SPI is an active configuration scheme that supports flash memories capable of three- and four-byte addressing. Upon power up, the SDM boots from a boot ROM which uses three-byte addressing to load the configuration firmware from the Quad SPI flash. After the configuration firmware loads, the Quad SPI flash operates using four-byte addressing for the rest of the configuration process. This mode supports Intel's serial flash configuration memory solution for the following third-party flash devices:

  • Micron MT25QU128, MT25QU256, MT25QU512, MT25QU01G, MT25QU02G
  • Macronix MX25U128, MX25U256, MX25U512, MX66U512, MX66U1G, MX66U2G

Refer to the Supported Flash Devices for Stratix® 10 Devices for complete list of supported flash devices.

AS Fast Mode

The only difference between AS normal mode and fast mode is that this mode does not delay for 10 ms before beginning configuration. Use this mode to meet the 100 ms of power up requirement for PCIe* or for other systems with strict timing requirements.

In AS fast mode, the power-on sequence must ensure that the quad SPI flash memory is out of reset before the SDM because the Stratix® 10 device accesses flash memory immediately after exiting reset. The power supply must be able to provide an equally fast ramp up for the Stratix® 10 device and the external AS x4 flash devices. Failing to meet this requirement causes the SDM to report that the memory is missing. Consequently, configuration fails.

Refer to the Stratix® 10 Device Family Pin Connection Guidelines and AN692: Power Sequencing Considerations for Cyclone® 10 GX, Arria® 10, and Stratix® 10 Devices for additional details.