Firmware for the CPLD on the RCU

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

Sundance Multiprocessor Technology SMT702 + SMT712.
Xilinx CPLDs and FPGAs Module F2-1. CPLDs and FPGAs XC9500 CPLD XC4000 FPGA Spartan FPGA Spartan II FPGA Virtex FPGA.
ICAP CONTROLLER FOR HIGH-RELIABLE INTERNAL SCRUBBING Quinn Martin Steven Fingulin.
Normal text - click to edit Status Report TPC Electronics Meeting, CERN Johan Alme & Ketil Røed, UoB.
Normal text - click to edit Trigger interface module Kjetil Ullaland, Sten Solli, Johan Alme TPC Electronics meeting. CERN Jan 2005.
Insertion Sort using FPGA’s Aaron Tiedje CSE 670 Winter 2004 March 1, 2004 Professor R. Haskell Embedded Systems using FPGA's.
Configuration. Mirjana Stojanovic Process of loading bitstream of a design into the configuration memory. Bitstream is the transmission.
CoolRunner™-II Advanced Features - II. Quick Start Training Advanced CoolRunner-II Techniques-II On the Fly Reconfiguration (OTF) – Understanding OTF.
Normal text - click to edit RCU – DCS system in ALICE RCU design, prototyping and test results (TPC & PHOS) Johan Alme.
Normal text - click to edit Configuring of Xilinx Virtex-II Kjetil Ullaland, Ketil Røed, Bjørn Pommeresche, Johan Alme TPC Electronics meeting. CERN
PCIe Mezzanine Carrier Pablo Alvarez BE/CO. Functional Specifications External Interfaces User (application) FPGA System FPGA Memory blocks Mezzanine.
1-1 NET+OS Software Group Flash API Multiple flash memory bank support New Flash API introduction Detailed Flash API Function presentation Supporting.
Status-report TPC Electronics Meeting Dieter Röhrich, Kjetil Ullaland, Ketil Røed, Mattias Richter, Sebastian Bablok, Johan Alme.
Topics to be covered : How to model memory in Verilog RAM modeling Register Bank.
Virtual Memory Review Goal: give illusion of a large memory Allow many processes to share single memory Strategy Break physical memory up into blocks (pages)
Bernardo Mota (CERN PH/ED) 17/05/04ALICE TPC Meeting Progress on the RCU Prototyping Bernardo Mota CERN PH/ED Overview Architecture Trigger and Clock Distribution.
CHAPTER 5 Configuration, Reconfiguration and Security.
INTRODUCTION TO PIC MICROCONTROLLER. Overview and Features The term PIC stands for Peripheral Interface Controller. Microchip Technology, USA. Basically.
H-RORC HLT-Meeting CERN 02/06/05 Torsten Alt KIP Heidelberg.
17/02/06H-RORCKIP HeidelbergTorsten Alt The new H-RORC H-RORC.
© Copyright 2010 Xilinx ML605 MultiBoot Design May 2010 © Copyright 2010 Xilinx XTP043.
Radiation Tolerance Studies using Fault Injection on the Readout Control FPGA Design of the ALICE TPC Detector Johan Alme Bergen University College, Norway.
Input/Output (I/O) Important OS function – control I/O
Introduction to Microcontroller Technology
DAQ / Trigger Card for HCAL SLHC Readout E. Hazen - Boston University
Lecture 11 Virtual Memory
Architectures of Digital Information Systems Part 1: Interrupts and DMA dr.ir. A.C. Verschueren Eindhoven University of Technology Section of Digital.
Chapter 13: I/O Systems Modified by Dr. Neerja Mhaskar for CS 3SH3.
Atmega32 Architectural Overview
FPGA Configuration Chris Stinson, 1998.
Topics SRAM-based FPGA fabrics: Xilinx. Altera..
ABC130: DAQ Hardware Status Matt Warren et al. Valencia 3 Feb 2014
Virtual Memory User memory model so far:
FPGA IRRADIATION and TESTING PLANS (Update)
VME Bus error A possible error condition for TMB whose firmware has been “misloaded” is to cause Bus Error on VME crate controller (VCC) at power up… Under.
Virtual Memory Use main memory as a “cache” for secondary (disk) storage Managed jointly by CPU hardware and the operating system (OS) Programs share main.
The 8085 Microprocessor Architecture
Status of the Front-End Electronics and DCS for PHOS and TPC
SEU Mitigation Techniques for Virtex FPGAs in Space Applications
Introduction of microprocessor
MULTIBOOT AND SPI FLASH MEMORY
Radiation Tolerance of an Used in a Large Tracking Detector
RCU3 –> RCU4 New Schematics
An Introduction to Microprocessor Architecture using intel 8085 as a classic processor
Torsten Alt, Kjetil Ullaland, Matthias Richter, Ketil Røed, Johan Alme
Introduction to Microprocessors and Microcontrollers
AT91RM9200 Boot strategies This training module describes the boot strategies on the AT91RM9200 including the internal Boot ROM and the U-Boot program.
AT91 Memory Interface This training module describes the External Bus Interface (EBI), which generatesthe signals that control the access to the external.
Lecture 18 Interrupt 동국대학교 홍유표.
Module 2: Computer-System Structures
Speaker: Tian-Sheuan Chang July, 2004
8085 Microprocessor Architecture
Introducing the PIC Mid-Range Family and the 16F84A
Enhancing Data Path M 4-bit Reg X A L U
The 8085 Microprocessor Architecture
8051 Micro Controller.
Reconfigurable FPGAs (The Xilinx Virtex II Pro / ProX FPGA family)
Module 2: Computer-System Structures
Chapter 9 Bootloader.
UNIT-III Pin Diagram Of 8086
Lecture 23.
CSE 471 Autumn 1998 Virtual memory
TPC Electronics Meeting, 13/01/05 Carmen González Gutiérrez
Chapter 2: Computer-System Structures
Chapter 2: Computer-System Structures
Module 2: Computer-System Structures
Module 2: Computer-System Structures
Chapter 13: I/O Systems.
Remote System Update Example Design for Cyclone IV GX Transceiver Starter Board April 23rd, 2015 (Rev 1.0)
Presentation transcript:

