MODULAR I/O BANK ARCHITECTURE

Information

  • Patent Application
  • 20070165478
  • Publication Number
    20070165478
  • Date Filed
    November 09, 2006
    17 years ago
  • Date Published
    July 19, 2007
    16 years ago
Abstract
A programmable device I/O architecture allows for a variable number of I/O banks. Each I/O bank is of an I/O bank type. Each I/O bank type has a fixed number of I/O pins. I/O banks of the same I/O bank type are compatible within the same programmable device and between different types of programmable devices. The largest size I/O bank type and intermediate size I/O bank types are adapted to be a compatible supersets of every smaller I/O bank type. Support pins are regularly distributed between data pins in each I/O bank type. Multiple instances of the same or compatible I/O banks are arranged to be accessible from different sides of the programmable device. To facilitate circuit board layout, each I/O bank is arranged as a mirror and/or rotation of other I/O banks on the device.
Description

BRIEF DESCRIPTION OF THE DRAWINGS

The invention will be described with reference to the drawings, in which:



FIG. 1 illustrates a programmable device and I/O bank architecture according to an embodiment of the invention;



FIG. 2 illustrates a family of programmable devices according to an embodiment of the invention;



FIG. 3 illustrates I/O pin compatibility between I/O banks according to an embodiment of the invention;



FIG. 4 illustrates a programmable device suitable for use with an embodiment of the invention; and



FIGS. 5A-5F illustrates an example modular I/O bank arrangements according to an embodiment of the invention.


