ECE 111 (Spring 2018) Professor Bill Lin

Slides:



Advertisements
Similar presentations
EEL4720/5721 Reconfigurable Computing The state-of-the-art Reconfigurable Computing equipment available for this course is made possible by a generous.
Advertisements

Computer Organization and Architecture (AT70.01) Comp. Sc. and Inf. Mgmt. Asian Institute of Technology.
Professor Bill Lin Office hours: TBD, 4310 Atkinson Hall Lectures:
Randal E. Bryant Carnegie Mellon University CS:APP2e CS:APP Chapter 4 Computer Architecture Overview CS:APP Chapter 4 Computer Architecture Overview
Introduction to Information Technology in Dermatology Part II Rick Lin, DO MPH First Year Dermatology Resident Texas Division of the KCOM Dermatology Department.
Digital System Design EEE344 Lecture 1 INTRODUCTION TO THE COURSE
Guest Lecture by Ben Magstadt CprE 281: Digital Logic.
Guest Lecture by Ben Magstadt CprE 281: Digital Logic.
ECE 284: Special Topics in Computer Engineering On-Chip Interconnection Networks Prof. Bill Lin Spring 2014.
Stations September 3 rd - September 6 th. Project Overview Students will design, create, and price a product to be sold at the Farmer’s Market on September.
David O’Hallaron Carnegie Mellon University Processor Architecture Overview Overview Based on original lecture notes by Randy.
EEL4712 Digital Design. Instructor Dr. Greg Stitt Office Hours: TBD (Benton 323) Also, by appointment.
Welcome to CS 115! Introduction to Programming. Class URL Write this down!
Data Structures (Second Part) Lecture 1 Bong-Soo Sohn Assistant Professor School of Computer Science and Engineering Chung-Ang University.
Welcome to Physics 2015! ( General Physics Lab 1 - Fall 2012)
EEL4712 Digital Design. Instructor Dr. Greg Stitt Office Hours: M Period 3, W Period 4 Subject to change.
EEL4720/5721 Reconfigurable Computing Greg Stitt Associate Professor.
CMSC 491/691 A Web of Data Administrivia Spring
Computer Engineering 1502 Advanced Digital Design Professor Donald Chiarulli Computer Science Dept Sennott Square
Course Overview for Compilers J. H. Wang Sep. 14, 2015.
Course Overview Mark Stanovich COP 5641 / CIS 4930.
Embedded System Course Syllabus. Course Outline Instructor: 안 종석 –Office: 컴퓨터 공학과 Q304 – –Home page:
CEC 220 Digital Circuit Design Wednesday, January 7 CEC 220 Digital Circuit Design Slide 1 of 12.
Course web page: ECE 646 Cryptography and Computer Network Security ECE web page  Courses  Course web pages  ECE 646.
ECE 111, Winter Professor Bill Lin – Office hours: TBD, 4310 Atkinson Hall Lectures: – Section.
CEC 220 Digital Circuit Design Monday, August 24 CEC 220 Digital Circuit Design Slide 1 of 13.
Introduction Computer Organization Spring 1436/37H (2015/16G) Dr. Mohammed Sinky Computer Architecture
Course Overview CSE5319/7319 Software Architecture and Design Spring 2016 Dr. LiGuo Huang Dept. of Computer Science and Engineering Southern Methodist.
CprE 281: Verilog Tutorial Ben Magstadt – Master’s Student Electrical Engineering.
Lecture 0. Course Introduction Prof. Taeweon Suh Computer Science Education Korea University COM515 Advanced Computer Architecture.
Lecture 0 Overview Hong, You Pyo, DGU 1. Y. Hong Microprocessor A semiconductor device that contains a CPU (Central Processing Unit) and peripherals In.
ECE 111 (Spring 2017) Professor Bill Lin
Get Your Head in the Cloud
EEL4712 Digital Design.
Welcome to CSE 502 Introduction.
Foreign Direct Investment Spring 2016
CS6501 Advanced Topics in Information Retrieval Course Policy
ENCM 369 Computer Organization
Lab 0: Familiarization with Equipment and Software
EEL4720/5721 Reconfigurable Computing
VLSI Tarik Booker.
CS 310: Computer Organization and Programming
E 96 Introduction to Engineering Design Peter Reiher UCLA
Welcome to Physics 2015! (General Physics Lab 1 – Spring 2013)
Week 1 Gates Introduction to Information Technology cosc 010 Week 1 Gates
ECE/Comp Sci 352 Digital Systems Fundamentals
Data Structures and Analysis (COMP 410)
Course Presentation – Spring 2018
Welcome to CS 1010! Algorithmic Problem Solving.
Compiler Construction
Digital Engineering Laboratory
EEL4712 Digital Design.
Welcome to CS 1010! Algorithmic Problem Solving.
CMPE 152: Compiler Design August 21 Class Meeting
Welcome to CS 1301! Principles of Programming I.
EEL4712 Digital Design.
Lecture 1: Introduction
ECE 554 Digital Engineering Laboratory Nam Sung Kim (Chunhua Yao –TA)
Data Structures and Analysis (COMP 410)
CS4501: Information Retrieval Course Policy
Welcome to CSE 502 Introduction.
EEL4720/5721 Reconfigurable Computing
Human Media Multicore Computing Lecture 1 : Course Overview
Digital Engineering Laboratory
THE ECE 554 XILINX DESIGN PROCESS
WELCOME TO EE457 COMPUTER SYSTEMS ORGANIZATION
Administrivia- Introduction
THE ECE 554 XILINX DESIGN PROCESS
WELCOME TO EE457 COMPUTER SYSTEMS ORGANIZATION
CS201 – Course Expectations
Presentation transcript:

