Evaluating SiFive RISC- V Core IP

Similar documents
SiFive Freedom E310 Arty FPGA Dev Kit Getting Started Guide. c SiFive, Inc.

RISC-V Core IP Products

Custom Silicon for all

Building an Embedded Processor System on a Xilinx Zync FPGA (Profiling): A Tutorial

VORAGO VA108x0 GCC IDE application note

NEXYS4DRR board tutorial

Introducing the Latest SiFive RISC-V Core IP Series

Copyright 2014 Xilinx

Avnet Zynq Mini Module Plus Embedded Design

Revolutionary Quad-Pipelined Ultra High Performance 16/32-bit Microcontroller v. 6.05

AC701 Built-In Self Test Flash Application April 2015

SiFive Freedom SoCs: Industry s First Open-Source RISC-V Chips

Tools Basics. Getting Started with Renesas Development Tools R8C/3LX Family

SiFive FE310-G000 Manual c SiFive, Inc.

Jack Kang ( 剛至堅 ) VP Product June 2018

ARROW ARIS EDGE Board User s Guide 27/09/2017

Quick Start Guide for the Turbo upsd DK3300-ELCD Development Kit- RIDE

SiFive HiFive1 Getting Started Guide. c SiFive, Inc.

ECEN 449: Microprocessor System Design Department of Electrical and Computer Engineering Texas A&M University

Copyright 2016 Xilinx

Xilinx Vivado/SDK Tutorial

Evaluation & Development Kit for Freescale PowerPC MPC5517 Microcontroller

Creating the AVS6LX9MBHP211 MicroBlaze Hardware Platform for the Spartan-6 LX9 MicroBoard Version

EMUL-PPC-PC. Getting Started Guide. Version 1.0

_ V1.1. EVB-5566 Evaluation & Development Kit for Freescale PowerPC MPC5566 Microcontroller. User s Manual. Ordering code

RISC-V based core as a soft processor in FPGAs Chowdhary Musunuri Sr. Director, Solutions & Applications Microsemi

Evaluation Board Getting Started. TLE984x_EVB_1.x TLE9845_EVB_1.x

Spartan -6 LX9 MicroBoard Web Connectivity On Ramp Tutorial

ARROW ARIS EDGE S3 Board User s Guide 21/02/2018

Renesas Starter Kit for RX111

User Manual For CP-JR ARM7 USB-LPC2148 / EXP

SimXMD Simulation-based HW/SW Co-debugging for field-programmable Systems-on-Chip

System Debug. This material exempt per Department of Commerce license exception TSU Xilinx, Inc. All Rights Reserved

Free Chips Project: a nonprofit for hosting opensource RISC-V implementations, tools, code. Yunsup Lee SiFive

Evaluation Board Getting Started

RISECREEK: From RISC-V Spec to 22FFL Silicon

5I20 ANYTHING I/O MANUAL

Practical Hardware Debugging: Quick Notes On How to Simulate Altera s Nios II Multiprocessor Systems Using Mentor Graphics ModelSim

MYC-C7Z010/20 CPU Module

Agile Hardware Design: Building Chips with Small Teams

Graduate Institute of Electronics Engineering, NTU Advanced VLSI SOPC design flow

User Manual CORE-X. MECHANICAL DIMENSION (mm)

Lab Exercise 4 System on chip Implementation of a system on chip system on the Zynq

TP : System on Chip (SoC) 1

esi-risc Development Suite Getting Started Guide

Mi-V RISC-V Ecosystem

MYD-C7Z010/20 Development Board

DoCD IP Core. DCD on Chip Debug System v. 6.02

SimXMD Co-Debugging Software and Hardware in FPGA Embedded Systems

SimXMD: Simulation-based HW/SW Co-Debugging for FPGA Embedded Systems

Evaluation Board Getting Started. Toolchain Setup for: TLE9869_EVALKIT TLE986x_EVALB_JLINK TLE9879_EVALKIT TLE987x_EVALB_JLINK

Figure 1. JTAGAVRU1 application The JTAGAVRU1 is supported by AVR Studio. Updated versions of AVR Studio is found on

HARDWARE REFERENCE IMM-NRF51822

Multi-core microcontroller design with Cortex-M processors and CoreSight SoC

Use Vivado to build an Embedded System

External Headers. USB Host User LEDs. User Switches. E1 Header (Unfitted)

Modifying Xilinx ML605 for Direct JTAG Access

Arty MicroBlaze Soft Processing System Implementation Tutorial

ECE 353 Lab 4. General MIDI Explorer. Professor Daniel Holcomb Fall 2015

User Manual. LPC-StickView V3.0. for LPC-Stick (LPC2468) LPC2478-Stick LPC3250-Stick. Contents

Introduction to Embedded System Design using Zynq

Designing with ALTERA SoC Hardware

Synaptic Labs' AXI HyperBus Memory Controller (HBMC) IP for Xilinx FPGA Devices Tutorial

