SoftSDV: A Presilicon Software Development Environment for the IA-64 Architecture

作者: Richard Uhlig

DOI:

关键词:

摘要: New instruction-set architectures (ISAs) live or die depending on how quickly they develop a large software base. This paper describes SoftSDV, presilicon software-development environment that has enabled at least eight commercial operating systems and numerous applications to be ported tuned IA-64, well in advance of ItaniumTM processor’s first silicon. IA-64 versions Microsoft Windows ∗ 2000 Trillian Linux* were developed SoftSDV booted within ten days the availability Itanium processor. incorporates several simulation innovations, including dynamic binary translation for fast ISA emulation, resource analysis rapid performance tuning, IO-device proxying link actual hardware IO devices system (OS) device-driver development. We describe integrates these technologies into complete supports diverse requirements developers ranging from OS, firmware, application vendors compiler writers. detail SoftSDV’s methods comment its speed, accuracy, completeness. also aspects design enhance flexibility maintainability as body software. Other brands names are property their respective owners. INTRODUCTION The traditional approach fostering development new such is supply programmers with platform implements ISA. Such commonly known vehicle (SDV) suffers key dependency: it cannot assembled until silicon processor been manufactured. Intel eliminated this dependency by building an SDV entirely through all resources present SDV. environment, which we call substantial software, A principal goal support along stack, firmware device drivers (see Figure 1). each layers dependent upon optimizing compilers, themselves must carefully [1, 2]. Each types different set respect Application developers, example, primarily interested whereas optimizingcompiler writers value accuracy processor-resource modeling so can evaluate effectiveness code-generation algorithms. other hand, require completeness Technology Journal Q4, 1999 SoftSDV: Presilicon Software Development Environment Architecture 2 system-level functions (e.g., virtual-memory management, interrupt processing, etc.). Not only do vary based type code, but relative importance shifts stage Early efforts port debug code best aided very successive tuning requires ever-increasing levels accuracy. Similarly, early stages porting OS sufficient model basic boot devices. However, once up running, meaning “completeness” expands include arbitrary seek many possible. Often overlooked, equally important features infrastructure maintainability. under nearly long had track rapidly adapt improvements definition; absolutely essential. But here too, change over time. ISA, changes frequent, quickly. Later, definition becomes more concrete, gradually less important, traded increased speed These shifting underscore fundamental truth simulation: single technique tool meet needs possible times. acknowledges fact extensible accommodates multiple innovative single, common infrastructure. resulting enables select combination most appropriate particular given time, while same time preserving overall In next section, review related work then briefly overview components typically found architecture component modules detail. conclude discussion results summary our experiences lessons learnt. 1: IA-32 Host Platform Operating System PCI Bus Device Modules Proxy Module Graphics Storage Comm. Pseudo SofSDV standard process

参考文章(8)
Bengt Werner, Fredrik Larsson, Peter S. Magnusson, Fredrik Lundholm, Magnus Karlsson, Andreas Moestedt, Per Stenström, Fredrik Dahlgren, Jim Nilsson, Håkan Grahn, SimICS/sun4m: a virtual workstation usenix annual technical conference. pp. 10- 10 ,(1998)
T.M. Conte, M.A. Hirsch, K.N. Menezes, Reducing state loss for effective trace sampling of superscalar processors international conference on computer design. pp. 468- 477 ,(1996) , 10.1109/ICCD.1996.563595
Eric Schnarr, James R. Larus, Fast out-of-order processor simulation using memoization architectural support for programming languages and operating systems. ,vol. 32, pp. 283- 294 ,(1998) , 10.1145/291006.291063
Emmett Witchel, Mendel Rosenblum, Embra: fast and flexible machine simulation measurement and modeling of computer systems. ,vol. 24, pp. 68- 79 ,(1996) , 10.1145/233008.233025
Mendel Rosenblum, Edouard Bugnion, Scott Devine, Stephen A. Herrod, Using the SimOS machine simulator to study complex computer systems ACM Transactions on Modeling and Computer Simulation. ,vol. 7, pp. 78- 103 ,(1997) , 10.1145/244804.244807
Alvin R. Lebeck, David A. Wood, Active memory ACM Transactions on Modeling and Computer Simulation. ,vol. 7, pp. 42- 77 ,(1997) , 10.1145/244804.244806
Bob Cmelik, David Keppel, Shade: a fast instruction-set simulator for execution profiling Proceedings of the 1994 ACM SIGMETRICS conference on Measurement and modeling of computer systems - SIGMETRICS '94. ,vol. 22, pp. 128- 137 ,(1994) , 10.1145/183018.183032
C. Dulong, The IA-64 architecture at work IEEE Computer. ,vol. 31, pp. 24- 32 ,(1998) , 10.1109/2.689674