* Initialization (power-up, run)

Slides:



Advertisements
Similar presentations
FPGA Configuration. Introduction What is configuration? – Process for loading data into the FPGA Configuration Data Source Configuration Data Source FPGA.
Advertisements

Serial I/O - Programmable Communication Interface
CMS Week Sept 2002 HCAL Data Concentrator Status Report for RUWG and Calibration WG Eric Hazen, Jim Rohlf, Shouxiang Wu Boston University.
Firmware implementation of Integer Array Sorter Characterization presentation Dec, 2010 Elad Barzilay Uri Natanzon Supervisor: Moshe Porian.
Secure Embedded Processing through Hardware-assisted Run-time Monitoring Zubin Kumar.
COE4OI5 Engineering Design Chapter 2: UP2/UP3 board.
SVT workshop October 27, 1998 XTF HB AM Stefano Belforte - INFN Pisa1 COMMON RULES ON OPERATION MODES RUN MODE: the board does what is needed to make SVT.
Firmware based Array Sorter and Matlab testing suite Final Presentation August 2011 Elad Barzilay & Uri Natanzon Supervisor: Moshe Porian.
Technical Part Laura Sartori. - System Overview - Hardware Configuration : description of the main tasks - L2 Decision CPU: algorithm timing analysis.
September 8-14, th Workshop on Electronics for LHC1 Channel Control ASIC for the CMS Hadron Calorimeter Front End Readout Module Ray Yarema, Alan.
8279 KEYBOARD AND DISPLAY INTERFACING
QA and Testing. QA Activity Processes monitoring Standards compliance monitoring Software testing Infrastructure testing Documentation testing Usability.
AMB HW LOW LEVEL SIMULATION VS HW OUTPUT G. Volpi, INFN Pisa.
5/7/2004Tomi Mansikkala User guide for SVT/XTRP TX firmware v1.0 XTRP out Control FPGA Tomi: - Introduction - Control bit descriptions - Test Pattern format.
FPGA firmware of DC5 FEE. Outline List of issue Data loss issue Command error issue (DCM to FEM) Command lost issue (PC with USB connection to GANDALF)
8279 KEYBOARD AND DISPLAY INTERFACING
Trigger Meeting: Greg Iles5 March The APV Emulator (APVE) Task 1. –The APV25 has a 10 event buffer in de-convolution mode. –Readout of an event =
09/01/2016James Leaver SLINK Current Progress. 09/01/2016James Leaver Hardware Setup Slink Receiver Generic PCI Card Slink Transmitter Transition Card.
Proposal for an Open Source Flash Failure Analysis Platform (FLAP) By Michael Tomer, Cory Shirts, SzeHsiang Harper, Jake Johns
1 FTK AUX Design Review Functionality & Specifications M. Shochet November 11, 2014AUX design review.
18/05/2000Richard Jacobsson1 - Readout Supervisor - Outline Readout Supervisor role and design philosophy Trigger distribution Throttling and buffer control.
11 th April 2003L1 DCT Upgrade FDR – TSF SessionMarc Kelly University Of Bristol On behalf of the TSF team Firmware and Testing on the TSF Upgrade Marc.
General Tracker Meeting: Greg Iles4 December Status of the APV Emulator (APVE) First what whyhow –Reminder of what the APVE is, why we need it and.
“TALK board status” R.Fantechi, G.Lamanna & D.Gigi (CERN)
Software for tests: AMB and LAMB configuration - Available tools FTK Workshop – Pisa 13/03/2013 Daniel Magalotti University of Modena and Reggio Emilia.
System Demonstrator: status & planning The system demonstrator starts as “vertical slice”: The vertical slice will grow to include all FTK functions, but.
WINLAB Open Cognitive Radio Platform Architecture v1.0 WINLAB – Rutgers University Date : July 27th 2009 Authors : Prasanthi Maddala,
8251 USART.
Calliope-Louisa Sotiropoulou FTK: E RROR D ETECTION AND M ONITORING Aristotle University of Thessaloniki FTK WORKSHOP, ALEXANDROUPOLI: 10/03/2014.
The Monitoring Problem Firmware for the Lost Synchronization Detection Project Type: MC-IAPP Industry Academia Partnerships and Pathways Project Name:
1 Programming of FPGA in LiCAS ADC for Continuous Data Readout Week 4 Report Tuesday 22 nd July 2008 Jack Hickish.
The AMchip on the AMBoard Saverio Citraro PhD Student University of Pisa & I.N.F.N. Pisa.
Outline The Pattern Matching and the Associative Memory (AM)
Lab 4 HW/SW Compression and Decompression of Captured Image
Firmware development for the AM Board
Federico Lasagni Manghi - University of Bologna
IAPP - FTK workshop – Pisa march, 2013
ATLAS Pre-Production ROD Status SCT Version
Serial mode of data transfer
Initial check-out of Pulsar prototypes
The 8085 Microprocessor Architecture
Atmega32 Architectural Overview
FPGA Configuration Chris Stinson, 1998.
ECE 353 Lab 3 Pipeline Simulator
14-BIT Custom ADC Board Rev. B
Realising the SMP 1. Safe Machine Parameters Overview
Enrico Gamberini for the GTK WG TDAQ WG Meeting June 01, 2016
Alberto Valero 17 de Diciembre de 2007
ABC130: DAQ Hardware Status Matt Warren et al. Valencia 3 Feb 2014
Production Firmware - status Components TOTFED - status
OLD LOGIC AMBSlim5.
Vito Palladino Straw Working Group 23/3/2015
Pending technical issues and plans to address and solve
SLP1 design Christos Gentsos 9/4/2014.
The 8085 Microprocessor Architecture
HCAL Data Concentrator Production Status
Early Stage Researcher: Panos Neroutsos
Dr. Michael Nasief Lecture 2
Basic Microprocessor Architecture
CPE/EE 428/528 VLSI Design II – Intro to Testing (Part 3)
An Introduction to Microprocessor Architecture using intel 8085 as a classic processor
Serial Communication Interface: Using 8251
Operating Systems Chapter 5: Input/Output Management
The 8085 Microprocessor Architecture
"Computer Design" by Sunggu Lee
Compiled by Dr. N.Shanmugasundaram, HOD, ECE Dept, SECE.
PID meeting Mechanical implementation Electronics architecture
Computer Operation 6/22/2019.
The Road Warrior: first use of the Pulsar for SVT
FED Design and EMU-to-DAQ Test
Presentation transcript:

