Skip to content

Conversation

@bluncan
Copy link
Contributor

@bluncan bluncan commented Sep 4, 2025

PR Description

Adds the AD9084 (Apollo) design.

Requires the following PRs to be merged to main before this one:

After they are merged, I'll rebase this branch and re-check that the projects are building.

PR Type

  • Bug fix (change that fixes an issue)
  • New feature (change that adds new functionality)
  • Breaking change (has dependencies in other repos or will cause CI to fail)
  • Documentation

PR Checklist

  • I have followed the code style guidelines
  • I have performed a self-review of changes
  • I have compiled all hdl projects and libraries affected by this PR
  • I have tested in hardware affected projects, at least on relevant boards
  • I have commented my code, at least hard-to-understand parts
  • I have signed off all commits from this PR
  • I have updated the documentation (wiki pages, ReadMe files, Copyright etc)
  • I have not introduced new Warnings/Critical Warnings on compilation
  • I have added new hdl testbenches or updated existing ones

Copy link
Contributor

@tfcollins tfcollins left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Found a few invalid paths when cloned repo isn't called hdl

@bluncan bluncan force-pushed the dev_apollo_pr branch 7 times, most recently from da69c54 to 948e151 Compare September 30, 2025 15:04
@bluncan
Copy link
Contributor Author

bluncan commented Sep 30, 2025

Updated Versal projects to use the Transceiver Subsystem which was merged to main

@bia1708
Copy link
Collaborator

bia1708 commented Oct 16, 2025

RetriggerCI

bluncan and others added 2 commits October 31, 2025 12:19
Adds AD9084-EBZ (Apollo) base design
for the following carriers:
 - vcu118
 - vck190
 - vpk180
 - fm87

Signed-off-by: Bogdan Luncan <[email protected]>
Allow to be sourced from testbench

Signed-off-by: Jorge Marques <[email protected]>
gastmaier and others added 13 commits October 31, 2025 12:19
Simplifies identifying which SPI are 4-wire or 3-wire.
Also, for vck190, since the SPI interface only has 3 outputs, route
adf4030 to the third.
The adf4030 linux driver defaults to 4-wire, and 3-wire (datasheet
default) can be set through devicetree property adi,spi-3wire-enable.

Signed-off-by: Jorge Marques <[email protected]>
…/4w and unused slave devices

Signed-off-by: Filip Gherman <[email protected]>
FilipG24 and others added 5 commits November 6, 2025 21:21
The first time the board is powered on, because the reference clock
going to the transceivers is not stable until the clock chip is
programmerd, the LCPLLs are being locked wrong and the master
reset controller inside the QUADs gets stuck.

The fix is to manually reset the LCPLLs and ILOs inside the QUAD
after the clock chip is programmed.

Signed-off-by: Bogdan Luncan <[email protected]>
…tive quads

The versal transceiver subsystem doesn't allow you to route lanes
to non-consecutive quads. This caused issues on AD9084 for use cases
where L < 4 because we couldn't connect side A to one quad and
side B to another quad.

Signed-off-by: Bogdan Luncan <[email protected]>
Because side B is connected to the first quad
and side A on the second one, the Versal transceiver
subsystem didn't allow us to swap them.

Becaus we now support non-consecutive quads
we can map them correctly.

We can also support building side B use cases only
for VCK190.

Signed-off-by: Bogdan Luncan <[email protected]>
@gastmaier
Copy link
Contributor

gastmaier commented Dec 10, 2025

Side inversion fix working on vck190.
Configuring channel freqs now properly set the correct channel
Channel1 -> voltage0
...
Channel4 -> voltage3

…support for non-consecutive quads

Removed duplicate code by wrapping code fragments in functions.
Non-consecutive quad mode is needed by AD9084 because its sides
are mapped backwards to the quads (side B goes to the first one,
side A goes to the second one). The Versal Transceiver Subsystem
doesn't allow you to map Quad0 to Quad1 and vice-versa so you
need to instantiate two of them with one quad each.

This method also allows us to build the VCK190 design for
side B only or to build the VCK190/VPK180 designs with
less than 4 lanes.

Signed-off-by: Bogdan Luncan <[email protected]>
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.

6 participants