Qsys and IP Core Integration



Similar documents
Digitale Signalverarbeitung mit FPGA (DSF) Soft Core Prozessor NIOS II Stand Mai Jens Onno Krah

Applying the Benefits of Network on a Chip Architecture to FPGA System Design

Avalon Interface Specifications

All Programmable Logic. Hans-Joachim Gelke Institute of Embedded Systems. Zürcher Fachhochschule

7a. System-on-chip design and prototyping platforms

What is a System on a Chip?

Qsys System Design Tutorial

Architekturen und Einsatz von FPGAs mit integrierten Prozessor Kernen. Hans-Joachim Gelke Institute of Embedded Systems Professur für Mikroelektronik

AN FPGA FRAMEWORK SUPPORTING SOFTWARE PROGRAMMABLE RECONFIGURATION AND RAPID DEVELOPMENT OF SDR APPLICATIONS

Video and Image Processing Design Example

A Generic Network Interface Architecture for a Networked Processor Array (NePA)

Model-based system-on-chip design on Altera and Xilinx platforms

8. Hardware Acceleration and Coprocessing

From Bus and Crossbar to Network-On-Chip. Arteris S.A.

13. Publishing Component Information to Embedded Software

A Safety Methodology for ADAS Designs in FPGAs

Altera Error Message Register Unloader IP Core User Guide

Quartus II Software Design Series : Foundation. Digitale Signalverarbeitung mit FPGA. Digitale Signalverarbeitung mit FPGA (DSF) Quartus II 1

Von der Hardware zur Software in FPGAs mit Embedded Prozessoren. Alexander Hahn Senior Field Application Engineer Lattice Semiconductor

December 2002, ver. 1.0 Application Note 285. This document describes the Excalibur web server demonstration design and includes the following topics:

10/100/1000Mbps Ethernet MAC with Protocol Acceleration MAC-NET Core with Avalon Interface

CSE467: Project Phase 1 - Building the Framebuffer, Z-buffer, and Display Interfaces

Embedded Electric Power Network Monitoring System

System on Chip Platform Based on OpenCores for Telecommunication Applications

Lesson 7: SYSTEM-ON. SoC) AND USE OF VLSI CIRCUIT DESIGN TECHNOLOGY. Chapter-1L07: "Embedded Systems - ", Raj Kamal, Publs.: McGraw-Hill Education

Open Flow Controller and Switch Datasheet

NIOS II Based Embedded Web Server Development for Networking Applications

Altera Advanced SEU Detection IP Core User Guide

White Paper Streaming Multichannel Uncompressed Video in the Broadcast Environment

Using the On-Chip Signal Quality Monitoring Circuitry (EyeQ) Feature in Stratix IV Transceivers

Networking Remote-Controlled Moving Image Monitoring System

Interconnection Generation for System-on-Chip Design and Design Space Exploration

Testing of Digital System-on- Chip (SoC)

SmartFusion2 SoC FPGA High Speed Serial and DDR Interfaces. User s Guide

White Paper FPGA Performance Benchmarking Methodology

LogiCORE IP AXI Performance Monitor v2.00.a

SYSTEM-ON-PROGRAMMABLE-CHIP DESIGN USING A UNIFIED DEVELOPMENT ENVIRONMENT. Nicholas Wieder

White Paper 40-nm FPGAs and the Defense Electronic Design Organization

FPGAs for High-Performance DSP Applications

Arria 10 Core Fabric and General Purpose I/Os Handbook

Using Altera MAX Series as Microcontroller I/O Expanders

EEM870 Embedded System and Experiment Lecture 1: SoC Design Overview

Using a Generic Plug and Play Performance Monitor for SoC Verification

White Paper Increase Flexibility in Layer 2 Switches by Integrating Ethernet ASSP Functions Into FPGAs

Xilinx 7 Series FPGA Power Benchmark Design Summary May 2015

Designing a System-on-Chip (SoC) with an ARM Cortex -M Processor

White Paper. S2C Inc Technology Drive, Suite 620 San Jose, CA 95110, USA Tel: Fax:

Building an IP Surveillance Camera System with a Low-Cost FPGA

