Software Driven Embedded Systems Design. A Use Case Analysis: Avoiding a hardware dependent software disaster using Virtual System Prototyping

Similar documents
1. PUBLISHABLE SUMMARY

Agenda. Michele Taliercio, Il circuito Integrato, Novembre 2001

Extending the Power of FPGAs. Salil Raje, Xilinx

4. H.323 Components. VOIP, Version 1.6e T.O.P. BusinessInteractive GmbH Page 1 of 19

Chapter 1 Computer System Overview

Rapid System Prototyping with FPGAs

7a. System-on-chip design and prototyping platforms

Development of Embedded Board for OMAP4460

Quectel Wireless Solutions Wireless Module Expert U10 UMTS Module Presentation

Delivering Network Performance and Capacity. The most important thing we build is trust

Highly Available Mobile Services Infrastructure Using Oracle Berkeley DB

Network connectivity controllers

UTILIZATION OF VIRTUAL MACHINES IN LABORATORY STANDS ON EXAMPLE OF SIP EXPRESS ROUTER APPLICATION

AP200 VoIP Gateway Series Design Features & Concept AddPac R&D Center

LTE Release 10 Small Cell Physical Layer Evolution Issues and Challenges Facing Small Cell Product Developers in Multi- Core Environments

Architectures and Platforms

ARM Webinar series. ARM Based SoC. Abey Thomas

The MOST Affordable HD Video Conferencing. Conferencing for Enterprises, Conferencing for SMBs

A new radio system for the German coast

Digitale Signalverarbeitung mit FPGA (DSF) Soft Core Prozessor NIOS II Stand Mai Jens Onno Krah

PikeOS: Multi-Core RTOS for IMA. Dr. Sergey Tverdyshev SYSGO AG , Moscow

Dialogic PowerMedia Web Media Server

Role and Evolution of Radio Network Controllers

Nokia Networks. Voice over LTE (VoLTE) Optimization

Huawei Agile Network FAQ What is an agile network? What is the relationship between an agile network and SDN?... 2

System Design Issues in Embedded Processing

MAJORS: Computer Engineering, Computer Science, Electrical Engineering

Networked Embedded Systems: Design Challenges

Embedded Development Tools

The MOST Affordable Video Conferencing. Conferencing for Enterprises, Conferencing for SMBs

PA168X SIP Phone Http Setup Guide

The MOST Affordable HD Video Conferencing. Conferencing for Enterprises, Conferencing for SMBs

WiLink 8 Solutions. Coexistence Solution Highlights. Oct 2013

Dialogic PowerMedia Extended Media Server

Dialogic PowerMedia Extended Media Server

An Embedded Based Web Server Using ARM 9 with SMS Alert System

Question: 3 When using Application Intelligence, Server Time may be defined as.

General Pipeline System Setup Information

Using On-chip Networks to Minimize Software Development Costs

A Scalable VISC Processor Platform for Modern Client and Cloud Workloads

Performance Evaluation of VoIP Services using Different CODECs over a UMTS Network

Demonstration of Internet Protocol Television(IPTV) Khai T. Vuong, Dept. of Engineering, Oslo University College.

Welcome to Completely Distributed P25 VoIP Dispatch Console Technology

White Paper ON Dual Mode Phone (GSM & Wi-Fi)

Video Conference System

Cisco Prime Cable Provisioning 5.0

Application Testing

WiFi SOHO IPT Solution

EAGLE EYE IP TAP. 1. Introduction

Model-based system-on-chip design on Altera and Xilinx platforms

The Orca Chip... Heart of IBM s RISC System/6000 Value Servers

inaccess Networks Microelectronics in Telecom Applications

Enterprise Edge Communications Manager. Data Capabilities

Service Continuity Path to smooth user experiences

Computer System Design. System-on-Chip

FPGAs in Next Generation Wireless Networks

Mobile Wireless Overview

Get the best performance from your LTE Network with MOBIPASS

