Thread instruction fetch based on prioritized selection from...

Electrical computers and digital processing systems: processing – Instruction fetching

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C712S029000

Reexamination Certificate

active

08078840

ABSTRACT:
A fetch director in a multithreaded microprocessor that concurrently executes instructions of N threads is disclosed. The N threads request to fetch instructions from an instruction cache. In a given selection cycle, some of the threads may not be requesting to fetch instructions. The fetch director includes a circuit for selecting one of threads in a round-robin fashion to provide its fetch address to the instruction cache. The circuit 1-bit left rotatively increments a first addend by a second addend to generate a sum that is ANDed with the inverse of the first addend to generate a 1-hot vector indicating which of the threads is selected next. The first addend is an N-bit vector where each bit is false if the corresponding thread is requesting to fetch instructions from the instruction cache. The second addend is a 1-hot vector indicating the last selected thread. In one embodiment threads with an empty instruction buffer are selected at highest priority; a last dispatched but not fetched thread at middle priority; all other threads at lowest priority. The threads are selected round-robin within the highest and lowest priorities.

REFERENCES:
patent: 4078251 (1978-03-01), Hamilton
patent: 4126895 (1978-11-01), Weemaes et al.
patent: 4924380 (1990-05-01), McKinney et al.
patent: 5067069 (1991-11-01), Fite et al.
patent: 5095460 (1992-03-01), Rodeheffer
patent: 5276887 (1994-01-01), Haynie
patent: 5309382 (1994-05-01), Tamura et al.
patent: 5357512 (1994-10-01), Khaira et al.
patent: 5528513 (1996-06-01), Vaitzblit et al.
patent: 5546554 (1996-08-01), Yung et al.
patent: 5560018 (1996-09-01), Macon et al.
patent: 5570356 (1996-10-01), Finney et al.
patent: 5734877 (1998-03-01), Ries et al.
patent: 5745778 (1998-04-01), Alfieri
patent: 5793993 (1998-08-01), Broedner et al.
patent: 5826082 (1998-10-01), Bishop et al.
patent: 5832278 (1998-11-01), Pham
patent: 5860000 (1999-01-01), Biswas et al.
patent: 5898694 (1999-04-01), Ilyadis et al.
patent: 5913049 (1999-06-01), Shiell et al.
patent: 5933627 (1999-08-01), Parady
patent: 5938742 (1999-08-01), Faddell et al.
patent: 5941980 (1999-08-01), Shang et al.
patent: 5966543 (1999-10-01), Hartner et al.
patent: 6032218 (2000-02-01), Lewin et al.
patent: 6073159 (2000-06-01), Emer et al.
patent: 6076157 (2000-06-01), Borkenhagen et al.
patent: 6094435 (2000-07-01), Hoffman et al.
patent: 6101193 (2000-08-01), Ohba
patent: 6105051 (2000-08-01), Borkenhagen et al.
patent: 6105053 (2000-08-01), Kimmel et al.
patent: 6105127 (2000-08-01), Kimura et al.
patent: 6163827 (2000-12-01), Viswanadham et al.
patent: 6170051 (2001-01-01), Dowling
patent: 6205519 (2001-03-01), Aglietti et al.
patent: 6212544 (2001-04-01), Borkenhagen et al.
patent: 6233630 (2001-05-01), Wilhelm, Jr.
patent: 6237081 (2001-05-01), Le et al.
patent: 6272520 (2001-08-01), Sharangpani et al.
patent: 6272579 (2001-08-01), Lentz et al.
patent: 6295600 (2001-09-01), Parady
patent: 6385715 (2002-05-01), Merchant et al.
patent: 6389449 (2002-05-01), Nemirovsky et al.
patent: 6434155 (2002-08-01), Jones et al.
patent: 6470016 (2002-10-01), Kalkunte et al.
patent: 6477562 (2002-11-01), Nemirovsky et al.
patent: 6516369 (2003-02-01), Bredin
patent: 6542921 (2003-04-01), Sager
patent: 6549930 (2003-04-01), Chrysos et al.
patent: 6556571 (2003-04-01), Shahrier et al.
patent: 6563818 (2003-05-01), Sang et al.
patent: 6567839 (2003-05-01), Borkenhagen et al.
patent: 6609190 (2003-08-01), Kahle et al.
patent: 6633939 (2003-10-01), Butta' et al.
patent: 6647449 (2003-11-01), Watts
patent: 6658447 (2003-12-01), Cota-Robles
patent: 6665760 (2003-12-01), Dotson
patent: 6694425 (2004-02-01), Eickemeyer
patent: 6721874 (2004-04-01), Le et al.
patent: 6754736 (2004-06-01), Ogawa et al.
patent: 6792446 (2004-09-01), Merchant et al.
patent: 6810426 (2004-10-01), Mysore et al.
patent: 6868529 (2005-03-01), Frannhagen
patent: 6918116 (2005-07-01), Ang
patent: 6971103 (2005-11-01), Hokenek et al.
patent: 6987517 (2006-01-01), Donovan et al.
patent: 7007153 (2006-02-01), Berenbaum et al.
patent: 7015913 (2006-03-01), Lindholm et al.
patent: 7035997 (2006-04-01), Musoll et al.
patent: 7051189 (2006-05-01), Warnes
patent: 7096470 (2006-08-01), Brown et al.
patent: 7120714 (2006-10-01), O'Connor et al.
patent: 7139898 (2006-11-01), Nemirovsky et al.
patent: 7149880 (2006-12-01), Kottapalli
patent: 7185178 (2007-02-01), Barreh et al.
patent: 7269712 (2007-09-01), Cho
patent: 7334086 (2008-02-01), Hass et al.
patent: 7360064 (2008-04-01), Steiss et al.
patent: 7395414 (2008-07-01), Le et al.
patent: 7441101 (2008-10-01), Steiss et al.
patent: 7490230 (2009-02-01), Jensen et al.
patent: 7506140 (2009-03-01), Jensen
patent: 7509447 (2009-03-01), Jensen
patent: 7600135 (2009-10-01), Jones
patent: 7613904 (2009-11-01), Jones et al.
patent: 7627770 (2009-12-01), Jones
patent: 7631130 (2009-12-01), Jensen
patent: 7657883 (2010-02-01), Jensen
patent: 7657891 (2010-02-01), Jensen et al.
patent: 7664936 (2010-02-01), Jensen et al.
patent: 7752627 (2010-07-01), Jones et al.
patent: 7853777 (2010-12-01), Jones et al.
patent: 2001/0014941 (2001-08-01), Akkary et al.
patent: 2002/0062435 (2002-05-01), Nemirovsky et al.
patent: 2002/0083173 (2002-06-01), Musoll et al.
patent: 2002/0087840 (2002-07-01), Kottapalli et al.
patent: 2002/0161957 (2002-10-01), Comeau et al.
patent: 2003/0018686 (2003-01-01), Kalafatis et al.
patent: 2003/0028816 (2003-02-01), Bacon
patent: 2003/0105944 (2003-06-01), Emer et al.
patent: 2003/0182536 (2003-09-01), Teruyama
patent: 2003/0225975 (2003-12-01), Hokenek et al.
patent: 2003/0233394 (2003-12-01), Rudd et al.
patent: 2004/0060052 (2004-03-01), Brown et al.
patent: 2004/0128448 (2004-07-01), Stark et al.
patent: 2004/0139441 (2004-07-01), Kaburaki et al.
patent: 2004/0215933 (2004-10-01), Nguyen et al.
patent: 2004/0215944 (2004-10-01), Burky et al.
patent: 2004/0215945 (2004-10-01), Burky et al.
patent: 2004/0215947 (2004-10-01), Ward et al.
patent: 2004/0216105 (2004-10-01), Burky et al.
patent: 2004/0216106 (2004-10-01), Kalla et al.
patent: 2005/0044324 (2005-02-01), Rashid et al.
patent: 2005/0076189 (2005-04-01), Wittenburg et al.
patent: 2005/0138328 (2005-06-01), Moy et al.
patent: 2005/0141554 (2005-06-01), Hammarlund et al.
patent: 2005/0169304 (2005-08-01), Murata
patent: 2006/0004989 (2006-01-01), Golla
patent: 2006/0004995 (2006-01-01), Hetherington et al.
patent: 2006/0095732 (2006-05-01), Tran et al.
patent: 2006/0123420 (2006-06-01), Nishikawa
patent: 2006/0168254 (2006-07-01), Norton et al.
patent: 2006/0168393 (2006-07-01), Christensen et al.
patent: 2006/0179194 (2006-08-01), Jensen et al.
patent: 2006/0179274 (2006-08-01), Jones et al.
patent: 2006/0179279 (2006-08-01), Jones et al.
patent: 2006/0179280 (2006-08-01), Jensen et al.
patent: 2006/0179281 (2006-08-01), Jensen et al.
patent: 2006/0179283 (2006-08-01), Jensen et al.
patent: 2006/0179284 (2006-08-01), Jensen et al.
patent: 2006/0179439 (2006-08-01), Jones et al.
patent: 2006/0206686 (2006-09-01), Banerjee et al.
patent: 2006/0206692 (2006-09-01), Jensen
patent: 2006/0212853 (2006-09-01), Sutardja
patent: 2007/0089112 (2007-04-01), Jensen
patent: 2007/0113053 (2007-05-01), Jensen et al.
patent: 2007/0204137 (2007-08-01), Tran
patent: 2008/0069115 (2008-03-01), Jensen
patent: 2008/0069128 (2008-03-01), Jensen
patent: 2008/0069129 (2008-03-01), Jensen
patent: 2008/0069130 (2008-03-01), Jensen
patent: 2008/0155233 (2008-06-01), Ward et al.
patent: 2009/0249351 (2009-10-01), Jensen
patent: 2009/0271592 (2009-10-01), Jensen
patent: 2010/0115244 (2010-05-01), Jensen
patent: 10110504 (2001-10-01), None
patent: 1351117 (2003-08-01), None
patent: WO0239269 (2002-05-01), None
Jones, D.M. et al., U.S. Appl. No. 12/684,564, filed Jan. 8, 2010.
Keckler, S.W. et al., “Concurrent Event Handling Through Multithreading,”IEEE Transactions on Computers, vol. 48, No. 9, pp. 903-916, IEEE, Sep. 1999.
Ooi, C.L. et al., “Multiples: Unifying Conventional and Speculative Thread-Level Parallelism on a Chip Multiprocessor,”ICS '01, Sorrento, Italy, pp. 368-380, ACM, Jun. 2001.
Parcerisa, J.M. et al.,

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Thread instruction fetch based on prioritized selection from... does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Thread instruction fetch based on prioritized selection from..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Thread instruction fetch based on prioritized selection from... will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-4298790

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.