Precise timing analysis for direct-mapped caches

Size: px
Start display at page:

Download "Precise timing analysis for direct-mapped caches"

Transcription

1 Preise timing nlysis for diret-mpped hes Sidhrt Andlm, Roopk Sinh, Prth Roop, Alin Girult, Jn Reineke To ite this version: Sidhrt Andlm, Roopk Sinh, Prth Roop, Alin Girult, Jn Reineke. Preise timing nlysis for diret-mpped hes. Design Automton Conferene, DAC, Jun 23, Austin, TX, United Sttes. ACM, 23, <.45/ >. <hl > HAL Id: hl Sumitted on Jul 23 HAL is multi-disiplinry open ess rhive for the deposit nd dissemintion of sientifi reserh douments, whether they re pulished or not. The douments my ome from tehing nd reserh institutions in Frne or rod, or from puli or privte reserh enters. L rhive ouverte pluridisiplinire HAL, est destinée u dépôt et à l diffusion de douments sientifiques de niveu reherhe, puliés ou non, émnnt des étlissements d enseignement et de reherhe frnçis ou étrngers, des lortoires pulis ou privés.

2 Preise Timing Anlysis for Diret-Mpped Ches ABSTRACT Sidhrt Andlm TUM CREATE, Singpore Alin Girult INRIA - Grenole, Frne lin.girult@inri.fr Sfety-ritil systems require gurntees on their worst-se exeution times. This requires modelling of speultive hrdwre fetures suh s hes tht re tilored to improve the verge-se performne, while ignoring the worst se, whih omplites the Worst Cse Exeution Time (WCET) nlysis prolem. Existing pprohes tht preisely ompute WCET suffer from stte-spe explosion. In this pper, we present novel he nlysis tehnique for diret-mpped instrution hes with the sme preision s the most preise tehniques, while improving nlysis time y up to 24 times. This improvement is hieved y nlysing individul ontrol points seprtely, nd rrying out optimistions tht re not possile with existing tehniques. Ctegories nd Sujet Desriptors: B.3.3 [Performne Anlysis nd Design Aids]: Worst-se nlysis Generl Terms: Verifition, Algorithms Keywords: Instrution, Diret-Mpped, Che Anlysis.. INTRODUCTION Hrd rel-time systems require urte gurntees on the funtionlity s well s the timing hrteristis of progrms. Trditionl speultive rhiteturl fetures suh s multilevel hes nd deep pipelines render the worst-se exeution. Two types of memory rhitetures re used in rel-time systems: speilized ompiler ssisted hes, lled srthpds [2], nd (widely ville) onventionl hes [3, 9, ]. This rtile fouses on the stti nlysis [2] for preditle diret-mpped instrution hes [9, ], where lotions in min memory re mpped to unique he lines. Che nlysis involves omputing the numer of he misses tht n hppen in the instrution he t speifi ontrol points in progrm. The progrm is usully trnslted to ontrol flow grph (CFG) [9], whih ontins ontrol points s its nodes. Anlytilly, the he nlysis prolem oils down to sttilly determining ll possile he sttes (nd therefore the numer of misses in the worst se) t eh node using suitle fixed point omputtion. While numer of he nlysis pprohes exist [, 9], some re not slle (ut more preise) while others overestimte he misses (ut re more slle). In onrete tehniques like [9], ll possile he sttes re enumerted expliitly t eh ontrol point, nd very preise results n Roopk Sinh, Prth Roop University of Auklnd, New Zelnd {r.sinh,p.roop}@uklnd..nz Jn Reineke Srlnd University- Srrüken, Germny reineke@s.uni-srlnd.de e otined. However, these tehniques suffer from stteexplosion, nd do not sle for lrge progrms. In [8], proilisti pproh for modelling he ehviour is presented, whih is used for design-spe explortion to redue overll nlysis time y exploiting the struturl similrities mong relted he onfigurtions. In [7], the ide of he onflit grphs is introdued where he lines re nlysed one t time. This pproh is more slle thn onrete pprohes, ut loses preision s ny reltions etween he lines re strted out. On the other hnd, strt tehniques like [, ] ollpse multiple possile he sttes t every ontrol point into single strt he stte. This strtion llows the lgorithm to reh fixed point muh fster, nd hene lrger progrms n e nlysed, ut t the ost of srifiing preision. In this rtile, we present novel he nlysis tehnique for diret-mpped hes tht mintins the sme preision s the onrete tehniques while signifintly improving slility (for lrge enhmrks, nlysis time is less thn 2 minutes, insted of 2 hours s in [9]). This improvement is hieved y nlysing individul ontrol points t one, pturing nd ggregting instrutions in reltive mnner, nd rrying out ertin optimistions tht re not possile in other tehniques. The key ontriution of this pper is new lgorithm for stti nlysis tht offers the sme preision s the most preise lgorithms while eing extremely slle in omprison. It lso ompres very fvourly with strtion-sed nlysis tehniques with respet to nlysis time. This pper is orgnised s follows. The he nlysis prolem is formlized in Se. 2. In Se. 3 we present the proposed pproh. Qulittive nd quntittive omprison with the onrete nd strt pprohes is presented in Setions 4 nd 5 respetively. Finlly, onlusions re presented in Se. 6. The Appendix further illustrtes key spets of the proposed lgorithm with dditionl experimentl results to demonstrte its dvntges. Also, in Appendix E, we disuss how the proposed pproh for diret-mpped hes n e extended to set-ssoitive hes, whih re lso widely used in preditle systems [3]. 2. THE CACHE ANALYSIS PROBLEM Our nlytil he model is sed on the model of [9], nd is defined elow. To improve redility, we represent the terms si loks nd memory loks s loks nd instrutions, respetively. Permission to mke digitl or hrd opies of ll or prt of this work for personl or lssroom use is grnted without fee provided tht opies re not mde or distriuted for profit or ommeril dvntge nd tht opies er this notie nd the full ittion on the first pge. To opy otherwise, to repulish, to post on servers or to redistriute to lists, requires prior speifi permission nd/or fee. DAC 3, My 29 - June 7 23, Austin, TX, USA. Copyright 23 ACM /3/5...$5. Definition (Che model). The he model for given progrm is defined s tuple CM = I, C, CI, G, BI, where I is finite set of instrutions in the progrm, C = {,,..., N } is n ordered set of he lines with N = C s the totl numer of he lines, nd CI : C 2 I is the diret-mpping funtion.

3 Also, G is direted grph G = B, init, E where B is finite set of si loks with init B s the initil lok, nd E B B is the set of edges. Finlly, BI : B (I { }) N is the lok to instrution mpping funtion, where represents no instrution. B4: m3 m4 B3: m B5: m2 B: m m2 m3 m4 B2: m5 B9: m8 B6: m2 m3 m4 : m3 m4 m6 : m6 m7 m8 () A ontrol flow grph (CFG) Figure : Che Inst. line m,m5 m2,m6 2 m3,m7 3 m4,m8 () Mpping of instrutions to he lines An exmple he model Figure shows the he model of smple progrm. It presents CFG in Figure (), whih ontins 9 loks (B = {B,..., B9}) with B s the initil lok. Eh lok exeutes one or more instrutions. The CFG hs 8 instrutions (I = {m,..., m8}) tht re mpped to 4 he lines (C = {,, 2, 3}), s presented in Figure (). Eh he line hs two unique instrutions mpped to it (e.g., CI( ) = {m, m5}). An instrution n e mpped only to unique he line, representing diret-mpped he. A he line, t ny time, n ontin only one of the instrutions tht re mpped to it (or is empty). The edges desrie progrm flow (sequentil nd rnhing) etween the ontrol points of the given progrm. We use the short-hnd B B2 to desrie CFG edges suh s (B, B2) E.. Eh lok lso ontins instrutions (from I) tht it exeutes using the mpping funtion BI. For exmple, B ontins four instrutions m, m2, m3 nd m4. We restrit the model suh tht loks n ontin t most one instrution mpped to ny he line (s per CI), whih llows us to represent the lok to instrution mpping using vetor indexed y C. E.g., BI(B) = [m, m2, m3, m4], with BI(B)[] = m desriing the instrution mpped to he line. If lok does not ontin n instrution mpped to he line i, then BI()[i] = (e.g., BI(B2)[] = ). The ontents of the he t ny time during the progrm exeution is lled he stte, nd is represented s vetor s = [inst,..., inst N ] where eh inst i represents the instrution ontined in he line i C. When exeution egins, we ssume tht there is no instrution (represented y ) in eh he line. The he is ssumed to e empty. For the exmple presented of Fig., the empty he stte is represented y s = [,,, ]. During exeution, or trversl of the CFG, instrutions re loded into the he s the si loks re exeuted (strting from the initil lok). E.g., fter exeuting the instrutions in B the he stte is s = [m, m2, m3, m4]. In this exmple, s is rehing he stte of B, while s is leving he stte of B. Sine ll 4 instrutions needed y B were not present in s, we sy tht there were 4 he misses. Given ny rehing he stte s of lok, we n ompute the numer of he misses y ompring the instrutions in s nd BI(). E.g., given rehing he stte s = [m, m2, m3, m4] of lok B2 (with BI(B2) = [m5,,, ]), there is single miss on he line euse the instrution m5 needed y the lok (s per BI()[] = m5) is not present in the he stte (s[] = m). It is generlly possile for lok to hve multiple rehing he stte. Here, we ompute the worst-se miss ount wm s the mximum numer of he misses possile, s defined elow. Definition 2 (The Che Anlysis Prolem). Given he model CM, the he nlysis prolem is the omputtion of the numer of worst se he misses (wm ), for ll si loks B, long ll possile exeutions. 3. PROPOSED APPROACH Our pproh for the stti nlysis of diret-mpped hes is sed on the intuition tht nlysing single si lok ref of the CFG t time llows us to () redue the numer of loks needed to ompute the worst nd est se miss ounts for ref, nd (more importntly), () we n strt he sttes omputed during the fixed point lgorithm w.r.t. the instrutions exeuted y ref. This my signifintly redue the numer of possile he sttes nd onsequently redue nlysis time. We use Fig. to illustrte these enefits. First priniple: During the nlysis of lok ref =, sine does not exeute ny instrution on he line (BI()[] = ), we n ignore lok B2 s the exeution of B2 n only ffet the he line. We ll B2 vuous lok euse it does not interfere with ny of the he lines used y, nd it n e removed when nlysing. Seond priniple: During the nlysis of lok ref =, the instrutions ontined in nother lok, sy B, n e strted suh tht they only refer to their effet on the nlysis of. Given tht BI() = [, m6, m3, m4] nd BI(B) = [m, m2, m3, m4], the instrutions in B n e strted s the vetor [,,, ]. Here, the first element mens tht the instrution is not of interest s the referene lok does not use this he line (BI()[] = ). The seond element mens tht for he line, the instrution in B is different from the instrution in (BI(B)[] = m2 m6 = BI()[]). Finlly, for the third nd the fourth elements mens tht for he line 2, the instrution in B is the sme s the instrution in (BI()[2] = m3 = BI(B)[2]). Also, when there is no instrution on he line i in lok the strt representtion is. The ility of reduing the numer of instrutions ( I ) in the CFG to just four reltive instrutions (,,, ) signifintly redues the memory foot print nd nlysis time, without srifiing preision. This is key optimiztion tht enles us to propose slle nlysis tehnique without srifiing preision. Alg. presents n overview of our pproh. Eh lok in the CFG is nlysed individully (desried using the for-loop on lines 5). For eh referene lok ref in B, on line 2, we first redue the CFG y removing the vuous loks nd then ompute the reltive instrutions w.r.t. ref. Next, on line 3, fixed point lgorithm is used to ompute ll possile he sttes of the referene lok. Finlly, on line 4, the numer of he misses in the worst se re omputed. We now present the detils of eh of these steps.

