System on Chip (SOC).

Slides:



Advertisements
Similar presentations
Philips Research ICS 252 class, February 3, The Trimedia CPU64 VLIW Media Processor Kees Vissers Philips Research Visiting Industrial Fellow
Advertisements

DSPs Vs General Purpose Microprocessors
Computer Abstractions and Technology
1 SECURE-PARTIAL RECONFIGURATION OF FPGAs MSc.Fisnik KRAJA Computer Engineering Department, Faculty Of Information Technology, Polytechnic University of.
A reconfigurable system featuring dynamically extensible embedded microprocessor, FPGA, and customizable I/O Borgatti, M. Lertora, F. Foret, B. Cali, L.
Khaled A. Al-Utaibi  Computers are Every Where  What is Computer Engineering?  Design Levels  Computer Engineering Fields  What.
High Performance Embedded Computing © 2007 Elsevier Lecture 15: Embedded Multiprocessor Architectures Embedded Computing Systems Mikko Lipasti, adapted.
Graduate Computer Architecture I Lecture 15: Intro to Reconfigurable Devices.
The ARM7TDMI Hardware Architecture
TigerSHARC and Blackfin Different Applications. Introduction Quick overview of TigerSHARC Quick overview of Blackfin low power processor Case Study: Blackfin.
Extensible Processors. 2 ASIP Gain performance by:  Specialized hardware for the whole application (ASIC). −  Almost no flexibility. −High cost.  Use.
Some Thoughts on Technology and Strategies for Petaflops.
Define Embedded Systems Small (?) Application Specific Computer Systems.
Configurable System-on-Chip: Xilinx EDK
Introduction to ARM Architecture, Programmer’s Model and Assembler Embedded Systems Programming.
1 Fast Communication for Multi – Core SOPC Technion – Israel Institute of Technology Department of Electrical Engineering High Speed Digital Systems Lab.
6/30/2015HY220: Ιάκωβος Μαυροειδής1 Moore’s Law Gordon Moore (co-founder of Intel) predicted in 1965 that the transistor density of semiconductor chips.
UCB November 8, 2001 Krishna V Palem Proceler Inc. Customization Using Variable Instruction Sets Krishna V Palem CTO Proceler Inc.
Implementation of DSP Algorithm on SoC. Mid-Semester Presentation Student : Einat Tevel Supervisor : Isaschar Walter Accompaning engineer : Emilia Burlak.
Computer Organization and Assembly language
Leveraging Existing Application Processors in Mobile Devices to Implement VoIP Client.
Engineering 1040: Mechanisms & Electric Circuits Fall 2011 Introduction to Embedded Systems.
EE587 SoC Design & Test School of EECS Washington State University
1 A survey on Reconfigurable Computing for Signal Processing Applications Anne Pratoomtong Spring2002.
Getting Started With DSP A. What is DSP? B. Which TI DSP do I use? Highest performance C6000 Most power efficient C5000 Control optimized C2000 TMS320C6000™
Hardware Overview Net+ARM – Well Suited for Embedded Ethernet
Mobile Handset Hardware Architecture
Computer performance.
The 6713 DSP Starter Kit (DSK) is a low-cost platform which lets customers evaluate and develop applications for the Texas Instruments C67X DSP family.
Xilinx at Work in Hot New Technologies ® Spartan-II 64- and 32-bit PCI Solutions Below ASSP Prices January
L29:Lower Power Embedded Architecture Design 성균관대학교 조 준 동 교수,
2006 Chapter-1 L2: "Embedded Systems - Architecture, Programming and Design", Raj Kamal, Publs.: McGraw-Hill, Inc. 1 Introduction to Embedded Systems –
1 Copyright © 2011, Elsevier Inc. All rights Reserved. Appendix E Authors: John Hennessy & David Patterson.
Ross Brennan On the Introduction of Reconfigurable Hardware into Computer Architecture Education Ross Brennan
ECE 720T5 Fall 2012 Cyber-Physical Systems Rodolfo Pellizzoni.
ASIC 120: Digital Systems and Standard-Cell ASIC Design Tutorial 4: Digital Systems Concepts November 16, 2005.
1 3-General Purpose Processors: Altera Nios II 2 Altera Nios II processor A 32-bit soft core processor from Altera Comes in three cores: Fast, Standard,
THE PHILIPS NEXPERIA DIGITAL VIDEO PLATFORM. The Digital Video Revolution  Transition from Analog to Digital Video  Navigate, store, retrieve and share.
SYSTEM-ON-CHIP (SoC) AND USE OF VLSI CIRCUIT DESIGN TECHNOLOGY.
Paper Review: XiSystem - A Reconfigurable Processor and System
3G Single Core Modem A New Telecommunications Device Group 4: Warren Irwin, Austin Beam, Amanda Medlin, Rob Westerman, Brittany Deardian.
Computers organization & Assembly Language Chapter 0 INTRODUCTION TO COMPUTING Basic Concepts.
Research on Reconfigurable Computing Using Impulse C Carmen Li Shen Mentor: Dr. Russell Duren February 1, 2008.
집적회로 Spring 2007 Prof. Sang Sik AHN Signal Processing LAB.
J. Christiansen, CERN - EP/MIC
1 System-on-Chip (SoC) Testing An Introduction and Overview of IEEE 1500 Standard Testability Method for Embedded Core-based ICs.
VLSI DESIGN CONFERENCE 1998 TUTORIAL Embedded System Design and Validation: Building Systems from IC cores to Chips Rajesh Gupta University of California,
Introduction to FPGA Created & Presented By Ali Masoudi For Advanced Digital Communication Lab (ADC-Lab) At Isfahan University Of technology (IUT) Department.
Embedded Systems Design: A Unified Hardware/Software Introduction 1 Chapter 3 General-Purpose Processors: Software.
Development of Programmable Architecture for Base-Band Processing S. Leung, A. Postula, Univ. of Queensland, Australia A. Hemani, Royal Institute of Tech.,
Tools - LogiBLOX - Chapter 5 slide 1 FPGA Tools Course The LogiBLOX GUI and the Core Generator LogiBLOX L BX.
VLSI Algorithmic Design Automation Lab. THE TI OMAP PLATFORM APPROACH TO SOC.
PC Internal Components Lesson 4.  Intel is perhaps the most recognizable microprocessor manufacturer. List some others.
Survey of multicore architectures Marko Bertogna Scuola Superiore S.Anna, ReTiS Lab, Pisa, Italy.
Survey of Reconfigurable Logic Technologies
FPGA Technology Overview Carl Lebsack * Some slides are from the “Programmable Logic” lecture slides by Dr. Morris Chang.
System on a Programmable Chip (System on a Reprogrammable Chip)
Heterogeneous Processing KYLE ADAMSKI. Overview What is heterogeneous processing? Why it is necessary Issues with heterogeneity CPU’s vs. GPU’s Heterogeneous.
CA Final Project – Multithreaded Processor with IPC Interface
ECE354 Embedded Systems Introduction C Andras Moritz.
Microarchitecture.
Introduction to Programmable Logic
System On Chip.
System On Chip - SoC E.Anjali.
INTRODUCTION TO MICROPROCESSORS
Chapter 1: Introduction
Overview of Embedded SoC Systems
Anne Pratoomtong ECE734, Spring2002
Dynamically Reconfigurable Architectures: An Overview
Computer Evolution and Performance
Presentation transcript:

