Patents by Inventor Andre DeHon
Andre DeHon 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: 12159143Abstract: A system and method of processing instructions may comprise an application processing domain (APD) and a metadata processing domain (MTD). The APD may comprise an application processor executing instructions and providing related information to the MTD. The MTD may comprise a tag processing unit (TPU) having a cache of policy-based rules enforced by the MTD. The TPU may determine, based on policies being enforced and metadata tags and operands associated with the instructions, that the instructions are allowed to execute (i.e., are valid). The TPU may write, if the instructions are valid, the metadata tags to a queue. The queue may (i) receive operation output information from the application processing domain, (ii) receive, from the TPU, the metadata tags, (iii) output, responsive to receiving the metadata tags, resulting information indicative of the operation output information and the metadata tags; and (iv) permit the resulting information to be written to memory.Type: GrantFiled: July 21, 2023Date of Patent: December 3, 2024Assignee: The Charles Stark Draper LaboratoryInventors: Steve E. Milburn, Eli Boling, Andre DeHon, Andrew B. Sutherland, Gregory T. Sullivan
-
Publication number: 20230367603Abstract: A system and method of processing instructions may comprise an application processing domain (APD) and a metadata processing domain (MTD). The APD may comprise an application processor executing instructions and providing related information to the MTD. The MTD may comprise a tag processing unit (TPU) having a cache of policy-based rules enforced by the MTD. The TPU may determine, based on policies being enforced and metadata tags and operands associated with the instructions, that the instructions are allowed to execute (i.e., are valid). The TPU may write, if the instructions are valid, the metadata tags to a queue. The queue may (i) receive operation output information from the application processing domain, (ii) receive, from the TPU, the metadata tags, (iii) output, responsive to receiving the metadata tags, resulting information indicative of the operation output information and the metadata tags; and (iv) permit the resulting information to be written to memory.Type: ApplicationFiled: July 21, 2023Publication date: November 16, 2023Inventors: Steve E. Milburn, Eli Boling, Andre DeHon, Andrew B. Sutherland, Gregory T. Sullivan
-
Patent number: 11232208Abstract: Methods, systems, and computer readable media for using variable metadata tags. A method occurs at a metadata processing system for enforcing security policies in a processor architecture. The method comprises: receiving, at the metadata processing system, a tag associated with a word in memory, wherein the tag indicates a memory location containing metadata associated with the word and wherein the tag length is at least in part determined using tag usage frequency; obtaining the metadata from the memory location, and determining, using the metadata, whether the word or a related instruction violates a security policy.Type: GrantFiled: February 26, 2020Date of Patent: January 25, 2022Assignee: THE TRUSTEES OF THE UNIVERSITY OF PENNSYLVANIAInventors: Andre DeHon, Udit Dhawan, Nicholas Edward Roessler
-
Publication number: 20200272736Abstract: Methods, systems, and computer readable media for using variable metadata tags. A method occurs at a metadata processing system for enforcing security policies in a processor architecture. The method comprises: receiving, at the metadata processing system, a tag associated with a word in memory, wherein the tag indicates a memory location containing metadata associated with the word and wherein the tag length is at least in part determined using tag usage frequency; obtaining the metadata from the memory location, and determining, using the metadata, whether the word or a related instruction violates a security policy.Type: ApplicationFiled: February 26, 2020Publication date: August 27, 2020Inventors: Andre DeHon, Udit Dhawan, Nicholas Edward Roessler
-
Patent number: 10719630Abstract: A system and method for metadata processing that can be used to encode an arbitrary number of security policies for code running on a stored-program processor. This disclosure adds metadata to every word in the system and adds a metadata processing unit that works in parallel with data flow to enforce an arbitrary set of policies, such that metadata is unbounded and software programmable to be applicable to a wide range of metadata processing policies. This instant disclosure is applicable to a wide range of uses including safety, security, and synchronization.Type: GrantFiled: September 18, 2018Date of Patent: July 21, 2020Assignees: BAE Systems Information and Electronic Systems Integration Inc., The Trustees of the University of PennsylvaniaInventors: Silviu S Chiricescu, Andre DeHon, Udit Dhawan
-
Publication number: 20190034665Abstract: A system and method for metadata processing that can be used to encode an arbitrary number of security policies for code running on a stored-program processor. This disclosure adds metadata to every word in the system and adds a metadata processing unit that works in parallel with data flow to enforce an arbitrary set of policies, such that metadata is unbounded and software programmable to be applicable to a wide range of metadata processing policies. This instant disclosure is applicable to a wide range of uses including safety, security, and synchronization.Type: ApplicationFiled: September 18, 2018Publication date: January 31, 2019Inventors: Silviu S. Chiricescu, Andre DeHon, Udit Dhawan
-
Patent number: 10078763Abstract: A system and method for metadata processing that can be used to encode an arbitrary number of security policies for code running on a stored-program processor. This disclosure adds metadata to every word in the system and adds a metadata processing unit that works in parallel with data flow to enforce an arbitrary set of policies, such that metadata is unbounded and software programmable to be applicable to a wide range of metadata processing policies. This instant disclosure is applicable to a wide range of uses including safety, security, and synchronization.Type: GrantFiled: November 19, 2015Date of Patent: September 18, 2018Assignees: BAE Systems Information and Electronic Systems Integration Incc, The Trustees of the University of PennsylvaniaInventors: Silviu Chiricescu, Andre DeHon, Udit Dhawan
-
Publication number: 20160140363Abstract: A system and method for metadata processing that can be used to encode an arbitrary number of security policies for code running on a stored-program processor. This disclosure adds metadata to every word in the system and adds a metadata processing unit that works in parallel with data flow to enforce an arbitrary set of policies, such that metadata is unbounded and software programmable to be applicable to a wide range of metadata processing policies. This instant disclosure is applicable to a wide range of uses including safety, security, and synchronization.Type: ApplicationFiled: November 19, 2015Publication date: May 19, 2016Inventors: Silviu Chiricescu, Andre DeHon, Udit Dhawan
-
Patent number: 9252214Abstract: Disclosed is a method to construct a device that includes a plurality of nanowires (NWs) each having a core and at least one shell. The method includes providing a plurality of radially encoded NWs where each shell contains one of a plurality of different shell materials; and differentiating individual ones of the NWs from one another by selectively removing or not removing shell material within areas to be electrically coupled to individual ones of a plurality of mesowires (MWs). Also disclosed is a nanowire array that contains radially encoded NWs, and a computer program product useful in forming a nanowire array.Type: GrantFiled: October 22, 2014Date of Patent: February 2, 2016Assignee: Brown UniversityInventors: Andre Dehon, Charles M. Lieber, John E. Savage, Eric Rachlin
-
Publication number: 20150108423Abstract: Disclosed is a method to construct a device that includes a plurality of nanowires (NWs) each having a core and at least one shell. The method includes providing a plurality of radially encoded NWs where each shell contains one of a plurality of different shell materials; and differentiating individual ones of the NWs from one another by selectively removing or not removing shell material within areas to be electrically coupled to individual ones of a plurality of mesowires (MWs). Also disclosed is a nanowire array that contains radially encoded NWs, and a computer program product useful in forming a nanowire array.Type: ApplicationFiled: October 22, 2014Publication date: April 23, 2015Applicant: Brown University Research FoundationInventors: Andre Dehon, Charles M. Lieber, John E. Savage, Eric Rachlin
-
Patent number: 8883568Abstract: Disclosed is a method to construct a device that includes a plurality of nanowires (NWs) each having a core and at least one shell. The method includes providing a plurality of radially encoded NWs where each shell contains one of a plurality of different shell materials; and differentiating individual ones of the NWs from one another by selectively removing or not removing shell material within areas to be electrically coupled to individual ones of a plurality of mesowires (MWs). Also disclosed is a nanowire array that contains radially encoded NWs, and a computer program product useful in forming a nanowire array.Type: GrantFiled: November 21, 2011Date of Patent: November 11, 2014Assignee: Brown University Research FoundationInventors: Andre Dehon, Charles M. Lieber, John E. Savage, Eric Rachlin
-
Patent number: 8552621Abstract: Systems and methods for operating piezoelectric switches are disclosed. A piezoelectric switching system includes a first actuator, a second actuator, and a bias voltage source. The first actuator has a first body electrode, a first gate electrode, and a first contact region. The second actuator has a second body electrode, a second gate electrode, and a second contact region. The first and second contact regions are separated by a gap. The bias voltage source applies a bias voltage to the body electrodes. The bias voltage is lower in magnitude than an actuation voltage for the switch. The gate electrodes receive a switching voltage. The switching voltage causes at least one of the first and second actuators to bend, thereby closing the gap such that the second contact region electrically contacts the first contact region. The difference between the switching voltage and the bias voltage exceeds the actuation voltage of the switch.Type: GrantFiled: November 29, 2010Date of Patent: October 8, 2013Assignee: The Trustees Of The University of PennsylvaniaInventors: Gianluca Piazza, Nipun Sinha, Timothy S. Jones, Zhijun Guo, Graham E. Wabiszewski, Robert Carpick, Andre Dehon
-
Publication number: 20120061648Abstract: Disclosed is a method to construct a device that includes a plurality of nanowires (NWs) each having a core and at least one shell. The method includes providing a plurality of radially encoded NWs where each shell contains one of a plurality of different shell materials; and differentiating individual ones of the NWs from one another by selectively removing or not removing shell material within areas to be electrically coupled to individual ones of a plurality of mesowires (MWs). Also disclosed is a nanowire array that contains radially encoded NWs, and a computer program product useful in forming a nanowire array.Type: ApplicationFiled: November 21, 2011Publication date: March 15, 2012Inventors: Andre DEHON, Charles M. Lieber, John E. Savage, Eric Rachlin
-
Patent number: 8072005Abstract: Disclosed is a method to construct a device that includes a plurality of nanowires (NWs) each having a core and at least one shell. The method includes providing a plurality of radially encoded NWs where each shell contains one of a plurality of different shell materials; and differentiating individual ones of the NWs from one another by selectively removing or not removing shell material within areas to be electrically coupled to individual ones of a plurality of mesowires (MWs). Also disclosed is a nanowire array that contains radially encoded NWs, and a computer program product useful in forming a nanowire array.Type: GrantFiled: February 2, 2006Date of Patent: December 6, 2011Assignee: Brown University Research FoundationInventors: Andre Dehon, Charles M. Lieber, John E. Savage, Eric Rachlin
-
Publication number: 20110148251Abstract: Systems and methods for operating piezoelectric switches are disclosed. A piezoelectric switching system includes a first actuator, a second actuator, and a bias voltage source. The first actuator has a first body electrode, a first gate electrode, and a first contact region. The second actuator has a second body electrode, a second gate electrode, and a second contact region. The first and second contact regions are separated by a gap. The bias voltage source applies a bias voltage to the body electrodes. The bias voltage is lower in magnitude than an actuation voltage for the switch. The gate electrodes receive a switching voltage. The switching voltage causes at least one of the first and second actuators to bend, thereby closing the gap such that the second contact region electrically contacts the first contact region. The difference between the switching voltage and the bias voltage exceeds the actuation voltage of the switch.Type: ApplicationFiled: November 29, 2010Publication date: June 23, 2011Applicant: The Trustees of the University of PennsylvaniaInventors: Gianluca Piazza, Nipun Sinha, Timothy S. Jones, Zhijun Guo, Graham E. Wabiszewski, Robert Carpick, Andre DeHon
-
Publication number: 20080254291Abstract: Disclosed is a method to construct a device that includes a plurality of nanowires (NWs) each having a core and at least one shell. The method includes providing a plurality of radially encoded NWs where each shell contains one of a plurality of different shell materials; and differentiating individual ones of the NWs from one another by selectively removing or not removing shell material within areas to be electrically coupled to individual ones of a plurality of mesowires (MWs). Also disclosed is a nanowire array that contains radially encoded NWs, and a computer program product useful in forming a nanowire array.Type: ApplicationFiled: February 2, 2006Publication date: October 16, 2008Inventors: Andre Dehon, Charles M. Lieber, John E. Savage, Eric Rachlin
-
Publication number: 20080062735Abstract: Methods for obtaining codes to be implemented in coding nanoscale wires are disclosed. The methods disclosed teach how to code a reduced number of nanoscale wires through the use of rotation group codes. The methods further teach how to generate different code permutations through random misalignment and how to promote uniform code probability selection.Type: ApplicationFiled: August 24, 2004Publication date: March 13, 2008Inventor: Andre DeHon
-
Publication number: 20070234128Abstract: An apparatus and method that use an associative calculator for calculating a sequence of non-associative operations on a set of input data, comprising: using the associative calculator to calculate from the set of input data an evaluated value of each operation of said sequence as if the non-associative operations were associative operations; detecting if some of the evaluated values are erroneous; if there are erroneous evaluated values, correcting the erroneous evaluated values; and if there are no erroneous evaluated value, outputting as the result of the sequence of non-associative operations the evaluated value of the last operation of the sequence.Type: ApplicationFiled: January 19, 2007Publication date: October 4, 2007Inventors: Andre DeHon, Nachiket Kapre
-
Publication number: 20070214445Abstract: A method and a device for performing placement of a plurality of elements for circuit design. A potential location is assigned to each element and a placement engine is assigned to each potential location. Pairing operations are performed, in parallel, between placement engines to determine whether to perform exchange of the elements associated with the engines. Exchange determination is based both on a cost function and on randomness considerations. Also self-placement is allowed, where the placement engines are implemented on the same hardware system on which the elements are to be placed.Type: ApplicationFiled: November 29, 2006Publication date: September 13, 2007Inventors: Andre DeHon, Michael Wrighton
-
Publication number: 20070127280Abstract: A method for constructing and addressing a nanoscale memory with known addresses and for tolerating defects which may arise during manufacture or device operational lifetime. During construction, nanoscale wires with addresses are stochastically assembled. During a programming phase, nanoscale wires are stochastically selected using their stochastic addresses through microscale inputs and a desired address code is associated with the selected nanoscale wires. Memory addresses are associated to the codes and then selected using the known codes during read/write operations from/to the memory.Type: ApplicationFiled: May 25, 2004Publication date: June 7, 2007Inventors: Andre DeHon, Helia Naeimi