* Initialization (power-up, run)     * Error reporting     * Spy buffer implementation - depth, format, freezing, reading Other details for VME/ATCA registers Software items in Alberto talk     * Version control and repository for firmware and online software * Monitoring

* Initialization (power-up, run) Test Mode/Run Mode: during Tmode (a) memories, input Fifos R/W and Spy buffers write function available to VME/ATCA (b) FSMs are halted to ini state (c) exit with INIT INIT_event & Reset: INIT_event should empty everything that is event-specific: the pipeline registers, reset FSMs, reset errors in EE Word, exit TMODE; Should not touch memories content, Input Fifos, VME Error registers, Spy buffers ….. Experience during running under test will adjust the INIT procedures. They should be two INIT procedures: Reset and INIT_event. Reset should be used to reset also things that INIT_event do not touch (Input Fifos..). Both produced by VME/ATCA. IMPORTANT: provide both the Reset and INIT_ev signals to all FPGAs on your board. At power on: like Reset all pipeline registers, all FIFOs, all Spy Buffer pointers and overflow flags….. Optional

Errors Each classified error should have one bit reserved in the EE word and in a VME Error register (Read Only register, with clear from VME write) Parity or CRC error – for each link between boards Parity (PA) should be calculated at the link starting point and checked at the end point (automatic in serial links?). Parity Error detection should be registered FIFO Overflow – each FIFO full flag should produce error if set. Internal Overflow (for example overflow in a HLM in a DO) Invalid Input data (for example invalid HIT from ROD) Lost Synchronism (event tags in different streams do not match) Truncated output (for example too many roads in output) ……. What else?

Spy Buffers: what They are? INPUT FIFOs as derandomizers Spy Buffers: what They are? Hold Pointer: incremented each time a word is popped from FIFO or sent to output. When it overflows it wraps around and an ‘overflow flag’ is set → circular memory TWO MODES: SPY or FREEZE Hold Hold To be read by VME Copying data during run

