Overview of ALICE ITS UPGRADE System Scrubbing and FPGA Programming

System scrubbing & re-programming
Johan Alme
johan.alme@uib.no
ITS RU Production Readyness Review 13. April 2018
FPGA Programming Overview
Standard operation (
with beam 
while running)
Microsemi ProAsic3
Flash-based -> always programmed
Xilinx Kintex Ultrascale
Programmed at power-on or via command to PA3
Programmed from Flash memory
Remote updating (
without beam
)
Flash memory – Xilinx image
SEUs in flash memory 
 Updates during technical stops
Update via downlinks
Update through I2C
Proasic3
Only needed for feature/bug fix updates
Updated via JTAG
13.04.2018
ITS RU PRR
2
I2C
FLASH
PROM
FLASH
FPGA
PROASIC3
REGULATORS
CLOCK
SUPPLY SENSE
TEMP SENSE
JTAG
POWER
MEZZANINE
TRANSITION
BOARD
SCA
GBTx0
GBTx1
GBTx2
VTRX
VTTX
VTRX
LTU/
CTP
CRU /
O2 FLP
POWER
UNIT
POWER
UNIT
DETECTOR
SENSORS
SRAM
FPGA
XILINX
ULTRASCALE
USB3
FX3
I2C
Scrubbing
Scrubbing is an error correction technique that uses a
background task to periodically inspect/correct errors  in a
data memory.
Data memory = Config mem of Xilinx Ultrascale
Errors caused by single event upsets
Relevant scrubbing techniques for the RU:
Xilinx Soft Error Mitigation Core (sem IP)
 1
Supported by Xilinx
Detection and correction
Fast
Black box design
Sem IP core only partially mitigated
Scan starts from zero upon an upset
External Scrubbing network
Proven solution (ALICE TPC RCU1)
 2
Full control of design
No support by Xilinx
Substantially slower than sem IP
Mitigation of Flash and aux FPGA is needed
13.04.2018
ITS RU PRR
3
1
 
https://www.xilinx.com/support/documentation/ip_documentation/sem_ultra/v3_1/pg187-ultrascale-sem.pdf
2
 
https://cds.cern.ch/record/1141616
, chapter 4
RU Aux FPGA Versions
Summer 2017: First test version
Includes working UART, flash and selectmap interface w/wishbone bus structure
All other interfaces can be electrically verified
Oct 2017 – Feb. 2018: Irradiation test versions
CHARM test
:
Only init programming supported
I
2
C interface not ready
Prague tests (December/January):
I
2
C interface ready
Oxford test (March):
Scrubbing and CRC check  included
File upload to flash via Xilinx
June 2018: Final firmware, 1st version - Improved version of Oxford test firmware
Slimmer wishbone bus
Faster I
2
C access, faster scrubbing/init programming
ECC encoded flash content + ECC decoding
TMR of components involved in Xilinx programming
13.04.2018
ITS RU PRR
4
June 2018 version of RU Aux FPGA Firmware
Wishbone bus:
7b address/8b data
Better fit with I
2
C protocol – improves speed for
reading
/writing
Asynchronous Reset
Better fit for FPGA technology
Buffer memory replaced by FIFOs
Enables pipelining
Small FIFOs for file uploading/selectmap readback
2 x 128 Bytes ping-pong memory for flash reading incl.
ECC check
Improves speed of programming/scrubbing
Local TMR
1
 on components involved in programming
actions
UART possibly removed due to resource limitations
By use of generic in code
13.04.2018
ITS RU PRR
5
Improvements:
1
 