System on Chip (SOC)

SOC SOC consists of at least two or more complex micro-electronic macro components previously integrated into different single dies Complex functionalities that previously required heterogeneous components to be connected on a PCB, are integrated within one single silicon chip

SOC:Evolution Technologies implementing embedded systems evolved from micro-controllers and discrete components to fully integrated SOC Reason: advances in Silicon process technology enabling a complete system to be designed into one or few integrated devices Space and Power reductions Increased Performance

Features of SOC Typically SOC incorporates A programmable processor On chip memory Accelerated Functional Units (e.g. Digital Encryption Standard block, MPEG2 decoder) Peripheral devices Often mixed technology designs integrating Analog, RF Components Micro-electro-Mechanical Systems (MEMS) Optical input/output

SOC Design Hardware and Software component model! Time and design effort required to integrate different types of components on a chip : a bottleneck for SOC evolution Design reuse to reduce time to market Use of parts from previous designs Making use of parts designed by third parties Hardware and Software component model! All for PROVEN and tested solutions, avoiding re-design and re-verification of real-time hardware and real-time software

IP based Design Intellectual Property Cores Parameterized components with standard interfaces facilitating high level synthesis Cores available in three forms Hard Black box in optimized layout form and encrypted simulation model. Example: microprocessors Firm Synthesized netlist which can be simulated and changed if needed Soft Register transfer level HDLs; user is responsible for synthesis and layout

