UCB EECS150 Spring UCB EECS150 Spring 2010, Lab Lecture #5

Similar documents
Verilog Synthesis and FSMs. UCB EECS150 Fall 2010 Lab Lecture #3

EECS150: Lab 5, Mini-Project

EECS150: Spring 2010 Project Computer System with Accelerated Graphics

EECS150: Lab 5, Debugging with ChipScope & the UART/CPU Adaptor

Using ChipScope. Overview. Detailed Instructions: Step 1 Creating a new Project

SDRAM Arbiter. Agenda. Checkpoint 3 Introduction (1) Checkpoint 3 Introduction. Administrivia SDRAM Arbiter. Notes about Checkpoint 2 Design Tips

EECS150 Lab Lecture 0

EECS150 - Digital Design Lecture 12 - Video Interfacing. MIPS150 Video Subsystem

EECS150 - Digital Design Lecture 15 - Video

EECS150: Lab 3, Verilog Synthesis & FSMs

EECS150: Lab 3, Verilog Synthesis & FSMs

EECS150 - Digital Design Lecture 08 - Project Introduction Part 1

Today (1) N64 Controller (Project Checkpoint#1) Today (2) Administrative Info (1)

EECS150 - Digital Design Lecture 7 - Computer Aided Design (CAD) - Part II (Logic Simulation) Finite State Machine Review

EECS150 Lab Lecture 5 Introduction to the Project

ChipScope Demo Instructions

Lab 6 Debugging. Objective. Introduction. Prelab

EECS150 - Digital Design Lecture 6 - Logic Simulation

CS150 Project Final Report

EECS150: Lab 1, FPGA Editor

EECS150 - Digital Design Lecture 9 Project Introduction (I), Serial I/O. Announcements

EECS 150 Fall 2012 Checkpoint 2: Cache Integration

EECS150: Lab 1, FPGA CAD Tools

EECS150 - Digital Design Lecture 6 - Logic Simulation. Encoder Example

CS250 VLSI Systems Design Lecture 8: Introduction to Hardware Design Patterns

EECS150 - Digital Design Lecture 15 - Project Description, Part 5

Lab 2 Verilog Synthesis & Logic Optimization

Bridging the GPGPU-FPGA Efficiency Gap

EECS150 Lab Lecture 2 Design Verification

EECS150 - Digital Design Lecture 20 - Finite State Machines Revisited

EECS150: Lab 1, FPGA Editor

Lab 2 Designing with Verilog

ECEN 651: Microprogrammed Control of Digital Systems Department of Electrical and Computer Engineering Texas A&M University

Today. Implementation of FSMs. Designing Digital System (1) Designing Digital System (2)

Lab 0: Introduction to the FPGA Development Board

CS250 VLSI Systems Design Lecture 8: Introduction to Hardware Design Patterns

EECS 150 Fall 2012 Checkpoint 2: Cache Integration

Lab 4 Debugging & Verification

Project Overview. Chipcon Transceiver. Transceiver Overview (1) Transceiver Overview (2) EECS150 Spring 2006 Lab Lecture #8

CS 152 Computer Architecture and Engineering

problem maximum score 1 8pts 2 6pts 3 10pts 4 15pts 5 12pts 6 10pts 7 24pts 8 16pts 9 19pts Total 120pts

Motivation to Teach Network Hardware

EECS150 Fall 2013 Checkpoint: DVI Test Pattern

Illuminating the Big Picture

CS 152 Computer Architecture and Engineering Lecture 1 Single Cycle Design

EECS150 - Digital Design Lecture 13 - Accelerators. Recap and Outline

The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL

Welcome to Lab! Feel free to get started until we start talking! The lab document is located on the course website:

University of California at Berkeley College of Engineering Department of Electrical Engineering and Computer Sciences. EECS 150 Spring 2000

CS152 FPGA CAD Tool Flow University of California at Berkeley College of Engineering Department of Electrical Engineering and Computer Sciences

TA hours and labs start today. First lab is out and due next Wednesday, 1/31. Getting started lab is also out

Using the ChipScope Pro for Testing HDL Designs on FPGAs

1. Introduction EE108A. Lab 1: Combinational Logic: Extension of the Tic Tac Toe Game

61A LECTURE 1 FUNCTIONS, VALUES. Steven Tang and Eric Tzeng June 24, 2013

EECS150 - Digital Design Lecture 5 - Verilog Logic Synthesis

Lecture 3: O/S Organization. plan: O/S organization processes isolation

Boot Camp. Dave Eckhardt Bruce Maggs

ARM 64-bit Register File

CSCI-375 Operating Systems

Memory. Hakim Weatherspoon CS 3410, Spring 2013 Computer Science Cornell University

EECS150 - Digital Design Lecture 4 - Verilog Introduction. Outline

Fundamentals of Digital System Design ECE 3700, CPSC 3700

Don t expect to be able to write and debug your code during the lab session.

RiceNIC. Prototyping Network Interfaces. Jeffrey Shafer Scott Rixner

CSC148H Week 1 >> COURSE INFORMATION, RECAP, OOP. Sadia Rain Sharmin Week of May 7, 2018

Using Project Navigator

Lab 1 FPGA CAD Tools

Debugging in AVR32 Studio

Design of Digital Circuits

Lab 1: FPGA Physical Layout

EEE3050 Theory on Computer Architectures (Spring 2017) Prof. Jinkyu Jeong HW2 TA 이규선 (GYUSUN LEE) / 안민우 (MINWOO AHN) Computer Systems Laboratory

Atlys (Xilinx Spartan-6 LX45)

CS/EE 3710 Computer Architecture Lab Checkpoint #2 Datapath Infrastructure

University of California at Berkeley College of Engineering Department of Electrical Engineering and Computer Science. EECS 150 Spring 2000

Today. Designing with Verilog. Top-Down vs. Bottom-Up (1) Top-Down vs. Bottom-Up (2)

EECS150: Lab 2, Mapping Circuit Elements to FPGAs

Digital Design and Computer Architecture J. Spjut & M. Spencer

CS 152, Spring 2011 Section 8

CS 250 VLSI Design Lecture 11 Design Verification

Lab 3: Simulation and Testing

Advanced Debugging I. Equipment Required. Preliminary Discussion. Basic System Bring-up. Hardware Bring-up, Section Plan

Midterm Exam Solutions March 7, 2001 CS162 Operating Systems

Lab 0: Introduction to the FPGA Development Board

UC Berkeley College of Engineering, EECS Department CS61C: Combinational Logic Blocks

UC Berkeley College of Engineering, EECS Department CS61C: Combinational Logic Blocks

In the previous lecture, we examined how to analyse a FSM using state table, state diagram and waveforms. In this lecture we will learn how to design

In the previous lecture, we examined how to analyse a FSM using state table, state diagram and waveforms. In this lecture we will learn how to design

Lecture 4: More Lab 1

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

Advanced module: Video en/decoder on Virtex 5

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

Designing with ALTERA SoC Hardware

Buffer Manager: Project 1 Assignment

Administrative Notes January 25, 2018

University of California at Berkeley College of Engineering Department of Electrical Engineering and Computer Science

Experiment VERI: FPGA Design with Verilog (Part 2) (webpage: /)

COE758 Digital Systems Engineering

CS/EE Computer Design Lab Fall 2010 CS/EE T Th 3:40pm-5:00pm Lectures in WEB 110, Labs in MEB 3133 (DSL) Instructor: Erik Brunvand

CS/EE Prerequsites. Hardware Infrastructure. Class Goal CS/EE Computer Design Lab. Computer Design Lab Fall 2010

DE2 Board & Quartus II Software

Transcription:

UART Adapter (Mini Project) UCB EECS150 Spring 2010 Lab Lecture #5 1

Agenda The entire CS150 CAD flow A new debugging tool (ChipScope) Lab 5 is to be done in pairs Questions? A very awkward picture of Chris asleep in a car Lab 5 overview Design reviews 2

Where we are and why 3

New tool : ChipScope (1) In System Debugger ModelSim in hardware But has many limitations Samples signals on clock edge Shows only a few cycles Trigger based Your Circuitit Same Clock! Trigger Software Dual Port Memory JTAG Cab ble ChipScope FPGA 4

ChipScope (2) Is not Magic Uses block memories on the FPGA to save the value of a signal. Saves several cycles after triggered (a pre determined input pattern occurs) Software reads and displays the saved trace Know its limitations! Expensive Can affect timing Gives limited visibility 5

ChipScope (3) Compared to ModelSim: ModelSim High visibility (shows any, or every signal in the design). Quick turnaround for debuggingg Only a simulation (not guaranteed to work in hardware) Will not show all bugs ChipScope Shows values observed in hardware (the real deal) Samples the data using a clock Requiresa complete tool cycle for debugging Low visibility (shows only a small number of signals) USE BOTH! 6

New Policy (Lab 5 and Project) A design document must be shown 1 week before check offin your lab section. Both partners must be present. Be prepared to defend your design This is a part of your grade Stay tuned (detail in a few slides) Pick a partner for Lab 5! 7

Lab 5 is a Partner Lab! Find someone to work with! Must pick a partner by Friday Newsgroup can be used for match making th Can pick a different partner for the project 8

Questions? CS150 CAD Toolflow ChipScope, ModelSim Partnerships for Lab 5, Project Anything else? 9

Please Don t Sleep in the Lab It s uncomfortable It s embarrassing 4 chairs hi bed bd It s just plain bad for you Gohometo sleep! 10

Lab 5 (Mini Project) (1) Small part of the project UART interface and a little something to test it SMIPS CPU Graphics Accelerator Memory Map UART (Serial) Interface Ethernet Interface Instruction Memory Data Memory SRAM Interface DVI Video Interface FPGA Frame Buffer (SRAM) 11

Lab 5 (Mini Project) (2) Use the entire toolflow Labs 1 4 taught you how Learn to use a handshake Build a state machine to mimic a CPU To test the UART Interface We give you a UART module Understand it intimately Practice creating design documents CPU Emulator State Machine Adapter UART Interface 12

Lab 5 (Mini Project) (3) Software Side XUPv5 Putty/Hyperterminal RS-232 Serial Cable RS-232/ Serial Port UART Virtex-5 LX110T FPGA Console Interface (0xffff_000c- 0xffff_0000) Data MIPS150 Processor Emulator Address 13

Ready Valid Handshake (1) Synchronous flow control Synchronizes the flow of data (within one clock domain) Creates a stream abstraction Other handshakes exist But we like this one 14

Ready Valid Handshake (2) A transfer ta from A to B occurs when: A positive edge of the clock arrives andb is asserting Ready and A is asserting Valid No sequence requirements Upon a transfer: B may look at the Data (save, etc.) A must either: de assert valid Expose the next Datum Clock Ready Valid Data Transfers 15

Procedure 1) Read the specification 2) DO NOT WRITE ANY VERILOG YET! 3) Draw a very high level block diagram (be neat and name everything) 4) Expand blocks into new diagrams until you understand all details. 5) Finddesign design flawsandrepeat and steps 1 4. 6) Think of ways to verify (test) the design. 7) Show your design to the TAs. Be prepared to defend it. 8) Now implement and verify the design 16

Design Documents (1) Spend 2+ hours on this Detailed enough for someone else to implement Show structure and function (no screenshots) Use hierarchy and omit detail (no mess o wires) Xfig, OmniGraffle, Visio, etc. (no MSPaint please) ) Document all optimizations and hacks thoroughly A good design document will make implementation and debugging easy Else you will pull an all nighter. 17

Design Documents (2) Graded out of 3 points: Clear Understandable What? 2 1 0 Solid idea An idea No idea Past CS150 designs deserve a 1. Many commercial datasheets deserve a 0. 18

Acknowledgements & Contributors Slides developed by Ilia Lebedev & John Wawrzynek (2/2010). This work is based in part on slides by: Ilia Lebedev, Chris Fletcher (2008 2009) 2009) Greg Gibeling (2003 2005) This work has been used by the following courses: UC Berkeley CS150 (Spring 2010): Components and Design Techniques for Digital Systems 19