Jump to content
  • 0

Eclypse Z7 DAC Project Files from Github


atown622

Question

I am trying to download the example project in C/C++ as thats what I need from the GITHUB repository and it appears to be missing some .h files when I go to compile it.  I really do not desire to write these header and source files on my own for this DAC and was wondering if anyone has managed to make their own projects using the DAC1411  and would be so kind as to share it with me.  I am just trying to create some output sinusoids right now and can modify what I  need once I have the capabilities to use the DAC (need the proper files though..)

I will be retrying this download, and can provide the specific files I think I am missing, but obviously it would be easier if I just had the entire proper download.

 

Thanks,

-atown

Link to comment
Share on other sites

14 answers to this question

Recommended Posts

  • 0

hi @atown622

Per this note in the base library user guide, the zmodlib folder is not populated as it would be when cloning recursively using git. Github does not automatically include submodule sources in ZIP downloads, which is why the document recommends cloning.

Quote

NOTE: If you choose to download the repository as ZIP, the folder zmodlib will not be populated and you will have to populate it manually.

You can download the necessary contents of the folder from the zmodlib repo here: https://github.com/Digilent/zmodlib/archive/f2f491971aa43fa23d3d2a1d6640d6f97ad69318.zip

This is the download for a specific commit pointed at by the Eclypse-Z7-SW repo's zmod_adc_dac/master branch, which is currently on commit 4aa5430 at time of writing. In future, the download would always be able to be found through the submodule link here:

image.png.4dafce9358b601339c638345d2175189.png

Thanks,

Arthur

image.png

Link to comment
Share on other sites

  • 0
53 minutes ago, artvvb said:

hi @atown622

Per this note in the base library user guide, the zmodlib folder is not populated as it would be when cloning recursively using git. Github does not automatically include submodule sources in ZIP downloads, which is why the document recommends cloning.

You can download the necessary contents of the folder from the zmodlib repo here: https://github.com/Digilent/zmodlib/archive/f2f491971aa43fa23d3d2a1d6640d6f97ad69318.zip

This is the download for a specific commit pointed at by the Eclypse-Z7-SW repo's zmod_adc_dac/master branch, which is currently on commit 4aa5430 at time of writing. In future, the download would always be able to be found through the submodule link here:

Thanks,

Arthur

 

 

Thank you for the response.  I have downloaded these files, but it still says I am missing my 'xparameters.h' and 'xil_print.h' files.  I believe i can get away with not using the xil_print.h, but I do need the xparameters.h file.    I have manually populated the other files necessary, but I have no clue what this parameters file should even look like...

Link to comment
Share on other sites

  • 0

Oh I see.

The xparameters file is required, as it contains all of the definitions of various IP parameters and all of the base addresses for the different AXI-connected modules in the hardware design. It is automatically generated and is specific to the hardware platform used. It would be extremely painful (nearly impossible) to write by hand.  It being missing suggests that the hardware platform could be somehow misconfigured, or that the application project is not pointing to the hardware platform and BSP in the right way.

There are a few things that might work for getting it up and running, but it might require setting the workspace back up from scratch: opening SDK into a new workspace, creating a hardware platform targeting the same HDF file, and a fresh application project that imports the all of the sources, and configuring the compiler include paths in the app's C/C++ Build settings to account for any subdirectories of the app's src directory that contain sources that will be used.

I'd really recommend using the instructions for recursively cloning the projects via git if at all possible.

Thanks,

Arthur

Link to comment
Share on other sites

  • 0
18 hours ago, artvvb said:

Oh I see.

The xparameters file is required, as it contains all of the definitions of various IP parameters and all of the base addresses for the different AXI-connected modules in the hardware design. It is automatically generated and is specific to the hardware platform used. It would be extremely painful (nearly impossible) to write by hand.  It being missing suggests that the hardware platform could be somehow misconfigured, or that the application project is not pointing to the hardware platform and BSP in the right way.

There are a few things that might work for getting it up and running, but it might require setting the workspace back up from scratch: opening SDK into a new workspace, creating a hardware platform targeting the same HDF file, and a fresh application project that imports the all of the sources, and configuring the compiler include paths in the app's C/C++ Build settings to account for any subdirectories of the app's src directory that contain sources that will be used.

I'd really recommend using the instructions for recursively cloning the projects via git if at all possible.

Thanks,

Arthur

I have recursively cloned via github and I am still running into the same issues, this time however I am also missing the 'xil_io.h' file...

 

I have created a new workspace, but am unfamiliar with how to create a new platform to to target the HDF file or configure the compiler in Xilinx.  Ill be attempting to figure it out via youtube.

 

Thanks,

atown622

Link to comment
Share on other sites

  • 0
18 hours ago, artvvb said:

Oh I see.

The xparameters file is required, as it contains all of the definitions of various IP parameters and all of the base addresses for the different AXI-connected modules in the hardware design. It is automatically generated and is specific to the hardware platform used. It would be extremely painful (nearly impossible) to write by hand.  It being missing suggests that the hardware platform could be somehow misconfigured, or that the application project is not pointing to the hardware platform and BSP in the right way.