Platforms Embedded Applications built using Common architectures common architectural blocks and customized application specific components Common architectures Processor, memory, peripherals, bus structures Common architectures and supporting technologies (IP libraries and tools) are called Platforms and platform based designs

Platform based SOC Platform based SOC’s are systems that contain IP blocks like embedded CPU, embedded memory, Real world interfaces (e.g., PCI, USB), Mixed signal blocks and Software components device drivers, real-time operating systems and application code

Classes of Platforms Full Application Platform Platforms that let derivative product designers create complete applications on top of hardware-software architectures A set of hardware modules Example: complex dual processor architecture with hierarchical bus system tailored to a specific product’s requirements A layer of firmware and driver software Examples: Philip’s Nexperia, TI’s OMAP

Classes of Platforms(2) Processor Centric Platforms Typically centered on specific processors Key software services like real-time OS kernel made available through libraries Examples: ARM Micropack, ST Microelectronics ST100 Communication Centric Platform Communication fabric optimized for specific application Fabrics often bundled with specific processors Examples: ARM AMBA, IBM CoreConnect bus architecture

Classes of Platforms(3) Configurable(Programmable) platform Programmable logic added to the platform allows consumers to customize using both hardware and software Field programmable gate array(FPGA) added to hard-coded processor centric platforms Example: Altera Excalibur platform with ARM cores, Xilinx VertexII Pro

Multi-processor SOC (MPSoC) Full application platform Multiple processors. CPUs, DSPs, etc. Hardwired blocks. Mixed-signal. Custom memory system. Lots of software.

Philips Nexperia Multimedia applications: set-top box, etc. Trimedia Multimedia applications: set-top box, etc. 2 CPUs, 3 busses, several accelerators, I/O devices. MIPS to SDRAM bridge bridge I/O I/O accelerators bridge Acknowledgement: Wayne Wolf

TI OMAP Targets communications, multimedia. Multiprocessor with DSP, RISC. C55x DSP MPU interface bridge MMU I/O System DMA control Memory ctrl ARM9 Acknowledgement: Wayne Wolf

ST Nomadik Targets mobile multimedia. A multiprocessor-of-multiprocessors. ARM9 Memory system I/O bridges Audio accelerator Video accelerator heterogeneous multiprocessors Acknowledgement: Wayne Wolf

Open Multimedia Applications Platform OMAP Open Multimedia Applications Platform

OMAP OMAP Application processor has a dual-core architecture: ARM 9 + TMS320C55 OMAP design chain includes Software IP: OMAP supports several RTOS’s to suit different applications Application and Middleware: Ported applications and middleware like MPEG-4 decoding and audio playback

Design Chain for OMAP From: A Design Chain for Embedded System, G. Martin & F. Schirrmeister, IEEE Computer, March 2002

OMAP Hardware Architecture From: Dedicated Systems Magazine 2001 Q2 Jamil Chaoi

OMAP Hardware Architecture ARM RISC core is well suited for control code (OS, User Interface, OS applications) DSP best suited for signal processing applications like video, speech processing, audio Power efficient because signal processing task on DSP consumes much less power than on ARM

Example Application Video-conferencing C55x DSP can process in real time full video conferencing application (audio and video at 15 images/sec) using only 40 p.c of the available computational capability Can manage other applications concurrently ARM processor can handle OS operations and other OS applications (may be Word, Excel, etc.) Less power consumption on the whole

How the Architecture Works? Both processors utilize an instruction cache to minimize external accesses Both core uses MMU for virtual to physical memory translation and task-to-task memory protection Uses two external memory interfaces and one internal memory port External interfaces support to synchronous (DRAMS) or asynchronous memory (SRAM, FLASH) Configured as 16 or 32 bit wide Internal memory port for on-chip memory access for critical OS routines or LCD frame buffer Allow concurrent access from either processor or DMA unit

Peripherals Includes numerous interfaces to connect peripherals or external devices from either the DSP or GPP Some interfaces Camera and Display interfaces Serial unidirectional compact camera port, 8-bit parallel interface, 8 bit/16 bit bi-directional display interface, OMAP internal LCD controller Several Serial interfaces SPI, McBSP, I2C, USB, UART

Software Architecture Defines an interface scheme that allows GPP to be the system master Called the DSP/BIOS Bridge DSP/BIOS Bridge provides communications between GPP tasks and DSP tasks High level application developers use a set of DLL’s and drivers