4 Algorithm Overview of the proposed pproh Input: A he model CM = I, C, CI, G, BI. Output: Compute the worst miss ount (wm) for ll si loks. : for eh ref B do 2: {Redued CFG, ompute reltive instrutions (Se. 3.)} (G r, BI r ) = Redue(CM, ref ) 3: {Compute rehing reltive he sttes (Setion 3.2.3)} RCS r ref = F P (CM, G r, BI r ) 4: {Compute he misses in the worst-se (Setion 3.3)} wm ref = MAXm(RCS r ref ) 5: end for 6: return wm for ll loks in B {Solution for the he nlysis prolem (Definition 2)} 3. CFG Redution Alg. 2 presents the pseudoode of the Redue lgorithm tht returns redued grph G r from given CFG G. Given G nd referene lok ref, we first represent the instrutions in eh lok w.r.t. the referene lok, nd then remove ny vuous loks. Line initilizes G r s opy of G. Then, for eh lok in G r, nd eh he line i, reltive lok to instrutions mpping BI r is reted (lines 2 7). Depending on whether the instrution originlly ontined in (in G) is of no-interest to the referene lok (line 3), different (line 4) or identil (line 5) to the instrution ontined in the referene loks, or is equl to (line 6). Algorithm 2 Redue: Redue the CFG nd strt inst. Input: Che model CM = I, C, CI, G, BI nd referene lok ref B. Output: G r = B r, init, E r nd BI r : B r ({,,, }) N : Initilize G r s opy of G with BI r () = for ll B r. 2: for eh B r nd for eh i C do 3: BI r ()[i] =, if (BI( ref )[i] = ){not of interest} 4: BI r ()[i] =, if (BI( ref )[i] BI()[i]) {different} 5: BI r ()[i] =, if (BI( ref )[i] = BI()[i]) {identil} 6: BI r ()[i] =, if (BI r ()[i] BI()[i] = ){no inst.} 7: end for 8: for eh B r do 9: if (BI() ({, }) N ) ( init) {hek for ll vuous loks, exluding initil lok} then : Remove from B r, nd djust E r : end if 2: end for Next, on lines 8, loks for whih the mpping funtion BI r returns or for every element of the vetor BI r () re delred s vuous nd re removed from the grph. The removl of vuous lok r involves djusting the edges E r of the grph G r suh tht eh predeessor of r now hs diret edge to eh of the suessors of r. More detils nd the full Redue Algorithm pper in Appendix A. Fig. 2 shows the redued CFG returned y the lgorithm Redue when ref =. Note tht the vuous lok B2 is removed from G r. Also, every lok now ontins the reltive instrutions. 3.2 Fixed point Computtion 3.2. Reltive he sttes Sine lok to instrutions mpping is desried using reltive instrutions, we lso ompute he sttes in reltive fshion. A reltive he stte is defined s follows. Definition 3 (Reltive he stte). A reltive he stte s r is vetor [inst r,..., inst r N ], where eh element inst r i {,,,, }. The set of ll possile reltive he sttes is denoted s CS r. Eh reltive instrution inst r i of reltive he stte s r = [inst r,..., inst r N ] is desried w.r.t. the instrution (BI( ref ) B4: B5: m2 3 B: m m2 B6: m2 B9 3 m8 : m m2 : m6 2 m7 3 m8 Figure 2: The redued grph G r otined from the Redue lgorithm, with the referene lok ref =. [i], i [, C ]) in the referene lok ref for the he line i C. inst r i = or inst r i = mens the instrution in the he is different or identil respetively to the instrution exeuted in the referene lok ref. E.g., given BI( ref )[i] = m, inst r i = or inst r i = mens the instrution on he i is not m or m respetively. inst r i = mens tht he line i is empty, wheres inst r i = mens tht the he hs n unknown instrution. Finlly, inst r i = mens tht the instrution on this he line is not of interest during the nlysis of ref. Also, reltive he stte efore exeuting lok is know s rehing reltive he stte of. Similrly, reltive he stte fter exeuting lok is know s leving reltive he stte of. More detils out reltive he sttes re presented in Appendix B The Trnsfer Funtion An importnt opertion in the fixed point omputtion is the trnsformtion of rehing reltive he stte into leving reltive he stte. This trnsformtion, lled the trnsfer funtion T : CS r B CS r, is illustrted s follows. s r BI r () T s r 2 s r =[,,, ] BI r () =[,,, ] T (s r, ) = sr 2 =[,,, ] For ny he line i, the instrution s r 2[i] in the leving reltive he stte is equl to BI r ()[i] only if there is n instrution in lok (BI r ()[i] = or BI r ()[i] = ). Otherwise, the instrution s r 2[i] is the sme s the instrution s r [i] in the rehing he stte. For the ove exmple, given BI r () = [,,, ] nd s r = [,,, ], fter exeution of lok, s r 2 = [,,, ]. For he lines nd 3, lok exeutes instrutions tht relte to the referene lok, nd for he lines nd 2, its does not exeute ny relevnt instrutions. Therefore, the ontents of the leving he sttes re updted to e the sme s the instrutions exeuted y the lok on he lines nd 3, nd remin the sme s the rehing he stte for he lines nd Fixed point omputtion Alg. 3 shows the fixed point lgorithm F P used to ompute ll possile rehing reltive he sttes for the referened lok in the redued grph G r. We illustrte the fixed point omputtion using T., whih shows the possile rehing nd leving reltive he sttes of eh lok in the redued grph (Fig. 2) in every itertion of F P. During initiliztion, the rehing he stte of the initil lok is set to s r (line 2) euse the he is onsidered

5 empty initilly. For every other lok, on line 2, the initil rehing he stte is unknown (s r ). As shown in T., The initil rehing reltive he stte of the initil lok B is set to s r = {[,,, ]}, while for every other lok, the initil rehing reltive he stte is s r = {[,,, ]} (itertion, olumn 3, T. ). Algorithm 3 F P : Fixed point omputtion Input: A he model CM = I, C, CI, G, BI, redued grph G r = B r, init, E r nd BI r : B r ({,,, }) N. Output: Rehing reltive he sttes of lok ref (RCS r ). ref : Crete initil he stte s r where for every i C, sr [i] = if BI r ( ref ) =, or s r [i] = otherwise. 2: RCS r = {s r init }, nd RCSr = {s r } for ll other Br. 3: i = 4: repet 5: for eh B r do 6: LCS ri = T (RCS ri, ) 7: end for 8: i = i + ; {Next itertion} 9: for eh B r do : if = init then : RCS ri = {s r init } ( LCS ri (, ) E r ) 2: else 3: RCS ri 4: end if 5: end for 6: until B r, RCS ri 7: return RCS r ref = LCS ri (, ) E r = RCS ri {Termintion ondition} Tle : Computing ll possile rehing reltive he sttes of the referene lok ref (). Itr. Blok Rehing Reltive Leving Reltive Che (i) () Che Sttes (RCS i ) Sttes (LCS i ) B {[,,, ]} {[,,, ]} B4 {[,,, ]} {[,,, ]} B5 {[,,, ]} {[,,, ]} B6 {[,,, ]} {[,,, ]} {[,,, ]} {[,,, ]} {[,,, ]} {[,,, ]} B9 {[,,, ]} {[,,, ]} 2 B {[,,, ]} {[,,, ]} B4 {[,,, ], [,,, ]} {[,,, ], [,,, ]} B5 {[,,, ], [,,, ]} {[,,, ], [,,, ]} B6 {[,,, ], [,,, ]} {[,,, ]} {[,,, ], [,,, ]} {[,,, ]} {[,,, ], [,,, ]} {[,,, ]} B9 {[,,, ], [,,, ]} {[,,, ], [,,, ]} B {[,,, ]} B4 {[,,, ], [,,, ], [,,, ]} B5 {[,,, ], [,,, ], [,,, ], [,,, ]} B6 {[,,, ], [,,, ], [,,, ]} {[,,, ], [,,, ], [,,, ]} {[,,, ],[,,, ]} B9 {[,,, ], [,,, ], [,,, ]} The repet-until loop (lines 4 6) is the fixed point itertion. In eh itertion i, eh rehing reltive he stte ontined in the set RCS ri for every lok is trnsformed into leving reltive he stte (in set LCS ri ) y pplying the trnsfer funtion (lines 5 7). E.g., for lok B in itertion, given the only rehing reltive he stte [,,, ], the orresponding leving reltive he stte is T ([,,, ], B) = {[,,, ]} (see T. ). Then we ompute, the rehing reltive he sttes of eh lok for the next itertion. For eh lok, the set of rehing reltive he sttes is the union of the sets of the leving reltive he sttes of ll of its predeessors (line 3). For init, the dditionl rehing he stte s r is lso dded to this set (line ). E.g., the predeessors of B4 re B nd B9 (see Fig. 2). Hene, their sets of leving he sttes (resp. {[,,, ]} nd {[,,, ]}) for itertion re ggregted together to form the rehing he stte of B4 in itertion 2. The itertions ontinue until the fixed point is rehed, i.e., when two onseutive itertions yield the sme sets of rehing reltive he sttes for ll loks (line 35). For the redued CFG shown in Fig. 2, the fixed point is rehed in the 5 th itertion. Also during the fixed point, s n optimistion, reltive he stte s r k is dropped if there exists s r j suh tht, if for ll he lines ( i), when the reltive instrution in s r j is the sme s the instrution in s r k (s r j[i] = s r k[i]) or, the reltive instrution in s r j ptures he miss (s r j[i] = ). E.g., given four possile rehing he sttes {[,,, ], [,,, ], [,,, ], [,,, ]}, we n sfely ignore the first two he sttes, euse the third stte ptures the worst se ehviour. However, we must still rry the lst stte, resulting in the redued set {[,,, ], [,,, ]}. 3.3 Computing the numer of he misses The finl step in the he nlysis lgorithm is the omputtion of the numer of he misses in the worst se. This is done y nlysing the reltive he sttes of the referene lok ref s omputed y the fixed point lgorithm. For eh rehing he stte s r = [inst r,..., inst r N ], nd for every he line i C, inst i = represents he miss on i. The totl numer of misses when the rehing he stte s r is the numer of s ontined in s r. The rehing he sttes with the highest numer of s orrespond to the worst-se miss ounts of ref respetively. E.g., s shown in T., the two rehing he sttes of the referene lok s omputed y the fixed point lgorithm F B re {[,,, ] nd [,,, ]}. The first rehing he stte hs one ourrene of while the seond one hs two ourrenes of. Thus, the mximum miss ount for is 2, i.e., wm = QUALITATIVE COMPARISON T. 2 provides qulittive omprison etween the onrete [9], strt [4], nd the proposed pprohes. Figure 3 illustrtes the si lok of the CFG shown in Fig. 2 with its two predeessors B6 nd. We use this exmple to show the differenes in the wys the three pprohes represent nd ggregte he sttes. Tle 2: Qulittive omprison of the three pprohes. App.Fixed Pre-Time Optimistion Mx no. of s point ision t eh pro- -grm point Con.ll loks high slow none (I/N) N As. ll loks low fst merge he sttes onstnt Pro. one lok high med. () redue grph (3) N t time (2) redue he lines (3) reltive instrutions In the onrete pproh [9], he stte (s) is desried s vetor [inst,..., inst N ] where eh inst i represents single instrution ontined in he line i C or is empty ( ), i.e., inst i CI( i) { }. E.g., the sets of leving he sttes for B6 nd re {[m5, m2, m3, m4]} nd {[m5, m6, m7, m8]} respetively (see Fig. 3()). The set of rehing he sttes of is the union of these sets, s shown in Fig. 3(). This set represents the ft there re only two sttes in whih the he n e efore is exeuted. In the strt pproh [4], he stte is desried s vetor [set,..., set N ] where eh set i represents set of instrutions tht must e ontined in he line i C. Tht is, set i CI( i) { }.. E.g., the strt leving he sttes for B6 nd re [{m5}, {m2}, {m3}, {m4}] nd [{m5}, {m6}, {m7}, {m8}] respetively (see Fig. 3()). For