IAR Embedded Workbench

WAVETEK BLE-WT51822AA/AB. Revision History. Bluetooth low energy Module WT51822AA (256k) /AB (128k) (Bluetooth Low Energy BT4.0) PRODUCT SPECIFICATION

OpenPiton in Action. Princeton University. OpenPit

Kinetis SDK Freescale Freedom FRDM-KL03Z Platform User s Guide

User Manual Rev. 0. Freescale Semiconductor Inc. FRDMKL02ZUM

PIC-32MX development board Users Manual

CE 435 Embedded Systems. Spring Lab 3. Adding Custom IP to the SoC Hardware Debug. CE435 Embedded Systems

Atlys (Xilinx Spartan-6 LX45)

PIC32&Overview& E155&

Getting Started with FreeRTOS BSP for i.mx 7Dual

Laboratory Exercise 3 Comparative Analysis of Hardware and Emulation Forms of Signed 32-Bit Multiplication

ECEN 449: Microprocessor System Design Department of Electrical and Computer Engineering Texas A&M University. Laboratory Exercise #1 Using the Vivado

SiFive HiFive Unleashed Getting Started Guide v1p0. SiFive, Inc.

Digilab 2 Reference Manual

Introduction to Zynq

Espardino micro2142/8

Virtual Array Architecture for efpga April 5, 2018

Installing and using CW 10.x for TPMS applications. Revision 5

Quick Start Guide TRK-KEA. Kinetis EA Series MCUs for Automotive Electronics Applications. StarterTRAK

Programming in the MAXQ environment

EMBEDDED SYSTEMS WITH ROBOTICS AND SENSORS USING ERLANG

Arty S7 Reference Manual

DQ8051. Revolutionary Quad-Pipelined Ultra High performance 8051 Microcontroller Core

QWaveSystems / Melon_S3_FPGA

Virtual Platforms for early Embedded Software Development

Intelop. *As new IP blocks become available, please contact the factory for the latest updated info.

Table of Contents Overview Features Purchasing Options Software Support Designing with MicroBlaze...

QSPI Flash Memory Bootloading In Standard SPI Mode with KC705 Platform

Lab 5. Using Fpro SoC with Hardware Accelerators Fast Sorting

Revision: 5/7/ E Main Suite D Pullman, WA (509) Voice and Fax. Power jack 5-9VDC. Serial Port. Parallel Port

Digilab 2 XL Reference Manual

JTAG-HS1 Programming Cable for Xilinx FPGAs. Overview. Revised January 22, 2015

Digilab 2E Reference Manual

RISC-V CUSTOMIZATION WITH STUDIO 8

Figure 1. Proper Method of Holding the ToolStick. Figure 2. Improper Method of Holding the ToolStick

EMX Module Specifications

Using Serial Flash on the Xilinx Spartan-3E Starter Board. Overview. Objectives. Version 8.1 February 23, 2006 Bryan H. Fletcher

Transcription:

Evaluating SiFive RISC- V Core IP Drew Barbier January 2018 drew@sifive.com

3 Part Webinar Series Webinar Recordings and Slides: https://info.sifive.com/risc-v-webinar RISC-V 101 The Fundamentals of RISC-V architecture Introduction to SiFive RISC-V Core IP Introduction to the SiFive E31 and E51 Core Complexes Getting Started with SiFive RISC-V Core IP 3

SiFive RISC-V Core IP Products This presentation is targeted at hardware and software embedded designers who want to get started evaluating SiFive RISC- V Core IP This presentation will walk through the RTL Evaluation deliverable of the E31 Core Complex as well programing, writing software, and Debugging the E31 Arty FPGA image 4

Obtaining the Evaluations

SiFive RISC-V Core IP Evaluations Free, Instant Access to Evaluation RTL and FPGA bitstreams Verilog RTL Evaluation Fully functional, synthesizable, Verilog RTL Synthesize into your process/eda flow to obtain accurate PPA for your process node Simulate in your environment Restrictions on Evaluation RTL Obfuscated Verilog Reduced DTIM and System/Peripheral Port address space FPGA Evaluation Pre-built FPGA bitstreams for low cost FPGA Platforms Useful for software development 6

SiFive Product Evaluations are 2 Clicks Away Scroll Down 7

Evaluation License Agreement Fill in your information on the web form An Evaluation agreement is then sent to the email address provided via DocuSign Sign the document via DocuSign being sure to click Finish at the bottom of the document Help: sales@sifive.com order-support@sifive.com 8

Download via SiFive Developer Dashboard https://dev.sifive.com 9

Evaluation Product Refresh January 2018 RTL Evaluation Changes ITIM 4 Hardware Breakpoints Performance Counters Port Interfaces E31 AHB-Lite E51 AXI Number of Global Interrupts E31 127 E51 255 FPGA Evaluation Changes ITIM 64kB of DTIM 8 Hardware Breakpoints 10

