1. Trang chủ
  2. » Công Nghệ Thông Tin

Digitale Hardware/ Software-Systeme- P18 pot

30 219 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Systemverifikation und Zeitanalyse in Ereignisstrom-Systemen
Trường học Universität Example
Chuyên ngành Digitale Hardware/Software-Systeme
Thể loại Vorlesungsentwurf
Năm xuất bản 2023
Thành phố Beispielstadt
Định dạng
Số trang 30
Dung lượng 335,23 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Kopplung der Ereignisstr¨ome [380] F¨ur die EAF ergibt sich nach Tabelle 8.2, dass ein Puffer der Gr¨oße n EAF = 1 verwendet und mit der Periode P p2,inbetrieben werden kann.. Da in dies

Trang 1

periodischen Ereignisstrom darstellen Allerdings kann durch Pufferung und odische Wiedergabe von Ereignissen eine rein periodischer Ereignisstrom aus einemperiodischen Ereignisstrom mit Jitter konstruiert werden Hierzu ist die Ermittlungder Ereignisadaptierungsfunktion (EAF) notwendig (siehe Abb 8.29c)) Die Ermitt-lung der EAF erfolgt auf Basis des Ereignismodells f¨ur den Ausgabeereignisstromund dem Ereignismodell f¨ur den Eingabeereignisstrom.

peri-F¨ur das Beispiel aus Abb 8.29c) (X = (P X ,JX ) und Y = (P Y)) kann ein Puffer

der Gr¨oße n EAF := 1 verwendet werden und die Periode PY auf P X gesetzt werden

Die Verz¨ogerungszeit eines Ereignisses betr¨agt dann d+EAF = P XZeiteinheiten Etwaskomplizierter ist der Fall f¨ur die Umwandlung eines periodischen Ereignisstroms mit

Bursts (X = (P X,dX,bX )) in einen rein periodischen Ereignisstrom (Y = (P Y)) Mit

dem Wissen, dass maximal b X Ereignisse in einer Zeitspanne von P X Zeiteinheiten

auftreten k¨onnen, kann P Y zu P Y:=P X

b X bestimmt werden Die maximale Verz¨ogerungeines Ereignisses betr¨agt:

Dies wird anhand eines Beispiels aus [378] verdeutlicht:

Beispiel 8.2.5 Gegeben ist das Ereignismodell eines periodischen nisstroms mit Periode P X und minimaler Ankunftszeit d X Die maximale Anzahl

Ausgabeereig-an Ereignissen in einer Periode P X ist b X:= 5 Hieraus ergibt sich die Periode PY

zu P Y =P X

5 Abbildung 8.31 zeigt die maximale Verz¨ogerung eines Ereignisses alsgrauen Kasten Diese ergibt sich f¨ur das letzte Ereignis eines Bursts

τ 0

Y

X

d X

P Y 2P Y 3P Y 5P Y = P X

Abb 8.31 Maximale Verz¨ogerungszeit f¨ur ein Ereignis

Da die Ereignisse periodisch aus dem Puffer entnommen werden, l¨asst sich die

ma-ximale Anzahl n+EAF an Ereignissen in dem Puffer bestimmen zu:

die Puffergr¨oßen n , die Perioden P und die maximalen Verz¨ogerungszeiten

Trang 2

d EAF+ f¨ur die jeweiligen Ereignisadaptierungsfunktionen sowie die schnittstelle in Tabelle 8.2 angegeben Man erkennt, dass die Ereignisadaptierungs-

Ereignismodell-funktion lediglich von dem Ausgabeereignisstrom X abh¨angt, was an der

Verwen-dung periodischer Adpatierungsfunktionen liegt

Tabelle 8.2 Ereignisadaptierungsfunktionen und Ereignismodellschnittstellen f¨ur die

Um-wandlung von Ereignisstr¨omen mit Adaptierung nach Abb 8.30 [378]

Beispiel 8.2.6 Gegeben ist das System in Abb 8.32 Das System besteht aus zwei