6 B6 {[m5,m2,m3,m4]} {[m5,m6,m7,m8]} {[m5,m2,m3,m4], [m5,m6,m7,m8]} () Conrete pproh [9] Figure 3: B6 [{m5},{m2},{m3},{m4}] eh of these strt he sttes, eh he line ontins preisely one instrution. Hene, these two strt he sttes re equivlent to the onrete he sttes [m5, m2, m3, m4] nd [m5, m6, m7, m8] shown in Fig. 3(). Next, the strt rehing he stte of is the pir-wise intersetion over the vetor elements of the ove strt he sttes, giving [{m5}, { }, { }, { }] (see Fig. 3()). A he line i, with n empty set represents ny instrution (tht is mpped to i, CI( i)) or no instrution. E.g., the empty set on he line, represents three possile sttes {m2, m6, }. Similrly, [{m5}, { }, { }, { }] represents [{m5}, {m2, m6, }, {m3, m7, }, {m4, m8, }]. This strt rehing he stte represents 27 possile onrete he sttes, whih re omputed using ross produt s: {m5} {m2, m6, } {m3, m7, } {m4, m8, } ={[m5, m2, m3, m4], [m5, m2, m3, m8], [m5, m2, m7, m4], [m5, m2, m7, m8],...} While two of these possile onrete sttes [m5, m2, m3, m4] nd [m5, m6, m7, m8] re vlid (s disussed ove), mny others, suh s [m5, m6, m3, m4], re not rehle euse instrutions m6 nd m3 nnot e loded into the he y ny one of the predeessor loks of. As the ove exmple shows, the strt pproh my lose preision due to joins, whih my introdue non-rehle he sttes. Yet, the fixed point lgorithm onverges fster for the sme reson. Finlly, in the proposed pproh, he sttes re reltive to the instrutions of the referene lok. As shown in Fig. 3(), the rehing reltive he sttes of re omputed y tking union of the predeessor s leving reltive he sttes, {[,,, ]}, {[,,, ]}}, s shown in Fig. 3(). The reltive he stte representtion llows us to optimize performne without srifiing preision. E.g., s shown in Fig. 3(), one of the rehing reltive he stte of is {[,,, ]}. It represents 6 possile onrete he sttes, whih re omputed using ross produt s: {[,,, ]} ={, m, m5} {, m2} {m3} {m4} ={[,, m3, m4], [, m2, m3, m4], [m,, m3, m4], [m, m2, m3, m4], [m5,, m3, m4], [m5, m2, m3, m4]} Thus, the trnsltion results in 6 onrete he sttes. However, the extr sttes, unlike in the strt pproh, do not effet the preision of the nlysis. Tle 3: Compring the he sttes nd WCET estimtes etween the three pprohes s we nlyse lok. App. he stte wm (Worst) Conrete {[m5, m2, m3, m4], [m5, m6, m3, m4]} 2 Astrt [{m5}, {m2, m6}, {m3, m7}, {m4, m8}] 3 Proposed {[ ], [ ]} 2 Comprison of the preision: By nlysing the rehing he sttes of, we n ompute wm nd ompre the preision mong the three pprohes. We present this omprison using Tle 3. For lok (BI() = [, m6, m3, m4]), given the set of possile rehing he sttes for eh pproh (in olumn 2), the WCET estimte (wm) is presented in olumn 3. We note tht the onrete pproh hs higher preision (smller WCET), ompred the [{m5},{m6},{m7},{m8}] [{m5},{ },{ },{ }] () Astrt pproh [4] Illustrtion of the omining he sttes. B6 {[,,, ]} {[,,, ]} {[,,, ], [,,, ]} () Proposed pproh strt pproh. Also, the proposed pproh mintins this high preision. The optimised use of reltive he sttes is only possile in the proposed pproh euse it nlyses one lok t one. Both the onrete nd strt pprohes nlyse ll loks in the CFG together. Comprison of the omplexity: The time omplexity of eh of the three pprohes depends on the numer of loks in the CFG, the omplexity of the merging nd equivlene opertions, nd the mximum numer of he sttes tht n e reted (or the height of the lttie). The numer of loks of the CFG is fixed t B, while we ssume tht the merging nd equivlene opertions etween he sttes n e performed in O(N) times (N is the numer of he lines). Therefore, the omplexities re of the form O( B N HeightOfLttie). To ompute the height of the lttie, we ssume tht eh he line hs n equl shre I /N (I is the set of instrutions) of instrutions mpped to it, nd tht I nd N re suffiiently lrge so tht we n ignore the presene of nd in the omputed he sttes. For the onrete pproh, there re ( I /N ) N possile rehing he sttes. Hene the omplexity of the pproh is O( B N ( I /N ) N ). For the strt pproh, euse of the point-wise intersetion opertion used to merge he sttes for every he line, the height of the lttie is onstnt t for single he line, or N for ll he lines. The omplexity of this pproh is therefore O( B N 2 ). Finlly, for the proposed pproh, eh he line hs preisely 5 reltive instrutions {,,,, } mpped to it. However, rell tht if he line hs ssigned to it, it mens the he line is not used (nd hene nnot ontin ny other instrution during the nlysis). Similrly, is used only for the initil node. The numer of he sttes possile (over N he lines) in our pproh is therefore 3 N. The omplexity of our pproh is therefore O( B N 3 N ) for one ll to the fixed point lgorithm. Given tht we repet this proess B times (one for every lok), nd tht the CFG redution opertion is liner to the size of the CFG (gin, B ), the omplexity of our pproh is therefore O( B 3 N 3 N ). As n e seen ove, the omplexity of the strt pproh is signifintly lower thn the onrete pproh s well s our pproh. Also, the omplexity of the proposed pproh does not depend on the numer of instrutions in the progrm, whih helps us hieve muh etter performne thn the onrete pproh, s disussed in the next setion. 5. BENCHMARKING AND RESULTS We ompre the preision nd nlysis time of the onrete, strt, nd proposed pprohes over set of enhmrks onsisting of five ontrol pplitions from [6]. In ddition, we reted two exmples: BuleSort progrm nd Syntheti exmple. The enhmrking results re presented in T. 4. The first olumn presents the exmples followed y their desription (olumn 2). The numer of C lines of the progrm nd its memory footprint is presented in olumns 3 nd 4 respetively. The lrgest exmples re CruiseController

