Upload
others
View
6
Download
0
Embed Size (px)
Citation preview
inst.eecs.berkeley.edu/~eecs151
Bora Nikoli
EECS151 : Introduction to Digital Design and ICs
Lecture 1 – Introduction
Mondays and Wednesdays 11am-12:30pm
Cory 540AB and on-line
1EECS151/251A L01 INTRODUCTION
Class Goals Class Gand
Goalsass Gd d Expected d d Outcomes
2EECS151/251A L01 INTRODUCTION
What This Class is All About?• Introduction to digital integrated circuit and system engineering
• Key concepts needed to be a good digital system designer• Discover you own creativity!
• Learn models that allow reasoning about design behavior• Manage design complexity through abstraction and understanding of automated tools • Allow analysis and optimization of the circuit’s performance, power, cost, etc.
• Learn how to make sure your circuit and the whole system work• There are way more ways to mess up a chip than to get it right.
3
Digital design is not twitch.com!Learn by doing!
EECS151/251A L01 INTRODUCTION4
Course Focus
EE 16A/16B
EE 130
IC processing
Transistor PhysicsDevices
Circuits
CS 61C
Gates
Memory
HDLMachine Organization
Instruction Set Arch
Programming Languages Asm / Machine Lang
CS 152
EECS 151
Deep Digital Design ExperienceFundamentals of Boolean Logic
Synchronous Circuits
Finite State Machines
Timing & Clocking
Device Technology & Implications
Controller Design
Arithmetic Units
Memories
Testing, Debugging, Verification
Hardware Architecture
Hardware Description Languages (HDL)
Design Flows (CAD)EECS151/251A L01 INTRODUCTION
Prerequisites
•CS61C• C, Boolean logic, RISC-V ISA
• We will review combinational and sequential logic and RISC-V datapath, pipelining (but go much more in depth)
•EE16A/B• Digital gates, RC networks
• We will review transistor operation and design of CMOS logic
5EECS151/251A L01 INTRODUCTION
Possible Course Sequences
• CS 61C EECS 151 CS152 …EE 16A/B
• CS 61C CS 152 EECS151 …EE 16A/B• With a 151/152 background should be able to take any
graduate-level course in architecture/digital systems
• Circuits: EECS 151 + EE 140 is a springboard into integrated circuits
6
• Computer Engineering/Architecture/Hardware
EECS151/251A L01 INTRODUCTION
CS61C Background – RV32I
• Don’t worry about details – we will rebuild it and make it work!
+4Add
addrinst
IMEM
pc+4
pc+4
wb
pcwb
Inst[24:20] ALU+
clk
Reg [ ]
Inst[19:15]
Inst[11:7]
AddrB
AddrA DataA
DataB
AddrD
DataD
alu
Reg[rs1]
Reg[rs2]
Inst[31:0]
Control logic
RegWEn ALUSelAsel
MemRW
0
1
Imm[31:0]Imm.Gen
Add
clk
addrinst
IMEM DMEM
addrDataR
DataW
PC
Inst[31:7]
1
0
2
clk
WBSel
BranchComp
1
0
ImmSel
1
0
PCSel BrUn
BrEq
BrLT
Control logic
Bsel
mem
alualu
7EECS151/251A L01 INTRODUCTION
Processor Design Project in CS61C
• Designed in LogiSim
• From Fall’20 onwards, able to run RV32I compliance tests
• Exported Verilog, ran synthesis and simulation (R. Lund, et al, WCAE’21)
8EECS151/251A L01 INTRODUCTION
At the end of EECS 151
• Should be able to build a complex digital system
+4Add
addrinst
IMEM
pc+4
pc+4
wb
pcwb
Inst[24:20] ALU+
clk
Reg [ ]
Inst[19:15]
Inst[11:7]
AddrB
AddrA DataA
DataB
AddrD
DataD
alu
Reg[rs1]
Reg[rs2]
Inst[31:0]
Control logic
RegWEn ALUSelAsel
MemRW
0
1
Imm[31:0]Imm.Gen
Add
clk
addrinst
IMEM DMEM
addrDataR
DataW
PC
Inst[31:7]
1
0
2
clk
WBSel
BranchComp
1
0
ImmSel
1
0
PCSel BrUn
BrEq
BrLT
Control logic
Bsel
mem
alualu
Berkeley chip in 2021of IEEE Solid-State Circuits Conference
9EECS151/251A L01 INTRODUCTION
The Tapeout Class (EE194/290C)• In Spring 2021, 19 students completed a 28nm chip design in a semester (14 weeks)
• Just returned from fabrication
• Prerequisites: Either EECS151 (ASIC lab preferred) or EE140
10EECS151/251A L01 INTRODUCTION
Careers in Hardware
• Apple’s New Silicon Initiative event tonight• Please come (it is on-line) and ask questions
• Your chance to meet Apple’s Fellows
• Fellowships and scholarships available
• Undergraduate scholarships for students interested in System-on-a-Chip design
• Applications next week!
11EECS151/251A L01 INTRODUCTION
Administrivia
12EECS151/251A L01 INTRODUCTION
13
EECS151/251A CrewProfessor Borivoje Nikoli
(Bora)509 Cory [email protected] Hours: TBD
All TA OHs held in 111Cory.
Michael
Vighnesh IyerFPGA LabsOffice Hours:M 10am-11am
Reader: Bob Zhou
Daniel GrubbASIC LabsDiscussionsOffice Hours:Tu 11-12pm
Charles HongFPGA LabsOffice Hours:W 2-3pm
Nayiri KrzysztofowiczASIC LabsOffice Hours:Th 11-12pm
Zhenghan LinFPGA LabsOffice Hours:W 5-6pm
Zhaokai LiuASIC LabsDiscussionsOffice Hours:F 2-3pm
Alisha MenonFPGA Labs
Office Hours:M 2-3pm
EECS151/251A L01 INTRODUCTION
Course Information• Basic Source of Information, class website:
http://inst.eecs.berkeley.edu/~eecs151/fa21/
• Lecture notes and video modules• Assignments and solutions• Lab and project information• Exams• Piazza Discussion Forum• Many other goodies …
Print only what you need: Save a tree!
14EECS151/251A L01 INTRODUCTION
Health and Safety
• You need to have a green badge to come to in-person lectures, labs discussions!
• If you are feeling sick, please stay home!• Everything is available on-line
• And I will switch to on-line lectures if I get sick
15EECS151/251A L01 INTRODUCTION
Class Organization• Lectures
• Discussion sessions (M 3-4pm, W 3-4pm, W 8-9am (online))
• Office hours (8 hours per week!)
• Problem Sets (~1 per week)
• Labs – FPGA or ASIC (or both, but only if you are sure that you have time)
• Design project
• 2 Midterms + 1 Final
16EECS151/251A L01 INTRODUCTION
Lectures
• Slides available on website before the lecture
• Lectures are webcast!
• Recordings available as well
• But please do come to lectures!
• We like interactive lectures!
17
EECS151/251A L01 INTRODUCTION
Class Textbooks
• Useful LA lab reference (EE151/251LA):• Erik Brunvand: Digital VLSI Chip Design with Cadence and Synopsys CAD Tools
18
Recommended (previously required)
Recommended(previously required)
No Required Book this semester
Useful
EECS151/251A L01 INTRODUCTION
Discussion Sessions• Start next week!
• Review of important concepts from lecture (remember - no required textbook)
• Help with problem sets
19EECS151/251A L01 INTRODUCTION
Problem Sets• Approximately 10 over the course of the semester (one per week)
• Posted on Thursday, due on Friday 11:59pm, 8 days later
• Essential to understanding the material
• Ok to discuss with colleagues but need to turn in your own work / write-up
• Late turn-in: 20% point deduction per day, except with documented medical excuse
• Solutions posted the week after due date
20EECS151/251A L01 INTRODUCTION
Labs• Choose either FPGA or ASIC or both
• 6 FPGA / 6 ASIC lab exercises, done solo
• Lab report (check off) due by next lab session
• Design project lasts 7 weeks, done with partner
• Project demo/interview RRR week
• Project report due RRR week
• All labs held in 111/117 Cory
• ASIC: M 5-8PM, W 8-11am (online + 111 Cory), F 11am-2pm
• FPGA: W 6-9PM, Th 11am-2pm, F 8-11AM (fourth lab may be opened)
• All labs start next week!
21EECS151/251A L01 INTRODUCTION
Midterm and Final• Midterms scheduled in evening
• Review session in advance
• Midterms:
• Th. Oct. 7, 7-9pm (tentative)
• Th. Nov. 4, 7-9pm (tentative)
• Final: M, Dec 13, 11:30am-2:30PM
22
All exams are closed book – with one double sided 8.5x11 sheet of notes
EECS151/251A L01 INTRODUCTION
Clobber Policy
• The clobber policy allows you to:• Override your Midterm 1 score with the score on the final if you perform better
on the final, and
• Override your Midterm 2 score with the score on the final exam if you perform better on the final.
• Note that the reverse is not true - you must take the entire final exam, regardless of your Midterm 1 and Midterm 2 scores.
23EECS151/251A L01 INTRODUCTION
Course Information• For interactions between faculty, GSIs and fellow students – we are using Piazza
For fastest response post your questions on Piazza.
(make sure to register ASAP if you don’t want to miss any of the action)https://piazza.com/berkeley/fall2021/eecs151251a
24EECS151/251A L01 INTRODUCTION
Policyy on Academic Dishonesty• Details of our cheating policy on the class web site. Please read it and ask
questions.• If you turn in someone else's work as if it were your own, you are guilty of
academic dishonesty. This includes problem sets, answers on exams, lab exercise checks, project design, and any required course turn-in material.
• Also, if you knowingly aid in cheating, you are guilty.• However, it is okay to discuss with others lab exercises and the project
(obviously, okay to work with project partner). Okay to discuss homework with others. But everyone must turn in their own work.
• Do not post your work on public repositories like github (private o.k.)• If we catch you cheating, you will get negative points on the assignment: It
is better to not do the work than to cheat!If it is a midterm exam, final exam, or final project, you get an F in the class.
• All cases of cheating reported to the Center for Student Conduct.
25EECS151/251A L01 INTRODUCTION
Grading Breakdown
26
HWs20%
Midterm1 20%
Midterm2 20%
Final 40%
EECS 151/251A Lecture
Labs 37.5%
Project 62.5%
LA – ASIC
Labs 25%
Project 75%
LB – FPGA
3 units
2 units
2 units
EECS151/251A L01 INTRODUCTION
Tips on How to Get a Good Grade
The lecture material is not the most challenging part of the course.
• You should be able to understand everything as we go along.
• Do not fall behind in lecture and tell yourself you “will figure it out later from the notes or book”.
• Notes will be online before the lecture (usually the night before). Study them before class.
• Ask questions in class and stay involved in the class - that will help you understand. Come to office hours to check your understanding or to ask questions.
• Complete all the homework problems - even the difficult ones.
• The exams will test your depth of knowledge. You need to understand the material well enough to apply it in new situations.
You need to enroll in both the lab and the course.
• Take the labs very seriously. They are an integral part of the course.
• Choose your project partner carefully. Your best friend may not be the best choice!
• Most important (this comes from 30+ years of hardware design experience):
• Be well organized and neat with homework, labs, project.
• In lab, add complexity a little bit at a time - always have a working design.
• Don’t be afraid to throw away your design and start fresh.
27EECS151/251A L01 INTRODUCTION
Getting Started
• Discussions and labs start next week
• Lab 1 assigned later this week – complete the setup before coming to the lab!• Come prepared to the lab session
• Register on Piazza as soon as possible
• Register for your EECS151 class account at inst.eecs.berkeley.edu/webacct
• If you are registering through concurrent enrollment:See us in person this week
28EECS151/251A L01 INTRODUCTION
Digital Integrated Circuits Digital Integraand Systems
Past, Present and Future
29EECS151/251A L01 INTRODUCTION
Diversifying Applications
Mac
hine
lear
ning
30EECS151/251A L01 INTRODUCTION
Remember: My Other Computerr …
• It is being customized as well!
31EECS151/251A L01 INTRODUCTION
How Did All This Arise?
32EECS151/251A L01 INTRODUCTION
The Transistor Revolution
33
First transistorBell Labs, Dec 1947
EECS151/251A L01 INTRODUCTION
First Integrated Circuits (19588-8-59)
34
Jack Kilby, Texas Instruments
Bob Noyce, Fairchild
EECS151/251A L01 INTRODUCTION
Moore’s Law
• In 1965, Gordon Moore noted that the number of transistors on a chip doubled every 12 months.
• He made a prediction that semiconductor technology will double its effectiveness every 12 months
“The complexity for minimum component costs has increased at a rate of roughly a factor of two per year. Certainly over the short term, this rate can be expected to continue, if not to increase. Over the longer term, the rate of increase is a bit more uncertain, although there is no reason to believe it will not remain nearly constant for at least 10 years. That means by 1975, the number of components per integrated circuit for minimum cost will be 65,000.”Gordon Moore, Cramming more Components onto Integrated Circuits, (1965).
1824
35EECS151/251A L01 INTRODUCTION
Moore’s Law - 1965
““Reduced cost is one of the big Reduced cost is one of thRattractions of integrated attractions of integrated electronics, and the cost electronics, and the costadvantage continues to increase advantage continues to increas the technology evolves as the technology evolves toward the production of larger toward the production of larger and larger circuit functions on a and larger circuit functions on asingle semiconductor substrate.”single semiconductor subElectronics, Volume 38, Electronics, Volume 38, Number 8, April 19, 1965
1960 1965 1970 1975 1980 1985 1990 1995 2000 2005 2010
TransistorsTransistorsPer Die
1008
1007
10006
1005
1004
10003
1002
1001
11000
8
1009
100010
Source: Intel
1965 Data (Moore)
Graph from S.Chou, ISSCC’200536EECS151/251A L01 INTRODUCTION
Moore’s Law - 2005
4004
8080 808680286
386™ Processor486™ Processor
Pentium® ProcessorPentium® II Processor
Pentium® III ProcessorPentium® 4 Processor
Itanium™
ororProcessor
TransistorsTransistorsPer Die
1008
1007
10006
1005
1004
10003
1002
1001
1000
1009
100010
8008
Itanium™ 2oror
Processor
1K4K
64K256K
1M
16M4M
64M256M
512M1G 2G
128M
16K
1965 Data (Moore)
MicroprocessorMemory
1960 1965 1970 1975 1980 1985 1990 1995 2000 2005 2010
4004
80800 80868802868 6
38386™™™ ProcessorPProcP4848
ces8686™
ssorssoss™™ cessorProcPProcessorProcPP
PentiuPentiummr
rocessorPPumummm®®®® rocePPPenPePentiumPeenPe m
essoressm ocessorProII Intiumntiummmmm® PrPrIIIIII
PentiumPentiuen umntiuuntiuPmm
ocessorroroII ProcessorII ProcesIIIIIIPentiumm® II
PPentiuummmProcessorII PI4 Processo44entiumentiumummmm® 4444
ItItaniuuumum44
mmmmProcesso4 Processo4 P4 P44 P4 P4ProcessP
r Dier Die
08
07
0066
05
04
0033
02
011
000
8
09
001010
004
808008800080
taniumaniuumummmm™™ PPPPItaniumItaniumummmm™
oProProPro™ 2222
ssocessoceoce2222 ProProPP
1K4K
64K256K
1M
16M4M
6M6464
2566M512M51 M
1G1 2G
M25
28M128M
6416K
1965 Data (Moore)
MicroprocessorMiMemoryM
19601 1965 1970 1975 1980 1985 1990 1995 2000 2005 2010
Source: IntelGraph from S.Chou, ISSCC’2005
37EECS151/251A L01 INTRODUCTION
Transistor Counts
38
H.-S. P. Wong, HotChips, August 2019.
EECS151/251A L01 INTRODUCTION
CS150/EECS151 Project Complexity
39
1980 Pong game10’s of logic gates
1995 MIDI synthesizer1000’s of logic gates
2000-2010 eTV tuner10K’s logic gates
2010-2017 MIPS CPU or BYO1M logic gates
2018 MIPS CPUProgrammable SOC: duacore ARM, 85K logic cells,220 MACC
EECS151/251A L01 INTRODUCTION
The e Keyey: y: CCCost
40
Moore’s 1965 paper:
Moore’s Law ends when cost reduction stops EECS151/251A L01 INTRODUCTION
Recent Cost Trend
L. Su, HotChips, August 2019. Cost nearly doubled!
41EECS151/251A L01 INTRODUCTION
The Other Trends
42EECS151/251A L01 INTRODUCTION
Dennard Scaling (1974)• Voltages (and currents) should be scaled
proportionally to the dimensions of the transistor
• If so, delay and power should scale
• And, in theory, power density constant!
• We are not following Dennard’s scaling since ~2005
43
R.H. Dennard, F. Gaensslen, H.-N. Yu, L. Rideout, E. Bassous, A. LeBlanc, Andre "Design of ion-implanted MOSFET's with very small physical dimensions," IEEE Journal of Solid State Circuits. SC-9 (5), 1974.
//Bob Dennard
EECS151/251A L01 INTRODUCTION
Frequency
44
Frequency Trends in Intel's Microprocessors
0.1
1
10
100
1000
10000
1970 1975 1980 1985 1990 1995 2000 2005
Freq
uenc
y [M
Hz]
40048008
8080
8086
8088
80286386DX
486DX 486DX4
PentiumPentium Pro
Pentium II
Pentium MMX
Pentium III
Pentium 4
ItaniumItanium II
Core2
Has been doublingevery 2 years, but quickly turned flat
EECS151/251A L01 INTRODUCTION
Power Dissipation
45
Has been > doublingevery 2 years
Has to stay ~constant
Power Trends in Intel's Microprocessors
0.1
1
10
100
1000
1970 1975 1980 1985 1990 1995 2000 2005
Pow
er [W
]
4004
8008 8080
8086
8088
80286
386DX
486DXPentium
Pentium Pro
Pentium II
Pentium IIIPentium 4
ItaniumItanium II Core 2
EECS151/251A L01 INTRODUCTION
Power and Performance Trends
• What do we do next?
46EECS151/251A L01 INTRODUCTION
The Other Demon:The Other Demon:Complexity and Design Costs
47EECS151/251A L01 INTRODUCTION
Cost Of Developing New Products
• These are non-recurring (NRE) costs, need to be amortized over the lifetime of a product
• We will attempt to dismantle this…48EECS151/251A L01 INTRODUCTION
Solutions
• Software faced the complexity issues as well
• Solutions: Increase abstraction level, be modular, improve reuse, rely on open source, be agile…
• Apply to hardware design
49EECS151/251A L01 INTRODUCTION
Abstraction
• How to design a Pong game• Hand layout
• Gate-level design (semi custom)
• Describe in HDL Synthesis, place and route
• HLS, HCL
• “Computer, design a pong game”
teeeeeeeeeeeeeee
OutIn
VDD
OutIn
+ CPU
50EECS151/251A L01 INTRODUCTION
Hierarchyy innn Designs s –– Complexity Control
• Design Abstraction
• Hide details and reduce number of things to handle at any time
• Modular design
• Divide and conquer
• Simplifies implementation and debugging
• Regularity
• Instantiate identical modules
51
Module A
Module B Module B
EECS151/251A L01 INTRODUCTION
Digital Design: What’s it all about?Given a functional description and performance, cost, & power constraints, come up with an
implementation using a set of primitives.
• How do we learn to do this?1. Learn about the design primitives and how to use them. 2. Learn about design representations. 3. Learn formal methods and tools to manipulate the representations. 4. Study design examples. 5. Have robust approach to verification. 6. Use trial and error - CAD tools and prototyping. Practice!
• Digital design is a bit an art as well as a science. The creative spirit is critical incombining primitive elements & other components in new ways to achieve a desiredfunction.
• However, unlike art, we have objective measures of a design:
52
Performance Cost PowerEECS151/251A L01 INTRODUCTION