Networked Embedded Systems Sachin Katti EE107 Spring 2016 Lecture 1 Introduction.

Slides:



Advertisements
Similar presentations
Chapter Six Networking Hardware.
Advertisements

Chp 1 – Introduction to Computers
Your Interactive Guide to the Digital World Discovering Computers Fundamentals, 2012 Edition.
Design and Implementation of VLSI Systems (EN0160) Sherief Reda Division of Engineering, Brown University Spring 2007.
Component 4: Introduction to Information and Computer Science Unit 1: Basic Computing Concepts, Including History Lecture 1 This material was developed.
Systems Analysis and Design for Electronic Commerce, Networked Business Processes, and Virtual Enterprises Walt Scacchi, Ph.D. GSM 271 and FEMBA 271 Spring.
Introduction to Computer Terminology
Hardware of Personal Computers
Discovering Computers Chapter 1 Discovering Computers & Microsoft Office 2010.
Introduction to Computer Architecture SCHOOL OF ELECTRICAL AND COMPUTER ENGINEERING SUMMER 2015 RAMYAR SAEEDI.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public ITE PC v4.0 Chapter 1 1 Personal Computers and Applications Networking for Home and Small Businesses.
Bringing your technology to life…
1 CMSC 628: Introduction to Mobile Computing Nilanjan Banerjee Introduction to Mobile Computing University of Maryland Baltimore County
Bellringer Do you think students should study computers? Why or why not?
 Chasis / System cabinet  A plastic enclosure that contains most of the components of a computer (usually excluding the display, keyboard and mouse)
Introduction to Computers
Your Interactive Guide to the Digital World Discovering Computers 2012.
Basic Input Output System
Introduction CSE 1310 – Introduction to Computers and Programming
Flash Cards Computer Technology.
Introduction to Computers. Objectives Overview Describe the five components of a computer Discuss the advantages and disadvantages that users experience.
Introduction To Computer System
RC CAR CONTROLLER BASED ON INTEL GALILEO SOC PLATFORM Nadav Shiloach Sagi Sabag Supervisor: Idan Shmuel Spring 2014 One Semester Project PROJECT’S ENDING.
Living in a Digital World Discovering Computers Fundamentals, 2010 Edition.
What does a Computer Do?. What is a Computer? A computer is an electronic device, operating under the control of instructions stored in its own memory,
CPSC 321 Introduction to Logic Circuit Design Mihaela Ulieru (‘Dr. M’)
EET 4250: Chapter 1 Computer Abstractions and Technology Acknowledgements: Some slides and lecture notes for this course adapted from Prof. Mary Jane Irwin.
Week 1 Review of Computer Concepts. Objectives Recognize the importance of computer literacy Define the term, computer Identify the components of a computer.
Sogang University Advanced Computing System Chap 1. Computer Architecture Hyuk-Jun Lee, PhD Dept. of Computer Science and Engineering Sogang University.
CS/ECE 3330 Computer Architecture Kim Hazelwood Fall 2009.
Eng.Abed Al Ghani H. Abu Jabal Introduction to computers.
Introduction and Overview Summer 2014 COMP 2130 Introduction to Computer Systems Computing Science Thompson Rivers University.
Penn ESE370 Fall DeHon 1 ESE370: Circuit-Level Modeling, Design, and Optimization for Digital Systems Day 1: September 5, 2012 Introduction and.
The Beauty and Joy of Computing Lecture #3 : Creativity & Abstraction UC Berkeley EECS Lecturer Gerald Friedland.
CT 1503 Network Operating Systems Instructor: Dr. Najla Al-Nabhan 2014.
IST 210: Organization of Data
Chapter 1: Applying Computer Basics – Lesson 1 © 2010, 2006 South-Western, Cengage Learning.
PC Computers or Desktop Computers: Usually a computer box or case with built In internal Hard Drive, Processor, power supply, and CD or DVD Rom hooked.
Today: Student will be able to describe the basics of their class and computing Tell me about you and how you use computers. Lesson 1 Slide 1.
Lecture 1 – Overview (rSp06) ©2008 Joanne DeGroat, ECE, OSU -1- Functional Verification of Hardware Designs EE764 – Functional Verification of Hardware.
Advisor: Zhao Zhang Team Members: Chris Chambers Christopher Reis Alex Dean Luke Breuer SPALDING GYMNASTICS SCOREBOARD Client: Spalding Advisor: Zhao Zhang.
Introduction to Computers in General By: Dr. Emelda Ntinglet-Davis Oracle DBA Class.
Course Introduction David Ferry, Chris Gill Department of Computer Science and Engineering Washington University, St. Louis MO 1E81.
CPU Transforms Input and Output Each computer contains one Collection of electronic circuits Processor Interpretates and execute instructions in a program.
Living in a Digital World Discovering Computers Fundamentals, 2011 Edition.
IST 210: ORGANIZATION OF DATA Introduction IST210 1.
Lecture 1 – Overview (rSp06) ©2008 Joanne DeGroat, ECE, OSU -1- Functional Verification of Hardware Designs EE764 – Functional Verification of Hardware.
Networked Embedded Systems Sachin Katti EE107 Spring 2016 Lecture 3 Microcontrollers.
Networked Embedded Systems Pengyu Zhang EE107 Spring 2016 Lecture 8 Serial Buses.
PCs ENVIRONMENT and PERIPHERALS Lecture 4. An expansion cards: - An expansion card (expansion board) is an electronic circuit board that adds more functionality.
1 Lesson 1: Computer Concepts Shalen Malabon. Computer Concepts Asian Institute of Computer Studies 222 Introduction.
Discovering Computers 2009 Chapter 1 Introduction to Computers.
CENG 334 – Operating Systems 01- Introduction Asst. Prof. Yusuf Sahillioğlu Computer Eng. Dept,, Turkey.
Introduction to Computers
Computer Organization and Machine Language Programming CPTG 245
Objectives Overview Explain why computer literacy is vital to success in today’s world Define the term, computer, and describe the relationship between.
Microcontrollers & GPIO
6. Structure of Computers
Difference Between SOC (System on Chip) and Single Board Computer
E 96 Introduction to Engineering Design Peter Reiher UCLA
Technology Literacy Hardware.
Physical Architecture Layer Design
Introduction To Computers
Networked Embedded Systems
Basic Introduction to Computers
Chapter 1: Applying Computer Basics – Lesson 1
Objectives Overview Explain why computer literacy is vital to success in today's world Describe the five components of a computer Discuss the advantages.
Journey: Introduction to Embedded Systems
Instructor: Joel Grodstein
FPGA Vinyl to Digital Converter (VDC)
Presentation transcript:

