5.2. Dual Configuration Intel FPGA IP Core Parameters....................................................64
6. Unique Chip ID Intel FPGA IP Core References............................................................. 65
6.1. Unique Chip ID Intel FPGA IP Core Ports................................................................. 65
7. Document Revision History for the Intel MAX 10 FPGA Configuration User Guide......... 66
Send Feedback
Intel® MAX® 10 FPGA Configuration User Guide
3
UG-M10CONFIG | 2020.11.05
Send Feedback
1. Intel® MAX® 10 FPGA Configuration Overview
You can configure Intel® MAX® 10 configuration RAM (CRAM) using the following
configuration schemes:
•JTAG configuration—using JTAG interface.
•Internal configuration—using internal flash.
Supported Configuration Features
Table 1.Configuration Schemes and Features Supported by Intel MAX 10 Devices
Configuration Scheme
JTAG configuration———Yes
Internal configurationYesYesYesYes
Remote System
Upgrade
CompressionDesign SecuritySEU Mitigation
Related IP Cores
•Dual Configuration Intel FPGA IP—used in the remote system upgrade feature.
•Unique Chip ID Intel FPGA IP—retrieves the chip ID of Intel MAX 10 devices.
Related Information
•Intel MAX 10 FPGA Configuration Schemes and Features on page 5
Provides information about the configuration schemes and features.
•Intel MAX 10 FPGA Configuration Design Guidelines on page 32
Provides information about using the configuration schemes and features.
•Unique Chip ID Intel FPGA IP Core on page 21
•Dual Configuration Intel FPGA IP Core on page 19
Intel Corporation. All rights reserved. Agilex, Altera, Arria, Cyclone, Enpirion, Intel, the Intel logo, MAX, Nios,
Quartus and Stratix words and logos are trademarks of Intel Corporation or its subsidiaries in the U.S. and/or
other countries. Intel warrants performance of its FPGA and semiconductor products to current specifications in
accordance with Intel's standard warranty, but reserves the right to make changes to any products and services
at any time without notice. Intel assumes no responsibility or liability arising out of the application or use of any
information, product, or service described herein except as expressly agreed to in writing by Intel. Intel
customers are advised to obtain the latest version of device specifications before relying on any published
information and before placing orders for products or services.
*Other names and brands may be claimed as the property of others.
ISO
9001:2015
Registered
CRAM
Intel MAX 10 Device
JTAG In-System Programming
Configuration
Flash Memory
Configuration Data
Internal
Configuration
JTAG Configuration
.sof
.pof
UG-M10CONFIG | 2020.11.05
Send Feedback
2. Intel MAX 10 FPGA Configuration Schemes and
Features
2.1. Configuration Schemes
Figure 1.High-Level Overview of JTAG Configuration and Internal Configuration for
Intel MAX 10 Devices
2.1.1. JTAG Configuration
In Intel MAX 10 devices, JTAG instructions take precedence over the internal
configuration scheme.
Using the JTAG configuration scheme, you can directly configure the device CRAM
through the JTAG interface—TDI, TDO, TMS, and TCK pins. The Intel Quartus
software automatically generates an SRAM Object File (.sof). You can program
the .sof using a download cable with the Intel Quartus Prime software programmer.
Related Information
Configuring Intel MAX 10 Devices using JTAG Configuration on page 33
Provides more information about JTAG configuration using download cable with
Intel Quartus Prime software programmer.
2.1.1.1. JTAG Pins
Table 2.JTAG Pin
PinFunctionDescription
TDI
Intel Corporation. All rights reserved. Agilex, Altera, Arria, Cyclone, Enpirion, Intel, the Intel logo, MAX, Nios,
Quartus and Stratix words and logos are trademarks of Intel Corporation or its subsidiaries in the U.S. and/or
other countries. Intel warrants performance of its FPGA and semiconductor products to current specifications in
accordance with Intel's standard warranty, but reserves the right to make changes to any products and services
at any time without notice. Intel assumes no responsibility or liability arising out of the application or use of any
information, product, or service described herein except as expressly agreed to in writing by Intel. Intel
customers are advised to obtain the latest version of device specifications before relying on any published
information and before placing orders for products or services.
*Other names and brands may be claimed as the property of others.
Serial input pin for:•
TDI is sampled on the rising edge of TCK
•
TDI pins have internal weak pull-up resistors.
®
Prime
continued...
ISO
9001:2015
Registered
2. Intel MAX 10 FPGA Configuration Schemes and Features
UG-M10CONFIG | 2020.11.05
PinFunctionDescription
• instructions
• boundary-scan test (BST) data
• programming data
TDO
TMS
TCK
Serial output pin for:
• instructions
• boundary-scan test data
• programming data
Input pin that provides the control signal to
determine the transitions of the TAP
controller state machine.
Clock input to the BST circuitry.—
•
TDO is sampled on the falling edge of TCK
• The pin is tri-stated if data is not shifted out of the
device.
•
TMS is sampled on the rising edge of TCK
•
TMS pins have internal weak pull-up resistors.
All the JTAG pins are powered by the V
1B. In JTAG mode, the I/O pins support the
CCIO
LVTTL/LVCMOS 3.3-1.5V standards.
Related Information
•Intel MAX 10 Device Datasheet
Provides more information about supported I/O standards in Intel MAX 10
devices.
•Guidelines: Dual-Purpose Configuration Pin on page 32
•Enabling Dual-Purpose Pin on page 33
2.1.2. Internal Configuration
You need to program the configuration data into the configuration flash memory (CFM)
before internal configuration can take place. The configuration data to be written to
CFM will be part of the programmer object file (.pof). Using JTAG In-System
Programming (ISP), you can program the .pof into the internal flash.
During internal configuration, Intel MAX 10 devices load the CRAM with configuration
data from the CFM.
2.1.2.1. Internal Configuration Modes
Table 3.Supported Internal Configuration Modes Based on Intel MAX 10 Feature
Options
Intel MAX 10 Feature OptionsSupported Internal Configuration Mode
Compact
Flash and Analog
• Single Compressed Image
• Single Uncompressed Image
• Dual Compressed Images
• Single Compressed Image
• Single Compressed Image with Memory Initialization
• Single Uncompressed Image
• Single Uncompressed Image with Memory Initialization
Note:
In dual compressed images mode, you can use the CONFIG_SEL pin to select the
configuration image.
Single Uncompressed Image
with Memory Initialization
Single Compressed Image
with Memory Initialization
Single Compressed Image
Compressed
Image 0
Compressed
Image 0
Uncompressed Image 0 with Memory Initialization
Compressed Image 0 with Memory Initialization
Uncompressed Image 0
Compressed Image 1
Additional UFM
UFM
UFM
UFM
UFM
UFMAdditional UFM
Internal Configuration
Mode
2. Intel MAX 10 FPGA Configuration Schemes and Features
UG-M10CONFIG | 2020.11.05
Related Information
•Configuring Intel MAX 10 Devices using Internal Configuration on page 37
•Remote System Upgrade on page 13
2.1.2.2. Configuration Flash Memory
The CFM is a non-volatile internal flash that is used to store configuration images. The
CFM may store up to two compressed configuration images, depending on the
compression and the Intel MAX 10 devices. The compression ratio for the configuration
image should be at least 30% for the device to be able store two configuration
images.
Related Information
Configuration Flash Memory Permissions on page 23
2.1.2.2.1. Configuration Flash Memory Sectors
All CFM in Intel MAX 10 devices consist of three sectors, CFM0, CFM1, and CFM2
except for the 10M02. The sectors are programmed differently depending on the
internal configuration mode you select.
The 10M02 device consists of only CFM0. The CFM0 sector in 10M02 devices is
programmed similarly when you select single compressed image or single
uncompressed image.
Figure 2.Configuration Flash Memory Sectors Utilization for all Intel MAX 10 with
Analog and Flash Feature Options
Unutilized CFM1 and CFM2 sectors can be used for additional user flash memory (UFM).
Related Information
CFM and UFM Array Size
Provides more information about UFM and CFM sector sizes.
Send Feedback
Intel® MAX® 10 FPGA Configuration User Guide
7
2. Intel MAX 10 FPGA Configuration Schemes and Features
UG-M10CONFIG | 2020.11.05
2.1.2.2.2. Configuration Flash Memory Programming Time
Table 4.Configuration Flash Memory Programming Time for Sectors in Intel MAX 10
Devices
Note: The programming time reflects JTAG interface programming time only without any system
Device
(1)
10M02
10M04 and 10M086.54.611.1
10M1612.08.920.8
10M2516.412.629.0
10M40 and 10M5030.222.752.9
overhead. It does not reflect the actual programming time that you face. To compensate the
system overhead, Intel Quartus Prime Programmer is enhanced to utilize flash parallel mode
during device programming for Intel MAX 10 10M04/08/16/25/40/50 devices. The 10M02
device does not support flash parallel mode, you may experience a relatively slow
programming time if compare to other device.
In-System Programming Time (s)
CFM2CFM1CFM0
——5.4
2.1.2.3. In-System Programming
You can program the internal flash including the CFM of Intel MAX 10 devices with ISP
through industry standard IEEE 1149.1 JTAG interface. ISP offers the capability to
program, erase, and verify the CFM. The JTAG circuitry and ISP instructions for Intel
MAX 10 devices are compliant to the IEEE-1532-2002 programming specification.
During ISP, the Intel MAX 10 receives the IEEE Std. 1532 instructions, addresses, and
data through the TDI input pin. Data is shifted out through the TDO output pin and
compared with the expected data.
The following are the generic flow of an ISP operation:
1. Check ID—the JTAG ID is checked before any program or verify process. The time
required to read this JTAG ID is relatively small compared to the overall
programming time.
2. Enter ISP—ensures the I/O pins transition smoothly from user mode to the ISP
mode.
3. Sector Erase—shifting in the address and instruction to erase the device and
applying erase pulses.
4. Program—shifting in the address, data, and program instructions and generating
the program pulse to program the flash cells. This process is repeated for each
address in the internal flash sector.
5. Verify—shifting in addresses, applying the verify instruction to generate the read
pulse, and shifting out the data for comparison. This process is repeated for each
internal flash address.
6. Exit ISP—ensures that the I/O pins transition smoothly from the ISP mode to the
user mode.
(1)
The CFM0 programming time for the 10M02SCU324 device is 11.1 s.
Intel® MAX® 10 FPGA Configuration User Guide
8
Send Feedback
2. Intel MAX 10 FPGA Configuration Schemes and Features
UG-M10CONFIG | 2020.11.05
You can also use the Intel Quartus Prime Programmer to program the CFM.
Related Information
Programming .pof into Internal Flash on page 41
Provides the steps to program the .pof using Intel Quartus Prime Programmer.
2.1.2.3.1. ISP Clamp
When a normal ISP operation begins, all I/O pins are tri-stated. For situations when
the I/O pins of the device should not be tri-stated when the device is in ISP operation,
you can use the ISP clamp feature.
When the ISP clamp feature is used, you can set the I/O pins to tri-state, high, low, or
sample and sustain. The Intel Quartus Prime software determines the values to be
scanned into the boundary-scan registers of each I/O pin, based on your settings. This
will determine the state of the pins to be clamped to when the device programming is
in progress.
Before clamping the I/O pins, the SAMPLE/PRELOAD JTAG instruction is first executed
to load the appropriate values to the boundary-scan registers. After loading the
boundary-scan registers with the appropriate values, the EXTEST instruction is
executed to clamp the I/O pins to the specific values loaded into the boundary-scan
registers during SAMPLE/PRELOAD.
If you choose to sample the existing state of a pin and hold the pin to that state when
the device enters ISP clamp mode, you must ensure that the signal is in steady state.
A steady state signal is needed because you cannot control the sample set-up time as
it depends on the TCK frequency as well as the download cable and software. You
might not capture the correct value when sampling a signal that toggles or is not
static for long periods of time.
Related Information
Implementing ISP Clamp in Intel Quartus Prime Software on page 42
2.1.2.3.2. Real-Time ISP
In a normal ISP operation, to update the internal flash with a new design image, the
device exits from user mode and all I/O pins remain tri-stated. After the device
completes programing the new design image, it resets and enters user mode.
The real-time ISP feature updates the internal flash with a new design image while
operating in user mode. During the internal flash programming, the device continues
to operate using the existing design. After the new design image programming
process completes, the device will not reset. The new design image update only takes
effect in the next reconfiguration cycle.
Send Feedback
Intel® MAX® 10 FPGA Configuration User Guide
9
2. Intel MAX 10 FPGA Configuration Schemes and Features
UG-M10CONFIG | 2020.11.05
2.1.2.3.3. ISP and Real-Time ISP Instructions
Table 5.ISP and Real-Time ISP Instructions for Intel MAX 10 Devices
InstructionInstruction CodeDescription
CONFIG_IO00 0000 1101
PULSE_NCONFIG00 0000 0001Emulates pulsing the nCONFIG pin low to trigger reconfiguration
ISC_ENABLE_HIZ
ISC_ENABLE_CLAMP
(2)
(2)
10 1100 1100
10 0011 0011
ISC_DISABLE10 0000 0001
(3)
(3)
(3)
(3)
10 1111 0100
10 0001 0000
10 0000 0011
10 1111 0010
ISC_PROGRAM
ISC_NOOP
ISC_ADDRESS_SHIFT
ISC_ERASE
• Allows I/O reconfiguration through JTAG ports using the
IOCSR for JTAG testing. This is executed after or during
configurations.
•
nSTATUS pin must go high before you can issue the
CONFIG_IO instruction.
even though the physical pin is unaffected.
• Puts the device in ISP mode, tri-states all I/O pins, and drives
all core drivers, logic, and registers.
•
Device remains in the ISP mode until the ISC_DISABLE
instruction is loaded and updated.
•
The ISC_ENABLE instruction is a mandatory instruction. This
requirement is met by the ISC_ENABLE_CLAMP or
ISC_ENABLE_HIZ instruction.
• Puts the device in ISP mode and forces all I/O pins to follow
the contents of the JTAG boundary-scan register.
• When this instruction is activated, all core drivers, logics, and
registers are frozen. The I/O pins remain clamped until the
device exits ISP mode successfully.
• Brings the device out of ISP mode.
•
Successful completion of the ISC_DISABLE instruction
happens immediately after waiting 200 µs in the Run-Test/Idle
state.
Sets the device up for in-system programming. Programming
occurs in the run-test or idle state.
• Sets the device to a no-operation mode without leaving the
ISP mode and targets the ISC_Default register.
• Use when:
— two or more ISP-compliant devices are being accessed in
ISP mode and;
— a subset of the devices perform some instructions while
other more complex devices are completing extra steps in
a given process.
Sets the device up to load the flash address. It targets the
ISC_Address register, which is the flash address register.
• Sets the device up to erase the internal flash.
•
Issue after ISC_ADDRESS_SHIFT instruction.
continued...
(2)
Do not issue the ISC_ENABLE_HIZ and ISC_ENABLE_CLAMP instructions from the core logic.
(3)
All ISP and real-time ISP instructions are disabled when the device is not in the ISP or realtime ISP mode, except for the enabling and disabling instructions.
Intel® MAX® 10 FPGA Configuration User Guide
10
Send Feedback
2. Intel MAX 10 FPGA Configuration Schemes and Features
UG-M10CONFIG | 2020.11.05
InstructionInstruction CodeDescription
ISC_READ
(3)
10 0000 0101
BGP_ENABLE01 1001 1001
BGP_DISABLE01 0110 0110
• Sets the device up for verifying the internal flash under
normal user bias conditions.
•
The ISC_READ instruction supports explicit addressing and
auto-increment, also known as the Burst mode.
• Sets the device to the real-time ISP mode.
• Allows access to the internal flash configuration sector while
the device is still in user mode.
• Brings the device out of the real-time ISP mode.
• The device has to exit the real-time ISP mode using the
BGP_DISABLE instruction after it is interrupted by
reconfiguration.
Caution: Do not use unsupported JTAG instructions. It will put the device into an unknown state
and requires a power cycle to recover the operation.
2.1.2.4. Initialization Configuration Bits
Initialization Configuration Bits (ICB) stores the configuration feature settings of the
Intel MAX 10 device. You can set the ICB settings in the Convert Programming File
tool.
Table 6.ICB Values and Descriptions for Intel MAX 10 Devices
Configuration SettingsDescriptionDefault State/
Set I/O to weak pull-up prior usermode • Enable: Sets I/O to weak pull-up during device
Configure device from CFM0 only.Enable:
Use secondary image ISP data as
default setting when available.
Verify ProtectTo disable or enable the Verify Protect feature.Disable
Allow encrypted POF onlyIf enabled, configuration error will occur if
configuration.
• Disable: Tri-states I/O
•
CONFIG_SEL pin setting is disabled.
• Device automatically loads image 0.
• Device does not load image 1 if image 0 fails.
Disable:
• Device automatically loads secondary image if initial
image fails.
Select ISP data from initial or secondary image to include in
the POF.
• Disable: Use ISP data from initial image
• Enable: Use ISP data from secondary image
ISP data contains the information about state of the pin
during ISP. This can be either tri-state with weak pull-up or
clamp the I/O state. You can set the ISP clamp through
Device and Pin Option, or Pin Assignment tool.
unencrypted .pof is used.
Value
Enable
Disable
Disable
Disable
continued...
Send Feedback
Intel® MAX® 10 FPGA Configuration User Guide
11
2. Intel MAX 10 FPGA Configuration Schemes and Features
UG-M10CONFIG | 2020.11.05
Configuration SettingsDescriptionDefault State/
JTAG Secure
Enable WatchdogTo disable or enable the watchdog timer for remote system
Watchdog valueTo set the watchdog timer value for remote system
(4)
To disable or enable the JTAG Secure feature.Disable
upgrade.
upgrade.
Related Information
•.pof and ICB Settings on page 38
•Verify Protect on page 22
•JTAG Secure Mode on page 22
•ISP and Real-Time ISP Instructions on page 10
•User Watchdog Timer on page 18
•Generating .pof using Convert Programming Files on page 39
Provides more information about setting the ICB during .pof generation using
Convert Programming File.
2.1.2.5. Internal Configuration Time
The internal configuration time measurement is from the rising edge of nSTATUS
signal to the rising edge of CONF_DONE signal.
Value
Enable
0xFFF
(5)
Table 7.Internal Configuration Time for Intel MAX 10 Devices (Uncompressed .rbf)
DeviceInternal Configuration Time (ms)
UnencryptedEncrypted
Without Memory
Initialization
MinMaxMinMaxMinMaxMinMax
10M02/
10M02SCU324
10M040.62.71.03.45.015.06.819.6
10M080.62.71.03.45.015.06.819.6
10M161.13.71.44.59.325.311.731.5
10M251.03.71.34.414.038.116.945.7
10M402.66.93.29.841.5112.151.7139.6
10M502.66.93.29.841.5112.151.7139.6
(4)
The JTAG Secure feature will be disabled by default in Intel Quartus Prime software. To make
0.3/0.61.7/2.7——1.7/5.05.4/15.0——
With Memory
Initialization
Without Memory
Initialization
With Memory
Initialization
this option visible, refer to Generating .pof using Convert Programming Files on page 39 for
more information.
(5)
The watchdog timer value depends on the Intel MAX 10 you are using. Refer to the Watchdog
Timer section for more information.
Intel® MAX® 10 FPGA Configuration User Guide
12
Send Feedback
2. Intel MAX 10 FPGA Configuration Schemes and Features
UG-M10CONFIG | 2020.11.05
Table 8.Internal Configuration Time for Intel MAX 10 Devices (Compressed .rbf)
Compression ratio depends on design complexity. The minimum value is based on the best case (25% of
original .rbf sizes) and the maximum value is based on the typical case (70% of original .rbf sizes).
DeviceInternal Configuration Time (ms)
Unencrypted/Encrypted
Without Memory InitializationWith Memory Initialization
MinMaxMinMax
10M02/10M02SCU3240.3/0.65.2/10.7——
10M040.610.71.013.9
10M080.610.71.013.9
10M161.117.91.422.3
10M251.126.91.432.2
10M402.666.13.282.2
10M502.666.13.282.2
2.2. Configuration Features
2.2.1. Remote System Upgrade
Intel MAX 10 devices support the remote system upgrade feature. By default, the
remote system upgrade feature is enabled when you select the dual compressed
image internal configuration mode.
The remote system upgrade feature in Intel MAX 10 devices offers the following
capabilities:
•Manages remote configuration
•Provides error detection, recovery, and information
There are two methods to access remote system upgrade in Intel MAX 10 devices:
•Dual Configuration Intel FPGA IP core
•User interface
Related Information
•Dual Configuration Intel FPGA IP Core on page 19
•Accessing Remote System Upgrade through User Logic on page 43
•AN 741: Remote System Upgrade for MAX 10 FPGA Devices over UART with the
Nios II Processor
Provides reference design for remote system upgrade in Intel MAX 10 FPGA
devices.
•I2C Remote System Update Example
This example demonstrates a remote system upgrade using the I2C protocol.
Send Feedback
Intel® MAX® 10 FPGA Configuration User Guide
13
Sample CONFIG_SEL pin
Image 0Image 1
CONFIG_SEL=0
CONFIG_SEL=1
Wait for Reconfiguration
Power-up
Reconfiguration
Reconfiguration
First Error Occurs
First Error Occurs
Second Error Occurs
Flow when
Configure device
from CFM0 only
is enabled.
Second Error Occurs
Error Occurs
Reconfiguration
Reconfiguration
Power-up
2. Intel MAX 10 FPGA Configuration Schemes and Features
2.2.1.1. Remote System Upgrade Flow
Both the application configuration images, image 0 and image 1, are stored in the
CFM. The Intel MAX 10 device loads either one of the application configuration image
from the CFM.
Figure 3.Remote System Upgrade Flow for Intel MAX 10 Devices
UG-M10CONFIG | 2020.11.05
The remote system upgrade feature detects errors in the following sequence:
1.
After power-up, the device samples the CONFIG_SEL pin to determine which
application configuration image to load. The CONFIG_SEL pin setting can be
overwritten by the input register of the remote system upgrade circuitry for the
subsequent reconfiguration.
2. If an error occurs, the remote system upgrade feature reverts by loading the other
application configuration image. These errors cause the remote system upgrade
feature to load another application configuration image:
•Internal CRC error
•User watchdog timer time-out
3. Once the revert configuration completes and the device is in user mode, you can
use the remote system upgrade circuitry to query the cause of error and which
application image failed.
4. If a second error occurs, the device waits for a reconfiguration source. If the
Auto-restart configuration after error is enabled, the device will reconfigure
without waiting for any reconfiguration source.
5. Reconfiguration is triggered by the following actions:
Intel® MAX® 10 FPGA Configuration User Guide
14
Send Feedback
Status Register (SR)
Previous
State
Register 2
Bit[31..0]
State
Register 1
Bit[31..0]
Current
State
Logic
Bit[33..0]
Internal Oscillator
Control Register
Bit [38..0]
Logic
Input Register
Bit [38..0]
update
Logic
Bit [40..39]
doutdin
Bit [38..0]
dout
din
capture
Shift Register
clkout
capture
update
Logic
clkin
RU_DIN
RU_SHIFTnLD
RU_CAPTnUPDT
RU_CLK
RU_nRSTIMER
Logic Array
RU
Reconfiguration
State
Machine
User
Watchdog
Timer
RU
Master
State
Machine
timeout
RU_nCONFIGRU_DOUT
Previous
2. Intel MAX 10 FPGA Configuration Schemes and Features
UG-M10CONFIG | 2020.11.05
•
Driving the nSTATUS low externally.
•
Driving the nCONFIG low externally.
•
Driving RU_nCONFIG low.
2.2.1.2. Remote System Upgrade Circuitry
Figure 4.Remote System Upgrade Circuitry
Send Feedback
The remote system upgrade circuitry does the following functions:
•Tracks the current state of configuration
•Monitors all reconfiguration sources
•Provides access to set up the application configuration image
•Returns the device to fallback configuration if an error occurs
•Provides access to the information on the failed application configuration image
Intel® MAX® 10 FPGA Configuration User Guide
15
2. Intel MAX 10 FPGA Configuration Schemes and Features
UG-M10CONFIG | 2020.11.05
2.2.1.2.1. Remote System Upgrade Circuitry Signals
Table 9.Remote System Upgrade Circuitry Signals for Intel MAX 10 Devices
Core Signal NameLogical
Signal
Name
RU_DINregin
RU_DOUTregout
RU_nRSTIMERrsttimer
RU_nCONFIGrconfig
RU_CLKclk
RU_SHIFTnLDshiftnld
RU_CAPTnUPDTcaptnupdt
Input/
Output
Input
Output
Input
Input
Input
Input
Input
Description
Use this signal to write data to the shift register on the rising edge of
RU_CLK. To load data to the shift register, assert RU_SHIFTnLD.
Use this signal to get output data from the shift register. Data is
clocked out on each rising edge of RU_CLK if RU_SHIFTnLD is
asserted.
• Use this signal to reset the user watchdog timer. A falling edge of
this signal triggers a reset of the user watchdog timer.
•
To reset the timer, pulse the RU_nRSTIMER signal for a minimum of
250 ns.
Use this signal to reconfigure the device. Driving this signal low
triggers the device to reconfigure if you enable the remote system
upgrade feature.
The clock to the remote system upgrade circuitry. All registers in this
clock domain are enabled in user mode if you enable the remote
system upgrade. Shift register and input register are positive edge flipflops.
Control signals that determine the mode of remote system upgrade
circuitry.
•
When RU_SHIFTnLD is driven low and RU_CAPTnUPDT is driven
low, the input register is loaded with the contents of the shift
register on the rising edge of RU_CLK.
•
When RU_SHIFTnLD is driven low and RU_CAPTnUPDT is driven
high, the shift register captures values from the input_cs_ps
module on the rising edge of RU_CLK.
•
When RU_SHIFTnLD is driven high, the RU_CAPTnUPDT will be
ignored and the shift register shifts data on each rising edge of
RU_CLK.
Related Information
Intel MAX 10 FPGA Device Datasheet
Provides more information about Remote System Upgrade timing specifications.
2.2.1.2.2. Remote System Upgrade Circuitry Input Control
The remote system upgrade circuitry has three modes of operation.
•Update—loads the values in the shift register into the input register.
•Capture—loads the shift register with data to be shifted out.
•Shift—shifts out data to the user logic.
Intel® MAX® 10 FPGA Configuration User Guide
16
Send Feedback
2. Intel MAX 10 FPGA Configuration Schemes and Features
UG-M10CONFIG | 2020.11.05
Table 10.Control Inputs to the Remote System Upgrade Circuitry
Remote System Upgrade Circuitry Control InputsOperation
RU_SHIFTnLD RU_CAPTnUPDT
00Don't CareDon't CareUpdate
0100CaptureCurrent State
0101Capture
0110Capture
0111Capture
1Don't CareDon't CareDon't CareShift
Shift register
[40]
Shift register
[39]
Mode
The following shows examples of driving the control inputs in the remote system
upgrade circuitry:
•
When you drive RU_SHIFTnLD high to 1’b1, the shift register shifts data on each
rising edge of RU_CLK and RU_CAPTnUPDT has no function.
•
When you drive both RU_SHIFTnLD and RU_CAPTnUPDT low to 1’b0, the input
register is loaded with the contents of the shift register on the rising edge of
RU_CLK.
•
When you drive RU_SHIFTnLD low to 1’b0 and RU_CAPTnUPDT high to 1’b1, the
shift register captures values on the rising edge of RU_DCLK.
Input Settings for Registers
Shift
Register[38:0]
Shift Register
[38:0]
{8’b0, Previous
State
Application1}
{8’b0, Previous
State
Application2}
Input
Register[38:0]
{ru_din, Shift
Register
[38:1]}
Input
Register[38:0]
Shift Register
[38:0]
Input
Register[38:0]
Input
Register[38:0]
Input
Register[38:0]
Input
Register[38:0]
Input
Register[38:0]
2.2.1.2.3. Remote System Upgrade Input Register
Table 11.Remote System Upgrade Input Register for Intel MAX 10 Devices
BitsNameDescription
38:14Reserved
13
12
11:0Reserved
Send Feedback
ru_config_sel
ru_config_sel_overwrit
e
Reserved—set to 0.
• 0: Load configuration image 0
• 1: Load configuration image 1
This bit will only work if the ru_config_sel_overwrite bit is set to 1.
•
0: Disable overwrite CONFIG_SEL pin
•
1: Enable overwrite CONFIG_SEL pin
Reserved—set to 0.
Intel® MAX® 10 FPGA Configuration User Guide
17
2. Intel MAX 10 FPGA Configuration Schemes and Features
UG-M10CONFIG | 2020.11.05
2.2.1.2.4. Remote System Upgrade Status Registers
Table 12.Remote System Upgrade Status Register—Current State Logic Bit for Intel
MAX 10 Devices
BitsNameDescription
33:30
29
28:0
msm_cs
ru_wd_en
wd_timeout_value
The current state of the master state machine (MSM).
The current state of the enabled user watchdog timer. The default state is active
high.
The current, entire 29-bit watchdog time-out value.
Table 13.Remote System Upgrade Status Register—Previous State Bit for Intel MAX 10
Devices
BitsNameDescription
31
30
29
28
27:26
25:22
21:0
nconfig
crcerror
nstatus
wdtimer
An active high field that describes the reconfiguration sources which caused the
Intel MAX 10 device to leave the previous application configuration. In the event
of a tie, the higher bit order takes precedence. For example, if the nconfig and
the ru_nconfig triggered at the same time, the nconfig takes precedence
over the ru_nconfig.
ReservedReserved—set to 0.
msm_cs
The state of the MSM when a reconfiguration event occurred. The reconfiguration
will cause the device to leave the previous application configuration.
ReservedReserved—set to 0.
Related Information
Dual Configuration Intel FPGA IP Core Avalon Memory-Mapped Address Map on page
62
2.2.1.2.5. Master State Machine
The master state machine (MSM) tracks current configuration mode and enables the
user watchdog timer.
Table 14.Remote System Upgrade Master State Machine Current State Descriptions for
Intel MAX 10 Devices
msm_cs Values
0010
0011
0100
0101
Image 0 is being loaded.
Image 1 is being loaded after a revert in application image happens.
Image 1 is being loaded.
Image 0 is being loaded after a revert in application image happens.
State Description
2.2.1.3. User Watchdog Timer
The user watchdog timer prevents a faulty application configuration from stalling the
device indefinitely. You can use the timer to detect functional errors when an
application configuration is successfully loaded into the device.
Intel® MAX® 10 FPGA Configuration User Guide
18
Send Feedback
Dual
Configuration
clk
nreset
avmm_rcv_address[2..0]
avmm_rcv_read
avmm_rcv_writedata[31..0]
avmm_rcv_write
avmm_rcv_readdata[31..0]
2. Intel MAX 10 FPGA Configuration Schemes and Features
UG-M10CONFIG | 2020.11.05
The counter is 29 bits wide and has a maximum count value of 229. When specifying
the user watchdog timer value, specify only the most significant 12 bits. The
granularity of the timer setting is 217 cycles. The cycle time is based on the frequency
of the user watchdog timer internal oscillator. Depending on the counter and the
internal oscillator of the device, you can set the cycle time from 9 ms to 244 s.
Figure 5.Watchdog Timer Formula for Intel MAX 10 Devices
The timer begins counting as soon as the application configuration enters user mode.
When the timer expires, the remote system upgrade circuitry generates a time-out
signal, updates the status register, and triggers the loading of the revert configuration
image. To reset the timer and ensure that the application configuration is valid, pulse
the RU_NRSTIMER continuously for a minimum of 250 ns per reset pulse.
When you enable the watchdog timer, the setting will apply to all images, all images
should contain the soft logic configuration to reset the timer. Application configuration
will reset the control block registers.
Related Information
•User Watchdog Internal Circuitry Timing Specifications
Provides more information about the user watchdog frequency.
•Initialization Configuration Bits on page 11
2.2.1.4. Dual Configuration Intel FPGA IP Core
The Dual Configuration Intel FPGA IP core offers the following capabilities through
Avalon® memory-mapped interface:
•
Asserts RU_nCONFIG to trigger reconfiguration.
•
Asserts RU_nRSTIMER to reset watchdog timer if the watchdog timer is enabled.
•Writes configuration setting to the input register of the remote system upgrade
circuitry.
•Reads information from the remote system upgrade circuitry.
Figure 6.Dual Configuration Intel FPGA IP Core Block Diagram
Related Information
•Dual Configuration Intel FPGA IP Core Avalon Memory-Mapped Address Map on
page 62
Send Feedback
Intel® MAX® 10 FPGA Configuration User Guide
19
•Avalon Interface Specifications
Provides more information about the Avalon memory-mapped interface
specifications applied in Dual Configuration Intel FPGA IP core.
•Instantiating the Dual Configuration Intel FPGA IP Core on page 61
•Dual Configuration Intel FPGA IP Core References on page 62
•Remote System Upgrade on page 13
•AN 741: Remote System Upgrade for MAX 10 FPGA Devices over UART with the
Nios II Processor
Provides reference design for remote system upgrade in Intel MAX 10 FPGA
devices.
•I2C Remote System Update Example
This example demonstrates a remote system upgrade using the I2C protocol.
2.2.2. Configuration Design Security
The Intel MAX 10 design security feature supports the following capabilities:
•Encryption—Built-in encryption standard (AES) to support 128-bit key industry-
standard design security algorithm
•Chip ID—Unique device identification
•JTAG secure mode—limits access to JTAG instructions
•Verify Protect—allows optional disabling of CFM content read-back
2. Intel MAX 10 FPGA Configuration Schemes and Features
UG-M10CONFIG | 2020.11.05
2.2.2.1. AES Encryption Protection
The Intel MAX 10 design security feature provides the following security protection for
your designs:
•Security against copying—the non-volatile key is securely stored in the Intel MAX
10 devices and cannot be read through any interface. Without this key, attacker
will not be able to decrypt the encrypted configuration image.
•Security against reverse engineering—reverse engineering from an encrypted
configuration file is very difficult and time consuming because the file requires
decryption.
•Security against tampering—after you enable the JTAG Secure and Encrypted POF
(EPOF) only, the Intel MAX 10 device can only accept configuration files encrypted
with the same key. Additionally, configuration through the JTAG interface is
blocked.
Related Information
Generating .pof using Convert Programming Files on page 39
2.2.2.1.1. Encryption and Decryption
Intel MAX 10 supports AES encryption. Programming bitstream is encrypted based on
the encryption key that is specified by you. In Intel MAX 10 devices, the key is part of
the ICB settings stored in the internal flash. Hence, the key will be non-volatile but
you can clear/delete the key by a full chip erase the device.
Intel® MAX® 10 FPGA Configuration User Guide
20
Send Feedback
clkindata_valid
chip_id[63..0]reset
Unique Chip ID
2. Intel MAX 10 FPGA Configuration Schemes and Features
UG-M10CONFIG | 2020.11.05
When you use compression with encryption, the configuration file is first compressed,
and then encrypted using the Intel Quartus Prime software. During configuration, the
device first decrypts, and then decompresses the configuration file.
The header and I/O configuration shift register (IOCSR) data will not be encrypted.
The decryption block is activated after the IOCSR chain is programmed. The
decryption block only decrypts core data and postamble.
Related Information
JTAG Instruction Availability on page 23
2.2.2.2. Unique Chip ID
Unique chip ID provides the following features:
•Identifies your device in your design as part of a security feature to protect your
design from an unauthorized device.
•Provides non-volatile 64-bits unique ID for each Intel MAX 10 device with write
protection.
You can use the Unique Chip ID Intel FPGA IP core to acquire the chip ID of your Intel
MAX 10 device.
Related Information
•Unique Chip ID Intel FPGA IP Core on page 60
•Unique Chip ID Intel FPGA IP Core Ports on page 65
2.2.2.2.1. Unique Chip ID Intel FPGA IP Core
Figure 7.Unique Chip ID Intel FPGA IP Core Block Diagram
At the initial state, the data_valid signal is low because no data is read from the
unique chip ID block. After feeding a clock signal to the clkin input port, the Unique
Chip ID Intel FPGA IP core begins to acquire the chip ID of your device through the
unique chip ID block. After acquiring the chip ID of your device, the Unique Chip ID
Intel FPGA IP core asserts the data_valid signal to indicate that the chip ID value at
the output port is ready for retrieval.
The operation repeats only when you provide another clock signal when the
data_valid signal is low. If the data_valid signal is high when you provide
another clock signal, the operation stops because the chip_id[63..0] output holds
the chip ID of your device.
Send Feedback
A minimum of 67 clock cycles are required for the data_valid signal to go high.
Intel® MAX® 10 FPGA Configuration User Guide
21
Loading...
+ 49 hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.