ECE 111 (Spring 2018) http://cwcserv.ucsd.edu/~billlin/classes/ECE111/index.php Professor Bill Lin Office hours: Wed 1:00-1:50p, 4310 Atkinson Hall Lectures: Section A00: MW 2:00-3:20p, EBU1-2315 Section B00: MW 3:30p-4:50p, EBU1-2315 No regular discussion sections (only schedule if needed) TAs: Justin Law, Yang Song, and Ping Yin Office hours: TBD Note: You may get help from any TA during their office hours.

Introduction Goal: Learn Verilog-based chip design In particular, we will be using the Hardware Description Language (HDL) SystemVerilog, which is a “superset” of Verilog: Verilog, IEEE standard (1364) in 1995 SystemVerilog, extended in 2005, current version is IEEE Standard 1800-2012 The name “SystemVerilog” is confusing because it still describes hardware at the same level as “Verilog”, but SystemVerilog adds a number of enhancements and improved syntax. SystemVerilog files have a “.sv” extension so that the compiler knows that the file is in SystemVerilog rather than Verilog.

Why Learn Verilog/SystemVerilog Most EE jobs are Verilog/SystemVerilog based chip designs ASIC Design FPGA Design

Example: Microsoft’s Catapult Project deployed worldwide Why Learn Verilog/SystemVerilog Emergence of the FPGA Cloud Example: Microsoft’s Catapult Project deployed worldwide [Credit: Microsoft, MICRO’16]

Why Learn Verilog/SystemVerilog Emergence of the FPGA Cloud Example: Microsoft’s Project BrainWave Each FPGA implements many Soft DPUs [Credit: Microsoft, Hot Chips’17]

Other FPGA Clouds

FPGA Cloud Applications Bing search engine implemented in Microsoft’s FPGA cloud Machine learning/AI High-speed frequency trading Bioinformatics (e.g. DNA sequencing)

Class Project Final project on Bitcoin mining Great deal of interest recently in cryptocurrencies In 1997 Coin Increase Increase % Market Cap bitcoin 26x 2612% $336 billion ripple 615x 61496% $147 billion ethereum 108x 10808% $85 billion litecoin 98x 9799% $20 billion monero 43x 4336% $7 billion

Class Project + Bitcoin mining SHA256 < Every “msg” will produce different 256-bit hash. Changing “nounce” will change “msg” and produce different 256-bit hash. Find “nounce” such that SHA256(nounce + block) < “target” If “target” has 1 leading 0, then chances of success every 2 tries. If 2 leading 0’s, every 4 tries, 30 leading 0’s, every billion tries, etc. Bitcoin by design makes “target” increasingly difficult after certain number of bitcoins have been mined. “target” = 00xxxx…xxx 32 “nounce” SHA256 512 256 + < found? “msg” “hash” “block” 512

Class Project Currently, fastest Bitcoin mining machines consume about $2000 in electricity to mine one Bitcoin, but one Bitcoin is currently $15,000, as high as $20,000 at the end of 2017.

Class Project Final project based on how fast can your design evaluate “nonces” (equivalent to how fast you can mine a Bitcoin). i.e., final project grade based on performance only. You can use the entire FPGA to create as many instancs of SHA256 as you like, and you can greatly improve the performance of each SHA256 unit using techniques like pipelining, etc. Intermediate project: Design of a SHA256 unit. Projects done in teams of 2 (you have the option of working alone). Your partner can be in the other section.

Software See Software Downloads Page which links to this: http://cwcserv.ucsd.edu/~billlin/classes/ECE111/software.php which links to this: http://dl.altera.com/?edition=lite Quartus Prime Lite Edition Quartus Prime (earlier versions were called Quartus II) ModelSim-Intel FPGA Edition Arria II device support Available for Windows and Linux For Macs, you can use Bootcamp to dual-boot Windows

Software Class website has a tutorial page on Quartus and ModelSim http://cwcserv.ucsd.edu/~billlin/classes/ECE111/Quartus_ModelSim_Tutorial/quartus_modelsim_tutorial.html Intel/Altera also has an online demonstration page on Quartus https://www.altera.com/education/demonstrations/dem-index.html

More Information Recommended textbook Digital Design and Computer Architecture, Second Edition, by David Harris and Sarah Harris We will only be using Chapter 4 of this book, which provides a good overview of SystemVerilog with good examples. Make sure you get the 2nd Edition since the 1st Edition uses Verilog instead of SystemVerilog Book recommended, but not required. This is NOT a lecture-based class. Class time used to talk about SystemVerilog in the beginning, but mostly about project information for the rest of the quarter.