Firmware for the CPLD on the RCU Kjetil Ullaland, Ketil Røed, Bjørn Pommeresche, Johan Alme TPC Electronics meeting. CERN 13-14. Jan 2005

Overview Requirements Concepts of configuration Proposed design Modules RCU bus interface SelectMap interface Flash interface Readback and verification module JTAG input block CPLD Status

Requirements

Requirements Configure the Virtex-II on power-up Scrubbing of the Virtex-II from Flash Write configuration-files to the Flash from the DCS-card Readback and verify configuration memory in Virtex-II with stored files in Flash. Configure Virtex-II from DCS-card. Configure the CPLD firmware Status registers in the CPLD for Config-status, verification etc. Possibility to load data into flash memory when DCS board is detached.

Concepts of Configuration A mode register to choose different concepts of configuration (in memory mapped mode): 0: Scrub At Will 1: Continously Scrubbing 2: readback/verify 3: Clear config memory and configure. 4: read flash 5: read config memory Transport data interface: Write configuration files to flash Read configuration files from flash Write configuration to Virtex-II Read configuration from Virtex-II JTAG line to be able to configure Flash.

Proposed Design

Proposed Design (2) Two bus modes between DCS and CPLD Transport data interface. For configuration data streams. Normal mode. Memory mapped interface for status and control. Both modes using RCU bus lines. One control line (DCS_ctrl[7]) is used to switch between the different modes.

Mem mapped mode vs transport data IF Memory mapped mode Fast mode

CPLD Register Map – Mem mapped mode Status register: Readback/verification errors (4 bit) Scrub error (1 bit) Config error (1 bit) Flash Communication error (1 bit) Control register: Mode of operation (3 bit) StartScrub WDMaxValue – Watch dog max value ScrubRate – Time between each scrub cycle in scrubmode. FlashBank – Possibility to choose bank in flash where configuration file is. selMapData – Data to/from the selectMap interface flashData – Data to/from the flash

Error handling Watchdog Timeout of bus communication If Virtex-II doesn’t give a life-pulse within a user-defined time, a complete reconfiguring including clearing of configuratiopn memory is done (hard reset) Timeout of bus communication If a write cycle fail on the RCU bus lines, go to default mode Automatic scrubbing if readback/verification error.

RCU bus interface (memory mapped mode) Standard memory mapped interface with timeout functionality on bus communication. Use RCU bus lines between DCS and CPLD.

Transport data interface Use RCU bus lines between DCS and CPLD.

Selectmap interface Communicates with the Virtex-II over the selectMap bus. Complete configuring cycle with non-continuous clock shown.

Selectmap interface Receives data from two sources: 32 bits of data from the DCS board 16 bits of data from the Flash memory interface. Data must be bitswapped byte by byte. (bin or bit file is used.) Ships data to two data sources DCS board, 32 bit at the time Readback and verification module, 8 bit at the time

Flash interface Read or write data from/to the flash memory over the dedicated bus. 16 bit data 22 bit address 5 control lines 3 files must be stored in flash Bin-file (or bit-file). Configuration data file. Rbb-file. File used for readback and verification. Copy of the bitstream. Msk-file. File used for readback and verification. Mask out bits that should not be compared between the rbb-file and the readback bitstream. All files are approx 368 KB

Readback and verification module Compares the bitstream from selectMap interface with the rbb-file and msk-file in the flash. RBB[i] = MSK[i] x DATA[i] If error is found, a scrubbing cycle is initiated immidiately, and the error counter is updated.

JTAG input block Translates information from the JTAG input and ships it to the Flash interface to write bin-file to the flash.

Choice of CPLD Configuration memory must be flash based. Approx max Size (registers): Registermap 75 statemachines 32 addr latch 4 data latch 32 wd cnt 30 scrubrate cnt 30 Flash addr cnt 44 Timeout cnt 4 Synchronizers 3 Framecounters 20 SUM ~300 One register per macrocell means we need at least 300 macrocells.

Status Preliminary specifications are finished. Some issues need further investigation. Readback and verification Partial reconfiguration