Jump to content
  • 0

Pmod I2S with ZCU 104 board


pooh

Question

I am currently working on a project that involves using the Pmod I2S with the ZCU104 development board. However, I am having difficulty finding the Pmod I2S IP core for integration into my Vivado project.

I have checked the Digilent GitHub repository and the product page for the Pmod I2S but was unable to locate the necessary IP core or any detailed instructions for setup.

Could anyone please provide guidance on where to find the Pmod I2S IP core? Additionally, if there are any specific resources or examples available for using the Pmod I2S with the ZCU104, that would be extremely helpful.

 

Regards

Link to comment
Share on other sites

3 answers to this question

Recommended Posts

  • 0

Hi @pooh

Digilent doesn't provide example code for the original Pmod I2S, as noted on the reference site: Pmod I2S (Legacy) - Digilent Reference.

There are some verilog sources and a project on GitHub for the Pmod I2S2, which uses the same CS4344 converter, that you might be able to adapt: Pmod-I2S2/shared/src/hdl/axis_i2s2.v at master · Digilent/Pmod-I2S2 (github.com).

Hope this helps,

Arthur

Link to comment
Share on other sites

  • 0
6 hours ago, artvvb said:

Hi @pooh

Digilent doesn't provide example code for the original Pmod I2S, as noted on the reference site: Pmod I2S (Legacy) - Digilent Reference.

There are some verilog sources and a project on GitHub for the Pmod I2S2, which uses the same CS4344 converter, that you might be able to adapt: Pmod-I2S2/shared/src/hdl/axis_i2s2.v at master · Digilent/Pmod-I2S2 (github.com).

Hope this helps,

Arthur

Hello @artvvb

Thanks for your response. 

Actually, I am Newbie to this fpga domain. Can you please tell, how to proceed with the solution you mentioned? How to use that verilog code?

Link to comment
Share on other sites

  • 0

The I2S and I2S2 have the same D/A converter wired up the same way to the same pins, assuming the I2S is connected to the top row of a Pmod port. This means that the demo code provided for the I2S2 will pretty much work as is, except that an A/D converter won't be connected, and the data source for the D/A will need to be switched out.

There are instructions for opening up a demo project in Vivado in the I2S2 demo git repo's readme: https://github.com/Digilent/Pmod-I2S2. You would need to open up this project and make any necessary changes to port it to the ZCU104 - probably changing out how the clocks are supplied, location constraints for I/O pins, and adding an alternate source of data for the output, as mentioned before. More than likely, this will involve creating a new Vivado project and importing some files from the demo as needed. I'd probably initially look at driving a triangle wave with an accumulator and feeding that signal to the AXI stream input to the core I previously linked (by modifying the top module that instantiates it in the demo project).

If you haven't yet, I'd really recommend running through some tutorials on something like writing the HDL required to getting an LED to blink, using just FPGA fabric and an input clock, before you tackle this.

Thanks,

Arthur

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...