23.1 23.2 Unit 23 Summary Review of some key concepts from the first half of the semester A BRIEF SUMMARY 23.3 23.4 A Few Big Ideas 1 A Few Big Ideas 2 • Any algorithm can be implemented • Software interacts with hardware by setting, clearing, in software or hardware Application and reading bits in specific registers Specific Hardware • Hardware will: (no software) • Because we do not know when HW events will occur – Be faster and use less power Computing System Flexibility, Design Time we use interrupts and/or polling to check for HW – Convert input combinations to desired Spectrum Performance events output combinations using Cost – Take care; speed matters! One physical event may be seen combinational logic that often includes as multiple events to a fast software loop; or you may miss muxes, adders, decoders, and an event completely if your software responds too slowly comparators General Purpose – We must write our software with this in mind – Use sequential logic, namely a register, HW w/ Software to capture and save state or various data variables on a clock edge for processing in subsequent clocks
23.5 23.6 A Few Big Ideas 3 • We want to reduce latency and/or increase throughput by techniques such as caching and pipelining • Parallelism both at the hardware and software level can be carefully exploited to improve performance – Communication and collaboration reduce the effectiveness Big picture ideas of what the computer engineering is about REVISITING COMPUTER ENGINEERING 23.7 23.8 Remember Day 1 You Can Do That With Computer Engineering Cloud & Distributed Computing Applications (CyberPhysical, Databases, Data • Computer engineering prepares Mining, Machine Learning, etc.) Networks you for a broad set of fields Applications SW Algorithms C++ / Java / – You could work in the SW industry (AI, Robotics, Graphics, Mobile) Python – You could work in the HW industry OS / Systems & Networking Assembly / Libraries – You will be most qualified for jobs Machine Code (Embedded Systems, IoT, Networks) that combine that knowledge Processor / Memory / GPU / FPGAs / Networks • We've been focused on the Architecture (Processors & Embedded Digital Logic HW software/hardware interaction HW) embodied in embedded systems Transistors / Circuits Devices & Integrated Circuits (Semiconductors & Voltage / Currents Fabrication) http://www.cmu.edu/news/image-archive/Boss.jpg http://prisonerofclass-5933.zippykid.netdna-cdn.com/wp-content/uploads/2013/05/iphone.jpg http://firstcallappliance.com/wp-content/uploads/image/microwave.jpg http://www.amazon.com/Fisher-Price-T-M-X-Tickle-Me-Elmo/dp/B000ETRE0Q http://oeatech.net/wp-content/uploads/2011/03/RADARSAT2-satellite.jpg
23.9 23.10 Dive Into a SmartPhone What's Inside Your SmartPhone • What's inside an iPhone 6? • Here's a picture of what's inside the iPhone TM • Microcontrollers/microprocessors – Apple A8 APL1011 SoC + Elpida 1 GB LPDDR3 RAM • Both sides of the circuit board are – SoC = System on Chip…Not just a processor but a processor populated with chips 2-sided Circuit Board with custom hardware to do specialized tasks…on-board https://d3nevzfk7ii3be.cloudfront.net/igi/6MaZk5cEE2tm1uCj.huge Battery graphics processor in this case – NXP LPC18B1UK ARM Cortex-M3 Microcontrollers – Similar on-board I/O modules as the Arduino. Take a look… – https://www.nxp.com/docs/en/data-sheet/LPC178X_7X.pdf • Modem + Amplifiers + Transceivers for wireless communication – Qualcomm MDM9625M LTE Modem + many others http://www.techinsights.com/teardown.com/apple-iphone-6/ http://www.techinsights.com/teardown.com/apple-iphone-6/ 23.11 23.12 What's Inside? Computer Engineering & HW • Computer engineering prepares you to work • A gyroscope, accelerometer, and touchscreen in jobs that design these kinds of systems by: – InvenSense MP67B 6-axis gyroscope and accelerometer – Learn how to build networked embedded combo systems with IoT applications ( EE 250 ) – Learning how to create custom hardware – Broadcom BCM5976 Touchscreen Controller accelerators ( EE 354 Digital System Design – Both use some form of A-to-D conversion to sense and EE 454L SoC Design ) motion or touch – Learning how to optimize processors • Memory Storage (pipelining, out-of-order execution) and memory systems (caching and virtual – SK Hynix H2JTDG8UD1BMS 128 Gb (16 GB) NAND Flash memory) to execute software as efficiently as • Other specialized HW I/O modules possible ( EE 457 Computer Architecture ) – Murata 339S0228 Wi-Fi Module – Learning how to write parallel and programs and use modern distributed computation – Qualcomm PM8019 power management IC frameworks to process big data in the cloud – Cirrus Logic 338S1201 audio codec ( EE 451 Parallel and Distributed Die Photo of the Apple A8 Computation) SoC Processor http://www.techinsights.com/teardown.com/apple-iphone-6/ http://www.anandtech.com/show/8562/chipworks-a8
23.13 23.14 Amazon Echo • Let's try to put all of this into context with an example • Let's see what hardware is inside • Let's think about some of the software considerations Many of the terms you see may not be familiar but ADDITIONAL MATERIAL you will learn about many of them throughout this course. By the end of the semester you should have a good idea of what is going on inside! For now, focus on the categorization of processor, memory, and I/O and how they must talk to each other by doing reads/writes. 23.15 23.16 Amazon Echo Hardware [1/3] Amazon Echo Hardware [2/3] • Main Processing board • Daughterboard with much of the audio I/O devices – [Red] Texas Instruments DM3725CUS100 Digital Media Processor – [Red] Texas Instruments LP55231 Programmable 9-Output LED Driver (x4) – [Orange] Texas Instruments TLV320ADC3101 92dB SNR Low-Power Stereo ADC – [Orange] Samsung K4X2G323PD-8GD8 256 MB LPDDR1 RAM (x4) – [Yellow] SanDisk SDIN7DP2-4G 4 GB iNAND Ultra Flash Memory – [Yellow] Texas Instruments SN74LVC74A Dual Positive-Edge-Triggered D-Type – [Green] Qualcomm Atheros QCA6234X-AM2D Wi-Fi and Bluetooth Flip-Flops Module – [Green] S1053 0090 V6 Microphone (x7) – [Blue] Texas Instruments TPS65910A1 Integrated Power Management IC In your first few labs you will build systems to control LEDs, perform A-to- You will learn D conversions more about (ADC), and learn how the about "flip-flops" processor and memory are designed. https://www.ifixit.com/Teardown/Amazon+Echo+Teardown/33953 https://www.ifixit.com/Teardown/Amazon+Echo+Teardown/33953
23.17 23.18 Amazon Echo Hardware [3/3] Amazon Echo Software • Power and speaker I/O board • What kind of software do we need? – [Red] Texas Instruments TPS53312, likely an updated version of – Firmware: Software that won't often change and the TPS53311 3A Step-Down Regulator with Integrated Switcher is meant to control the hardware – [Orange] Texas Instruments TLV320DAC3203 Ultra Low Power Stereo Audio Codec • Low-level software to control the various hardware – [Yellow] Texas Instruments TPA3110D2 15W Filter-Free Class D Stereo devices (speakers, microphones, etc.) Amplifier • Operating system to run and coordinate all the higher Not everything is digital. To produce audible sound we need to worry about voltage/current level software apps requirements. • Audio processing software to perform voice recognition, etc. – Extensible framework for higher level, networked software that may perform new user-defined skills/apps https://www.ifixit.com/Teardown/Amazon+Echo+Teardown/33953 23.19 Amazon Echo Software • Some tasks may be "Alexa" handled by the hardware/software in the Echo – Recognition of "Alexa" voice command • Other requests may require more information or processing capability than is locally present so it is sent over the Internet to be processed in the cloud https://developer.amazon.com/alexa-skills-kit
Recommend
More recommend