Komponenten CPU1 und CPU2, welche die Analysedom¨anen festlegen Jeder derbeiden Prozessoren f¨uhrt je zwei Prozesse aus, wobei die Aktivierungen der Prozesse

p1und p2durch die Umgebung erfolgen Der Prozess p1wird dabei mit einer

Pe-riode P p1,in:= 40ms aktiviert Prozess p2wird mit einer Periode von P p2,in:= 20ms aktiviert, wobei die Aktivierung einem Jitter J p2,in:= 5ms unterliegt Die Prozes-

se auf CPU1 werden mittels einer ratenmonotonen Ablaufplanung eingeplant CPU2

verwendet ein Round-Robin-Ablaufplanungsverfahren, mit den Slotbreiten S (p3) :=

5ms und S(p4) := 3ms Die Ausf¨uhrungszeiten (BCET und WCET) der Prozesse sind

gang von CPU1 zum Prozess p2eine Ereignisadaptierungsfunktion (EAF) ben¨otigt,

da die Umgebung ein periodisches Ereignismodell mit Jitter zur Verf¨ugung stellt, dieAnalysemethode jedoch ein rein periodisches Ereignismodell voraussetzt Zur Kopp-

lung der Ereignisstr¨ome zwischen den Prozessen p und p bzw p und p k¨onnen

Trang 3

Abb 8.32 Kopplung der Echtzeitanalysemethoden [380]

Ereignismodellschnittstellen (EMIFs) nach Tabelle 8.1 zum Einsatz kommen DasErgebnis ist in Abb 8.33 zu sehen Man sieht, dass die EAFs und EMIFs als weitereKomponenten im Analysemodell auftreten

Abb 8.33 Kopplung der Ereignisstr¨ome [380]

F¨ur die EAF ergibt sich nach Tabelle 8.2, dass ein Puffer der Gr¨oße n EAF = 1

verwendet und mit der Periode P p2,inbetrieben werden kann Nun kann die CPU1analysiert werden Durch die Antwortzeitanalyse (siehe Gleichung (7.21) auf Sei-

te 446) ergibt sich, dass die AntwortzeitenτF(p1) undτF(p2) der Prozesse p1bzw

p2wie folgt gegeben sind:

τF(p1) = [31ms,39ms]

τF(p2) = [8ms,11ms]

Diese Zeiten lassen sich wie folgt erkl¨aren Aufgrund der geringeren Periode

be-sitzt Prozess p2in der ratenmonotonen Ablaufplanung die h¨ohere Priorit¨at F¨ur dieZeitanalyse wird der Fall betrachtet, dass beide Prozesse die selbe Phase besitzen,

also gleichzeitig aktiviert werden Aufgrund der h¨oheren Priorit¨at wird p2 zuerstausgef¨uhrt Die Antwortzeit ergibt sich gem¨aß der Ausf¨uhrungszeit des Prozesses

Nach Beendigung der Ausf¨uhrung von p2 kann Prozess p1 gestartet werden

Die-ser wird allerdings durch die n¨achste Aktivierung von p2unterbrochen Aus diesenAntwortzeiten lassen sich die Ausgabeereignisstr¨ome ableiten:

Trang 4

F die obere bzw untere Schranke einer Antwortzeit

Die-se Ausgabeereignisstr¨ome m¨usDie-sen nun an die erwarteten Eingabeereignisstr¨ome vonCPU2 angepasst werden Da in diesem Fall keine Adaptierung der Ereignisstr¨omeerfolgen muss, k¨onnen die Umwandlungen aus Tabelle 8.1 direkt verwendet werden.Die Eingabeereignisstr¨ome ergeben sich dann zu:

d p3,in = P p1,out − Jp1,out = 32ms

d p4,in = P p2,out − Jp2,out = 17ms

Die Echtzeitanalyse auf CPU2 f¨uhrt zu folgenden Antwortzeiten [380] (siehe auchGleichung (7.22) auf Seite 447):

τF(p3) = [13ms,20ms]

τF(p4) = [3ms,15ms]