How To Design A Single Chip System Bus (Amba) For A Single Threaded Microprocessor (Mma) (I386) (Mmb) (Microprocessor) (Ai) (Bower) (Dmi) (Dual

Lesson 10: Video-Out Interface

Video and Image Processing Suite User Guide

AN 588: 10-Gbps Ethernet Hardware Demonstration Reference Designs

A Scalable Large Format Display Based on Zero Client Processor

The new frontier of the DATA acquisition using 1 and 10 Gb/s Ethernet links. Filippo Costa on behalf of the ALICE DAQ group

FPGA-based MapReduce Framework for Machine Learning

Video Conference System

External Memory Interface Handbook Volume 2: Design Guidelines

FPGA Acceleration using OpenCL & PCIe Accelerators MEW 25

Best Practises for LabVIEW FPGA Design Flow. uk.ni.com ireland.ni.com

Quartus II Software and Device Support Release Notes Version 15.0

FPGA Design From Scratch It all started more than 40 years ago

Document ID: FLXN111 PRODUCTS AND LICENSING

Distributed Elastic Switch Architecture for efficient Networks-on-FPGAs

Real-Time Driver Drowsiness Tracking System

Download the Design Files

Video and Image Processing Suite

Memory Basics. SRAM/DRAM Basics

Learning Outcomes. Simple CPU Operation and Buses. Composition of a CPU. A simple CPU design

Lesson 10:DESIGN PROCESS EXAMPLES Automatic Chocolate vending machine, smart card and digital camera

External Memory Interface Handbook Volume 2: Design Guidelines

International Journal of Scientific & Engineering Research, Volume 4, Issue 6, June ISSN

Architectures and Platforms

Using Nios II Floating-Point Custom Instructions Tutorial

Nios II-Based Intellectual Property Camera Design

Driving SERDES Devices with the ispclock5400d Differential Clock Buffer

Low-latency data acquisition to GPUs using FPGA-based 3rd party devices. Denis Perret, LESIA / Observatoire de Paris

DDR subsystem: Enhancing System Reliability and Yield

SOLVING HIGH-SPEED MEMORY INTERFACE CHALLENGES WITH LOW-COST FPGAS

Eureka Technology. Understanding SD, SDIO and MMC Interface. by Eureka Technology Inc. May 26th, Copyright (C) All Rights Reserved

33. Avalon Streaming Test Pattern Generator and Checker Cores

A Flexible Solution for Industrial Ethernet

Building Blocks for Rapid Communication System Development

Figure 1 FPGA Growth and Usage Trends

Using the Altera Serial Flash Loader Megafunction with the Quartus II Software

White Paper Video Surveillance Implementation Using FPGAs

Implementing Multiprotocol Label Switching with Altera PLDs

A DIY Hardware Packet Sniffer

Arria V Device Handbook

OpenSPARC T1 Processor

Chapter 7 Memory and Programmable Logic

FPGA Manager PCIe, USB 3.0 and Ethernet

Prototyping ARM Cortex -A Processors using FPGA platforms

Bare-Metal, RTOS, or Linux? Optimize Real-Time Performance with Altera SoCs

White Paper Utilizing Leveling Techniques in DDR3 SDRAM Memory Interfaces

Pre-tested System-on-Chip Design. Accelerates PLD Development

Embedded Systems: map to FPGA, GPU, CPU?

8 Gbps CMOS interface for parallel fiber-optic interconnects

15. Introduction to ALTMEMPHY IP

Transcription:

Qsys and IP Core Integration Prof. David Lariviere Columbia University Spring 2014

Overview What are IP Cores? Altera Design Tools for using and integrating IP Cores Overview of various IP Core Interconnect Fabrics

Cyclone V SoC - Mix of Hard and Soft IP Cores Source: Altera

IP Core "In electronic design a semiconductor intellectual property core, IP core, or IP block is a reusable unit of logic, cell, or chip layout design that is the intellectual property of one party... The term is derived from the licensing of the patent and/or source code copyright that exist in the design. IP cores can be used as building blocks within ASIC chip designs or FPGA logic designs." Source: Wikipedia: Semiconductor Intellectual Property Core

IP Core Types - Hard vs. Soft "Hard" IP: Dedicated ASIC blocks within the FPGA targeting specific functionality "Soft" IP: Implemented using the general purpose configurable fabric of the FPGA

Example IP Cores CPUs: either hard (ARM SoC) or soft-core (Nios II) Highspeed I/O: Hard IP Blocks for High Speed Transceivers (PCI Express, 10Gb Ethernet, etc) Memory Controllers: (onboard SRAMs, external DDR3, etc) Clock and Reset signal generation: (PLLs)

Cyclone V SoC - FPGA layout Source: Altera

Cyclone V SoC - HPS Layout Source: NARD, LLC.

Stratix V - FPGA Layout Source: Altera

Stratix V - Solarflare AoE PCB Layout Source: Solarflare FDK

Stratix V - Solarflare AoE Qsys Layout Source: Solarflare FDK

Stratix V - Solarflare AoE Qsys Example Source: Solarflare FDK

Bridges Purpose: modify how data is transported between components. Allows for: different clock domains, protocol conversion (AXI < > Avalon), pipelining, bus width adaptation, etc Bridge Types: SOC HPS < > FPGA Bridge Avalon MM Clock Crossing Bridge Avalon MM Pipeline Bridge

Cyclone V SoC: FPGA < > HPS Bridge

Clock Crossing Bridge Example Source: Altera

Pipeline Bridge Example Source: Altera

Altera Tools for IP Cores Megawizard SOPC Builder: System-on-Chip (SoC); old, replaced by Qsys Qsys: Network-on-Chip (NoC).

Megawizard Source: Altera

Megawizard - Example 10Gb Ethernet PHY Source: Altera

Note: availability of specific megafunctions is FPGA specific (may only be available on Stratix V but no Cyclone V SoC, etc) Megawizard IP Cores Arithmetic: Addition, Subtraction, Multiplication, Division, Multiply-(add accumulate), ECC Floating Point: Gate Functions: Shift Registers, Decoders, Multiplexers I/O Functions: PLL, temp sensor, remote update, various high speed transceiver related Memory: (Single Dual)-port RAM or ROMs, (Single Dual)-clock FIFOs, (RAM) Shift registers DSP: FFT, ECC, FIR, etc (large suite specifically for graphics as well)

Qsys Qsys is Altera s system integration tool for building Network-on-Chip (NoC) designs connecting multiple IP cores. It replaces SOPC Builder (previous version of the tool). You utilize Qsys to construct a system of IP components (and even system of systems), and Qsys will automatically generate the interconnect, add required adaptation, warn on misconfigurations, etc.

Qsys - Raising Level of Abstraction Source: Altera

Qsys UI Source: Altera

System Level Design - Why use Qsys Avoids manually developing custom interconnect fabrics and signaling. Instead of cycle-to-cycle coordination between every individual IP core, focus on transaction level designs. Design IP without knowing exactly when data will transfer and instead only focus on how (once it does). (Only valid if you design your individual components to one of the standardized interfaces)

Old (Manual) Method of Design Source: Altera

Qsys-based Method of Design Source: Altera

Interface Types Memory-mapped Interfaces: Avalon MM (Altera) AXI (ARM, supported by Qsys now for SoC) Streaming Interfaces: Avalon ST: Avalon ST source port: outputs streaming data Avalon ST sink port: receives incoming streaming data

"Control" vs. "Data" Planes Control Plane: Memory mapped registers typically used for configuring devices, querying status, initiating transactions, etc (low bandwidth) Data Plane: Streaming directed graphs for actually moving and processing large amounts of data (audio/video, network packets, etc); high bandwidth A single IP core can have both MM and ST interfaces (including multiple of each).

Control and Data Planes Example Source: Altera

Control and Data Planes Example - Solarflare AoE Source: Altera

Qsys signal types Clock Reset Interrupt Avalon MM signals Avalon ST signals Tristate Conduit (avoid unless truly not one of the above)

Why explicitly label signal types?...vs. simply making everything a wire/conduit Allows Qsys to protect you from yourself! Ensure matching between signal types ("clock out" > "clock in", etc) Detect and automatically insert dual clock crossing domains (only if it knows which clock domains IPs are in) Automatically convert data widths, formats, error flags (convert 32 bit master into four 8-bit slave reads, etc) Automatically synchronize and OR-gate multiple resets Automatically insert pipeline stages to improve fmax

Avalon MM Master Signals Source: Altera

Avalon MM Slave Signals Source: Altera

Avalon ST Signals Source: Altera

Example Qsys Layout - 10Gb Reference Design Source: Altera

Advanced - Qsys Hierarchical Designs Source: Altera

Advanced - Qsys Automatic Pipelining Source: Altera

Advanced - Qsys Testbench Generation Source: Altera

Additional References Altera online training lectures: (HIGHLY recommended; many of these slides are taken directly from them) http://www.altera.com/education/training/curriculum/trncurriculum.html Introduction to Qsys Advanced System Design Using Qsys Custom IP Development Using Avalon and AXI Interfaces