7 nd RilRodCrossing, with more thn 4 lines of ode. Eh progrm is ompiled to exeute on the MiroBlze (MB) proessor []. We hoose MB due to the vilility of timing nlysis tools [5]. The CFG for eh exmple is extrted utomtilly from its ompiled inry, nd eh loop of the CFG is unrolled one for more preise he nlysis [4]. For MiroBlze with 64 MB min memory, the size of the he n e onfigured from 28 ytes to 64 KB []. Using these proportions, in our experiments we explore he sizes etween.% nd % of the progrm s size. Tle 4: Benhmrk progrms nd their hrteristis. Exmple Desription LOC Size BuleSort (BS) Bule sort lgorithm 28 2KB Syntheti (SY) Brnhing nd loops 8 4KB Flsher (FL) Distriuted lights 384 9KB DrillSttion (DS) Drilling sttion 8 62KB ConvBelt (CB) Airport onveyor elt 28 44KB RilRodCros. (RR) Ril rod nt KB CruiseCntroler (CC) Cruise ontrol model KB For the first two exmples (BS, SY), the WCET estimtes from the proposed pproh ws identil to tht of the onrete pproh (see Tle 5 in Appendix D). However, for the rest of the exmples, the onrete pproh filed to terminte (nlysis time is more thn 2 hours, represented using T.O in Tle 5). Thus, we only fous on ompring etween the proposed nd the strt pprohes. For he size of % of the progrm size, normlised WCET estimtes w.r.t. the results from the strt pproh re presented in Figure 4(). Aross ll the enhmrks, we oserve tht the WCET omputed y the proposed pproh is lwys less thn or equl to the estimtes from the strt pproh. On verge, the WCET estimte from the proposed pproh is 5% smller thn the strt pproh. For.% reltive he size, the WCET nlysis results re presented in Figure 4(). Here, the proposed pproh does not gin extr preision (w.r.t. the strt pproh), euse the he size is too smll. In terms of nlysis time, the proposed pproh lwys tkes less thn 3 minutes for eh exmple, whih is signifintly fster thn the onrete pproh. However, the strt pproh is even muh fster (lwys tkes less thn 4 seonds) thn the proposed pproh. For the lrgest exmple (RR), the proposed pproh tkes 42 seonds ompred to the 4 seonds tken y the strt pproh, ut the WCET estimte is tighter y 9% ( 25725/3855). Finlly, Fig. 5 shows the WCET vs nlysis time for the ontrol pplitions (lst 5 enhmrks). Sine the onrete pproh filed to terminte, its WCET is represented y the WCET of the proposed pproh (sine oth yield identil results). On verge, ompred to the strt pproh, the WCET from the proposed pproh is 6% tighter. For the nlysis time, the proposed pproh lwys ompletes in less thn 3 minutes, ompred to the timeout fter 2 hours for the onrete pproh. In Appendix D, we explore eight other he sizes etween.2% nd.9%. For the RilRodCrossing exmple, on verge ross the eight he sizes, the WCET of proposed pproh gives 6 % muh tighter results on verge, nd up to 9 % tighter result thn the strt pproh. 6. CONCLUSIONS We proposed new he nlysis pproh for preise nlysis of instrutions in diret-mpped hes. The proposed pproh presents new strtion, nd ompred to the onrete pproh it signifintly redues the nlysis time without srifiing the preision. This is unlike the onrete strt proposed () % reltive he size ().% reltive he size Figure 4: Compring the WCET estimtes (the smller the etter) of the strt nd proposed pprohes Timeout Anlysis time in seonds strt proposed onrete WCET w.r.t. the strt pproh strt proposed Avg. onrete = + 2 hours Avg. proposed = 6 se Avg. strt = 2 se Figure 5: Compring WCET nd nlysis time for the lst five exmples (% reltive he size) or the strt pprohes, where slility or preision must e srified. Overll, the proposed pproh enles preise nd effiient WCET nlysis even for lrger progrms. In the future, we will e extending our pproh for nlysing set ssoitive hes nd design spe explortion of hes. 7. REFERENCES [] MiroBlze Proessor Referene Guide. (Lst essed: //22). [2] D. Bui, E. Lee, I. Liu, H. Ptel, nd J. Reineke. Temporl isoltion on multiproessing rhitetures. In Pro. of DAC, pges , Sn Diego, Cliforni, June 2. [3] H. Ding, Y. Ling, nd T. Mitr. WCET-entri prtil instrution he loking. In Pro. of DAC 2, pges 42 42, Sn Frniso, Cliforni, June 22. [4] C. Ferdinnd, F. Mrtin, R. Wilhelm, nd M. Alt. Che Behvior Predition y Astrt Interprettion. Siene of Computer Progrmming, 35:63 89, Novemer 999. [5] M. Kuo, R. Sinh, nd P. S. Roop. Effiient WCRT Anlysis of Synhronous Progrms using Rehility. In Pro. of DAC, Sn Diego, USA, June 2. [6] M. Kuo, L. H. Yoong, S. Andlm, nd P. Roop. Determining the worst-se retion time of IEC 6499 funtion loks. In Pro. INDIN, pges 4 9, July 2. [7] Y.-T. S. Li, S. Mlik, nd A. Wolfe. Performne estimtion of emedded softwre with instrution he modeling. ACM Trns. Des. Autom. Eletron. Syst., 4(3): , July 999. [8] Y. Ling nd T. Mitr. Stti nlysis for fst nd urte design spe explortion of hes. In Pro. of CODES+ISSS 8, pges 3 8, Atlnt, GA, USA, 28. [9] H. S. Negi, T. Mitr, nd A. Royhoudhury. Aurte Estimtion of Che-Relted Preemption Dely. In Pro. of CODES+ISSS 3, pges 2 26, CA, USA, 23. [] J. Reineke, D. Grund, C. Berg, nd R. Wilhelm. Timing preditility of he replement poliies. Rel-Time Systems, 37(2):99 22, Novemer 27. [] H. Theiling, C. Ferdinnd, nd R. Wilhelm. Fst nd Preise WCET Predition y Seprted Che nd Pth Anlyses. Rel-Time Systems, 8:57 79, 999. [2] R. Wilhelm et l. The Worst-Cse Exeution-Time Prolem Overview of Methods nd Survey of Tools. Trnstions on Emedded Computing Systems, 7(3): 53, 28.

8 APPENDIX A. REDUCING THE CFG AND COMPUTING RELATIVE INSTRUCTIONS Given he model CM = I, C, CI, G, BI nd the referene lok ref B, the ojetive of the lgorithm is: () to ompute new redued grph G r = B r, init, E r whih ontins only these loks tht re relevnt for the nlysis of lok ref (desried erlier in Exmple ) nd, (2) to ompute the funtion BI r whih desries the reltive instrutions exeuted y the loks in B r w.r.t. ref, referred s the reltive instrution mpping funtion (desried erlier in Exmple 2). The lgorithm ontins the following three steps. Step : Initilise (lines 2 to 4) On line 2, we initilise G r to hve the sme ontent s G, i.e., sme set of loks (B r = B), initil lok ( init), edges (E r = E). On lines 3 to 4, we initilise the funtion BI r suh tht it does not ontin ny reltive instrutions for ny lok. For the exmple CFG (presented in Figure ()), the grph G r is presented in Figure 6(). Algorithm 4 Redue: Redue the CFG nd ompute reltive instrutions Input: Che model CM = I, C, CI, G, BI nd referene lok ref B. Output: G r = B r, init, E r nd BI r : B r ({,,, }) N : {Step : Initilise} 2: B r = B, E r = E, G r = B r, init, E r {Copy ll loks nd edges} 3: for eh B r do 4: BI r ( ) = {Initilise the vetor BI r ( )} 5: end for 6: {Step 2: Reltive instrution mpping} 7: for eh B r do 8: for eh i C do 9: if (BI( ref )[i] = ){not of interest} then : BI r ( )[i] = : end if 2: if (BI( ref )[i] BI( )[i]) {different instrution} then 3: BI r ( )[i] = 4: end if 5: if (BI( ref )[i] = BI( )[i]){sme instrution} then 6: BI r ( )[i] = 7: end if 8: if (BI( )[i] = ){no instrution} then 9: BI r ( )[i] = 2: end if 2: end for 22: end for 23: {Step 3: Remove vuous loks nd updte edges} 24: for eh B r do 25: if (BI( ) ({, }) N ) ( init) {hek for ll vuous loks, exluding initil lok} then 26: {Compute predeessors nd suessors of } 27: P reds = { 2 2 E r } 28: Su = { 2 2 E r } 29: {Remove inoming nd outgoing edges of } 3: for eh 2 P reds do 3: E r = E r \ { 2 32: } end for 33: for eh 2 Su do 34: E r = E r \ { 2 35: } end for 36: {Add new edge from eh predeessor to eh suessor } 37: for eh p P reds do 38: for eh s Su do 39: E r = E r { p s } 4: end for 4: end for 42: B r = B r \ { } {Remove lok } 43: end if 44: end for Step 2: Reltive instrution mpping (lines 7 to 22) Given referene lok ref B nd he line i, the instrution of ny loks B r n e expressed s different () when BI( )[i] BI( ref )[i] (heked on line 2), or sme () when BI( )[i] = BI( ref )[i] (heked on line 5), or no instrution ( ) when there is no instrution in on he line i, BI( )[i] = (heked on line 8), or not of interest ( ) when there is no instrution in ref on he line i, BI( ref )[i] = (heked on line 9). This reltion is ptured using the reltive instrution mpping BI r ( ). For illustrtion, refer to Exmple 2 in Setion 3. For the grph G r in Figure 6(), the reltive mpping (w.r.t. ) for every lok is shown in Figure 6(). Note tht for ll loks in B r, if the referene lok ( ref ) does not hve n instrution on he line i (BI( ref )[i] = ), then for he line i, the reltive instrution for ll loks is (BI r ()[i] = ). This shows tht during the nlysis of ref, the he line i is not onsidered. For exmple, in Figure 6(), the referene lok does not hve n instrution on he line (BI()[] = ). Thus, for he line, the reltive instrution for ll loks is (BI r ()[i] = ). Step 3: Remove vuous loks nd updte edges ( lines 24 to 2). As desried in Exmple, we n remove vuous loks whih do not ffet the preision of the referene lok ref. We define lok B r to e vuous, if BI r ( ) ({, }) N. This hek is done on line 25. It is possile for the initil lok ( init) to e vuous. However, if the initil lok hs more thn one suessors, removing the initil lok my result in multiple initil loks. Thus, to simplify the nlysis, we do not remove the initil lok even when it is vuous (line 25). If lok is vuous, we first ompute the predeessors (line 27) nd the suessors (line 28) of. Seondly, we remove the inoming edges to from eh predeessor lok (on lines 3 to 32) nd, we remove the outgoing edges from to eh suessor lok (on lines 33 to 35). Thirdly, we rete trnsition from eh predeessor to eh suessor of. This is hieved using the nested loop on lines 37 to 4. Finlly, on line 42, the vuous lok is removed. For the grph shown in Figure 6(), loks B2 nd B3 do not ontin ny reltive instrutions (BI r (B2) = [,,, ] nd BI r (B3) == [,,, ], thus, they re removed for the grph nd the updted grph G r is presented in Figure 6(). This is the redued grph G r (w.r.t. to ref = ). B. RELATIVE CACHE STATES We desrie the ontents of he using the notion of reltive he sttes. It is desried s vetor [inst r, inst r,..., inst r N ], where eh element inst r i is desried w.r.t. the instrution (BI( ref )[i]) in the lok ref. Definition 4 (Reltive he stte). Given referene lok ref, reltive he stte s r ({,,,, }) N, is vetor [inst r, inst r,..., inst r N ], where eh element inst r i {,,,, }. Also, the set of ll possile reltive he sttes (w.r.t ref ) is denoted s CS r. Before we illustrte reltive he sttes, we introdue two key terms essentil to he nlysis. For ny si lok, the rehing reltive he sttes represent the set of reltive he sttes prior to the exeution of si lok nd the reltive leving he sttes represent the set of he sttes

9 B4 2 m3 3 m4 B3 m 2 3 B5 m2 2 3 B m m2 2 m3 3 m4 B2 m5 2 3 B9 2 3 m8 B6 m2 2 m3 3 m4 m6 2 m7 3 m8 m6 2 m3 3 m4 () Grph G r fter step B4 B3 m 3 B5 m2 3 B m m2 B2 m5 3 B9 3 m8 B6 m2 m6 m6 2 m7 3 m8 () Grph G ref fter step 2, given ref = B4: B5: m2 3 B: m m2 B6: m2 B9 3 m8 : m6 2 m7 3 m8 : m m2 () Grph G ref fter step 3, given ref = (redued grph). fter the exeution of the si lok. We denote the rehing reltive he sttes of si lok s RCS r nd the reltive leving he sttes of si lok s LCS r. B. Illustrtion 2 3 B r 2 3 Figure 7: 2 3 r 2 3 B6 r Figure 6: Illustrtion of Algorithm 4 with ref =. r B9 r Illustrtion of the reltive he sttes. A frgment of the redued grph (Figure 6()) is presented in Figure 7. Using this grph we illustrte reltive rehing nd leving he sttes of lok. Given the referene lok ref = with BI( ref ) = [, m6, m3, m4] nd the reltive instrution mpping of eh lok (desried y the funtion BI r ), we illustrte the reltive he stte s we strt exeuting the initil lok B. Initilly, the he is empty nd the referene lok does not hve n instrution on he line (BI r ( ref )[] = ). Thus the instrution on he line is not of interest ( ) resulting in the initil he stte of [,,, ], denoted s s r. Note this initil he stte is unlike the onrete pproh, where the initil stte is represented using the vetor [,,, ]. In our pproh, given the referene lok ref (in this se ref = ), we re only interested in the he line, 2, 3. Thus, we ignore the he stte w.r.t he line, s it does not ffet the preision of the referene lok. Also, y ignoring, llows for memory effiient implementtion. In this se, the reltive he stte n e represented using vetor with only three elements, insted of four elements, sving 25% of memory. After exeution of lok B, where the reltive instrutions re desried y BI r (B) = [,,, ], he lines, 2, 3 will ontin reltive instrutions,,. Hene fter B exeutes, the reltive he stte s r = [,,, ]. Here, s r [] = represents the instrution on he line is not of interest. s r [] = represents tht the instrution in the he is not m6, euse BI( ref )[] = m6. s r [2] = represents tht the instrution in the he is m3, euse BI( ref )[2] = m3. Similrly, s r [3] = represents the instrution in the he is m4 (BI( ref )[3] = m4). The reltive he stte s r is the stte of the he prior to the exeution of the si lok B. Thus, RCSB r = {[,,, ]} is the set of rehing reltive he sttes of lok B. Similrly, LCSB r = {[,,, ]} is the set of reltive leving he sttes of lok B. Now, the ontrol rehes rnh due to whih, it is possile to exeute either lok B6 or lok. In this se, RCSB6 r = LCSB r = RCS. r After exeuting loks B6 (or ), the stte of the he is [,,, ] (or [,,, ]). Blok hs two inoming edges: from loks B6 nd. To ompute RCS, r we need to join LCSB6 r nd LCS. r In this se, the join funtion is union over the set of reltive he sttes. Thus, RCS r = LCSB6 r LCS, r resulting in RCS r = {[,,, ], [,,, ]}. C. COMPUTING ALL POSSIBLE REACHING RELATIVE CACHE STATES OF THE REF- ERENCE BLOCK The first step for he nlysis involves the omputtion of ll possile rehing reltive he sttes of ref (RCS r ref ), using the fixed point omputtion lgorithm presented in Algorithm 5. As illustrted in Figure 7, the initil stte of the he is empty(s r ), nd is sed on the instrutions of the referene lok. Similrly, like the onrete nd the strt p-

10 prohes, we must lso introdue the unknown he stte (s r ), whih is explined lter during this lgorithm. In generl, the empty/unknown he stte is different for eh ref B. Thus, for given referene lok ref, we first ompute the empty he stte s r, nd unknown he stte s r on lines 2 to 8. For eh he line i, if the referene lok ref does not hve n instrution (in this se, BI r ( ref ) = ), then the he stte on i is not of interest during the nlysis of the referene lok ref. Thus, the reltive instrution on he line i of s r nd s r is set to (line 4). Otherwise (BI r ( ref ) ), on line 6, for he line i, the empty he stte is set to e (s r [i] = ), nd the unknown he stte is set to e (s r [i] = ). Using reltive he sttes s r nd s r, we initilise the rehing reltive he sttes for ll loks (lines to 7). Sine we ssume tht initilly the stte of the he is empty, on line 3 for the initil lok init we set its rehing s RCS r init = {s r }. Here, the nottion RCS ri represents the rehing reltive he sttes of lok in itertion i. E.g., RCS r init represents the rehing reltive he sttes of lok init for itertion. For rest of the loks, the initil stte of the he is unknown. Thus, on line 5, we set their rehing he sttes s {s r }. After initilistion, we ompute the reltive leving he sttes of eh lok, on lines 9 to 22. We pply the trnsfer funtion(t ) to every lok nd its orresponding rehing reltive he sttes. The itertion index (i) is inremented (line 23) to signl the strt of the next itertion. Next, on lines 25 to 34, the rehing reltive he sttes of eh lok re omputed. For the initil lok init, we know tht the rehing reltive he stte is lwys empty. Thus, on line 27, we lwys set its rehing s RCS ri init = {s }. For rest of the loks, we first initilise the rehing reltive he stte s empty set (line 29), nd on lines 3 to 32, the rehing he sttes re omputed y looking t the reltive leving he sttes of the predeessors ( ) of the lok nd using the union opertion. The itertive proess, repet-until loop on lines 8 to 35, is repeted until fixed point is rehed, i.e., if two onseutive itertions hve the sme sets of rehing reltive he sttes for ll loks (line 35). D. RESULTS strt proposed onrete Gin Exmple WCET ATWCET ATWCET AT(ol5/ (lks)(se) (lks)(se) (lks)(se) ol2) BuleSort Syntheti Flsher T.O T.O 2 DrillSttion T.O T.O 6 ConvBeltModel T.O T.O 5 RilRodCrossing T.O T.O CruiseController T.O T.O Algorithm 5 F P : Fixed point omputtion for the proposed pproh Input: A he model CM = I, C, CI, G, BI, redued grph G r = B r, init, E r nd BI r : B r ({,,, }) N. Output: Rehing reltive he sttes of lok ref (RCS r ref ). : {Initilise s r nd sr } 2: for eh i C do 3: if BI r ( ref )[i] = then 4: s r [i] =, sr [i] = {When ref hs no instrution (in this se, BI r ( ref ) = ) on he line i, initilise empty/unknown he sttes s not of interest.} 5: else 6: s r [i] =, sr [i] = {When ref hs n instrution on he line i, initilise empty/unknown he sttes s /.} 7: end if 8: end for 9: i = {itertion ounter} : {Initilise RCS r for ll loks } : for eh B do 2: if = init then 3: RCS r = {s r init } {for the initil lok, the initil stte of 4: the he is lwys empty} else 5: RCS r the he is unknown} 6: end if 7: end for = {s r } {for rest of the loks, the initil stte of 8: repet 9: {Compute LCS r for ll loks} 2: for eh B r do 2: LCS ri 22: end for = T (RCS ri, ) 23: i = i + ; {Next itertion} 24: {Compute RCS r for the next itertion i + } 25: for eh B r do 26: if = init then 27: RCS ri = {s r init } 28: else 29: RCS ri = 3: for eh LCS ri, where (, ) E r do 3: RCS ri 32: end for 33: end if 34: end for = RCS ri 35: until B r, RCS ri 36: return RCS r ref LCSri = RCS ri {Termintion ondition} we oserve tht the WCET estimtes from the proposed pproh is lwys less thn or equl to the estimtes from the strt pproh. With % reltive he size, on verge, the WCET of proposed pproh gives 3 % muh tighter results nd upto 9% tighter result thn the strt pproh. Tle 5: Quntittive omprison etween the strt, proposed nd onrete pprohes The WCET nd the nlysis time for strt is presented in olumns 2 nd 3 respetively of Tle 5. Similrly, the following olumns present results for the proposed nd onrete pprohes. Finl olumn presents the WCET estimte of the proposed pproh w.r.t. the strt pproh. The proposed pproh is tighter y 3% on verge, nd up to 9% tighter thn the strt pproh. Using the he size etween.2% nd.9% of the progrm size, for eh exmple, the WCET nlysis results re presented in Figures 8() 8(h). Aross ll the enhmrks,

11 Astrt Astrt Astrt Astrt ().2% reltive he size ().3% reltive he size ().4% reltive he size (d).5% reltive he size Astrt Astrt Astrt Astrt (e).6% reltive he size (f).7% reltive he size (g) % reltive he size (h).9% reltive he size Figure 8: Compring the WCET of the strt nd proposed pprohes etween.2% nd.9% reltive he sizes B B2 B3 B B2 B3 B B2 B3 new old d e f new old {} {} {} {d} {} {} {} {e} {} {} {} {f} new old new old f e f new { } {} {, } old { } new old B4 () onrete pproh B4 () strt pproh B4 () extending the proposed pproh Figure 9: Extending nd ompring the proposed pproh to set ssoitive hes E. EXTENDING OUR APPROACH TO SET ASSOCIATIVE CACHES The proposed pproh n esily e extended for timing nlysis of set ssoitive hes. For 4 wy set ssoitive he with the lest reently used replement (LRU) poliy [3], omprison of the join opertion etween the onrete nd strt pprohes is presented in Figure 2 of [3]. Using this ext exmple, we reprodue Figures 9() nd 9(). Here, lok B4 hs three predeessor loks (B, B2 nd B3). The stk(s) next to the trnsitions represent the stte of the he, for eh he line. The order represents the history, the reent instrution is on top of the stk, nd the lest reent instrution is t the ottom of the stk. For the onrete pproh (Fig. 9()), the rehing he sttes of B4 re omputed s the union of ll the leving he sttes of the predeessor loks, resulting in three he sttes. This is very preise, ut will not sle for lrge progrms. In the se of the strt pproh (Fig. 9()), the instrutions re omined sed on the upper ound of its ge. E.g., for the leving he sttes of B, B2 nd B3, instrution resides on top (first), top (first) nd seond positions, respetively. Sine, the upper ge ound (oldest) is the seond position, the join funtion strts the ge of instrution s seond position. Similrly, instrution nd re omputed s third position. In ontrt, instrution d, only exists in the leving he stte of B, nd not in B2 nd B3. In this se, we nnot gurntee its presene, so it is removed from the stk. Similrly, instrutions e nd f re removed during the join opertion. This strtion, improves slility, ut lks preision. For the proposed pproh (Fig. 9()), the instrutions in the he re presented w.r.t. the instrutions of the referene lok, if identil, or otherwise. E.g., let us ssume tht instrutions,, d re strted s, nd, e, f re strted s. This strtion is similr to the ide of reltive he sttes presented erlier in Se One gin, the join opertion performs the union over the rehing reltive he sttes, mintining oth preision nd slility. Sine the join opertions of eh pproh is similr to their ounter prts in diret-mpped nlysis, we elieve the omplexity of the three pprohes my e similr to T. 2. Also, the WCET nd the nlysis time my reflet the trends seen in Figures 4 nd 5.

Algorithms & Data Structures Homework 8 HS 18 Exercise Class (Room & TA): Submitted by: Peer Feedback by: Points:

Algorithms & Data Structures Homework 8 HS 18 Exercise Class (Room & TA): Submitted by: Peer Feedback by: Points: Eidgenössishe Tehnishe Hohshule Zürih Eole polytehnique fédérle de Zurih Politenio federle di Zurigo Federl Institute of Tehnology t Zurih Deprtement of Computer Siene. Novemer 0 Mrkus Püshel, Dvid Steurer

More information

CS 573 Automata Theory and Formal Languages

CS 573 Automata Theory and Formal Languages Non-determinism Automt Theory nd Forml Lnguges Professor Leslie Lnder Leture # 3 Septemer 6, 2 To hieve our gol, we need the onept of Non-deterministi Finite Automton with -moves (NFA) An NFA is tuple

More information

Chapter 4 State-Space Planning

Chapter 4 State-Space Planning Leture slides for Automted Plnning: Theory nd Prtie Chpter 4 Stte-Spe Plnning Dn S. Nu CMSC 722, AI Plnning University of Mrylnd, Spring 2008 1 Motivtion Nerly ll plnning proedures re serh proedures Different

More information

System Validation (IN4387) November 2, 2012, 14:00-17:00

System Validation (IN4387) November 2, 2012, 14:00-17:00 System Vlidtion (IN4387) Novemer 2, 2012, 14:00-17:00 Importnt Notes. The exmintion omprises 5 question in 4 pges. Give omplete explntion nd do not onfine yourself to giving the finl nswer. Good luk! Exerise

More information

Nondeterministic Automata vs Deterministic Automata

Nondeterministic Automata vs Deterministic Automata Nondeterministi Automt vs Deterministi Automt We lerned tht NFA is onvenient model for showing the reltionships mong regulr grmmrs, FA, nd regulr expressions, nd designing them. However, we know tht n

More information

NON-DETERMINISTIC FSA

NON-DETERMINISTIC FSA Tw o types of non-determinism: NON-DETERMINISTIC FS () Multiple strt-sttes; strt-sttes S Q. The lnguge L(M) ={x:x tkes M from some strt-stte to some finl-stte nd ll of x is proessed}. The string x = is

More information

1 PYTHAGORAS THEOREM 1. Given a right angled triangle, the square of the hypotenuse is equal to the sum of the squares of the other two sides.

1 PYTHAGORAS THEOREM 1. Given a right angled triangle, the square of the hypotenuse is equal to the sum of the squares of the other two sides. 1 PYTHAGORAS THEOREM 1 1 Pythgors Theorem In this setion we will present geometri proof of the fmous theorem of Pythgors. Given right ngled tringle, the squre of the hypotenuse is equl to the sum of the

More information

Project 6: Minigoals Towards Simplifying and Rewriting Expressions

Project 6: Minigoals Towards Simplifying and Rewriting Expressions MAT 51 Wldis Projet 6: Minigols Towrds Simplifying nd Rewriting Expressions The distriutive property nd like terms You hve proly lerned in previous lsses out dding like terms ut one prolem with the wy

More information

Lecture Notes No. 10

Lecture Notes No. 10 2.6 System Identifition, Estimtion, nd Lerning Leture otes o. Mrh 3, 26 6 Model Struture of Liner ime Invrint Systems 6. Model Struture In representing dynmil system, the first step is to find n pproprite

More information

Finite State Automata and Determinisation

Finite State Automata and Determinisation Finite Stte Automt nd Deterministion Tim Dworn Jnury, 2016 Lnguges fs nf re df Deterministion 2 Outline 1 Lnguges 2 Finite Stte Automt (fs) 3 Non-deterministi Finite Stte Automt (nf) 4 Regulr Expressions

More information

AP Calculus BC Chapter 8: Integration Techniques, L Hopital s Rule and Improper Integrals

AP Calculus BC Chapter 8: Integration Techniques, L Hopital s Rule and Improper Integrals AP Clulus BC Chpter 8: Integrtion Tehniques, L Hopitl s Rule nd Improper Integrls 8. Bsi Integrtion Rules In this setion we will review vrious integrtion strtegies. Strtegies: I. Seprte the integrnd into

More information

CS 491G Combinatorial Optimization Lecture Notes

CS 491G Combinatorial Optimization Lecture Notes CS 491G Comintoril Optimiztion Leture Notes Dvi Owen July 30, August 1 1 Mthings Figure 1: two possile mthings in simple grph. Definition 1 Given grph G = V, E, mthing is olletion of eges M suh tht e i,

More information

Algorithm Design and Analysis

Algorithm Design and Analysis Algorithm Design nd Anlysis LECTURE 5 Supplement Greedy Algorithms Cont d Minimizing lteness Ching (NOT overed in leture) Adm Smith 9/8/10 A. Smith; sed on slides y E. Demine, C. Leiserson, S. Rskhodnikov,

More information

8 THREE PHASE A.C. CIRCUITS

8 THREE PHASE A.C. CIRCUITS 8 THREE PHSE.. IRUITS The signls in hpter 7 were sinusoidl lternting voltges nd urrents of the so-lled single se type. n emf of suh type n e esily generted y rotting single loop of ondutor (or single winding),

More information

ANALYSIS AND MODELLING OF RAINFALL EVENTS

ANALYSIS AND MODELLING OF RAINFALL EVENTS Proeedings of the 14 th Interntionl Conferene on Environmentl Siene nd Tehnology Athens, Greee, 3-5 Septemer 215 ANALYSIS AND MODELLING OF RAINFALL EVENTS IOANNIDIS K., KARAGRIGORIOU A. nd LEKKAS D.F.

More information

Technische Universität München Winter term 2009/10 I7 Prof. J. Esparza / J. Křetínský / M. Luttenberger 11. Februar Solution

Technische Universität München Winter term 2009/10 I7 Prof. J. Esparza / J. Křetínský / M. Luttenberger 11. Februar Solution Tehnishe Universität Münhen Winter term 29/ I7 Prof. J. Esprz / J. Křetínský / M. Luttenerger. Ferur 2 Solution Automt nd Forml Lnguges Homework 2 Due 5..29. Exerise 2. Let A e the following finite utomton:

More information

Lecture 6: Coding theory

Lecture 6: Coding theory Leture 6: Coing theory Biology 429 Crl Bergstrom Ferury 4, 2008 Soures: This leture loosely follows Cover n Thoms Chpter 5 n Yeung Chpter 3. As usul, some of the text n equtions re tken iretly from those

More information

TIME AND STATE IN DISTRIBUTED SYSTEMS

TIME AND STATE IN DISTRIBUTED SYSTEMS Distriuted Systems Fö 5-1 Distriuted Systems Fö 5-2 TIME ND STTE IN DISTRIUTED SYSTEMS 1. Time in Distriuted Systems Time in Distriuted Systems euse eh mhine in distriuted system hs its own lok there is

More information

Matrices SCHOOL OF ENGINEERING & BUILT ENVIRONMENT. Mathematics (c) 1. Definition of a Matrix

Matrices SCHOOL OF ENGINEERING & BUILT ENVIRONMENT. Mathematics (c) 1. Definition of a Matrix tries Definition of tri mtri is regulr rry of numers enlosed inside rkets SCHOOL OF ENGINEERING & UIL ENVIRONEN Emple he following re ll mtries: ), ) 9, themtis ), d) tries Definition of tri Size of tri