Der jeweils beste Fall ergibt sich, wenn der betreffende Prozess zuerst geplant wirdund dieser die BCET zur Ausf¨uhrung ben¨otigt Der schlechteste Fall ergibt sich,wenn jeweils der andere Prozess zuerst geplant wird und beide Prozesse die WCETzur Ausf¨uhrung ben¨otigen

Abschließend k¨onnen nun die gesuchten Ende-zu-Ende-LatenzenΛ bestimmtwerden, indem entsprechend der Ereignisstromkopplung die Ergebnisse zusammen-gefasst werden Es ergibt sich somit:

2 W¨ahle eine Echtzeitanalysemethode f¨ur diese Analysedom¨ane

3 Falls notwendig, passe Eingabeereignisstr¨ome mittels EMIFs bzw EAFs an

4 Bestimme die Antwortzeiten der Prozesse in der Analysedom¨ane sowie die gabeereignisstr¨ome

Aus-5 Wiederhole Schritte 1 bis 5 bis alle Prozesse analysiert sind

Behandlung zyklischer Abh¨angigkeiten

Bisher wurde lediglich die Analyse von Prozessketten beschrieben, wobei die lyse keine zyklischen Abh¨angigkeiten enthielt Im Allgemeinen kann die Analyseallerdings zyklische Abh¨angigkeiten enthalten, wie das folgende Beispiel aus [380]zeigt

Trang 5

Ana-Beispiel 8.2.7 Abbildung 8.34 zeigt wiederum ein System mit zwei Prozessoren mit

je zwei Prozessen Beide Prozessoren verwenden eine pr¨aemptive priorit¨atsbasierte

Ablaufplanung Auf CPU1 hat Prozess p1die h¨ohere Priorit¨at, auf CPU2 hat Prozess

p4die h¨ohere Priorit¨at

Abb 8.34 Zyklische Abh¨angigkeiten in der Zeitanalyse [380]

Die zyklische Abh¨angigkeit ergibt sich folgendermaßen: Prozess p2 aktiviert

Prozess p4, der wiederum Prozess p3 in der Ausf¨uhrung unterbrechen kann Die

Ausf¨uhrung von Prozess p3aktiviert den Prozess p1, der seinerseits Prozess p2terbrechen kann

un-Man beachte bei diesem Beispiel, dass die Anwendung selbst keine zyklischenAbh¨angigkeiten enth¨alt Diese ergeben sich erst durch die Ressourcenwiederverwen-dung, die in der Zeitanalyse ber¨ucksichtigt werden muss

Die Zeitanalyse von Systemen mit zyklischen Abh¨angigkeiten erfolgt als punktberechnung, indem eine Iteration ¨uber die Berechnung von Ereignisstr¨omensolange durchgef¨uhrt wird, bis sich kein Ereignisstrom im System mehr ¨andert

Fix-8.2.3 Modulare Zeitanalyse mit RTC

Im Folgenden wird eine weitere formale Methode, die als modulare Zeitanalyse zeichnet wird, vorgestellt Diese basiert auf dem sog Echtzeitkalk¨ul (engl Real Time Calculus, RTC), einer Erweiterung des Netzwerkkalk¨uls Zun¨achst wird die modula-

be-re Zeitanalyse f¨ur Netzwerkprozessobe-ren vorgestellt Anschließend wird die dung der modularen Zeitanalyse f¨ur zyklische markierte Graphen pr¨asentiert

Anwen-Das Echtzeitkalk ¨ul

Das Netzwerkkalk¨ul ist eine formale Methode, um Zeiteigenschaften in Netzwerken

zu analysieren Dabei werden die Beschr¨ankungen, die beim Transport der

Pake-te durch beschr¨ankPake-te Kapazit¨aPake-ten der Verbindungen und andere tr¨ome auftreten, ber¨ucksichtigt Die Analyse basiert dabei auf Faltungsopertation inMax-Plus-Algebra Das Echtzeitkalk¨ul erweitert das Netzwerkkalk¨ul im Wesentli-chen um Aspekte der dynamischen Ablaufplanung in Echtzeitsystemen Mit demEchtzeitkalk¨ul lassen sich somit Echtzeitsysteme, die verteilt z B als Mehrprozes-sorsystem implementiert wurden, analysieren

