Patents by Inventor Carl Alberola
Carl Alberola 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: 9804841Abstract: New instruction definitions for a packet add (PADD) operation and for a single instruction multiple add (SMAD) operation are disclosed. In addition, a new dedicated PADD logic device that performs the PADD operation in about one to two processor clock cycles is disclosed. Also, a new dedicated SMAD logic device that performs a single instruction multiple data add (SMAD) operation in about one to two clock cycles is disclosed.Type: GrantFiled: January 20, 2015Date of Patent: October 31, 2017Assignee: Intel CorporationInventors: Corey Gee, Bapiraju Vinnakota, Saleem Mohammadali, Carl A. Alberola
-
Publication number: 20150134936Abstract: New instruction definitions for a packet add (PADD) operation and for a single instruction multiple add (SMAD) operation are disclosed. In addition, a new dedicated PADD logic device that performs the PADD operation in about one to two processor clock cycles is disclosed. Also, a new dedicated SMAD logic device that performs a single instruction multiple data add (SMAD) operation in about one to two clock cycles is disclosed.Type: ApplicationFiled: January 20, 2015Publication date: May 14, 2015Inventors: Corey GEE, Bapiraju VINNAKOTA, Saleem MOHAMMADALI, Carl A. ALBEROLA
-
Patent number: 8938607Abstract: New instruction definitions for a packet add (PADD) operation and for a single instruction multiple add (SMAD) operation are disclosed. In addition, a new dedicated PADD logic device that performs the PADD operation in about one to two processor clock cycles is disclosed. Also, a new dedicated SMAD logic device that performs a single instruction multiple data add (SMAD) operation in about one to two clock cycles is disclosed.Type: GrantFiled: June 25, 2013Date of Patent: January 20, 2015Assignee: Intel CorporationInventors: Corey Gee, Bapiraju Vinnakota, Saleem Mohammadali, Carl A. Alberola
-
Publication number: 20130290684Abstract: New instruction definitions for a packet add (PADD) operation and for a single instruction multiple add (SMAD) operation are disclosed. In addition, a new dedicated PADD logic device that performs the PADD operation in about one to two processor clock cycles is disclosed. Also, a new dedicated SMAD logic device that performs a single instruction multiple data add (SMAD) operation in about one to two clock cycles is disclosed.Type: ApplicationFiled: June 25, 2013Publication date: October 31, 2013Inventors: Corey Gee, Bapiraju Vinnakota, Saleem Mohammadali, Carl A. Alberola
-
Patent number: 8473719Abstract: New instruction definitions for a packet add (PADD) operation and for a single instruction multiple add (SMAD) operation are disclosed. In addition, a new dedicated PADD logic device that performs the PADD operation in about one to two processor clock cycles is disclosed. Also, a new dedicated SMAD logic device that performs a single instruction multiple data add (SMAD) operation in about one to two clock cycles is disclosed.Type: GrantFiled: October 31, 2006Date of Patent: June 25, 2013Assignee: Intel CorporationInventors: Corey Gee, Bapiraju Vinnakota, Saleem Mohammadali, Carl A. Alberola
-
Publication number: 20100180100Abstract: A microprocessor includes a direct access memory (DMA) engine which is responsive to pairs of block indices associated with one or more blocks in a first logical plane and transfers the one or more blocks between the first logical plane, a second logical plane, and a physical memory space according to the pairs of block indices. The logical planes represent two dimensional fields of data such as those found in images and videos. The microprocessor further comprises cache memory which updates its content with one or more cache-blocks which are in the neighborhood of the one or more blocks improving the operation of the cache memory by increasing cache hits. The DMA engine may further operate on n-dimensional blocks in a n-dimensional logical space. The microprocessor further includes special-purpose instructions, operative on a single-instruction-multiple-data (SIMD) computation unit, especially tailored to perform matrix operations.Type: ApplicationFiled: January 13, 2009Publication date: July 15, 2010Inventors: Tsung-Hsin Lu, Carl Alberola, Rajesh Chhabria, Zhenyu Zhou
-
Publication number: 20070185849Abstract: Embodiments of the invention relate to data structure traversal instructions that perform efficient data structure traversal operations in packet processing applications. In one embodiment, a data structure traversal instruction for use in packet processing includes a control. In response to the control, the data structure traversal instruction accesses at least one node of a data structure. The data structure is typically a linked list or a binary tree. In an exemplary environment, the data structure traversal instruction may be implemented by a packet processor core of packet processor in a network device. In particular, three data structure traversal instructions are disclosed for accessing a node in a linked list and returning a data field, searching for a key value in a node of linked list, and accessing a node in a binary tree and searching for a matching key value, respectively.Type: ApplicationFiled: April 3, 2007Publication date: August 9, 2007Inventors: Bapiraju Vinnakota, Carl Alberola, Saleem Mohammadali
-
Patent number: 7249248Abstract: According to one embodiment of the invention, an apparatus is provided which includes a first register to hold an initial value of a first index associated with a looping instruction to be executed for a number of iterations, a second register to hold an initial value of a second index associated with the respective looping instruction, and a third register to hold data indicating non-linear variation pattern associated with the second index. For each iteration, actual increment of the first index and actual increment of the second index are set based on a target increment and the data indicating the non-linear variation pattern associated with the second index.Type: GrantFiled: November 25, 2002Date of Patent: July 24, 2007Assignee: Intel CorporationInventors: Bapiraiu Vinnnakota, Saleem Mohammadali, Carl A. Alberola
-
Publication number: 20070074002Abstract: New instruction definitions for a packet add (PADD) operation and for a single instruction multiple add (SMAD) operation are disclosed. In addition, a new dedicated PADD logic device that performs the PADD operation in about one to two processor clock cycles is disclosed. Also, a new dedicated SMAD logic device that performs a single instruction multiple data add (SMAD) operation in about one to two clock cycles is disclosed.Type: ApplicationFiled: October 31, 2006Publication date: March 29, 2007Inventors: Corey Gee, Bapiraju Vinnakota, Saleem Mohammadali, Carl Alberola
-
Patent number: 7139900Abstract: New instruction definitions for a packet add (PADD) operation and for a single instruction multiple add (SMAD) operation are disclosed. In addition, a new dedicated PADD logic device that performs the PADD operation in about one to two processor clock cycles is disclosed. Also, a new dedicated SMAD logic device that performs a single instruction multiple data add (SMAD) operation in about one to two clock cycles is disclosed.Type: GrantFiled: June 23, 2003Date of Patent: November 21, 2006Assignee: Intel CorporationInventors: Corey Gee, Bapiraju Vinnakota, Saleem Mohammadali, Carl A. Alberola
-
Publication number: 20050138331Abstract: According to some embodiments, an instruction is pre-decoded at a direct memory access unit.Type: ApplicationFiled: December 22, 2003Publication date: June 23, 2005Inventors: Carl Alberola, Amit Gupta, Tsung-Hsin Lu
-
Publication number: 20040260914Abstract: New instruction definitions for a packet add (PADD) operation and for a single instruction multiple add (SMAD) operation are disclosed. In addition, a new dedicated PADD logic device that performs the PADD operation in about one to two processor clock cycles is disclosed. Also, a new dedicated SMAD logic device that performs a single instruction multiple data add (SMAD) operation in about one to two clock cycles is disclosed.Type: ApplicationFiled: June 23, 2003Publication date: December 23, 2004Inventors: Corey Gee, Bapiraju Vinnakota, Saleem Mohammadali, Carl A. Alberola
-
Publication number: 20040103086Abstract: Embodiments of the invention relate to data structure traversal instructions that perform efficient data structure traversal operations in packet processing applications. In one embodiment, a data structure traversal instruction for use in packet processing includes a control. In response to the control, the data structure traversal instruction accesses at least one node of a data structure. The data structure is typically a linked list or a binary tree. In an exemplary environment, the data structure traversal instruction may be implemented by a packet processor core of packet processor in a network device. In particular, three data structure traversal instructions are disclosed for accessing a node in a linked list and returning a data field, searching for a key value in a node of linked list, and accessing a node in a binary tree and searching for a matching key value, respectively.Type: ApplicationFiled: November 26, 2002Publication date: May 27, 2004Inventors: Bapiraju Vinnakota, Carl A. Alberola, Saleem Mohammadali
-
Publication number: 20040103270Abstract: According to one embodiment of the invention, an apparatus is provided which includes a first register to hold an initial value of a first index associated with a looping instruction to be executed for a number of iterations, a second register to hold an initial value of a second index associated with the respective looping instruction, and a third register to hold data indicating non-linear variation pattern associated with the second index. For each iteration, actual increment of the first index and actual increment of the second index are set based on a target increment and the data indicating the non-linear variation pattern associated with the second index.Type: ApplicationFiled: November 25, 2002Publication date: May 27, 2004Inventors: Bapiraiu Vinnnakota, Saleem Mohammadali, Carl A. Alberola
-
Publication number: 20040068638Abstract: According to one embodiment of the invention, an apparatus is provided which includes a set of comparators to compare each address of flow-change instructions identified in a program against address of the current instruction as the program being executed. Each comparator generates a respective signal having a first value if the address of the respective flow-change instruction matches the address of the current instruction. Target addresses associated with the flow change instructions and a default address of the next instruction are provided as inputs to a multiplexer which selects either the default address or one of the target addresses as the next instruction address, based on the signals generated by the comparators.Type: ApplicationFiled: October 4, 2002Publication date: April 8, 2004Inventors: Carl A. Alberola, Saleem Mohammadali, Bapi Vinnakota
-
Publication number: 20030231660Abstract: Embodiments of the invention relate to bit manipulation instructions that perform efficient bit manipulation operations for packet processing applications. In one embodiment, a bit manipulation instruction for use in packet processing includes a control. In response to the control, the bit manipulation instruction selects a plurality of bits from a source register and writes the selected plurality of bits into a destination register in a manner designated by the control. In an exemplary environment, the bit manipulation instruction may be implemented by a packet processor core of packet processor in a network device. In particular, five bit manipulation instructions for bit extraction, bit packing, bit setting, bit unpacking, and bit matching operations will be disclosed. These instructions are particularly useful for packet processing applications.Type: ApplicationFiled: June 14, 2002Publication date: December 18, 2003Inventors: Bapiraju Vinnakota, Saleem Mohammadali, Carl Alberola