Networked Embedded Systems Sachin Katti EE107 Spring 2016 Lecture 1 Introduction

EE107: Networked Embedded Systems Goal: Provide a hands on introduction to the design of networked embedded systems Class will focus broadly on how to design a fully functional embedded system as well as use it for the function its designed

Logistics Instructors: Sachin Katti, Pengyu Zhang TAs: Manikanta Kotaru, TBD Lectures: Mon-Wed: 4:30-5:20 Lab Sessions: Fri: 4:30-5:20 Office hours: –Sachin: Gates 342 after Monday class –Pengyu: TBD –Mani: TBD Web: omehttp://ee107.stanford.edu

Lectures & Assignments Lecture slides will be accompanied by notes Lecture notes will be posted on the web Four assignments –Due every two weeks Assignments will be based on programming –Important to do them to keep pace in class

Project & Exams Assignments are designed to progress towards a fully functional embedded system whose goal is app power measurement & debugging Project will use that system for measuring and debugging the energy usage of popular apps on your phones (e.g: Chrome) –Done in groups of 2 Two exams in class –Midterm: May 2 in class –Finals: June 1 in class 5

Grading Logistics Overall Class Grade –Exams: 40% –Four Assignments: 30% –End quarter project: 30%

What is a networked embedded system? 7 Computing systems are everywhere Most of us think of “desktop” computers –PC’s –Laptops –Mainframes –Servers But there’s another type of computing system –Far more common...

Networked Embedded Systems 8 Networked embedded computing systems –Computing systems embedded within things/gadgets connected to the network –Hard to call out any one thing/gadget, nearly everything now has a chip and a radio in it –Billions of units produced yearly, versus millions of desktop/laptop units

Some common characteristics 9 Single-functioned –Executes a single program, repeatedly Tightly-constrained –Low cost, low power, small, fast, etc. Lives in the physical world –Usually measures and/or controls some external physical system

Typical Internal Structure 10

Examples 11

13

Project: Build and use an embedded system to solve a common, everyday problem Hands on introduction to embedded systems Learn concepts by building things that you will use to debug a problem that you face everyday –Why does my phone battery die so fast? Need to be comfortable with C As you build it, you learn –Design of a basic embedded computing system –Interfacing embedded systems with the physical world –Using the embedded system to measure a phone’s power consumption, evaluate which apps (or which OSes) are energy hogs, and suggest how to fix them

BattOr: Energy debugger for smartphones and laptops Power monitoring hardware –Connects directly to the device’s battery to collect observations Collects fine-grained details about how much power an app consumes –Energy consumed to render a frame on the GPU –Energy consumed to send packets over WiFi

What will you take away from this project? General knowledge of how an embedded system works –GPIO, Clocks, Interrupts DMA, ADC, SPI, I2C, UART, Power supplies Low-level firmware development in C –Device drivers –Digital signal processing –USB interface with PC Hardware testing (and building) –Reading circuit layout and schematics –Analog circuit measurement (Oscilloscope, Multimeter) –Digital logic observation (Digital Logic Analyzer) –Surface mount soldering (Extra credit – I strongly suggest it)

Why does BattOr matter? System workloads are increasing but battery capacity is relatively stagnant. –Electrical engineering and software development are beginning to shift focus to energy efficiency Example: BattOr used by Google’s Chrome team –Found and fixed significant (~30%) wasted energy in Chrome for Mac’s frame rendering code Affected all videos and animations in Chrome (YouTube, scrolling, gifs)

Class Goals & Philosophy At the end of the class, you should have the tools to design a gadget with an embedded system inside it Philosophy: Not enough to build an embedded system, we also have to use it for the purpose it was intended –“Eat our own dog food” 18

Course Description Correction Networked embedded systems are often hidden from our view, but they are a key component that enables our modern society. Embedded systems bridge our physical world with powerful digital measurement and control systems. The devices we use every day that are built with embedded systems increase every year, as we realize where computing capability is needed, and as our embedded systems decrease in size and cost to open up to more applications. Applications of today's embedded systems range from stabilization in drones authentication in credit cards, and even temperature control in toasters. In this class, students will learn about how to build an embedded system from the ground up. The lectures will focus on the key enabling components of embedded systems, including: Clocks, GPIO, Interrupts, Busses, Amplifiers, Regulators, Power supplies, ADC/DAC, DMA, and Storage. …. The projects will be centered around building a portable power monitor device that enables software developers to monitor the power consumption of their applications running on smartphones. At the end of the class they will use the power monitor they built to observe the power consumption of their favorite apps and they will write a public blog entry documenting the opportunities that exist for improvement. 19