OMAP2 Includes multiple engines executing multiple tasks An ARM 11 based microprocessor runs the OS and performs supervisory control DSP core focusses on audio codecs, echo cancellation and noise suppression 3D graphics engine enables sophisticated graphics rendering Video/imaging accelerator handles streaming MPEG4 video and mega pixel-resolution camera Digital baseband processor implements network communications as a cellular modem handling voice and data

OMAP 2 Architecture From: www.TI.com

OMAP2 All blocks operate simultaneously No degradation in quality of any service Devices remain highly responsive To conserve power each of these subsystems can be shut down when not used SOC suited for implementation of Smart Phone

Digital Media Processor Functionalities expected in a portable media system Live preview : Capture, process, display Live video capture: Compresses Live image capture: Compresses Live audio capture: Compresses Video decode/playback Still image decode/display Audio decode/playback Photo printing Several of these modes operate concurrently

DM 310 Media Processor Four subsystems: imaging/video, DSP, coprocessor, ARM core Imaging/Video system: CCD controller, preview engine, onscreen display, video encoder DSP: TMS32054X operating at 72 Mhz (max.) performs bulk of audio/image/video processing operations Co-processors: SIMD engine(8 or 16 bit), Quantization, Variable length coder working concurrently ARM Core: manages system level tasks, controls all components on chip except DSP and its co-processors

DM 310 Architecture From: Anatomy of digital media processor, IEEE Micro, March-April 2004

Application: Still Camera Engine From: Anatomy of digital media processor, IEEE Micro, March-April 2004

Reconfigurable Platforms

Configurable SOC Consisting of Processor Memory On-chip reconfigurable hardware parts for customization to application Fine-grained and coarse-grained reconfigurability FPGA vs network of processors Towards application specific programmable products

Reconfigurable Computing (RC) What is it? Compute by building a circuit rather than executing instructions. Efficient for long running computations Video and image processing DSP Network processing Z[i] = a.X[i] + b.Y[i] //program Load rx, X Mpy r1, rx, ra Load ry, Y Mpy r2, ry, rb Add r3, r1, r2 Store r3, Z + X * a Y * b Z

Advantages of RC Program Bit width and constants Delay No instruction fetch, no I-cache etc. Bit width and constants Assume X & Y are 8 bits Assume a = 0.25 and b =0.5 Much smaller circuit! + X *a Y *b Z 8 6 7 /4 /2 Delay From two shift operations and one addition, all on 32-bits To one 8-bit addition (shifts are free in hardware)

FPGA-based RC Programmable fabric that can be dynamically reconfigured Mapping to FPGA Only the time consuming computations are mapped Computation expressed in HDL Structure FPGA + Memory

Programmable Platforms Several products incorporate microprocessor and FPGA on one chip Configurable logic Micro-controller and other processing elements Memory

Triscent A7 SOC CSL: performs basic combinational and sequential logic functions Source: CSOC, Jurgen Becker, Proc. SBCCI’02

Xilinx Virtex II Pro PowerPC based 1 to 4 PowerPCs 4 to 16 gigabit transceivers 12 to 216 multipliers 3,000 to 50,000 logic cells 200k to 4M bits RAM 204 to 852 I/O Up to 16 serial transceivers 622 Mbps to 3.125 Gbps PowerPCs Config. logic Courtesy of Xilinx

Coarse grained RC: Multiple ALUs connected Operand routing with a hierarchical connection network Registers are distributed Configure once and then run no I-cache Potentially an instruction level parallelism of 100 and more No branch instruction

XPP :eXtreme Processing Platform Adaptive reconfigurable data processing architecture Processing array elements organised as processing arrays Source: CSOC, Jurgen Becker, Proc. SBCCI’02

Configurable processors Configurability: Processor parameters (cache size, registers, etc.) Instructions. Result: HDL model for processor. Software development environment.

Application-specific instruction processors An ASIP is a stored-memory CPU whose architecture is tailored for a particular set of applications. Programmability allows changes to implementation, use in several different products, high data-path utilization. Application-specific architecture provides smaller silicon area, higher speed.

Retargetable compilation for (i=0; i<N; i++) c[i] = func1(a[i],b[i]); application code from ASIP core synthesis front end code generation instruction set definition microarchitectural model object code Acknowledgement: Wayne Wolf

Summary We have learnt about SOC Looked at OMAP in some detail Got an introduction to the concept of Reconfigurable computing