ICTP Latin-American Advanced Course on FPGADesign for Scientific Instrumentation. 19 November - 7 December, 2012

Similar documents
EE 330 Integrated Circuit. Sequential Airbag Controller

e-smart 2009 Low cost fault injection method for security characterization

Investigation of timing constraints violation as a fault injection means. ZUSSA Loïc, DUTERTRE Jean-Max, CLEDIERE Jessy, ROBISSON Bruno, TRIA Assia

Registers Shift Registers Accumulators Register Files Register Transfer Language. Chapter 8 Registers. SKEE2263 Digital Systems

An High Voltage CMOS Voltage Regulator for automotive alternators with programmable functionalities and full reverse polarity capability

ReCoSoC Experimental Fault Injection based on the Prototyping of an AES Cryptosystem

CS250 VLSI Systems Design

Field Programmable Gate Arrays a Case Study

CMPEN 411 VLSI Digital Circuits Spring Lecture 22: Memery, ROM

Energy Efficient Content-Addressable Memory

RAM-Type Interface for Embedded User Flash Memory

8Mbit to 256MBit HyperMemory SRAM and FIFO. Configurations. Features. Introduction. Applications

Marwan Adas December 6, 2011

Design and Analysis of 32 Bit Regular and Improved Square Root Carry Select Adder

DARE+ DARE+ Design Against Radiation Effects (Digital) Cell Libraries. Jupiter Icy Moons Explorer (JUICE) Instruments Workshop 9 November 2011

The Compact Muon Solenoid Experiment. Conference Report. Mailing address: CMS CERN, CH-1211 GENEVA 23, Switzerland

VHDL (and verilog) allow complex hardware to be described in either single-segment style to two-segment style

Straw Detectors for the Large Hadron Collider. Dirk Wiedner

CprE 281: Digital Logic

- - DQ0 NC DQ1 DQ0 DQ2 - NC DQ1 DQ3 NC - NC

128Mb Synchronous DRAM. Features High Performance: Description. REV 1.0 May, 2001 NT5SV32M4CT NT5SV16M8CT NT5SV8M16CT

SYNCHRONOUS DRAM. 256Mb: x4, x8, x16 SDRAM 3.3V

- DQ0 - NC DQ1 - NC - NC DQ0 - NC DQ2 DQ1 DQ CONFIGURATION. None SPEED GRADE

INSTITUTO SUPERIOR TÉCNICO. Architectures for Embedded Computing

Topics on Compilers. Introduction to CGRA

Using SystemVerilog Assertions in Gate-Level Verification Environments

- - DQ0 NC DQ1 DQ0 DQ2 - NC DQ1 DQ3 NC - NC

- DQ0 - NC DQ1 - NC - NC DQ0 - NC DQ2 DQ1 DQ

AVS64( )L

Finite Element Based, FPGA-Implemented Electric Machine Model for Hardware-in-the-Loop (HIL) Simulation

Databus Systems in High Energy Physics (HEP): Past, Present, and Future

- DQ0 - NC DQ1 - NC - NC DQ0 - NC DQ2 DQ1 DQ

XC95144 In-System Programmable CPLD. Features. Description. Power Management. December 4, 1998 (Version 4.0) 1 1* Product Specification

6.823 Computer System Architecture Prerequisite Self-Assessment Test Assigned Feb. 6, 2019 Due Feb 11, 2019

CMPEN 411 VLSI Digital Circuits Spring Lecture 20: Multiplier Design

A Predictive Delay Fault Avoidance Scheme for Coarse Grained Reconfigurable Architecture

FULLY SYNCHRONOUS DESIGN By Serge Mathieu

Exploiting Clock Skew Scheduling for FPGA

SDRAM AS4SD8M Mb: 8 Meg x 16 SDRAM Synchronous DRAM Memory. PIN ASSIGNMENT (Top View)

Page 1. Goal. Digital Circuits: why they leak, how to counter. Design methodology: consider all design abstraction levels. Outline: bottom-up

