HW/SW Co-design Lecture 3: Lab 1 – Getting Started with the Tools Course material designed by Professor Yarsun Hsu, EE Dept, NTHU RA: Yi-Chiun Fang, EE.

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

Slides created by: Professor Ian G. Harris PIC Development Environment MPLAB IDE integrates all of the tools that we will use 1.Project Manager -Groups.
Integrated Circuits Laboratory Faculty of Engineering Digital Design Flow Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003.
Getting Started with Layout Compiled by Ryan Johnson May 1, 2002  Open Orcad Capture under Engineering Software  Under FILE, choose NEW, PROJECT  The.
1 Performed By: Khaskin Luba Einhorn Raziel Einhorn Raziel Instructor: Rivkin Ina Spring 2004 Spring 2004 Virtex II-Pro Dynamical Test Application Part.
Microprocessor Simulation
Configurable System-on-Chip: Xilinx EDK
The Xilinx EDK Toolset: Xilinx Platform Studio (XPS) Building a base system platform.
LAB 3 Finite State Machines On Xilinx Mike Lowey.
Technion – Israel Institute of Technology Department of Electrical Engineering High Speed Digital Systems Lab Project performed by: Naor Huri Idan Shmuel.
Lab 3 & 4 Discussion EE414/514 VHDL Design September 25.
Case Study ARM Platform-based JPEG Codec HW/SW Co-design
Using PDG with e2studio: Example
ECE Department: University of Massachusetts, Amherst Lab 1: Introduction to NIOS II Hardware Development.
CSCE 313: Embedded Systems Multiprocessor Systems
DEMONSTRATION FOR SIGMA DATA ACQUISITION MODULES Tempatron Ltd Data Measurements Division Darwin Close Reading RG2 0TB UK T : +44 (0) F :
ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU A New Algorithm to Compute the Discrete Cosine Transform VLSI Signal Processing 台灣大學電機系.
Study of AES Encryption/Decription Optimizations Nathan Windels.
Final presentation Encryption/Decryption on embedded system Supervisor: Ina Rivkin students: Chen Ponchek Liel Shoshan Winter 2013 Part A.
© 2011 Xilinx, Inc. All Rights Reserved Intro to System Generator This material exempt per Department of Commerce license exception TSU.
Part 1 Using the ARM board And start working with C Tutorial 5 and 6
9000U Quick Guide Marketing & RMA Department XELTEK 8/28/2015.
P.1ECE 331, Prof. A. Mason Professor Andrew Mason Michigan State University Spring 2013 ECE 331: PC Lab 1: Using HC12 ASM Simulators.
Impulse Embedded Processing Video Lab Generate FPGA hardware Generate hardware interfaces HDL files HDL files FPGA bitmap FPGA bitmap C language software.
CCS APPS CODE COVERAGE. CCS APPS Code Coverage Definition: –The amount of code within a program that is exercised Uses: –Important for discovering code.
CS Tutorial 1 Getting Started with Visual Studio 2012 (Visual Studio 2010 are no longer available on MSDNAA, please choose Visual Studio 2012 which.
ASIC/FPGA design flow. FPGA Design Flow Detailed (RTL) Design Detailed (RTL) Design Ideas (Specifications) Design Ideas (Specifications) Device Programming.
1. Insert the Resource CD into your CD-ROM drive, click Start and choose Run. In the field that appears, enter F:\XXX\Setup.exe (if “F” is the letter of.
© 2003 Xilinx, Inc. All Rights Reserved For Academic Use Only Xilinx Design Flow FPGA Design Flow Workshop.
1 Introduction to Xilinx ISL8.1i Schematic Capture and VHDL 1.
1 Introduction to Xilinx ISL8.1i & 11.1 Schematic Capture 1.
Tools - Implementation Options - Chapter15 slide 1 FPGA Tools Course Implementation Options.
Interfaces to External EDA Tools Debussy Denali SWIFT™ Course 12.
HW/SW Co-design Lecture 4: Lab 2 – Passive HW Accelerator Design Course material designed by Professor Yarsun Hsu, EE Dept, NTHU RA: Yi-Chiun Fang, EE.
NIOS II Ethernet Communication Final Presentation
1 EDK 7.1 Tutorial -- SystemACE and EthernetMAC on Avnet Virtex II pro Development Boards Chia-Tien Dan Lo Department of Computer Science University of.
Lecture #3 Page 1 ECE 4110–5110 Digital System Design Lecture #3 Agenda 1.FPGA's 2.Lab Setup Announcements 1.HW#2 assigned Due.
HW/SW Co-design Lecture 2: Lab Environment Setup Course material designed by Professor Yarsun Hsu, EE Dept, NTHU RA: Yi-Chiun Fang, EE Dept, NTHU.
Introductory project. Development systems Design Entry –Foundation ISE –Third party tools Mentor Graphics: FPGA Advantage Celoxica: DK Design Suite Design.
Infrastructure design & implementation of MIPS processors for students lab based on Bluespec HDL Students: Danny Hofshi, Shai Shachrur Supervisor: Mony.
PROJECT - ZYNQ Yakir Peretz Idan Homri Semester - winter 2014 Duration - one semester.
Copyright © 2003 Texas Instruments. All rights reserved. DSP C5000 Chapter 18 Image Compression and Hardware Extensions.
Computer Engineering 1502 Advanced Digital Design Professor Donald Chiarulli Computer Science Dept Sennott Square
Lab 2 Parallel processing using NIOS II processors
© 2004 Xilinx, Inc. All Rights Reserved Adding a Processor System to an FPGA Design.
Debugging TI RTOS TEAM 4 JORGE JIMENEZ JHONY MEDRANO ALBIEN FEZGA.
11 EENG 1920 Introduction to VHDL. 22 Hardware Description Language A computer language used to design circuits with text-based descriptions of the circuits.
Content Project Goals. Workflow Background. System configuration. Working environment. System simulation. System synthesis. Benchmark. Multicore.
Teaching Digital Logic courses with Altera Technology
Survey of Reconfigurable Logic Technologies
ASIC/FPGA design flow. Design Flow Detailed Design Detailed Design Ideas Design Ideas Device Programming Device Programming Timing Simulation Timing Simulation.
How to use ISE Dept. of Info & Comm. Eng. Prof. Jongbok Lee.
Introduction to the FPGA and Labs
Maj Jeffrey Falkinburg Room 2E46E
Do-more Technical Training
Lab 1: Using NIOS II processor for code execution on FPGA
The first change to your project files that is needed is to change the device to the correct FPGA. This is done by going to the Assignments tab on the.
Implementing VHDL Modules onto Atlys Demo Board
ENG3050 Embedded Reconfigurable Computing Systems
Lecture 5: Lab 3 – Active HW Accelerator Design
ADC32RF45 with KCU105 Internal Clock GHz.
ADC32RF45 Testing.
Compile, Build, and Debug
Getting Started with Vivado
Lecture Topics: 11/1 General Operating System Concepts Processes
Introduction to computers
Founded in Silicon Valley in 1984
1-D DISCRETE COSINE TRANSFORM DCT
Computer System Laboratory
Presentation transcript:

HW/SW Co-design Lecture 3: Lab 1 – Getting Started with the Tools Course material designed by Professor Yarsun Hsu, EE Dept, NTHU RA: Yi-Chiun Fang, EE Dept, NTHU

Outline Hardware Configuration Software Configuration

HARDWARE CONFIGURATION

Build FPGA Bitstream (1/3) Obtain the GRLIB package herehere Used version: grlib-gpl b3188.tar.gz Put the file under your home directory Start Cygwin tar zxf grlib-gpl b3188.tar.gz cd grlib-gpl b3188/designs/leon3-gr- xc3s-1500/ make distclean

Build FPGA Bitstream (2/3) make xconfig (under grlib-gpl b3188/designs/leon3-gr-xc3s-1500/ ) A GUI-based Design Configuration tool will pop up We can use this tool to set up the basic configuration of our co-designed system VHDL Debugging → Turn on “Accelerated UART Tracing” Processor → Debug Support Unit → Turn off “Instruction trace buffer” & “AHB trace buffer” Debug Link → MSB 16 bits of IP address = 0A00 Debug Link → LSB 16 bits of IP address = 000A Save and Exit

Build FPGA Bitstream (3/3) make ise | tee ise_log (under grlib-gpl b3188/designs/leon3-gr-xc3s-1500/ ) Cygwin will call ISE for HDL synthesis and generate the corresponding bitstream file You can view the file “ise_log” for the output information of the whole process for further details The process may last from 40min to longer than an hour depending on your machine and the hardware design

Configure FPGA (1/5) Turn on the GR-XC3S-1500 Dev. Board Open Xilinx iMPACT Choose “create a new project (.ipf)”

Configure FPGA (2/5) Choose “Configure devices using Boundary-Scan (JTAG)”

Configure FPGA (3/5) Choose “Bypass” for devices xcf04s & xcf01s Choose grlib-gpl b3188/designs/leon3-gr-xc3s- 1500/leon3mp.bit in your Cygwin home directory for device xc3s1500

Configure FPGA (4/5) Right click on the xc3s1500 icon, and then choose “Program” Press “OK”

Configure FPGA (5/5) Wait for the programming to finish Try again if it fails

SOFTWARE CONFIGURATION

1-D IDCT A DCT is a Fourier- related transform similar to the discrete Fourier transform (DFT), but using only real numbers We use Chen’s algorithm [*] for our 8- point IDCT design [*] W. H. Chen, C. H. Smith, and S. C. Fralick, “A fast computational algorithm for the discrete cosine transform,” IEEE Trans. Commun., Vol. COM-25, pp , Sept

2-D IDCT 2-D IDCT is a separable transform, thus it can be computed by two passes of 1-D IDCT First, compute row-wise 1-D IDCT on the block Then, compute column-wise 1-D IDCT on the 1-D row-transformed data Let X be the input 8×8 block, Y be the transformed block, we have

Lab SW: IDCT Testbench (1/2) The IDCT testbench will perform 2000 iterations of DCT & IDCT In each iteration, the program will first generate a 8x8 block of type short with pixel value ranging from -255 to 256, transform the block via sw_dct_2d(), and then transform the block back via sw_idct_2d() & hw_idct_2d() Error will be calculated by comparing the two results of IDCT In this lab, sw_idct_2d() and hw_idct_2d() are exactly the same, so the resulting error will be 0

Lab SW: IDCT Testbench (2/2) sw_idct_2d() uses a static array of type short as transpose memory /* row transform */ for (ptr = tmem, row = 0; row < 8; row++) { sw_idct_1d(ptr++, block+(row<<3), MODE_ROW); } /* column transform */ for (ptr = block, row = 0; row < 8; row++) { sw_idct_1d(ptr++, tmem+(row<<3), MODE_COL); }

Build SW Application The source code can be obtained from lab_pkg/lab1/sw Modify the path for ECOSDIR in Makefile for your environment This is the path where the eCos library is built Under lab_pkg/lab1/sw, type “ make ” to build the application properly (generating idct.elf ) -D_VERBOSE_ flag in Makefile is for more detailed testbench information You can remove it for cleaner output information

GRMON (1/3) Under the directory where you built your IDCT testbench application, type “ grmon- eval -u -eth -ip ” -u: Debug mode will enable both reading and writing to the UART from the monitor console -eth: Connect using ethernet Try resetting the board if GRMON fails to connect to your FPGA Press the RESET button

GRMON (2/3) You can use “ info sys ” to check for system configuration and memory mapping

GRMON (3/3) Type “ load./idct.elf ” to load the program just built Type “ run ” to run the program after loading The results can be seen from the monitor Press CTRL+c to exit the program