Patents by Inventor Mark Rosenbluth

Mark Rosenbluth 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).

  • Publication number: 20060112226
    Abstract: A multi-core processor providing heterogeneous processor cores and a shared cache is presented.
    Type: Application
    Filed: November 19, 2004
    Publication date: May 25, 2006
    Inventors: Frank Hady, Mason Cabot, John Beck, Mark Rosenbluth
  • Publication number: 20060112206
    Abstract: A scalable, high-performance interconnect scheme for a multi-threaded, multi-processing system-on-a-chip network processor unit. An apparatus implementing the technique includes a plurality of masters configured in a plurality of clusters, a plurality of targets, and a chassis interconnect that may be controlled to selectively connects a given master to a given target. In one embodiment, the chassis interconnect comprises a plurality of sets of bus lines connected between the plurality of clusters and the plurality of targets forming a cross-bar interconnect, including sets of bus lines corresponding to a command bus, a pull data bus for target writes, and a push data bus for target reads. Multiplexer circuitry for each of the command bus, pull data bus, and push data bus is employed to selectively connect a given cluster to a given target to enable commands and data to be passed between the given cluster and the given target.
    Type: Application
    Filed: November 23, 2004
    Publication date: May 25, 2006
    Inventors: Sridhar Lakshmanamurthy, Mark Rosenbluth, Matthew Adiletta, Jeen-Yuan Miin, Bijoy Bose
  • Publication number: 20060112227
    Abstract: A multi-core processor providing heterogeneous processor cores and a shared cache is presented.
    Type: Application
    Filed: November 10, 2005
    Publication date: May 25, 2006
    Inventors: Frank Hady, Mason Cabot, John Beck, Mark Rosenbluth
  • Publication number: 20060112234
    Abstract: In general, in one aspect, the disclosure describes a method that includes providing a memory access instruction of a processing element's instruction set including multiple parameters.
    Type: Application
    Filed: November 19, 2004
    Publication date: May 25, 2006
    Inventors: Mason Cabot, Frank Hady, Mark Rosenbluth, David Tennenhouse
  • Publication number: 20060095730
    Abstract: Method and apparatus to support expansion of compute engine code space by sharing adjacent control stores using interleaved addressing schemes. Instructions corresponding to an original instruction thread are partitioned into multiple interleaved sequences that are stored in respective control stores. During thread execution, instructions are retrieved from the control stores in a repeated order based on the interleaving scheme. For example, in one embodiment two compute engines share two control stores. Thus, instructions for a given thread are sequentially loaded from the control stores in an alternating manner. In another embodiment, four control stores are shared by four compute engines. In this case, the instructions in a thread are interleave using four stores, and each store is accessed every fourth instruction in the code sequence. Schemes are also provided for handling branching operations to maintain synchronized access to the control stores.
    Type: Application
    Filed: September 30, 2004
    Publication date: May 4, 2006
    Inventors: Gilbert Wolrich, Mark Rosenbluth, Matthew Adiletta, Hugh Wilkinson, Jose Niell, Rajagopal Narayanan, Sanjeev Jain
  • Publication number: 20060090039
    Abstract: Method and apparatus to enable slower memory, such as dynamic random access memory (DRAM)-based memory, to support low-latency access using vertical caching. Related function metadata used for packet-processing functions, including metering and flow statistics, is stored in an external DRAM-based store. In one embodiment, the DRAM comprises double data-rate (DDR) DRAM. A network processor architecture is disclosed including a DDR assist with data cache coupled to a DRAM controller. The architecture further includes multiple compute engines used to execute various packet-processing functions. One such function is a DDR assist function that is used to pre-fetch a set of function metadata for a current packet and store the function metadata in the data cache. Subsequently, one or more packet-processing functions may operate on the function metadata by accessing it from the cache. After the functions are completed, the function metadata are written back to the DRAM-based store.
    Type: Application
    Filed: October 27, 2004
    Publication date: April 27, 2006
    Inventors: Sanjeev Jain, Mark Rosenbluth, Matthew Adiletta, Gilbert Wolrich
  • Publication number: 20060067348
    Abstract: A system that queues data packets includes efficient memory access of queue control data structures.
    Type: Application
    Filed: September 30, 2004
    Publication date: March 30, 2006
    Inventors: Sanjeev Jain, Gilbert Wolrich, Mark Rosenbluth
  • Publication number: 20060047873
    Abstract: A scalable, two-stage round-robin arbiter with re-circulation and bounded latency for use in multi-threaded, multi-processing devices. An apparatus implementing the two-stage arbiter includes a plurality of masters configured in a plurality of clusters, a plurality of targets, and an chassis interconnect that may be controlled to selectively connects a given master to a given target. The chassis interconnect includes multiple sets of bus lines connected between the plurality of clusters and the plurality of targets forming a cross-bar interconnect, including sets of bus lines corresponding to a command bus. A two-stage arbitration scheme is employed to arbitrate access to the command bus. The first arbitration stage is used to arbitrate between command requests issued by masters in a given cluster. The second arbitration stage is used to arbitrate between winning first stage command requests. One embodiment of the arbitration scheme employs re-circulation of second stage losers.
    Type: Application
    Filed: September 2, 2004
    Publication date: March 2, 2006
    Inventors: Bijoy Bose, Sridhar Lakshmanamurthy, Mark Rosenbluth, Irwin Vaz, Alok Mathur
  • Publication number: 20060002412
    Abstract: Methods and apparatus for supporting programmable burst management schemes on pipelined buses. The apparatus includes a plurality of bus masters (masters), configured in a plurality of clusters, and a plurality of target sub-groups. Each target sub-group includes one or more shared resource targets. A scalable chassis infrastructure is used to interconnect the targets with the clusters using a crossbar interconnect configuration including pipelined command, and data buses. The interconnect includes sub-group multiplexers for each sub-group and sub-group selection multiplexers coupled to each cluster. A two-stage arbiter, operatively coupled to the targets, sub-group multiplexers, and sub-group selection multiplexers, is employed to arbitrate transaction requests issued from the masters to the targets and manage transactions. The two-stage arbiter includes a provision for supporting programmable burst management, wherein selected sub-groups can be tuned for handling short or long burst traffic.
    Type: Application
    Filed: June 30, 2004
    Publication date: January 5, 2006
    Inventors: Bijoy Bose, Irwin Vaz, Sridhar Lakshmanamurthy, Mark Rosenbluth
  • Publication number: 20050288917
    Abstract: A debugger tool that enables a user to perform packet-centric debugging in a network processor simulation environment is presented.
    Type: Application
    Filed: June 25, 2004
    Publication date: December 29, 2005
    Inventors: Donald Hooper, Eric Walker, Dennis Rivard, Mark Rosenbluth
  • Publication number: 20050289396
    Abstract: A conditional breakpointing mechanism associates a breakpoint with a location in a program and with a breakpoint function that will be called to execute when the location is reached during a debugging session. The breakpoint function determines if a break will occur. The conditional breakpointing mechanism may used in a multi-threaded, multi-processor simulation environment.
    Type: Application
    Filed: June 25, 2004
    Publication date: December 29, 2005
    Inventors: Donald Hooper, Eric Walker, Dennis Rivard, William Wheeler, Mark Rosenbluth
  • Publication number: 20050251642
    Abstract: Systems and methods are disclosed for aligning data in memory access and other applications. In one embodiment a system is provided that includes a memory unit, a shifter, and control logic operable to route data from the memory unit to the shifter and to send an indication to the shifter of an amount by which the data is to be shifted. In one embodiment, the control logic provides support for speculative execution. The control logic may also permit multiplexing of big endian and little endian data alignment operations, and/or multiplexing of data alignment operations with non-data alignment operations. In one embodiment, the memory unit, shifter, and control logic are integrated within a processing unit, such as a microengine in a network processor.
    Type: Application
    Filed: May 3, 2004
    Publication date: November 10, 2005
    Applicant: Intel Corporation
    Inventors: Jose Niell, Gilbert Wolrich, Thomas Dmukauskas, Mark Rosenbluth
  • Publication number: 20050216710
    Abstract: A system and method for employing multiple hardware contexts and programming engines in a functional pipeline partitioned to facilitate high performance data processing. The system and method includes a parallel processor that assigns system functions for processing data including programming engines that support multiple contexts arranged to provide a functional pipeline by a functional pipeline control unit that passes functional data among the programming engines.
    Type: Application
    Filed: March 29, 2005
    Publication date: September 29, 2005
    Inventors: Hugh Wilkinson, Matthew Adiletta, Gilbert Wolrich, Mark Rosenbluth, Debra Bernstein, Myles Wilde
  • Publication number: 20050216667
    Abstract: A method, apparatus, and system for implementing off-chip cache memory in dual-use static random access memory (SRAM) memory for network processors. An off-chip SRAM memory store is partitioned into a resizable cache region and general-purpose use region (i.e., conventional SRAM use). The cache region is used to store cached data corresponding to portions of data contained in a second off-chip memory store, such as a dynamic RAM (DRAM) memory store or an alternative type of memory store, such as a Rambus DRAM (RDRAM) memory store. An on-chip cache management controller is integrated on the network processor. Various cache management schemes are disclosed, including hardware-based cache tag arrays, memory-based cache tag arrays, content-addressable memory (CAM)-based cache management, and memory address-to-cache line lookup schemes. Under one scheme, multiple network processors are enabled to access shared SRAM and shared DRAM, wherein a portion of the shared SRAM is used as a cache for the shared DRAM.
    Type: Application
    Filed: March 29, 2004
    Publication date: September 29, 2005
    Inventors: Mason Cabot, Frank Hady, Mark Rosenbluth
  • Publication number: 20050216656
    Abstract: The disclosure includes a description of a content addressable memory (CAM) that includes at least one tag input and at least one random access memory. The CAM also includes circuitry to perform multiple read operations of the at least one random access memory with multiple, different ones of the read operations specifying an address based on different subsets of tag bits. The circuitry includes digital logic circuitry coupled to the at least one random access memory to determine whether a lookup tag matches a subset of the different subsets of tag bits.
    Type: Application
    Filed: March 25, 2004
    Publication date: September 29, 2005
    Inventors: Mark Rosenbluth, Gilbert Wolrich
  • Publication number: 20050216655
    Abstract: The disclosure includes a description of a content addressable memory (CAM) that includes at least one tag input, at least one output, and at least one random access memory. The CAM includes circuitry to perform multiple read operations of the at least one random access memory with different ones of the read operations specifying an address being based on different subsets of tag bits. Based on the multiple read operations, the CAM generates at least one signal via the at least one output.
    Type: Application
    Filed: March 25, 2004
    Publication date: September 29, 2005
    Inventor: Mark Rosenbluth
  • Publication number: 20050198361
    Abstract: A method and apparatus for meeting a given content throughput using at least one memory channel is generally described. In accordance with one example embodiment of the invention, a method to meet a given content throughput using at least one memory channel comprising, comparing the size of at least a portion of received content to a capacity of a single contiguous location within at least one memory channel to meet a given throughput and determining whether to distribute the at least portion of received content across the at least one memory channel, based at least in part, on the comparison.
    Type: Application
    Filed: December 29, 2003
    Publication date: September 8, 2005
    Inventors: Prashant Chandra, Uday Naik, Alok Kumar, Ameya Varde, Donald Hooper, Debra Bernstein, Myles Wilde, Mark Rosenbluth
  • Publication number: 20050185437
    Abstract: Memory interleaving includes providing a non-power of two number of channels in a computing system and interleaving memory access among the channels.
    Type: Application
    Filed: April 22, 2005
    Publication date: August 25, 2005
    Inventors: Gilbert Wolrich, Mark Rosenbluth
  • Publication number: 20050135367
    Abstract: In general, in one aspect, the disclosure describes a memory controller. The controller includes an interface to a first memory and an interface to a bus coupling the memory controller to at least one processor. The controller also includes circuitry, responsive to read and write commands received over the bus from the at least one processor, to shift data by an amount identified by at least some of the read and write commands.
    Type: Application
    Filed: December 18, 2003
    Publication date: June 23, 2005
    Inventors: Prashant Chandra, Sridhar Lakshmanamurthy, Chen-Chi Kuo, Rohit Natarajan, Mark Rosenbluth
  • Publication number: 20050135353
    Abstract: In general, in one aspect, the disclosure describes a method of assembling a packet in memory. The method includes reading data included in a first segment of a packet divided into multiple segments and issuing a command to a memory controller that causes the memory controller to shift and write a subset of the read data to a memory coupled to the memory controller. The method also includes saving the remainder of the read data as a first residue, retrieving data included in a second segment of the packet, and writing at least a portion of the retrieved data and the first residue to the memory.
    Type: Application
    Filed: December 18, 2003
    Publication date: June 23, 2005
    Inventors: Prashant Chandra, Sridhar Lakshmanamurthy, Chen-Chi Kuo, Rohit Natarajan, Mark Rosenbluth