PYNQ: PYTHON PRODUCTIVITY

Question: how are PMOD0/1 distinguished?

Hi,

I have a question regarding PMOD 0/1 under base overlay, from the block diagram pmod0 and pmod1 are exactly same, and they also have exactly same mapped address for internal peripherals like i2c, spi, etc. However with python notebook we can distinguish between pmod0 and pmod1 when accessing the peripheral under it.

Does anyone know how are pmod0 and pmod1 are distinguished with the same address map?

Thanks.

Hi @stone,

The IOP block contain a shared BRAM, and the offset address of this BRAM is how you identify each pmod block.

https://pynq.readthedocs.io/en/latest/overlay_design_methodology/pynq_microblaze_subsystem.html#memory-architecture

Furthermore, the base.py define these pmods like this.

Mario

1 Like

Got it. Thanks Mario