SlideShare a Scribd company logo
1 of 71
Chapter 4 DSP/BIOS
Chapter 4 DSP/BIOS Part 1 - Introduction
Learning Objectives ,[object Object],[object Object],[object Object]
DSP/BIOS ,[object Object],[object Object],[object Object],[object Object],[object Object]
DSP/BIOS Components ,[object Object],[object Object],[object Object]
DSP/BIOS Components ,[object Object],[object Object]
DSP/BIOS Components ,[object Object],[object Object]
Graphical Interface for Static System Setup ,[object Object],[object Object],[object Object],[object Object],[object Object],Note: API: Application Programming Interface
Graphical Interface for Static System Setup ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Graphical Interface for Static System Setup ,[object Object],[object Object],[object Object],[object Object]
Graphical Interface for Static System Setup ,[object Object],[object Object]
Graphical Interface for Static System Setup ,[object Object],[object Object],[object Object]
Graphical Interface for Static System Setup ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Graphical Interface for Static System Setup ,[object Object],[object Object],Programs generated by the user Programs/Files generated by the configuration manager
Chapter 4 DSP/BIOS Part 2 - Real Time Scheduling
Learning Objectives ,[object Object],[object Object],[object Object],[object Object]
Real-time scheduling ,[object Object],[object Object],main () { for (;;); } ISR1() { algorithm1(); } ISR2() { algorithm2(); }
Real-time scheduling ,[object Object],[object Object],There is no guarantee of meeting the real-time deadlines because: (1) The algorithms can run at different rates. (2) One algorithm can overshadow the other. (3) The timing can be non-deterministic. etc. main () { for (;;); } ISR1() { algorithm1(); } ISR2() { algorithm2(); }
Real-time scheduling ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Real-time scheduling ,[object Object],[object Object],[object Object],[object Object],[object Object],Algorithm 1 Algorithm 2 CPU processing Algorithm 1 CPU processing Algorithm 2 MISSED! ,[object Object]
Real-time scheduling ,[object Object],[object Object],[object Object],[object Object],algorithm2 (); function1(); function2(); function3(); Algorithm 1 Algorithm 2 function1 function2 function3
Real-time scheduling ,[object Object],[object Object],[object Object],[object Object]
Real-time scheduling ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Real-time scheduling: DSP/BIOS ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Real-time scheduling: Terminology ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
DSP/BIOS Thread Types HWI triggered by hardware interrupt. IDL runs as the background thread. What causes a SWI or TSK to run? Priority HWI Hardware Interrupts ,[object Object],[object Object],SWI Software Interrupts ,[object Object],[object Object],TSK Tasks ,[object Object],[object Object],IDL Background ,[object Object],[object Object]
Triggering SWI or TSK SWI cannot pend. SWI always returns from function. TSK only returns when no  longer needed, otherwise normally an infinite loop. SWI start end SWI_post “ run to completion” TSK SEM_pend start end block SEM_post
Considerations in Selecting Thread Types ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Thread Preemption Example HWI SWI 2 SWI 1 IDL main() TSK 2 TSK 1 Events over time interrupt pend sem2 return interrupt interrupt pend sem2 pend sem1 interrupt return return post swi1 return post swi2 return post sem2 return post swi2 return post sem1 post sem2 return pend sem2 pend sem1
Laboratory Exercise ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
(1) Setting Internal Timer 1 ,[object Object],[object Object],[object Object],The GUI interface will generate the “bios_labcfg.c”, see  inksbios_labcfg.pdf
(2) Setting the Hardware Interrupt ,[object Object],[object Object],( 3) Select HWI_INT15 and right click to select properties. Source = Timer_1 Function = _timerIsr
(2) Setting the Hardware Interrupt ,[object Object],void timerIsr (void) { /* Put your code here */ }
(3) Creating a Software Interrupt ,[object Object],and create a new software interrupt called “SWI_for_algorithm_1”.
(3) Creating a Software Interrupt ,[object Object]
(3) Creating a Software Interrupt ,[object Object],void algorithm_1 (void) { /* Put your code here */ }
(4) Creating a Task ,[object Object],and create a new task called “TaskOneTsk”.
(4) Creating a Task ,[object Object]
(4) Creating a Task ,[object Object],void ProcessTask (void) { /* Put your algorithm here */ }
(5) Creating a Semaphore ,[object Object],(2) Change the properties of the “taskOneSem” to:
Posting Software Interrupts and Tasks ,[object Object],[object Object],(2) Tasks The task can be removed from semaphore queue and put it on the ready queue: SWI_post (&SWI_for_algorithm_1); SEM_post (&taskOneSem);
More on Tasks…  ,[object Object],[object Object],[object Object],void ProcessTask (void) { while (1) { SEM_pend (&taskOneSem, SYS_FOREVER); /* Insert your code here */ } }
Putting it all together…  void main (void) { /* Put all your setup code here */ return; /*DSP BIOS starts after the return */ } /* Hardware Interrupt */ void timerIsr (void) { /* Put your code here */ SWI_post (&SWI_for_algorithm_1); SEM_post (&taskOneSem); } /*Software Interrupt */ void algorithm_1 (void) { /* Put your code here */ } /* Task */ void ProcessTask (void) { while (1) { SEM_pend (&taskOneSem, SYS_FOREVER); /* Insert your code here */ } }
Putting it all together…  void main (void) { /* Put all your setup code here */ return; /*DSP BIOS starts after the return */ } /* Hardware Interrupt */ void timerIsr (void) { /* Put your code here */ SWI_post (&SWI_for_algorithm_1); SEM_post (&taskOneSem); } /*Software Interrupt */ void algorithm_1 (void) { /* Put your code here */ } /* Task */ void ProcessTask (void) { while (1) { SEM_pend (&taskOneSem, SYS_FOREVER); /* Insert your code here */ } }
Putting it all together…  See example located in: … Chapter 04 - DSP BIOSios_Lab2ios_lab_2.pjt
Chapter 4 DSP/BIOS Part 3 - Real Time Analysis Tools
Learning Objectives ,[object Object],[object Object],[object Object],[object Object],[object Object]
Introduction ,[object Object],[object Object],[object Object],[object Object]
Introduction ,[object Object],[object Object],[object Object],[object Object]
DSP/BIOS - API Modules Instrumentation/Real-Time Analysis   LOG Message Log manger STS Statistics accumulator manager  TRC Trace manager  RTDX Real-Time Data Exchange manager  Thread Types  HWI Hardware interrupt manager  SWI Software interrupt manager  TSK Multitasking manager  IDL Idle function & processing loop manager  Clock and Periodic Functions  CLK System clock manager  PRD Periodic function manger  Comm/Synch between threads SEM Semaphores manager  MBX Mailboxes manager  LCK   Resource lock manager  Input/Output   PIP Data pipe manager  HST Host input/output manager  SIO Stream I/O manager  DEV Device driver interface  Memory and Low-level Primitives   MEM Memory manager  SYS System services manager  QUE Queue manager  ATM Atomic functions  GBL Global setting manager
LOG Module ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Moving from “printf” to the faster “LOG_printf” ,[object Object],> 34000
Moving from “printf” to the faster “LOG_printf” ,[object Object],(2) Include the following external reference to the DSP/BIOS object in the C code: /* #include <stdio.h>  NOT required */ #include <std.h> /* this is required by all DSP/BIOS modules */ #include <log.h> /* this is required by the LOG module */ extern far LOG_Obj fastprint;  /*fastprint is a user chosen name */
Moving from “printf” to the faster “LOG_printf” ,[object Object],[object Object],[object Object]
Moving from “printf” to the faster “LOG_printf” ,[object Object],/* #include <stdio.h>  NOT required */ #include <std.h> /* this is required by all DSP/BIOS modules */ #include <log.h> /* this is required by the LOG module */ extern far LOG_Obj fastprint; void algorithm_1 (void) { LOG_printf (&fastprint, “Algorithm 1 is running”); }
Moving from “printf” to the faster “LOG_printf” ,[object Object],Note: The complete code can be found in:  odehapter 04 - DSP BIOSios_Lab2
STS Module ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Using the STS Module ,[object Object],/* #include <stdio.h>  NOT required */ #include <std.h> /* this is required by all DSP/BIOS modules */ /* #include <sts.h>  : Created by the tools  */ (2) Create an object with the configuration tool: (a) Open the cdb file, select “Instrumentation” and  open the “STS - Statistics Object Manager”. (b) Create a new object and call it “mystsObj”.
Using the STS Module ,[object Object],#include <stdio.h>  /* Needed for the printf function */ #include <std.h> /* this is required by all DSP/BIOS modules */ #include <sts.h> #include <clk.h> extern far STS_Obj mystsObj; void algorithm_1 (void) { STS_set (&mystsObj, CLK_gethtime()); printf (“Algorithm 1 is running”); STS_delta (&mystsObj, CLK_gethtime()); }
Moving from “printf” to the faster “LOG_printf” ,[object Object],(5) Exercise: Compare the number of cycles the printf and LOG_printf take. Note: The complete code can be found in:  odehapter 04 - DSP BIOSios_Lab3
Low Instrumentation Overhead ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Chapter 4 DSP/BIOS Part 4 - Real-Time Data Exchange
Learning Objectives ,[object Object],[object Object]
RTDX: Real-Time Data Exchange ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],PC TMS320 DSP IEEE JTAG EMU H/W R T D X  USER  CODE Third Party Display CCS Display ,[object Object],[object Object],[object Object],[object Object]
RTDX: Flow of Data ,[object Object]
RTDX: Example (1) ,[object Object],[object Object],[object Object],Host Target DSK6711 DSK6711 bios_lab3.pjt Host s1l1.c s1l1.exe
RTDX: Example (2) - Testing the Code ,[object Object],[object Object],[object Object],(4) Run the code. (5) Run the host code “s1l1.cpp.exe” and observe the output. The DSP C code is shown in:  inksain3.pdf
DSP/BIOS Feature Summary Features Benefits Easy to use Saves development time Small Footprint (<2Kw) Easily fits in limited memory systems Fast Execution  Ideal for real time systems Real-Time Analysis  View system parameters   while system is executing without breakpoints and without additional overhead - “Test what you fly and fly what you test” Set of Library Functions Use only what you need to minimize  footprint Extensible Full featured kernel allows additional  OS functions in future
DSP/BIOS Summary ,[object Object],[object Object],[object Object]
DSP/BIOS ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Chapter 4 DSP/BIOS - End -