More information

Algorithm Design and Analysis

Algorithm Design and Analysis Algorithm Design nd Anlysis LECTURE 8 Mx. lteness ont d Optiml Ching Adm Smith 9/12/2008 A. Smith; sed on slides y E. Demine, C. Leiserson, S. Rskhodnikov, K. Wyne Sheduling to Minimizing Lteness Minimizing

More information

22: Union Find. CS 473u - Algorithms - Spring April 14, We want to maintain a collection of sets, under the operations of:

22: Union Find. CS 473u - Algorithms - Spring April 14, We want to maintain a collection of sets, under the operations of: 22: Union Fin CS 473u - Algorithms - Spring 2005 April 14, 2005 1 Union-Fin We wnt to mintin olletion of sets, uner the opertions of: 1. MkeSet(x) - rete set tht ontins the single element x. 2. Fin(x)

More information

Counting Paths Between Vertices. Isomorphism of Graphs. Isomorphism of Graphs. Isomorphism of Graphs. Isomorphism of Graphs. Isomorphism of Graphs

Counting Paths Between Vertices. Isomorphism of Graphs. Isomorphism of Graphs. Isomorphism of Graphs. Isomorphism of Graphs. Isomorphism of Graphs Isomorphism of Grphs Definition The simple grphs G 1 = (V 1, E 1 ) n G = (V, E ) re isomorphi if there is ijetion (n oneto-one n onto funtion) f from V 1 to V with the property tht n re jent in G 1 if

