Skip to content

Versal support, related fixes#36

Draft
flmeisel wants to merge 3 commits into
masterfrom
versal
Draft

Versal support, related fixes#36
flmeisel wants to merge 3 commits into
masterfrom
versal

Conversation

@flmeisel
Copy link
Copy Markdown

@flmeisel flmeisel commented Jan 29, 2026

Addresses some issues related to Versal (V80) with Vivado 2024.2.

  • Rename SizedFIFO modules in AXIGate, Controller to avoid some name clash issues (that only manifest in some scenarios?)
  • Use Smartconnect in place of Interconnect v2: Deprecation of the latter, missing Versal support
  • Use emb_mem_gen (Versal-only) in place of blk_mem_gen (7-series to UltraScale+)

Unrelated: Allow disabling local memory (note: will likely have to fix the reset/boot PC setting somewhere in the core's files)

For Versal boards, the Makefile variables PYNQ, TAPASCO_PLATFORM, VERSAL need to be set accordingly.

  • Set data_width, addr_width for each core, or find an alternative to retrieving DATA_WIDTH/ADDR_WIDTH from the interconnect master.
  • The Smartconnects are not connected to peripheral_reset, as they do not have per-port reset pins. Is this a problem?
  • Test synthesis for more cores (tested: CVA5, CVA6)
  • Test a bitstream (so far AU280)

Rename SizedFIFO modules in AXIGate, Controller to avoid some Vivado issues
Use Smartconnect in place of Interconnect v2 (due to deprecation, missing Versal support)
On Versal, use emb_mem_gen (Versal-only) in place of blk_mem_gen (7-series to UltraScale+).

Allow disabling local memory (note: setting needs support in the specific core tcl)

TODO: Set data_width, addr_width for each core, or find an alternative to retrieving DATA_WIDTH/ADDR_WIDTH from the interconnect master.
Set the advanced properties of the smartconnect ports: M00_Buffer AR_SIZE=4, etc.

Retrieve data_width and addr_width directly from the core's memory interface, as Smartconnect is not evaluated immediately.

Support BRAM_SIZE=0 in all cores (tested only CVA5,6 for now)
-> Note: The user must manually set the core's reset PC to external memory.
This setting now entirely prevents BRAM instantiation.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant