Methods and apparatus for providing a high-speed universal serial bus (USB) interface for a field-programmable gate array (FPGA)

US11843376B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11843376-B2
Application numberUS-202117318788-A
CountryUS
Kind codeB2
Filing dateMay 12, 2021
Priority dateMay 12, 2021
Publication dateDec 12, 2023
Grant dateDec 12, 2023

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A system containing a host and a device having a field-programmable gate array (“FPGA”) is disclosed. The system includes a set of configurable logic blocks (“LBs”), a bus, and a Universal Serial Bus (“USB”) interface. The configurable LBs, in one aspect, are able to be selectively programmed to perform one or more logic functions. The bus contains a P-channel and an N-channel operable to transmit signals in accordance with a high-speed USB protocol. The USB interface is configured to include a first differential comparator operable to identify a logic zero state at the P-channel and a second differential comparator operable to identify a logic zero state at the N-channel.

First claim

Opening claim text (preview).

What is claimed is: 1. An apparatus containing a programmable device able to perform user configurable logic functions, the apparatus comprising: a Field-Programmable Gate Array (“FPGA”), able to be selectively programmed in accordance with configuration data for performing one or more user defined logic functions, including, a plurality of configurable logic blocks (“LBs”) programmable to perform logic functions, a Universal Serial Bus (“USB”) interface coupled to the plurality of LBs and configured to have a first differential comparator (“DC”) and a second DC, the first DC coupling to a P-channel of USB and the second DC coupling to an N-channel of USB, wherein the first DC and the second DC are configured to facilitate a handshaking process before data transmissions; and a bus coupled to the interface and operable to transmit signals in accordance with a high-speed USB protocol. 2. The apparatus of claim 1 , wherein the USB interface further includes a pull-up resister coupled to a low voltage complementary metal oxide semiconductor 33 (“LVCMOS33”) and configured to drive the P-channel to a logic one (1) state. 3. The apparatus of claim 1 , wherein the USB interface further includes a bidirectional differential transceiver configured to transmit and receive information to and from an external device via the P-channel and the N-channel. 4. The apparatus of claim 1 , wherein the USB interface further includes a first low voltage complementary metal oxide semiconductor 25 (“LVCMOS25”) coupled to the P-channel and configure to drive high impedance at the P-channel. 5. The apparatus of claim 4 , wherein the USB interface further includes a second LVCMOS25 coupled to the N-channel and configure to drive high impedance at the N-channel. 6. The apparatus of claim 1 , wherein the USB interface further includes a first low voltage complementary metal oxide semiconductor 25 (“LVCMOS25”) coupled to the P-channel and configure to drive a logic zero state at the P-channel. 7. The apparatus of claim 6 , wherein the USB interface further includes a second LVCMOS25 coupled to the N-channel and configure to drive a logic zero state at the N-channel. 8. The apparatus of claim 1 , wherein a portion of the plurality of configurable LBs is programmed to provide at least a portion of USB interface functions. 9. The apparatus of claim 1 , wherein a portion of the plurality of configurable LBs is configured to communicate with a host via the bus through the USB interface. 10. The apparatus of claim 1 , wherein the first differential comparator is configured to generate a logic value in response to a logic state at the P-channel and a predefined threshold voltage. 11. The apparatus of claim 1 , wherein the second differential comparator is configured to generate a logic value in response to a logic state at the N-channel and a predefined threshold voltage. 12. A system containing a USB 2.0 bus operating with in a high-speed comprising the apparatus of claim 1 . 13. A method of facilitating a communication via a Universal Serial Bus (“USB”) 2.0 input output (“IO”) bus between a host and a field-programmable gate array (“FPGA”), the method comprising: configuring a logic blocks (“LBs”) of FPGA in accordance with configuration data for performing one or more user defined logic functions; detecting a full-speed voltage indicator at the FPGA for identifying a data rate of a first USB transmission rate; generating a logic output P by a first differential comparator at the FPGA in accordance with a logic value on a P-channel of the USB 2.0 TO bus and a predefined threshold voltage; generating a logic output N by a second differential comparator at the FPGA in accordance with a logic value on a N-channel of the USB and the predefined threshold voltage; and issuing a single ended zero (“SEO”) signal indicating both the P-channel and the N-channel carrying logic zero values based on the logic output N and the logic output P for a handshaking process before establishing a high-speed data rate. 14. The method of claim 13 , further comprising activating a bidirectional differential transceiver to generate an output on the P-channel and maintaining the output for a predefined period of time indicating a K-chirp. 15. The method of claim 14 , further comprising receiving high-speed initializing signals from the host for a hub K-J chirp pairs for establishing high-speed communication. 16. The method of claim 15 , further comprising removing a pull-up from the P-channel to drop operation voltage for high-speed USB 2.0 data transmission between host and FPGA. 17. The method of claim 13 , wherein detecting a full-speed voltage includes receiving a 3.3 volts on the P-channel. 18. The method of claim 13 , wherein generating a logic output P includes comparing the logic value on the P-channel with approximately 200 millivolts (“mV”). 19. The method of claim 13 , further comprising facilitating data communication between the host and FPGA via a Universal Serial Bus (“USB”) 2.0 input output (“IO”) bus with a high-speed data rate. 20. A system containing a programmable device able to perform user configurable logic functions, the system comprising: a host having a Universal Serial Bus (“USB”) 2.0 input output (“IO”) connection and configured to perform digital data processing; a USB 2.0 bus coupled to the host and containing a P-channel and an N-channel operable to facilitate high-speed data transmission; and a programmable logic device (“PLD”) coupled to the USB 2.0 bus and configured to include, configurable logic blocks (“LBs”) for selectively programmed to perform user defined logic functions, a first differential comparator operable to identify a logic zero state at the P-channel, a second differential comparator operable to identify a logic zero state at the N-channel, wherein the first differential comparator is configured to facilitate a handshaking process with the host for subsequent data transmissions. 21. The system of claim 20 , wherein the configurable logic blocks (“LBs”) is able to be selectively programmed to perform one or more logic functions. 22. The system of claim 20 , wherein the PLD further includes a pull-up resister coupled to a low voltage complementary metal oxide semiconductor 33 (“LVCMOS33”) configured to pull-up the P-channel to a logic one (1) state. 23. The system of claim 20 , wherein the PLD further includes a bidirectional differential transceiver configured to transmit and receive information to and from the host via the P-channel and the N-channel. 24. The system of claim 20 , wherein the PLD further includes a first low voltage complementary metal oxide semiconductor 25 (“LVCMOS25”), coupled to the P-channel, configure to drive high impedance at the P-channel. 25. The system of claim 24 , wherein the PLD further includes a second LVCMOS25, coupled to the N-channel, configure to drive high impedance at the N-channel.

Assignees

Inventors

Classifications

  • Structural details of logic blocks · CPC title

  • on a serial bus, e.g. I2C bus, SPI bus (on daisy chain buses G06F13/4247) · CPC title

  • Universal serial bus [USB] · CPC title

  • for access to common bus or bus system · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US11843376B2 cover?
A system containing a host and a device having a field-programmable gate array (“FPGA”) is disclosed. The system includes a set of configurable logic blocks (“LBs”), a bus, and a Universal Serial Bus (“USB”) interface. The configurable LBs, in one aspect, are able to be selectively programmed to perform one or more logic functions. The bus contains a P-channel and an N-channel operable to trans…
Who is the assignee on this patent?
Gowin Semiconductor Corp
What technology area does this patent fall under?
Primary CPC classification H03K19/17724. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Dec 12 2023 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).