Bluetooth VoIP Gateway for Secure Region Smart Phone

ADVANTAGES OF AV OVER IP. EMCORE Corporation

Motivation: Smartphone Market

BDTI Solution Certification TM : Benchmarking H.264 Video Decoder Hardware/Software Solutions

Next Generation Operating Systems

How To Get A Cell Phone With A Video Camera And A Speaker Phone (For A Premium) For A Small Price (For An Extra $100) (For The Premium) ( For A Long Time) (With A Long Distance) (To

TESTING EXPERIENCE OF A1 - TELEKOM AUSTRIA

Modeling a GPS Receiver Using SystemC

High Performance or Cycle Accuracy?

Evolving Telecommunications to Triple Play:

LTE, WLAN, BLUETOOTHB

Video Conferencing Unit. by Murat Tasan

A Novel Distributed Wireless VoIP Server Based on SIP

Embedded Software development Process and Tools:

LAN M2M Device. AddPac Technology. 2014, Sales and Marketing.

9/14/ :38

The Emerging Market for Collaborative Applications

Application Note. Onsight TeamLink And Firewall Detect v6.3

ULE: The Concentrator Addressing the technology solution

Embedded Linux Platform Developer

Practical Steps Toward Fixed Mobile Convergence for IP Communications

HSDPA Mobile Broadband Data A Smarter Approach to UMTS Downlink Data

Conference Bridge setup

ADVANCED PROCESSOR ARCHITECTURES AND MEMORY ORGANISATION Lesson-12: ARM

Advanced SIP Series: SIP and 3GPP Operations

ZigBee Technology Overview

Use of MPLS in Mobile Backhaul Networks

A Design of Video Acquisition and Transmission Based on ARM. Ziqiang Hao a, Hongzuo Li b

Codesign: The World Of Practice

A Scalable Large Format Display Based on Zero Client Processor

AP700 TM 4-Port FXS VoIP Gateway High Performance VoIP Gateway Solution

OMAP platform security features

VoIP Conformance Labs

Virtual Platforms Addressing challenges in telecom product development

NIVEO Network Attached Storage Series NNAS-D5 NNAS-R4. More information:

Memory Usage of a Software Communication Architecture Waveform

Copyright and Trademark Statement

Device Provisioning in Cable Environments

Implementing Cisco Voice Communications and QoS

SATIN MULTICAST/BROADCAST ORIENTED ARCHITECTURE AND S/T-UMTS TERMINAL AND NETWORK LEVEL INTEGRATION

TEPZZ_98 47ZB_T EP B1 (19) (11) EP B1 (12) EUROPEAN PATENT SPECIFICATION

COMPLEX SYSTEMS ONE SOLUTION

Transcription:

Software Driven Embedded Systems Design A Use Case Analysis: Avoiding a hardware dependent software disaster using Virtual System Prototyping

Overview Traditional System Development: A use case Traditional design methodology leads to system architecture problems being discovered late in the development cycle Leads to high re-work and long delays HdS is a single system distributed over multiple heterogeneous processors interacting through a HW platform HW/SW system testing required to validate System Development Using Virtual System Prototypes Design Implement Test Integrate Re-design Before the HW is manufactured Significantly reduces risk and delay Requirements of a virtual system prototype Accuracy Speed 2

3GPP Femtocell design: A Case Study Challenge: Design of a highly integrated UMTS 3GPP Release 6 femtocell base station Low cost heterogeneous processor core design Features: High Speed Packet Downlink and Uplink (HSDPA/HSUPA) Radio Access Network (RAN) in a box collapsed stack architecture; Session Initiation Protocol (SIP) enabled; IP Multimedia Subsystem (IMS) enabled; Media stream trans-coding; Internet ADSL 2+ Ethernet SIP Gateway 3

Candidate Architecture 10/100 Ethernet SDRAM Interface I/D TCM ARM 926e I/D Memory TI c64x DSP Bus Interconnect RF Analog DBB 24 element DSP Processor Array Stream Buffer HW accelerator blocks 4

Candidate Architecture Time Critical Software I/D TCM (UMTS PHY + framing): 10/100 Sample rate processing Ethernet Chip rate processing ARM 1136 Symbol rate processing Interface to HW I/D accelerator Cache blocks SDRAM Management and scheduling Interface MODEM control and configuration interface High performance MAC-hs and MAC-b, etc. Bus I/D Memory TI c64x DSP RF Analog DBB 24 element DSP Processor Array Stream Buffer HW accelerator blocks 5

Candidate Architecture 10/100 Ethernet SDRAM Interface I/D TCM ARM 926e I/D Memory TI c64x DSP RF Bus Real Time Software: Video and Audio trans-coding Analog Stream encryption/decryption 24 element DBB DSP Processor Array Stream Buffer HW accelerator blocks 6

Candidate Architecture 10/100 Ethernet SDRAM Interface I/D TCM ARM 926e I/D Memory TI c64x DSP (Semi) Elastic Software running on Linux BusOS: IPsec/IPv4/IPv6 stack Services: Telnet, HTTP, FTP SIP client and server Analog 24 element RF Network management services DBB DSP Processor Array System control and configuration (inc. setup) RAN signaling stack : SGSN/RRC/RLC/MAC Stream Buffer HW accelerator blocks 7

Software Driven Design Majority of functionality is implemented in software: Time critical data processing and control; Real time data processing; Elastic signaling and services. Hardware Dependent Software: Hardware architecture must be sufficiently dimensioned to enable software to satisfy system requirements; Software is distributed over several heterogeneous processors; All of the software components need to collectively meet the system requirements; 8

Traditional System Development Software Requirements Software Design Implementation Requirements Architecture + Algorithms Hardware Requirements Hardware Design Implementation Manufacture Mistakes made here, are found here 9 Integration Reference architectures Ad-hoc modeling and analysis Incumbent knowledge HW/SW partitioning + algorithms Basic simulated unit testing: Using ISS, HW stubs, etc. Unit testing System testing

Problem 1 found at integration stage Problem 1: User configuration over HTTP interface causes uplink packet loss 10/100 Ethernet SDRAM Interface RF I/D TCM ARM 926e Analog DBB Bus Interconnect 24 element DSP Processor Array I/D Memory TI c64x DSP Stream Buffer HW accelerator blocks Solutions: 1) Re-dimension bus interconnect (re-spin); 2) Increase ARM926e I-TCM (re-spin); 3) Increase stream buffer size (re-spin); 4) Reduce maximum uplink speed (cut specification) 5) Limit system configuration when operating at rated load (reduce features); Symptom: For full rate uplink channel configurations, successive cache misses on the ARM926e cause stream buffer overflow. Cause: Occurs when user configures system using HTTP interface and system is receiving at full uplink data rate. HTTP server not being in ARM926e I-cache causes bus contention. 10