Quality control considerations for the development of the front end hybrid circuits for the CMS Outer Tracker upgrade

The ATLAS Detector at the Large Hadron Collider. Peter Krieger IPP/University of Toronto

Digital Automatic. Accurate Measurement of On/Off Time for b/g WLAN/WiMAX LNAs LNA ON/OFF TIME. This article compares two

Successive Approximation Time-to-Digital Converter with Vernier-level Resolution

PERFORMANCE BENEFITS OF CONNECTED VEHICLES FOR IMPLEMENTING SPEED HARMONIZATION

DQ0 NC DQ1 DQ0 DQ2 DQ3 DQ Speed Grade

Shrink-TSOP. M464S3323CN0 SDRAM SODIMM 32Mx64 SDRAM SODIMM based on stsop2 16Mx8, 4Banks, 4K Refresh, 3.3V SDRAMs with SPD. Pin. Front. Pin.

Notes: 1K A[9:0] Hold

Recent Cooling Tests on the Pixel Staves and Real Scale Circuits

Sequential Circuit Background. Young Won Lim 11/6/15

CS 250! VLSI System Design

DOUBLE DATA RATE (DDR) SDRAM

A48P4616B. 16M X 16 Bit DDR DRAM. Document Title 16M X 16 Bit DDR DRAM. Revision History. AMIC Technology, Corp. Rev. No. History Issue Date Remark

HALL A MOLLER DAQ FIRMWARE for FADC-250 s Xilinx FX20 FPGA

High-Throughput Asynchronous Pipelines for Fine-Grain Dynamic Datapaths Λ

EE Gruppenmeeting. GSI-Darmstadt NYXOR+GMX. GSI Detector Laboratory(RBDL) C.Caesar EE Gruppenmeeting - GSI / Darmstadt

Powering Schemes for the Strip Trackers

Ming Cheng, Bo Chen, Michigan Technological University

SYNCHRONOUS DRAM. 128Mb: x32 SDRAM. MT48LC4M32B2-1 Meg x 32 x 4 banks

Core Power Delivery Network Analysis of Core and Coreless Substrates in a Multilayer Organic Buildup Package

( DOC No. HX8705-B-DS ) HX8705-B

Powering Schemes for the Strip Trackers

M464S1724CT1 SDRAM SODIMM 16Mx64 SDRAM SODIMM based on 8Mx16,4Banks,4K Refresh,3.3V Synchronous DRAMs with SPD. Pin. Pin. Back. Front DQ53 DQ54 DQ55

ASIC Design (7v81) Spring 2000

Revision History. REV. 0.1 June Revision 0.0 (May, 1999) PC133 first published.

IS42S32200C1. 512K Bits x 32 Bits x 4 Banks (64-MBIT) SYNCHRONOUS DYNAMIC RAM

DQ18 DQ19 VDD DQ20 NC *VREF **CKE1 VSS DQ21 DQ22 DQ23 VSS DQ24 DQ25 DQ26 DQ27 VDD DQ28 DQ29 DQ30 DQ31 VSS **CLK2 NC NC SDA SCL VDD

Programmable Comparator Options for the isppac-powr1220at8

MODELING QLC FLASH RELIABILITY. Nenad Miladinovic

Design Specification. DDR2 UDIMM Enhanced Performance Profiles

Learn to Design with Stratix III FPGAs Programmable Power Technology and Selectable Core Voltage

HYB25D256400/800AT 256-MBit Double Data Rata SDRAM

IS42S32200L IS45S32200L

Low Power And High Performance 32bit Unsigned Multiplier Using Adders. Hyderabad, A.P , India. Hyderabad, A.P , India.

Advantage Memory Corporation reserves the right to change products and specifications without notice

XC95288 In-System Programmable CPLD

ECU Development for a Formula SAE Engine

NR Electric Uses RT-LAB Real-time Simulator to Test the Control and Protection System for the Zhoushan Multiterminal

