core.tcl 995 B

1234567891011121314151617181920212223242526272829303132333435
  1. set core_name [lindex $argv 0]
  2. set part_name [lindex $argv 1]
  3. file delete -force tmp/cores/$core_name tmp/cores/$core_name.cache tmp/cores/$core_name.hw tmp/cores/$core_name.ip_user_files tmp/cores/$core_name.sim tmp/cores/$core_name.xpr
  4. create_project -part $part_name $core_name tmp/cores
  5. add_files -norecurse cores/$core_name.v
  6. set_property TOP $core_name [current_fileset]
  7. set files [glob -nocomplain modules/*.v]
  8. if {[llength $files] > 0} {
  9. add_files -norecurse $files
  10. }
  11. ipx::package_project -root_dir tmp/cores/$core_name
  12. set core [ipx::current_core]
  13. set_property VERSION {1.0} $core
  14. set_property NAME $core_name $core
  15. set_property LIBRARY {user} $core
  16. set_property VENDOR {pavel-demin} $core
  17. set_property VENDOR_DISPLAY_NAME {Pavel Demin} $core
  18. set_property COMPANY_URL {https://github.com/pavel-demin/red-pitaya-notes} $core
  19. set_property SUPPORTED_FAMILIES {zynq Production} $core
  20. ipx::create_xgui_files $core
  21. ipx::update_checksums $core
  22. ipx::save_core $core
  23. close_project