Abstract
The purpose of this chapter is to explain basic rules of a practical microthreaded assembler-level programming for UTLEON3. This will be achieved by explaining a couple of increasingly complex assembler programs. The first program, called VADD, will illustrate the basic structure of an assembler microthreaded program. The second program, called FIB, will show how to use family shared registers to implement loop-carried variables. Finally, the third program, called CCRT, will demonstrate a continuation create.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
The setregg/setregs instructions, currently not implemented, could be used to specify register offset where the register mapping would be based.
References
Arvind K, Nikhil RS (1990) Executing a program on the MIT tagged-token dataflow architecture. IEEE Trans Comput 39(3):300–318
Gaisler J Fault-tolerant microprocessors for space applications. http://www.gaisler.com/doc/vhdl2proc.pdf. Accessed September 7, 2012
Gaisler J (2001) The LEON processor user’s manual. Gaisler research
Gaisler J, Catovic E, Habinc S (2007) GRLIB IP library user’s manual. Gaisler research
Gaisler J, Catovic E, Isomaki M, Glembo K, Habinc S (2007) GRLIB IP core user’s manual. Gaisler research
Guz Z, Bolotin E, Keidar I, Kolodny A, Mendelson A, Weiser UC (2009) Many-core vs. many-thread machines: stay away from the valley. IEEE Comput Archit Lett 8(1):25–28
IEEE (1994) IEEE standard for a 32-bit microprocessor architecture (IEEE-Std 1754–1994). IEEE Computer Society press, New York
Independent JPEG Group Independent JPEG Group. http://www.ijg.org/. Accessed September 7, 2012
Jesshope C (2004) Scalable instruction-level parallelism. In: Computer systems: architectures, modeling, and simulation. Springer, Berlin/Heidelberg, pp 383–392
Jesshope CR (2006) μTC – an intermediate language for programming chip multiprocessors. In: Asia-pacific computer systems architecture conference. Springer, Berlin/Heidelberg, pp 147–160
Jesshope CR, Luo B (2000) Micro-threading: a new approach to future RISC. In: Proceedings of the 5th Australasian computer architecture conference. IEEE Computer Society Press, Los Alamitos, pp 34–41
Kissell KD (2008) MIPS MT: a multithreaded RISC architecture for embedded real-time processing. In: Stenström P, Dubois M, Katevenis M, Gupta R, Ungerer T (eds) High performance embedded architectures and compilers. Lecture notes in computer science, vol 4917. Springer, Berlin/Heidelberg, pp 9–21
Kongentira P, Aingaran K, Olukotum K (2005) Niagara: a 32-way multithreaded SPARC processor. IEEE Micro 25(2):21–29
Saavedra-Barrera RH, Culler DE, von Eicken T (1990) Analysis of multithreaded architectures for parallel computing. In: Proceedings of the second annual ACM symposium on parallel algorithms and architectures, SPAA ’90, Island of Crete, Greece. ACM, New York, pp 169–178
SPARC (1992) SPARC architecture manual, Version 8. SPARC International, Inc.
Takayanagi T, Shin JL, Petrick B, Su J, Leon AS (2004) A dual-core 64b ULTRASPARC microprocessor for dense server applications. In: Malik S, Fix L, Kahng AB (eds) Proceedings of the 41st annual design automation conference, DAC ’04, San Diego, CA. ACM, New York, pp 673–677
The Apple-CORE Consortium Architecture paradigms and programming languages for efficient programming of multiple COREs. http://www.apple-core.info. Accessed September 7, 2012
Ungerer T, Robič B, Šilc J (2003) A survey of processors with explicit multithreading. ACM Comput Surv 35(1):29–63
Waldspurger CA, Weihl WE (1993) Register relocation: flexible contexts for multithreading. In: Proceedings of the 20th annual international symposium on computer architecture, ISCA ’93, San Diego, CA. ACM, New York, pp 120–130
Xilinx Xilinx university program xupv5-lx110t development system. http://www.xilinx.com/univ/xupv5-lx110t.htm. Accessed September 7, 2012
Author information
Authors and Affiliations
Rights and permissions
Copyright information
© 2013 Springer Science+Business Media, LLC
About this chapter
Cite this chapter
Daněk, M., Kafka, L., Kohout, L., Sýkora, J., Bartosiński, R. (2013). UTLEON3 Programming by Example. In: UTLEON3: Exploring Fine-Grain Multi-Threading in FPGAs. Springer, New York, NY. https://doi.org/10.1007/978-1-4614-2410-9_5
Download citation
DOI: https://doi.org/10.1007/978-1-4614-2410-9_5
Published:
Publisher Name: Springer, New York, NY
Print ISBN: 978-1-4614-2409-3
Online ISBN: 978-1-4614-2410-9
eBook Packages: EngineeringEngineering (R0)