Using ModelSim and Matlab/Simulink for System Simulation in Automotive Engineering

Advantage Memory Corporation reserves the right to change products and specifications without notice

Advantage Memory Corporation reserves the right to change products and specifications without notice

Notes: Clock Frequency (MHz) Target t RCD- t RP-CL t RCD (ns) t RP (ns) CL (ns) -6A

W SERIES IMPULSE VOLTAGE TEST SYSTEM APPLICATION FEATURES

t WR = 2 CLK A2 Notes:

Revision History Revision 1.0 (August, 2003) - First release. Revision 1.1 (February, 2004) -Corrected typo.

Algebraic Integer Encoding and Applications in Discrete Cosine Transform

The Airline Industry Delta Air Lines, Inc. Technical Operations Engine Maintenance Operations

Notes: Frequency -7E 143 MHz 5.4ns 1.5ns 0.8ns MHz 5.4ns 1.5ns 0.8ns -7E 133 MHz 5.4ns 1.5ns 0.8ns MHz 6ns 1.5ns 0.

128Mb DDR SDRAM. Features. Description. REV 1.1 Oct, 2006

1 Introduction. 2 Cranking Pulse. Application Note. AN2201/D Rev. 0, 11/2001. Low Battery Cranking Pulse in Automotive Applications

Notes: Clock Frequency (MHz) Target t RCD- t RP-CL t RCD (ns) t RP (ns) CL (ns) -6A E

256Mbit SDRAM. 8M x 8bit x 4 Banks Synchronous DRAM LVTTL. Revision 0.1 Sept. 2001

100GE PCS Modeling. Oded Trainin, Hadas Yeger, Mark Gustlin. IEEE HSSG September 2007

Development of a DC-DC conversion powering scheme for the CMS Phase-1 pixel upgrade

Beam Test Results and ORCA validation for CMS EMU CSC front-end electronics N. Terentiev

ABB June 19, Slide 1

The Phase-2 Upgrade of the Silicon Strip Tracker of the ATLAS experiment

HYB25D256400B[T/C](L) HYB25D256800B[T/C](L) HYB25D256160B[T/C](L)

Installation and further use of a CANbus/LMB based Measurement System at the ATLAS ID cooling laboratory. Heidi Sandaker

PMD709408C/PMD709416C. Document Title. Revision History. 512Mb (64M x 8 / 32M x 16) DDR SDRAM C die Datasheet

Transcription:

2384-29 ICTP Latin-American Advanced Course on FPGADesign for Scientific Instrumentation 19 November - 7 December, 2012 Clock domains multiple FPGA design KLUGE Alexander PH ESE FE Division CERN 385, rte Meyrin, CH-1211 Geneva 23 SWITZERLAND

Clock domains multiple FPGA design

Clock distribution: multiple FPGAs clk fpga0 fpga1 T clocktooutput < T period/2 different loading on clock drivers T setup < T period/2 Main board daughter board

Clock distribution clk_main_fpga clk_fpga_int0 clk_board1 clk fpga0 fpga1 clk_board0 Main board clk_daughter clk_fpga_int1 data_main_daughter daughter board

clock distribution/t co & t s /board 0-> 1 clk clk_board0 clk_main_fpga clk_fpga_int0 clk_daughter clk_board1 clk_fpga_int1 data_main_daughter0 t clocktooutput t setup

Clock distribution clk_main_fpga clk_fpga_int0 clk_board1 clk fpga0 fpga1 clk_board0 Main board clk_daughter clk_fpga_int1 data_daughter_main daughter board

clock distribution/t co & t s /board 1-> 0 clk clk_board0 clk_main_fpga clk_fpga_int0 clk_daughter clk_board1 clk_fpga_int1 data_main_daughter0 t clocktooutput t setup

Clock distribution clk_main_fpga clk_fpga_int0 clk_board1 clk fpga0 fpga1 clk_board0 Main board clk_daughter clk_fpga_int1 data_main_daughter daughter board

clock distribution/slow output board 0->1 clk clk_board0 clk_main_fpga clk_fpga_int0 clk_daughter clk_board1 clk_fpga_int1 data_main_daughter t clocktooutput t setup t hold

clock distribution/fast output board 0->1 clk clk_board0 clk_main_fpga clk_fpga_int0 clk_daughter clk_board1 clk_fpga_int1 data_main_daughter t clocktooutput

Clock distribution clk_main_fpga clk_fpga_int0 clk_board1 clk fpga0 fpga1 clk_board0 Main board clk_daughter clk_fpga_int1 data_daughter_main daughter board

clock distribution/fast output board 1-> 0 clk clk_board0 clk_main_fpga clk_fpga_int0 clk_daughter clk_board1 clk_fpga_int1 data_daughter_main t clocktooutput t setup t hold

clock distribution/slow output board 1-> 0 clk clk_board0 clk_main_fpga clk_fpga_int0 clk_daughter clk_board1 clk_fpga_int1 data_daughter_main t clocktooutput

Constraints Fulfilling FPGA internal constraints is not sufficient. Perform system simulations Logic can be too fast

Data selection & delay

Data selection and delay collision particle detector electronics L0 Trigger 100 Tbyte/s Event builder L2 Trigger 100 Gbyte/s data storage 100 Mbyte/s

Data selection and delay Data (20 bits) every * 100 ns collision -> L0 (1µs) collision -> L2y or L2n (100 µs) data L0 L2yn datadelayed

Data selection and delay Data (20 bits) every * 100 ns collision -> L0 (1µs) collision -> L2y or L2n (100 µs) Options: Data pipeline until L2 with FIFO based on shift registers @ 10 MHz 20 bits * 100 µs / 100 ns 20 bits * 1000 = 20 000 bits

Data selection and delay Data pipeline with FIFO with shift registers @ 10 MHz 20 bits * 1000 = 20 000 bits 0 1 2 999 20 000 bits in logic cells are used

Data selection and delay Data pipeline with FIFO based on dual port RAM @ 10 MHz 20 bits * 1000 = 20 000 bits counter +fifo_depth delay adder addr_in data_in dual port RAM addr_out data_out FPGAs have RAM cells in addition to logic blocks

Data selection and delay counter adder delay = 9 Data pipeline with 2 FIFOs based on dual port RAM@ 10 MHz: 20 bits * 10 + 20 bits * 8 = 360 bits addr_in addr_out dual port RAM data_in data_out L0 L2 counter write_pointer addr_in addr_out write_enable dual port RAM read_enable data_in data_out counter read_pointer

Data selection and delay

Data selection and delay

Data selection and delay

Data selection and delay

Data selection and delay

Data selection and delay

Data selection and delay

Data selection and delay

Data selection and delay

Data selection and delay

Data selection and delay

Data selection and delay

Data selection and delay

Data selection and delay

Data selection and delay

System level simulation

6 x 10 6 x System level simulation 3 x 1 x 60 ASICs: simplified behavioral 40 ASICs: full behavioral 5 FPGA: full behavioral 7 SRAMs: full behavioral 4 PCBs

What happens if we have speed problems? Often because of inadequate logic architecture/coding style evaluate logic architecture rewrite HDL code to adapt structure to better data throughput insert pipeline structure - often one clock cycle more latency does not matter Understand the specifications look for systematics which can help to simplify logic adapt architecture and schematics/code only then optimize placing & routing

What happens if we have speed problems? Often because of components too small and routing congestion timing constraints Routing constraint - placement constraint Use bigger/faster component

Conclusion FPGA application at CERN data selection/trigger (muon track finder trigger) data processing (pixel detector) Design cycle Defining Specifications Clock domains Data delay

Additional slides Alexander.kluge@cern.ch http://akluge.web.cern.ch/akluge