Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add AD4052-ARDZ project #1504

Merged
merged 3 commits into from
Dec 19, 2024
Merged

Add AD4052-ARDZ project #1504

merged 3 commits into from
Dec 19, 2024

Conversation

gastmaier
Copy link
Contributor

@gastmaier gastmaier commented Nov 1, 2024

PR Description

Adds support to the AD4052 ADC SPI family (AD4050, AD4052, AD4056, AD4058).
The CNV pin contains a OR logic for:

  • In buffer reading mode, conversions are triggered by the pwm generator.
  • In single shot mode, conversions are triggered by a GPIO.

SPI Engine Offload waits the Data Ready signal from the ADC, configured at pin GP1.
ADC GP0 is used as a monitor pin, triggering either threshold (rising+failing) events to the PS.

Named ad4052 instead of ad405x since the ad4052 is the main part of the family (best granularity and speed).

Pointers:
www.analog.com/ad4050
www.analog.com/ad4052
www.analog.com/eval-ad4052-ardz.html

Coraz7s tested on HW. Pending De10Nano

The de10nano raises the same critical warnings as #1463

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)

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

projects/ad4052_ardz/common/ad4052_bd.tcl Outdated Show resolved Hide resolved
projects/ad4052_ardz/common/ad4052_bd.tcl Outdated Show resolved Hide resolved
docs/projects/ad4052_ardz/ad4052_hdl.svg Outdated Show resolved Hide resolved
projects/ad4052_ardz/Readme.md Outdated Show resolved Hide resolved
projects/ad4052_ardz/common/ad4052_qsys.tcl Outdated Show resolved Hide resolved
@gastmaier
Copy link
Contributor Author

gastmaier commented Nov 19, 2024

Applied review changes.
Increased compilation effort to close timing at spi_clk 150Mhz

Comment on lines +91 to +92
assign adc_cnv = adc_cnv_w | (gpio_o[34] & ~gpio_t[34]);
assign gpio_i[34] = adc_cnv;
Copy link
Contributor

Choose a reason for hiding this comment

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

why is this level of CNV control not available on the de10nano approach ?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

My oversight.

@gastmaier gastmaier changed the base branch from main to ace December 3, 2024 17:49
@gastmaier
Copy link
Contributor Author

Merge after #1517

Base automatically changed from ace to main December 6, 2024 15:15
@gastmaier gastmaier requested a review from sarpadi December 11, 2024 13:40
sarpadi
sarpadi previously approved these changes Dec 18, 2024
Signed-off-by: Jorge Marques <jorge.marques@analog.com>
Signed-off-by: Jorge Marques <jorge.marques@analog.com>
Describe EVAL-AD4052-ARDZ support with coraz7s.

Signed-off-by: Jorge Marques <jorge.marques@analog.com>
@gastmaier
Copy link
Contributor Author

Forced pushed to increase Coraz7S spi_clk from 150 to 180Hz -> fscl 45MHz (180/((1+1)*2))
DE10-Nano was kept at 150MHz -> fsclk 37.5MHz (150/((1+1)*2)) to meet timing

@gastmaier gastmaier requested a review from sarpadi December 18, 2024 22:09
@gastmaier gastmaier merged commit bcd194f into main Dec 19, 2024
2 of 5 checks passed
@gastmaier gastmaier deleted the ad4052 branch December 19, 2024 15:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants