Patents by Inventor Neil S. Feiereisel

Neil S. Feiereisel 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: 9870206
    Abstract: System and method for creating a graphical program. A first replication structure may be included in a graphical program, where the first replication structure specifies replication of any graphical program code inside the first replication structure. First graphical program code may be included inside the first replication structure. An implementation of the graphical program may be automatically generated, including generating multiple instances of an implementation of the first graphical program code within the implementation of the graphical program. Executing the graphical program may include executing the multiple instances, e.g., concurrently and/or serially.
    Type: Grant
    Filed: November 10, 2015
    Date of Patent: January 16, 2018
    Assignee: NATIONAL INSTRUMENTS CORPORATION
    Inventors: Julian G. Valdez, Taylor L. Riche, Neil S. Feiereisel, Robert E. Dye, Stephen R. Loftus-Mercer, Dustyn K. Blasig, Mary E. Fletcher, Brent C. Schwan, Stephen L. Dark
  • Publication number: 20170131976
    Abstract: System and method for creating a graphical program. A first replication structure may be included in a graphical program, where the first replication structure specifies replication of any graphical program code inside the first replication structure. First graphical program code may be included inside the first replication structure. An implementation of the graphical program may be automatically generated, including generating multiple instances of an implementation of the first graphical program code within the implementation of the graphical program. Executing the graphical program may include executing the multiple instances, e.g., concurrently and/or serially.
    Type: Application
    Filed: November 10, 2015
    Publication date: May 11, 2017
    Inventors: Julian G. Valdez, Taylor L. Riche, Neil S. Feiereisel, Robert E. Dye, Stephen R. Loftus-Mercer, Dustyn K. Blasig, Mary E. Fletcher, Brent C. Schwan, Stephen L. Dark
  • Patent number: 9626233
    Abstract: A graphical program execution environment that facilitates communication between a producer program and a consumer program is disclosed. The producer program may store data in a memory block allocated by the producer program. A graphical program may communicate with the producer program to obtain a reference to the memory block. The graphical program may asynchronously pass the reference to the consumer program, e.g., may pass the reference without blocking or waiting while the consumer program accesses the data in the memory block. After the consumer program is finished accessing the data, the consumer program may asynchronously notify the graphical program execution environment to release the memory block. The graphical program execution environment may then notify the producer program that the block of memory is no longer in use so that the producer program can de-allocate or re-use the memory block.
    Type: Grant
    Filed: April 24, 2014
    Date of Patent: April 18, 2017
    Assignee: NATIONAL INSTRUMENTS CORPORATION
    Inventors: J. Adam Kemp, Neil S. Feiereisel, Brent C. Schwan
  • Patent number: 9189209
    Abstract: A system and method for enabling a graphical program to natively access an external memory buffer are disclosed. The graphical program may execute within a graphical program execution environment, and the external memory buffer may be allocated by another program that executes externally from the graphical program and the graphical program execution environment. The graphical program may be executed concurrently with a producer program that stores data in the memory buffer, and/or with a consumer program that reads and uses the data from the memory buffer. The memory buffer may be located within a region of memory allocated by the producer program, by the consumer program, or by another program that executes externally from the graphical program and the graphical program execution environment, such as a memory manager program.
    Type: Grant
    Filed: April 30, 2012
    Date of Patent: November 17, 2015
    Assignee: National Instruments Corporation
    Inventors: J. Adam Kemp, Neil S. Feiereisel, Brent C. Schwan
  • Publication number: 20140237483
    Abstract: A graphical program execution environment that facilitates communication between a producer program and a consumer program is disclosed. The producer program may store data in a memory block allocated by the producer program. A graphical program may communicate with the producer program to obtain a reference to the memory block. The graphical program may asynchronously pass the reference to the consumer program, e.g., may pass the reference without blocking or waiting while the consumer program accesses the data in the memory block. After the consumer program is finished accessing the data, the consumer program may asynchronously notify the graphical program execution environment to release the memory block. The graphical program execution environment may then notify the producer program that the block of memory is no longer in use so that the producer program can de-allocate or re-use the memory block.
    Type: Application
    Filed: April 24, 2014
    Publication date: August 21, 2014
    Applicant: NATIONAL INSTRUMENTS CORPORATION
    Inventors: J. Adam Kemp, Neil S. Feiereisel, Brent C. Schwan
  • Patent number: 8769549
    Abstract: A graphical program execution environment that facilitates communication between a producer program and a consumer program is disclosed. The producer program may store data in a memory block allocated by the producer program. A graphical program may communicate with the producer program to obtain a reference to the memory block. The graphical program may asynchronously pass the reference to the consumer program, e.g., may pass the reference without blocking or waiting while the consumer program accesses the data in the memory block. After the consumer program is finished accessing the data, the consumer program may asynchronously notify the graphical program execution environment to release the memory block. The graphical program execution environment may then notify the producer program that the block of memory is no longer in use so that the producer program can de-allocate or re-use the memory block.
    Type: Grant
    Filed: April 30, 2012
    Date of Patent: July 1, 2014
    Assignee: National Instruments Corporation
    Inventors: J. Adam Kemp, Neil S. Feiereisel, Brent C. Schwan
  • Publication number: 20130290980
    Abstract: A graphical program execution environment that facilitates communication between a producer program and a consumer program is disclosed. The producer program may store data in a memory block allocated by the producer program. A graphical program may communicate with the producer program to obtain a reference to the memory block. The graphical program may asynchronously pass the reference to the consumer program, e.g., may pass the reference without blocking or waiting while the consumer program accesses the data in the memory block. After the consumer program is finished accessing the data, the consumer program may asynchronously notify the graphical program execution environment to release the memory block. The graphical program execution environment may then notify the producer program that the block of memory is no longer in use so that the producer program can de-allocate or re-use the memory block.
    Type: Application
    Filed: April 30, 2012
    Publication date: October 31, 2013
    Inventors: J. Adam Kemp, Neil S. Feiereisel, Brent C. Schwan
  • Publication number: 20130285895
    Abstract: A system and method for enabling a graphical program to natively access an external memory buffer are disclosed. The graphical program may execute within a graphical program execution environment, and the external memory buffer may be allocated by another program that executes externally from the graphical program and the graphical program execution environment. The graphical program may be executed concurrently with a producer program that stores data in the memory buffer, and/or with a consumer program that reads and uses the data from the memory buffer. The memory buffer may be located within a region of memory allocated by the producer program, by the consumer program, or by another program that executes externally from the graphical program and the graphical program execution environment, such as a memory manager program.
    Type: Application
    Filed: April 30, 2012
    Publication date: October 31, 2013
    Inventors: J. Adam Kemp, Neil S. Feiereisel, Brent C. Schwan
  • Patent number: 8458371
    Abstract: Provided in some embodiment is a computer system, including a first peripheral device, having a first external data input, a first peripheral storage device to store the measurement data, a first peripheral device output to couple to a system interconnect of the computer system. The first peripheral device capable of receiving measurement data via the external data input the first peripheral device capable of transferring at least a portion of the measurement data to a second peripheral device of the computer system via the system interconnect, and where the second peripheral device is capable of processing at least a portion of the measurement data transferred to the second peripheral device.
    Type: Grant
    Filed: August 3, 2009
    Date of Patent: June 4, 2013
    Assignee: National Instruments Corporation
    Inventors: Rafael Castro Scorsi, Neil S. Feiereisel, Glen O. Sescila, III, Craig M. Conway, Brian Keith Odom, M. Dean Brockhausen, Jr.
  • Patent number: 8307136
    Abstract: Provided is a method of streaming transfer of data between a plurality of devices of a computer system. The method includes providing data to be sent from a source device to a target device and includes receiving, at the source device, one or more transfer credits from the target device. A transfer credit may be indicative of an amount of data that the target device is authorizing to be sent to the target device. The method also includes determining whether or not an accumulated transfer credit value satisfies a threshold value. If the accumulated transfer credit value satisfies the threshold value, the source device sends data to the target device and modifies the accumulated transfer credit value based on a quantity of data sent. If the accumulated transfer credit value does not satisfy the threshold value the source device does not send data to the target device.
    Type: Grant
    Filed: August 3, 2009
    Date of Patent: November 6, 2012
    Assignee: National Instruments Corporation
    Inventors: Neil S. Feiereisel, Glen O. Sescila, III, Craig M. Conway, Brian Keith Odom, M. Dean Brockhausen, Jr.
  • Publication number: 20110029691
    Abstract: Provided in some embodiment is a computer system, including a first peripheral device, having a first external data input, a first peripheral storage device to store the measurement data, a first peripheral device output to couple to a system interconnect of the computer system. The first peripheral device capable of receiving measurement data via the external data input the first peripheral device capable of transferring at least a portion of the measurement data to a second peripheral device of the computer system via the system interconnect, and where the second peripheral device is capable of processing at least a portion of the measurement data transferred to the second peripheral device.
    Type: Application
    Filed: August 3, 2009
    Publication date: February 3, 2011
    Inventors: Rafael Castro Scorsi, Neil S. Feiereisel, Glen O. Sescila, III, Craig M. Conway, Brian Keith Odom, M. Dean Brockhausen, JR.
  • Publication number: 20110029709
    Abstract: Provided is a method of streaming transfer of data between a plurality of devices of a computer system. The method includes providing data to be sent from a source device to a target device and includes receiving, at the source device, one or more transfer credits from the target device. A transfer credit may be indicative of an amount of data that the target device is authorizing to be sent to the target device. The method also includes determining whether or not an accumulated transfer credit value satisfies a threshold value. If the accumulated transfer credit value satisfies the threshold value, the source device sends data to the target device and modifies the accumulated transfer credit value based on a quantity of data sent. If the accumulated transfer credit value does not satisfy the threshold value the source device does not send data to the target device.
    Type: Application
    Filed: August 3, 2009
    Publication date: February 3, 2011
    Inventors: Neil S. Feiereisel, Glen O. Sescila, III, Craig M. Conway, Brian Keith Odom, M. Dean Brockhausen, JR.
  • Patent number: 7451049
    Abstract: In one embodiment, a system comprises a delay determining unit that may be operable to determine a relative delay between the first signal provided by the first source and the second signal provided by the second source, based upon a travel path of the first signal and a travel path of the second signal. In addition, a delay circuit, comprised within the waveform generator, may be configured to be programmed to delay output of the first signal to output the first signal at a predetermined position with respect to output of the second signal, based on the determined relative delay. More specifically, in one embodiment, the delay circuit may be configured to be automatically programmed to add the relative delay to the output of the first signal to automatically align the output of the first signal with respect to the output of the second signal.
    Type: Grant
    Filed: March 15, 2004
    Date of Patent: November 11, 2008
    Assignee: National Instruments Corporation
    Inventors: Neil S. Feiereisel, Craig M. Conway