Patents by Inventor Jonathan W. Hearn

Jonathan W. Hearn 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: 11704269
    Abstract: Bus enumeration of a switch fabric bus may be performed without assigning bus numbers to unused switch ports and/or corresponding slots to which the unused switch ports are routed. Accordingly, switches coupled to a switch fabric bus in a chassis may link-train with corresponding slots in the chassis in an attempt to establish active connections with devices coupled to the slots. Unused switch fabric bus lanes running from the switches to unused slots may be identified, and the unused switch ports corresponding to the unused switch fabric bus lanes may be disabled. During a subsequent bus enumeration procedure for the switch fabric bus, bus numbers may be allocated to the identified used switch ports (or corresponding used slots) but not to the identified unused switch ports (or corresponding unused slots). The link training, used/unused switch port identification, and bus enumeration may all be performed each time the chassis is reset.
    Type: Grant
    Filed: April 27, 2021
    Date of Patent: July 18, 2023
    Assignee: National Instruments Corporation
    Inventors: Eric L. Singer, Jason W. Frels, Jonathan W. Hearn
  • Publication number: 20210248100
    Abstract: Bus enumeration of a switch fabric bus may be performed without assigning bus numbers to unused switch ports and/or corresponding slots to which the unused switch ports are routed. Accordingly, switches coupled to a switch fabric bus in a chassis may link-train with corresponding slots in the chassis in an attempt to establish active connections with devices coupled to the slots. Unused switch fabric bus lanes running from the switches to unused slots may be identified, and the unused switch ports corresponding to the unused switch fabric bus lanes may be disabled. During a subsequent bus enumeration procedure for the switch fabric bus, bus numbers may be allocated to the identified used switch ports (or corresponding used slots) but not to the identified unused switch ports (or corresponding unused slots). The link training, used/unused switch port identification, and bus enumeration may all be performed each time the chassis is reset.
    Type: Application
    Filed: April 27, 2021
    Publication date: August 12, 2021
    Inventors: Eric L. Singer, Jason W. Frels, Jonathan W. Hearn
  • Patent number: 11023402
    Abstract: Bus enumeration of a switch fabric bus may be performed without assigning bus numbers to unused switch ports and/or corresponding slots to which the unused switch ports are routed. Accordingly, switches coupled to a switch fabric bus in a chassis may link-train with corresponding slots in the chassis in an attempt to establish active connections with devices coupled to the slots. Unused switch fabric bus lanes running from the switches to unused slots may be identified, and the unused switch ports corresponding to the unused switch fabric bus lanes may be disabled. During a subsequent bus enumeration procedure for the switch fabric bus, bus numbers may be allocated to the identified used switch ports (or corresponding used slots) but not to the identified unused switch ports (or corresponding unused slots). The link training, used/unused switch port identification, and bus enumeration may all be performed each time the chassis is reset.
    Type: Grant
    Filed: January 24, 2020
    Date of Patent: June 1, 2021
    Assignee: National Instruments Corporation
    Inventors: Eric L. Singer, Jason W. Frels, Jonathan W. Hearn
  • Publication number: 20210004342
    Abstract: Bus enumeration of a switch fabric bus may be performed without assigning bus numbers to unused switch ports and/or corresponding slots to which the unused switch ports are routed. Accordingly, switches coupled to a switch fabric bus in a chassis may link-train with corresponding slots in the chassis in an attempt to establish active connections with devices coupled to the slots. Unused switch fabric bus lanes running from the switches to unused slots may be identified, and the unused switch ports corresponding to the unused switch fabric bus lanes may be disabled. During a subsequent bus enumeration procedure for the switch fabric bus, bus numbers may be allocated to the identified used switch ports (or corresponding used slots) but not to the identified unused switch ports (or corresponding unused slots). The link training, used/unused switch port identification, and bus enumeration may all be performed each time the chassis is reset.
    Type: Application
    Filed: January 24, 2020
    Publication date: January 7, 2021
    Inventors: Eric L. Singer, Jason W. Frels, Jonathan W. Hearn
  • Patent number: 10176137
    Abstract: A selectively transparent bridge facilitates a PCI device presenting itself to the host as a PCI-to-PCI bridge but selectively hiding and isolating hardware from the host bus. PCI configuration may be achieved through the standard PCI Express configuration mechanisms, but instead of configuring devices directly, a configuration processor in the selectively transparent bridge may intercept the configuration packets from the host, and create a virtual configuration to alter how the bus topology appears to the host. Devices are selectively hidden and managed by the configuration processor, resulting in simplified complexity and bus depth. Since the selectively transparent bridge appears to the host as a transparent bridge, no special drivers or resource preallocations are required, although the selectively transparent bridge fully supports special drivers and/or resource preallocations. Devices located/connected downstream of the bridge may therefore function with unmodified drivers.
    Type: Grant
    Filed: January 18, 2016
    Date of Patent: January 8, 2019
    Assignee: NATIONAL INSTRUMENTS CORPORATION
    Inventors: Jonathan W. Hearn, Craig S. Jones, Robert D. Ross
  • Patent number: 9965371
    Abstract: System and method for determining and conveying connectivity of cabled computer peripherals to a user. Characteristic information regarding each of multiple devices connected to a computer system in a system hierarchy of a bus networked system may be stored, including a device hierarchy associated with each device that identifies respective hardware nodes included in the device, and one or more visual attributes of the device. Respective system positions may be automatically determined for at least some of the devices based on the device hierarchy. A respective point of reference of at least one device may be determined based on the characteristic information of one or more of the devices. The computer system may generate information that indicates the respective system position of the at least one device relative to the respective point of reference of the device, which is useable to visually identify the device in the bus networked system.
    Type: Grant
    Filed: September 22, 2015
    Date of Patent: May 8, 2018
    Assignee: NATIONAL INSTRUMENTS CORPORATION
    Inventors: Jonathan W. Hearn, Feng Jiang, Ryan C. Croom, Jason D. Tongen
  • Patent number: 9703740
    Abstract: A host system may couple to a PCIe subsystem. During setup of the PCIe subsystem, the BIOS in the host system may first be informed that the devices to be coupled are not PCIe devices, and certain amount of memory is required for these devices. The BIOS may therefore not attempt to configure the devices, and may instead allocate the required memory space. When the operating system boots up, it may not attempt to configure the devices, loading a custom driver instead of an existing PCI driver to configure the bus. Once loaded, the custom driver may configure the devices, then inform the OS that there are PCIe devices in the system at the specified addresses, which may cause the OS to load and execute existing PCIe device drivers to operate/use the devices. The proprietary driver may also be used to handle traffic between the PCIe drivers and the OS.
    Type: Grant
    Filed: March 8, 2016
    Date of Patent: July 11, 2017
    Assignee: NATIONAL INSTRUMENTS CORPORATION
    Inventors: Eric R. Gardiner, Jonathan W. Hearn, Craig S. Jones, Jason D. Tongen
  • Publication number: 20170031796
    Abstract: System and method for determining and conveying connectivity of cabled computer peripherals to a user. Characteristic information regarding each of multiple devices connected to a computer system in a system hierarchy of a bus networked system may be stored, including a device hierarchy associated with each device that identifies respective hardware nodes included in the device, and one or more visual attributes of the device. Respective system positions may be automatically determined for at least some of the devices based on the device hierarchy. A respective point of reference of at least one device may be determined based on the characteristic information of one or more of the devices. The computer system may generate information that indicates the respective system position of the at least one device relative to the respective point of reference of the device, which is useable to visually identify the device in the bus networked system.
    Type: Application
    Filed: September 22, 2015
    Publication date: February 2, 2017
    Inventors: Jonathan W. Hearn, Feng Jiang, Ryan C. Croom, Jason D. Tongen
  • Publication number: 20160188518
    Abstract: A host system may couple to a PCIe subsystem. During setup of the PCIe subsystem, the BIOS in the host system may first be informed that the devices to be coupled are not PCIe devices, and certain amount of memory is required for these devices. The BIOS may therefore not attempt to configure the devices, and may instead allocate the required memory space. When the operating system boots up, it may not attempt to configure the devices, loading a custom driver instead of an existing PCI driver to configure the bus. Once loaded, the custom driver may configure the devices, then inform the OS that there are PCIe devices in the system at the specified addresses, which may cause the OS to load and execute existing PCIe device drivers to operate/use the devices. The proprietary driver may also be used to handle traffic between the PCIe drivers and the OS.
    Type: Application
    Filed: March 8, 2016
    Publication date: June 30, 2016
    Inventors: Eric R. Gardiner, Jonathan W. Hearn, Craig S. Jones, Jason D. Tongen
  • Publication number: 20160132453
    Abstract: A selectively transparent bridge facilitates a PCI device presenting itself to the host as a PCI-to-PCI bridge but selectively hiding and isolating hardware from the host bus. PCI configuration may be achieved through the standard PCI Express configuration mechanisms, but instead of configuring devices directly, a configuration processor in the selectively transparent bridge may intercept the configuration packets from the host, and create a virtual configuration to alter how the bus topology appears to the host. Devices are selectively hidden and managed by the configuration processor, resulting in simplified complexity and bus depth. Since the selectively transparent bridge appears to the host as a transparent bridge, no special drivers or resource preallocations are required, although the selectively transparent bridge fully supports special drivers and/or resource preallocations. Devices located/connected downstream of the bridge may therefore function with unmodified drivers.
    Type: Application
    Filed: January 18, 2016
    Publication date: May 12, 2016
    Inventors: Jonathan W. Hearn, Craig S. Jones, Robert D. Ross
  • Patent number: 9311266
    Abstract: A mapping and correspondence may be established between a virtual topology and a physical topology of a PCIe subsystem, and a host may be presented with the virtual topology but not the actual physical topology. A semi transparent bridge may couple an upstream host to the PCIe subsystem that includes intermediary bridges and respective PCIe endpoints coupled downstream from the intermediary bridges. The intermediary bridges may be hidden from the host, while the respective PCIe endpoints may be visible to the host. A configuration block may provide to the upstream host, during a setup mode, first memory allocation information corresponding to the intermediary switches, responsive to the upstream host expecting second memory allocation information corresponding to the respective PCIe endpoints. The configuration block may then provide to the upstream host, during a runtime mode, the second memory allocation information, responsive to the upstream host expecting the second memory allocation information.
    Type: Grant
    Filed: June 14, 2013
    Date of Patent: April 12, 2016
    Assignee: National Instruments Corporation
    Inventors: Craig S. Jones, Jonathan W. Hearn, Jason D. Tongen
  • Patent number: 9286258
    Abstract: A host system may couple to a PCIe subsystem. During setup of the PCIe subsystem, the BIOS in the host system may first be informed that the devices to be coupled are not PCIe devices, and certain amount of memory is required for these devices. The BIOS may therefore not attempt to configure the devices, and may instead allocate the required memory space. When the operating system boots up, it may not attempt to configure the devices, loading a custom driver instead of an existing PCI driver to configure the bus. Once loaded, the custom driver may configure the devices, then inform the OS that there are PCIe devices in the system at the specified addresses, which may cause the OS to load and execute existing PCIe device drivers to operate/use the devices. The proprietary driver may also be used to handle traffic between the PCIe drivers and the OS.
    Type: Grant
    Filed: June 14, 2013
    Date of Patent: March 15, 2016
    Assignee: National Instruments Corporation
    Inventors: Eric R. Gardiner, Jonathan W. Hearn, Craig S. Jones, Jason D. Tongen
  • Patent number: 9244874
    Abstract: A selectively transparent bridge facilitates a PCI device presenting itself to the host as a PCI-to-PCI bridge but selectively hiding and isolating hardware from the host bus. PCI configuration may be achieved through the standard PCI Express configuration mechanisms, but instead of configuring devices directly, a configuration processor in the selectively transparent bridge may intercept the configuration packets from the host, and create a virtual configuration to alter how the bus topology appears to the host. Devices are selectively hidden and managed by the configuration processor, resulting in simplified complexity and bus depth. Since the selectively transparent bridge appears to the host as a transparent bridge, no special drivers or resource preallocations are required, although the selectively transparent bridge fully supports special drivers and/or resource preallocations. Devices located/connected downstream of the bridge may therefore function with unmodified drivers.
    Type: Grant
    Filed: June 14, 2013
    Date of Patent: January 26, 2016
    Assignee: National Instruments Corporation
    Inventors: Jonathan W. Hearn, Craig S. Jones, Robert D. Ross
  • Publication number: 20140372657
    Abstract: A mapping and correspondence may be established between a virtual topology and a physical topology of a PCIe subsystem, and a host may be presented with the virtual topology but not the actual physical topology. A semi transparent bridge may couple an upstream host to the PCIe subsystem that includes intermediary bridges and respective PCIe endpoints coupled downstream from the intermediary bridges. The intermediary bridges may be hidden from the host, while the respective PCIe endpoints may be visible to the host. A configuration block may provide to the upstream host, during a setup mode, first memory allocation information corresponding to the intermediary switches, responsive to the upstream host expecting second memory allocation information corresponding to the respective PCIe endpoints. The configuration block may then provide to the upstream host, during a runtime mode, the second memory allocation information, responsive to the upstream host expecting the second memory allocation information.
    Type: Application
    Filed: June 14, 2013
    Publication date: December 18, 2014
    Inventors: Craig S. Jones, Jonathan W. Hearn, Jason D. Tongen
  • Publication number: 20140372741
    Abstract: A host system may couple to a PCIe subsystem. During setup of the PCIe subsystem, the BIOS in the host system may first be informed that the devices to be coupled are not PCIe devices, and certain amount of memory is required for these devices. The BIOS may therefore not attempt to configure the devices, and may instead allocate the required memory space. When the operating system boots up, it may not attempt to configure the devices, loading a custom driver instead of an existing PCI driver to configure the bus. Once loaded, the custom driver may configure the devices, then inform the OS that there are PCIe devices in the system at the specified addresses, which may cause the OS to load and execute existing PCIe device drivers to operate/use the devices. The proprietary driver may also be used to handle traffic between the PCIe drivers and the OS.
    Type: Application
    Filed: June 14, 2013
    Publication date: December 18, 2014
    Inventors: Eric R. Gardiner, Jonathan W. Hearn, Craig S. Jones, Jason D. Tongen
  • Publication number: 20140372641
    Abstract: A selectively transparent bridge facilitates a PCI device presenting itself to the host as a PCI-to-PCI bridge but selectively hiding and isolating hardware from the host bus. PCI configuration may be achieved through the standard PCI Express configuration mechanisms, but instead of configuring devices directly, a configuration processor in the selectively transparent bridge may intercept the configuration packets from the host, and create a virtual configuration to alter how the bus topology appears to the host. Devices are selectively hidden and managed by the configuration processor, resulting in simplified complexity and bus depth. Since the selectively transparent bridge appears to the host as a transparent bridge, no special drivers or resource preallocations are required, although the selectively transparent bridge fully supports special drivers and/or resource preallocations. Devices located/connected downstream of the bridge may therefore function with unmodified drivers.
    Type: Application
    Filed: June 14, 2013
    Publication date: December 18, 2014
    Inventors: Jonathan W. Hearn, Craig S. Jones, Robert D. Ross
  • Patent number: 8769159
    Abstract: A system and method for reserving resources of a host computer for use by an external device configured to be coupled to an expansion bus of the host computer are described. The host computer may be configured to execute device resource software that operates at a startup of the host computer to reserve one or more resources for the external device. The external device may not be available during the startup of the host computer, e.g., because the external device is not powered on or is not physically connected to the host computer. The device resource software may subsequently detect that the external device becomes available after the startup of the host computer. In response, the device resource software may enable the external device to use the one or more resources that were previously reserved at the startup of the host computer.
    Type: Grant
    Filed: December 14, 2011
    Date of Patent: July 1, 2014
    Assignee: National Instruments Corporation
    Inventors: Jason D. Tongen, Jonathan W. Hearn, Daniel P. Marcotte
  • Publication number: 20130159582
    Abstract: A system and method for reserving resources of a host computer for use by an external device configured to be coupled to an expansion bus of the host computer are described. The host computer may be configured to execute device resource software that operates at a startup of the host computer to reserve one or more resources for the external device. The external device may not be available during the startup of the host computer, e.g., because the external device is not powered on or is not physically connected to the host computer. The device resource software may subsequently detect that the external device becomes available after the startup of the host computer. In response, the device resource software may enable the external device to use the one or more resources that were previously reserved at the startup of the host computer.
    Type: Application
    Filed: December 14, 2011
    Publication date: June 20, 2013
    Inventors: Jason D. Tongen, Jonathan W. Hearn, Daniel P. Marcotte