More Related Content

What's hot

Chp6 assembly language programming for pic copy
Chp6 assembly language programming for pic   copyChp6 assembly language programming for pic   copy
Chp6 assembly language programming for pic copymkazree
 
001 bab i dasar-dasar pc
001 bab i dasar-dasar pc001 bab i dasar-dasar pc
001 bab i dasar-dasar pcNana Kusnana
 
LAPORAN PRAKTIKUM MODUL 1 "HARDWARE"
LAPORAN PRAKTIKUM MODUL 1 "HARDWARE"LAPORAN PRAKTIKUM MODUL 1 "HARDWARE"
LAPORAN PRAKTIKUM MODUL 1 "HARDWARE"Fisma Ananda
 
Pulse amplitude modulation & demodulation
Pulse amplitude modulation & demodulationPulse amplitude modulation & demodulation
Pulse amplitude modulation & demodulationVishal kakade
 
Digital speech processing lecture1
Digital speech processing lecture1Digital speech processing lecture1
Digital speech processing lecture1Samiul Parag
 
Pemrograman terstruktur
Pemrograman terstrukturPemrograman terstruktur
Pemrograman terstrukturMeiland Meebo
 
Mastering Microcontroller : TIMERS, PWM, CAN, RTC,LOW POWER
Mastering Microcontroller : TIMERS, PWM, CAN, RTC,LOW POWERMastering Microcontroller : TIMERS, PWM, CAN, RTC,LOW POWER
Mastering Microcontroller : TIMERS, PWM, CAN, RTC,LOW POWERFastBit Embedded Brain Academy
 
DPSK(Differential Phase Shift Keying) transmitter and receiver
DPSK(Differential Phase Shift Keying) transmitter and receiverDPSK(Differential Phase Shift Keying) transmitter and receiver
DPSK(Differential Phase Shift Keying) transmitter and receiverSumukh Athrey
 
Digital signal processors
Digital signal processorsDigital signal processors
Digital signal processorsPrem Ranjan
 
The MIDI Protocol - Musical Instrument Digital Interface
The MIDI Protocol - Musical Instrument Digital InterfaceThe MIDI Protocol - Musical Instrument Digital Interface
The MIDI Protocol - Musical Instrument Digital InterfaceBhaumik Bhatt
 

What's hot (20)

Chp6 assembly language programming for pic copy
Chp6 assembly language programming for pic   copyChp6 assembly language programming for pic   copy
Chp6 assembly language programming for pic copy
 
Types of animation
Types of animationTypes of animation
Types of animation
 
Monochrome TV Receiver
Monochrome TV ReceiverMonochrome TV Receiver
Monochrome TV Receiver
 
Ch 05
Ch 05Ch 05
Ch 05
 
001 bab i dasar-dasar pc
001 bab i dasar-dasar pc001 bab i dasar-dasar pc
001 bab i dasar-dasar pc
 
