Methods and apparatus provide PCI Express support on a programmable
device. A device includes a hard-coded transceiver that supports
functionality associated with the PCI Express physical layer and link
layer. The hard-coded transceiver can also support part of the PCI
Express transaction layer. Soft-coded logic is used to support higher
layer functionality including a portion of the transaction layer to allow
custom configuration of PCI Express features such as virtual channels,
buffers, prioritization, and quality of service characteristics. The
hybrid solution reduces logic resource cost and provides an effective
custom configurable solution.