There are a few things that might work for getting it up and running, but it might require setting the workspace back up from scratch: opening SDK into a new workspace, creating a hardware platform targeting the same HDF file, and a fresh application project that imports the all of the sources, and configuring the compiler include paths in the app's C/C++ Build settings to account for any subdirectories of the app's src directory that contain sources that will be used.

I'd really recommend using the instructions for recursively cloning the projects via git if at all possible.

Thanks,

Arthur

 

I do have the system.hdf file in the design_1_wrapper_hw_platform_0 folder.  After looking into this more, could I just write manually the #defines for this project.  Below is the system.hdf file opened. (Base Address and High Address Listed)

image.png.1fe202120f32c3c2e1f909afdfba7059.png

Ex: change 

#define ZMOD_DAC_BASE_ADDR     XPAR_ZMODDAC_0_AXI_ZMODDAC1411_V1_0_0_BASEADDR

to

#define ZMOD_DAC_BASE_ADDR     0x43c00000

Link to comment
Share on other sites

  • 0
30 minutes ago, atown622 said:

I am just missing 

#define DMA_DAC_IRQ         XPAR_FABRIC_ZMODDAC_0_AXI_DMA_1_MM2S_INTROUT_INTR

as FABRIC_ZMODDAC_0_AXI_DMA_1_MM2S_INTROUT_INTR isn't on that list...

So if you by chance know this address, for the DAC 1411 from the eclypse z7, i think the project would work without the parameters file.

Link to comment
Share on other sites

  • 0

Attached are xparameters files pulled out of the DAC1411 baremetal demo BSP, from the zmod_adc_dac/master branch of the git repo - if you are trying with a different branch or a different commit, then these copies of the files may differ from what is needed, since the addresses and other configuration parameters must match the hardware design that got built into the bitstream.

xparameters_ps.h xparameters.h

There's a fair chance that other important files that come from the BSP may also be missing... The xaxidma driver is one example that comes to mind.

If you are able to open the Vivado project, after generating a bitstream, an HDF can be exported and a fresh workspace can be created by following steps found in this guide, starting around 5.1: https://digilent.com/reference/vivado/getting-started-with-ipi/start

From there, the demo sources would need to be added to the freshly-created application (assuming SDK doesn't crash...). Zmodlib is able to be included in the src directory by adding the include paths shown in the screenshot below to the compiler's Directories. This screen is accessible through the Properties option that shows up when right clicking on an application.

image.thumb.png.741522415e9e03350419b6660f46aa5c.png

Link to comment
Share on other sites

  • 0
3 hours ago, artvvb said:

Attached are xparameters files pulled out of the DAC1411 baremetal demo BSP, from the zmod_adc_dac/master branch of the git repo - if you are trying with a different branch or a different commit, then these copies of the files may differ from what is needed, since the addresses and other configuration parameters must match the hardware design that got built into the bitstream.

xparameters_ps.h 12.1 kB · 0 downloads   xparameters.h 19.17 kB · 0 downloads

There's a fair chance that other important files that come from the BSP may also be missing... The xaxidma driver is one example that comes to mind.

If you are able to open the Vivado project, after generating a bitstream, an HDF can be exported and a fresh workspace can be created by following steps found in this guide, starting around 5.1: https://digilent.com/reference/vivado/getting-started-with-ipi/start

From there, the demo sources would need to be added to the freshly-created application (assuming SDK doesn't crash...). Zmodlib is able to be included in the src directory by adding the include paths shown in the screenshot below to the compiler's Directories. This screen is accessible through the Properties option that shows up when right clicking on an application.

image.thumb.png.741522415e9e03350419b6660f46aa5c.png

Thank you so much!  This should resolve my issues.  

Link to comment
Share on other sites

  • 0
On 6/2/2022 at 3:38 PM, artvvb said:

Attached are xparameters files pulled out of the DAC1411 baremetal demo BSP, from the zmod_adc_dac/master branch of the git repo - if you are trying with a different branch or a different commit, then these copies of the files may differ from what is needed, since the addresses and other configuration parameters must match the hardware design that got built into the bitstream.

xparameters_ps.h 12.1 kB · 2 downloads   xparameters.h 19.17 kB · 4 downloads

There's a fair chance that other important files that come from the BSP may also be missing... The xaxidma driver is one example that comes to mind.

If you are able to open the Vivado project, after generating a bitstream, an HDF can be exported and a fresh workspace can be created by following steps found in this guide, starting around 5.1: https://digilent.com/reference/vivado/getting-started-with-ipi/start

From there, the demo sources would need to be added to the freshly-created application (assuming SDK doesn't crash...). Zmodlib is able to be included in the src directory by adding the include paths shown in the screenshot below to the compiler's Directories. This screen is accessible through the Properties option that shows up when right clicking on an application.

image.thumb.png.741522415e9e03350419b6660f46aa5c.png

 

 

I have tried this methodology and the xadima is still not being generated.  Is there a way to take the current .HDF file andcjust load it into  VITIS/SDK from VIVADO?

 

Link to comment
Share on other sites

  • 0

Currently using VITAS now as SDK was completely unstable...  A new workplace didn't seem to do the trick...  xadima is missing and I assume some other files are as well.  Is this generated file generic? Like would someone else's file work with my project? Or is it specific to each unit.  

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...