Digilent / vivado-library

MIT License
566 stars 311 forks source link

Pmod bridge: Fix the disabled bottom row bug #60

Open artvvb opened 2 years ago

artvvb commented 2 years ago

In version 1.3 of the Pmod Bridge, this fixes the issue where disabling the top or bottom row interface causes the ports to which the board constraints are applied to not be created, resulting in implementation errors. Version 1.0 of the bridge is not changed, and should be replaced in Pmod IPs and hierarchies going forward. The IP was repackaged and tested in version 2021.1 of the tools with the Pmod NAV and Pmod AD1 hierarchies, but it should also be tested in 2019.1 with UART and I2C hierarchies and a repackaged Pmod IP to ensure we have backward-compatible support for that version.

Incidentally, a parameter for optional I2C pullups on the bottom row interface is added, as well as some general refactoring of pmod_concat and the ports and interfaces sections of component.xml, in order to clean up some of the port/interface enablement dependency logic. FPGA-side interface mode "None" is removed, and GPIO interfaces or manually constrained external ports should be favored in the use cases where this might have been handy.

The Pmod AD1 hierarchy also has its readme added as a BD comment, a feature that should be rolled out into other hierarchies.

Sources for testing can be obtained from the branch's source ZIP