Trang 6

Kommunikationss-Beispiel 8.2.8 Gegeben ist der Netzwerkprozessor in Abb 8.35, bestehend aus zwei

Prozessorkernen (DSP, ARM), zwei Hardware-Beschleunigern (CheckSum, Cipher)und einem Bus Die Prozessbindung und die Kommunikation zwischen Prozessenist ebenfalls in Abb 8.35 gegeben Die Anwendung beschreibt die Schritte zur Ent-schl¨usselung eines Datenstroms als Kette aus elf Aktoren

Abb 8.35 Paketverarbeitung in einem Netzwerkprozessor [429]

F¨ur die Zeitanalyse muss bekannt sein, wie viele Datenpakete jeder Prozess zuverarbeiten hat Dabei wird von der tats¨achlichen Anzahl abstrahiert und, mit Hilfe

sog Ankunftskennlinien, die minimale und maximale Anzahl an Aktivierungen eines

Prozesses pro ZeitintervallΔ angeben, beschrieben

Definition 8.2.1 (Ankunftskennlinie) Eine untere bzw obere Ankunftskennlinieαl und αu bilden ein positives Zeitintervall Δ ∈ T auf die minimale bzw maximale Anzahl an Aktivierungen eines Prozesses im ZeitintervallΔ ab, d h.αl ,u:T → R ≥0.

In Definition 8.2.1 beschreibtT alle m¨oglichen Zeitpunkte Im Folgenden wird nommen, dassT := R0ist Die Schranken der Aktivierungen werden als kontinu-ierliche Gr¨oße dargestellt Der Fall, dass die Aktivierungen nur als diskrete Gr¨oßenauftreten, ist darin enthalten

ange-Die Ankunftskennlinien k¨onnen beispielsweise aus Simulationstraces gewonnenwerden, indem ein Fenster der Gr¨oßeΔ ¨uber dem Trace verschoben wird, und die mi-nimale und maximale Anzahl an Aktivierungen eines Prozesses in diesem Zeitfensterauf dem Trace bestimmt wird Manchmal lassen sich die Ankunftskennlinien auch

Trang 7

aus der Spezifikation konstruieren Treten beispielsweise Aktivierungen mit einembekannten Muster auf, so kann dieses Muster in die minimale und maximale An-kunftskennlinie transformiert werden Ein Beispiel f¨ur solche Spezifikationen sinddie im vorherigen Abschnitt eingef¨uhrten Ereignisstr¨ome Dabei wird jedes Ereignisals Aktivierung eines Prozesses interpretiert F¨ur die in Abb 8.27 auf Seite 500 ein-gef¨uhrten Ereignisstr¨ome sind die Ankunftskennlinien in Abb 8.36 dargestellt Dieunteren Ankunftskennlinien sind gestrichelt gezeichnet.

1 2 3 4 c) periodisch mit Bursts

2P + J

2P P 2P − J

Abb 8.36 Ankunftskennlinien f¨ur die Ereignisstr¨ome aus Abb 8.27 [435]

Neben der Modellierung der Prozesse m¨ussen ebenfalls die Ressourcen in derArchitektur modelliert werden Hierzu z¨ahlen die Prozessoren und die Hardware-Beschleuniger, aber auch die Busse Die M¨oglichkeiten Berechnungen oder Kommu-

nikationen durchzuf¨uhren, werden im Echtzeitkalk¨ul mittels sog Servicekennlinien

beschrieben

Definition 8.2.2 (Servicekennlinie) Eine untere bzw obere Servicekennlinieβl und

βu bilden ein positives ZeitintervallΔ∈ T auf die minimal bzw maximal verf¨ugbare Rechenzeit einer Ressourcen in jedem Zeitintervall der Gr¨oßeΔab Es giltβl(0) =

βu (0) := 0 und

τ> 0,Δ> 0 :βl) ≤ c(τ+Δ) − c(τ) ≤βu),