Sistem operasi
Sistem operasiSistem operasi
Sistem operasi
 
SPEECH CODING
SPEECH CODINGSPEECH CODING
SPEECH CODING
 
LAPORAN PRAKTIKUM MODUL 1 "HARDWARE"
LAPORAN PRAKTIKUM MODUL 1 "HARDWARE"LAPORAN PRAKTIKUM MODUL 1 "HARDWARE"
LAPORAN PRAKTIKUM MODUL 1 "HARDWARE"
 
Pulse amplitude modulation & demodulation
Pulse amplitude modulation & demodulationPulse amplitude modulation & demodulation
Pulse amplitude modulation & demodulation
 
Digital speech processing lecture1
Digital speech processing lecture1Digital speech processing lecture1
Digital speech processing lecture1
 
ASK,FSK and M-PSK using Matlab
ASK,FSK and M-PSK using MatlabASK,FSK and M-PSK using Matlab
ASK,FSK and M-PSK using Matlab
 
Pemrograman terstruktur
Pemrograman terstrukturPemrograman terstruktur
Pemrograman terstruktur
 
Digital display technology
Digital display technologyDigital display technology
Digital display technology
 
Computer resolution
Computer resolutionComputer resolution
Computer resolution
 
Mastering Microcontroller : TIMERS, PWM, CAN, RTC,LOW POWER
Mastering Microcontroller : TIMERS, PWM, CAN, RTC,LOW POWERMastering Microcontroller : TIMERS, PWM, CAN, RTC,LOW POWER
Mastering Microcontroller : TIMERS, PWM, CAN, RTC,LOW POWER
 
Embedded C - Lecture 4
Embedded C - Lecture 4Embedded C - Lecture 4
Embedded C - Lecture 4
 
Akshay (structures)
Akshay (structures)Akshay (structures)
Akshay (structures)
 
DPSK(Differential Phase Shift Keying) transmitter and receiver
DPSK(Differential Phase Shift Keying) transmitter and receiverDPSK(Differential Phase Shift Keying) transmitter and receiver
DPSK(Differential Phase Shift Keying) transmitter and receiver
 