More information

Nondeterministic Finite Automata

Nondeterministic Finite Automata Nondeterministi Finite utomt The Power of Guessing Tuesdy, Otoer 4, 2 Reding: Sipser.2 (first prt); Stoughton 3.3 3.5 S235 Lnguges nd utomt eprtment of omputer Siene Wellesley ollege Finite utomton (F)

More information

Precise and Efficient FIFO-Replacement Analysis Based on Static Phase Detection

Precise and Efficient FIFO-Replacement Analysis Based on Static Phase Detection Preise nd Effiient FIFO-Replement Anlysis Bsed on Stti Phse Detetion Dniel Grund Srlnd University, Srrüken, Germny Jn Reineke Srlnd University, Srrüken, Germny University of Cliforni, Berkeley, USA Astrt

More information

THE PYTHAGOREAN THEOREM

THE PYTHAGOREAN THEOREM THE PYTHAGOREAN THEOREM The Pythgoren Theorem is one of the most well-known nd widely used theorems in mthemtis. We will first look t n informl investigtion of the Pythgoren Theorem, nd then pply this

More information

I1 = I2 I1 = I2 + I3 I1 + I2 = I3 + I4 I 3

I1 = I2 I1 = I2 + I3 I1 + I2 = I3 + I4 I 3 2 The Prllel Circuit Electric Circuits: Figure 2- elow show ttery nd multiple resistors rrnged in prllel. Ech resistor receives portion of the current from the ttery sed on its resistnce. The split is

More information

Chapter 3. Vector Spaces. 3.1 Images and Image Arithmetic

Chapter 3. Vector Spaces. 3.1 Images and Image Arithmetic Chpter 3 Vetor Spes In Chpter 2, we sw tht the set of imges possessed numer of onvenient properties. It turns out tht ny set tht possesses similr onvenient properties n e nlyzed in similr wy. In liner

More information

Global alignment. Genome Rearrangements Finding preserved genes. Lecture 18

Global alignment. Genome Rearrangements Finding preserved genes. Lecture 18 Computt onl Biology Leture 18 Genome Rerrngements Finding preserved genes We hve seen before how to rerrnge genome to obtin nother one bsed on: Reversls Knowledge of preserved bloks (or genes) Now we re

More information

TOPIC: LINEAR ALGEBRA MATRICES

TOPIC: LINEAR ALGEBRA MATRICES Interntionl Blurete LECTUE NOTES for FUTHE MATHEMATICS Dr TOPIC: LINEA ALGEBA MATICES. DEFINITION OF A MATIX MATIX OPEATIONS.. THE DETEMINANT deta THE INVESE A -... SYSTEMS OF LINEA EQUATIONS. 8. THE AUGMENTED

More information

Petri Nets. Rebecca Albrecht. Seminar: Automata Theory Chair of Software Engeneering

Petri Nets. Rebecca Albrecht. Seminar: Automata Theory Chair of Software Engeneering Petri Nets Ree Alreht Seminr: Automt Theory Chir of Softwre Engeneering Overview 1. Motivtion: Why not just using finite utomt for everything? Wht re Petri Nets nd when do we use them? 2. Introdution:

More information

6.5 Improper integrals

6.5 Improper integrals Eerpt from "Clulus" 3 AoPS In. www.rtofprolemsolving.om 6.5. IMPROPER INTEGRALS 6.5 Improper integrls As we ve seen, we use the definite integrl R f to ompute the re of the region under the grph of y =

More information

Introduction to Olympiad Inequalities

Introduction to Olympiad Inequalities Introdution to Olympid Inequlities Edutionl Studies Progrm HSSP Msshusetts Institute of Tehnology Snj Simonovikj Spring 207 Contents Wrm up nd Am-Gm inequlity 2. Elementry inequlities......................

More information

The University of Nottingham SCHOOL OF COMPUTER SCIENCE A LEVEL 2 MODULE, SPRING SEMESTER MACHINES AND THEIR LANGUAGES ANSWERS

The University of Nottingham SCHOOL OF COMPUTER SCIENCE A LEVEL 2 MODULE, SPRING SEMESTER MACHINES AND THEIR LANGUAGES ANSWERS The University of ottinghm SCHOOL OF COMPUTR SCIC A LVL 2 MODUL, SPRIG SMSTR 2015 2016 MACHIS AD THIR LAGUAGS ASWRS Time llowed TWO hours Cndidtes my omplete the front over of their nswer ook nd sign their

More information

Linear Algebra Introduction

Linear Algebra Introduction Introdution Wht is Liner Alger out? Liner Alger is rnh of mthemtis whih emerged yers k nd ws one of the pioneer rnhes of mthemtis Though, initilly it strted with solving of the simple liner eqution x +

More information

A Lower Bound for the Length of a Partial Transversal in a Latin Square, Revised Version

A Lower Bound for the Length of a Partial Transversal in a Latin Square, Revised Version A Lower Bound for the Length of Prtil Trnsversl in Ltin Squre, Revised Version Pooy Htmi nd Peter W. Shor Deprtment of Mthemtil Sienes, Shrif University of Tehnology, P.O.Bo 11365-9415, Tehrn, Irn Deprtment

More information

Engr354: Digital Logic Circuits

Engr354: Digital Logic Circuits Engr354: Digitl Logi Ciruits Chpter 4: Logi Optimiztion Curtis Nelson Logi Optimiztion In hpter 4 you will lern out: Synthesis of logi funtions; Anlysis of logi iruits; Tehniques for deriving minimum-ost

More information

p-adic Egyptian Fractions

p-adic Egyptian Fractions p-adic Egyptin Frctions Contents 1 Introduction 1 2 Trditionl Egyptin Frctions nd Greedy Algorithm 2 3 Set-up 3 4 p-greedy Algorithm 5 5 p-egyptin Trditionl 10 6 Conclusion 1 Introduction An Egyptin frction

More information

Ling 3701H / Psych 3371H: Lecture Notes 9 Hierarchic Sequential Prediction

Ling 3701H / Psych 3371H: Lecture Notes 9 Hierarchic Sequential Prediction Ling 3701H / Psyh 3371H: Leture Notes 9 Hierrhi Sequentil Predition Contents 9.1 Complex events.................................... 1 9.2 Reognition of omplex events using event frgments................

More information

Lesson 2: The Pythagorean Theorem and Similar Triangles. A Brief Review of the Pythagorean Theorem.

Lesson 2: The Pythagorean Theorem and Similar Triangles. A Brief Review of the Pythagorean Theorem. 27 Lesson 2: The Pythgoren Theorem nd Similr Tringles A Brief Review of the Pythgoren Theorem. Rell tht n ngle whih mesures 90º is lled right ngle. If one of the ngles of tringle is right ngle, then we

More information

The DOACROSS statement

The DOACROSS statement The DOACROSS sttement Is prllel loop similr to DOALL, ut it llows prouer-onsumer type of synhroniztion. Synhroniztion is llowe from lower to higher itertions sine it is ssume tht lower itertions re selete

More information

Abstraction of Nondeterministic Automata Rong Su

Abstraction of Nondeterministic Automata Rong Su Astrtion of Nondeterministi Automt Rong Su My 6, 2010 TU/e Mehnil Engineering, Systems Engineering Group 1 Outline Motivtion Automton Astrtion Relevnt Properties Conlusions My 6, 2010 TU/e Mehnil Engineering,