E31 RTL Evaluation

The Verilog RTL Bundle Sifive_coreip_E31_AHB_rtl_eval_v2p0/ info/ metadata about the design (DTS and memory dimensions) tests/ simple tests to ensure a functional delivery Also includes device header files verilog/ design/ DUT (device under test) memories/ behavioral models of SRAMs testbench/ simulation testbench Makefile Runs VCS simulations 12

E-Series Core Complex Clocking core_clock_0 Main CPU and L1 memory clock clock Secondary peripheral clock Frequency must be an integer multiple of core_clock_0 1:1 ratio is acceptable rtc_toggle Real Time Clock input as defined by RISC-V Architecture (mtime) Must run at strictly less than half the rate of clock core_clock_0 clock > (2x rtc_toggle) 13

Synthesis Constraints and Clocking Recommendations For Maximum frequency, it is recommended for: clock = ½(core_clock_0) If targeting lower frequencies, clock = core_clock_0 is OK Typical rtc_toggle frequencies 32.768kHz 1MHz 14

Core Complex Memory Instances Behavioral models of the RAMS are provided as part of the deliverable in the file: sifive_coreip_e31_ahb_rtl_eval_v2p0/verilog/memories/ecoreip SubsystemAllPortRAMTestHarness.*.rams.v For implementation it is necessary to generate memory instances which are specific to your foundry/process Typically done using Memory Compilers from the foundry, or 3rd party IP providers 15

E31 Synthesized Area Hierarchy system/e31/core Core only (pipeline) system/e31 Core + L1 Instruction Cache + DTIM system top-level 16

E31 FPGA Evaluation

Digilent Arty FPGA Platform Popular, Low cost, FPGA development board Xilinx Artix-35T FPGA - 33,280 Xilinx logic cells 16MB QSPI serial flash interface USB-UART, buttons, switches, LEDs, etc Our FPGA evaluations execute at 65MHz Allows for fast Software execution Purchase directly from Digilent: http://store.digilentinc.com/arty-a7-artix-7-fpga-development-board-for-makers-and-hobbyists/ 18

E31 FPGA Evaluation Configuration SiFive Peripherals and Integration to Digilent Arty Platform QSPI serial flash GPIO to LEDs, Buttons, PMOD PWM to LEDs JTAG to PMOD-D Buttons and Switches to Local and PLIC interrupt inputs Core Complex features User Mode 8 Hardware Breakpoints 8 Region PMP ITIM Vectored Interrupts Performance Counters 19

FPGA Memory Map, Interrupts, and Pins Manual is available from developer dashboard Memory Map Pinout of peripherals to PMOD connector, LEDs, Buttons, switches Interrupt numbers for connected devices 20

Program FPGA with Vivado Download Vivado HLx Edition from Xilinx (free): https://www.xilinx.com/products/design-tools/vivado.html From Vivado with the Arty board connected over USB Open Hardware Manager Tools Auto Connect Tools - Add Configuration Memory Device Select Micron n25q128-3.3v Select the Configuration File (mcs file downloaded from SiFive) Hit the PROG button on the Arty to reboot and load the new image 21

Connecting the FPGA to the Debugger Debug signals are connected to the Arty Board s JD PMOD header (closest to the reset button) Tested Probes: Olimex ARM-USB-Tiny (OpenOCD) SEGGER JLINK Lauterbach TRACE32 JTAG Signal Mapping Purple TDO Orange- ntrst Blue - TCK Black - GND Brown VREF Yellow - TDI Green TMS Grey - nrst White - GND RED - VREF 1 22

Software Development with Freedom Studio Freedom Studio Eclipse + CDT + GNU MCU Eclipse Bundled Toolchain and OpenOCD Binaries Examples for SiFive platforms 23

Freedom Studio Set Up Download and Extract to desired location https://www.sifive.com/products/tools/ If on Windows, install platform drivers located in: FreedomStudio/SiFive/Drivers That s It! 24

Freedom Studio - Demo Importing Examples Freedom Studio SiFive Perspective Programming and Debugging the E31 Arty FPGA Platform Dhrystone Demo use the debugger to change the number of iterations 25

Questions info@sifive.com

3 Part Webinar Series Webinar Recordings: https://info.sifive.com/risc-v-webinar RISC-V 101 The Fundamentals of RISC-V architecture Introduction to SiFive RISC-V Core IP Introduction to the SiFive E31 and E51 Core Complexes Getting Started with SiFive RISC-V Core IP 27

Resources https://www.sifive.com/ RISC-V Core IP and Development Boards RISC-V Tools SiFive Youtube Channel: https://www.youtube.com/channel/ucqpdhncf4nxtfy0qzh1ywlq https://riscv.org/ RISC-V Specifications Links to the RISC-V mailing lists Workshop proceedings GitHub https://github.com/sifive/ https://github.com/riscv/ 28

29 29