welcome to ee 201! · 2019-01-18 · welcome to ee 201! please ll out a name tent with the name you...
TRANSCRIPT
Welcome to EE 201!Please fill out a name tent with the name you prefer to go by.
On your notecard write:
1. Your name
2.What you hope to learnin this course
3. A wild prediction of the bestpossible outcome if yourexpectations are met.
1. Steven Bell
2. How to build a microprocessor.
3. Tim Cook calls me personallyand asks me to design the next-generation iPhone processor.
EE 201: The magic of microprocessorsSteven Bell17 January 2019
About me
Bachelor's inComputer Engineering
MS/PhD inElectrical Engineering
Two summer-long internships
My research
Avnet UltraZed EGwith PCIe carrier card
4-cameracustom FMC
breakoutCustom IMX219 camera boards with:- Focus- Configurable clock- 9-axis IMU
COTS Sony IMX219 image sensors
LED flash
Warning!
EE 201 is a brand-new course!
There will be problems - please be patient.And let us know how we can improve!
BUMPSAHEAD
About you
1. Your name2. Somewhere interesting you have been in the last year
What will we learn in EE 201?
Circuits Programming
int main(int argc, char* argv[]){
for(int i = 0; i < 100; i++){
printf("i: %d\n", i);
}
return(0);
}
What will we learn in EE 201?
Circuits Programming
int main(int argc, char* argv[]){
for(int i = 0; i < 100; i++){
printf("i: %d\n", i);
}
return(0);
}
Digital design(EE 201)
Why should you care?
Why should you care?(one example)
CPU<100 MHash/sec
GPU~1 GHash/sec
FPGA~500 MHash/sec
ASIC~10 THash/sec
0.5 MHash/J
https://en.bitcoin.it/wiki/Mining_hardware_comparison
2 MHash/J 10,000 MHash/J20 MHash/J
Wearables
Neural-network hardware
Network routers
Other applications
Gene matching
"Big data" analytics
Custom hardware in the datacenter
Google TensorProcessing Unit
Microsoft CatapultIntel FPGA cloud
Amazon EC2 F1FPGA instances
In a power-constrained system,performance per watt is performance.
Topic Reading HomeworkJan 17 Thursday 1 Welcome and introductionJan 22 Tuesday 2 Boolean equations, truth tables, and circuits 1.5, 2.1-2.2Jan 24 Thursday 3 Manipulating boolean equations & minimizing logic 2.3-2.7Jan 29 Tuesday 4 Multiplexers and FPGAs 2.8 HW 1 dueJan 31 Thursday 5 Timing combinational logic 2.9Feb 05 Tuesday 6 VHDL for combinational logic 4.1-4.2 HW 2 dueFeb 07 Thursday 7 Testing and testbenches 4.3, 4.9Feb 12 Tuesday 8 Latches and flip-flops 3.1-3.3 HW 3 dueFeb 14 Thursday 9 Basic sequential circuits 4.4-4.5, 5.4Feb 19 Tuesday 10 State machines 3.4 HW 4 dueFeb 21 Thursday No class; Monday schedule due to holidayFeb 26 Tuesday 11 Timing sequential logic 3.5-3.7 HW 5 dueFeb 28 Thursday 12 Testing sequential logicMar 05 Tuesday 13 Snow day / review for exam HW 6 dueMar 07 Thursday 14 Midterm examMar 12 Tuesday 15 Adders and other combinational circuits 5.1-5.2Mar 14 Thursday 16 Memory: registers, RAM, and ROM 5.5Mar 19 Tuesday No class, spring breakMar 21 Thursday No class, spring breakMar 26 Tuesday 17 ARM assembly programming 6.1-6.3 HW 7 dueMar 28 Thursday 18 From assembly to 0s and 1s 6.4-6.9Apr 02 Tuesday 19 Building a single-cycle processor 7.1-7.3 HW 8 dueApr 04 Thursday 20 A more efficient multi-cycle processor 7.4Apr 09 Tuesday 21 Even faster: pipelined processors 7.5 HW 9 dueApr 11 Thursday 22 Processor catch-up dayApr 16 Tuesday 23 Techniques for modern processors 7.7-7.8 HW 10 dueApr 18 Thursday 24 Digital peripherals and protocols 9.1-9.3.4.1Apr 23 Tuesday 25 Caching 8.1-8.3 HW 11 dueApr 25 Thursday 26 Virtual memory 8.4-8.5
May 09 Thursday Final exam, 3:30-5:30pm
Combinational logic
VHDL and FPGAs
Sequential logic
Going faster
Building a computer
Device policy
Please put away laptops and cell phones except when you need themto solve a problem or answer a poll.
Duncan et al., 2012Digital Devices, Distraction, and Student Performance:Does In-Class Cell Phone Use Reduce Learning?http://casa.colorado.edu/~dduncan/wp/wp-content/uploads/AER010108.pdf
Ravizza et al., 2014Non-academic internet use in the classroom is negatively related to classroom learningregardless of intellectual abilityhttps://www.sciencedirect.com/science/article/pii/S0360131514001298
Office hours
OH are for everyone!Walking office hours are an experiment - come join!
I want everyone to succeed in this class!
We're going to cover a lot of ground, and it will be challenging,but you have what it takes!
If you're falling behind, change something!
Rarely does "working harder" solve the problem.
We'll evaluate your learning based on what you can do,not on a curve against each other.
A word on stereotypes
The digital abstraction
We handle complexity with abstraction.
And we enable abstractions by making restrictions.
The first fundamental one is the "digital abstraction"
By the end of class today, you should be able to:
Add numbers in binary
Write a positive decimal number in binary and vice-versa
Represent negative numbers using 2's complement
Decimal to binary (one of several ways)
If the number is odd, write a 1 and subtract 1 from the numberIf the number is even, write a 0Divide the number by 2 and repeat
0000
0011
0001
0010
0100
0101
0110
011110001001
0
1010
1011
1100
1101
1110
1111
12
3
4
5
6789
1011
12
13
1415
binaryinteger
overflow!
0000
0011
0001
0010
0100
0101
0110
011110001001
00
1010
1011
1100
1101
1110
1111
12
3
4
5
6789
1011
12
13
1415
12
345
67
-1-2
-3-4-5
-6-7 -8
binaryunsigned
signed
signed overflow
unsigned overflow
To write a negative number in 2's complement:
Write the positive number in binary
Flip all the bits (1→0, 0→1)
Add 1 (with all the appropriate carries)
To convert negative 2's complement to decimal,
Flip all the bits (1→0, 0→1)
Add 1 (with all the appropriate carries)
Write the number in decimal
1. Read the book (1.5, 2.1-2.2) and complete the pre-class quiz
For next Tuesday
Quiz is due at 9AM the day of class, so I can review it
cp /ee/201/public_html/quizzes/quiz_01.txt ./
provide ee201 q1 quiz_01.txt
www.ece.tufts.edu/ee/201/