Common Pitfalls in PCI Express Design

PCI Express is a point-to-point communications interface. It employs a protocol that allows devices to communicate simultaneously by implementing dual uni-directional paths between them. This protocol is layered – it has a transaction layer, data link layer, and physical layer – and this article highlights a number of error-prone areas on each of those layers based upon our experience of verifying such projects.