Patents by Inventor Jean L. Calvignac
Jean L. Calvignac 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: 8218554Abstract: The CRC for the CPS Header of an ATM AAL2 cell is generated by a CRC generator which uses the 8 bits of the CID field to generate partial 5 bits CRCs which are loaded in a first table. The 6 bits LI field and 5 bits UUI field are added to the partial 5 bits CRC to form 16 bits. The CRC generator uses the 2.sup.16 bits to generate a second CRC table. The CRC for a particular CPS header is generated by correlating bits in the CID field, LI field and UUI field with the two tables.Type: GrantFiled: October 22, 2007Date of Patent: July 10, 2012Assignee: International Business Machines CorporationInventors: James J. Allen, Jr., Jean L. Calvignac, Natarajan Vaidhyanathan, Fabrice J. Verplanken
-
Publication number: 20120159132Abstract: Mechanisms are provided for a network processor comprising a parser, the parser being operable to work in normal operation mode or in repeat operation mode, the parser in normal operation mode loading and executing at least one rule in a first and a second working cycle respectively, the parser in repeat operation mode being operable to repeatedly execute a repeat-instruction, the execution of each repeat corresponding to one working cycle.Type: ApplicationFiled: July 15, 2011Publication date: June 21, 2012Applicant: International Business Machines CorporationInventors: Francois Abel, Jean L. Calvignac, Chih-jen Chang, Philippe Damon, Fabrice J. Verplanken
-
Publication number: 20120155267Abstract: According to embodiments of the invention, there is provided a method, a system, and a computer program product for operating a network processor. The network processor processing a received data packet by reading a flow identification in the data packet; determining a quality of service criteria (QoSC) for the data packet; mapping the flow identification and the QoSC into an index for selecting a receive-queue for routing the data packet; and utilizing the index to route the data packet to the receive-queue.Type: ApplicationFiled: November 22, 2011Publication date: June 21, 2012Applicant: International Business Machines CorporationInventors: Francois Abel, Claude Basso, Jean L. Calvignac, Natarajan Vaidhyanathan, Fabrice Verplanken, Colin B. Verrilli
-
Publication number: 20120155492Abstract: A data path for streaming data includes a plurality of sequential data registers, each of the plurality of sequential data registers comprising a plurality of data fields, wherein the streaming data moves sequentially through the sequential data registers; and a multiplexing unit, the multiplexing unit configured such that the multiplexing unit has access to each of the plurality of data fields of the plurality of sequential data registers, and wherein the multiplexing unit is configured to extract data from the streaming data as the streaming data moves through the sequential data registers in response to a data request.Type: ApplicationFiled: December 21, 2010Publication date: June 21, 2012Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Francois Abel, Jean L. Calvignac, Christoph Hagleitner, Jonathan B. Rohrer, Jan Van Lunteren, Fabrice J. Verplanken
-
Publication number: 20120155494Abstract: A network packet includes a packet key that includes one or more source-destination field pairs that each include a source field and a destination field. For each selected source-destination field pair, first and second sections are selected in the packet key. A source field value is extracted from the source field and a destination field value is extracted from the destination field. For each source bit of the source field value: a destination bit is selected from the destination field; an OR logic function is applied to the source bit and the destination bit to generate a first resulting value stored at the same bit position as the source bit in the first section; an AND logic function is applied to the source bit and the destination bit to generate a second resulting value stored at the same bit position as the source bit in the second section.Type: ApplicationFiled: December 14, 2011Publication date: June 21, 2012Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: CLAUDE BASSO, JEAN L. CALVIGNAC, NATARAJAN VAIDHYANATHAN, FABRICE VERPLANKEN
-
Publication number: 20120147901Abstract: A technique for generating a compacted binary identifier includes breaking an original binary identifier into equal parts. Each bit of a first one of the parts is exclusive ORed with a start-up value to generate a first result. Each bit of the first result is exclusive ORed with a respective bit of a second one of the parts to generate a second result.Type: ApplicationFiled: December 14, 2011Publication date: June 14, 2012Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Claude Basso, Jean L. Calvignac, Natarajan Vaidhyanathan, Fabrice Verplanken
-
Publication number: 20120147892Abstract: A technique for analyzing network packets includes receiving, by a network processor, a network packet having a packet header including address and control information. A set of bytes are extracted, using the network processor, from the packet header and a set of input bits for generating a hash code are derived, using the network processor, from the set of bytes. Finally, the hash code is generated using the input bits.Type: ApplicationFiled: December 14, 2011Publication date: June 14, 2012Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Claude Basso, Jean L. Calvignac, Natarajan Vaidhyanathan, Fabrice Verplanken
-
Publication number: 20120151307Abstract: Disclosed is a method and system for validating a data packet by a network processor supporting a first network protocol and a second network protocol and utilizing shared hardware. The network processor receives a data packet; identifies a network packet protocol for the data packet; and processes the data packet according to the network packet protocol comprising: updating a first register with a first partial packet length specific to the first network protocol; updating a second register with a second partial packet length specific to the second network protocol; and updating a third register with a first checksum computed from fields independent of the network protocol. The system produces a second checksum utilizing a function that combines values from the first register, the second register, and the third register. The system validates the data packet by comparing the data packet checksum to the second checksum.Type: ApplicationFiled: November 22, 2011Publication date: June 14, 2012Applicant: International Business Machines CorporationInventors: Francois Abel, Claude Basso, Jean L. Calvignac, Natarajan Vaidhyanathan, Fabrice Verplanken
-
Patent number: 8179897Abstract: The CRC for the CPS Header of an ATM AAL2 cell is generated by a CRC generator which uses the 8 bits of the CID field to generate partial 5 bits CRCs which are loaded in a first table. The 6 bits LI field and 5 bits UUI field are added to the partial 5 bits CRC to form 16 bits. The CRC generator uses the 2.sup.16 bits to generate a second CRC table. The CRC for a particular CPS header is generated by correlating bits in the CID field, LI field and UUI field with the two tables.Type: GrantFiled: January 8, 2008Date of Patent: May 15, 2012Assignee: International Business Machines CorporationInventors: James J. Allen, Jr., Jean L. Calvignac, Natarajan Vaidhyanathan, Fabrice J. Verplanken
-
Patent number: 8135752Abstract: Techniques and articles of manufacture are provided comprising computer readable programs that, when executed on the computer, cause the computer to delete a leaf from a patricia tree having leaf keys and pattern search control blocks containing a prefix and either an end-of-trail leaf or a pointer to another of the pattern search control blocks, by placing each of the prefixes in a tree prefix table; searching for a key in the tree; searching for the key in the prefix table if the tree searching does not find the key in the tree; confirming that the key is deleted if the key is not found in the prefix table; deleting the key from one of the pattern search control blocks; and collapsing the patricia tree by eliminating the left most pattern search control block from the patricia tree if the patricia tree searching finds the key.Type: GrantFiled: January 8, 2009Date of Patent: March 13, 2012Assignee: International Business Machines CorporationInventors: Claude Basso, Jean L. Calvignac, Gordon T. Davis, Marco Heddes, Piyush C. Patel, Steven R. Perrin, Grayson W. Randall, Sonia K. Rovner
-
Patent number: 8122132Abstract: A technique for operating a high performance computing cluster (HPC) having multiple nodes (each of which include multiple processors) includes periodically broadcasting information, related to processor utilization and network utilization at each of the multiple nodes, from each of the multiple nodes to remaining ones of the multiple nodes. Respective local job tables maintained in each of the multiple nodes are updated based on the broadcast information. One or more threads are then moved from one or more of the multiple processors to a different one of the multiple processors (based on the broadcast information in the respective local job tables).Type: GrantFiled: December 16, 2008Date of Patent: February 21, 2012Assignee: International Business Machines CorporationInventors: Lakshminarayana Baba Arimilli, Ravi Kumar Arimilli, Claude Basso, Jean L. Calvignac
-
Publication number: 20110302481Abstract: Translating between a first communication protocol used by a first network component and a second communication protocol used by a second network, where translating includes: receiving, by a network engine adapter operating independently from the first and second network components, data packets from the first and second network components; and performing, by the network engine, a combined communication protocol based on the first communication protocol and the second communication protocol, including manipulating data packets of at least one of the first communication protocol or the second communication protocol, thereby offloading performance requirements for the combined communication protocol from the first and second network components.Type: ApplicationFiled: June 1, 2011Publication date: December 8, 2011Applicant: International Business Machines CorporationInventors: Jean L. Calvignac, Daniel G. Eisenhauer, Ashish A. More, Anil Pothireddy, Christoph Raisch, Saravanan Sethuraman, Vibhor K. Srivastava, Jan-Bernd Themann
-
Patent number: 7995472Abstract: A network processor dataflow chip and method for flexible dataflow are provided. The dataflow chip comprises a plurality of on-chip data transmission and scheduling circuit structures. The data transmission and scheduling circuit structures are selected responsive to indicators. Data transmission circuit structures may comprise selectable frame processing and data transmission functions. Selectable frame processing may comprise cut and paste, full dispatch and store and dispatch frame processing. Scheduling functions include full internal scheduling, calendar scheduling in communication with an external scheduler, and external calendar scheduling. In another aspect of the present invention, data transmission functions may comprise low latency and normal latency external processor interfaces for selectively providing privileged access to dataflow chip resources.Type: GrantFiled: January 6, 2009Date of Patent: August 9, 2011Assignee: International Business Machines CorporationInventors: Jean L. Calvignac, Chih-jen Chang, Joseph F. Logan, Fabrice J. Verplanken, Daniel Wind
-
Publication number: 20110158254Abstract: A method and apparatus for assigning work, such as data packets, from a plurality of sources, such as data queues in a network processing device, to a plurality of sinks, such as processor threads in the network processing device. In a given processing period, a source is selected in a manner that maintains fairness in the selection process. A corresponding sink is selected for the selected source based on processing efficiency. If, due to assignment constraints, no sink is available for the selected source, the selected source is retained for selection in the next scheduling period, to maintain fairness. In this case, to optimize efficiency, a most efficient currently available sink is identified and a source for providing work to that sink is selected.Type: ApplicationFiled: December 30, 2009Publication date: June 30, 2011Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Claude Basso, Jean L. Calvignac, Chih-Jen Chang, Hubertus Franke, Colin Beaton Verrilli
-
Publication number: 20110158250Abstract: A method and apparatus for assigning work, such as data packets, from a plurality of sources, such as data queues in a network processing device, to a plurality of sinks, such as processor threads in the network processing device. In a given processing period, sinks that are available to receive work are identified and sources qualified to send work to the available sinks are determined taking into account any assignment constraints. A single source is selected from an overlap of the qualified sources and sources having work available. This selection may be made using a hierarchical source scheduler for processing subsets of supported sources simultaneously in parallel. A sink to which work from the selected source may be assigned is selected from available sinks qualified to receive work from the selected source.Type: ApplicationFiled: December 30, 2009Publication date: June 30, 2011Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Claude Basso, Jean L. Calvignac, Chih-Jen Chang, Hubertus Franke, Terry L. Nelms, II, Fabrice Jean Verplanken
-
Publication number: 20110158249Abstract: An assignment constraint matrix method and apparatus used in assigning work, such as data packets, from a plurality of sources, such as data queues in a network processing device, to a plurality of sinks, such as processor threads in the network processing device. The assignment constraint matrix is implemented as a plurality of qualifier matrixes adapted to operate simultaneously in parallel. Each of the plurality of qualifier matrixes is adapted to determine sources in a subset of supported sources that are qualified to provide work to a set of sinks based on assignment constraints. The determination of qualified sources may be based sink availability information that may be provided for a set of sinks on a single chip or distributed on multiple chips.Type: ApplicationFiled: December 30, 2009Publication date: June 30, 2011Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Claude Basso, Jean L. Calvignac, Chih-Jen Chang, Hubertus Franke, Fabrice J. Verplanken, Colin B. Verrilli
-
Patent number: 7929438Abstract: A pipeline configuration is described for use in network traffic management for the hardware scheduling of events arranged in a hierarchical linkage. The configuration reduces costs by minimizing the use of external SRAM memory devices. This results in some external memory devices being shared by different types of control blocks, such as flow queue control blocks, frame control blocks and hierarchy control blocks. Both SRAM and DRAM memory devices are used, depending on the content of the control block (Read-Modify-Write or ‘read’ only) at enqueue and dequeue, or Read-Modify-Write solely at dequeue. The scheduler utilizes time-based calendars and weighted fair queueing calendars in the egress calendar design. Control blocks that are accessed infrequently are stored in DRAM memory while those accessed frequently are stored in SRAM.Type: GrantFiled: July 18, 2008Date of Patent: April 19, 2011Assignee: International Business Machines CorporationInventors: Claude Basso, Jean L. Calvignac, Chih-jen Chang, Gordon T. Davis, Fabrice J. Verplanken
-
Patent number: 7913034Abstract: Access arbiters are used to prioritize read and write access requests to individual memory banks in DRAM memory devices, particularly fast cycle DRAMs. This serves to optimize the memory bandwidth available for the read and the write operations by avoiding consecutive accesses to the same memory bank and by minimizing dead cycles. The arbiter first divides DRAM accesses into write accesses and read accesses. The access requests are divided into accesses per memory bank with a threshold limit imposed on the number of accesses to each memory bank. The write receive packets are rotated among the banks based on the write queue status. The status of the write queue for each memory bank may also be used for system flow control. The arbiter also typically includes the ability to determine access windows based on the status of the command queues, and to perform arbitration on each access window.Type: GrantFiled: August 1, 2007Date of Patent: March 22, 2011Assignee: International Business Machines CorporationInventors: Jean L. Calvignac, Chih-jen Chang, Gordon T. Davis, Fabrice J. Verplanken
-
Patent number: 7912988Abstract: A mechanism for offloading the management of receive queues in a split (e.g. split socket, split iSCSI, split DAFS) stack environment, including efficient queue flow control and TCP/IP retransmission support. An Upper Layer Protocol (ULP) creates receive work queues and completion queues that are utilized by an Internet Protocol Suite Offload Engine (IPSOE) and the ULP to transfer information and carry out send operations. As consumers initiate receive operations, receive work queue entries (RWQEs) are created by the ULP and written to the receive work queue (RWQ). The ISPOE is notified of a new entry to the RWQ and it subsequently reads this entry that contains pointers to the data that is to be received. After the data is received, the IPSOE creates a completion queue entry (CQE) that is written into the completion queue (CQ). After the CQE is written, the ULP subsequently processes the entry and removes it from the CQE, freeing up a space in both the RWQ and CQ.Type: GrantFiled: July 14, 2006Date of Patent: March 22, 2011Assignee: International Business Machines CorporationInventors: William Todd Boyd, Jean L. Calvignac, Chih-Jen Chang, Douglas J. Joseph, Renato John Recio
-
Patent number: 7904693Abstract: An addressing model is provided where devices, including I/O devices, are addressed with internet protocol (IP) addresses, which are considered part of the virtual address space. A task, such as an application, may be assigned an effective address range, which corresponds to addresses in the virtual address space. The virtual address space is expanded to include Internet protocol addresses. Thus, the page frame tables are also modified to include entries for IP addresses and additional properties for devices and I/O. Thus, a processing element, such as an I/O adapter or even a printer, for example, may also be addressed using IP addresses without the need for library calls, device drivers, pinning memory, and so forth. This addressing model also provides full virtualization of resources across an IP interconnect, allowing a process to access an I/O device across a network.Type: GrantFiled: February 1, 2008Date of Patent: March 8, 2011Assignee: International Business Machines CorporationInventors: Ravi K. Arimilli, Claude Basso, Jean L. Calvignac, Piyush Chaudhary, Edward J. Seminaro