Problem 1 post-mortem Elastic software components (i.e. user configuration application) have had an adverse effect on time critical software components (i.e. MODEM and packet processing); Indirect interaction between software running on ARM926e (elastic) and MODEM DSP array (time critical); Analysis in system architecture stage failed to consider worst case behavior for asynchronous events under full load Difficult to predict analytically because elastic (application) software footprint is not known at architecture design stage Elastic Software (applications) Hardware Time Critical Software 11

Problem 2 found at integration stage Problem 2: Cannot support full rate video trans-coding when all AMR voice channels are active 10/100 Ethernet SDRAM Interface RF I/D TCM ARM 926e Analog DBB Bus Interconnect 24 element DSP Processor Array HW accelerator blocks I/D Memory TI c64x DSP Stream Buffer Symptom: Full rate video transcoding drops too many frames (violates QoS constraint). Cause: DSP does not have capacity to support video transcode algorithm, reading and writing from external SDRAM, and full set of AMR voice CODECs simultaneously. Solutions: 1) Consider moving AMR voice CODECs to MODEM DSP array (software re-design: but MODEM array does not have sufficient capacity need a re-spin); 2) Add additional RAM block to DSP and use transfer to reduce cycles required to read and write to packet buffers located in external SDRAM (re-spin); 3) Reduce feature set; 12