Spy Buffers: where they are? @each designer boundary Board-board Connector 4 DOs AMBoard 4 TFs 4 HWs Slinks or cables Final Fit-HW Clustering in parallel – 48 DF: cross-point for clusters - ROS DOs AM 4 TFs 4 HWs 32 boards FLIC 224 Rols 128 PUs = 512 pipelines ROS Final Fit-HW 4 DOs AMBoard 4 TFs 4 HWs PU

Spy Buffers: when and how they are frozen? TWO different cases: One bit in the EE word received on input stream means ‘freeze immediately after you have finished to process the current event’. The event to be monitored will be chosen by DF that will set the EE bit into all FTK streams One severe error happened: Freeze is sent immediately to the previous board together with the event tag meaning ‘As soon as the event is processed, set the freeze’. The Freeze can be set in the outgoing EE word for the following boards (is it really necessary?).

Spy Buffers & FIFOs: how much deep? Format? Deep: 8 streams → 8 + 8 Fifos + 8 spy buffers = 24 mem-blocks. In the chip we have 172 blocks of 1000 locations → equally distributed? ~6000 locations/object (6 <events>) Format: each function block has its optimized data format of input and output? Ex. AMBFTK has different words size for hits (15 bits) & roads (32 bits). Is it an exception? What about DO and TF? Time info should be stored at each clock? 32 bit for timing? AMBFTK input chip A. Stabile

Processing Time measurements L1 accept time 4 DOs AMBoard 4 TFs 4 HWs DF Final Fit-HW FLIC ROS Each engine starts a counter at L1 accept time and when a word of the right event is written in the Spy buffer uses the right counter and writes the time ? (in each engine we need as many counters as many events are in the whole pipeline. How many?) OR The first engine starts a counter from L1 Accept, than with the first word sent to the second engine it starts the counter of the second engine and sends to it its counts up to that moment to be added ?

Other kind of measurements (simpler) First event word of an event starts a counter when it is extracted from FIFO, last EE word of the same event stops the counter → event processing time inside the engine. Measure time a FIFO is empty: empy_flag starts and stops a counter Measure time a FIFO gives Hold: HF_flag starts and stops a counter Inside FPGA measurements can be added in the future if space is available.

HW diagnostics Each board: Debugging features Cable/fiber diagnostic Must have a VME/ATCA program that fully tests the board Ideally the test should tell where the problem is E.g. minimize hardware debugging as mush as possible Internal self test would be nice (optional) Debugging features Spy buffers for each IO connection Possibility to load data in input spy buffers (or FIFOs?) to stimulate the board Possibility to load data in the output spy buffers to send data to downstream board Cable/fiber diagnostic Use input/output spy to test each cable

Hierarchical HW diagnostic DF & FTK_IMs test f. FTK_IM test function DF test function PU test function AMB test f. AUX card test f. DF to PU test f. PU to final board test f. DF to PU to final test f. DF to … to FLIC test f. Interboard test not trivial  run control based (?) First prepare modular function then study inter board test DF FTK_IM AMB LAMB AUX card

Standard VME/ATCA registers/memories Space standardization? Common Firmware? Error register – WR = clear For each FIFO: flag register (empty, HFull, Full) - RO For each FSM: state machine - RO Output Status (Hold flags) – RO Output register (or output spy buffer): a VME wr will send data on a link For each Spy Buffer: Spy Buffer register: Pointer, OVFL flag, status(freeze/spy. WR=clear of Pointer & flag. Status is RO Severity error register: for each error bit 1 (or 2) bit is dedicated to enable an ‘action’ in case of error. Will activate the stop-less removal and/or freeze signal. Board ID or chip firmware ID? (ex PROM-ID-see next slide) Input FiFos: R/W All associated memories R/W Registers for Timing measurements

Version control (Annovi proposal) Each board should have these registers: FW Version register: major 31:16 & minor 15:0 Major version will change when software changes as well Minor version change are internal changes PCB version register: to keep track of prototypes Ideally this number is hardcoded to one FPGA (e.g. use 3 pins connected to VCC and GND in the PCB) Board serial number (we will need this) Suggestion: use a small flash to write & store it during board test Also write it on the PCB to be read without power Ideally all FPGAs (or at least those with VME/ATCA access) Should have a FW version register + FW date register

Version control and repository for firmware and online software Downloading of MC or real events in each board Input FIFOs downloaded by VME- random generation In particular starting from the DF Monitoring (which standard plots? Timing and #roads, #hits…?) Version control and repository for firmware and online software See Alberto Slides