https://ntrs.nasa.gov/archive/nasa/casi.ntrs.nasa.gov/20170004736.pdf
, slide 54
Logical structure of Samsung Flash
Figure shows logical structure of Flash
Upon configuration/scrubbing the parameters page is read first
This gives location of file and filesize in flash
The init config file / scrubbing file can be located anywhere in the flash
General robustness measures:
Recognizable bytes added to know the parameter page is programmed
i.e. AA995566 first
Add ECC encoding of parameters page
Make a double/triple copy of the parameter page on different blocks
Use the 128 bytes of extra space per page for ECC code – calculate ECC on
the fly when reading the page
1
All pages comes with a 
spare section
Add double copy of all content
2
13.04.2018
ITS RU PRR
6
1
 TN-29-08: Hamming Codes for NAND Flash Memory Devices (Micron)
   TN-29-63: Error Correction Code (ECC) in SLC NAND Introduction
2
 This will be implemented dependent on FPGA resources and cross section estimates on logic in PA3 
Flash Read Controller
Flash has 128 Bytes ECC encoded packets
Aux FPGA buffers 128 bytes of data
calculates ECC + syndrome 
 
corrects single bit errors in the memory
ECC corrected buffer is read by config controller while flash interface fills second buffer
Single bit errors are corrected and reported 
 
Non-critical error
Double bit errors are reported and operation is halted 
 
critical error
If 
double copy 
is implemented on Flash, the module must also include logic for the switch-over to the second copy.
Critical error
 only if there is a double bit error in the same 128 B packet in both copies of the bitstream.
13.04.2018
ITS RU PRR
7
Key figures
13.04.2018
ITS RU PRR
8
1
 Original Xilinx bitfile 24MB
2
 Estimate with 80 MHz sys clock – 
not realistic 
with current device & TMR included
3
 Only I
2
C master includes TMR
4
 Only I
2
C master includes TMR – ECC decode/correction not included
 TMR on all modules should be possible (
but challenging
) with current device
Conclusion
The Aux FPGA design has been proven to
work within the specs of the experiment.
The Aus FPGA design behaves reliable in
beam
1
Ongoing work is to:
Improve radiation tolerance
Improve efficiency of design
Potential future functionality:
Frame by frame readback and verification
With the current architecture this is easy to
implement
Dependent on the resources on the PA3
TODO: Software package
Software is needed to generate files for the flash
contents and for uploading the files.
Flash contents – ECC encoded:
Parameter pages
Initial configuration files
Scrubbing files
Scrubbing files can only be generated by reading
back the allready programmed device 
 can be
done by JCM tool
1
.
Adapt JCM SW using RU instead of dedicated HW
Desirable for generating scrubbing files
13.04.2018
ITS RU PRR
9
1
 For Oxford beamtest results: https://indico.cern.ch/event/698929/contributions/2928323/attachments/1625746/2588858/oxford_beamtest.pdf
2
 JTAG configuration manager: http://ieeexplore.ieee.org/document/7577336/
BACKUP SLIDES
13.04.2018
ITS RU PRR
10
Code & Documentation
Code: 
https://gitlab.cern.ch/alice-its-wp10-firmware/RUv1_auxFPGA
Documentation: 
https://twiki.cern.ch/twiki/bin/view/ALICE/AuxFPGA
13.04.2018
ITS RU PRR
11
Oxford version of RU aux FPGA Firmware
Internal clock: 40 MHz 
Reset: External power on
reset chip guarantees
known power up state
Same POR chip as for TPC
RCU2
Reset is also available as
command via I2C.
Synchronous reset
Wishbone interface ensures
that all operations are
remotely accessible
Read/write selectMap
Read/write flash
status information
13.04.2018
ITS RU PRR
12
Mass Production Testplan (simplified)
I2C interface:
Execute read ID from selectMAP
Execute read ID from Flash
Set pattern on SCA GPIOs to verify connectivity
Set/Read other IOs via Wishbone bus to verify connectivity
UART/I2C interface:
Read out spare section of first page in each block in flash
VERY IMPORTANT! This will provide information on Valid Blocks on Flash!
Upload config file to Flash. Read back and verify.
Use Fast interface via Xilinx (XUC programmed with JTAG)
Configure Xilinx from Flash. Verify.
Scrub Xilinx from Flash. Verify.
Erase Flash. Verify.
13.04.2018
ITS RU PRR
13
Flash Memory SEU cross section
From the Prague irradiation campaign, the SEU cross section in the Flash Memory is estimated
1
to:
(0 
 1) 10