Problem 2 post-mortem Fundamental architecture design mistake Was not found until algorithm was mapped to implementation; Assumption was made that voice CODECs could be implemented in MODEM DSP array (i.e. a Plan B): Assumption was found to be wrong too late; Needed to fall back on Plan B; BUT Plan B was never an option! System SW partitioning mistake cannot be fixed because HW design cannot adapt to changing SW partitioning Resulted in fundamental failure; Requires HW architecture re-design = massive delays. Real Time Software Hardware Time Critical Software 13

Problem 3 found at integration stage Problem 3: Mobile originated voice calls are dropped 10/100 Ethernet SDRAM Interface I/D TCM ARM 926e I/D Memory TI c64x DSP Symptom: Mobile originated calls are sporadically terminated. RF Analog DBB Bus Interconnect 24 element DSP Processor Array Stream Buffer Cause: Unknown, still trying to debug using JTAG interfaces and third party handsets. HW accelerator blocks Solutions: 1) No real solution, multiple debug iterations and tracing cycles as breakpoint are single shot. 14

Lessons Learned A software driven embedded systems solution is: A single software system distributed across multiple heterogeneous cores and supporting peripherals. Elements of the solution: Interact with each other across processor cores in implicit and complex ways. The behavior of the combined solution is: Difficult to analyze by conducting experiments on each component in isolation. Minor changes in software partitioning can: Require major modifications to the hardware architecture. It is too late to identify architectural mistakes at the integration stage! Software engineers rely on a debugging environment that gives them complete control of the SW execution: BUT the only way to give SW engineers a debugging environment where SW remains in lock step with HW is a using a HW-SW virtual platform. 15

Virtual Prototype Driven System Development Reference architectures Ad-hoc modeling and analysis Incumbent knowledge HW/SW partitioning + algorithms Software Requirements System testing Software Design Implementation Implement system validate re-design Requirements Architecture + Algorithms Virtual Prototype Development, Evolution & System Integration Implement system validate re-design Hardware Requirements Hardware Design Implementation Manufacture Mistakes made here, are already fixed before here 16

Virtual Prototype Requirements Elastic (application) software: Timing behavior of microarchitecture (e.g. Cache, MMU) is more important than static instruction timing cycle accuracy Real time software: High level of instruction cycle timing accuracy + microarchitecture behavior required All SW components interact via the HW platform. 10/100 Ethernet SDRAM Interface RF I/D TCM ARM 926e Analog DBB Bus Interconnect 24 element DSP Processor Array I/D Memory TI c64x DSP Stream Buffer Time critical software: Precise level of instruction cycle timing accuracy required HW accelerator blocks Accuracy requirements are different for each system component. However, the entire system model has accuracy requirements 17

Virtual Platforms A virtual platform is a lock step model of: More than one heterogeneous processor core; A set of peripheral HW models; The complete HW/SW system. Virtual platforms: Enable HdS to be system tested on the hardware platform before the hardware is available; Models the critical behavior of the hardware platform; Facilitates identification of fundamental architectural problems; Provides an opportunity for architecture re-design and HW/SW repartitioning; Can be used for architecture exploration and optimization; Is a tool that can be used to debug hard to find problems with the final product. 18

Conclusions Software Driven Embedded Systems require new tools to successfully integrate the SW into the HW; Virtual platforms used to develop Software Driven Embedded Systems need to: Needs to be fast to run real software loads; Be able to model multiple heterogeneous processor cores in lock step ; Need to accurately model critical timing and behavior of the hardware architecture; Modern Software Driven Embedded Systems design using virtual platforms extends agile development techniques beyond SW development to the complete development of the HW/SW system: Design Implement Test Integrate Re-design 19