Abstract
While processor architecture design is currently more an art than a systematic process, growing complexity and more stringent time-to-market constraints are strong incentives for streamlining architecture design into a more systematic process. Methods have emerged for quickly scanning the large ranges of hardware block parameters. But, at the moment, systematic exploration rarely goes beyond such parametric design space exploration. We want to show that it is possible to move beyond parametric exploration to structural exploration, where different architecture blocks are automatically composed together, largely broadening the scope of design space exploration. For that purpose, we introduce a simulation environment, called UNISIM , which is geared toward interoperability. UNISIM achieves this goal with a combination of modular software development, distributed communication protocols , a set of simulator service APIs, architecture communications interfaces (ACIs), and an open library/repository for providing a consistent set of simulator components. We illustrate the approach with the design exploration of the on-chip memory subsystem of an embedded processor target. Besides design space exploration , we also show that structural simulation can significantly ease the process of fairly and quantitatively comparing research ideas and illustrate that point with the comparison of state-of-the-art cache techniques. Finally, we disseminate the whole approach for both facilitating design space exploration and the fair comparison of research ideas through ArchExplorer , an atypical web-based infrastructure, where researchers and engineers can contribute and evaluate architecture ideas.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
ARM. Soc designer with maxsim technology, information available at www.arm/com/ products/devtools/maxsim.html. Technical report, ARM.
Austin, T., Larson, E., Ernst, D.: Simplescalar: An infrastructure for computer system modeling. Computer, 35(2), 59–67, February (2002).
Baer, J.-L., Chen, T.-F.: “An effective on-chip preloading scheme to reduce data access penalty.” In: Proceedings of the 1991 ACM International Conference on Supercomputing, pp. 176–186, (1991).
Burger, D., Austin, T.: The simplescalar tool set, version 2.0. Technical Report CS-TR-97-1342, Department of Computer Sciences, University of Wisconsin, June (1997).
Coe, P., Howell, F.W., Ibbett, R., Williams, L.: A hierarchical computer architecture design and simulation environment. ACM Trans Model Comput Simul, 8, 431–446, (1998).
Cooksey, R., Jourdan, S., Grunwald, D.: “A stateless, content-directed data prefetching mechanism.” In: Proceedings of the 10th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS-X), pp. 279–290, San Jose, CA, October (2002).
Cooper, K., Subramanian, D., Torczon, L.: Adaptive optimizing compilers for the 21st century. J Supercomput, 23(1), 7–22, (2002).
Davis, J., Goel, M., Hylands, C., Kienhuis, B., Lee, E., Liu, J., Liu, X., Muliadi, L., Neuerdorffer, S., Reekie, J., Smyth, N., Tsay, J., Xiong, Y.: Overview of the Ptolemy project. Technical Report UCB/ERL No. M99/37, EECS, University of California at Berkeley, (1999).
Desmet, V., Girbal, S., Temam, O.: “A methodology for facilitating a fair comparison of architecture research ideas.” In 2010 IEEE International Symposium on Performance Analysis of Systems and Software (ISPASS). IEEE Computer Society, March (2010).
Emer, J., Ahuja, P., Borch, E., Klauser, A., Luk, C.-K., Manne, S., Mukkerjee, S.S., Patil, H., Wallace, S., Binkert, N., Juan, T.: ASIM: A performance model framework. IEEE Comput, 35(2), February (2002).
Guthaus, M.R., Ringenberg, J.S., Ernst, D., Austin, T.M., Mudge, T., Brown, R.B.: “Mibench: A free, commercially representative embedded benchmark suite.” In: IEEE 4th Annual Workshop on Workload Characterization, pp. 3–14, December (2001).
Hamerly, G., Perelman, E., Lau, J., Calder, B.: Simpoint 3.0: faster and more flexible program analysis. MOBS ’05: Workshop on Modeling, Benchmarking and Simulation, June (2005).
Hardavellas, N., Somogyi, S., Wenisch, T.F., Wunderlich, R.E., Chen, S., Kim, J., Falsafi, B., Hoe, J.C., Nowatzyk, A.G.: Simflex: a fast, accurate, flexible full-system simulation framework, for performance evaluation of server architecture. SIGMETRICS Perform Eval Rev, 31(4), 31–34, March (2004).
Hennessy, J.L., Patterson, D.A.: Computer Architecture: A Quantitative Approach. Morgan Kaufmann, San Francisco, CA (1996).
Hu, Z., Kaxiras, S., Martonosi, M.: Timekeeping in the memory system: predicting and optimizing memory behavior. In: Proceedings of the 29th Annual International Symposium on Computer Architecture (ISCA), pp. 209–220, Anchorage, Alaska, May (2002).
Hu, Z., Martonosi, M., Kaxiras, S.: “TCP: Tag correlating prefetchers.” In: Proceedings of the 9th International Symposium on High Performance Computer Architecture (HPCA), Anaheim, CA, February (2003).
IBM. PowerPC 405 CPU Core. September (2006).
Joseph, D., Grunwald, D.: “Prefetching using Markov predictors.” In: Proceedings of the 24th Annual International Symposium on Computer Architecture (ISCA), pp. 252–263, Denver, CO, June (1997).
Jouppi, N.P.: Improving direct-mapped cache performance by the addition of a small fully-associative cache and prefetch buffers. Technical Report, Digital, Western Research Laboratory, Palo Alto, CA, March (1990).
Lai, A.-C., Fide, C., Falsafi, B.: “Dead-block prediction & dead-block correlating prefetchers.” In: Proceedings of the 28th Annual International Symposium on Computer Architecture, pp. 144–154, June (2001).
Martin, M.M.K., Sorin, D.J., Beckmann, B.M., Marty, M.R., Xu, M., Alameldeen, A.R., Moore, K.E., Hill, M.D., Wood, D.A.: Multifacet’s general execution-driven multiprocessor simulator (gems) toolset. SIGARCH Comput Architect News, 33(4), 92–99 (2005).
Nesbit, K.J., Smith, J.E.: “Data cache prefetching using a global history buffer.” In: Proceedings of the 10th International Symposium on High Performance Computer Architecture (HPCA), p. 96, Madrid, Spain, February (2004).
OSCI. SystemC, OSC Initiative. Technical Report, OSCI, (2003).
Pérez, D.G., Mouchard, G., Temam, O.: “Microlib: A case for the quantitative comparison of micro-architecture mechanisms.” In: International Symposium on Microarchitecture. ACM, December (2004).
Pérez, D.G., Mouchard, G., Temam, O.: “Microlib: A case for the quantitative comparison of micro-architecture mechanisms.” In: 37th Annual International Symposium on Microarchitecture (MICRO-37 2004), 4–8 December 2004, Portland, OR, pp. 43–54. IEEE Computer Society (2004).
Seznec, A.: “A case for two-way skewed-associative caches.” In: Proceedings of the 20th Annual International Symposium on Computer Architecture, pp. 169–178, May (1993).
Sherwood, T., Perelman, E., Hamerly, G., Calder, B.: “Automatically characterizing large scale program behavior.” In: Tenth International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS-X), pp. 45–57. ACM Press, (2002).
Shivakumar, P., Jouppi, N.P.: CACTI 3.0: An integrated cache timing, power and area model. Technical Report, HP Laboratories Palo Alto, CA, August (2001).
Smith, A.J. Cache memories. Comput Surveys, 14(3), 1473–530, September (1982).
SPEC. SPEC2000. http://www.spec.org (2000).
Vachharajani, M., Vachharajani, N., Penry, D.A., Blome, J.A., August, D.I.: Microarchitectural Exploration with Liberty. In: Proceedings of the 34th Annual International Symp. on Microarchitecture, Austin, TX, December (2001).
VaST. System engineering tools for the simulation and modeling of embedded systems. http://www.vastsystems.com. Technical Report, VaST systems (1999).
Wenisch, T.F., Wunderlich, R.E., Falsafi, B., Hoe, J.C.: TurboSMARTS: Accurate Microarchitecture Simulation Sampling in Minutes. SIGMETRICS ’05, June (2005).
Wunderlich, R.E., Wenisch, T.F., Falsafi, B., Hoe, J.C.: “Smarts: accelerating microarchitecture simulation via rigorous statistical sampling.” In: Proceedings of the 30th Annual International Symposium on Computer Architecture, pp. 84–97. ACM Press, (2003).
Yang, J., Gupta, R.: “Energy efficient frequent value data cache design.” In: Proceedings of the 35th International Symposium on Microarchitecture (MICRO), pp. 197–207, Istanbul, Turkey, November (2002).
Zhang Y., Gupta, R.: Enabling partial cache line prefetching through data compression. In: International Conference on Parallel Processing (ICPP), Kaohsiung, Taiwan, October (2003).
Zhang, Y., Yang, J., Gupta, R.: “Frequent value locality and value-centric data cache design.” In: Proceedings of the 9th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS-IX), pp. 150–159, Cambridge, MA, November (2000).
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2010 Springer Science+business Media, LLC
About this chapter
Cite this chapter
August, D., Desmet, V., Girbal, S., PĂ©rez, D.G., Temam, O. (2010). Structural Simulation for Architecture Exploration. In: Leupers, R., Temam, O. (eds) Processor and System-on-Chip Simulation. Springer, Boston, MA. https://doi.org/10.1007/978-1-4419-6175-4_6
Download citation
DOI: https://doi.org/10.1007/978-1-4419-6175-4_6
Published:
Publisher Name: Springer, Boston, MA
Print ISBN: 978-1-4419-6174-7
Online ISBN: 978-1-4419-6175-4
eBook Packages: EngineeringEngineering (R0)