-16
 cm
2
/bit
(1 
 0) 10
-21
 cm
2
/bit
A typical scrubbing file has a 1:20 ratio of Ones vs Zeros
A typical programming file has a 1:50 ratio (given no default values written to BRAM) 
Three measures for correcting of errors in the programming file stored in flash memory will be
implemented in the PA3 firmware (next slide).
13.04.2018
ITS RU PRR
14
1
 Study done by Matteo Lupi (matteo.lupi@cern.ch)
P
r
o
b
a
b
i
l
i
t
y
 
o
f
 
f
a
t
a
l
 
e
r
r
o
r
 
i
n
 
F
l
a
s
h
Combined cross-section:
CS
1:20
 = 4.76E-18 cm
2
/bit
Probability of double bitflip in a random ECC block:
P(random) ≈ (CS
1:20
*ECC_size)
2
 *ECC_blocks = 
6.3E-22
Probability of double bitflip in a specific ECC block:
P(specific) ≈ P(random)/ECC_blocks = 
2.5E-29
Combined Probability, same ECC block hit in both flash chips:
P(random ∩ specific) = P(random) * P(specific) = 
1.6E-50
 1E-40 
double bitflips in same ECC block in both flash chips during 10h spill for all
boards
Important numbers:
ECC block size: 
  
1048 bits
# ECC blocks on Flash:
 
2.52E+07
Est. flux Run 3: 
  
1 kHz/cm
2
Est. fluence 10h spill:
 
3.6E+07 cm
-2
Cross-section (1
0):
 
1.0E-21 cm
2
/bit
Cross-section (0
1):
 
1.0E-16 cm
2
/bit
Ratio 1:0 scrub-file:
  
1:20
 
ITS Plenary Meeting 28th Feb - 1st Mar 2018
15
Flash cell robustness measures for the bitstream
Three measures are implemented or planned:
1.
Storing the programming file inverted
Utilizing the 1:20 ratio of 1s vs 0s
2.
Adding Hamming encoding of the bitstream
128 bytes ECC encoded blocks
Single error correction, double error detection
3.
Store two copies of all the files in the Flash
1
The Flash itself has two identical memories in the package
Content can be mirrored without any penalty regarding file uploading
This gives:
P(fatal error) == P(
double bitflip
 in the 
same
 ECC encoded block in 
both copies 
of the file)
Fatal error = init config/scrubbing not operative
Cross Section fatal error = 
1.6e-50
13.04.2018
ITS RU PRR
16
1
 This will be implemented dependent on FPGA resources and cross section estimates on logic in PA3 
Project work flow
All source and documentation files is checked into wp10-GIT
WP10 GIT structure guideline is followed 
Project is fully script based. Microsemi toolchain needed to compile/synthesise/P&R
BITVIS UVVM
1
 simulation environment is used for verification. 
All modules will have individual testbenches
28.09.2024
17
1
 http://www.bitvis.no
Configuration/reconfiguration
All modules are controlled by an adressable bus interface.
selectMAP and Flash interface are 
command
 based
