NG-MEDIUM Radiative Test
Revision | Date | Originator | Comments |
0.1 | 23/09/2016 | Q. Croenne | Creation |
1.0 | 18/11/2016 | Q. Croenne | First campaign configuration tests results |
2.0 | 18/01/2017 | Q. Croenne | Second campaign other tests results |
3.0 | 30/01/2018 | C. Debarge | Third and fourth campaign tests results |
3.1 | 11/07/2018 | C. Debarge | Update SEL test results |
3.2 | 20/07/2018 | C. Debarge | Fix typo in SER results |
3.3 | 23/10/2019 | C. Debarge | Fix Typos |
3.3.1 | 13/02/2020 | C. Debarge | Fix Typos |
Table of Content
- 1 Table of Content
- 2 List of figures
- 3 List of tables
- 4 Introduction
- 5 Device Description
- 6 Test Hardware
- 7 Test
- 7.1 Sample preparation
- 7.2 Irradiation sites
- 7.2.1 Heavy Ions tests
- 7.2.1.1 Ion beam specification
- 7.2.2 Protons tests
- 7.2.2.1 Proton beam specification
- 7.2.1 Heavy Ions tests
- 7.3 Tests of SEU on configuration memory and user memory
- 7.4 Test of SEU on dff_cell_core latches, SET on clock tree
- 7.5 Dynamic test of DFF
- 7.6 Test of configuration memory with CMIC ECC
- 7.7 Single-Event Latchup test
- 8 Results for heavy ions tests
- 9 Results for protons tests
- 10 Weibull fitting
- 11 Conclusion
List of figures
Package Picture
Test Board Picture
Power Supply Monitoring (Latch up)
Configuration SEU cross-section(LET) of DUT6&7
NG_medium configuration SEU cross-section (LET)
SEU config cross-section (LET) with CMIC
DFF SEU and Clock SET cross-section (LET)
Toggle dff error cross-section (LET)
Configuration SEU cross-section (Energy) of DUT #53 and DUT #52
Configuration SEU cross-section (Energy) of merched DUT #53 + DUT #52
Configuration SEU cross-section (Energy) of DUT #52 with CMIC
Configuration SEU cross-section (Energy) of DUT #53 with CMIC
SEU DPRAM cross-section (Energy) of DUT #53 and DUT #52
DFF SEU cross-section (Energy) of DUT #53 and DUT #52
Toggle DRR cross-section (Energy) of DUT #53 and DUT #52 @60MHz
DFF SEU cross-section (Frequency) of DUT #53 and DUT #52 at 230MeV
List of tables
Occurrence of configurable cell in the macro
Occurrence of DFF, clock buffer and matrix
LUT programming and DFF context
DFF configuration/input condition for radiative test
Weibull Fit Parameters for configuration SEU cross-section
Configuration SEU cross-section(LET) of DUT6&7
NG_medium Configuration SEU cross-section(LET)
Weibull Fit Parameters for configuration SEU cross-section
SEU config cross-section (LET) with CMIC
DFF SEU and Clock SET cross-section (LET)
Toggle dff error cross-section (LET)
Configuration SEU cross-section (energy) of DUT #53 and DUT #52
Weibull Fit Parameters for configuration SEU cross-section
Configuration SEU cross-section (energy) for merged DUT #53 + DUT #52
Weibull Fit Parameters for configuration SEU cross-section (for merged DUT #53 and DUT #52)
SEU config cross-section (energy) with CMIC for single error
SEU config cross-section (energy) with CMIC for double error
single SEU DPRAM cross-section (energy)
double SEU DPRAM cross-section (energy)
DFF SEU and Clock SET cross-section (Energy)
Toggle dff error cross-section (energy)
Toggle error cross-section (fabric frequency) energy=230MeV
Weibull parameters for Heavy Ions
Weibull parameters for Protons
Introduction
Scope of the Document
The aim of this document is to define and analyze the Brave FPGA radiation tests.
Applicable and Reference Document
Applicable Documents (ADs)
[AD 1] SINGLE EVENT EFFECTS TEST METHOD AND. GUIDELINES. ESCC Basic Specification No. 25100.
Reference Documents (RDs)
[RD 1] SEL simulation, Space & Defense BL, NG FPGA, V1.0, 24/11/15
[RD 2] ST User Manual - THSENS_B_CMOS065LP_50A_um, 1.0, February 2014
[RD 3] https://creme.isde.vanderbilt.edu/CREME-MC/help/rpp-method
[RD 4] ESA_D50_HardeningStrategy
List of Acronyms and Abbreviations
Acronym / Abbreviation | Definition |
---|---|
LET | Linear Energy transfer (MeV.cm2/mg) |
SEL | Single Event Latchup |
SET | Single Event Transient (Transient due to a particle) |
SEU | Single Event Upset (Bit flip due to a particle strike) |
DFF | Digital Flip Flop |
CLK | Clock |
TFIT | iRoC software to simulate radiation effects |
ECC | Error-Correcting Code |
TMR | Triple modular redundancy |
DUT | Device Under Test |
Definitions
Name | Definition |
---|---|
FABRIC | It is a two-dimensional structure organized in row and column with homogeneous width and height. |
FPGA | It is an Integrated Circuit (IC) designed with configurable elements that enable the programmability of the final function in the field rather than in the semiconductor fab. |
Device Description
Chip architecture
The device is composed of a central fabric embedding the programmable logic, RAM and DSP blocks, and peripheral I/O buffers. The fabric is covered with a grid of high level functional blocks interleaved with interconnect structures providing routing resources to realize the connections within the fabric and to the peripheral I/O buffers. The programmable logic resources are arranged in a hierarchical structure called a TILE with a specific local interconnect network. The I/O buffers are arranged into multiple banks as depicted on the figure below.
FPGA Block
The following table summarize the main functional block of the NG_MEDIUM FPGA.
Device | NG-MEDIUM / NX1H35S |
Capacity |
|
Equivalent System Gates | 4 400 000 |
ASIC Gates | 550 000 |
Modules |
|
Register | 32256 |
LUT-4 | 34272 |
Carry | 8064 |
Embedded RAM | - |
Core RAM Blocks (48K-bits) | 56 |
Core RAM Bits (K = 1024) | 2688 K |
Core Register File (64 x (16 + 6 bits)) | 168 |
Core Register File Bits | 168 K |
Embedded DSP | 112 |
Clocks | 24 |
Embedded Serial Link |
|
SpaceWire 400Mbps | 1 |
I/Os |
|
I/O Banks | 13 |
User I/Os | - |
LGA-625 / CGA-625 / FG-625 | 374 |
MQFP-352 | 192 |
I/O PHY | - |
DDR | 16 |
SpaceWire | 16 |
NG MEDIUM Resources
Configuration Memory access
Access to the FPGA block is done through a synchronous 16-bit peripheral interface to the "Loader" function. The Loader function is controlled by an asynchronous reset signal and a programming clock (nominal 50 MHz), and communicates through a 16-bit bidirectional bus.
Technology
The chip is implemented on ST 65nm technology and has been designed with the SPACE PDK extensions and the hardened SPACE libraries.
The chip manufacturer is ST Microelectronics. The chip has been processed in Crolles facility.
Die Information:
Die size: 15.30mm x 10.96mm
Passivation + metal stack thickness: < 40 µm
Total passivation thickness (SiO + SiN) < 1µm,
Metal stack max (7 metal + Alucap) + InterDiel is 7µm
Therefore the total material thickness to reach active region is less than 8µm.
Package Information:
The chip is packaged in a CLGA-625:
Dimensions: 29mm x 29mm x 3.4mm
Pin count: 625
Ball pitch: 1.0mm
Brave chip power supplies
Core power is 1.2V, I/O power is 2.5V.
VDD1V2 Core supply | 1.2V | +/-10% | FPGA core + PLL digital supply |
VDDLVDS | 2.5V | +/-10% | Spacewire configuration I/Os |
VDD3V3 | 3.3V | +/-10% | Configuration I/Os |
VDDIO | 1.5V / 1.8V / 2.5V / 3.3V | +/-10% | MR I/Os |
VTO | VDDIO/2 | +/-10% | MR I/Os |
VDD1V2A | 1.2V | +/-10% | PLLs Analog supply |
VDD2V5A | 2.5V | +/-10% | 2.5V Analog supply |
VDD2V5S | 2.5V | +/-10% | 2.5V Digital switch supply |
VDDESD | 2.5V | +/-10% | PLLs ESD supply |
Power Supply Description
Test Hardware
The test hardware is composed of two boards:
A control board, used as a base board and supporting the control, supply and interface hardware.
A mezzanine board supporting the device to be tested.
Control board hardware overview
The control board is connected through USB to the host computer, and uses a single 12V main power supply. It is built around a Cypress EzUsb microcontroller and a companion FPGA (Spartan 6SLX25), and integrates:
Its own power supplies from main +12V.
Four latch-up protected power supplies modules providing four target supply rails.
Power supplies voltage and current measurement instrumentation.
Control for heaters to raise device temperature.
Two fabric clock generators.
Multi-chip target board hardware overview
Power supplies
The control board provides 4 latch up protected power supplies for the target board.
The latch up protected power supplies are realized around a 2-amp integrated switching regulator controlled by the central FPGA. Control includes a +/- 10% voltage adjustment using a digital potentiometer. The power supply current, measured across a sense resistor, is applied to a 12-bit, 3 MSp/s serial A/D converter continuously read by the FPGA.
Realized in the FPGA, the trigger conditions and response time are completely programmable, with a minimum response time close to 1 µs.
Upon detection of an abnormal current rise:
The switching regulator is disabled.
The target board is cutoff from the power supply by a MOSFET pass transistor, and another MOSFET transistor switches the supply to a dummy resistive load.
The target board power rail is grounded by another MOSFET transistor.
The latch up protected power supply provides two 50 Ω SMA outputs:
an oscilloscope trigger
a current monitoring output.
Power supply measurements
The NXBASE board features several A/D converters for power supplies supervision:
For each latch up protected supply, 2 high speed SAR A/D converters for the voltage and the current measured across a 0.1Ω sense resistor, with a gain of 10. This last measurement is part of the protection scheme.
A slow, high precision delta-sigma A/D converter (AD7714) with input multiplexors gives a precise measurement of the board local supply voltages, and the latch up protected supplies voltage and current.
All measurements are monitored and displayed on the PC control application. The Figure 6 shows the monitoring of a latch up event.
Latch up is simulated by a MOSFET shorting VDD and GND.
Latch up Control
The latch up control circuitry is fully programmable with the following parameters:
Hold Time | Wait delay to shut off the power supply after over current detection. If the current returns to a value less than threshold during this delay, a false latch up is recorded and power supply stays on. | 10 µs to 655 ms Step = 10 µs |
Off Time | Power on delay after a power off triggered by a latch up. | Software delay |
Detection Threshold | Latch up is detected when current raises and stays above this value for a duration greater than programmed hold time. | 0 to 3,3 A Step = 8 mA |
Cutoff Threshold | Emergency power off when current raises above this value. | 0 to 3,3 A Step = 8 mA |
In addition, the latch up detection is inhibited during power on cycles to prevent any false detection triggered by capacitance charging current or any device induced effects.
Device Temperature Measure
The temperature measure uses the on die thermal sensors which have an accuracy of 4°C.
Control Application
The hardware is connected by a USB 2.0 link to a control PC running one of the application programs:
NxBase: A program with a GUI developed with the Python language with USB, QT4 and matplotlib packages.
NxBase2: A program developed in the Python language with a command line interface and scripting features.
Both programs include:
An API to control the power supplies.
An API to control and monitor the power currents.
An API to control the device temperature.
An API to access the FPGA block.
An API to control the ion beam shutter.
The chosen test software calls API functions to:
Download patterns in the configuration memory.
Open and close the beam shutter.
Read back the configuration memory.
Store and correct potential SEU.
Test
Sample preparation
Delidding of the chip is done, in order to directly irradiate the die.
Irradiation sites
Heavy Ions tests
The heavy ions radiation tests were performed at the Cyclotron Resource Centre located in the Université Catholique de Louvain (UCL) at Louvain-la-Neuve, Belgium.
We used their Heavy Ion Irradiation Facility (HIF).
Ion beam specification
The ion beam cocktail below is used.
M/Q | Ion | DUT energy [MeV] | Range [µm Si] | LET [MeV/mg/cm2] |
---|---|---|---|---|
3.25 | 13 C 4+ | 131 | 269.3 | 1.3 |
3.5 | 14 N 4+ | 122 | 170.8 | 1.9 |
3.14 | 22 Ne 7+ | 238 | 202.0 | 3.3 |
3.37 | 27 Al 8+ | 250 | 131.2 | 5.7 |
3.33 | 40 Ar 12+ | 379 | 120.5 | 10.0 |
3.31 | 53 Ni 18+ | 513 | 107.6 | 16.0 |
3.218 | 58 Ni 18+ | 582 | 100.5 | 20.4 |
3.35 | 84 Kr 25+ | 769 | 94.2 | 32.4 |
3.54 | 124 Xe 35+ | 995 | 73.1 | 62.5 |
High Penetration Ions
The beam flux is variable between a few particles/s.cm2 and 104 particles/s.cm2. The beam flux can be modified from the user station, this is done with injection grids (for a constant attenuation factor) or by inflector bias variations (for intermediates values). The Homogeneity is ± 5 % on a 25 mm diameter.
Protons tests
The proton radiation tests were performed at the Paul Sherrer Institute (PSI) at Villigen, Switzerland.
We used their Heavy Proton Irradiation Facility (PIF).
Proton beam specification
The usable energies span from 6MeV up to 230MeV in a quasi-continuous way. The Homogeneity is ± 5 % on a 25 mm diameter.
Tests of SEU on configuration memory and user memory
The SEU is performed at room temperature, which is measured. Supplies are at their min value (-10%):
VDD1V2 Core supply 1.08V at the input of the chip; since no voltage sensor is used the core supply is 1.045V inside the chip.
VDDIO/VDD3V3 2.97V
SEU test is done up to 106p/cm-2 fluence.
Two tests are done for configuration and user memory.
Cell under test
The table below give the configurable cell under test, the occurrence in the fabric and the number of configuration of each one:
cell name | devices/fabric | number of configuration bit |
---|---|---|
config | 49 792 | 1 |
cross_data_cell2 | 338 688 | 1 |
cross_data_cell_even4 | 1 392 384 | 1 |
cross_data_cell_odd4 | 1 376 256 | 1 |
cross_data_select2 | 112 896 | 2 |
cross_data_select4 | 403 200 | 4 |
cross_sys_cell2/cross_sys_cell_empty2 | 129 408 | 1 |
cross_sys_select2 | 13 464 | 2 |
mem_config | 986 048 | 1 |
fabric |
| 6 138 096 |
Occurrence of configurable cell in the macro
User memory:
56 DPRAM ST_DPHD_2048x24m4_b with or without ECC:
2K (K=1024) * 24 without ECC
2K (K=1024) * 18 bit with ECC (6-bit ECC)
Regfile only with ECC:
64 * (22 bits: 16 bits with 6-bit ECC)
Test protocol for each LET/energy and angles
SEU is detected by loading a chess board pattern (even address: 010101…, odd address: 101010…) for even column and the inverted chess board for odd column. In order to prevent any SEFI caused by the surrounding logic, initialization and read back are performed with the shutter closed. For each flip, the software stores the word address and bit location in the word.
For the DPRAM radiative test, a zero pattern of 18 bit with 6 bit ECC is written at each 24bit word of the DPRAM. A design is mapped in a tile to repeat it for each CGB: this design read each of the 2k (11bit) address at each cycle and correct the previous address. The error that are detected or that can be corrected by ECC are counted. Since this application for test is running under radiation, this is hardened by using TMR on DFF and logic except the bit error at the output of the ECC bloc.
The shutter is controlled by the application software, the test measures the total time when the shutter is open. Since no particles are counted when the shutter is off, the fluence measured with the detector reflects exactly the fluence received by the chip under test.
During SEU test, the supply current is continuously monitored to mitigate any SEL.
A semi static test is performed with SEU accumulation over a period of 30s and memory scrubbing. The sequence is:
Close shutter
Initialize memory with chessboard pattern
Open the shutter and start timer
Every 30s (single sequence):
Close shutter and stop timer
Wait 2s
Check and correct memory (Scrubbing).
Store SEU
Open shutter and restart timer
Stop when 106cm-2 total fluence is reached.
For protons test, not shutter is available. The particle beam is controlled using the provided command software. The sequence as described below. It is repeated until the desired fluence is reached.
Stop the particle beam
Initialize memory with chessboard pattern
Start the particle for a given fluence
Wait for the requested fluence (this will automatically stop the particle beam)
Wait 10s
Check and correct memory (Scrubbing).
Store SEU
Error counting and cross-section
Cross_section[cell][state]= (SEU[cell][state] / number[cell][state])/fluence
Cross_section[cell][state]= cross-section for a given type of cell with an initial state
number[cell][state] = number of cells for a given type of cell with an initial state
SEU[cell][state] = number of counted SEU for a given type of cell with an initial state
Test of SEU on dff_cell_core latches, SET on clock tree
The SEU is performed at room temperature, which is measured. Supply are at their min value (-10%):
VDD1V2 Core supply 1.08V at the input of the chip; since no voltage sensor is used the core supply is 1.045V inside the chip.
SEU test is done up to 106p/cm-2 fluence.
Cell under test
The occurrence of each cell in the fabric is provide by the table below.
cell name | devices/fabric |
---|---|
lowskew_horizontal_buffer | 168 |
lowskew_horizontal_repeater | 432 |
lowskew_local_buffer | 2 712 |
lowskew_local_repeater | 1 152 |
lowskew_vertical_buffer | 1 512 |
mtx_clock | 8 480 |
dff_latch | 32 256 |
Occurrence of DFF, clock buffer and matrix
FPGA configuration for test
The dff_cell_core (2 latches) shall be studied for every state of input, output and clock. So that each 1/8 of the dff_cell are set in each combination of states:
Tow static clock staying at 0 and 1 are provided at the input of the fabric clock tree. The left and right side are driven with these 0 and 1 static clock.
Each Section are programmed as in the table below where a LUT of the first table is connected with the DFF at the same position in the second table
SECTION ADDER/EXTRA LUT/REGFILE |
| ||||||||
CELL | Config/Context | Group | |||||||
LUT config/output | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 0 |
LUT config/output | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
LUT config/output | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 2 |
LUT config/output | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 3 |
DFF context | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 0 |
DFF context | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
DFF context | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 2 |
DFF context | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 3 |
LUT programming and DFF context
In order to have the same number of master and slave latch memorizing, PosEdge configuration is set at the same value in every dff_cell. Seq is set to 1, in order to enable the clock provided by the clock tree.
Remark: A SEU on Seq when CLK0/1=1 or a SEU on PosEdge make the memorizing latch to flip if Input ≠ Output.
A dff_cell input (LUT) is applied by setting all the configuration bit of the upstream LUT to the required value, with the bit AuxIn set to 0 and Len0:3 set to 1 so that the LUT output is the input of the dff_cell.
The error due to SET on the reset path inside the dff_cell_core was made negligible by design, the possible sources of SET on reset could come from the system tree on the reset path and a bit flip of dff_cell configuration bit Ren0:2, Sync. The reset tree has the same architecture as clock tree, so the SEU due to SET on RESET can be deduced from the clock tree study. To disable reset from system reset tree Ren0:2, Sync is set to 1, so that the reset value is force to 0 and the SEU due to reset SET only come from a bit flip of Ren0:2 or Sync. Then to make the SEU on reset negligible all the reset input RST SYS0:5 are set to 0, so that a SEU on Ren0:2 or Sync don’t affect the reset value that remains at 0.
Finally, the output that is the data memorized in the latch is set by writing the context of the dff_cell. Its reading is done by a context reading of the dff_cell, so that AuxOut values can be arbitrarily chosen.
WL | DFF configuration/input condition for radiative test | |||||||
---|---|---|---|---|---|---|---|---|
2 | Len0 | 1 | Len1 | 1 | Ren0 | 1 | Ren1 | 1 |
1 | Len2 | 1 | AuxIn | 0 | Ren2 | 1 | Sync | 1 |
0 | Cen | 0 | PosEdge | 1 | Seq | 1 | AuxOut | 0 |
BL: | 0 |
| 1 |
| 2 |
| 3 |
|
A bit flip on red config change the clock and input condition, thus the DFF should be ignored in statistic | ||||||||
A bit flip on green config doesn't change the condition if the green input are set as below | ||||||||
RSTI | 0 |
|
|
|
|
|
|
|
SYS0/1 | 0 |
|
|
|
|
|
|
|
SYS2:5=RSA output | 0 |
|
|
|
|
|
|
|
DFF configuration/input condition for radiative test
When Input = Output. SEU are due exclusively to SET on latch.
When Input ≠ Output the possible SEU come from SEU on latch or SET on clock tree.
In order to have enough statistic on mtx and lowskew, every mtx on clock path to dff_cell drive 32 dff_cell and 16 dff_cell with Input ≠ Output, so that it is also possible to discriminate if the SEU come from a dff_cell or the amount mtx. Furthermore, in order to discriminate the error due to each level of mtx or multiple output lowskew with their downstream one output lowskew, each mtx clock input shall drive 2 output mtx bit. The clock tree is divided into group, a group begin after another and end at the cell that drives 2 or more other downstream clock trees. The groups are numbered from the dff_cell and are called CLOCK_GROUP[0:x]. Thus, the error can be counted for each types of group, by finding the most amount CLOCK_GROUP that made flip all the dff_cell driven by it. Considering that the clock mapping is done as follow.
Test protocol for each LET/energy and angles
This test follows the same protocol as 5.5.2 Test protocol for each LET/energy and angles
Error counting and cross-section
The cross_section of dff latches and CLOCK_GROUP can be extracted with this algorithm example:
CLOCK_GROUP_SET[0:x][0:1] = 0; #count the SET for each clock group level and clock state
Total_ CLOCK_GROUP[0:x][0:1] = number_of_clock_group# count the number of CLOCK_GROUP that are kept in statistic, for a given level and clock state.
Latch_SEU[0:1][0:1][0:1]=0 # count the DFF Latch SEU due to direct SET on the memorizing latch for each state of input output and clock
Total_dff[0:1][0:1][0:1]=number_of_dff_programmed_in_this_state_before_radiation test # count the number of DFF in a given state of input, output and clock that are not upset by a clock SET in clock trees
Foreach(DFF)
{
If ((the DFF PosEdge Seq AuxIn Len0:2 Cen Ren0:2 Sync config remain at their initial value) then {
DFF.status = excluded_from_statistic; #upset due to or prevented by config
Total_dff[input][clkstate][output] -- ;} #removed from statistic
Else {
DFF.status = unthreaded ;}
}
Foreach(unthreaded DFF) {
If (Latch bit flip) then {
GRP_num = 0 ;
Loop = 1 ;
While(loop==1) {
If (DFF (initial input) ≠ (initial output) and all the unthreaded dff drive by the previous CLOCK_GROUP (number GRP_num+1) on clock path to the DFF, have a bit flip when (initial input) ≠ (initial output)) then {
# a more soft condition can be chosen in order to consider that some
# DFF can have extra latch bit flip
GRP_num++ ;}
Else {
loop=0 ;}
}
If (GRP_num=0) then {
Latch_SEU[input][clkstate][output]++ ;}#SEU on latch
Else{
CLOCK_GROUP_SEU[GRP_num] [clkstate]++ ;
#SET due to a CLOCK_GROUP level GRP_num
#Remove from statistic all the component derived by this clock group
Foreach(DFF drived by mtx number GRP_num in the amount on DFF clock) {
DFF = threaded ;
Total_dff[input][clkstate][output] -- ;}
For(I from 1 to M) {
Total_CLOCK_GROUP[i][clkstate] - = number_of_GROUP_level_i_drived_by_a_clock_group_number_ GRP_num ;
}
}
Else {DFF = threaded ;}
}
}
Cross_section_dff[input][clkstate][output]= Latch_SEU[input][clkstate][output] / (Total_dff[input][clkstate][output] * fluence)
Cross_section_CLOCK_GROUP[i][clkstate] = CLOCK_GROUP_SET[i][clkstate] / (Total_ CLOCK_GROUP[i][clkstate] * fluence)
Dynamic test of DFF
For this test a 24 MHz clock is provided for HIF and a variable frequency is available for PIF. In both cases, the clock is provided by the SPARTAN6 FPGA embedded on the NxBase mother board.
All structures are based on DFF that are loop on itself through an inverter. This work as a shift register with a checkerboard because at each clock pulse the data is inverted in the DFF.
Tow test are provided in order to extract the SET on asynchronous RESET and the SET on combinational logic:
Test of configuration memory with CMIC ECC
1 CMIC by row (5 rows) is correcting the data:
~400 000 clock cycle checking
65 000 min clock cycle idle
24MHz clock
After correcting 1 error of a column it restarts from first address of the same column.
CMIC is able to fix one error in the chip
At worst case, CMIC can manage 1 error per chip per CMIC cycle (24.106/465 000) = 51 error/s
CMIC ECC is stored in ST_SPREG_144x27m4:
132 Word for row2
128 Word for another row
The CMIC for one row work as follow:
4 signatures for each column
1 error in a signature can be corrected and Error flag is set, and the CMIC restart form the same column
2 errors in the same signature can’t be corrected but an Error flag is set, and the CMIC stop
CMIC test gives such information:
Number of Single error
Number of uncorrectable double error
Single-Event Latchup test
Single-Event Latchup test is performed at a temperature of 125°C. The NG-MEDIUM chip is heated by power resistors located under the chip on the PCB solder side. The current in the heating resistors is controlled via a PWM signal provided by the SPARTAN 6 FPGA located on the NxBase board. The power translation is realized through a power MOS-FET transistor located directly on the NG-MEDIUM bringup board.
Supplies are set to their max value (+10%):
VDD1V2: 1.32V
VDD3V3: 3.63V
VDD2V5: 2.75V
VDD1V8: 1.98V
Single-Event Latchup test is done up to a fluence of 107p/cm-2 with the ion providing the highest LET available: 124Xe35+ (LET=62.5 MeV/mg/cm²).
Prior to the irradiation, a chess board pattern (even address: 010101…, odd address: 101010…) for even column and the inverted chess board for odd column is loaded into the DUT configuration.
During the whole irradiation duration, current for every power supply rail is monitored by the NxBase board in real time in order to detect single-event latchup.
The temperature is regulated using a PID controller located on the test computer. The DUT internal temperature sensor is calibrated by an external sensor located near the heating resistors.
Results for heavy ions tests
For SEU/SET VDD1V2 Core supply = 1.08V is the supply applied at the input of the chip, since no voltage sensor was used, the real voltage in the chip was 1.045V, so that the robustness results are degraded.
Temperature: 19°C 34°C
Configuration memory at chip level
Configuration memory cross-section
Cross-section confidence intervals of 95% (α = 5%) are calculated for:
Relative fluence uncertainty of UCL is δF/F = 5%.
SEU has been tested for DUT 6 and 7 from LET = 3.3 MeV.cm2/mg to LET = 62.5 MeV.cm2/mg. Tilted radiation are tested to study angle dependency of the sensitivity of hardened structure.
The table and graphic below give the measured cross-section for the two chips under test and the Weibull fittings are given for normal incidence. DUT6 and DUT7 measurements are correlating correctly. So, the two chip data are merged for the next curves and studies.
For tilted incidence when comparing the cross-section for rotation angle phi=0° and 90°, the worst case at chip level is for 0°.
DUT
| Limit (cm2/bit) | Onset (MeV-cm2/mg) | Width - | S - |
---|---|---|---|---|
DUT6 | 5,185E-09 | 2,801 | 37,833 | 2,972 |
DUT7 | 5,205E-09 | 0,851 | 35,460 | 5,575 |
Weibull Fit Parameters for configuration SEU cross-section
DUT | Ion | LET | Range | Tilt | Effective LET | Effective Range | Fluence | SEU | SEU Cross section | min σ | max σ | chip orientation phi |
---|---|---|---|---|---|---|---|---|---|---|---|---|
|
| MeV/mg/cm2 | µm | ° | MeV/mg/cm2 | µm | p/cm2 |
| cm2/bit | cm2/bit | cm2/bit | ° |
6 | Ne7+ | 3,3 | 202 |
| 3,3 | 202 | 1,00E+07 | 2 | 3E-14 | 4E-15 | 1E-13 |
|
6 | Ar12+ | 10 | 120,5 |
| 10,0 | 121 | 3,85E+06 | 193 | 8E-12 | 7E-12 | 9E-12 |
|
6 | Ni18+ | 20,4 | 100,5 |
| 20,4 | 101 | 5,53E+06 | 20133 | 6E-10 | 6E-10 | 6E-10 |
|
6 | Kr25+ | 32,4 | 94,2 |
| 32,4 | 94 | 9,34E+05 | 10360 | 2E-09 | 2E-09 | 2E-09 |
|
6 | Xe35+ | 62,5 | 73,1 |
| 62,5 | 73 | 4,10E+05 | 13036 | 5E-09 | 5E-09 | 5E-09 |
|
6 | Ne7+ | 3,3 | 202 | 60 | 6,6 | 101 | 5,54E+06 | 6 | 2E-13 | 6E-14 | 4E-13 | 90 |
6 | Ni18+ | 20,4 | 100,5 | 51 | 32,4 | 63 | 5,27E+05 | 6910 | 2E-09 | 2E-09 | 2E-09 | 90 |
6 | Kr25+ | 32,4 | 94,2 | 45 | 45,8 | 67 | 5,23E+05 | 11609 | 4E-09 | 3E-09 | 4E-09 | 90 |
6 | Xe35+ | 62,5 | 73,1 | 49 | 95,3 | 48 | 1,58E+05 | 10623 | 1E-08 | 1E-08 | 1E-08 | 90 |
6 | Ne7+ | 3,3 | 202 | 60 | 6,6 | 101 | 1,24E+07 | 928 | 1E-11 | 1E-11 | 1E-11 | 0 |
6 | Ar12+ | 10 | 120,5 | 60 | 20,0 | 60 | 5,98E+05 | 5880 | 2E-09 | 2E-09 | 2E-09 | 0 |
6 | Ni18+ | 20,4 | 100,5 | 51 | 32,4 | 63 | 3,70E+05 | 6869 | 3E-09 | 3E-09 | 3E-09 | 0 |
6 | Kr25+ | 32,4 | 94,2 | 45 | 45,8 | 67 | 2,77E+05 | 8396 | 5E-09 | 5E-09 | 5E-09 | 0 |
7 | Al8+ | 5,7 | 131,2 |
| 5,7 | 131 | 3,91E+06 | 1 | 4E-14 | 1E-15 | 2E-13 |
|
7 | Cr16+ | 16 | 107,6 |
| 16,0 | 108 | 1,06E+06 | 2003 | 3E-10 | 3E-10 | 3E-10 |
|
7 | Kr25+ | 32,4 | 94,2 |
| 32,4 | 94 | 1,01E+06 | 11688 | 2E-09 | 2E-09 | 2E-09 |
|
7 | Xe35+ | 62,5 | 73,1 |
| 62,5 | 73 | 1,95E+05 | 6223 | 5E-09 | 5E-09 | 5E-09 |
|
7 | Al8+ | 5,7 | 131,2 | 60 | 11,4 | 66 | 1,14E+06 | 1784 | 3E-10 | 2E-10 | 3E-10 | 0 |
7 | Kr25+ | 32,4 | 94,2 | 45 | 45,8 | 67 | 4,49E+05 | 13364 | 5E-09 | 5E-09 | 5E-09 | 0 |
7 | Xe35+ | 62,5 | 73,1 | 49 | 95,3 | 48 | 1,17E+05 | 11251 | 2E-08 | 1E-08 | 2E-08 | 0 |
occurrence |
|
|
|
|
|
|
|
| 6138096 |
|
|
|
Configuration SEU cross-section(LET) of DUT6&7
DUT | Ion | LET | Range | Tilt | Effective LET | Effective Range | Fluence | SEU | SEU Cross section | min σ | max σ | chip orientation phi |
---|---|---|---|---|---|---|---|---|---|---|---|---|
|
| MeV/mg/cm2 | µm | ° | MeV/mg/cm2 | µm | p/cm2 |
| cm2/bit | cm2/bit | cm2/bit | ° |
6+7 | Ne7+ | 3,3 | 202,0 |
| 3,3 | 202,0 | 1,00E+07 | 2 | 3,3E-14 | 3,9E-15 | 1,2E-13 |
|
6+7 | Al8+ | 5,7 | 131,2 |
| 5,7 | 131,2 | 3,91E+06 | 1 | 4,2E-14 | 1,0E-15 | 2,3E-13 |
|
6+7 | Ar12+ | 10,0 | 120,5 |
| 10,0 | 120,5 | 3,85E+06 | 193 | 8,2E-12 | 7,0E-12 | 9,5E-12 |
|
6+7 | Cr16+ | 16,0 | 107,6 |
| 16,0 | 107,6 | 1,06E+06 | 2003 | 3,1E-10 | 2,9E-10 | 3,3E-10 |
|
6+7 | Ni18+ | 20,4 | 100,5 |
| 20,4 | 100,5 | 5,53E+06 | 20133 | 5,9E-10 | 5,6E-10 | 6,2E-10 |
|
6+7 | Kr25+ | 32,4 | 94,2 |
| 32,4 | 94,2 | 1,95E+06 | 22048 | 1,8E-09 | 1,7E-09 | 1,9E-09 |
|
6+7 | Xe35+ | 62,5 | 73,1 |
| 62,5 | 73,1 | 6,05E+05 | 19259 | 5,2E-09 | 4,9E-09 | 5,5E-09 |
|
6+7 | Ne7+ | 3,3 | 202,0 | 60 | 6,6 | 101,0 | 5,54E+06 | 6 | 1,8E-13 | 6,4E-14 | 3,8E-13 | 90 |
6+7 | Ni18+ | 20,4 | 100,5 | 51 | 32,4 | 63,2 | 5,27E+05 | 6910 | 2,1E-09 | 2,0E-09 | 2,3E-09 | 90 |
6+7 | Kr25+ | 32,4 | 94,2 | 45 | 45,8 | 66,6 | 5,23E+05 | 11609 | 3,6E-09 | 3,4E-09 | 3,8E-09 | 90 |
6+7 | Xe35+ | 62,5 | 73,1 | 49 | 95,3 | 48,0 | 1,58E+05 | 10623 | 1,1E-08 | 1,0E-08 | 1,2E-08 | 90 |
6+7 | Ne7+ | 3,3 | 202,0 | 60 | 6,6 | 101,0 | 1,24E+07 | 928 | 1,2E-11 | 1,1E-11 | 1,3E-11 | 0 |
6+7 | Al8+ | 5,7 | 131,2 | 60 | 11,4 | 65,6 | 1,14E+06 | 1784 | 2,5E-10 | 2,4E-10 | 2,7E-10 | 0 |
6+7 | Ar12+ | 10,0 | 120,5 | 60 | 20,0 | 60,3 | 5,98E+05 | 5880 | 1,6E-09 | 1,5E-09 | 1,7E-09 | 0 |
6+7 | Ni18+ | 20,4 | 100,5 | 51 | 32,4 | 63,2 | 3,70E+05 | 6869 | 3,0E-09 | 2,9E-09 | 3,2E-09 | 0 |
6+7 | Kr25+ | 32,4 | 94,2 | 45 | 45,8 | 66,6 | 7,26E+05 | 21760 | 4,9E-09 | 4,6E-09 | 5,1E-09 | 0 |
6+7 | Xe35+ | 62,5 | 73,1 | 49 | 95,3 | 48,0 | 1,17E+05 | 11251 | 1,6E-08 | 1,5E-08 | 1,7E-08 | 0 |
occurrence |
|
|
|
|
|
|
| 6138096 |
|
|
|
|
NG_medium Configuration SEU cross-section(LET)
DUT
| Limit (cm2/bit) | Onset (MeV/cm2/mg) | Width - | S - |
---|---|---|---|---|
DUT6+7 | 5,1852E-09 | 0,11214 | 36,4286 | 4,44737 |
Weibull Fit Parameters for configuration SEU cross-section
Configuration memory with CMIC
As shows the curve below and as expected, the measured configuration cross section doesn’t change when the CMIC is activated.
CMIC stops when 2 errors occur in the same signature. No double error in a same signature is observed in the reference memory: ST_SPREG_144x27m4. The configuration double error in a same signature cross section is calculated by dividing the double error number by config number and fluence. As comparison an upper of the cross section of double error due to accumulation is deduced from the config SEU cross-section and the table and formula below with the fluxes used at UCL. At the LET of 62.5 MeV.cm2/mg the cross-section of SEU accumulation is negligible regarding to the observed double error; indeed at 62.5 MeV.cm2/mg, the double error observed are on the same bit of this two local address couple in 4*n input matrix: (2,4);(1,3) corresponding of (Wordline2 of cross_data_select4 and WL0 of cross_data_cell4) and (Wordline1 and 3 of cross_data_select4). This double error is MBU on the same signature because local addresses are physically ordered 0, 1, 3, 2, 4.
At a LET of 32.4 MeV.cm2/mg only 1 MBU is record among the 4 double errors, the other double errors are cumulative effect.
At a LET of 20.4 MeV.cm2/mg even if the CMIC report a double error, no error can be read in the configuration memory
In any application, the scrubbing failure cross section is below or equal to the config double error (=scrubbing failure) cross-section measured at UCL. At a LET of 62.5 MeV.cm2/mg the failure cross-section is more than one decade below the SEU cross-section
But when single error occur the scrubbing needs some time to correct it, so that the error remains during this time; then a flag is set, so the user has to verify if it is required to reset the application.
let | flux | Fluence_cfg | Fluence_ref | cfg_err | ref_err | cfg_double | MBU | ref_double | Fluence _double_cfg | double_cfg_sigm _chip_plan | crosss_section majorant of 2 config SEU accumulation in the same signature |
---|---|---|---|---|---|---|---|---|---|---|---|
62,5 | 200 | 1,26E+04 | 1,21E+04 | 416 | 0 | 6 | 8 | 0 | 1,58E+04 | 6,2E-11 | 1,2E-12 |
62,5 | 100 | 7,35E+03 | 7,50E+03 | 228 | 7 | 8 | 8 | 0 | 1,02E+04 | 1,3E-10 | 5,3E-13 |
62,5 | 20 | 1,18E+04 | 1,18E+04 | 388 | 24 | 5 | 5 | 0 | 1,22E+04 | 6,7E-11 | 1,2E-13 |
32,4 | 2000 | 3,20E+05 | 3,23E+05 | 3333 | 213 | 4 | 1 | 0 | 3,73E+05 | 1,7E-12 | 1,2E-12 |
32,4 | 50 | 3,54E+04 | 3,54E+04 | 393 | 2 | 0 | 0 | 0 | 3,54E+04 | 4,6E-12 | 3,4E-14 |
20,4 | 5000 | 1,40E+06 | 1,41E+06 | 4852 | 933 | 1 | 1 | 0 | 1,44E+06 | 1,1E-13 | 3,3E-13 |
20,4 | 100 | 4,41E+04 | 4,41E+04 | 131 | 8 | 0 | 0 | 0 | 4,41E+04 | 3,7E-12 | 4,8E-15 |
16 | 5000 | 1,95E+06 | 1,95E+06 | 3405 | 875 | 0 | 0 | 0 | 1,95E+06 | 8,4E-14 | 8,4E-14 |
10 | 5000 | 2,22E+06 | 2,22E+06 | 1027 | 82 | 0 | 0 | 0 | 2,22E+06 | 7,3E-14 | 3,7E-17 |
10 | 1000 | 6,56E+05 | 6,56E+05 | 285 | 23 | 0 | 0 | 0 | 6,56E+05 | 2,5E-13 | 6,7E-18 |
10 | 200 | 2,09E+04 | 2,09E+04 | 0 | 0 | 0 | 0 | 0 | 2,09E+04 | 7,8E-12 | 2,5E-18 |
5,7 | 5000 | 3,66E+06 | 3,66E+06 | 792 | 3 | 0 | 0 | 0 | 3,66E+06 | 4,5E-14 | 1,8E-20 |
occurrence |
|
|
|
|
|
|
|
|
| 6138096 | 6138096 |
SEU config cross-section(LET) with CMIC
DPRAM
The cross-section of single corrected error is plotted on the curve below. The EDAC is always able to correct the single error when the data is read. So, the error cross-section with EDAC is lowered at the level of the double error cross section on the curve below. DPRAM cross-section is two orders of magnitude lower than those of the config memory and the bit occurrence of 2 752 512 is lower than those of configuration bit, meaning that the DPRAM contribution to chip SER is negligible.
Let | flux | Fluence | single | double | single_sigm _chip_plan | single_delt _sigma_min | single_delt _sigma_max | double_sigma _chip_plan | double_delta _sigma_min | double_delta _sigma_max |
---|---|---|---|---|---|---|---|---|---|---|
62,5 | 1000 | 2,09E+05 | 39167 | 2 | 6,8E-08 | 3,5E-09 | 3,5E-09 | 1,9E-12 | 1,9E-12 | 8,8E-12 |
62,5 | 200 | 5,71E+04 | 10949 | 1 | 7,0E-08 | 3,7E-09 | 3,7E-09 | 6,4E-12 | 6,2E-12 | 2,9E-11 |
62,5 | 100 | 1,35E+04 | 2497 | 0 | 6,7E-08 | 4,3E-09 | 4,3E-09 | 3,5E-12 | 3,1E-12 | 9,1E-12 |
32,4 | 500 | 1,88E+05 | 27232 | 1 | 5,2E-08 | 2,7E-09 | 2,7E-09 | 9,9E-14 | 9,6E-14 | 2,7E-13 |
20,4 | 2500 | 3,18E+05 | 36441 | 0 | 4,2E-08 | 2,1E-09 | 2,1E-09 | 2,7E-11 | 2,6E-11 | 7,3E-11 |
20,4 | 500 | 3,20E+05 | 37049 | 0 | 4,2E-08 | 2,1E-09 | 2,1E-09 | 1,8E-13 | 1,8E-13 | 4,9E-13 |
16 | 5000 | 2,74E+05 | 20481 | 0 | 2,7E-08 | 1,4E-09 | 1,4E-09 | 1,3E-12 | 1,3E-12 | 3,6E-12 |
10 | 5000 | 1,98E+06 | 134865 | 0 | 2,5E-08 | 1,2E-09 | 1,2E-09 | 1,1E-12 | 1,1E-12 | 3,1E-12 |
5,7 | 5000 | 3,68E+06 | 131960 | 0 | 1,3E-08 | 6,6E-10 | 6,6E-10 | 1,1E-12 | 1,1E-12 | 3,1E-12 |
occurrence |
|
|
|
| 2752512 |
|
| 2752512 |
|
|
SEU DPRAM cross-section(LET)
Static DFF SEU, Static Clock SET
As show the data and the curve below the DFF cross-section is below the cross-section of the configuration memory. The SET number is considered to be the output number of a matrix system to which propagate a clock a SET that make flip more than two driven DFF. The SET cross section per system matrix is bigger than the one of configuration memory but the occurrence of mtx_sys in the test design is 1008. So the cross-section is calculated in cm² per config memory, the cross-section is negligible compared to the config cross-section, meaning that the contribution to chip SER is negligible compared to the one of config.
let | Flux | fluence_seu | seu | set | seu_sigma_chip_plan | fluence_set | set_sigma_chip_plan |
---|---|---|---|---|---|---|---|
62,5 | 2000 | 4,35E+06 | 42 | 429 | 3,0E-10 | 5,4E+06 | 7,8E-08 |
32,4 | 2000 | 4,93E+06 | 0 | 1 | 6,3E-12 | 4,9E+06 | 2,0E-10 |
20,4 | 5000 | 8,32E+06 | 0 | 0 | 3,7E-12 | 8,3E+06 | 1,2E-10 |
16 | 5000 | 7,35E+06 | 0 | 0 | 4,2E-12 | 7,4E+06 | 1,3E-10 |
10 | 5000 | 6,76E+06 | 0 | 0 | 4,6E-12 | 6,8E+06 | 1,5E-10 |
5,7 | 5000 | 1,20E+07 | 0 | 0 | 2,6E-12 | 1,2E+07 | 8,2E-11 |
occurrence |
|
|
|
| 32256 |
| 1008 |
DFF SEU and Clock SET cross-section(LET)
Toggle DFF error
The curve below gives the cross section of dff context error, the error cause by:
-DFF SEU
-Config SEU in DFF, LUT or MATRIX
-Clock SET
-Combinational logic SET
The curve below shows the dff context error cross section per dff and per config, the cross section per config is below the configuration cross section, meaning that for toggle dff application clocked at 24MHz the chip SER contribution is below than the one of configuration memory.
At a LET of 62.5 MeV.cm2/mg, the static error cross section deduced from static dff is correlated with the toggle dff error cross section. Thus at 62.5 MeV.cm2/mg the toggle dff error are dominated by clock SET.
let | flux | fluence | dff_errors | all_errors | sigma_chip_plan | delta_sigma_min | delta_sigma_max |
---|---|---|---|---|---|---|---|
62,5 | 2000 | 1 076 442 | 2228 | 2228 | 6,4E-08 | 4,2E-09 | 4,2E-09 |
32,4 | 2000 | 952 542 | 460 | 460 | 1,5E-08 | 1,5E-09 | 1,6E-09 |
20,4 | 5000 | 2 195 681 | 383 | 383 | 5,4E-09 | 5,9E-10 | 6,3E-10 |
16 | 5000 | 2 093 467 | 199 | 199 | 2,9E-09 | 4,2E-10 | 4,6E-10 |
10 | 5000 | 2 234 373 | 24 | 24 | 3,3E-10 | 1,2E-10 | 1,6E-10 |
5,7 | 5000 | 3 606 304 | 17 | 17 | 1,5E-10 | 6,1E-11 | 8,8E-11 |
Toggle dff error cross-section(LET)
SEFI
SEFI were recorded, a SEFI in the FPGA control part mean that the reading or writing of the configuration/context is not possible, while the application status is unknown. The SEFI cross-section contribution to chip cross-section is negligible compared to the one of config.
let | flux | fluence | periods | sefi | sefi_sigma _chip_plan | sefi_delta _sigma_min | sefi_delta _sigma_max | sefi_sigma _chip_plan per config | sefi_delta _sigma_min | sefi_delta _sigma_max |
---|---|---|---|---|---|---|---|---|---|---|
62,5 | 2000 | 3,56E+06 | 93 | 13 | 3,7E-06 | 1,7E-06 | 2,6E-06 | 5,9E-13 | 2,8E-13 | 4,2E-13 |
62,5 | 1000 | 2,38E+05 | 14 | 1 | 4,2E-06 | 4,1E-06 | 1,9E-05 | 6,9E-13 | 6,7E-13 | 3,1E-12 |
62,5 | 200 | 7,96E+04 | 24 | 2 | 2,5E-05 | 2,2E-05 | 6,6E-05 | 4,1E-12 | 3,6E-12 | 1,1E-11 |
62,5 | 100 | 2,54E+04 | 15 | 0 | 3,9E-05 | 3,8E-05 | 1,1E-04 | 6,4E-12 | 6,3E-12 | 1,7E-11 |
62,5 | 20 | 1,22E+04 | 36 | 0 | 8,2E-05 | 8,0E-05 | 2,2E-04 | 1,3E-11 | 1,3E-11 | 3,6E-11 |
32,4 | 2000 | 4,26E+06 | 61 | 21 | 4,9E-06 | 1,9E-06 | 2,6E-06 | 8,0E-13 | 3,1E-13 | 4,3E-13 |
32,4 | 500 | 2,59E+05 | 17 | 2 | 7,7E-06 | 6,8E-06 | 2,0E-05 | 1,3E-12 | 1,1E-12 | 3,3E-12 |
32,4 | 50 | 3,54E+04 | 20 | 0 | 2,8E-05 | 2,8E-05 | 7,6E-05 | 4,6E-12 | 4,5E-12 | 1,2E-11 |
20,4 | 5000 | 7,04E+06 | 52 | 5 | 7,1E-07 | 4,8E-07 | 9,5E-07 | 1,2E-13 | 7,8E-14 | 1,5E-13 |
20,4 | 2500 | 3,31E+05 | 5 | 0 | 3,0E-06 | 3,0E-06 | 8,1E-06 | 4,9E-13 | 4,8E-13 | 1,3E-12 |
20,4 | 500 | 3,38E+05 | 20 | 1 | 3,0E-06 | 2,9E-06 | 1,4E-05 | 4,8E-13 | 4,7E-13 | 2,2E-12 |
20,4 | 100 | 4,41E+04 | 17 | 0 | 2,3E-05 | 2,2E-05 | 6,1E-05 | 3,7E-12 | 3,6E-12 | 9,9E-12 |
16 | 5000 | 1,07E+07 | 66 | 16 | 1,5E-06 | 6,5E-07 | 9,4E-07 | 2,4E-13 | 1,1E-13 | 1,5E-13 |
10 | 5000 | 9,11E+06 | 63 | 2 | 2,2E-07 | 1,9E-07 | 5,7E-07 | 3,6E-14 | 3,1E-14 | 9,3E-14 |
10 | 1000 | 6,89E+05 | 22 | 1 | 1,5E-06 | 1,4E-06 | 6,6E-06 | 2,4E-13 | 2,3E-13 | 1,1E-12 |
10 | 200 | 2,09E+04 | 3 | 0 | 4,8E-05 | 4,7E-05 | 1,3E-04 | 7,8E-12 | 7,6E-12 | 2,1E-11 |
5,7 | 5000 | 1,81E+07 | 117 | 19 | 1,1E-06 | 4,2E-07 | 5,9E-07 | 1,7E-13 | 6,9E-14 | 9,7E-14 |
occurrence |
|
|
|
| 1 |
|
| 6138096 |
|
|
SEFI cross-section(LET)
Single-Event Latchup test
For the Single-Event Latchup test, all power supply voltages are set at their maximum (+10%). Silicon chip temperature is set to 125°C and is regulated by a PID controller implemented in the test software.
This test is performed with the ion providing the highest LET available: 124Xe35+ (LET=62.5 MeV/mg/cm2) up to a fluence of 107p/cm-2.
The same NxBase mother (#04) was used to perform all tests.
The test was performed on the following DUT:
#1718_004 equipped on bringup board #06
#1718_052 equipped on bringup board #11
#1808_004 equipped on bringup board #14
No single latchup event was detected during any of the test periods for any DUT.
Results for protons tests
For SEU/SET VDD1V2 Core supply = 1.08V is the supply applied at the input of the chip, since no voltage sensor was used, the real voltage in the chip was 1.045V, so that the robustness results are degraded.
Configuration memory at chip level
Configuration memory cross-section
Cross-section confidence intervals of 95% (α = 5%) are calculated for:
Relative fluence uncertainty of PSI is δF/F = 5%.
SEU has been tested for DUT #53 and DUT #52 from Energy = 30 MeV to Energy = 230 MeV. Tilted variations are not relevant for proton tests.
The table and graphic below give the measured cross-section for the two chips under test and the Weibull fittings. Since DUT #53 and DUT #52 measurements are correlating correctly, the two chips data are merged for the next curves and studies.
DUT | Energy MeV | Fluence | SEU | SEU Cross section | min σ | max σ |
---|---|---|---|---|---|---|
|
| p/cm2 |
| cm2/bit | cm2/bit | cm2/bit |
53 | 50 | 1,18E+10 | 3 | 4.16E-17 | 8,51E-17 | 1,21E-16 |
53 | 100 | 7,92E+10 | 109 | 2,24E-16 | 1,83E-16 | 2,72E-16 |
53 | 150 | 6,00E+10 | 100 | 2,72E-16 | 2,19E-16 | 3,32E-16 |
53 | 230 | 5,00E+10 | 153 | 4,99E-16 | 4,19E-16 | 5,88E-16 |
52 | 30 | 3,80E+09 | 1 | 4,29E-17 | 1,03E-18 | 2,39E-16 |
52 | 50 | 1,77E+10 | 7 | 6,43E-17 | 2,57E-17 | 1,33E-16 |
52 | 100 | 4,00E+10 | 58 | 2,36E-16 | 1,78E-16 | 3,06E-16 |
52 | 150 | 5,85E+10 | 108 | 3,01E-16 | 2,45E-16 | 3,65E-16 |
52 | 230 | 6,00E+10 | 184 | 5,00E-16 | 4,26E-16 | 5,81E-16 |
occurrence |
|
|
| 6138096 |
|
|
Configuration SEU cross-section(energy) of DUT #53 and DUT #52
DUT
| Limit (cm2/bit) | Onset (MeV) | Width - | S - |
---|---|---|---|---|
DUT53 | 4.82959e-016 | 49.99900 | 12.87336 | 0.37122 |
DUT52 | 4.84232e-016 | 29.99900 | 28.16281 | 0.47816 |
Weibull Fit Parameters for configuration SEU cross-section
DUT | Energy MeV | Fluence | SEU | SEU Cross section | min σ | max σ |
---|---|---|---|---|---|---|
|
| p/cm2 |
| cm2/bit | cm2/bit | cm2/bit |
52+53 | 30 | 3,80E+09 | 1 | 4,29E-17 | 1,03E-18 | 2,39E-16 |
52+53 | 50 | 1,77E+10 | 7 | 6,43E-17 | 2,57E-17 | 1,33E-16 |
52+53 | 100 | 4,00E+10 | 58 | 2,36E-16 | 1,78E-16 | 3,06E-16 |
52+53 | 150 | 5,85E+10 | 108 | 3,01E-16 | 2,45E-16 | 3,65E-16 |
52+53 | 230 | 6,00E+10 | 184 | 5,00E-16 | 4,26E-16 | 5,81E-16 |
occurrence |
|
|
| 6138096 |
|
|
Configuration SEU cross-section(energy) for merged DUT #53 + DUT #52
DUT
| Limit (cm2/bit) | Onset (MeV) | Width - | S - |
---|---|---|---|---|
DUT53+52 | 4,85e-016 | 29,99900 | 29,68 | 502E-3 |
Weibull Fit Parameters for configuration SEU cross-section (for merged DUT #53 and DUT #52)
Configuration memory with CMIC
As shows the table below and as expected, the number of corrected configuration memory errors is similar to results showed by the non-CMIC test.
CMIC stops when 2 errors occur in the same signature. No double error in a same signature is observed in the reference memory (ST_SPREG_144x27m4). The configuration double error in a same signature cross section is calculated by dividing the double error number by config number and fluence.
DUT# | Energy MeV | Fluence cfg | cfg_err | cfg_sigma _chip_plan | cfg_delta sigma min | cfg_delta sigma max |
---|---|---|---|---|---|---|
53 | 230 | 1,254E+11 | 484 | 6,29E-16 | 6,32E-17 | 6,65E-17 |
52 | 230 | 8,7733E+10 | 286 | 5,31E-16 | 6,54E-17 | 7,05E-17 |
occurrence |
|
|
| 6138096 |
|
|
SEU config cross-section(energy) with CMIC for single error
DUT# | Energy MeV | Fluence double cfg | double cfg_err | double cfg_sigma _chip_plan | double cfg_delta sigma min | double cfg_delta sigma max |
---|---|---|---|---|---|---|
53 | 230 | 1,3E+11 | 1 | 1,25E-18 | 1,22E-18 | 5,73E-18 |
52 | 230 | 9,66E+10 | 2 | 3,37E-18 | 2,97E-18 | 8.81E-18 |
occurrence |
|
|
| 6138096 |
|
|
SEU config cross-section(energy) with CMIC for double error
DPRAM
The cross-section of single corrected error is plotted on the curve below. The EDAC is always able to correct single errors when the data is read. So, For this test, the clock frequency used by the design is 10MHz.
DUT # | Energy | Fluence | single errors | sigma_chip_plan | delta_sigma_min | delta_sigma_max |
---|---|---|---|---|---|---|
53 | 230 | 1,00E+10 | 2448 | 8,89E-14 | 5,65E-15 | 5,72E-15 |
53 | 100 | 1,21E+10 | 2287 | 6,87E-14 | 4,42E-15 | 4,48E-15 |
53 | 50 | 1,05E+10 | 1977 | 6,83E-14 | 4,53E-15 | 4,60E-15 |
53 | 30 | 7,00E+09 | 1317 | 6,84E-14 | 4,99E-15 | 5,11E-15 |
52 | 230 | 1,08E+11 | 22874 | 7,69E-14 | 3,97E-15 | 3,97E-15 |
52 | 100 | 3,19E+10 | 5547 | 6,32E-14 | 3,57E-15 | 3,58E-15 |
52 | 50 | 2,12E+10 | 3586 | 6,15E-14 | 3,67E-15 | 3,69E-15 |
52 | 30 | 1,61E+10 | 2844 | 6,43E-14 | 3,98E-15 | 4,02E-15 |
| occurrence |
|
| 2752512 |
|
|
single SEU DPRAM cross-section (energy)
DUT # | Energy | Fluence | double errors | sigma_chip_plan | delta_sigma_min | delta_sigma_max |
---|---|---|---|---|---|---|
53 | 230 | 1,00E+10 | 0 | 3,63E-17 | 3,55E-17 | 9,77E-17 |
53 | 100 | 1,21E+10 | 0 | 3,00E-17 | 2,93E-17 | 8,07E-17 |
53 | 50 | 1,05E+10 | 0 | 3,46E-17 | 3,37E-17 | 9,29E-17 |
53 | 30 | 7,00E+09 | 0 | 5,19E-17 | 5,07E-17 | 1,40E-16 |
52 | 230 | 1,08E+11 | 0 | 3,36E-18 | 3,28E-18 | 9,03E-18 |
52 | 100 | 3,19E+10 | 1 | 1,14E-17 | 1,11E-17 | 5,21E-17 |
52 | 50 | 2,12E+10 | 0 | 1,72E-17 | 1,67E-17 | 4,61E-17 |
52 | 30 | 1,61E+10 | 0 | 2,26E-17 | 2,21E-17 | 6,08E-17 |
| occurrence |
|
| 2752512 |
|
|
double SEU DPRAM cross-section (energy)
Static DFF SEU, Static Clock SET
As show the data and the curve below the DFF cross-section is similar to the cross-section of the configuration memory.
The SET number is considered to be the output number of a matrix system to which propagate a clock a SET that make flip more than two driven DFF. No SET where detected during the test.
DUT# | Energy (MeV) | seu | fluence_seu | seu_sigma_chip_plan | seu delta sigma min | seu delta sigma max |
---|---|---|---|---|---|---|
53 | 230 | 1 | 9,00E+10 | 3,44E-16 | 3,36E-16 | 1,57E-15 |
52 | 230 | 2 | 9,00E+10 | 6,89E-16 | 6,06E-16 | 1,80E-15 |
| occurrence |
|
| 32256 |
|
|
DFF SEU and Clock SET cross-section(Energy)
Toggle DFF error
The curve below gives the cross section of dff context error, the error might be caused by:
-DFF SEU
-Config SEU in DFF, LUT or MATRIX
-Clock SET
-Combinational logic SET
The curve below shows the dff context error cross section per dff and per config. The cross section per config is below the configuration cross section, meaning that for toggle dff application the chip SER contribution is below than the one of configuration memory.
DUT # | fabric frequency (MHz) | Energy (MeV) | dff errors | fluence | sigma_chip_plan | delta_sigma_min | delta_sigma_max |
---|---|---|---|---|---|---|---|
53 | 60 | 100 | 1 | 2,01E+10 | 1,54E-15 | 1,51E-15 | 7,06E-15 |
53 | 60 | 150 | 13 | 3,93E+10 | 1,03E-14 | 4,82E-15 | 7,30E-15 |
53 | 60 | 230 | 17 | 5,51E+10 | 9,57E-15 | 4,02E-15 | 5,77E-15 |
52 | 60 | 100 | 7 | 3,26E+10 | 6,66E-15 | 3,99E-15 | 7,07E-15 |
52 | 60 | 150 | 13 | 5,32E+10 | 7,58E-15 | 3,56E-15 | 5,39E-15 |
52 | 60 | 230 | 32 | 9,03E+10 | 1,10E-14 | 3,51E-15 | 4,56E-15 |
Toggle dff error cross-section(energy)
The curve below shows the dff context error cross section per dff relative to the fabric clock frequency, we can see little to no effect for the tested frequencies (10MHz, 35MHz, 60MHz). The test vehicle was not designed to support higher fabric frequencies.
DUT # | fabric frequency (MHz) | Energy (MeV) | fluence | dff_errors | sigma_chip_plan | delta_sigma_min | delta_sigma_max |
---|---|---|---|---|---|---|---|
53 | 10 | 230 | 4,27E+10 | 13 | 9,44E-15 | 4,44E-15 | 6,72E-15 |
53 | 35 | 230 | 5,67E+10 | 14 | 7,65E-15 | 3,49E-15 | 5,20E-15 |
53 | 60 | 230 | 5,51E+10 | 17 | 9,57E-15 | 4,02E-15 | 5,77E-15 |
52 | 10 | 230 | 9,00E+10 | 19 | 6,54E-15 | 2,62E-15 | 3,69E-15 |
52 | 60 | 230 | 9,03E+10 | 32 | 1,10E-14 | 3,51E-15 | 4,56E-15 |
Toggle dff error cross-section(fabric frequency) energy=230MeV
DFF SEU cross-section(Frequency) of DUT #53 and DUT #52 at 230MeV
SEFI
SEFI were recorded. A SEFI in the FPGA control part mean that the reading or writing of the configuration/context is not possible, while the application status is unknown. The SEFI cross-section contribution to chip cross-section is negligible compared to the one of config.
DUT # | energy | Fluence | sefi | sefi_sigma _chip plan | sefi_delta _sigma min | sefi_delta _sigma_max | sefi_sigma _chip_plan per config | sefi_delta _sigma_min per config | sefi_delta _sigma_max per config |
---|---|---|---|---|---|---|---|---|---|
53 | 230 | 5,25E+11 | 1 | 1,90E-12 | 1,86E-12 | 8,71E-12 | 3,10E-19 | 3,03E-19 | 1,42E-18 |
53 | 150 | 9,93E+10 | 1 | 1,01E-11 | 9,83E-12 | 4,60E-11 | 1,64E-18 | 1,60E-18 | 7,50E-18 |
53 | 100 | 1,29E+11 | 1 | 7,75E-12 | 7,57E-12 | 3,54E-11 | 1,26E-18 | 1,23E-18 | 5,77E-18 |
53 | 50 | 2,81E+10 | 1 | 3,56E-11 | 3,47E-11 | 1,63E-10 | 5,80E-18 | 5,66E-18 | 2,65E-17 |
53 | 30 | 1,24E+10 | 0 | 8,06E-11 | 7,87E-11 | 2,17E-10 | 1,31E-17 | 1,28E-17 | 3,53E-17 |
52 | 230 | 6,04E+11 | 3 | 1,10E-10 | 3,95E-12 | 9,55E-12 | 8,09E-19 | 6,44E-19 | 1,56E-18 |
52 | 150 | 1,42E+11 | 1 | 2,80E-11 | 6,89E-12 | 3,23E-11 | 1,15E-18 | 1,12E-18 | 5,26E-18 |
52 | 100 | 2,81E+11 | 1 | 3,56E-12 | 3,47E-12 | 1,63E-11 | 5,80E-19 | 5,66E-19 | 2,65E-18 |
52 | 50 | 3,57E+10 | 0 | 7,06E-12 | 2,73E-11 | 7,53E-11 | 4,56E-18 | 4,45E-18 | 1,23E-17 |
52 | 30 | 9,07E+09 | 0 | 4,97E-12 | 1,08E-10 | 2,96E-10 | 1,80E-17 | 1,75E-17 | 4,83E-17 |
occurrence |
|
|
| 1 |
|
| 6138096 |
|
|
SEFI cross-section(energy)
Weibull fitting
The Weibull fitting is performed with the OMERE software on the average statistic of cross-section from both Heavy Ion and Protons tests. All Weibull parameters are computed by the OMERE software with default settings.
For heavy ions, Weibull parameters are computed with normal incidence for LET from 10 to 62.5 Mev.cm2/mg for which enough statistic is collected:
SIGsat (cm2/bit) | 5,2E-09 |
L0 (MeV/(mg/cm2)) | 0,11 |
W (MeV) | 36 |
s | 4,4 |
Weilbull parameters for Heavy Ions
For protons, Weibull parameters are computed with normal incidence for energies from 30 to 230 Mev for which enough statistic is collected:
SIGsat (cm2/bit) | 4,85E-016 |
L0 (MeV) | 29,99900 |
W (MeV) | 29,68 |
s | 502E-3 |
Weilbull parameters for Protons
The SER for the four given mission profiles are given in the table below:
Mission profile | SER (bit/day) | SER (chip/day) |
---|---|---|
GEO | 2,05E-10 | 1,26E-3 |
MEO | 1,30E-09 | 7,98E-3 |
LEO1 Pol | 2,57E-09 | 1,58E-2 |
LEO2 ISS | 3,06E-10 | 1,88E-3 |
SER results
Please note that into FPGA, only a small fraction of NX FPGA memory cells are used as opposed to ASIC and SoC devices.
Less than 10% of configuration bits used in typical design
On top of that, please consider that potential single soft-errors will be automatically detected, then corrected by the CMIC.
Conclusion
The test campaigns confirmed the robustness of NG_medium.
The NG-MEDIUM robustness against heavy ions and protons particles is confirmed. This robustness is intensified by using the CMIC feature
The contribution of DPRAM uncorrected MBU, SEFI, DFF SEU with clock SET or the toggle DFF error to chip SER is negligible compared to the one of configuration memory.
No voltage sensor was used for VDD1V2 Core supply, so the voltage was the nominal supply decreased by 13% instead of 10%, which degraded the results.
© NanoXplore 2022