Claims
  • 1. A programmable device in a programmable device family comprising a plurality of programmable devices, the programmable device comprising: a programmable device core;a first I/O bank comprising a first set of pins, wherein the first set of pins is accessible from a first side of the programmable device; anda second I/O bank comprising a second set of pins, wherein at least a first portion of the first set of pins of the first I/O bank has a one-to-one correspondence with the second set of pins of the second I/O bank and wherein the second set of pins is accessible from a second side of the programmable device;wherein the second set of pins is arranged as a rotation of the first set of pins.
  • 2. The programmable device of claim 1, wherein the rotation is a 90 degree rotation.
  • 3. The programmable device of claim 1, wherein the rotation is a 180 degree rotation.
  • 4. The programmable device of claim 1, further comprising: a third I/O bank comprising a third set of pins, wherein at least the first portion of the pins of the first I/O bank has a one-to-one correspondence with the third set of pins of the third I/O bank and wherein the third set of pins is accessible from the second side of the programmable device;wherein the third set of pins is arranged as a symmetrical reflection of the second set of pins.
  • 5. The programmable device of claim 1, wherein the first set of pins includes a remaining portion of the first set of pins does not have any correspondence with the second set of pins of the second I/O bank.
  • 6. A programmable device comprising: a programmable device core;a first I/O bank comprising a first set of pins arranged in a first sequence; anda second I/O bank comprising a second set of pins, wherein the second set of pins are arranged in a symmetrical reflection of the first sequence.
  • 7. The programmable device of claim 6, wherein the first set of pins and the second set of pins are accessible from a first side of the programmable device.
  • 8. The programmable device of claim 6, wherein the first set of pins is accessible from a first side of the programmable device and the second set of pins is accessible from a second side of the programmable device.
  • 9. The programmable device of claim 8, wherein the first side is perpendicular to the second side.
  • 10. The programmable device of claim 8, wherein the first side is opposite to the second side.
  • 11. The programmable device of claim 6, further comprising: a third I/O bank comprising a third set of pins, wherein first set of pins is accessible from a first side of the programmable device and the third set of pins is accessible from a second side of the programmable device and wherein the third set of pins is arranged as a rotation of the first set of pins.
  • 12. The programmable device of claim 6, wherein a first portion of the first set of pins of the first I/O bank has a one-to-one correspondence with the second set of pins of the second I/O bank and a remaining portion of the first set of pins does not have any correspondence with the second set of pins of the second I/O bank.
  • 13. A programmable device in a programmable device family comprising a plurality of programmable devices, the programmable device comprising: a programmable device core;a first I/O bank comprising a first set of pins, wherein the first set of pins includes data pins and support pins; anda second I/O bank comprising a second set of pins, wherein a first portion of the pins of the first I/O bank has a one-to-one correspondence with the second set of pins of the second I/O bank, and wherein a remaining portion of the first set of pins does not have any correspondence with the second set of pins of the second I/O banks.
  • 14. The programmable device of claim 13, wherein the support pins include power and ground pins.
  • 15. The programmable device of claim 14, wherein a ratio between the number of power and ground pins and the number of data pins is fixed.
  • 16. The programmable device of claim 15, wherein the power and ground pins are interleaved with the data pins.
  • 17. The programmable device of claim 15, wherein the second set of pins of the second I/O bank includes data pins and support pins, and wherein a ratio between the number of power and ground pins and the number of data pins in the second set of pins is the same as the ratio between the number of power and ground pins and the number of data pins in the first set of pins.
  • 18. The programmable device of claim 13, wherein the support pins include clock pins.
  • 19. The programmable device of claim 13, wherein the second I/O bank is functionally identical to an I/O bank of a second programmable device in the family of programmable devices, wherein the second programmable device has different specifications than the programmable device.
  • 20. The programmable device of claim 13, wherein the first I/O bank and the second I/O bank have similar performance characteristics.
  • 21. The programmable device of claim 20, wherein the performance characteristics include a signal to noise ratio.
  • 22. The programmable device of claim 20, wherein the performance characteristics include a clock skew.
  • 23. The programmable device of claim 13, wherein the first I/O bank has a first fixed number of pins and the second I/O bank has a second fixed number of pins, such that the first and second fixed numbers of pins are adapted to efficiently implement a set of interfaces.
  • 24. The programmable device of claim 23, further comprising a first plurality of I/O banks identical to the first I/O bank, wherein at least a portion of the set of interfaces can be implemented efficiently using at least one of the first plurality of I/O banks and the first I/O bank.
  • 25. The programmable device of claim 23, further comprising a first plurality of I/O banks identical to the second I/O bank, wherein at least a portion of the set of interfaces can be implemented efficiently using at least one of the first plurality of I/O banks and the second I/O bank.
  • 26. The programmable device of claim 23, wherein the set of interfaces includes a memory interface.
  • 27. The programmable device of claim 23, wherein the set of interfaces includes a bus interface.
  • 28. The programmable device of claim 23, wherein the set of interfaces includes a general-purpose digital communications interface.
  • 29. A programmable device comprising: a programmable device core;a first plurality of I/O banks of a first type;a second plurality of I/O banks of a second type; wherein each of the I/O banks of the second type is a compatible superset of an I/O bank of the first type.
  • 30. The programmable device of claim 29, wherein each of the I/O banks of the first type and of the second type includes data pins and support pins.
  • 31. The programmable device of claim 30, wherein a ratio of data pins to at least a portion of the support pins in each of the plurality I/O banks of the first type is the same as a ratio of data pins to at least a portion of the support pins in each of the plurality I/O banks of the second type.
  • 32. The programmable device of claim 31, wherein the portion of the support pins includes ground pins.
  • 33. The programmable device of claim 31, wherein the portion of the support pins includes power pins.
  • 34. The programmable device of claim 31, wherein the portion of the support pins includes clock pins.
  • 35. The programmable device of claim 30, wherein at least a portion of the support pins of each I/O bank of the first plurality are distributed within its respective I/O bank at a regular interval.
  • 36. The programmable device of claim 35, wherein at least a portion of the support pins of each I/O bank of the second plurality are distributed within its respective I/O bank at the regular interval.
  • 37. The programmable device of claim 29, wherein the first and second plurality of I/O banks have similar performance characteristics.
  • 38. The programmable device of claim 37, the performance characteristics include a signal to noise ratio.
  • 39. The programmable device of claim 37, wherein the performance characteristics include a clock skew.
  • 40. The programmable device of claim 29, wherein each I/O bank of the first plurality of I/O banks is functionally identical to an I/O bank of a second programmable device in a family of programmable devices, wherein the second programmable device has different specifications than the programmable device.
  • 41. The programmable device of claim 29, wherein each I/O bank of the second plurality of I/O banks includes a portion functionally identical to an I/O bank of a second programmable device in a family of programmable devices, wherein the second programmable device has different specifications than the programmable device.
  • 42. The programmable device of claim 29, wherein the each of the first plurality of I/O banks has a first fixed number of pins and each of the second plurality of I/O banks has a second fixed number of pins, such that the first and second fixed numbers of pins are adapted to efficiently implement a set of interfaces.
Continuation in Parts (1)
Number Date Country
Parent 11337046 Jan 2006 US
Child 11558363 US