DSP/BIOS for C6000/C5000. What is DSP/BIOS Real-time Environment –Thread execution model Threads, Mailboxes, Semaphores –Device independent I/O Logging,

Slides:



Advertisements
Similar presentations
CSC 360- Instructor: K. Wu Overview of Operating Systems.
Advertisements

Yaron Doweck Yael Einziger Supervisor: Mike Sumszyk Spring 2011 Semester Project.
Chapter 4 DSP/BIOS. DSP/BIOS Part 1 - Introduction.
Chapter 7 Protocol Software On A Conventional Processor.
Chapter 13 Embedded Systems
Chapter 13 Embedded Systems Patricia Roy Manatee Community College, Venice, FL ©2008, Prentice Hall Operating Systems: Internals and Design Principles,
ECE 526 – Network Processing Systems Design Software-based Protocol Processing Chapter 7: D. E. Comer.
1 Concurrency: Mutual Exclusion and Synchronization Chapter 5.
04/18/2007CSCI 315 Operating Systems Design1 Mass Storage Structure Notice: The slides for this lecture have been largely based on those accompanying the.
I/O Hardware n Incredible variety of I/O devices n Common concepts: – Port – connection point to the computer – Bus (daisy chain or shared direct access)
Midterm Tuesday October 23 Covers Chapters 3 through 6 - Buses, Clocks, Timing, Edge Triggering, Level Triggering - Cache Memory Systems - Internal Memory.
Figure 1.1 Interaction between applications and the operating system.
1 Introduction Chapter What is an operating system 1.2 History of operating systems 1.3 The operating system zoo 1.4 Computer hardware review 1.5.
Chapter 7 Input/Output. Input/Output Problems Wide variety of peripherals —Delivering different amounts of data —At different speeds —In different formats.
CHAPTER 9: Input / Output
1 I/O Management in Representative Operating Systems.
1 What is an operating system? CSC330Patricia Van Hise.
Software Development and Software Loading in Embedded Systems.
Detailed Technical Feature Presentation Background Information The Importance of Software Software Roadblocks Development Environment DSP Development Cycle.
BY: SACHIN SHRIVASTAVA Operating System By : Sachin Shrivastava 1.
Real-Time Operating Systems Suzanne Rivoire November 20, 2002
INPUT/OUTPUT ARCHITECTURE By Truc Truong. Input Devices Keyboard Keyboard Mouse Mouse Scanner Scanner CD-Rom CD-Rom Game Controller Game Controller.
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.
Input/Output. Input/Output Problems Wide variety of peripherals —Delivering different amounts of data —At different speeds —In different formats All slower.
Real-Time DSP System Design Course and DSP/BIOS II David J. Waldo Associate Professor Oklahoma Christian University 2501 E. Memorial Rd. Oklahoma City,
UNIX System Administration OS Kernal Copyright 2002, Dr. Ken Hoganson All rights reserved. OS Kernel Concept Kernel or MicroKernel Concept: An OS architecture-design.
Revised: Aug 1, ECE 263 Embedded System Design Lesson 1 68HC12 Overview.
CHAPTER 9: Input / Output
Input/ Output By Mohit Sehgal. What is Input/Output of a Computer? Connection with Machine Every machine has I/O (Like a function) In computing, input/output,
Windows Operating System Internals - by David A. Solomon and Mark E. Russinovich with Andreas Polze Unit OS6: Device Management 6.1. Principles of I/O.
Computers Operating System Essentials. Operating Systems PROGRAM HARDWARE OPERATING SYSTEM.
Chapter 13: I/O Systems. 13.2/34 Chapter 13: I/O Systems I/O Hardware Application I/O Interface Kernel I/O Subsystem Transforming I/O Requests to Hardware.
C o n f i d e n t i a l 1 Course: BCA Semester: III Subject Code : BC 0042 Subject Name: Operating Systems Unit number : 1 Unit Title: Overview of Operating.
Lecture 04 DSP/BIOS. Chapter 4 DSP/BIOS Part 1 - Introduction.
Code Composer Studio & DSP/BIOS
Chapter 2 Processes and Threads Introduction 2.2 Processes A Process is the execution of a Program More specifically… – A process is a program.
32-Bit-Digital Signal Controller Texas Instruments Incorporated
The Structure of the “THE”- Multiprogramming System Edsger W. Dijkstra Presented by: Jin Li.
CS 342 – Operating Systems Spring 2003 © Ibrahim Korpeoglu Bilkent University1 Input/Output – 2 I/O Software CS 342 – Operating Systems Ibrahim Korpeoglu.
IT3002 Computer Architecture
ChibiOS/RT Demo A free embedded RTOS
Input Output Techniques Programmed Interrupt driven Direct Memory Access (DMA)
System Software Design Engineer: Mac Gainor Western Washington University.
Introduction Contain two or more CPU share common memory and peripherals. Provide greater system throughput. Multiple processor executing simultaneous.
Lecture 04 DSP/BIOS. Chapter 4 DSP/BIOS Part 1 - Introduction.
UDI Technology Benefits Slide 1 Uniform Driver Interface UDI Technology Benefits.
DSP/BIOS Real Time Operating system using DSP /ARM processor.
OPERATING SYSTEM BASICS. What is an operating system and what does it do? The operating system has two basic functions: –communicates with the PC.
Unit - I Real Time Operating System. Content : Operating System Concepts Real-Time Tasks Real-Time Systems Types of Real-Time Tasks Real-Time Operating.
Embedded Real-Time Systems Processing interrupts Lecturer Department University.
Some of the utilities associated with the development of programs. These program development tools allow users to write and construct programs that the.
Advanced Operating Systems CS6025 Spring 2016 Processes and Threads (Chapter 2)
Chapter 4 DSP/BIOS. DSP/BIOS Part 1 - Introduction.
Input/Output (I/O) Important OS function – control I/O
Chapter 13: I/O Systems.
REAL-TIME OPERATING SYSTEMS
Module 12: I/O Systems I/O hardware Application I/O Interface
OPERATING SYSTEMS CS3502 Fall 2017
I/O system.
Chapter 4 DSP/BIOS.
Chapter 1: Intro (excerpt)
Threads, SMP, and Microkernels
CGS 3763 Operating Systems Concepts Spring 2013
Operating System Concepts
CS703 - Advanced Operating Systems
LINUX System : Lecture 7 Lecture notes acknowledgement : The design of UNIX Operating System.
Chapter 13: I/O Systems I/O Hardware Application I/O Interface
Jazan University, Jazan KSA
Mr. M. D. Jamadar Assistant Professor
Module 12: I/O Systems I/O hardwared Application I/O Interface
Presentation transcript:

DSP/BIOS for C6000/C5000

What is DSP/BIOS Real-time Environment –Thread execution model Threads, Mailboxes, Semaphores –Device independent I/O Logging, Streaming I/O RTDX (Real-time data exchange) Real-time Analysis –Debug facility ( with CCS) Device Configuration and Management –GUI based configuration in CCS

DSP/BIOS Modules Kernel ModuleDescription Hardware InterruptsInterface from hardware interrupts to DSP/BIOS kernel Software InterruptsLightweight pre-emptible threads that use program stack TasksIndependent threads of execution that can yield the processor Periodic FunctionsTime-triggered lightweight threads MailboxesSynchronized data exchange between tasks LockNestable binary semaphores SemaphoresCounting semaphores QueuesAtomic link lists ClockInterface to hardware timers StreamsStreaming I/O for tasks PipesStreaming I/O for software interrupts Memory ManagerLow overhead dynamic memory allocation

DSP/BIOS Configuration

DSP/BIOS Real-time Kernel

DSP/BIOS Task Synchronization

DSP/BIOS Real-time Analysis

DSP/BIOS Real-time Analysis Features Low overhead (formatting done in IDE) Real-time Analysis Operations C5000 CPU Cycles Time (usec) for 100 MHz 5410 C6000 CPU Cycles Time (usec) for 200 MHz 6201 Log operations LOG_event LOG_printf Statistics operations STS_set STS_add STS_delta

DSP/BIOS Execution Graph

DSP/BIOS Statistics View

DSP/BIOS Input/Output Capability

DSP/BIOS I/O Example AudioFilter( inputPipe, outputPipe ) { PIP_get(inputPipe); /* dequeue full frame */ PIP_alloc(outputPipe); /* dequeue empty frame */ copy algorithm; /* read/write data frames */ PIP_free(inputPipe); /* recycle input frame */ PIP_put(outputPipe); /* enqueue output frame */ return; /* wait for next frame pair */ }

DSP/BIOS Audio I/O Example Void audio(PIP_Obj *in, PIP_Obj *out) { Uns *src, *dst; Uns size; if(PIP_getReaderNumFrames(in) == 0 || PIP_getWriterNumFrames(out)==0){ error(); } /* get input data and allocate output buffer */ PIP_get(in); PIP_alloc(out); /* copy input data to output buffer */ src = PIP_getReaderAddr(in); dst = PIP_getWriterAddr(out); size = PIP_getReaderSize(in); PIP_setWriterSize(out,size); for (; size > 0; size++) { *dst++ = *src++; } /* output copied data and free input buffer */ PIP_put(out); PIP_free(in); }

CSL and Peripheral Configuration

Peripheral Configuration using IDE

System Configuration Allows detailed specification of target –Memory: Data and Code location Generates peripheral initialization code –Interrupts, Timers, McBSP, DMA etc. Generates linker configuration file (.cmd)

Conclusions Royalty-free real-time kernel for production use Allows for rapid development of product from concept Can be integrated with another real-time OS Small footprint (can be as small as 1K words) –Modules used are controlled by the user Allows for on-the-fly debug/analysis in the field Available with C6000 and C5000 processors