More information

For a, b, c, d positive if a b and. ac bd. Reciprocal relations for a and b positive. If a > b then a ab > b. then

For a, b, c, d positive if a b and. ac bd. Reciprocal relations for a and b positive. If a > b then a ab > b. then Slrs-7.2-ADV-.7 Improper Definite Integrls 27.. D.dox Pge of Improper Definite Integrls Before we strt the min topi we present relevnt lger nd it review. See Appendix J for more lger review. Inequlities:

More information

Convert the NFA into DFA

Convert the NFA into DFA Convert the NF into F For ech NF we cn find F ccepting the sme lnguge. The numer of sttes of the F could e exponentil in the numer of sttes of the NF, ut in prctice this worst cse occurs rrely. lgorithm:

More information

CS 2204 DIGITAL LOGIC & STATE MACHINE DESIGN SPRING 2014

CS 2204 DIGITAL LOGIC & STATE MACHINE DESIGN SPRING 2014 S 224 DIGITAL LOGI & STATE MAHINE DESIGN SPRING 214 DUE : Mrh 27, 214 HOMEWORK III READ : Relte portions of hpters VII n VIII ASSIGNMENT : There re three questions. Solve ll homework n exm prolems s shown

More information

Learning Partially Observable Markov Models from First Passage Times

Learning Partially Observable Markov Models from First Passage Times Lerning Prtilly Oservle Mrkov s from First Pssge s Jérôme Cllut nd Pierre Dupont Europen Conferene on Mhine Lerning (ECML) 8 Septemer 7 Outline. FPT in models nd sequenes. Prtilly Oservle Mrkov s (POMMs).

More information

= state, a = reading and q j