Digital signal processors
Digital signal processorsDigital signal processors
Digital signal processors
 
The MIDI Protocol - Musical Instrument Digital Interface
The MIDI Protocol - Musical Instrument Digital InterfaceThe MIDI Protocol - Musical Instrument Digital Interface
The MIDI Protocol - Musical Instrument Digital Interface
 

Similar to DSP/Bios

Purdue CS354 Operating Systems 2008
Purdue CS354 Operating Systems 2008Purdue CS354 Operating Systems 2008
Purdue CS354 Operating Systems 2008guestd9065
 
Creating an Embedded System Lab
Creating an Embedded System LabCreating an Embedded System Lab
Creating an Embedded System LabNonamepro
 
Module 1 embedded software essentials
Module 1 embedded software essentialsModule 1 embedded software essentials
Module 1 embedded software essentialsSaad Elkheety
 
04 threads-pbl-2-slots
04 threads-pbl-2-slots04 threads-pbl-2-slots
04 threads-pbl-2-slotsmha4
 
04 threads-pbl-2-slots
04 threads-pbl-2-slots04 threads-pbl-2-slots
04 threads-pbl-2-slotsmha4
 
Accelerating Deep Learning Training with BigDL and Drizzle on Apache Spark wi...
Accelerating Deep Learning Training with BigDL and Drizzle on Apache Spark wi...Accelerating Deep Learning Training with BigDL and Drizzle on Apache Spark wi...
Accelerating Deep Learning Training with BigDL and Drizzle on Apache Spark wi...Databricks
 
Process control daemon
Process control daemonProcess control daemon
Process control daemonhaish
 
distage: Purely Functional Staged Dependency Injection; bonus: Faking Kind Po...
distage: Purely Functional Staged Dependency Injection; bonus: Faking Kind Po...distage: Purely Functional Staged Dependency Injection; bonus: Faking Kind Po...
distage: Purely Functional Staged Dependency Injection; bonus: Faking Kind Po...7mind
 
1032 cs208 g operation system ip camera case share.v0.2
1032 cs208 g operation system ip camera case share.v0.21032 cs208 g operation system ip camera case share.v0.2
1032 cs208 g operation system ip camera case share.v0.2Stanley Ho
 
Best Practices and Performance Studies for High-Performance Computing Clusters
Best Practices and Performance Studies for High-Performance Computing ClustersBest Practices and Performance Studies for High-Performance Computing Clusters
Best Practices and Performance Studies for High-Performance Computing ClustersIntel® Software
 
A novel implementation of
A novel implementation ofA novel implementation of
A novel implementation ofcsandit
 
Java File I/O Performance Analysis - Part I - JCConf 2018
Java File I/O Performance Analysis - Part I - JCConf 2018Java File I/O Performance Analysis - Part I - JCConf 2018
Java File I/O Performance Analysis - Part I - JCConf 2018Michael Fong
 
Introduction to Operating Systems.pptx
Introduction to Operating Systems.pptxIntroduction to Operating Systems.pptx
Introduction to Operating Systems.pptxMohamedSaied877003
 

Similar to DSP/Bios (20)

Purdue CS354 Operating Systems 2008
Purdue CS354 Operating Systems 2008Purdue CS354 Operating Systems 2008
Purdue CS354 Operating Systems 2008
 
Creating an Embedded System Lab
Creating an Embedded System LabCreating an Embedded System Lab
Creating an Embedded System Lab
 
Module 1 embedded software essentials
Module 1 embedded software essentialsModule 1 embedded software essentials
Module 1 embedded software essentials
 
04 threads-pbl-2-slots
04 threads-pbl-2-slots04 threads-pbl-2-slots
04 threads-pbl-2-slots
 
04 threads-pbl-2-slots
04 threads-pbl-2-slots04 threads-pbl-2-slots
04 threads-pbl-2-slots
 
