Patent · US Expired

Thread interleaving in a multithreaded embedded processor

US7360064B1 · kind B1 · utility

128Cited by
42References
18Claims
0Family size

Assignee

Inventors

Key dates

Filing dateDec 10, 2003
Grant dateApr 15, 2008
Priority date
Expiry dateMar 18, 2025

Classification

  • Technology area (CPC G)Physics
  • CPC primaryG06F9/4843
  • WIPO fieldComputer technology
  • WIPO sectorElectrical engineering

Abstract

The present invention provides a network multithreaded processor, such as a network processor, including a thread interleaver that implements fine-grained thread decisions to avoid underutilization of instruction execution resources in spite of large communication latencies. In an upper pipeline, an instruction unit determines an instruction fetch sequence responsive to an instruction queue depth on a per thread basis. In a lower pipeline, a thread interleaver determines a thread interleave sequence responsive to thread conditions including thread latency conditions. The thread interleaver selects threads using a two-level round robin arbitration. Thread latency signals are active responsive to thread latencies such as thread stalls, cache misses, and interlocks. During the subsequent one or more clock cycles, the thread is ineligible for arbitration. In one embodiment, other thread conditions affect selection decisions such as local priority, global stalls, and late stalls.

Source: USPTO / EPO open patent data. Objective bibliographic and citation counts.