= state, a = reading and q j 4 Finite Automt CHAPTER 2 Finite Automt (FA) (i) Derterministi Finite Automt (DFA) A DFA, M Q, q,, F, Where, Q = set of sttes (finite) q Q = the strt/initil stte = input lphet (finite) (use only those

More information

Discrete Structures Lecture 11

Discrete Structures Lecture 11 Introdution Good morning. In this setion we study funtions. A funtion is mpping from one set to nother set or, perhps, from one set to itself. We study the properties of funtions. A mpping my not e funtion.

More information

Unit 4. Combinational Circuits

Unit 4. Combinational Circuits Unit 4. Comintionl Ciruits Digitl Eletroni Ciruits (Ciruitos Eletrónios Digitles) E.T.S.I. Informáti Universidd de Sevill 5/10/2012 Jorge Jun 2010, 2011, 2012 You re free to opy, distriute

More information

A Study on the Properties of Rational Triangles

A Study on the Properties of Rational Triangles Interntionl Journl of Mthemtis Reserh. ISSN 0976-5840 Volume 6, Numer (04), pp. 8-9 Interntionl Reserh Pulition House http://www.irphouse.om Study on the Properties of Rtionl Tringles M. Q. lm, M.R. Hssn

More information

Computational Biology Lecture 18: Genome rearrangements, finding maximal matches Saad Mneimneh

Computational Biology Lecture 18: Genome rearrangements, finding maximal matches Saad Mneimneh Computtionl Biology Leture 8: Genome rerrngements, finding miml mthes Sd Mneimneh We hve seen how to rerrnge genome to otin nother one sed on reversls nd the knowledge of the preserved loks or genes. Now

More information

2.4 Theoretical Foundations

2.4 Theoretical Foundations 2 Progrmming Lnguge Syntx 2.4 Theoretil Fountions As note in the min text, snners n prsers re se on the finite utomt n pushown utomt tht form the ottom two levels of the Chomsky lnguge hierrhy. At eh level

More information

Linear choosability of graphs

Linear choosability of graphs Liner hoosility of grphs Louis Esperet, Mikel Montssier, André Rspud To ite this version: Louis Esperet, Mikel Montssier, André Rspud. Liner hoosility of grphs. Stefn Felsner. 2005 Europen Conferene on

More information

Logic Synthesis and Verification

Logic Synthesis and Verification Logi Synthesis nd Verifition SOPs nd Inompletely Speified Funtions Jie-Hong Rolnd Jing 江介宏 Deprtment of Eletril Engineering Ntionl Tiwn University Fll 2010 Reding: Logi Synthesis in Nutshell Setion 2 most

More information

CSE 332. Sorting. Data Abstractions. CSE 332: Data Abstractions. QuickSort Cutoff 1. Where We Are 2. Bounding The MAXIMUM Problem 4

CSE 332. Sorting. Data Abstractions. CSE 332: Data Abstractions. QuickSort Cutoff 1. Where We Are 2. Bounding The MAXIMUM Problem 4 Am Blnk Leture 13 Winter 2016 CSE 332 CSE 332: Dt Astrtions Sorting Dt Astrtions QuikSort Cutoff 1 Where We Are 2 For smll n, the reursion is wste. The onstnts on quik/merge sort re higher thn the ones

More information

CS 373, Spring Solutions to Mock midterm 1 (Based on first midterm in CS 273, Fall 2008.)

CS 373, Spring Solutions to Mock midterm 1 (Based on first midterm in CS 273, Fall 2008.) CS 373, Spring 29. Solutions to Mock midterm (sed on first midterm in CS 273, Fll 28.) Prolem : Short nswer (8 points) The nswers to these prolems should e short nd not complicted. () If n NF M ccepts

More information

Necessary and sucient conditions for some two. Abstract. Further we show that the necessary conditions for the existence of an OD(44 s 1 s 2 )

Necessary and sucient conditions for some two. Abstract. Further we show that the necessary conditions for the existence of an OD(44 s 1 s 2 ) Neessry n suient onitions for some two vrile orthogonl esigns in orer 44 C. Koukouvinos, M. Mitrouli y, n Jennifer Seerry z Deite to Professor Anne Penfol Street Astrt We give new lgorithm whih llows us

More information

12.4 Similarity in Right Triangles

12.4 Similarity in Right Triangles Nme lss Dte 12.4 Similrit in Right Tringles Essentil Question: How does the ltitude to the hpotenuse of right tringle help ou use similr right tringles to solve prolems? Eplore Identifing Similrit in Right

More information

Symmetrical Components 1

Symmetrical Components 1 Symmetril Components. Introdution These notes should e red together with Setion. of your text. When performing stedy-stte nlysis of high voltge trnsmission systems, we mke use of the per-phse equivlent

More information

Regular expressions, Finite Automata, transition graphs are all the same!!

Regular expressions, Finite Automata, transition graphs are all the same!! CSI 3104 /Winter 2011: Introduction to Forml Lnguges Chpter 7: Kleene s Theorem Chpter 7: Kleene s Theorem Regulr expressions, Finite Automt, trnsition grphs re ll the sme!! Dr. Neji Zgui CSI3104-W11 1

More information

CS311 Computational Structures Regular Languages and Regular Grammars. Lecture 6

CS311 Computational Structures Regular Languages and Regular Grammars. Lecture 6 CS311 Computtionl Strutures Regulr Lnguges nd Regulr Grmmrs Leture 6 1 Wht we know so fr: RLs re losed under produt, union nd * Every RL n e written s RE, nd every RE represents RL Every RL n e reognized

More information

Automatic Synthesis of New Behaviors from a Library of Available Behaviors

Automatic Synthesis of New Behaviors from a Library of Available Behaviors Automti Synthesis of New Behviors from Lirry of Aville Behviors Giuseppe De Giomo Università di Rom L Spienz, Rom, Itly degiomo@dis.unirom1.it Sestin Srdin RMIT University, Melourne, Austrli ssrdin@s.rmit.edu.u

More information

Part 4. Integration (with Proofs)

Part 4. Integration (with Proofs) Prt 4. Integrtion (with Proofs) 4.1 Definition Definition A prtition P of [, b] is finite set of points {x 0, x 1,..., x n } with = x 0 < x 1

More information

Part I: Study the theorem statement.

Part I: Study the theorem statement. Nme 1 Nme 2 Nme 3 A STUDY OF PYTHAGORAS THEOREM Instrutions: Together in groups of 2 or 3, fill out the following worksheet. You my lift nswers from the reding, or nswer on your own. Turn in one pket for

More information

y1 y2 DEMUX a b x1 x2 x3 x4 NETWORK s1 s2 z1 z2

y1 y2 DEMUX a b x1 x2 x3 x4 NETWORK s1 s2 z1 z2 BOOLEAN METHODS Giovnni De Miheli Stnford University Boolen methods Exploit Boolen properties. { Don't re onditions. Minimiztion of the lol funtions. Slower lgorithms, etter qulity results. Externl don't

More information

Arrow s Impossibility Theorem

Arrow s Impossibility Theorem Rep Voting Prdoxes Properties Arrow s Theorem Arrow s Impossiility Theorem Leture 12 Arrow s Impossiility Theorem Leture 12, Slide 1 Rep Voting Prdoxes Properties Arrow s Theorem Leture Overview 1 Rep

More information

Prefix-Free Regular-Expression Matching

Prefix-Free Regular-Expression Matching Prefix-Free Regulr-Expression Mthing Yo-Su Hn, Yjun Wng nd Derik Wood Deprtment of Computer Siene HKUST Prefix-Free Regulr-Expression Mthing p.1/15 Pttern Mthing Given pttern P nd text T, find ll sustrings

More information

Dorf, R.C., Wan, Z. T- Equivalent Networks The Electrical Engineering Handbook Ed. Richard C. Dorf Boca Raton: CRC Press LLC, 2000

Dorf, R.C., Wan, Z. T- Equivalent Networks The Electrical Engineering Handbook Ed. Richard C. Dorf Boca Raton: CRC Press LLC, 2000 orf, R.C., Wn,. T- Equivlent Networks The Eletril Engineering Hndook Ed. Rihrd C. orf Bo Rton: CRC Press LLC, 000 9 T P Equivlent Networks hen Wn University of Cliforni, vis Rihrd C. orf University of

More information

Section 1.3 Triangles

Section 1.3 Triangles Se 1.3 Tringles 21 Setion 1.3 Tringles LELING TRINGLE The line segments tht form tringle re lled the sides of the tringle. Eh pir of sides forms n ngle, lled n interior ngle, nd eh tringle hs three interior

More information

Test Generation from Timed Input Output Automata

Test Generation from Timed Input Output Automata Chpter 8 Test Genertion from Timed Input Output Automt The purpose of this hpter is to introdue tehniques for the genertion of test dt from models of softwre sed on vrints of timed utomt. The tests generted

More information

Types of Finite Automata. CMSC 330: Organization of Programming Languages. Comparing DFAs and NFAs. Comparing DFAs and NFAs (cont.) Finite Automata 2

Types of Finite Automata. CMSC 330: Organization of Programming Languages. Comparing DFAs and NFAs. Comparing DFAs and NFAs (cont.) Finite Automata 2 CMSC 330: Orgniztion of Progrmming Lnguges Finite Automt 2 Types of Finite Automt Deterministic Finite Automt () Exctly one sequence of steps for ech string All exmples so fr Nondeterministic Finite Automt

More information

Lecture 08: Feb. 08, 2019

Lecture 08: Feb. 08, 2019 4CS4-6:Theory of Computtion(Closure on Reg. Lngs., regex to NDFA, DFA to regex) Prof. K.R. Chowdhry Lecture 08: Fe. 08, 2019 : Professor of CS Disclimer: These notes hve not een sujected to the usul scrutiny

More information

Review of Gaussian Quadrature method

Review of Gaussian Quadrature method Review of Gussin Qudrture method Nsser M. Asi Spring 006 compiled on Sundy Decemer 1, 017 t 09:1 PM 1 The prolem To find numericl vlue for the integrl of rel vlued function of rel vrile over specific rnge

More information

Math 32B Discussion Session Week 8 Notes February 28 and March 2, f(b) f(a) = f (t)dt (1)

Math 32B Discussion Session Week 8 Notes February 28 and March 2, f(b) f(a) = f (t)dt (1) Green s Theorem Mth 3B isussion Session Week 8 Notes Februry 8 nd Mrh, 7 Very shortly fter you lerned how to integrte single-vrible funtions, you lerned the Fundmentl Theorem of lulus the wy most integrtion

More information

Line Integrals and Entire Functions

Line Integrals and Entire Functions Line Integrls nd Entire Funtions Defining n Integrl for omplex Vlued Funtions In the following setions, our min gol is to show tht every entire funtion n be represented s n everywhere onvergent power series

More information

Hyers-Ulam stability of Pielou logistic difference equation

Hyers-Ulam stability of Pielou logistic difference equation vilble online t wwwisr-publitionsom/jns J Nonliner Si ppl, 0 (207, 35 322 Reserh rtile Journl Homepge: wwwtjnsom - wwwisr-publitionsom/jns Hyers-Ulm stbility of Pielou logisti differene eqution Soon-Mo

More information

Types of Finite Automata. CMSC 330: Organization of Programming Languages. Comparing DFAs and NFAs. NFA for (a b)*abb.

Types of Finite Automata. CMSC 330: Organization of Programming Languages. Comparing DFAs and NFAs. NFA for (a b)*abb. CMSC 330: Orgniztion of Progrmming Lnguges Finite Automt 2 Types of Finite Automt Deterministic Finite Automt () Exctly one sequence of steps for ech string All exmples so fr Nondeterministic Finite Automt

More information

where the box contains a finite number of gates from the given collection. Examples of gates that are commonly used are the following: a b

where the box contains a finite number of gates from the given collection. Examples of gates that are commonly used are the following: a b CS 294-2 9/11/04 Quntum Ciruit Model, Solovy-Kitev Theorem, BQP Fll 2004 Leture 4 1 Quntum Ciruit Model 1.1 Clssil Ciruits - Universl Gte Sets A lssil iruit implements multi-output oolen funtion f : {0,1}

More information

INTEGRATION. 1 Integrals of Complex Valued functions of a REAL variable

INTEGRATION. 1 Integrals of Complex Valued functions of a REAL variable INTEGRATION NOTE: These notes re supposed to supplement Chpter 4 of the online textbook. 1 Integrls of Complex Vlued funtions of REAL vrible If I is n intervl in R (for exmple I = [, b] or I = (, b)) nd

More information

Behavior Composition in the Presence of Failure

Behavior Composition in the Presence of Failure Behvior Composition in the Presene of Filure Sestin Srdin RMIT University, Melourne, Austrli Fio Ptrizi & Giuseppe De Giomo Spienz Univ. Rom, Itly KR 08, Sept. 2008, Sydney Austrli Introdution There re

More information

Model Reduction of Finite State Machines by Contraction

Model Reduction of Finite State Machines by Contraction Model Reduction of Finite Stte Mchines y Contrction Alessndro Giu Dip. di Ingegneri Elettric ed Elettronic, Università di Cgliri, Pizz d Armi, 09123 Cgliri, Itly Phone: +39-070-675-5892 Fx: +39-070-675-5900

More information

Chapter 8 Roots and Radicals

Chapter 8 Roots and Radicals Chpter 8 Roots nd Rdils 7 ROOTS AND RADICALS 8 Figure 8. Grphene is n inredily strong nd flexile mteril mde from ron. It n lso ondut eletriity. Notie the hexgonl grid pttern. (redit: AlexnderAIUS / Wikimedi

More information

CMSC 330: Organization of Programming Languages

CMSC 330: Organization of Programming Languages CMSC 330: Orgniztion of Progrmming Lnguges Finite Automt 2 CMSC 330 1 Types of Finite Automt Deterministic Finite Automt (DFA) Exctly one sequence of steps for ech string All exmples so fr Nondeterministic

More information

MATRIX INVERSE ON CONNEX PARALLEL ARCHITECTURE

MATRIX INVERSE ON CONNEX PARALLEL ARCHITECTURE U.P.B. Si. Bull., Series C, Vol. 75, Iss. 2, ISSN 86 354 MATRIX INVERSE ON CONNEX PARALLEL ARCHITECTURE An-Mri CALFA, Gheorghe ŞTEFAN 2 Designed for emedded omputtion in system on hip design, the Connex

More information

Intermediate Math Circles Wednesday 17 October 2012 Geometry II: Side Lengths

Intermediate Math Circles Wednesday 17 October 2012 Geometry II: Side Lengths Intermedite Mth Cirles Wednesdy 17 Otoer 01 Geometry II: Side Lengths Lst week we disussed vrious ngle properties. As we progressed through the evening, we proved mny results. This week, we will look t

More information

(a) A partition P of [a, b] is a finite subset of [a, b] containing a and b. If Q is another partition and P Q, then Q is a refinement of P.

(a) A partition P of [a, b] is a finite subset of [a, b] containing a and b. If Q is another partition and P Q, then Q is a refinement of P. Chpter 7: The Riemnn Integrl When the derivtive is introdued, it is not hrd to see tht the it of the differene quotient should be equl to the slope of the tngent line, or when the horizontl xis is time

More information

Arrow s Impossibility Theorem

Arrow s Impossibility Theorem Rep Fun Gme Properties Arrow s Theorem Arrow s Impossiility Theorem Leture 12 Arrow s Impossiility Theorem Leture 12, Slide 1 Rep Fun Gme Properties Arrow s Theorem Leture Overview 1 Rep 2 Fun Gme 3 Properties

More information

Section 4.4. Green s Theorem

Section 4.4. Green s Theorem The Clulus of Funtions of Severl Vriles Setion 4.4 Green s Theorem Green s theorem is n exmple from fmily of theorems whih onnet line integrls (nd their higher-dimensionl nlogues) with the definite integrls

More information

CS 330 Formal Methods and Models Dana Richards, George Mason University, Spring 2016 Quiz Solutions

CS 330 Formal Methods and Models Dana Richards, George Mason University, Spring 2016 Quiz Solutions CS 330 Forml Methods nd Models Dn Richrds, George Mson University, Spring 2016 Quiz Solutions Quiz 1, Propositionl Logic Dte: Ferury 9 1. (4pts) ((p q) (q r)) (p r), prove tutology using truth tles. p

More information

ILLUSTRATING THE EXTENSION OF A SPECIAL PROPERTY OF CUBIC POLYNOMIALS TO NTH DEGREE POLYNOMIALS

ILLUSTRATING THE EXTENSION OF A SPECIAL PROPERTY OF CUBIC POLYNOMIALS TO NTH DEGREE POLYNOMIALS ILLUSTRATING THE EXTENSION OF A SPECIAL PROPERTY OF CUBIC POLYNOMIALS TO NTH DEGREE POLYNOMIALS Dvid Miller West Virgini University P.O. BOX 6310 30 Armstrong Hll Morgntown, WV 6506 millerd@mth.wvu.edu

More information

Generalization of 2-Corner Frequency Source Models Used in SMSIM

Generalization of 2-Corner Frequency Source Models Used in SMSIM Generliztion o 2-Corner Frequeny Soure Models Used in SMSIM Dvid M. Boore 26 Mrh 213, orreted Figure 1 nd 2 legends on 5 April 213, dditionl smll orretions on 29 My 213 Mny o the soure spetr models ville

More information

Instructions. An 8.5 x 11 Cheat Sheet may also be used as an aid for this test. MUST be original handwriting.

Instructions. An 8.5 x 11 Cheat Sheet may also be used as an aid for this test. MUST be original handwriting. ID: B CSE 2021 Computer Orgniztion Midterm Test (Fll 2009) Instrutions This is losed ook, 80 minutes exm. The MIPS referene sheet my e used s n id for this test. An 8.5 x 11 Chet Sheet my lso e used s

More information

Minimal DFA. minimal DFA for L starting from any other

Minimal DFA. minimal DFA for L starting from any other Miniml DFA Among the mny DFAs ccepting the sme regulr lnguge L, there is exctly one (up to renming of sttes) which hs the smllest possile numer of sttes. Moreover, it is possile to otin tht miniml DFA

More information

Exercise 3 Logic Control

Exercise 3 Logic Control Exerise 3 Logi Control OBJECTIVE The ojetive of this exerise is giving n introdution to pplition of Logi Control System (LCS). Tody, LCS is implemented through Progrmmle Logi Controller (PLC) whih is lled

More information

QUADRATIC EQUATION. Contents

QUADRATIC EQUATION. Contents QUADRATIC EQUATION Contents Topi Pge No. Theory 0-04 Exerise - 05-09 Exerise - 09-3 Exerise - 3 4-5 Exerise - 4 6 Answer Key 7-8 Syllus Qudrti equtions with rel oeffiients, reltions etween roots nd oeffiients,

More information

PAIR OF LINEAR EQUATIONS IN TWO VARIABLES

PAIR OF LINEAR EQUATIONS IN TWO VARIABLES PAIR OF LINEAR EQUATIONS IN TWO VARIABLES. Two liner equtions in the sme two vriles re lled pir of liner equtions in two vriles. The most generl form of pir of liner equtions is x + y + 0 x + y + 0 where,,,,,,

More information

2.4 Linear Inequalities and Interval Notation

2.4 Linear Inequalities and Interval Notation .4 Liner Inequlities nd Intervl Nottion We wnt to solve equtions tht hve n inequlity symol insted of n equl sign. There re four inequlity symols tht we will look t: Less thn , Less thn or

More information

Activities. 4.1 Pythagoras' Theorem 4.2 Spirals 4.3 Clinometers 4.4 Radar 4.5 Posting Parcels 4.6 Interlocking Pipes 4.7 Sine Rule Notes and Solutions

Activities. 4.1 Pythagoras' Theorem 4.2 Spirals 4.3 Clinometers 4.4 Radar 4.5 Posting Parcels 4.6 Interlocking Pipes 4.7 Sine Rule Notes and Solutions MEP: Demonstrtion Projet UNIT 4: Trigonometry UNIT 4 Trigonometry tivities tivities 4. Pythgors' Theorem 4.2 Spirls 4.3 linometers 4.4 Rdr 4.5 Posting Prels 4.6 Interloking Pipes 4.7 Sine Rule Notes nd

More information

1 Nondeterministic Finite Automata

1 Nondeterministic Finite Automata 1 Nondeterministic Finite Automt Suppose in life, whenever you hd choice, you could try oth possiilities nd live your life. At the end, you would go ck nd choose the one tht worked out the est. Then you

More information

SECTION A STUDENT MATERIAL. Part 1. What and Why.?

SECTION A STUDENT MATERIAL. Part 1. What and Why.? SECTION A STUDENT MATERIAL Prt Wht nd Wh.? Student Mteril Prt Prolem n > 0 n > 0 Is the onverse true? Prolem If n is even then n is even. If n is even then n is even. Wht nd Wh? Eploring Pure Mths Are

More information

Alpha Algorithm: A Process Discovery Algorithm

Alpha Algorithm: A Process Discovery Algorithm Proess Mining: Dt Siene in Ation Alph Algorithm: A Proess Disovery Algorithm prof.dr.ir. Wil vn der Alst www.proessmining.org Proess disovery = Ply-In Ply-In event log proess model Ply-Out Reply proess

More information