This means that the interfaces ONLY does protocol implementation 
easy to adapt design for future changes.
Note: Both selectMAP and Flash supports streaming on reading/writing
Note: The address structure are not finished
Operational modes define the ongoing configuration tasks
The 
configuration controller 
then takes control over the 
flash interface
and the 
selectmap interface
.
Accessing these modules from the bus will then only give you status –
and a possibility to abort the ongoing operation.
Other modules are still accessible
Selectmap commands:
Read (8 bit)
Write (8 bit)
Init
Startup
Abort
Flash commands:
Read (8 bit)
Write (8 bit)
Erase all
Block Erase
Operational modes:
Initial configuration
Scrubbing from flash
(Frame readback and
reconfig)
28.09.2024
18
Selectmap communication
The command based interface enables debugging by
using simple scripts over UART (or I2C)
Example: read STAT register 
The only difference from the TPC RCU Xilinx Virtex2pro
is the inclusion of the 
bus width (8bit = 
0xBB
 THEN
0x11
).
Commands to do initial configuration:
INIT
WRITE x numOfBytes
STARTUP
For scrubbing:
WRITE x numOfBytes
STARTUP
28.09.2024
19
https://www.xilinx.com/support/documentation/user_guides/ug570-ultrascale-configuration.pdf
Assumes all other info is stored on flash/remotely
Slide Note
Embed
Share

ALICE ITS UPGRADE system undergoes scrubbing for error correction using various techniques like Xilinx Soft Error Mitigation Core and External Scrubbing Network. The FPGA programming overview includes standard operations, remote updating methods, and FPGA versions timeline. Relevant topics cover data memory scrubbing, FPGA programming techniques, and versions of the RU Aux FPGA.

  • ALICE ITS UPGRADE
  • system scrubbing
  • FPGA programming
  • error correction
  • Xilinx

Uploaded on Sep 28, 2024 | 0 Views


Download Presentation

Please find below an Image/Link to download the presentation.

The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author. Download presentation by click this link. If you encounter any issues during the download, it is possible that the publisher has removed the file from their server.

E N D