Accelerating Deep Learning Training with BigDL and Drizzle on Apache Spark wi...
Accelerating Deep Learning Training with BigDL and Drizzle on Apache Spark wi...Accelerating Deep Learning Training with BigDL and Drizzle on Apache Spark wi...
Accelerating Deep Learning Training with BigDL and Drizzle on Apache Spark wi...
 
Process control daemon
Process control daemonProcess control daemon
Process control daemon
 
Operating System Assignment Help
Operating System Assignment HelpOperating System Assignment Help
Operating System Assignment Help
 
distage: Purely Functional Staged Dependency Injection; bonus: Faking Kind Po...
distage: Purely Functional Staged Dependency Injection; bonus: Faking Kind Po...distage: Purely Functional Staged Dependency Injection; bonus: Faking Kind Po...
distage: Purely Functional Staged Dependency Injection; bonus: Faking Kind Po...
 
1032 cs208 g operation system ip camera case share.v0.2
1032 cs208 g operation system ip camera case share.v0.21032 cs208 g operation system ip camera case share.v0.2
1032 cs208 g operation system ip camera case share.v0.2
 
SDAccel Design Contest: Xilinx SDAccel
SDAccel Design Contest: Xilinx SDAccel SDAccel Design Contest: Xilinx SDAccel
SDAccel Design Contest: Xilinx SDAccel
 
Documentation
DocumentationDocumentation
Documentation
 
Best Practices and Performance Studies for High-Performance Computing Clusters
Best Practices and Performance Studies for High-Performance Computing ClustersBest Practices and Performance Studies for High-Performance Computing Clusters
Best Practices and Performance Studies for High-Performance Computing Clusters
 
A novel implementation of
A novel implementation ofA novel implementation of
A novel implementation of
 
Linux scheduler
Linux schedulerLinux scheduler
Linux scheduler
 
Linux startup
Linux startupLinux startup
Linux startup
 
Java File I/O Performance Analysis - Part I - JCConf 2018
Java File I/O Performance Analysis - Part I - JCConf 2018Java File I/O Performance Analysis - Part I - JCConf 2018
Java File I/O Performance Analysis - Part I - JCConf 2018
 
Agnostic Device Drivers
Agnostic Device DriversAgnostic Device Drivers
Agnostic Device Drivers
 
Introduction to Operating Systems.pptx
Introduction to Operating Systems.pptxIntroduction to Operating Systems.pptx
Introduction to Operating Systems.pptx
 
Multicore
MulticoreMulticore
Multicore
 

Recently uploaded

Biting mechanism of poisonous snakes.pdf
Biting mechanism of poisonous snakes.pdfBiting mechanism of poisonous snakes.pdf
Biting mechanism of poisonous snakes.pdfadityarao40181
 
भारत-रोम व्यापार.pptx, Indo-Roman Trade,
भारत-रोम व्यापार.pptx, Indo-Roman Trade,भारत-रोम व्यापार.pptx, Indo-Roman Trade,
भारत-रोम व्यापार.pptx, Indo-Roman Trade,Virag Sontakke
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Krashi Coaching
 
EPANDING THE CONTENT OF AN OUTLINE using notes.pptx
EPANDING THE CONTENT OF AN OUTLINE using notes.pptxEPANDING THE CONTENT OF AN OUTLINE using notes.pptx
EPANDING THE CONTENT OF AN OUTLINE using notes.pptxRaymartEstabillo3
 
Proudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptxProudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptxthorishapillay1
 
Science 7 - LAND and SEA BREEZE and its Characteristics
Science 7 - LAND and SEA BREEZE and its CharacteristicsScience 7 - LAND and SEA BREEZE and its Characteristics
Science 7 - LAND and SEA BREEZE and its CharacteristicsKarinaGenton
 
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdfssuser54595a
 
CARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxCARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxGaneshChakor2
 
Introduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher EducationIntroduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher Educationpboyjonauth
 
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdfEnzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdfSumit Tiwari
 
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTiammrhaywood
 
Employee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxEmployee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxNirmalaLoungPoorunde1
 
internship ppt on smartinternz platform as salesforce developer
internship ppt on smartinternz platform as salesforce developerinternship ppt on smartinternz platform as salesforce developer
internship ppt on smartinternz platform as salesforce developerunnathinaik
 
Science lesson Moon for 4th quarter lesson
Science lesson Moon for 4th quarter lessonScience lesson Moon for 4th quarter lesson
Science lesson Moon for 4th quarter lessonJericReyAuditor
 
Class 11 Legal Studies Ch-1 Concept of State .pdf
Class 11 Legal Studies Ch-1 Concept of State .pdfClass 11 Legal Studies Ch-1 Concept of State .pdf
Class 11 Legal Studies Ch-1 Concept of State .pdfakmcokerachita
 
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...Marc Dusseiller Dusjagr
 
Painted Grey Ware.pptx, PGW Culture of India
Painted Grey Ware.pptx, PGW Culture of IndiaPainted Grey Ware.pptx, PGW Culture of India
Painted Grey Ware.pptx, PGW Culture of IndiaVirag Sontakke
 
Pharmacognosy Flower 3. Compositae 2023.pdf
Pharmacognosy Flower 3. Compositae 2023.pdfPharmacognosy Flower 3. Compositae 2023.pdf
Pharmacognosy Flower 3. Compositae 2023.pdfMahmoud M. Sallam
 
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Celine George
 

Recently uploaded (20)

Biting mechanism of poisonous snakes.pdf
Biting mechanism of poisonous snakes.pdfBiting mechanism of poisonous snakes.pdf
Biting mechanism of poisonous snakes.pdf
 
भारत-रोम व्यापार.pptx, Indo-Roman Trade,
भारत-रोम व्यापार.pptx, Indo-Roman Trade,भारत-रोम व्यापार.pptx, Indo-Roman Trade,
भारत-रोम व्यापार.pptx, Indo-Roman Trade,
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
 
EPANDING THE CONTENT OF AN OUTLINE using notes.pptx
EPANDING THE CONTENT OF AN OUTLINE using notes.pptxEPANDING THE CONTENT OF AN OUTLINE using notes.pptx
EPANDING THE CONTENT OF AN OUTLINE using notes.pptx
 
Proudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptxProudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptx
 
Science 7 - LAND and SEA BREEZE and its Characteristics
Science 7 - LAND and SEA BREEZE and its CharacteristicsScience 7 - LAND and SEA BREEZE and its Characteristics
Science 7 - LAND and SEA BREEZE and its Characteristics
 
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
 
CARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxCARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptx
 
Introduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher EducationIntroduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher Education
 
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdfEnzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
 
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
 
Employee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxEmployee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptx
 
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdfTataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
 
internship ppt on smartinternz platform as salesforce developer
internship ppt on smartinternz platform as salesforce developerinternship ppt on smartinternz platform as salesforce developer
internship ppt on smartinternz platform as salesforce developer
 
Science lesson Moon for 4th quarter lesson
Science lesson Moon for 4th quarter lessonScience lesson Moon for 4th quarter lesson
Science lesson Moon for 4th quarter lesson
 
Class 11 Legal Studies Ch-1 Concept of State .pdf
Class 11 Legal Studies Ch-1 Concept of State .pdfClass 11 Legal Studies Ch-1 Concept of State .pdf
Class 11 Legal Studies Ch-1 Concept of State .pdf
 
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
 
Painted Grey Ware.pptx, PGW Culture of India
Painted Grey Ware.pptx, PGW Culture of IndiaPainted Grey Ware.pptx, PGW Culture of India
Painted Grey Ware.pptx, PGW Culture of India
 
Pharmacognosy Flower 3. Compositae 2023.pdf
Pharmacognosy Flower 3. Compositae 2023.pdfPharmacognosy Flower 3. Compositae 2023.pdf
Pharmacognosy Flower 3. Compositae 2023.pdf
 
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
 

DSP/Bios

  • 2. Chapter 4 DSP/BIOS Part 1 - Introduction
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15. Chapter 4 DSP/BIOS Part 2 - Real Time Scheduling
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27. Triggering SWI or TSK SWI cannot pend. SWI always returns from function. TSK only returns when no longer needed, otherwise normally an infinite loop. SWI start end SWI_post “ run to completion” TSK SEM_pend start end block SEM_post
  • 28.
  • 29. Thread Preemption Example HWI SWI 2 SWI 1 IDL main() TSK 2 TSK 1 Events over time interrupt pend sem2 return interrupt interrupt pend sem2 pend sem1 interrupt return return post swi1 return post swi2 return post sem2 return post swi2 return post sem1 post sem2 return pend sem2 pend sem1
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.
  • 40.
  • 41.
  • 42.
  • 43. Putting it all together… void main (void) { /* Put all your setup code here */ return; /*DSP BIOS starts after the return */ } /* Hardware Interrupt */ void timerIsr (void) { /* Put your code here */ SWI_post (&SWI_for_algorithm_1); SEM_post (&taskOneSem); } /*Software Interrupt */ void algorithm_1 (void) { /* Put your code here */ } /* Task */ void ProcessTask (void) { while (1) { SEM_pend (&taskOneSem, SYS_FOREVER); /* Insert your code here */ } }
  • 44. Putting it all together… void main (void) { /* Put all your setup code here */ return; /*DSP BIOS starts after the return */ } /* Hardware Interrupt */ void timerIsr (void) { /* Put your code here */ SWI_post (&SWI_for_algorithm_1); SEM_post (&taskOneSem); } /*Software Interrupt */ void algorithm_1 (void) { /* Put your code here */ } /* Task */ void ProcessTask (void) { while (1) { SEM_pend (&taskOneSem, SYS_FOREVER); /* Insert your code here */ } }
  • 45. Putting it all together… See example located in: … Chapter 04 - DSP BIOSios_Lab2ios_lab_2.pjt
  • 46. Chapter 4 DSP/BIOS Part 3 - Real Time Analysis Tools
  • 47.
  • 48.
  • 49.
  • 50. DSP/BIOS - API Modules Instrumentation/Real-Time Analysis LOG Message Log manger STS Statistics accumulator manager TRC Trace manager RTDX Real-Time Data Exchange manager Thread Types HWI Hardware interrupt manager SWI Software interrupt manager TSK Multitasking manager IDL Idle function & processing loop manager Clock and Periodic Functions CLK System clock manager PRD Periodic function manger Comm/Synch between threads SEM Semaphores manager MBX Mailboxes manager LCK Resource lock manager Input/Output PIP Data pipe manager HST Host input/output manager SIO Stream I/O manager DEV Device driver interface Memory and Low-level Primitives MEM Memory manager SYS System services manager QUE Queue manager ATM Atomic functions GBL Global setting manager
  • 51.
  • 52.
  • 53.
  • 54.
  • 55.
  • 56.
  • 57.
  • 58.
  • 59.
  • 60.
  • 61.
  • 62. Chapter 4 DSP/BIOS Part 4 - Real-Time Data Exchange
  • 63.
  • 64.
  • 65.
  • 66.
  • 67.
  • 68. DSP/BIOS Feature Summary Features Benefits Easy to use Saves development time Small Footprint (<2Kw) Easily fits in limited memory systems Fast Execution Ideal for real time systems Real-Time Analysis View system parameters while system is executing without breakpoints and without additional overhead - “Test what you fly and fly what you test” Set of Library Functions Use only what you need to minimize footprint Extensible Full featured kernel allows additional OS functions in future
  • 69.
  • 70.