Patents by Inventor Donald Steiss

Donald Steiss has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 7664897
    Abstract: A resource interconnect architecture and associated descriptor protocol provides more efficient communication between different resources in a data processing system. One embodiment uses a backdoor interconnect that allows some resources to communicate without using a central resource interconnect. Another embodiment uses nested descriptors that allow operations by different resources to be chained together without having to communicate back to an originating descriptor resource. In another embodiment, the descriptors are generated in hardware or in software. Other embodiments assign priority or privilege values to the descriptors that optimize processing and error handling performance.
    Type: Grant
    Filed: December 1, 2005
    Date of Patent: February 16, 2010
    Assignee: Cisco Technology Inc.
    Inventors: Earl T. Cohen, Donald Steiss, William Eatherton, John Williams, Jr., John A. Fingerhut
  • Patent number: 7360064
    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.
    Type: Grant
    Filed: December 10, 2003
    Date of Patent: April 15, 2008
    Assignee: Cisco Technology, Inc.
    Inventors: Donald Steiss, Earl T Cohen, John J Williams, Jr.
  • Patent number: 7206922
    Abstract: The present invention provides a processor with an instruction memory hierarchy and a method for distributing instructions to an array of multithreaded processing units organized in processor clusters. The instruction memory hierarchy comprises a processor cluster, an instruction request bus, an instruction request arbiter, and an instruction memory. The instruction request arbiter controls submissions of instruction requests from multithreaded processing units within the processor clusters to the instruction memory. The processor clusters send instruction requests responsive to a cache miss by a processor, or processor thread, within the processor cluster. The instruction request arbiter resolves conflicts between instruction requests attempting to access to a common cache set within the instruction memory. The instruction memory broadcasts instruction data to the processor clusters responsive to non-conflicting instruction requests forwarded from the instruction request arbiter.
    Type: Grant
    Filed: December 30, 2003
    Date of Patent: April 17, 2007
    Assignee: Cisco Systems, Inc.
    Inventor: Donald Steiss
  • Publication number: 20060179156
    Abstract: A network processor has numerous novel features including a multi-threaded processor array, a multi-pass processing model, and Global Packet Memory (GPM) with hardware managed packet storage. These unique features allow the network processor to perform high-touch packet processing at high data rates. The packet processor can also be coded using a stack-based high-level programming language, such as C or C++. This allows quicker and higher quality porting of software features into the network processor. Processor performance also does not severely drop off when additional processing features are added. For example, packets can be more intelligently processed by assigning processing elements to different bounded duration arrival processing tasks and variable duration main processing tasks. A recirculation path moves packets between the different arrival and main processing tasks.
    Type: Application
    Filed: February 8, 2005
    Publication date: August 10, 2006
    Applicant: Cisco Technology, Inc.
    Inventors: Will Eatherton, Earl Cohen, John Fingerhut, Donald Steiss, John Williams
  • Publication number: 20060179204
    Abstract: A resource interconnect architecture and associated descriptor protocol provides more efficient communication between different resources in a data processing system. One embodiment uses a backdoor interconnect that allows some resources to communicate without using a central resource interconnect. Another embodiment uses nested descriptors that allow operations by different resources to be chained together without having to communicate back to an originating descriptor resource. In another embodiment, the descriptors are generated in hardware or in software. Other embodiments assign priority or privilege values to the descriptors that optimize processing and error handling performance.
    Type: Application
    Filed: December 1, 2005
    Publication date: August 10, 2006
    Inventors: Earl Cohen, Donald Steiss, William Eatherton, John Williams, John Fingerhut