Browse Prior Art Database

Scheduling in DSP Systemen unter Beruecksichtigung des internen Speichers

IP.com Disclosure Number: IPCOM000010268D
Original Publication Date: 2002-Dec-25
Included in the Prior Art Database: 2002-Dec-25
Document File: 1 page(s) / 59K

Publishing Venue

Siemens

Related People

Juergen Carstens: CONTACT

Abstract

Bei Digital Signaling Processing (DSP) Anwendungen ist in vielen Faellen die optimale Nutzung des auf dem Chip integrierten Speichers (internal memory) entscheidend zur Erreichung einer optimalen Leistung. Zugriffe auf den externen Speicher dauern bis zu 20 mal laenger als Zugriffe auf den inter-nen Speicher, und mit immer schnelleren DSPs wird sich dieses Verhaeltnis weiter verschlechtern. Konventionelle (Echtzeit) Betriebssysteme beruecksichtigen beim Taskwechsel den Unterschied zwi-schen internem und externem Speicher nicht, weil es diese Unterscheidung bei General Purpose Pro-zessoren nicht gibt (interner Speicher wird hier im Allgemeinen als Cache verwaltet). Der Einsatz dieser Standard Scheduling Verfahren fuehrt daher in vielen Faellen zu einer schlechten DSP Ausnutzung. Das hier vorgeschlagene Scheduling Verfahren ist dadurch gekennzeichnet, dass interner DSP Spei-cher vorhanden ist und dass Ressourcen existieren, die das Laden von Speicherbereichen parallel zur Programmausfuehrung ermoeglichen. Es wird dabei zwischen Speicherbereichen, die parallel zur Programmausfuehrung geladen werden koennen und den ueblicherweise vorhandenen, bei denen das nicht moeglich ist, unterschieden. Das Ziel des vorgeschlagenen Scheduling Verfahrens ist es, die Anzahl der blockierenden Transfers und damit die Wartezeit des Prozessors zu minimieren, um eine optimale Prozessornutzung zu erreichen. Dazu muss das Scheduling Verfahren die in der naechsten Zukunft abzuarbeitenden Tasks kennen und deren Abarbeitungsreihenfolge optimieren, was bei kon-ventionellen Prioritaetsbasierten Echtzeitbetriebssystemen nicht moeglich ist. Das beschriebene Verfahren verwaltet Tasks, die eine gewisse, relativ kurze Zeit arbeiten und dann die Kontrolle wieder an den Scheduler abgeben (kooperatives Multitasking). Fuer jede Task werden folgende Parameter im Speicher abgelegt: 1. Die benoetigten Speicherbereiche 2. Die Finish-time; das ist jene Zeit, bis zu der die Task ausgefuehrt worden sein muss. 3. Die maximal moegliche Laufzeit der Tasks. Mit Hilfe dieser Parameter werden folgende Werte berechnet: Definition: Load-Overhead Der Load-Overhead fuer einen bestimmten Task ist ein Mass fuer die Zeit die der Prozessor blockiert werden wuerde, wenn der Task jetzt gestartet wuerde. Der Load-Overhead haengt vom aktuellen Zustand des Speichers und vom Task ab. Definitionsgemaess ist der minimale Load-Overhead-Wert dadurch gekennzeichnet, dass keine Prozessorzeit vor Ausfuehrung des Tasks benoetigt wird. Definition: aktuelle Task Die aktuelle Task ist die Task mit der fruehesten Finish-time. Das vorgeschlagene Scheduling Verfahren arbeitet folgendermassen: 1. Der Scheduler berechnet den Load-Overhead fuer die aktuelle Task 2. Ist der Load-Overhead fuer die aktuelle Task gleich Null, so wird sie gestartet. 3. Ist dieser Load-Overhead nicht Null, sucht der Scheduler nach einer Task mit minimalem Load-Overhead, dessen Load-Overhead zusaetzlich unter einer bestimmten Schranke liegt, der vor der aktuellen Task ausgefuehrt werden kann (=vorzeitig ausfuehrbare Task). Dazu wird untersucht, ob alle Tasks mit einer Finish-time vor der untersuchten Task unter Beruecksichtigung der maxi-mal moeglichen Laufzeiten rechtzeitig beendet werden koennen. 4. Wurde in (3) eine vorzeitig ausfuehrbare Task gefunden, so wird diese gestartet, andernfalls wird die aktuelle Task gestartet.

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 50% of the total text.

Page 1 of 1

S

© SIEMENS AG 2002 file: 2002J14914.doc page: 1

Scheduling in DSP Systemen unter Beruecksichtigung des internen Speichers

Idea: Wolfgang Bauer, AT-Wien; Gerhard Fally, AT-Wien

Bei Digital Signaling Processing (DSP) Anwendungen ist in vielen Faellen die optimale Nutzung des auf dem Chip integrierten Speichers (internal memory) entscheidend zur Erreichung einer optimalen Leistung. Zugriffe auf den externen Speicher dauern bis zu 20 mal laenger als Zugriffe auf den inter- nen Speicher, und mit immer schnelleren DSPs wird sich dieses Verhaeltnis weiter verschlechtern.

Konventionelle (Echtzeit) Betriebssysteme beruecksichtigen beim Taskwechsel den Unterschied zwi- schen internem und externem Speicher nicht, weil es diese Unterscheidung bei General Purpose Pro- zessoren nicht gibt (interner Speicher wird hier im Allgemeinen als Cache verwaltet).

Der Einsatz dieser Standard Scheduling Verfahren fuehrt daher in vielen Faellen zu einer schlechten DSP Ausnutzung.

Das hier vorgeschlagene Scheduling Verfahren ist dadurch gekennzeichnet, dass interner DSP Spei- cher vorhanden ist und dass Ressourcen existieren, die das Laden von Speicherbereichen parallel zur Programmausfuehrung ermoeglichen. Es wird dabei zwischen Speicherbereichen, die parallel zur Programmausfuehrung geladen werden koennen und den ueblicherweise vorhandenen, bei denen das nicht moeglich ist, unterschieden. Das Ziel des vorgeschlagenen Scheduling Verfahrens ist es, die Anzahl der blockierenden Transfers und damit die Wartezeit des Prozessors zu minimieren, um eine optimale Prozessornutzung zu erreichen. Dazu muss das Scheduling Verfahren die in der naechsten Zukunft abzuarbeitenden Tasks kennen und deren Abarbeitungsreihenfolge optimieren, was bei kon- ventionellen Prioritaetsbasierten E...