Presentation Transcript


  1. ALICE ITS UPGRADE System scrubbing & re-programming Johan Alme johan.alme@uib.no ITS RU Production Readyness Review 13. April 2018

  2. FPGA Programming Overview ALICE ITS UPGRADE Standard operation (with beam while running) Microsemi ProAsic3 Flash-based -> always programmed Xilinx Kintex Ultrascale Programmed at power-on or via command to PA3 Programmed from Flash memory Remote updating (without beam) Flash memory Xilinx image SEUs in flash memory Updates during technical stops Update via downlinks Update through I2C Proasic3 Only needed for feature/bug fix updates Updated via JTAG REGULATORS FLASH FPGA PROASIC3 FLASH PROM CLOCK SUPPLY SENSE TEMP SENSE POWER UNIT JTAG I2C POWER UNIT SCA POWER MEZZANINE I2C SRAM FPGA XILINX ULTRASCALE GBTx0 VTRX CRU / O2 FLP TRANSITION BOARD DETECTOR SENSORS GBTx1 VTTX LTU/ CTP GBTx2 VTRX FX3 USB3 13.04.2018 ITS RU PRR 2

  3. Scrubbing ALICE ITS UPGRADE Scrubbing is an error correction technique that uses a background task to periodically inspect/correct errors in a data memory. Data memory = Config mem of Xilinx Ultrascale Errors caused by single event upsets Relevant scrubbing techniques for the RU: Xilinx Soft Error Mitigation Core (sem IP)1 Supported by Xilinx Detection and correction Fast Black box design Sem IP core only partially mitigated Scan starts from zero upon an upset External Scrubbing network Proven solution (ALICE TPC RCU1)2 Full control of design No support by Xilinx Substantially slower than sem IP Mitigation of Flash and aux FPGA is needed I2C UART Flash protocol selectMAP Xilinx Kintex Ultrascale Microsemi Proasic3 Samsung Flash Aux FPGA 1https://www.xilinx.com/support/documentation/ip_documentation/sem_ultra/v3_1/pg187-ultrascale-sem.pdf 2https://cds.cern.ch/record/1141616, chapter 4 13.04.2018 ITS RU PRR 3

  4. RU Aux FPGA Versions ALICE ITS UPGRADE Summer 2017: First test version Includes working UART, flash and selectmap interface w/wishbone bus structure All other interfaces can be electrically verified Oct 2017 Feb. 2018: Irradiation test versions CHARM test: Only init programming supported I2C interface not ready Prague tests (December/January): I2C interface ready Oxford test (March): Scrubbing and CRC check included File upload to flash via Xilinx June 2018: Final firmware, 1st version - Improved version of Oxford test firmware Slimmer wishbone bus Faster I2C access, faster scrubbing/init programming ECC encoded flash content + ECC decoding TMR of components involved in Xilinx programming 13.04.2018 ITS RU PRR 4

  5. June 2018 version of RU Aux FPGA Firmware ALICE ITS UPGRADE Improvements: SCA GBTx Wishbone bus: 7b address/8b data Better fit with I2C protocol improves speed for reading/writing Aux FPGA (PA3) debug GPIO status I2C UART (master) (master) Asynchronous Reset Better fit for FPGA technology Wishbone Bus (8b data/7b addr) Clk 40MHz Clk 160 MHz Clk/ Reset reset POR reset Buffer memory replaced by FIFOs Enables pipelining Small FIFOs for file uploading/selectmap readback 2 x 128 Bytes ping-pong memory for flash reading incl. ECC check Improves speed of programming/scrubbing register block FIFO Xilinx KUS FIFO Flash Write Controller FIFO Samsung Flash selectMAP Xilinx KUS Local TMR1on components involved in programming actions Flash interface Flash Read Controller config. ctrl selectmap interface FIFO UART possibly removed due to resource limitations By use of generic in code TMR implemented TMR implementation ongoing Will not be mitigated 1https://ntrs.nasa.gov/archive/nasa/casi.ntrs.nasa.gov/20170004736.pdf, slide 54 13.04.2018 ITS RU PRR 5

  6. Logical structure of Samsung Flash ALICE ITS UPGRADE Figure shows logical structure of Flash Upon configuration/scrubbing the parameters page is read first This gives location of file and filesize in flash The init config file / scrubbing file can be located anywhere in the flash General robustness measures: Recognizable bytes added to know the parameter page is programmed i.e. AA995566 first Add ECC encoding of parameters page Make a double/triple copy of the parameter page on different blocks Use the 128 bytes of extra space per page for ECC code calculate ECC on the fly when reading the page1 All pages comes with a spare section Add double copy of all content2 1 TN-29-08: Hamming Codes for NAND Flash Memory Devices (Micron) TN-29-63: Error CorrectionCode (ECC) in SLC NAND Introduction 2This will be implementeddependent on FPGA resourcesand cross sectionestimateson logic in PA3 13.04.2018 ITS RU PRR 6

  7. Flash Read Controller ALICE ITS UPGRADE 128 Bytes memory FIFO style if E C C E C C 128 Bytes data block 128 Bytes data block ping pong memories 128 Bytes memory ECC generator ECC correction Flash has 128 Bytes ECC encoded packets Aux FPGA buffers 128 bytes of data calculates ECC + syndrome corrects single bit errors in the memory ECC corrected buffer is read by config controller while flash interface fills second buffer Single bit errors are corrected and reported Non-critical error Double bit errors are reported and operation is halted critical error If double copy is implemented on Flash, the module must also include logic for the switch-over to the second copy. Critical error only if there is a double bit error in the same 128 B packet in both copies of the bitstream. 13.04.2018 ITS RU PRR 7

  8. Key figures ALICE ITS UPGRADE Feature Beamtest version Final version (40 MHz system clock) Programming file1uploading via UART ~8 mins ~8 mins (if supported) Programming file1uploading via I2C (using CRU) ~60 mins ~16 mins Programming file1uploading via Xilinx FIFO (using CRU) ~30 sec ~30 sec FLASH: 4K page read time ~525 us ~325 us ~1.7 sec2 Initial Programming of Xilinx from Flash ~5 sec ~3 sec ~2.4 sec ~1.3 sec2 Blind Scrubbing of Xilinx from Flash ~3.8 sec I2C Single Register Read ~183 us ~39 us I2C Single Register Write ~133 us ~39 us 7268/13824 COREs3 8/24 RAMs 4400/13824 COREs4 9/24 RAMs Resource utilization 1Original Xilinx bitfile 24MB 2Estimate with 80 MHz sys clock not realistic with current device & TMR included 3Only I2C master includes TMR 4Only I2C master includes TMR ECC decode/correction not included TMR on all modules should be possible (but challenging) with current device 13.04.2018 ITS RU PRR 8

  9. Conclusion ALICE ITS UPGRADE The Aux FPGA design has been proven to work within the specs of the experiment. The Aus FPGA design behaves reliable in beam1 TODO: Software package Software is needed to generate files for the flash contents and for uploading the files. Flash contents ECC encoded: Parameter pages Initial configuration files Scrubbing files Ongoing work is to: Improve radiation tolerance Improve efficiency of design Scrubbing files can only be generated by reading back the allready programmed device can be done by JCM tool1. Potential future functionality: Frame by frame readback and verification With the current architecture this is easy to implement Dependent on the resources on the PA3 Adapt JCM SW using RU instead of dedicated HW Desirable for generating scrubbing files 1For Oxford beamtest results: https://indico.cern.ch/event/698929/contributions/2928323/attachments/1625746/2588858/oxford_beamtest.pdf 2JTAG configurationmanager: http://ieeexplore.ieee.org/document/7577336/ 13.04.2018 ITS RU PRR 9

  10. ALICE ITS UPGRADE BACKUP SLIDES 13.04.2018 ITS RU PRR 10

  11. Code & Documentation ALICE ITS UPGRADE Code: https://gitlab.cern.ch/alice-its-wp10-firmware/RUv1_auxFPGA Documentation: https://twiki.cern.ch/twiki/bin/view/ALICE/AuxFPGA 13.04.2018 ITS RU PRR 11

  12. Oxford version of RU aux FPGA Firmware ALICE ITS UPGRADE pinheader SCA Internal clock: 40 MHz Aux FPGA (PA3) debug Reset: External power on reset chip guarantees known power up state Same POR chip as for TPC RCU2 Reset is also available as command via I2C. Synchronous reset GPIO status I2C UART (master) (master) Wishbone Bus (32b data/16b addr) Clk 40MHz Clk 160 MHz Clk/ Reset reset POR reset memory ctrl register block Wishbone interface ensures that all operations are remotely accessible Read/write selectMap Read/write flash status information Samsung Flash Xilinx KUS 4096B buffer config. ctrl selectmap interface Flash interface 13.04.2018 ITS RU PRR 12

  13. Mass Production Testplan (simplified) ALICE ITS UPGRADE I2C interface: Execute read ID from selectMAP Execute read ID from Flash Set pattern on SCA GPIOs to verify connectivity Set/Read other IOs via Wishbone bus to verify connectivity UART/I2C interface: Read out spare section of first page in each block in flash VERY IMPORTANT! This will provide information on Valid Blocks on Flash! Upload config file to Flash. Read back and verify. Use Fast interface via Xilinx (XUC programmed with JTAG) Configure Xilinx from Flash. Verify. Scrub Xilinx from Flash. Verify. Erase Flash. Verify. 13.04.2018 ITS RU PRR 13

  14. Flash Memory SEU cross section ALICE ITS UPGRADE From the Prague irradiation campaign, the SEU cross section in the Flash Memory is estimated1 to: (0 1) 10-16cm2/bit (1 0) 10-21cm2/bit A typical scrubbing file has a 1:20 ratio of Ones vs Zeros A typical programming file has a 1:50 ratio (given no default values written to BRAM) Three measures for correcting of errors in the programming file stored in flash memory will be implemented in the PA3 firmware (next slide). 1Study done by Matteo Lupi (matteo.lupi@cern.ch) 13.04.2018 ITS RU PRR 14

  15. Probability of fatal error in Flash Probability of fatal error in Flash ALICE ITS UPGRADE Important numbers: ECC block size: # ECC blocks on Flash: Est. flux Run 3: Est. fluence 10h spill: Cross-section (1 0): Cross-section (0 1): Ratio 1:0 scrub-file: 1048 bits 2.52E+07 Combined cross-section: CS1:20 = 4.76E-18 cm2/bit 1 kHz/cm2 3.6E+07 cm-2 1.0E-21 cm2/bit 1.0E-16 cm2/bit Probability of double bitflip in a random ECC block: P(random) (CS1:20*ECC_size)2 *ECC_blocks = 6.3E-22 Probability of double bitflip in a specific ECC block: P(specific) P(random)/ECC_blocks = 2.5E-29 Combined Probability, same ECC block hit in both flash chips: P(random specific) = P(random) * P(specific) = 1.6E-50 1:20 1E-40 double bitflips in same ECC block in both flash chips during 10h spill for all boards ITS Plenary Meeting 28th Feb - 1st Mar 2018 15

  16. Flash cell robustness measures for the bitstream ALICE ITS UPGRADE ProASIC3 Samsung Flash Bus interface IC#0 Select MAP IF Conf. CTRL ECC CHK Flash IF Xilinx UltraScale FIFO Three measures are implemented or planned: 1. Storing the programming file inverted Utilizing the 1:20 ratio of 1s vs 0s 2. Adding Hamming encoding of the bitstream 128 bytes ECC encoded blocks Single error correction, double error detection 3. Store two copies of all the files in the Flash1 The Flash itself has two identical memories in the package Content can be mirrored without any penalty regarding file uploading IC#1 This gives: P(fatal error) == P(double bitflip in the same ECC encoded block in both copies of the file) Fatal error = init config/scrubbing not operative Cross Section fatal error = 1.6e-50 1This will be implemented dependent on FPGA resources and cross section estimates on logic in PA3 13.04.2018 ITS RU PRR 16

  17. Project work flow ALICE ITS UPGRADE All source and documentation files is checked into wp10-GIT WP10 GIT structure guideline is followed Project is fully script based. Microsemi toolchain needed to compile/synthesise/P&R BITVIS UVVM1 simulation environment is used for verification. All modules will have individual testbenches 1http://www.bitvis.no 28.09.2024 17

  18. Configuration/reconfiguration ALICE ITS UPGRADE All modules are controlled by an adressable bus interface. selectMAP and Flash interface are command based This means that the interfaces ONLY does protocol implementation easy to adapt design for future changes. Note: Both selectMAP and Flash supports streaming on reading/writing Selectmap commands: Read (8 bit) Write (8 bit) Init Startup Abort Flash commands: Read (8 bit) Write (8 bit) Erase all Block Erase Operational modes: Initial configuration Scrubbing from flash (Frame readback and reconfig) Note: The address structure are not finished Operational modes define the ongoing configuration tasks The configuration controller then takes control over the flash interface and the selectmap interface. Accessing these modules from the bus will then only give you status and a possibility to abort the ongoing operation. Other modules are still accessible 28.09.2024 18

  19. Selectmap communication ALICE ITS UPGRADE https://www.xilinx.com/support/documentation/user_guides/ug570-ultrascale-configuration.pdf The command based interface enables debugging by using simple scripts over UART (or I2C) Example: read STAT register The only difference from the TPC RCU Xilinx Virtex2pro is the inclusion of the bus width (8bit = 0xBB THEN 0x11). Commands to do initial configuration: INIT WRITE x numOfBytes STARTUP For scrubbing: WRITE x numOfBytes STARTUP Assumes all other info is stored on flash/remotely 28.09.2024 19

More Related Content

giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#