Analysis-Managed Processor (AMP): Exceeding the Complexity Limit in Safe-Real-Time Systems

dc.contributor.advisorAlexander G. Dean, Committee Memberen_US
dc.contributor.advisorFrank Mueller, Committee Memberen_US
dc.contributor.advisorThomas M. Conte, Committee Memberen_US
dc.contributor.advisorEric Rotenberg, Committee Chairen_US
dc.contributor.authorAnantaraman, Aravindh Venkataseshadrien_US
dc.date.accessioned2010-04-02T18:36:47Z
dc.date.available2010-04-02T18:36:47Z
dc.date.issued2006-04-28en_US
dc.degree.disciplineComputer Engineeringen_US
dc.degree.leveldissertationen_US
dc.degree.namePhDen_US
dc.description.abstractSafe-real-time systems need tasks' worst-case execution times (WCETs) to guarantee deadlines. With increasing microarchitectural complexity, the analysis required to derive WCETs is becoming complicated and, in some cases, intractable. Thus, complex microarchitectural features are discouraged in safe-real-time systems. My thesis is that microarchitectural complexity is viable in safe-real-time systems, if control is provided over this complexity. I propose a reconfigurable processor, the Analysis-Managed Processor (AMP), that offers complete control over its complex features. The ability to dynamically manage the AMP enables novel cooperative static and run-time WCET frameworks that break the limitations of the traditional static-only WCET model, allowing complex features to be safely included. (i) The Virtual Simple Architecture (VISA) framework avoids analyzing complex features. VISA derives tasks' WCETs assuming a simple processor. At run-time, tasks are speculatively attempted on the AMP with complex features enabled. A run-time framework dynamically confirms that WCETs are not exceeded. (ii) The Non-Uniform Program Analysis (NUPA) framework enables efficient analysis of complex features. NUPA matches different program segments to different operating modes of the AMP. NUPA yields reduced WCETs for program segments that can be analyzed in the context of complex features, without the severe burden of requiring all program segments to be analyzed this way. I propose that out-of-order execution is not inherently intractable, rather its interaction with control-flow is intractable. Out-of-order processors overlap the execution of 10s to 100s of in-flight instructions. Variable control-flow causes an explosion in the number of potential overlap schedules. I propose two timing analysis techniques that reduce the number of possible schedules. (i) Repeatable Execution Constraints for Out-of-ORDER (RECORDER) eliminates variable control-flow and implied data-flow variations, guaranteeing a single input-independent execution schedule that can be derived via simulation, using arbitrary (random) program inputs. (ii) Drain-and-Branch (DNB) restricts instruction overlap by insulating a branch's control-dependent region from the effects of instructions before and after the region. RECORDER and DNB are complementary, as they work well for branches with short regions and long regions, respectively. Further, in the context of a NUPA framework, different branch regions may favor RECORDER, DNB, or in-order execution mode of the AMP, for achieving a highly optimized overall WCET. Moreover, branch regions analyzed for downgraded in-order execution can still benefit from the VISA run-time framework by speculatively enabling out-of-order mode of the AMP. The flexible combination of all the above techniques multiplies benefits, yielding a powerful framework for fully and safely capitalizing on complex microarchitectures in safe-real-time systems.en_US
dc.identifier.otheretd-04202006-102905en_US
dc.identifier.urihttp://www.lib.ncsu.edu/resolver/1840.16/3800
dc.rightsI hereby certify that, if appropriate, I have obtained and attached hereto a written permission statement from the owner(s) of each third party copyrighted matter to be included in my thesis, dissertation, or project report, allowing distribution as specified below. I certify that the version I submitted is the same as that approved by my advisory committee. I hereby grant to NC State University or its agents the non-exclusive license to archive and make accessible, under the conditions specified below, my thesis, dissertation, or project report in whole or in part in all forms of media, now or hereafter known. I retain all other ownership rights to the copyright of the thesis, dissertation or project report. I also retain the right to use in future works (such as articles or books) all or part of this thesis, dissertation, or project report.en_US
dc.subjecthard real-time systemsen_US
dc.subjectworst-case execution timeen_US
dc.subjectWCETen_US
dc.subjectworst-case timing analysisen_US
dc.subjectsuperscalar processorsen_US
dc.subjectVirtual Simple Architectureen_US
dc.subjectmicroarchitectureen_US
dc.subjectVISAen_US
dc.subjectNon-uniform program analysisen_US
dc.titleAnalysis-Managed Processor (AMP): Exceeding the Complexity Limit in Safe-Real-Time Systemsen_US

Files

Original bundle

Now showing 1 - 1 of 1
No Thumbnail Available
Name:
etd.pdf
Size:
930.75 KB
Format:
Adobe Portable Document Format

Collections