wobei c(τ) die bis zum Zeitpunktτkumulative verf¨ugbare Rechenzeit darstellt.

Dies bedeutet, dass jede Servicefunktion, die innerhalb der unterenβl und ren Servicekennlinie βu liegt, durchβl und βu charakterisiert werden kann Ab-bildung 8.37 zeigt die Servicekennlinien einer TDMA-Ablaufplanung Die untereServicekennlinie ist dabei gestrichelt gezeichnet

obe-Durch Ausf¨uhrung eines Prozesses wird die Servicekennlinie ver¨andert, da nachAusf¨uhrung des Prozesses weniger Rechenkapazit¨at zur Verf¨ugung steht als vorher

Um die ¨Anderung allerdings bestimmen zu k¨onnen, m¨ussen die Ankunftskennlinienmodifiziert werden Dies ist notwendig, da die Ankunftskennlinienαl

undαu

die

Trang 8

Abb 8.37 Servicekennlinie einer TDMA-Ablaufplanung [435]

minimalen und maximalen Aktivierungen eines Prozesses angeben Diese m¨ussenzun¨achst in eine Rechenlast umgerechnet werden

Sei w die Rechenlast pro Aktivierung eines Prozesses, so k¨onnen die

Schran-ken an die Rechenlast, verursacht durch diesen Prozess, berechnet werden DieseSchranken werden wiederum als Ankunftskennlinien beschrieben Sei[αl ,αu] einIntervall, das die Anzahl der Aktivierungen eines Prozesses beschr¨ankt Dann kann

die Rechenlast durch diesen Prozess mit Ausf¨uhrungszeit w wie folgt beschr¨ankt

werden:

l ,αu ] := [w ·αl ,w ·αu] (8.6)Mit den Ankunftskennlinien αl und αu f¨ur einen Prozess sowie den Service-kennlinienβl undβueiner Ressource lassen sich die Schrankeβl 

undβu  f¨ur die

verbleibende Rechenzeit der Ressource bestimmen, wenn der Prozess auf der source ausgef¨uhrt wird [430]:

Res-βl (Δ) := sup

0λΔ{βl) −αu)} (8.7)

βu (Δ) := sup

0λΔ{βu) −αl)} (8.8)Das Supremum (auch obere Schranke) bezeichnet das kleinste Element, das gr¨oßeroder gr¨oßer gleich allen Elementen der gegeben Menge ist

Weiterhin k¨onnen die Ankunftskennlinieαl 

undαu f¨ur die Prozessausf¨uhrung

auf einer Ressource mit Servicekennlinienβl undβubei Aktivierung des Prozessesmit Ankunftskennlinienαlundαubestimmt werden [430]:

Trang 9

Um aus den Ankunftskennlinien f¨ur die Prozessausf¨uhrung wieder in kennlinien f¨ur die Aktivierung eines datenabh¨angigen Prozesses umzuwandeln, kannf¨ur jedes Intervall[αl ,αu] ein Intervall der folgenden Form berechnet werden:

Ankunfts-[αl  ,αu ] :=

/-αl  w

,

)

αu  w

*0

(8.11)

In Abb 8.38 ist die Transformation der Ankunfts- und Servicekennlinien phisch als Blockdiagramm dargestellt Durch Verschalten dieser Bl¨ocke mit weite-ren Bl¨ocken k¨onnen, z B durch die Ankunftskennlinien, weitere Prozesse aktiviertbzw die verbleibende Rechenleistung einer Ressource f¨ur andere Prozesse verwen-

gra-det werden Durch die Verschaltung entsteht ein sog Zeitbewertungsnetzwerk,

wel-ches zur Bestimmung der erreichbaren Latenzen verwendet werden kann

Glg (8.11) Glg (8.6)

Abb 8.38 Transformation der Ankunfts- und Servicekennlinien [429]

Beispiel 8.2.9 Zur Analyse des Zeitverhaltens zweier Prozesse auf einem einzelnen

