aws / aws-fpga

Official repository of the AWS EC2 FPGA Hardware and Software Development Kit
Other
1.51k stars 516 forks source link

prepare_new_cl.sh generates broken scripts and templates. #559

Open jahagirdar opened 2 years ago

jahagirdar commented 2 years ago

The script prepare_new_cl.sh in aws-fpga/hdk/cl/developer_designs/ generates broken code and scripts. Issues noticed so far:

  1. Code is generated as design/cl_template.sv While scripts in build/scripts references cl_hello_world everywhere.
  2. Script references files which are not generated e.g design/cl_id_defines.vh and common/design/cl_common_defines.vh
  3. The design/cl_template.sv throws 40+ errors during compilation. e.g.
ERROR: [Synth 8-2715] syntax error near . [/home/centos/src/project_data/aws-fpga/hdk/cl/developer_designs/vijay/build/src_post_encryption/cl_template.sv:183]
ERROR: [Synth 8-1031] cl_sh_pcis_awready is not declared [/home/centos/src/project_data/aws-fpga/hdk/cl/developer_designs/vijay/build/src_post_encryption/cl_template.sv:218]
ERROR: [Synth 8-1031] cl_sh_pcis_wready is not declared [/home/centos/src/project_data/aws-fpga/hdk/cl/developer_designs/vijay/build/src_post_encryption/cl_template.sv:220]
ERROR: [Synth 8-1751] cannot index into non-array tie_zero_id [/home/centos/src/project_data/aws-fpga/hdk/cl/developer_designs/vijay/build/src_post_encryption/cl_template.sv:291]
ERROR: [Synth 8-1751] cannot index into non-array tie_zero_id [/home/centos/src/project_data/aws-fpga/hdk/cl/developer_designs/vijay/build/src_post_encryption/cl_template.sv:292]

10 Infos, 1 Warnings, 1 Critical Warnings and 44 Errors encountered.
synth_design failed
jacobmgn commented 2 years ago

Hello,

Thanks for reporting this issue, we're taking a look at it

Thanks!

kyyalama2 commented 2 years ago

Dear customer,

Thanks for reporting the issue. The prepare_new_cl.sh script is intended to only set up the directory structure thats similar to our cl_examples for customers to add their designs. The cl_template.sv itself is not a standalone design and is just intended as a place holder for customer design. We recommend to run one of our examples like cl_hello_world or cl_dram_dma for a quick start and add the design to cl_template when want to create custom_design and update the build scripts with corresponding source files. Please feel free to let us know if you have any follow up questions. https://github.com/aws/aws-fpga/tree/master/hdk/cl/examples/cl_hello_world https://github.com/aws/aws-fpga/tree/master/hdk/cl/examples/cl_dram_dma

Thanks

jahagirdar commented 2 years ago

The minimum expectation from a template is that it should be clean start point for a new design. The current script is obliviously not a clean start-point. I ended up using a cleaned up template and folder layout from another site for my design.

In case Amazon AWS does not have the resources to fix this issue will they accept a PR?

kyyalama2 commented 2 years ago

Dear customer,

Thanks for using the F1 developer kit and providing your valuable feedback to AWS. We are continuously improving our developer kit and we currently have cl_examples that are recommended as a starting point to explore F1. In addition, we will be happy to review PR for the cl_template. Please feel free to provide any additional feedback that you have.

Thanks