Prozessor, die mittels statischer Priorit¨aten pr¨aemptiv und dynamisch geplant den, kann das in Abb 8.39 dargestellte Zeitbewertungsnetzwerk verwendet werden.Die verf¨ugbare Rechenzeit des Prozessors im Idle-Zustand ist durch die Servicekenn-linienβl undβubeschr¨ankt Die Ankunftskennlinienαl

wer-0undαu

0sowieαl

1undαu

1beschreiben die Aktivierungen der beiden Prozesse Prozess 0 hat die h¨ohere Prio-rit¨at Man sieht, dass die verbleibende Rechenzeit, beschr¨ankt durchβl 

und βu ,

dem Prozess 1 zur Verf¨ugung gestellt wird

Durch die Verschaltung der einzelnen Bl¨ocke kann das ZeitbewertungsnetzwerkSt¨uck f¨ur St¨uck aus Teilsystemen (Modulen) zusammengesetzt werden, weshalb die-

se Analysemethode als modulare Zeitanalyse bezeichnet wird.

Bestimmung der maximalen Latenzen und des maximalen Backlogs

Mit einem Zeitbewertungsnetzwerk ist es nun m¨oglich, die Latenz, aber auch denBacklog in Netzwerkprozessoren zu beschr¨anken Bei der Latenz handelt es sich umdie maximale Ende-Zu-Ende-Latenz eines Datenpakets, dass durch den Netzwerk-prozessor verarbeitet wird Der Backlog gibt den maximalen Speicherbedarf eines

Trang 10

Glg (8.11) Glg (8.6) Glgn (8.7)–(8.10)

[ βl 

Glg (8.11) Glg (8.6) Glgn (8.7)–(8.10)

Abb 8.39 Pr¨aemptive Ablaufplanung mit statischen Priorit¨aten [429]

Datenstroms im Netzwerkprozessor an Mit Ergebnissen des Netzwerkkalk¨uls sen sich die LatenzΛ und der BacklogΩ wie folgt beschr¨anken:

ge-0,βl

1, ,βl

m −1 die unteren vicekennlinien der Ressourcen entlang des Verarbeitungspfads, dann l¨asst sich diekumulierte Servicekennlinieβldurch sukzessive Faltung berechnen:

Beispiel 8.2.10 Das Zeitbewertungsnetzwerk f¨ur die Entschl¨usselung eines

Daten-stroms auf dem Netzwerkprozessor in Abb 8.35 auf Seite 509 ist in Abb 8.40 zu

Trang 11

sehen Die runden Knoten bezeichnen dabei Quellen bzw Senken von und Servicekennlinien, d h sie modellieren die Umgebung des Systems So wirdbeispielsweise die Ankunftsrate von Paketen beschr¨ankt Die Rechtecke bezeichnendie Transformation der Ankunfts- und Servicekennlinien entsprechend Abb 8.38.Man beachte, dass im Echtzeitkalk¨ul Kommunikation genauso wie Berechnungenauf Prozessoren behandelt wird.

Abb 8.40 Zeitbewertungsnetzwerk f¨ur den Netzwerkprozessor aus Abb 8.35 [429]

Modulare Zeitanalyse zyklischer markierter Graphen

In Abschnitt 6.5.2 wurde eine formale Methode zur Zeitanalyse von sitiven Systemen vorgestellt Das zentrale Ergebnis war, dass sich solche Systemeals markierte Graphen modellieren lassen (siehe Abb 6.82 auf Seite 356) Da Im-plementierungen mit beschr¨anktem Speicher auskommen m¨ussen, wurden FIFO-Kan¨ale mit beschr¨ankter Kapazit¨at durch zus¨atzliche r¨uckw¨arts gerichtete Kanten

Trang 12

latenzinsen-mit Anfangsmarkierung modelliert Dadurch wurden Ressourcenbeschr¨ankungen f¨urdie Kan¨ale ber¨ucksichtigt Ressourcenbeschr¨ankungen f¨ur die Aktoren wurden durchSelbstschleifen mit einer einzelnen Anfangsmarke modelliert, wodurch ein Aktorstets erst nach Beendigung einer Berechnung die n¨achste Berechnung starten kann.Aktoren sind in diesem Modell dediziert gebunden, d h jeder Aktor entspricht ei-ner Hardware-Komponente In diesem Abschnitt wird beschrieben, wie die modu-lare Zeitanalyse f¨ur Systeme, bei denen mehrere Aktoren auf die selben Hardware-Komponente gebunden sein k¨onnen, angewendet werden kann.

Modellierung markierter Graphen

Gegeben sei ein markierter Graph G = (A,C,M0) mit Aktoren a ∈ A, Kan¨alen

c ∈ C ⊆ A × A und der Anfangsmarkierung M0: C → R ≥0 Man beachte, dass dieMarkierung eines Kanals kontinuierlich sein kann Dies schließt selbstverst¨andlichden Fall ein, dass Marken diskret sein k¨onnen Ein Aktor verarbeitet einen Strom aus

Marken, der als Ereignisstrom modelliert wird.

Die Anzahl zu verarbeitender Marken, die in einem Kanal(v i,v j) gespeichert

wurden, wird als sog Ankunftsfunktion r i j) : T → R ≥0modelliert Diese weist dem Zeitpunktτ∈ T die Anzahl an Marken zu, die im Zeitintervall [0,τ) an dem

je-Kanal (v i,v j) angekommen sind Dies entspricht der Anzahl produzierter ver Daten eines Aktors in einem latenzinsensitiven System (siehe Gleichung (6.26))

informati-Die Anfangsmarkierung des Kanals ergibt sich zu r i j (0) := M0(v i,v j)

F¨ur einen Aktor a i ∈ A lassen sich die Ankunftsfunktionen der Eingangskan¨ale

Das zeitliche Verhalten eines Aktors a i l¨asst sich als Abbildung der

Ankunfts-funktionen der Eingangskan¨ale r i inauf die Ankunftsfunktionen der Ausgangskan¨ale

r i in ≥ ˜r in

i gilt, dassπi ◦ r in

i ≥πi ◦ ˜r in

i Ohne Ressourcenbeschr¨ankungen bei selbstplanender Ausf¨uhrung der Aktoren

gilt, dass die Anzahl der produzierten Marken eines Aktors a iauf jedem kanal gleich dem Minimum der auf seinen Eingangskan¨alen verarbeitbaren Markenist (siehe auch Gleichung (6.28) auf Seite 354):

Trang 13

Die Ankunftsfunktionen der Ausgangskan¨ale eines Aktors a istellen f¨ur andere

Aktoren oder a i selbst Ankunftsfunktionen f¨ur Eingangskan¨ale dar Aufgrund derFIFO-Semantik der Kan¨ale in markierten Graphen m¨ussen die Ankunftsfunktionen

um die Anfangsmarkierung verschoben werden Dies kann durch die Sprungfunktion

ρji) f¨ur einen Kanal (v j,vi) dargestellt werden:

ρji(τ) :=



0 falls τ≤ 0

M0(v j,vi) falls τ> 0 Damit kann der Zusammenhang zwischen der Ankunftsfunktion r out

ji (τ) auf einem

Ausgangskanal eines Aktors a j und der Ankunftsfunktion r in ji(τ) f¨ur den selben

Ka-nal beim lesenden Aktor a ihergestellt werden:

r in ji) := r out

ji (τ) +ρji(τ) (8.17)Gleichungen (8.16) und (8.17) lassen sich zu einem Gleichungssystem zusammen-fassen (siehe auch Gleichung (6.30) auf Seite 354):

d h dass Marken fr¨uhestens einen kurzen Zeitschrittδ> 0, nachdem sie produziert

worden sind, einen folgenden Aktor aktivieren k¨onnen Liegen keine schr¨ankungen vor, kann der maximale Durchsatz des markierten Graphen auf Ba-sis von Max-Plus-Algebra bestimmt werden (siehe Abschnitt 6.5.2) Der Fixpunktcharakterisiert den Eigenwert der MatrixΠ und damit den Durchsatz Beschr¨ankteKanalkapazit¨aten k¨onnen durch R¨uckkanten modelliert werden

Ressourcenbe-Modellierung von Ressourcenbeschr¨ankungen

Um zu modellieren, dass die Ausf¨uhrung eines Aktors a igen unterliegt, muss die Abbildungsfunktionπiangepasst werden [432] Hierzu wird

Ressourcenbeschr¨ankun-angenommen, dass der Aktor a iauf einer Ressource ausgef¨uhrt wird, die durch eine

sog Servicefunktion c) beschrieben wird Dabei beschreibt c(τ) ∈ R ≥0die zahl an Aktorfeuerungen, welche die Ressource in dem Zeitintervall[0,τ) ausf¨uhren

An-kann, wobei c(0) := 0 ist

Die Verwendung von Servicefunktionen erlaubt eine Modellierung beliebigerRessourcenbeschr¨ankungen und Ablaufplanungsstrategien Das Kommunikations-

verhalten eines Aktors a i mit einem Aktor k bei selbstplanender Ausf¨uhrung kann

unter Ber¨ucksichtigung von Ressourcenbeschr¨ankungen mit der folgenden funktion beschrieben werden:

Transfer-r ik out(τ) := inf

0λτ{ min (v j ,v i)∈ C {r in

ji)} + c(τ) − c(λ)} (8.19)

Trang 14

Gleichung (8.19) kann dann wie folgt interpretiert werden [432]: In einem vall[λ,τ) k¨onnen c(τ)−c(λ) Aktorfeuerungen ausgef¨uhrt werden, sofern gen¨ugend

Inter-Marken am Eingang verf¨ugbar sind, d h r out ik) ≤ r out

Eingangs-r ik out) ≤ min (v j ,v i)∈ C{r in

ji)} + c(τ) − c(λ)

Nun gibt es einen Zeitpunkt λ∗ wo zum letzten Mal galt, dass r out

ik) =min(v j ,v i)∈ C{r in

ji∗ )} ist Dieser Zeitpunkt kann entwederλ= 0,λ=τ oder einZeitpunkt dazwischen sein Nach diesem Zeitpunkt λ ist die Ressource perma-nent mit der Ausf¨uhrung des Aktors a i ausgelastet Es gilt: r ik out) = r out

ik) +

c) − c(λ) = min(vj ,v i)∈ C {r in

ji∗ )} + c(τ) − c(λ) Genau diesesλwird mit der

Infimum-Operation bestimmt, die in der Transferfunktion in Gleichung (8.19) geben ist

ange-Beispiel 8.2.11 Gegeben ist der markierte Graph in Abb 8.41 mit drei Aktoren der Aktor a i wird auf einer Ressource mit der Servicefunktion c i(τ) ausgef¨uhrt DieTransferfunktionen f¨ur den markierten Graph ergeben sich unter Verwendung vonGleichung (8.19) und (8.17) dann zu:

Trang 15

Die verbleibende Servicefunktion c ) nachdem ein Aktor a iausgef¨uhrt wurde,ergibt sich zu:

c ) := c(τ) − min

(v j ,v i)∈ C {r in

Abstraktion der Servicefunktion

Um die Zeitanalyse effizient durchf¨uhren zu k¨onnen, m¨ussen sowohl die funktionen als auch die Ankunftsfunktionen abstrahiert werden Zun¨achst werdendie Servicefunktionen durch untere und obere Schranken begrenzt Diese Schran-

Service-ken werden als ServiceService-kennlinien (siehe Definition 8.2.2 auf Seite 510) bezeichnet.

Dabei wird von dem Zeitbereich in den Zeitintervallbereich gewechselt

Unter Verwendung von Servicekennlinienβl

ji)} +βu

iλ)}

r out ik) ≥ inf

0λτ{ min (v j ,v i)∈ C {r in

ji)} +βl

iλ)}

Unter Verwendung des Operators a ⊕ b := min{a,b} und des Operators a(τ) ⊗

b(τ) := inf0λτ{a(λ) − b(τλ)} erh¨alt man:

Ngày đăng: 02/07/2014, 14:20