Firmware for MNT ZZ9000 graphics and ARM coprocessor card for Amiga computers.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

zz9000_project.tcl 87KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637
  1. #*****************************************************************************************
  2. # Vivado (TM) v2018.3 (64-bit)
  3. #
  4. # zz9000_project.tcl: Tcl script for re-creating project 'ZZ9000_proto'
  5. #
  6. # Generated by Vivado on Sun Jan 05 20:23:52 CET 2020
  7. # IP Build 2404404 on Fri Dec 7 01:43:56 MST 2018
  8. #
  9. # This file contains the Vivado Tcl commands for re-creating the project to the state*
  10. # when this script was generated. In order to re-create the project, please source this
  11. # file in the Vivado Tcl Shell.
  12. #
  13. # * Note that the runs in the created project will be configured the same way as the
  14. # original project, however they will not be launched automatically. To regenerate the
  15. # run results please launch the synthesis/implementation runs as needed.
  16. #
  17. #*****************************************************************************************
  18. # NOTE: In order to use this script for source control purposes, please make sure that the
  19. # following files are added to the source control system:-
  20. #
  21. # 1. This project restoration tcl script (zz9000_project.tcl) that was generated.
  22. #
  23. # 2. The following source(s) files that were local or imported into the original project.
  24. # (Please see the '$orig_proj_dir' and '$origin_dir' variable setting below at the start of the script)
  25. #
  26. # "/home/mntmn/code/ZZ9000_proto/mntzorro.v"
  27. # "/home/mntmn/code/ZZ9000_proto/video_formatter.v"
  28. # "/home/mntmn/code/ZZ9000_proto/ZZ9000_proto.srcs/sources_1/bd/zz9000_ps/hdl/zz9000_ps_wrapper.v"
  29. # "/home/mntmn/code/ZZ9000_proto/ZZ9000_proto.srcs/constrs_1/new/zz9000.xdc"
  30. #
  31. # 3. The following remote source files that were added to the original project:-
  32. #
  33. # <none>
  34. #
  35. #*****************************************************************************************
  36. # Set the reference directory for source file relative paths (by default the value is script directory path)
  37. set origin_dir "."
  38. # Use origin directory path location variable, if specified in the tcl shell
  39. if { [info exists ::origin_dir_loc] } {
  40. set origin_dir $::origin_dir_loc
  41. }
  42. # Set the project name
  43. set _xil_proj_name_ "ZZ9000_proto"
  44. # Use project name variable, if specified in the tcl shell
  45. if { [info exists ::user_project_name] } {
  46. set _xil_proj_name_ $::user_project_name
  47. }
  48. variable script_file
  49. set script_file "zz9000_project.tcl"
  50. # Help information for this script
  51. proc print_help {} {
  52. variable script_file
  53. puts "\nDescription:"
  54. puts "Recreate a Vivado project from this script. The created project will be"
  55. puts "functionally equivalent to the original project for which this script was"
  56. puts "generated. The script contains commands for creating a project, filesets,"
  57. puts "runs, adding/importing sources and setting properties on various objects.\n"
  58. puts "Syntax:"
  59. puts "$script_file"
  60. puts "$script_file -tclargs \[--origin_dir <path>\]"
  61. puts "$script_file -tclargs \[--project_name <name>\]"
  62. puts "$script_file -tclargs \[--help\]\n"
  63. puts "Usage:"
  64. puts "Name Description"
  65. puts "-------------------------------------------------------------------------"
  66. puts "\[--origin_dir <path>\] Determine source file paths wrt this path. Default"
  67. puts " origin_dir path value is \".\", otherwise, the value"
  68. puts " that was set with the \"-paths_relative_to\" switch"
  69. puts " when this script was generated.\n"
  70. puts "\[--project_name <name>\] Create project with the specified name. Default"
  71. puts " name is the name of the project from where this"
  72. puts " script was generated.\n"
  73. puts "\[--help\] Print help information for this script"
  74. puts "-------------------------------------------------------------------------\n"
  75. exit 0
  76. }
  77. if { $::argc > 0 } {
  78. for {set i 0} {$i < $::argc} {incr i} {
  79. set option [string trim [lindex $::argv $i]]
  80. switch -regexp -- $option {
  81. "--origin_dir" { incr i; set origin_dir [lindex $::argv $i] }
  82. "--project_name" { incr i; set _xil_proj_name_ [lindex $::argv $i] }
  83. "--help" { print_help }
  84. default {
  85. if { [regexp {^-} $option] } {
  86. puts "ERROR: Unknown option '$option' specified, please type '$script_file -tclargs --help' for usage info.\n"
  87. return 1
  88. }
  89. }
  90. }
  91. }
  92. }
  93. # Set the directory path for the original project from where this script was exported
  94. set orig_proj_dir "[file normalize "$origin_dir/"]"
  95. # Create project
  96. create_project ${_xil_proj_name_} ./${_xil_proj_name_} -part xc7z020clg400-1
  97. # Set the directory path for the new project
  98. set proj_dir [get_property directory [current_project]]
  99. # Set project properties
  100. set obj [current_project]
  101. set_property -name "default_lib" -value "xil_defaultlib" -objects $obj
  102. set_property -name "dsa.accelerator_binary_content" -value "bitstream" -objects $obj
  103. set_property -name "dsa.accelerator_binary_format" -value "xclbin2" -objects $obj
  104. set_property -name "dsa.description" -value "Vivado generated DSA" -objects $obj
  105. set_property -name "dsa.dr_bd_base_address" -value "0" -objects $obj
  106. set_property -name "dsa.emu_dir" -value "emu" -objects $obj
  107. set_property -name "dsa.flash_interface_type" -value "bpix16" -objects $obj
  108. set_property -name "dsa.flash_offset_address" -value "0" -objects $obj
  109. set_property -name "dsa.flash_size" -value "1024" -objects $obj
  110. set_property -name "dsa.host_architecture" -value "x86_64" -objects $obj
  111. set_property -name "dsa.host_interface" -value "pcie" -objects $obj
  112. set_property -name "dsa.platform_state" -value "pre_synth" -objects $obj
  113. set_property -name "dsa.vendor" -value "xilinx" -objects $obj
  114. set_property -name "dsa.version" -value "0.0" -objects $obj
  115. set_property -name "enable_vhdl_2008" -value "1" -objects $obj
  116. set_property -name "ip_cache_permissions" -value "read write" -objects $obj
  117. set_property -name "ip_output_repo" -value "$proj_dir/${_xil_proj_name_}.cache/ip" -objects $obj
  118. set_property -name "mem.enable_memory_map_generation" -value "1" -objects $obj
  119. set_property -name "part" -value "xc7z020clg400-1" -objects $obj
  120. set_property -name "sim.central_dir" -value "$proj_dir/${_xil_proj_name_}.ip_user_files" -objects $obj
  121. set_property -name "sim.ip.auto_export_scripts" -value "1" -objects $obj
  122. set_property -name "simulator_language" -value "Mixed" -objects $obj
  123. set_property -name "webtalk.activehdl_export_sim" -value "21" -objects $obj
  124. set_property -name "webtalk.ies_export_sim" -value "21" -objects $obj
  125. set_property -name "webtalk.modelsim_export_sim" -value "21" -objects $obj
  126. set_property -name "webtalk.questa_export_sim" -value "21" -objects $obj
  127. set_property -name "webtalk.riviera_export_sim" -value "21" -objects $obj
  128. set_property -name "webtalk.vcs_export_sim" -value "21" -objects $obj
  129. set_property -name "webtalk.xsim_export_sim" -value "21" -objects $obj
  130. set_property -name "webtalk.xsim_launch_sim" -value "38" -objects $obj
  131. set_property -name "xpm_libraries" -value "XPM_CDC XPM_FIFO XPM_MEMORY" -objects $obj
  132. # Create 'sources_1' fileset (if not found)
  133. if {[string equal [get_filesets -quiet sources_1] ""]} {
  134. create_fileset -srcset sources_1
  135. }
  136. # Set IP repository paths
  137. set obj [get_filesets sources_1]
  138. set_property "ip_repo_paths" "[file normalize "$origin_dir/../ip_repo/MNTZorro_1.0"]" $obj
  139. # Rebuild user ip_repo's index before adding any source files
  140. update_ip_catalog -rebuild
  141. # Set 'sources_1' fileset object
  142. set obj [get_filesets sources_1]
  143. # Import local files from the original project
  144. set files [list \
  145. [file normalize "${origin_dir}/mntzorro.v" ]\
  146. [file normalize "${origin_dir}/video_formatter.v" ]\
  147. [file normalize "${origin_dir}/ZZ9000_proto.srcs/sources_1/bd/zz9000_ps/hdl/zz9000_ps_wrapper.v" ]\
  148. ]
  149. set imported_files [import_files -fileset sources_1 $files]
  150. # Set 'sources_1' fileset file properties for remote files
  151. # None
  152. # Set 'sources_1' fileset file properties for local files
  153. set file "mntzorro.v"
  154. set file_obj [get_files -of_objects [get_filesets sources_1] [list "*$file"]]
  155. set_property -name "path_mode" -value "RelativeOnly" -objects $file_obj
  156. # Set 'sources_1' fileset properties
  157. set obj [get_filesets sources_1]
  158. set_property -name "top" -value "zz9000_ps_wrapper" -objects $obj
  159. # Create 'constrs_1' fileset (if not found)
  160. if {[string equal [get_filesets -quiet constrs_1] ""]} {
  161. create_fileset -constrset constrs_1
  162. }
  163. # Set 'constrs_1' fileset object
  164. set obj [get_filesets constrs_1]
  165. # Add/Import constrs file and set constrs file properties
  166. set file "[file normalize "$origin_dir/ZZ9000_proto.srcs/constrs_1/new/zz9000.xdc"]"
  167. set file_imported [import_files -fileset constrs_1 [list $file]]
  168. set file "new/zz9000.xdc"
  169. set file_obj [get_files -of_objects [get_filesets constrs_1] [list "*$file"]]
  170. set_property -name "file_type" -value "XDC" -objects $file_obj
  171. # Set 'constrs_1' fileset properties
  172. set obj [get_filesets constrs_1]
  173. set_property -name "target_constrs_file" -value "[get_files *new/zz9000.xdc]" -objects $obj
  174. set_property -name "target_part" -value "xc7z020clg400-1" -objects $obj
  175. set_property -name "target_ucf" -value "[get_files *new/zz9000.xdc]" -objects $obj
  176. # Create 'sim_1' fileset (if not found)
  177. if {[string equal [get_filesets -quiet sim_1] ""]} {
  178. create_fileset -simset sim_1
  179. }
  180. # Set 'sim_1' fileset object
  181. set obj [get_filesets sim_1]
  182. # Empty (no sources present)
  183. # Set 'sim_1' fileset properties
  184. set obj [get_filesets sim_1]
  185. set_property -name "nl.mode" -value "funcsim" -objects $obj
  186. set_property -name "sim_mode" -value "post-synthesis" -objects $obj
  187. set_property -name "top" -value "zz9000_ps_wrapper" -objects $obj
  188. set_property -name "top_lib" -value "xil_defaultlib" -objects $obj
  189. set_property -name "xsim.elaborate.mt_level" -value "off" -objects $obj
  190. set_property -name "xsim.elaborate.xelab.more_options" -value "-v 1" -objects $obj
  191. # Set 'utils_1' fileset object
  192. set obj [get_filesets utils_1]
  193. # Empty (no sources present)
  194. # Set 'utils_1' fileset properties
  195. set obj [get_filesets utils_1]
  196. # Adding sources referenced in BDs, if not already added
  197. if { [get_files mntzorro.v] == "" } {
  198. import_files -quiet -fileset sources_1 mntzorro.v
  199. }
  200. if { [get_files video_formatter.v] == "" } {
  201. import_files -quiet -fileset sources_1 video_formatter.v
  202. }
  203. # Proc to create BD zz9000_ps
  204. proc cr_bd_zz9000_ps { parentCell } {
  205. # The design that will be created by this Tcl proc contains the following
  206. # module references:
  207. # MNTZorro_v0_1_S00_AXI, video_formatter
  208. # CHANGE DESIGN NAME HERE
  209. set design_name zz9000_ps
  210. common::send_msg_id "BD_TCL-003" "INFO" "Currently there is no design <$design_name> in project, so creating one..."
  211. create_bd_design $design_name
  212. set bCheckIPsPassed 1
  213. ##################################################################
  214. # CHECK IPs
  215. ##################################################################
  216. set bCheckIPs 1
  217. if { $bCheckIPs == 1 } {
  218. set list_check_ips "\
  219. xilinx.com:ip:axi_dwidth_converter:2.1\
  220. xilinx.com:ip:axi_protocol_converter:2.1\
  221. xilinx.com:ip:axi_register_slice:2.1\
  222. xilinx.com:ip:clk_wiz:6.0\
  223. xilinx.com:ip:proc_sys_reset:5.0\
  224. xilinx.com:ip:processing_system7:5.5\
  225. xilinx.com:ip:xlslice:1.0\
  226. xilinx.com:ip:axi_vdma:6.3\
  227. xilinx.com:ip:axis_data_fifo:2.0\
  228. "
  229. set list_ips_missing ""
  230. common::send_msg_id "BD_TCL-006" "INFO" "Checking if the following IPs exist in the project's IP catalog: $list_check_ips ."
  231. foreach ip_vlnv $list_check_ips {
  232. set ip_obj [get_ipdefs -all $ip_vlnv]
  233. if { $ip_obj eq "" } {
  234. lappend list_ips_missing $ip_vlnv
  235. }
  236. }
  237. if { $list_ips_missing ne "" } {
  238. catch {common::send_msg_id "BD_TCL-115" "ERROR" "The following IPs are not found in the IP Catalog:\n $list_ips_missing\n\nResolution: Please add the repository containing the IP(s) to the project." }
  239. set bCheckIPsPassed 0
  240. }
  241. }
  242. ##################################################################
  243. # CHECK Modules
  244. ##################################################################
  245. set bCheckModules 1
  246. if { $bCheckModules == 1 } {
  247. set list_check_mods "\
  248. MNTZorro_v0_1_S00_AXI\
  249. video_formatter\
  250. "
  251. set list_mods_missing ""
  252. common::send_msg_id "BD_TCL-006" "INFO" "Checking if the following modules exist in the project's sources: $list_check_mods ."
  253. foreach mod_vlnv $list_check_mods {
  254. if { [can_resolve_reference $mod_vlnv] == 0 } {
  255. lappend list_mods_missing $mod_vlnv
  256. }
  257. }
  258. if { $list_mods_missing ne "" } {
  259. catch {common::send_msg_id "BD_TCL-115" "ERROR" "The following module(s) are not found in the project: $list_mods_missing" }
  260. common::send_msg_id "BD_TCL-008" "INFO" "Please add source files for the missing module(s) above."
  261. set bCheckIPsPassed 0
  262. }
  263. }
  264. if { $bCheckIPsPassed != 1 } {
  265. common::send_msg_id "BD_TCL-1003" "WARNING" "Will not continue with creation of design due to the error(s) above."
  266. return 3
  267. }
  268. # Hierarchical cell: video
  269. proc create_hier_cell_video { parentCell nameHier } {
  270. variable script_folder
  271. if { $parentCell eq "" || $nameHier eq "" } {
  272. catch {common::send_msg_id "BD_TCL-102" "ERROR" "create_hier_cell_video() - Empty argument(s)!"}
  273. return
  274. }
  275. # Get object for parentCell
  276. set parentObj [get_bd_cells $parentCell]
  277. if { $parentObj == "" } {
  278. catch {common::send_msg_id "BD_TCL-100" "ERROR" "Unable to find parent cell <$parentCell>!"}
  279. return
  280. }
  281. # Make sure parentObj is hier blk
  282. set parentType [get_property TYPE $parentObj]
  283. if { $parentType ne "hier" } {
  284. catch {common::send_msg_id "BD_TCL-101" "ERROR" "Parent <$parentObj> has TYPE = <$parentType>. Expected to be <hier>."}
  285. return
  286. }
  287. # Save current instance; Restore later
  288. set oldCurInst [current_bd_instance .]
  289. # Set parent object as current
  290. current_bd_instance $parentObj
  291. # Create cell and set as current instance
  292. set hier_obj [create_bd_cell -type hier $nameHier]
  293. current_bd_instance $hier_obj
  294. # Create interface pins
  295. create_bd_intf_pin -mode Master -vlnv xilinx.com:interface:aximm_rtl:1.0 M_AXI_MM2S
  296. create_bd_intf_pin -mode Slave -vlnv xilinx.com:interface:aximm_rtl:1.0 S_AXI_LITE
  297. # Create pins
  298. create_bd_pin -dir O VGA_DE
  299. create_bd_pin -dir O VGA_HS
  300. create_bd_pin -dir I -type clk VGA_PCLK
  301. create_bd_pin -dir O VGA_VS
  302. create_bd_pin -dir I -type rst aresetn
  303. create_bd_pin -dir I -type rst axi_resetn
  304. create_bd_pin -dir I -from 31 -to 0 control_data
  305. create_bd_pin -dir I control_interlace
  306. create_bd_pin -dir I -from 7 -to 0 control_op
  307. create_bd_pin -dir O control_vblank
  308. create_bd_pin -dir O -from 31 -to 0 dvi_rgb
  309. create_bd_pin -dir I -type clk m_axi_mm2s_aclk
  310. create_bd_pin -dir I -type clk s_axi_lite_aclk
  311. # Create instance: axi_vdma_0, and set properties
  312. set axi_vdma_0 [ create_bd_cell -type ip -vlnv xilinx.com:ip:axi_vdma:6.3 axi_vdma_0 ]
  313. set_property -dict [ list \
  314. CONFIG.c_include_mm2s_dre {0} \
  315. CONFIG.c_include_s2mm {0} \
  316. CONFIG.c_m_axi_mm2s_data_width {32} \
  317. CONFIG.c_mm2s_genlock_mode {0} \
  318. CONFIG.c_mm2s_linebuffer_depth {2048} \
  319. CONFIG.c_mm2s_max_burst_length {128} \
  320. CONFIG.c_num_fstores {1} \
  321. CONFIG.c_s2mm_genlock_mode {0} \
  322. ] $axi_vdma_0
  323. # Create instance: axis_data_fifo_0, and set properties
  324. set axis_data_fifo_0 [ create_bd_cell -type ip -vlnv xilinx.com:ip:axis_data_fifo:2.0 axis_data_fifo_0 ]
  325. set_property -dict [ list \
  326. CONFIG.FIFO_DEPTH {32} \
  327. ] $axis_data_fifo_0
  328. # Create instance: video_formatter_0, and set properties
  329. set block_name video_formatter
  330. set block_cell_name video_formatter_0
  331. if { [catch {set video_formatter_0 [create_bd_cell -type module -reference $block_name $block_cell_name] } errmsg] } {
  332. catch {common::send_msg_id "BD_TCL-105" "ERROR" "Unable to add referenced block <$block_name>. Please add the files for ${block_name}'s definition into the project."}
  333. return 1
  334. } elseif { $video_formatter_0 eq "" } {
  335. catch {common::send_msg_id "BD_TCL-106" "ERROR" "Unable to referenced block <$block_name>. Please add the files for ${block_name}'s definition into the project."}
  336. return 1
  337. }
  338. # Create interface connections
  339. connect_bd_intf_net -intf_net axi_vdma_0_M_AXIS_MM2S [get_bd_intf_pins axi_vdma_0/M_AXIS_MM2S] [get_bd_intf_pins axis_data_fifo_0/S_AXIS]
  340. connect_bd_intf_net -intf_net axis_data_fifo_0_M_AXIS [get_bd_intf_pins axis_data_fifo_0/M_AXIS] [get_bd_intf_pins video_formatter_0/m_axis_vid]
  341. connect_bd_intf_net -intf_net ps7_0_axi_periph_M01_AXI [get_bd_intf_pins S_AXI_LITE] [get_bd_intf_pins axi_vdma_0/S_AXI_LITE]
  342. connect_bd_intf_net -intf_net video_subsystem_M_AXI_MM2S [get_bd_intf_pins M_AXI_MM2S] [get_bd_intf_pins axi_vdma_0/M_AXI_MM2S]
  343. # Create port connections
  344. connect_bd_net -net MNTZorro_v0_1_S00_AXI_0_video_control_data [get_bd_pins control_data] [get_bd_pins video_formatter_0/control_data]
  345. connect_bd_net -net MNTZorro_v0_1_S00_AXI_0_video_control_interlace [get_bd_pins control_interlace] [get_bd_pins video_formatter_0/control_interlace]
  346. connect_bd_net -net MNTZorro_v0_1_S00_AXI_0_video_control_op [get_bd_pins control_op] [get_bd_pins video_formatter_0/control_op]
  347. connect_bd_net -net clk_1 [get_bd_pins VGA_PCLK] [get_bd_pins video_formatter_0/dvi_clk]
  348. connect_bd_net -net proc_sys_reset_1_peripheral_aresetn [get_bd_pins aresetn] [get_bd_pins axis_data_fifo_0/s_axis_aresetn] [get_bd_pins video_formatter_0/aresetn]
  349. connect_bd_net -net processing_system7_0_FCLK_CLK0 [get_bd_pins m_axi_mm2s_aclk] [get_bd_pins axi_vdma_0/m_axi_mm2s_aclk] [get_bd_pins axi_vdma_0/m_axis_mm2s_aclk] [get_bd_pins axis_data_fifo_0/s_axis_aclk] [get_bd_pins video_formatter_0/m_axis_vid_aclk]
  350. connect_bd_net -net processing_system7_0_FCLK_CLK1 [get_bd_pins s_axi_lite_aclk] [get_bd_pins axi_vdma_0/s_axi_lite_aclk]
  351. connect_bd_net -net rst_ps7_0_25M_peripheral_aresetn [get_bd_pins axi_resetn] [get_bd_pins axi_vdma_0/axi_resetn]
  352. connect_bd_net -net v_axi4s_vid_out_0_vid_data [get_bd_pins dvi_rgb] [get_bd_pins video_formatter_0/dvi_rgb]
  353. connect_bd_net -net video_formatter_0_control_vblank [get_bd_pins control_vblank] [get_bd_pins video_formatter_0/control_vblank]
  354. connect_bd_net -net video_subsystem_VGA_DE [get_bd_pins VGA_DE] [get_bd_pins video_formatter_0/dvi_active_video]
  355. connect_bd_net -net video_subsystem_VGA_HS [get_bd_pins VGA_HS] [get_bd_pins video_formatter_0/dvi_hsync]
  356. connect_bd_net -net video_subsystem_VGA_VS [get_bd_pins VGA_VS] [get_bd_pins video_formatter_0/dvi_vsync]
  357. # Restore current instance
  358. current_bd_instance $oldCurInst
  359. }
  360. variable script_folder
  361. if { $parentCell eq "" } {
  362. set parentCell [get_bd_cells /]
  363. }
  364. # Get object for parentCell
  365. set parentObj [get_bd_cells $parentCell]
  366. if { $parentObj == "" } {
  367. catch {common::send_msg_id "BD_TCL-100" "ERROR" "Unable to find parent cell <$parentCell>!"}
  368. return
  369. }
  370. # Make sure parentObj is hier blk
  371. set parentType [get_property TYPE $parentObj]
  372. if { $parentType ne "hier" } {
  373. catch {common::send_msg_id "BD_TCL-101" "ERROR" "Parent <$parentObj> has TYPE = <$parentType>. Expected to be <hier>."}
  374. return
  375. }
  376. # Save current instance; Restore later
  377. set oldCurInst [current_bd_instance .]
  378. # Set parent object as current
  379. current_bd_instance $parentObj
  380. # Create interface ports
  381. set DDR [ create_bd_intf_port -mode Master -vlnv xilinx.com:interface:ddrx_rtl:1.0 DDR ]
  382. set FIXED_IO [ create_bd_intf_port -mode Master -vlnv xilinx.com:display_processing_system7:fixedio_rtl:1.0 FIXED_IO ]
  383. # Create ports
  384. set VCAP_B0 [ create_bd_port -dir I VCAP_B0 ]
  385. set VCAP_B1 [ create_bd_port -dir I VCAP_B1 ]
  386. set VCAP_B2 [ create_bd_port -dir I VCAP_B2 ]
  387. set VCAP_B3 [ create_bd_port -dir I VCAP_B3 ]
  388. set VCAP_B4 [ create_bd_port -dir I VCAP_B4 ]
  389. set VCAP_B5 [ create_bd_port -dir I VCAP_B5 ]
  390. set VCAP_B6 [ create_bd_port -dir I VCAP_B6 ]
  391. set VCAP_B7 [ create_bd_port -dir I VCAP_B7 ]
  392. set VCAP_G0 [ create_bd_port -dir I VCAP_G0 ]
  393. set VCAP_G1 [ create_bd_port -dir I VCAP_G1 ]
  394. set VCAP_G2 [ create_bd_port -dir I VCAP_G2 ]
  395. set VCAP_G3 [ create_bd_port -dir I VCAP_G3 ]
  396. set VCAP_G4 [ create_bd_port -dir I VCAP_G4 ]
  397. set VCAP_G5 [ create_bd_port -dir I VCAP_G5 ]
  398. set VCAP_G6 [ create_bd_port -dir I VCAP_G6 ]
  399. set VCAP_G7 [ create_bd_port -dir I VCAP_G7 ]
  400. set VCAP_HSYNC [ create_bd_port -dir I VCAP_HSYNC ]
  401. set VCAP_R0 [ create_bd_port -dir I VCAP_R0 ]
  402. set VCAP_R1 [ create_bd_port -dir I VCAP_R1 ]
  403. set VCAP_R2 [ create_bd_port -dir I VCAP_R2 ]
  404. set VCAP_R3 [ create_bd_port -dir I VCAP_R3 ]
  405. set VCAP_R4 [ create_bd_port -dir I VCAP_R4 ]
  406. set VCAP_R5 [ create_bd_port -dir I VCAP_R5 ]
  407. set VCAP_R6 [ create_bd_port -dir I VCAP_R6 ]
  408. set VCAP_R7 [ create_bd_port -dir I VCAP_R7 ]
  409. set VCAP_VSYNC [ create_bd_port -dir I VCAP_VSYNC ]
  410. set VGA_B [ create_bd_port -dir O -from 7 -to 0 VGA_B ]
  411. set VGA_DE [ create_bd_port -dir O VGA_DE ]
  412. set VGA_G [ create_bd_port -dir O -from 7 -to 0 VGA_G ]
  413. set VGA_HS [ create_bd_port -dir O VGA_HS ]
  414. set VGA_PCLK [ create_bd_port -dir O -type clk VGA_PCLK ]
  415. set VGA_R [ create_bd_port -dir O -from 7 -to 0 VGA_R ]
  416. set VGA_VS [ create_bd_port -dir O VGA_VS ]
  417. set ZORRO_ADDR [ create_bd_port -dir IO -from 22 -to 0 ZORRO_ADDR ]
  418. set ZORRO_ADDRDIR [ create_bd_port -dir O ZORRO_ADDRDIR ]
  419. set ZORRO_ADDRDIR2 [ create_bd_port -dir O ZORRO_ADDRDIR2 ]
  420. set ZORRO_C28D [ create_bd_port -dir I ZORRO_C28D ]
  421. set ZORRO_DATA [ create_bd_port -dir IO -from 15 -to 0 ZORRO_DATA ]
  422. set ZORRO_DATADIR [ create_bd_port -dir O ZORRO_DATADIR ]
  423. set ZORRO_DOE [ create_bd_port -dir I ZORRO_DOE ]
  424. set ZORRO_E7M [ create_bd_port -dir I ZORRO_E7M ]
  425. set ZORRO_INT6 [ create_bd_port -dir O ZORRO_INT6 ]
  426. set ZORRO_NBGN [ create_bd_port -dir I ZORRO_NBGN ]
  427. set ZORRO_NBRN [ create_bd_port -dir O ZORRO_NBRN ]
  428. set ZORRO_NCCS [ create_bd_port -dir I ZORRO_NCCS ]
  429. set ZORRO_NCFGIN [ create_bd_port -dir I ZORRO_NCFGIN ]
  430. set ZORRO_NCFGOUT [ create_bd_port -dir O ZORRO_NCFGOUT ]
  431. set ZORRO_NCINH [ create_bd_port -dir O ZORRO_NCINH ]
  432. set ZORRO_NDS0 [ create_bd_port -dir I ZORRO_NDS0 ]
  433. set ZORRO_NDS1 [ create_bd_port -dir I ZORRO_NDS1 ]
  434. set ZORRO_NDTACK [ create_bd_port -dir O ZORRO_NDTACK ]
  435. set ZORRO_NFCS [ create_bd_port -dir I ZORRO_NFCS ]
  436. set ZORRO_NIORST [ create_bd_port -dir I ZORRO_NIORST ]
  437. set ZORRO_NLDS [ create_bd_port -dir I ZORRO_NLDS ]
  438. set ZORRO_NSLAVE [ create_bd_port -dir O ZORRO_NSLAVE ]
  439. set ZORRO_NUDS [ create_bd_port -dir I ZORRO_NUDS ]
  440. set ZORRO_READ [ create_bd_port -dir I ZORRO_READ ]
  441. # Create instance: MNTZorro_v0_1_S00_AXI_0, and set properties
  442. set block_name MNTZorro_v0_1_S00_AXI
  443. set block_cell_name MNTZorro_v0_1_S00_AXI_0
  444. if { [catch {set MNTZorro_v0_1_S00_AXI_0 [create_bd_cell -type module -reference $block_name $block_cell_name] } errmsg] } {
  445. catch {common::send_msg_id "BD_TCL-105" "ERROR" "Unable to add referenced block <$block_name>. Please add the files for ${block_name}'s definition into the project."}
  446. return 1
  447. } elseif { $MNTZorro_v0_1_S00_AXI_0 eq "" } {
  448. catch {common::send_msg_id "BD_TCL-106" "ERROR" "Unable to referenced block <$block_name>. Please add the files for ${block_name}'s definition into the project."}
  449. return 1
  450. }
  451. # Create instance: axi_dwidth_converter_0, and set properties
  452. set axi_dwidth_converter_0 [ create_bd_cell -type ip -vlnv xilinx.com:ip:axi_dwidth_converter:2.1 axi_dwidth_converter_0 ]
  453. # Create instance: axi_mem_intercon, and set properties
  454. set axi_mem_intercon [ create_bd_cell -type ip -vlnv xilinx.com:ip:axi_interconnect:2.1 axi_mem_intercon ]
  455. set_property -dict [ list \
  456. CONFIG.NUM_MI {1} \
  457. ] $axi_mem_intercon
  458. # Create instance: axi_protocol_convert_0, and set properties
  459. set axi_protocol_convert_0 [ create_bd_cell -type ip -vlnv xilinx.com:ip:axi_protocol_converter:2.1 axi_protocol_convert_0 ]
  460. # Create instance: axi_protocol_convert_1, and set properties
  461. set axi_protocol_convert_1 [ create_bd_cell -type ip -vlnv xilinx.com:ip:axi_protocol_converter:2.1 axi_protocol_convert_1 ]
  462. set_property -dict [ list \
  463. CONFIG.TRANSLATION_MODE {2} \
  464. ] $axi_protocol_convert_1
  465. # Create instance: axi_protocol_convert_2, and set properties
  466. set axi_protocol_convert_2 [ create_bd_cell -type ip -vlnv xilinx.com:ip:axi_protocol_converter:2.1 axi_protocol_convert_2 ]
  467. # Create instance: axi_register_slice_0, and set properties
  468. set axi_register_slice_0 [ create_bd_cell -type ip -vlnv xilinx.com:ip:axi_register_slice:2.1 axi_register_slice_0 ]
  469. # Create instance: axi_register_slice_1, and set properties
  470. set axi_register_slice_1 [ create_bd_cell -type ip -vlnv xilinx.com:ip:axi_register_slice:2.1 axi_register_slice_1 ]
  471. # Create instance: axi_register_slice_2, and set properties
  472. set axi_register_slice_2 [ create_bd_cell -type ip -vlnv xilinx.com:ip:axi_register_slice:2.1 axi_register_slice_2 ]
  473. # Create instance: axi_register_slice_3, and set properties
  474. set axi_register_slice_3 [ create_bd_cell -type ip -vlnv xilinx.com:ip:axi_register_slice:2.1 axi_register_slice_3 ]
  475. # Create instance: clk_wiz_0, and set properties
  476. set clk_wiz_0 [ create_bd_cell -type ip -vlnv xilinx.com:ip:clk_wiz:6.0 clk_wiz_0 ]
  477. set_property -dict [ list \
  478. CONFIG.CLKOUT1_DRIVES {BUFG} \
  479. CONFIG.CLKOUT1_JITTER {272.433} \
  480. CONFIG.CLKOUT1_PHASE_ERROR {261.747} \
  481. CONFIG.CLKOUT1_REQUESTED_OUT_FREQ {75} \
  482. CONFIG.CLKOUT2_DRIVES {BUFG} \
  483. CONFIG.CLKOUT3_DRIVES {BUFG} \
  484. CONFIG.CLKOUT4_DRIVES {BUFG} \
  485. CONFIG.CLKOUT5_DRIVES {BUFG} \
  486. CONFIG.CLKOUT6_DRIVES {BUFG} \
  487. CONFIG.CLKOUT7_DRIVES {BUFG} \
  488. CONFIG.MMCM_CLKFBOUT_MULT_F {33} \
  489. CONFIG.MMCM_CLKOUT0_DIVIDE_F {11} \
  490. CONFIG.MMCM_COMPENSATION {ZHOLD} \
  491. CONFIG.MMCM_DIVCLK_DIVIDE {4} \
  492. CONFIG.PRIMITIVE {PLL} \
  493. CONFIG.PRIM_SOURCE {Single_ended_clock_capable_pin} \
  494. CONFIG.SECONDARY_SOURCE {Single_ended_clock_capable_pin} \
  495. CONFIG.USE_DYN_RECONFIG {true} \
  496. CONFIG.USE_PHASE_ALIGNMENT {false} \
  497. ] $clk_wiz_0
  498. # Create instance: proc_sys_reset_0, and set properties
  499. set proc_sys_reset_0 [ create_bd_cell -type ip -vlnv xilinx.com:ip:proc_sys_reset:5.0 proc_sys_reset_0 ]
  500. # Create instance: processing_system7_0, and set properties
  501. set processing_system7_0 [ create_bd_cell -type ip -vlnv xilinx.com:ip:processing_system7:5.5 processing_system7_0 ]
  502. set_property -dict [ list \
  503. CONFIG.PCW_ACT_APU_PERIPHERAL_FREQMHZ {666.666687} \
  504. CONFIG.PCW_ACT_CAN_PERIPHERAL_FREQMHZ {10.000000} \
  505. CONFIG.PCW_ACT_DCI_PERIPHERAL_FREQMHZ {10.158730} \
  506. CONFIG.PCW_ACT_ENET0_PERIPHERAL_FREQMHZ {125.000000} \
  507. CONFIG.PCW_ACT_ENET1_PERIPHERAL_FREQMHZ {10.000000} \
  508. CONFIG.PCW_ACT_FPGA0_PERIPHERAL_FREQMHZ {100.000000} \
  509. CONFIG.PCW_ACT_FPGA1_PERIPHERAL_FREQMHZ {25.000000} \
  510. CONFIG.PCW_ACT_FPGA2_PERIPHERAL_FREQMHZ {10.000000} \
  511. CONFIG.PCW_ACT_FPGA3_PERIPHERAL_FREQMHZ {10.000000} \
  512. CONFIG.PCW_ACT_PCAP_PERIPHERAL_FREQMHZ {200.000000} \
  513. CONFIG.PCW_ACT_QSPI_PERIPHERAL_FREQMHZ {10.000000} \
  514. CONFIG.PCW_ACT_SDIO_PERIPHERAL_FREQMHZ {25.000000} \
  515. CONFIG.PCW_ACT_SMC_PERIPHERAL_FREQMHZ {10.000000} \
  516. CONFIG.PCW_ACT_SPI_PERIPHERAL_FREQMHZ {10.000000} \
  517. CONFIG.PCW_ACT_TPIU_PERIPHERAL_FREQMHZ {200.000000} \
  518. CONFIG.PCW_ACT_TTC0_CLK0_PERIPHERAL_FREQMHZ {111.111115} \
  519. CONFIG.PCW_ACT_TTC0_CLK1_PERIPHERAL_FREQMHZ {111.111115} \
  520. CONFIG.PCW_ACT_TTC0_CLK2_PERIPHERAL_FREQMHZ {111.111115} \
  521. CONFIG.PCW_ACT_TTC1_CLK0_PERIPHERAL_FREQMHZ {111.111115} \
  522. CONFIG.PCW_ACT_TTC1_CLK1_PERIPHERAL_FREQMHZ {111.111115} \
  523. CONFIG.PCW_ACT_TTC1_CLK2_PERIPHERAL_FREQMHZ {111.111115} \
  524. CONFIG.PCW_ACT_UART_PERIPHERAL_FREQMHZ {100.000000} \
  525. CONFIG.PCW_ACT_WDT_PERIPHERAL_FREQMHZ {111.111115} \
  526. CONFIG.PCW_APU_CLK_RATIO_ENABLE {6:2:1} \
  527. CONFIG.PCW_APU_PERIPHERAL_FREQMHZ {666.666} \
  528. CONFIG.PCW_ARMPLL_CTRL_FBDIV {40} \
  529. CONFIG.PCW_CAN_PERIPHERAL_DIVISOR0 {1} \
  530. CONFIG.PCW_CAN_PERIPHERAL_DIVISOR1 {1} \
  531. CONFIG.PCW_CLK0_FREQ {100000000} \
  532. CONFIG.PCW_CLK1_FREQ {25000000} \
  533. CONFIG.PCW_CLK2_FREQ {10000000} \
  534. CONFIG.PCW_CLK3_FREQ {10000000} \
  535. CONFIG.PCW_CPU_CPU_6X4X_MAX_RANGE {667} \
  536. CONFIG.PCW_CPU_CPU_PLL_FREQMHZ {1333.333} \
  537. CONFIG.PCW_CPU_PERIPHERAL_CLKSRC {ARM PLL} \
  538. CONFIG.PCW_CPU_PERIPHERAL_DIVISOR0 {2} \
  539. CONFIG.PCW_DCI_PERIPHERAL_DIVISOR0 {15} \
  540. CONFIG.PCW_DCI_PERIPHERAL_DIVISOR1 {7} \
  541. CONFIG.PCW_DDRPLL_CTRL_FBDIV {32} \
  542. CONFIG.PCW_DDR_DDR_PLL_FREQMHZ {1066.667} \
  543. CONFIG.PCW_DDR_PERIPHERAL_DIVISOR0 {2} \
  544. CONFIG.PCW_DDR_RAM_HIGHADDR {0x3FFFFFFF} \
  545. CONFIG.PCW_ENET0_ENET0_IO {MIO 16 .. 27} \
  546. CONFIG.PCW_ENET0_GRP_MDIO_ENABLE {1} \
  547. CONFIG.PCW_ENET0_GRP_MDIO_IO {MIO 52 .. 53} \
  548. CONFIG.PCW_ENET0_PERIPHERAL_CLKSRC {IO PLL} \
  549. CONFIG.PCW_ENET0_PERIPHERAL_DIVISOR0 {8} \
  550. CONFIG.PCW_ENET0_PERIPHERAL_DIVISOR1 {1} \
  551. CONFIG.PCW_ENET0_PERIPHERAL_ENABLE {1} \
  552. CONFIG.PCW_ENET0_PERIPHERAL_FREQMHZ {1000 Mbps} \
  553. CONFIG.PCW_ENET0_RESET_ENABLE {0} \
  554. CONFIG.PCW_ENET1_GRP_MDIO_ENABLE {0} \
  555. CONFIG.PCW_ENET1_PERIPHERAL_CLKSRC {IO PLL} \
  556. CONFIG.PCW_ENET1_PERIPHERAL_DIVISOR0 {1} \
  557. CONFIG.PCW_ENET1_PERIPHERAL_DIVISOR1 {1} \
  558. CONFIG.PCW_ENET1_PERIPHERAL_ENABLE {0} \
  559. CONFIG.PCW_ENET1_PERIPHERAL_FREQMHZ {1000 Mbps} \
  560. CONFIG.PCW_ENET1_RESET_ENABLE {0} \
  561. CONFIG.PCW_ENET_RESET_ENABLE {0} \
  562. CONFIG.PCW_ENET_RESET_SELECT {<Select>} \
  563. CONFIG.PCW_EN_CLK0_PORT {1} \
  564. CONFIG.PCW_EN_CLK1_PORT {1} \
  565. CONFIG.PCW_EN_DDR {1} \
  566. CONFIG.PCW_EN_EMIO_CD_SDIO0 {0} \
  567. CONFIG.PCW_EN_EMIO_ENET0 {0} \
  568. CONFIG.PCW_EN_EMIO_ENET1 {0} \
  569. CONFIG.PCW_EN_EMIO_GPIO {0} \
  570. CONFIG.PCW_EN_EMIO_I2C0 {0} \
  571. CONFIG.PCW_EN_EMIO_TTC0 {0} \
  572. CONFIG.PCW_EN_EMIO_WDT {0} \
  573. CONFIG.PCW_EN_ENET0 {1} \
  574. CONFIG.PCW_EN_ENET1 {0} \
  575. CONFIG.PCW_EN_GPIO {1} \
  576. CONFIG.PCW_EN_I2C0 {1} \
  577. CONFIG.PCW_EN_RST0_PORT {1} \
  578. CONFIG.PCW_EN_RST1_PORT {0} \
  579. CONFIG.PCW_EN_SDIO0 {1} \
  580. CONFIG.PCW_EN_TTC0 {0} \
  581. CONFIG.PCW_EN_UART1 {1} \
  582. CONFIG.PCW_EN_USB0 {1} \
  583. CONFIG.PCW_EN_WDT {0} \
  584. CONFIG.PCW_FCLK0_PERIPHERAL_CLKSRC {IO PLL} \
  585. CONFIG.PCW_FCLK0_PERIPHERAL_DIVISOR0 {5} \
  586. CONFIG.PCW_FCLK0_PERIPHERAL_DIVISOR1 {2} \
  587. CONFIG.PCW_FCLK1_PERIPHERAL_DIVISOR0 {8} \
  588. CONFIG.PCW_FCLK1_PERIPHERAL_DIVISOR1 {5} \
  589. CONFIG.PCW_FCLK2_PERIPHERAL_DIVISOR0 {1} \
  590. CONFIG.PCW_FCLK2_PERIPHERAL_DIVISOR1 {1} \
  591. CONFIG.PCW_FCLK3_PERIPHERAL_DIVISOR0 {1} \
  592. CONFIG.PCW_FCLK3_PERIPHERAL_DIVISOR1 {1} \
  593. CONFIG.PCW_FCLK_CLK0_BUF {FALSE} \
  594. CONFIG.PCW_FCLK_CLK1_BUF {TRUE} \
  595. CONFIG.PCW_FPGA0_PERIPHERAL_FREQMHZ {100} \
  596. CONFIG.PCW_FPGA1_PERIPHERAL_FREQMHZ {25} \
  597. CONFIG.PCW_FPGA_FCLK0_ENABLE {1} \
  598. CONFIG.PCW_FPGA_FCLK1_ENABLE {1} \
  599. CONFIG.PCW_FPGA_FCLK2_ENABLE {0} \
  600. CONFIG.PCW_FPGA_FCLK3_ENABLE {0} \
  601. CONFIG.PCW_GPIO_EMIO_GPIO_ENABLE {0} \
  602. CONFIG.PCW_GPIO_EMIO_GPIO_WIDTH {64} \
  603. CONFIG.PCW_GPIO_MIO_GPIO_ENABLE {1} \
  604. CONFIG.PCW_GPIO_MIO_GPIO_IO {MIO} \
  605. CONFIG.PCW_I2C0_GRP_INT_ENABLE {0} \
  606. CONFIG.PCW_I2C0_GRP_INT_IO {<Select>} \
  607. CONFIG.PCW_I2C0_I2C0_IO {MIO 50 .. 51} \
  608. CONFIG.PCW_I2C0_PERIPHERAL_ENABLE {1} \
  609. CONFIG.PCW_I2C0_RESET_ENABLE {0} \
  610. CONFIG.PCW_I2C0_RESET_IO {<Select>} \
  611. CONFIG.PCW_I2C1_RESET_ENABLE {0} \
  612. CONFIG.PCW_I2C_PERIPHERAL_FREQMHZ {111.111115} \
  613. CONFIG.PCW_I2C_RESET_ENABLE {0} \
  614. CONFIG.PCW_I2C_RESET_SELECT {<Select>} \
  615. CONFIG.PCW_IOPLL_CTRL_FBDIV {30} \
  616. CONFIG.PCW_IO_IO_PLL_FREQMHZ {1000.000} \
  617. CONFIG.PCW_MIO_0_DIRECTION {inout} \
  618. CONFIG.PCW_MIO_0_IOTYPE {LVCMOS 3.3V} \
  619. CONFIG.PCW_MIO_0_PULLUP {enabled} \
  620. CONFIG.PCW_MIO_0_SLEW {slow} \
  621. CONFIG.PCW_MIO_10_DIRECTION {inout} \
  622. CONFIG.PCW_MIO_10_IOTYPE {LVCMOS 3.3V} \
  623. CONFIG.PCW_MIO_10_PULLUP {enabled} \
  624. CONFIG.PCW_MIO_10_SLEW {slow} \
  625. CONFIG.PCW_MIO_11_DIRECTION {inout} \
  626. CONFIG.PCW_MIO_11_IOTYPE {LVCMOS 3.3V} \
  627. CONFIG.PCW_MIO_11_PULLUP {enabled} \
  628. CONFIG.PCW_MIO_11_SLEW {slow} \
  629. CONFIG.PCW_MIO_12_DIRECTION {inout} \
  630. CONFIG.PCW_MIO_12_IOTYPE {LVCMOS 3.3V} \
  631. CONFIG.PCW_MIO_12_PULLUP {enabled} \
  632. CONFIG.PCW_MIO_12_SLEW {slow} \
  633. CONFIG.PCW_MIO_13_DIRECTION {inout} \
  634. CONFIG.PCW_MIO_13_IOTYPE {LVCMOS 3.3V} \
  635. CONFIG.PCW_MIO_13_PULLUP {enabled} \
  636. CONFIG.PCW_MIO_13_SLEW {slow} \
  637. CONFIG.PCW_MIO_14_DIRECTION {inout} \
  638. CONFIG.PCW_MIO_14_IOTYPE {LVCMOS 3.3V} \
  639. CONFIG.PCW_MIO_14_PULLUP {enabled} \
  640. CONFIG.PCW_MIO_14_SLEW {slow} \
  641. CONFIG.PCW_MIO_15_DIRECTION {inout} \
  642. CONFIG.PCW_MIO_15_IOTYPE {LVCMOS 3.3V} \
  643. CONFIG.PCW_MIO_15_PULLUP {enabled} \
  644. CONFIG.PCW_MIO_15_SLEW {slow} \
  645. CONFIG.PCW_MIO_16_DIRECTION {out} \
  646. CONFIG.PCW_MIO_16_IOTYPE {LVCMOS 1.8V} \
  647. CONFIG.PCW_MIO_16_PULLUP {enabled} \
  648. CONFIG.PCW_MIO_16_SLEW {slow} \
  649. CONFIG.PCW_MIO_17_DIRECTION {out} \
  650. CONFIG.PCW_MIO_17_IOTYPE {LVCMOS 1.8V} \
  651. CONFIG.PCW_MIO_17_PULLUP {enabled} \
  652. CONFIG.PCW_MIO_17_SLEW {slow} \
  653. CONFIG.PCW_MIO_18_DIRECTION {out} \
  654. CONFIG.PCW_MIO_18_IOTYPE {LVCMOS 1.8V} \
  655. CONFIG.PCW_MIO_18_PULLUP {enabled} \
  656. CONFIG.PCW_MIO_18_SLEW {slow} \
  657. CONFIG.PCW_MIO_19_DIRECTION {out} \
  658. CONFIG.PCW_MIO_19_IOTYPE {LVCMOS 1.8V} \
  659. CONFIG.PCW_MIO_19_PULLUP {enabled} \
  660. CONFIG.PCW_MIO_19_SLEW {slow} \
  661. CONFIG.PCW_MIO_1_DIRECTION {inout} \
  662. CONFIG.PCW_MIO_1_IOTYPE {LVCMOS 3.3V} \
  663. CONFIG.PCW_MIO_1_PULLUP {enabled} \
  664. CONFIG.PCW_MIO_1_SLEW {slow} \
  665. CONFIG.PCW_MIO_20_DIRECTION {out} \
  666. CONFIG.PCW_MIO_20_IOTYPE {LVCMOS 1.8V} \
  667. CONFIG.PCW_MIO_20_PULLUP {enabled} \
  668. CONFIG.PCW_MIO_20_SLEW {slow} \
  669. CONFIG.PCW_MIO_21_DIRECTION {out} \
  670. CONFIG.PCW_MIO_21_IOTYPE {LVCMOS 1.8V} \
  671. CONFIG.PCW_MIO_21_PULLUP {enabled} \
  672. CONFIG.PCW_MIO_21_SLEW {slow} \
  673. CONFIG.PCW_MIO_22_DIRECTION {in} \
  674. CONFIG.PCW_MIO_22_IOTYPE {LVCMOS 1.8V} \
  675. CONFIG.PCW_MIO_22_PULLUP {enabled} \
  676. CONFIG.PCW_MIO_22_SLEW {slow} \
  677. CONFIG.PCW_MIO_23_DIRECTION {in} \
  678. CONFIG.PCW_MIO_23_IOTYPE {LVCMOS 1.8V} \
  679. CONFIG.PCW_MIO_23_PULLUP {enabled} \
  680. CONFIG.PCW_MIO_23_SLEW {slow} \
  681. CONFIG.PCW_MIO_24_DIRECTION {in} \
  682. CONFIG.PCW_MIO_24_IOTYPE {LVCMOS 1.8V} \
  683. CONFIG.PCW_MIO_24_PULLUP {enabled} \
  684. CONFIG.PCW_MIO_24_SLEW {slow} \
  685. CONFIG.PCW_MIO_25_DIRECTION {in} \
  686. CONFIG.PCW_MIO_25_IOTYPE {LVCMOS 1.8V} \
  687. CONFIG.PCW_MIO_25_PULLUP {enabled} \
  688. CONFIG.PCW_MIO_25_SLEW {slow} \
  689. CONFIG.PCW_MIO_26_DIRECTION {in} \
  690. CONFIG.PCW_MIO_26_IOTYPE {LVCMOS 1.8V} \
  691. CONFIG.PCW_MIO_26_PULLUP {enabled} \
  692. CONFIG.PCW_MIO_26_SLEW {slow} \
  693. CONFIG.PCW_MIO_27_DIRECTION {in} \
  694. CONFIG.PCW_MIO_27_IOTYPE {LVCMOS 1.8V} \
  695. CONFIG.PCW_MIO_27_PULLUP {enabled} \
  696. CONFIG.PCW_MIO_27_SLEW {slow} \
  697. CONFIG.PCW_MIO_28_DIRECTION {inout} \
  698. CONFIG.PCW_MIO_28_IOTYPE {LVCMOS 1.8V} \
  699. CONFIG.PCW_MIO_28_PULLUP {enabled} \
  700. CONFIG.PCW_MIO_28_SLEW {slow} \
  701. CONFIG.PCW_MIO_29_DIRECTION {in} \
  702. CONFIG.PCW_MIO_29_IOTYPE {LVCMOS 1.8V} \
  703. CONFIG.PCW_MIO_29_PULLUP {enabled} \
  704. CONFIG.PCW_MIO_29_SLEW {slow} \
  705. CONFIG.PCW_MIO_2_DIRECTION {inout} \
  706. CONFIG.PCW_MIO_2_IOTYPE {LVCMOS 3.3V} \
  707. CONFIG.PCW_MIO_2_PULLUP {disabled} \
  708. CONFIG.PCW_MIO_2_SLEW {slow} \
  709. CONFIG.PCW_MIO_30_DIRECTION {out} \
  710. CONFIG.PCW_MIO_30_IOTYPE {LVCMOS 1.8V} \
  711. CONFIG.PCW_MIO_30_PULLUP {enabled} \
  712. CONFIG.PCW_MIO_30_SLEW {slow} \
  713. CONFIG.PCW_MIO_31_DIRECTION {in} \
  714. CONFIG.PCW_MIO_31_IOTYPE {LVCMOS 1.8V} \
  715. CONFIG.PCW_MIO_31_PULLUP {enabled} \
  716. CONFIG.PCW_MIO_31_SLEW {slow} \
  717. CONFIG.PCW_MIO_32_DIRECTION {inout} \
  718. CONFIG.PCW_MIO_32_IOTYPE {LVCMOS 1.8V} \
  719. CONFIG.PCW_MIO_32_PULLUP {enabled} \
  720. CONFIG.PCW_MIO_32_SLEW {slow} \
  721. CONFIG.PCW_MIO_33_DIRECTION {inout} \
  722. CONFIG.PCW_MIO_33_IOTYPE {LVCMOS 1.8V} \
  723. CONFIG.PCW_MIO_33_PULLUP {enabled} \
  724. CONFIG.PCW_MIO_33_SLEW {slow} \
  725. CONFIG.PCW_MIO_34_DIRECTION {inout} \
  726. CONFIG.PCW_MIO_34_IOTYPE {LVCMOS 1.8V} \
  727. CONFIG.PCW_MIO_34_PULLUP {enabled} \
  728. CONFIG.PCW_MIO_34_SLEW {slow} \
  729. CONFIG.PCW_MIO_35_DIRECTION {inout} \
  730. CONFIG.PCW_MIO_35_IOTYPE {LVCMOS 1.8V} \
  731. CONFIG.PCW_MIO_35_PULLUP {enabled} \
  732. CONFIG.PCW_MIO_35_SLEW {slow} \
  733. CONFIG.PCW_MIO_36_DIRECTION {in} \
  734. CONFIG.PCW_MIO_36_IOTYPE {LVCMOS 1.8V} \
  735. CONFIG.PCW_MIO_36_PULLUP {enabled} \
  736. CONFIG.PCW_MIO_36_SLEW {slow} \
  737. CONFIG.PCW_MIO_37_DIRECTION {inout} \
  738. CONFIG.PCW_MIO_37_IOTYPE {LVCMOS 1.8V} \
  739. CONFIG.PCW_MIO_37_PULLUP {enabled} \
  740. CONFIG.PCW_MIO_37_SLEW {slow} \
  741. CONFIG.PCW_MIO_38_DIRECTION {inout} \
  742. CONFIG.PCW_MIO_38_IOTYPE {LVCMOS 1.8V} \
  743. CONFIG.PCW_MIO_38_PULLUP {enabled} \
  744. CONFIG.PCW_MIO_38_SLEW {slow} \
  745. CONFIG.PCW_MIO_39_DIRECTION {inout} \
  746. CONFIG.PCW_MIO_39_IOTYPE {LVCMOS 1.8V} \
  747. CONFIG.PCW_MIO_39_PULLUP {enabled} \
  748. CONFIG.PCW_MIO_39_SLEW {slow} \
  749. CONFIG.PCW_MIO_3_DIRECTION {inout} \
  750. CONFIG.PCW_MIO_3_IOTYPE {LVCMOS 3.3V} \
  751. CONFIG.PCW_MIO_3_PULLUP {disabled} \
  752. CONFIG.PCW_MIO_3_SLEW {slow} \
  753. CONFIG.PCW_MIO_40_DIRECTION {inout} \
  754. CONFIG.PCW_MIO_40_IOTYPE {LVCMOS 1.8V} \
  755. CONFIG.PCW_MIO_40_PULLUP {enabled} \
  756. CONFIG.PCW_MIO_40_SLEW {slow} \
  757. CONFIG.PCW_MIO_41_DIRECTION {inout} \
  758. CONFIG.PCW_MIO_41_IOTYPE {LVCMOS 1.8V} \
  759. CONFIG.PCW_MIO_41_PULLUP {enabled} \
  760. CONFIG.PCW_MIO_41_SLEW {slow} \
  761. CONFIG.PCW_MIO_42_DIRECTION {inout} \
  762. CONFIG.PCW_MIO_42_IOTYPE {LVCMOS 1.8V} \
  763. CONFIG.PCW_MIO_42_PULLUP {enabled} \
  764. CONFIG.PCW_MIO_42_SLEW {slow} \
  765. CONFIG.PCW_MIO_43_DIRECTION {inout} \
  766. CONFIG.PCW_MIO_43_IOTYPE {LVCMOS 1.8V} \
  767. CONFIG.PCW_MIO_43_PULLUP {enabled} \
  768. CONFIG.PCW_MIO_43_SLEW {slow} \
  769. CONFIG.PCW_MIO_44_DIRECTION {inout} \
  770. CONFIG.PCW_MIO_44_IOTYPE {LVCMOS 1.8V} \
  771. CONFIG.PCW_MIO_44_PULLUP {enabled} \
  772. CONFIG.PCW_MIO_44_SLEW {slow} \
  773. CONFIG.PCW_MIO_45_DIRECTION {inout} \
  774. CONFIG.PCW_MIO_45_IOTYPE {LVCMOS 1.8V} \
  775. CONFIG.PCW_MIO_45_PULLUP {enabled} \
  776. CONFIG.PCW_MIO_45_SLEW {slow} \
  777. CONFIG.PCW_MIO_46_DIRECTION {inout} \
  778. CONFIG.PCW_MIO_46_IOTYPE {LVCMOS 1.8V} \
  779. CONFIG.PCW_MIO_46_PULLUP {enabled} \
  780. CONFIG.PCW_MIO_46_SLEW {slow} \
  781. CONFIG.PCW_MIO_47_DIRECTION {inout} \
  782. CONFIG.PCW_MIO_47_IOTYPE {LVCMOS 1.8V} \
  783. CONFIG.PCW_MIO_47_PULLUP {enabled} \
  784. CONFIG.PCW_MIO_47_SLEW {slow} \
  785. CONFIG.PCW_MIO_48_DIRECTION {out} \
  786. CONFIG.PCW_MIO_48_IOTYPE {LVCMOS 1.8V} \
  787. CONFIG.PCW_MIO_48_PULLUP {enabled} \
  788. CONFIG.PCW_MIO_48_SLEW {slow} \
  789. CONFIG.PCW_MIO_49_DIRECTION {in} \
  790. CONFIG.PCW_MIO_49_IOTYPE {LVCMOS 1.8V} \
  791. CONFIG.PCW_MIO_49_PULLUP {enabled} \
  792. CONFIG.PCW_MIO_49_SLEW {slow} \
  793. CONFIG.PCW_MIO_4_DIRECTION {inout} \
  794. CONFIG.PCW_MIO_4_IOTYPE {LVCMOS 3.3V} \
  795. CONFIG.PCW_MIO_4_PULLUP {disabled} \
  796. CONFIG.PCW_MIO_4_SLEW {slow} \
  797. CONFIG.PCW_MIO_50_DIRECTION {inout} \
  798. CONFIG.PCW_MIO_50_IOTYPE {LVCMOS 1.8V} \
  799. CONFIG.PCW_MIO_50_PULLUP {enabled} \
  800. CONFIG.PCW_MIO_50_SLEW {slow} \
  801. CONFIG.PCW_MIO_51_DIRECTION {inout} \
  802. CONFIG.PCW_MIO_51_IOTYPE {LVCMOS 1.8V} \
  803. CONFIG.PCW_MIO_51_PULLUP {enabled} \
  804. CONFIG.PCW_MIO_51_SLEW {slow} \
  805. CONFIG.PCW_MIO_52_DIRECTION {out} \
  806. CONFIG.PCW_MIO_52_IOTYPE {LVCMOS 1.8V} \
  807. CONFIG.PCW_MIO_52_PULLUP {enabled} \
  808. CONFIG.PCW_MIO_52_SLEW {slow} \
  809. CONFIG.PCW_MIO_53_DIRECTION {inout} \
  810. CONFIG.PCW_MIO_53_IOTYPE {LVCMOS 1.8V} \
  811. CONFIG.PCW_MIO_53_PULLUP {enabled} \
  812. CONFIG.PCW_MIO_53_SLEW {slow} \
  813. CONFIG.PCW_MIO_5_DIRECTION {inout} \
  814. CONFIG.PCW_MIO_5_IOTYPE {LVCMOS 3.3V} \
  815. CONFIG.PCW_MIO_5_PULLUP {disabled} \
  816. CONFIG.PCW_MIO_5_SLEW {slow} \
  817. CONFIG.PCW_MIO_6_DIRECTION {inout} \
  818. CONFIG.PCW_MIO_6_IOTYPE {LVCMOS 3.3V} \
  819. CONFIG.PCW_MIO_6_PULLUP {disabled} \
  820. CONFIG.PCW_MIO_6_SLEW {slow} \
  821. CONFIG.PCW_MIO_7_DIRECTION {out} \
  822. CONFIG.PCW_MIO_7_IOTYPE {LVCMOS 3.3V} \
  823. CONFIG.PCW_MIO_7_PULLUP {disabled} \
  824. CONFIG.PCW_MIO_7_SLEW {slow} \
  825. CONFIG.PCW_MIO_8_DIRECTION {out} \
  826. CONFIG.PCW_MIO_8_IOTYPE {LVCMOS 3.3V} \
  827. CONFIG.PCW_MIO_8_PULLUP {disabled} \
  828. CONFIG.PCW_MIO_8_SLEW {slow} \
  829. CONFIG.PCW_MIO_9_DIRECTION {inout} \
  830. CONFIG.PCW_MIO_9_IOTYPE {LVCMOS 3.3V} \
  831. CONFIG.PCW_MIO_9_PULLUP {enabled} \
  832. CONFIG.PCW_MIO_9_SLEW {slow} \
  833. CONFIG.PCW_MIO_TREE_PERIPHERALS {GPIO#GPIO#GPIO#GPIO#GPIO#GPIO#GPIO#GPIO#GPIO#GPIO#GPIO#GPIO#GPIO#GPIO#GPIO#GPIO#Enet 0#Enet 0#Enet 0#Enet 0#Enet 0#Enet 0#Enet 0#Enet 0#Enet 0#Enet 0#Enet 0#Enet 0#USB 0#USB 0#USB 0#USB 0#USB 0#USB 0#USB 0#USB 0#USB 0#USB 0#USB 0#USB 0#SD 0#SD 0#SD 0#SD 0#SD 0#SD 0#GPIO#GPIO#UART 1#UART 1#I2C 0#I2C 0#Enet 0#Enet 0} \
  834. CONFIG.PCW_MIO_TREE_SIGNALS {gpio[0]#gpio[1]#gpio[2]#gpio[3]#gpio[4]#gpio[5]#gpio[6]#gpio[7]#gpio[8]#gpio[9]#gpio[10]#gpio[11]#gpio[12]#gpio[13]#gpio[14]#gpio[15]#tx_clk#txd[0]#txd[1]#txd[2]#txd[3]#tx_ctl#rx_clk#rxd[0]#rxd[1]#rxd[2]#rxd[3]#rx_ctl#data[4]#dir#stp#nxt#data[0]#data[1]#data[2]#data[3]#clk#data[5]#data[6]#data[7]#clk#cmd#data[0]#data[1]#data[2]#data[3]#gpio[46]#gpio[47]#tx#rx#scl#sda#mdc#mdio} \
  835. CONFIG.PCW_P2F_ENET0_INTR {1} \
  836. CONFIG.PCW_PCAP_PERIPHERAL_DIVISOR0 {5} \
  837. CONFIG.PCW_PRESET_BANK1_VOLTAGE {LVCMOS 1.8V} \
  838. CONFIG.PCW_QSPI_PERIPHERAL_DIVISOR0 {1} \
  839. CONFIG.PCW_SD0_GRP_CD_ENABLE {0} \
  840. CONFIG.PCW_SD0_GRP_POW_ENABLE {0} \
  841. CONFIG.PCW_SD0_GRP_WP_ENABLE {0} \
  842. CONFIG.PCW_SD0_PERIPHERAL_ENABLE {1} \
  843. CONFIG.PCW_SD0_SD0_IO {MIO 40 .. 45} \
  844. CONFIG.PCW_SDIO_PERIPHERAL_CLKSRC {IO PLL} \
  845. CONFIG.PCW_SDIO_PERIPHERAL_DIVISOR0 {40} \
  846. CONFIG.PCW_SDIO_PERIPHERAL_FREQMHZ {25} \
  847. CONFIG.PCW_SDIO_PERIPHERAL_VALID {1} \
  848. CONFIG.PCW_SMC_PERIPHERAL_DIVISOR0 {1} \
  849. CONFIG.PCW_SPI_PERIPHERAL_DIVISOR0 {1} \
  850. CONFIG.PCW_S_AXI_HP0_DATA_WIDTH {32} \
  851. CONFIG.PCW_S_AXI_HP1_DATA_WIDTH {32} \
  852. CONFIG.PCW_TPIU_PERIPHERAL_DIVISOR0 {1} \
  853. CONFIG.PCW_TTC0_CLK0_PERIPHERAL_FREQMHZ {133.333333} \
  854. CONFIG.PCW_TTC0_CLK1_PERIPHERAL_FREQMHZ {133.333333} \
  855. CONFIG.PCW_TTC0_CLK2_PERIPHERAL_FREQMHZ {133.333333} \
  856. CONFIG.PCW_TTC0_PERIPHERAL_ENABLE {0} \
  857. CONFIG.PCW_TTC0_TTC0_IO {<Select>} \
  858. CONFIG.PCW_TTC_PERIPHERAL_FREQMHZ {50} \
  859. CONFIG.PCW_UART1_GRP_FULL_ENABLE {0} \
  860. CONFIG.PCW_UART1_PERIPHERAL_ENABLE {1} \
  861. CONFIG.PCW_UART1_UART1_IO {MIO 48 .. 49} \
  862. CONFIG.PCW_UART_PERIPHERAL_DIVISOR0 {10} \
  863. CONFIG.PCW_UART_PERIPHERAL_FREQMHZ {100} \
  864. CONFIG.PCW_UART_PERIPHERAL_VALID {1} \
  865. CONFIG.PCW_UIPARAM_ACT_DDR_FREQ_MHZ {533.333374} \
  866. CONFIG.PCW_UIPARAM_DDR_AL {0} \
  867. CONFIG.PCW_UIPARAM_DDR_BANK_ADDR_COUNT {3} \
  868. CONFIG.PCW_UIPARAM_DDR_BL {8} \
  869. CONFIG.PCW_UIPARAM_DDR_BOARD_DELAY0 {0.271} \
  870. CONFIG.PCW_UIPARAM_DDR_BOARD_DELAY1 {0.259} \
  871. CONFIG.PCW_UIPARAM_DDR_BOARD_DELAY2 {0.219} \
  872. CONFIG.PCW_UIPARAM_DDR_BOARD_DELAY3 {0.207} \
  873. CONFIG.PCW_UIPARAM_DDR_BUS_WIDTH {32 Bit} \
  874. CONFIG.PCW_UIPARAM_DDR_CL {7} \
  875. CONFIG.PCW_UIPARAM_DDR_CLOCK_STOP_EN {0} \
  876. CONFIG.PCW_UIPARAM_DDR_COL_ADDR_COUNT {10} \
  877. CONFIG.PCW_UIPARAM_DDR_CWL {6} \
  878. CONFIG.PCW_UIPARAM_DDR_DEVICE_CAPACITY {4096 MBits} \
  879. CONFIG.PCW_UIPARAM_DDR_DQS_TO_CLK_DELAY_0 {0.229} \
  880. CONFIG.PCW_UIPARAM_DDR_DQS_TO_CLK_DELAY_1 {0.250} \
  881. CONFIG.PCW_UIPARAM_DDR_DQS_TO_CLK_DELAY_2 {0.121} \
  882. CONFIG.PCW_UIPARAM_DDR_DQS_TO_CLK_DELAY_3 {0.146} \
  883. CONFIG.PCW_UIPARAM_DDR_DRAM_WIDTH {16 Bits} \
  884. CONFIG.PCW_UIPARAM_DDR_ECC {Disabled} \
  885. CONFIG.PCW_UIPARAM_DDR_ENABLE {1} \
  886. CONFIG.PCW_UIPARAM_DDR_FREQ_MHZ {533.333} \
  887. CONFIG.PCW_UIPARAM_DDR_HIGH_TEMP {Normal (0-85)} \
  888. CONFIG.PCW_UIPARAM_DDR_MEMORY_TYPE {DDR 3} \
  889. CONFIG.PCW_UIPARAM_DDR_PARTNO {MT41J256M16 RE-125} \
  890. CONFIG.PCW_UIPARAM_DDR_ROW_ADDR_COUNT {15} \
  891. CONFIG.PCW_UIPARAM_DDR_SPEED_BIN {DDR3_1066F} \
  892. CONFIG.PCW_UIPARAM_DDR_TRAIN_DATA_EYE {1} \
  893. CONFIG.PCW_UIPARAM_DDR_TRAIN_READ_GATE {1} \
  894. CONFIG.PCW_UIPARAM_DDR_TRAIN_WRITE_LEVEL {1} \
  895. CONFIG.PCW_UIPARAM_DDR_T_FAW {40.0} \
  896. CONFIG.PCW_UIPARAM_DDR_T_RAS_MIN {35.0} \
  897. CONFIG.PCW_UIPARAM_DDR_T_RC {48.91} \
  898. CONFIG.PCW_UIPARAM_DDR_T_RCD {7} \
  899. CONFIG.PCW_UIPARAM_DDR_T_RP {7} \
  900. CONFIG.PCW_UIPARAM_DDR_USE_INTERNAL_VREF {0} \
  901. CONFIG.PCW_USB0_PERIPHERAL_ENABLE {1} \
  902. CONFIG.PCW_USB0_PERIPHERAL_FREQMHZ {60} \
  903. CONFIG.PCW_USB0_RESET_ENABLE {0} \
  904. CONFIG.PCW_USB0_USB0_IO {MIO 28 .. 39} \
  905. CONFIG.PCW_USB1_RESET_ENABLE {0} \
  906. CONFIG.PCW_USB_RESET_ENABLE {0} \
  907. CONFIG.PCW_USE_AXI_NONSECURE {0} \
  908. CONFIG.PCW_USE_DEFAULT_ACP_USER_VAL {1} \
  909. CONFIG.PCW_USE_FABRIC_INTERRUPT {0} \
  910. CONFIG.PCW_USE_M_AXI_GP0 {1} \
  911. CONFIG.PCW_USE_M_AXI_GP1 {1} \
  912. CONFIG.PCW_USE_S_AXI_ACP {1} \
  913. CONFIG.PCW_USE_S_AXI_GP0 {0} \
  914. CONFIG.PCW_USE_S_AXI_HP0 {1} \
  915. CONFIG.PCW_USE_S_AXI_HP1 {1} \
  916. CONFIG.PCW_WDT_PERIPHERAL_ENABLE {0} \
  917. CONFIG.PCW_WDT_PERIPHERAL_FREQMHZ {133.333333} \
  918. CONFIG.PCW_WDT_WDT_IO {<Select>} \
  919. ] $processing_system7_0
  920. # Create instance: ps7_0_axi_periph, and set properties
  921. set ps7_0_axi_periph [ create_bd_cell -type ip -vlnv xilinx.com:ip:axi_interconnect:2.1 ps7_0_axi_periph ]
  922. set_property -dict [ list \
  923. CONFIG.M00_HAS_DATA_FIFO {0} \
  924. CONFIG.M00_HAS_REGSLICE {3} \
  925. CONFIG.M01_HAS_DATA_FIFO {0} \
  926. CONFIG.M01_HAS_REGSLICE {3} \
  927. CONFIG.NUM_MI {2} \
  928. CONFIG.S00_HAS_DATA_FIFO {1} \
  929. CONFIG.S00_HAS_REGSLICE {4} \
  930. ] $ps7_0_axi_periph
  931. # Create instance: rst_ps7_0_25M, and set properties
  932. set rst_ps7_0_25M [ create_bd_cell -type ip -vlnv xilinx.com:ip:proc_sys_reset:5.0 rst_ps7_0_25M ]
  933. set_property -dict [ list \
  934. CONFIG.C_NUM_INTERCONNECT_ARESETN {1} \
  935. CONFIG.C_NUM_PERP_ARESETN {1} \
  936. ] $rst_ps7_0_25M
  937. # Create instance: video
  938. create_hier_cell_video [current_bd_instance .] video
  939. # Create instance: xlslice_0, and set properties
  940. set xlslice_0 [ create_bd_cell -type ip -vlnv xilinx.com:ip:xlslice:1.0 xlslice_0 ]
  941. set_property -dict [ list \
  942. CONFIG.DIN_FROM {23} \
  943. CONFIG.DIN_TO {16} \
  944. CONFIG.DIN_WIDTH {32} \
  945. CONFIG.DOUT_WIDTH {8} \
  946. ] $xlslice_0
  947. # Create instance: xlslice_1, and set properties
  948. set xlslice_1 [ create_bd_cell -type ip -vlnv xilinx.com:ip:xlslice:1.0 xlslice_1 ]
  949. set_property -dict [ list \
  950. CONFIG.DIN_FROM {15} \
  951. CONFIG.DIN_TO {8} \
  952. CONFIG.DIN_WIDTH {32} \
  953. CONFIG.DOUT_WIDTH {8} \
  954. ] $xlslice_1
  955. # Create instance: xlslice_2, and set properties
  956. set xlslice_2 [ create_bd_cell -type ip -vlnv xilinx.com:ip:xlslice:1.0 xlslice_2 ]
  957. set_property -dict [ list \
  958. CONFIG.DIN_FROM {7} \
  959. CONFIG.DIN_TO {0} \
  960. CONFIG.DIN_WIDTH {32} \
  961. CONFIG.DOUT_WIDTH {8} \
  962. ] $xlslice_2
  963. # Create interface connections
  964. connect_bd_intf_net -intf_net MNTZorro_v0_1_S00_AXI_0_m00_axi [get_bd_intf_pins MNTZorro_v0_1_S00_AXI_0/m00_axi] [get_bd_intf_pins axi_protocol_convert_2/S_AXI]
  965. connect_bd_intf_net -intf_net MNTZorro_v0_1_S00_AXI_0_m01_axi [get_bd_intf_pins MNTZorro_v0_1_S00_AXI_0/m01_axi] [get_bd_intf_pins axi_mem_intercon/S00_AXI]
  966. connect_bd_intf_net -intf_net axi_dwidth_converter_0_M_AXI [get_bd_intf_pins axi_dwidth_converter_0/M_AXI] [get_bd_intf_pins processing_system7_0/S_AXI_ACP]
  967. connect_bd_intf_net -intf_net axi_mem_intercon_M00_AXI [get_bd_intf_pins axi_mem_intercon/M00_AXI] [get_bd_intf_pins processing_system7_0/S_AXI_HP1]
  968. connect_bd_intf_net -intf_net axi_protocol_convert_0_M_AXI [get_bd_intf_pins MNTZorro_v0_1_S00_AXI_0/S_AXI] [get_bd_intf_pins axi_protocol_convert_0/M_AXI]
  969. connect_bd_intf_net -intf_net axi_protocol_convert_1_M_AXI [get_bd_intf_pins axi_protocol_convert_1/M_AXI] [get_bd_intf_pins axi_register_slice_1/S_AXI]
  970. connect_bd_intf_net -intf_net axi_protocol_convert_2_M_AXI [get_bd_intf_pins axi_protocol_convert_2/M_AXI] [get_bd_intf_pins axi_register_slice_3/S_AXI]
  971. connect_bd_intf_net -intf_net axi_register_slice_0_M_AXI [get_bd_intf_pins axi_register_slice_0/M_AXI] [get_bd_intf_pins axi_register_slice_2/S_AXI]
  972. connect_bd_intf_net -intf_net axi_register_slice_1_M_AXI [get_bd_intf_pins axi_register_slice_1/M_AXI] [get_bd_intf_pins processing_system7_0/S_AXI_HP0]
  973. connect_bd_intf_net -intf_net axi_register_slice_2_M_AXI [get_bd_intf_pins axi_protocol_convert_1/S_AXI] [get_bd_intf_pins axi_register_slice_2/M_AXI]
  974. connect_bd_intf_net -intf_net axi_register_slice_3_M_AXI [get_bd_intf_pins axi_dwidth_converter_0/S_AXI] [get_bd_intf_pins axi_register_slice_3/M_AXI]
  975. connect_bd_intf_net -intf_net processing_system7_0_DDR [get_bd_intf_ports DDR] [get_bd_intf_pins processing_system7_0/DDR]
  976. connect_bd_intf_net -intf_net processing_system7_0_FIXED_IO [get_bd_intf_ports FIXED_IO] [get_bd_intf_pins processing_system7_0/FIXED_IO]
  977. connect_bd_intf_net -intf_net processing_system7_0_M_AXI_GP0 [get_bd_intf_pins axi_protocol_convert_0/S_AXI] [get_bd_intf_pins processing_system7_0/M_AXI_GP0]
  978. connect_bd_intf_net -intf_net processing_system7_0_M_AXI_GP1 [get_bd_intf_pins processing_system7_0/M_AXI_GP1] [get_bd_intf_pins ps7_0_axi_periph/S00_AXI]
  979. connect_bd_intf_net -intf_net ps7_0_axi_periph_M00_AXI [get_bd_intf_pins clk_wiz_0/s_axi_lite] [get_bd_intf_pins ps7_0_axi_periph/M00_AXI]
  980. connect_bd_intf_net -intf_net ps7_0_axi_periph_M01_AXI [get_bd_intf_pins ps7_0_axi_periph/M01_AXI] [get_bd_intf_pins video/S_AXI_LITE]
  981. connect_bd_intf_net -intf_net video_subsystem_M_AXI_MM2S [get_bd_intf_pins axi_register_slice_0/S_AXI] [get_bd_intf_pins video/M_AXI_MM2S]
  982. # Create port connections
  983. connect_bd_net -net M00_ARESETN_1 [get_bd_pins ps7_0_axi_periph/ARESETN] [get_bd_pins ps7_0_axi_periph/M00_ARESETN] [get_bd_pins ps7_0_axi_periph/M01_ARESETN] [get_bd_pins ps7_0_axi_periph/S00_ARESETN] [get_bd_pins rst_ps7_0_25M/interconnect_aresetn]
  984. connect_bd_net -net MNTZorro_v0_1_S00_AXI_0_ZORRO_ADDRDIR [get_bd_ports ZORRO_ADDRDIR] [get_bd_pins MNTZorro_v0_1_S00_AXI_0/ZORRO_ADDRDIR]
  985. connect_bd_net -net MNTZorro_v0_1_S00_AXI_0_ZORRO_ADDRDIR2 [get_bd_ports ZORRO_ADDRDIR2] [get_bd_pins MNTZorro_v0_1_S00_AXI_0/ZORRO_ADDRDIR2]
  986. connect_bd_net -net MNTZorro_v0_1_S00_AXI_0_ZORRO_DATADIR [get_bd_ports ZORRO_DATADIR] [get_bd_pins MNTZorro_v0_1_S00_AXI_0/ZORRO_DATADIR]
  987. connect_bd_net -net MNTZorro_v0_1_S00_AXI_0_ZORRO_INT6 [get_bd_ports ZORRO_INT6] [get_bd_pins MNTZorro_v0_1_S00_AXI_0/ZORRO_INT6]
  988. connect_bd_net -net MNTZorro_v0_1_S00_AXI_0_ZORRO_NBRN [get_bd_ports ZORRO_NBRN] [get_bd_pins MNTZorro_v0_1_S00_AXI_0/ZORRO_NBRN]
  989. connect_bd_net -net MNTZorro_v0_1_S00_AXI_0_ZORRO_NCFGOUT [get_bd_ports ZORRO_NCFGOUT] [get_bd_pins MNTZorro_v0_1_S00_AXI_0/ZORRO_NCFGOUT]
  990. connect_bd_net -net MNTZorro_v0_1_S00_AXI_0_ZORRO_NCINH [get_bd_ports ZORRO_NCINH] [get_bd_pins MNTZorro_v0_1_S00_AXI_0/ZORRO_NCINH]
  991. connect_bd_net -net MNTZorro_v0_1_S00_AXI_0_ZORRO_NDTACK [get_bd_ports ZORRO_NDTACK] [get_bd_pins MNTZorro_v0_1_S00_AXI_0/ZORRO_NDTACK]
  992. connect_bd_net -net MNTZorro_v0_1_S00_AXI_0_ZORRO_NSLAVE [get_bd_ports ZORRO_NSLAVE] [get_bd_pins MNTZorro_v0_1_S00_AXI_0/ZORRO_NSLAVE]
  993. connect_bd_net -net MNTZorro_v0_1_S00_AXI_0_video_control_data [get_bd_pins MNTZorro_v0_1_S00_AXI_0/video_control_data] [get_bd_pins video/control_data]
  994. connect_bd_net -net MNTZorro_v0_1_S00_AXI_0_video_control_interlace [get_bd_pins MNTZorro_v0_1_S00_AXI_0/video_control_interlace] [get_bd_pins video/control_interlace]
  995. connect_bd_net -net MNTZorro_v0_1_S00_AXI_0_video_control_op [get_bd_pins MNTZorro_v0_1_S00_AXI_0/video_control_op] [get_bd_pins video/control_op]
  996. connect_bd_net -net Net [get_bd_ports ZORRO_ADDR] [get_bd_pins MNTZorro_v0_1_S00_AXI_0/ZORRO_ADDR]
  997. connect_bd_net -net Net1 [get_bd_ports ZORRO_DATA] [get_bd_pins MNTZorro_v0_1_S00_AXI_0/ZORRO_DATA]
  998. connect_bd_net -net VCAP_B0_0_1 [get_bd_ports VCAP_B0] [get_bd_pins MNTZorro_v0_1_S00_AXI_0/VCAP_B0]
  999. connect_bd_net -net VCAP_B1_0_1 [get_bd_ports VCAP_B1] [get_bd_pins MNTZorro_v0_1_S00_AXI_0/VCAP_B1]
  1000. connect_bd_net -net VCAP_B2_0_1 [get_bd_ports VCAP_B2] [get_bd_pins MNTZorro_v0_1_S00_AXI_0/VCAP_B2]
  1001. connect_bd_net -net VCAP_B3_0_1 [get_bd_ports VCAP_B3] [get_bd_pins MNTZorro_v0_1_S00_AXI_0/VCAP_B3]
  1002. connect_bd_net -net VCAP_B4_0_1 [get_bd_ports VCAP_B4] [get_bd_pins MNTZorro_v0_1_S00_AXI_0/VCAP_B4]
  1003. connect_bd_net -net VCAP_B5_0_1 [get_bd_ports VCAP_B5] [get_bd_pins MNTZorro_v0_1_S00_AXI_0/VCAP_B5]
  1004. connect_bd_net -net VCAP_B6_0_1 [get_bd_ports VCAP_B6] [get_bd_pins MNTZorro_v0_1_S00_AXI_0/VCAP_B6]
  1005. connect_bd_net -net VCAP_B7_0_1 [get_bd_ports VCAP_B7] [get_bd_pins MNTZorro_v0_1_S00_AXI_0/VCAP_B7]
  1006. connect_bd_net -net VCAP_G0_0_1 [get_bd_ports VCAP_G0] [get_bd_pins MNTZorro_v0_1_S00_AXI_0/VCAP_G0]
  1007. connect_bd_net -net VCAP_G1_0_1 [get_bd_ports VCAP_G1] [get_bd_pins MNTZorro_v0_1_S00_AXI_0/VCAP_G1]
  1008. connect_bd_net -net VCAP_G2_0_1 [get_bd_ports VCAP_G2] [get_bd_pins MNTZorro_v0_1_S00_AXI_0/VCAP_G2]
  1009. connect_bd_net -net VCAP_G3_0_1 [get_bd_ports VCAP_G3] [get_bd_pins MNTZorro_v0_1_S00_AXI_0/VCAP_G3]
  1010. connect_bd_net -net VCAP_G4_0_1 [get_bd_ports VCAP_G4] [get_bd_pins MNTZorro_v0_1_S00_AXI_0/VCAP_G4]
  1011. connect_bd_net -net VCAP_G5_0_1 [get_bd_ports VCAP_G5] [get_bd_pins MNTZorro_v0_1_S00_AXI_0/VCAP_G5]
  1012. connect_bd_net -net VCAP_G6_0_1 [get_bd_ports VCAP_G6] [get_bd_pins MNTZorro_v0_1_S00_AXI_0/VCAP_G6]
  1013. connect_bd_net -net VCAP_G7_0_1 [get_bd_ports VCAP_G7] [get_bd_pins MNTZorro_v0_1_S00_AXI_0/VCAP_G7]
  1014. connect_bd_net -net VCAP_HSYNC_0_1 [get_bd_ports VCAP_HSYNC] [get_bd_pins MNTZorro_v0_1_S00_AXI_0/VCAP_HSYNC]
  1015. connect_bd_net -net VCAP_R0_0_1 [get_bd_ports VCAP_R0] [get_bd_pins MNTZorro_v0_1_S00_AXI_0/VCAP_R0]
  1016. connect_bd_net -net VCAP_R1_0_1 [get_bd_ports VCAP_R1] [get_bd_pins MNTZorro_v0_1_S00_AXI_0/VCAP_R1]
  1017. connect_bd_net -net VCAP_R2_0_1 [get_bd_ports VCAP_R2] [get_bd_pins MNTZorro_v0_1_S00_AXI_0/VCAP_R2]
  1018. connect_bd_net -net VCAP_R3_0_1 [get_bd_ports VCAP_R3] [get_bd_pins MNTZorro_v0_1_S00_AXI_0/VCAP_R3]
  1019. connect_bd_net -net VCAP_R4_0_1 [get_bd_ports VCAP_R4] [get_bd_pins MNTZorro_v0_1_S00_AXI_0/VCAP_R4]
  1020. connect_bd_net -net VCAP_R5_0_1 [get_bd_ports VCAP_R5] [get_bd_pins MNTZorro_v0_1_S00_AXI_0/VCAP_R5]
  1021. connect_bd_net -net VCAP_R6_0_1 [get_bd_ports VCAP_R6] [get_bd_pins MNTZorro_v0_1_S00_AXI_0/VCAP_R6]
  1022. connect_bd_net -net VCAP_R7_0_1 [get_bd_ports VCAP_R7] [get_bd_pins MNTZorro_v0_1_S00_AXI_0/VCAP_R7]
  1023. connect_bd_net -net VCAP_VSYNC_0_1 [get_bd_ports VCAP_VSYNC] [get_bd_pins MNTZorro_v0_1_S00_AXI_0/VCAP_VSYNC]
  1024. connect_bd_net -net ZORRO_C28D_0_1 [get_bd_ports ZORRO_C28D] [get_bd_pins MNTZorro_v0_1_S00_AXI_0/ZORRO_C28D]
  1025. connect_bd_net -net ZORRO_DOE_1 [get_bd_ports ZORRO_DOE] [get_bd_pins MNTZorro_v0_1_S00_AXI_0/ZORRO_DOE]
  1026. connect_bd_net -net ZORRO_E7M_1 [get_bd_ports ZORRO_E7M] [get_bd_pins MNTZorro_v0_1_S00_AXI_0/ZORRO_E7M]
  1027. connect_bd_net -net ZORRO_NBGN_0_1 [get_bd_ports ZORRO_NBGN] [get_bd_pins MNTZorro_v0_1_S00_AXI_0/ZORRO_NBGN]
  1028. connect_bd_net -net ZORRO_NCCS_1 [get_bd_ports ZORRO_NCCS] [get_bd_pins MNTZorro_v0_1_S00_AXI_0/ZORRO_NCCS]
  1029. connect_bd_net -net ZORRO_NCFGIN_1 [get_bd_ports ZORRO_NCFGIN] [get_bd_pins MNTZorro_v0_1_S00_AXI_0/ZORRO_NCFGIN]
  1030. connect_bd_net -net ZORRO_NDS0_1 [get_bd_ports ZORRO_NDS0] [get_bd_pins MNTZorro_v0_1_S00_AXI_0/ZORRO_NDS0]
  1031. connect_bd_net -net ZORRO_NDS1_1 [get_bd_ports ZORRO_NDS1] [get_bd_pins MNTZorro_v0_1_S00_AXI_0/ZORRO_NDS1]
  1032. connect_bd_net -net ZORRO_NFCS_1 [get_bd_ports ZORRO_NFCS] [get_bd_pins MNTZorro_v0_1_S00_AXI_0/ZORRO_NFCS]
  1033. connect_bd_net -net ZORRO_NIORST_1 [get_bd_ports ZORRO_NIORST] [get_bd_pins MNTZorro_v0_1_S00_AXI_0/ZORRO_NIORST]
  1034. connect_bd_net -net ZORRO_NLDS_1 [get_bd_ports ZORRO_NLDS] [get_bd_pins MNTZorro_v0_1_S00_AXI_0/ZORRO_NLDS]
  1035. connect_bd_net -net ZORRO_NUDS_1 [get_bd_ports ZORRO_NUDS] [get_bd_pins MNTZorro_v0_1_S00_AXI_0/ZORRO_NUDS]
  1036. connect_bd_net -net ZORRO_READ_1 [get_bd_ports ZORRO_READ] [get_bd_pins MNTZorro_v0_1_S00_AXI_0/ZORRO_READ]
  1037. connect_bd_net -net clk_1 [get_bd_ports VGA_PCLK] [get_bd_pins clk_wiz_0/clk_out1] [get_bd_pins video/VGA_PCLK]
  1038. connect_bd_net -net proc_sys_reset_1_peripheral_aresetn [get_bd_pins MNTZorro_v0_1_S00_AXI_0/S_AXI_ARESETN] [get_bd_pins MNTZorro_v0_1_S00_AXI_0/m00_axi_aresetn] [get_bd_pins MNTZorro_v0_1_S00_AXI_0/m01_axi_aresetn] [get_bd_pins axi_dwidth_converter_0/s_axi_aresetn] [get_bd_pins axi_mem_intercon/ARESETN] [get_bd_pins axi_mem_intercon/M00_ARESETN] [get_bd_pins axi_mem_intercon/S00_ARESETN] [get_bd_pins axi_protocol_convert_0/aresetn] [get_bd_pins axi_protocol_convert_1/aresetn] [get_bd_pins axi_protocol_convert_2/aresetn] [get_bd_pins axi_register_slice_0/aresetn] [get_bd_pins axi_register_slice_1/aresetn] [get_bd_pins axi_register_slice_2/aresetn] [get_bd_pins axi_register_slice_3/aresetn] [get_bd_pins proc_sys_reset_0/peripheral_aresetn] [get_bd_pins video/aresetn]
  1039. connect_bd_net -net processing_system7_0_FCLK_CLK0 [get_bd_pins MNTZorro_v0_1_S00_AXI_0/S_AXI_ACLK] [get_bd_pins MNTZorro_v0_1_S00_AXI_0/m00_axi_aclk] [get_bd_pins MNTZorro_v0_1_S00_AXI_0/m01_axi_aclk] [get_bd_pins axi_dwidth_converter_0/s_axi_aclk] [get_bd_pins axi_mem_intercon/ACLK] [get_bd_pins axi_mem_intercon/M00_ACLK] [get_bd_pins axi_mem_intercon/S00_ACLK] [get_bd_pins axi_protocol_convert_0/aclk] [get_bd_pins axi_protocol_convert_1/aclk] [get_bd_pins axi_protocol_convert_2/aclk] [get_bd_pins axi_register_slice_0/aclk] [get_bd_pins axi_register_slice_1/aclk] [get_bd_pins axi_register_slice_2/aclk] [get_bd_pins axi_register_slice_3/aclk] [get_bd_pins clk_wiz_0/clk_in1] [get_bd_pins proc_sys_reset_0/slowest_sync_clk] [get_bd_pins processing_system7_0/FCLK_CLK0] [get_bd_pins processing_system7_0/M_AXI_GP0_ACLK] [get_bd_pins processing_system7_0/S_AXI_ACP_ACLK] [get_bd_pins processing_system7_0/S_AXI_HP0_ACLK] [get_bd_pins processing_system7_0/S_AXI_HP1_ACLK] [get_bd_pins video/m_axi_mm2s_aclk]
  1040. connect_bd_net -net processing_system7_0_FCLK_CLK1 [get_bd_pins clk_wiz_0/s_axi_aclk] [get_bd_pins processing_system7_0/FCLK_CLK1] [get_bd_pins processing_system7_0/M_AXI_GP1_ACLK] [get_bd_pins ps7_0_axi_periph/ACLK] [get_bd_pins ps7_0_axi_periph/M00_ACLK] [get_bd_pins ps7_0_axi_periph/M01_ACLK] [get_bd_pins ps7_0_axi_periph/S00_ACLK] [get_bd_pins rst_ps7_0_25M/slowest_sync_clk] [get_bd_pins video/s_axi_lite_aclk]
  1041. connect_bd_net -net processing_system7_0_FCLK_RESET0_N [get_bd_pins proc_sys_reset_0/ext_reset_in] [get_bd_pins processing_system7_0/FCLK_RESET0_N] [get_bd_pins rst_ps7_0_25M/ext_reset_in]
  1042. connect_bd_net -net rst_ps7_0_25M_peripheral_aresetn [get_bd_pins clk_wiz_0/s_axi_aresetn] [get_bd_pins rst_ps7_0_25M/peripheral_aresetn] [get_bd_pins video/axi_resetn]
  1043. connect_bd_net -net v_axi4s_vid_out_0_vid_data [get_bd_pins video/dvi_rgb] [get_bd_pins xlslice_0/Din] [get_bd_pins xlslice_1/Din] [get_bd_pins xlslice_2/Din]
  1044. connect_bd_net -net video_control_vblank [get_bd_pins MNTZorro_v0_1_S00_AXI_0/video_control_vblank] [get_bd_pins video/control_vblank]
  1045. connect_bd_net -net video_subsystem_VGA_DE [get_bd_ports VGA_DE] [get_bd_pins video/VGA_DE]
  1046. connect_bd_net -net video_subsystem_VGA_HS [get_bd_ports VGA_HS] [get_bd_pins video/VGA_HS]
  1047. connect_bd_net -net video_subsystem_VGA_VS [get_bd_ports VGA_VS] [get_bd_pins video/VGA_VS]
  1048. connect_bd_net -net xlslice_0_Dout [get_bd_ports VGA_R] [get_bd_pins xlslice_0/Dout]
  1049. connect_bd_net -net xlslice_1_Dout [get_bd_ports VGA_G] [get_bd_pins xlslice_1/Dout]
  1050. connect_bd_net -net xlslice_2_Dout [get_bd_ports VGA_B] [get_bd_pins xlslice_2/Dout]
  1051. # Create address segments
  1052. create_bd_addr_seg -range 0x40000000 -offset 0x00000000 [get_bd_addr_spaces MNTZorro_v0_1_S00_AXI_0/m00_axi] [get_bd_addr_segs processing_system7_0/S_AXI_ACP/ACP_DDR_LOWOCM] SEG_processing_system7_0_ACP_DDR_LOWOCM
  1053. create_bd_addr_seg -range 0x00400000 -offset 0xE0000000 [get_bd_addr_spaces MNTZorro_v0_1_S00_AXI_0/m00_axi] [get_bd_addr_segs processing_system7_0/S_AXI_ACP/ACP_IOP] SEG_processing_system7_0_ACP_IOP
  1054. create_bd_addr_seg -range 0x40000000 -offset 0x40000000 [get_bd_addr_spaces MNTZorro_v0_1_S00_AXI_0/m00_axi] [get_bd_addr_segs processing_system7_0/S_AXI_ACP/ACP_M_AXI_GP0] SEG_processing_system7_0_ACP_M_AXI_GP0
  1055. create_bd_addr_seg -range 0x40000000 -offset 0x80000000 [get_bd_addr_spaces MNTZorro_v0_1_S00_AXI_0/m00_axi] [get_bd_addr_segs processing_system7_0/S_AXI_ACP/ACP_M_AXI_GP1] SEG_processing_system7_0_ACP_M_AXI_GP1
  1056. create_bd_addr_seg -range 0x40000000 -offset 0x00000000 [get_bd_addr_spaces MNTZorro_v0_1_S00_AXI_0/m01_axi] [get_bd_addr_segs processing_system7_0/S_AXI_HP1/HP1_DDR_LOWOCM] SEG_processing_system7_0_HP1_DDR_LOWOCM
  1057. create_bd_addr_seg -range 0x00010000 -offset 0x43C00000 [get_bd_addr_spaces processing_system7_0/Data] [get_bd_addr_segs MNTZorro_v0_1_S00_AXI_0/S_AXI/reg0] SEG_MNTZorro_v0_1_S00_AXI_0_reg0
  1058. create_bd_addr_seg -range 0x00010000 -offset 0x83000000 [get_bd_addr_spaces processing_system7_0/Data] [get_bd_addr_segs video/axi_vdma_0/S_AXI_LITE/Reg] SEG_axi_vdma_0_Reg
  1059. create_bd_addr_seg -range 0x00010000 -offset 0x83C00000 [get_bd_addr_spaces processing_system7_0/Data] [get_bd_addr_segs clk_wiz_0/s_axi_lite/Reg] SEG_clk_wiz_0_Reg
  1060. create_bd_addr_seg -range 0x40000000 -offset 0x00000000 [get_bd_addr_spaces video/axi_vdma_0/Data_MM2S] [get_bd_addr_segs processing_system7_0/S_AXI_HP0/HP0_DDR_LOWOCM] SEG_processing_system7_0_HP0_DDR_LOWOCM
  1061. # Perform GUI Layout
  1062. regenerate_bd_layout -layout_string {
  1063. "ExpandedHierarchyInLayout":"",
  1064. "guistr":"# # String gsaved with Nlview 6.8.11 2018-08-07 bk=1.4403 VDI=40 GEI=35 GUI=JA:9.0 TLS
  1065. # -string -flagsOSRD
  1066. preplace port ZORRO_C28D -pg 1 -y 1520 -defaultsOSRD
  1067. preplace port VCAP_B7 -pg 1 -y 1740 -defaultsOSRD
  1068. preplace port VCAP_R6 -pg 1 -y 1920 -defaultsOSRD
  1069. preplace port ZORRO_NIORST -pg 1 -y 1460 -defaultsOSRD
  1070. preplace port ZORRO_NDS1 -pg 1 -y 1360 -defaultsOSRD
  1071. preplace port ZORRO_NLDS -pg 1 -y 1340 -defaultsOSRD
  1072. preplace port DDR -pg 1 -y 600 -defaultsOSRD
  1073. preplace port VCAP_R7 -pg 1 -y 1900 -defaultsOSRD
  1074. preplace port ZORRO_DATADIR -pg 1 -y 1660 -defaultsOSRD
  1075. preplace port ZORRO_NCFGIN -pg 1 -y 1480 -defaultsOSRD
  1076. preplace port ZORRO_DOE -pg 1 -y 1440 -defaultsOSRD
  1077. preplace port VGA_PCLK -pg 1 -y 80 -defaultsOSRD
  1078. preplace port ZORRO_NBRN -pg 1 -y 1720 -defaultsOSRD
  1079. preplace port VCAP_G0 -pg 1 -y 1580 -defaultsOSRD
  1080. preplace port VGA_VS -pg 1 -y 270 -defaultsOSRD
  1081. preplace port VCAP_G1 -pg 1 -y 1600 -defaultsOSRD
  1082. preplace port ZORRO_READ -pg 1 -y 1300 -defaultsOSRD
  1083. preplace port ZORRO_NCFGOUT -pg 1 -y 1740 -defaultsOSRD
  1084. preplace port VCAP_B0 -pg 1 -y 1880 -defaultsOSRD
  1085. preplace port VCAP_G2 -pg 1 -y 1620 -defaultsOSRD
  1086. preplace port ZORRO_NFCS -pg 1 -y 1420 -defaultsOSRD
  1087. preplace port ZORRO_ADDRDIR -pg 1 -y 1680 -defaultsOSRD
  1088. preplace port ZORRO_INT6 -pg 1 -y 1640 -defaultsOSRD
  1089. preplace port VCAP_R0 -pg 1 -y 2040 -defaultsOSRD
  1090. preplace port VCAP_B1 -pg 1 -y 1860 -defaultsOSRD
  1091. preplace port VCAP_G3 -pg 1 -y 1640 -defaultsOSRD
  1092. preplace port ZORRO_NUDS -pg 1 -y 1320 -defaultsOSRD
  1093. preplace port VGA_DE -pg 1 -y 290 -defaultsOSRD
  1094. preplace port VCAP_R1 -pg 1 -y 2020 -defaultsOSRD
  1095. preplace port VCAP_G4 -pg 1 -y 1660 -defaultsOSRD
  1096. preplace port VCAP_B2 -pg 1 -y 1840 -defaultsOSRD
  1097. preplace port ZORRO_NDTACK -pg 1 -y 1800 -defaultsOSRD
  1098. preplace port FIXED_IO -pg 1 -y 620 -defaultsOSRD
  1099. preplace port VCAP_R2 -pg 1 -y 2000 -defaultsOSRD
  1100. preplace port VCAP_G5 -pg 1 -y 1680 -defaultsOSRD
  1101. preplace port VCAP_VSYNC -pg 1 -y 1540 -defaultsOSRD
  1102. preplace port VCAP_B3 -pg 1 -y 1820 -defaultsOSRD
  1103. preplace port ZORRO_NCINH -pg 1 -y 1780 -defaultsOSRD
  1104. preplace port ZORRO_ADDRDIR2 -pg 1 -y 1700 -defaultsOSRD
  1105. preplace port VCAP_R3 -pg 1 -y 1980 -defaultsOSRD
  1106. preplace port VCAP_B4 -pg 1 -y 1800 -defaultsOSRD
  1107. preplace port VCAP_G6 -pg 1 -y 1700 -defaultsOSRD
  1108. preplace port VCAP_R4 -pg 1 -y 1960 -defaultsOSRD
  1109. preplace port VCAP_B5 -pg 1 -y 1780 -defaultsOSRD
  1110. preplace port VCAP_G7 -pg 1 -y 1720 -defaultsOSRD
  1111. preplace port ZORRO_E7M -pg 1 -y 1500 -defaultsOSRD
  1112. preplace port ZORRO_NSLAVE -pg 1 -y 1760 -defaultsOSRD
  1113. preplace port VGA_HS -pg 1 -y 250 -defaultsOSRD
  1114. preplace port ZORRO_NBGN -pg 1 -y 1280 -defaultsOSRD
  1115. preplace port VCAP_R5 -pg 1 -y 1940 -defaultsOSRD
  1116. preplace port VCAP_B6 -pg 1 -y 1760 -defaultsOSRD
  1117. preplace port VCAP_HSYNC -pg 1 -y 1560 -defaultsOSRD
  1118. preplace port ZORRO_NCCS -pg 1 -y 1400 -defaultsOSRD
  1119. preplace port ZORRO_NDS0 -pg 1 -y 1380 -defaultsOSRD
  1120. preplace portBus VGA_B -pg 1 -y 540 -defaultsOSRD
  1121. preplace portBus ZORRO_ADDR -pg 1 -y 1600 -defaultsOSRD
  1122. preplace portBus VGA_R -pg 1 -y 340 -defaultsOSRD
  1123. preplace portBus ZORRO_DATA -pg 1 -y 1620 -defaultsOSRD
  1124. preplace portBus VGA_G -pg 1 -y 440 -defaultsOSRD
  1125. preplace inst rst_ps7_0_25M -pg 1 -lvl 4 -y 370 -defaultsOSRD
  1126. preplace inst xlslice_0 -pg 1 -lvl 7 -y 340 -defaultsOSRD
  1127. preplace inst xlslice_1 -pg 1 -lvl 7 -y 440 -defaultsOSRD
  1128. preplace inst xlslice_2 -pg 1 -lvl 7 -y 540 -defaultsOSRD
  1129. preplace inst axi_dwidth_converter_0 -pg 1 -lvl 5 -y 760 -defaultsOSRD
  1130. preplace inst axi_register_slice_0 -pg 1 -lvl 2 -y 390 -defaultsOSRD
  1131. preplace inst proc_sys_reset_0 -pg 1 -lvl 1 -y 580 -defaultsOSRD
  1132. preplace inst axi_register_slice_1 -pg 1 -lvl 5 -y 600 -defaultsOSRD
  1133. preplace inst axi_register_slice_2 -pg 1 -lvl 3 -y 560 -defaultsOSRD
  1134. preplace inst axi_protocol_convert_0 -pg 1 -lvl 5 -y 1090 -defaultsOSRD
  1135. preplace inst axi_register_slice_3 -pg 1 -lvl 4 -y 740 -defaultsOSRD
  1136. preplace inst axi_protocol_convert_1 -pg 1 -lvl 4 -y 580 -defaultsOSRD
  1137. preplace inst MNTZorro_v0_1_S00_AXI_0 -pg 1 -lvl 6 -y 1944 -defaultsOSRD
  1138. preplace inst axi_protocol_convert_2 -pg 1 -lvl 3 -y 730 -defaultsOSRD
  1139. preplace inst ps7_0_axi_periph -pg 1 -lvl 5 -y 230 -defaultsOSRD
  1140. preplace inst video -pg 1 -lvl 6 -y 322 -defaultsOSRD
  1141. preplace inst clk_wiz_0 -pg 1 -lvl 6 -y 90 -defaultsOSRD
  1142. preplace inst axi_mem_intercon -pg 1 -lvl 7 -y 1154 -defaultsOSRD
  1143. preplace inst processing_system7_0 -pg 1 -lvl 6 -y 884 -defaultsOSRD
  1144. preplace netloc xlslice_2_Dout 1 7 1 NJ
  1145. preplace netloc axi_protocol_convert_1_M_AXI 1 4 1 N
  1146. preplace netloc VCAP_R4_0_1 1 0 6 NJ 1960 NJ 1960 NJ 1960 NJ 1960 NJ 1960 1790J
  1147. preplace netloc VCAP_B2_0_1 1 0 6 NJ 1840 NJ 1840 NJ 1840 NJ 1840 NJ 1840 1850J
  1148. preplace netloc processing_system7_0_FIXED_IO 1 6 2 2850J 620 NJ
  1149. preplace netloc VCAP_VSYNC_0_1 1 0 6 NJ 1540 NJ 1540 NJ 1540 NJ 1540 NJ 1540 2020J
  1150. preplace netloc VCAP_B0_0_1 1 0 6 NJ 1880 NJ 1880 NJ 1880 NJ 1880 NJ 1880 1830J
  1151. preplace netloc MNTZorro_v0_1_S00_AXI_0_ZORRO_NCINH 1 6 2 2850J 1780 NJ
  1152. preplace netloc rst_ps7_0_25M_peripheral_aresetn 1 4 2 NJ 410 1980
  1153. preplace netloc VCAP_G6_0_1 1 0 6 NJ 1700 NJ 1700 NJ 1700 NJ 1700 NJ 1700 1920J
  1154. preplace netloc VCAP_R2_0_1 1 0 6 NJ 2000 NJ 2000 NJ 2000 NJ 2000 NJ 2000 1770J
  1155. preplace netloc VCAP_G5_0_1 1 0 6 NJ 1680 NJ 1680 NJ 1680 NJ 1680 NJ 1680 1930J
  1156. preplace netloc video_subsystem_VGA_HS 1 6 2 2720J 250 NJ
  1157. preplace netloc video_subsystem_M_AXI_MM2S 1 1 6 390 90 NJ 90 NJ 90 NJ 90 2180J 180 2710
  1158. preplace netloc axi_dwidth_converter_0_M_AXI 1 5 1 2120
  1159. preplace netloc VCAP_R5_0_1 1 0 6 NJ 1940 NJ 1940 NJ 1940 NJ 1940 NJ 1940 1800J
  1160. preplace netloc VCAP_G3_0_1 1 0 6 NJ 1640 NJ 1640 NJ 1640 NJ 1640 NJ 1640 1950J
  1161. preplace netloc VCAP_R1_0_1 1 0 6 NJ 2020 NJ 2020 NJ 2020 NJ 2020 NJ 2020 1760J
  1162. preplace netloc ZORRO_NIORST_1 1 0 6 NJ 1460 NJ 1460 NJ 1460 NJ 1460 NJ 1460 2060J
  1163. preplace netloc axi_register_slice_2_M_AXI 1 3 1 N
  1164. preplace netloc VCAP_B3_0_1 1 0 6 NJ 1820 NJ 1820 NJ 1820 NJ 1820 NJ 1820 1860J
  1165. preplace netloc ZORRO_NDS0_1 1 0 6 NJ 1380 NJ 1380 NJ 1380 NJ 1380 NJ 1380 2100J
  1166. preplace netloc ZORRO_NDS1_1 1 0 6 NJ 1360 NJ 1360 NJ 1360 NJ 1360 NJ 1360 2110J
  1167. preplace netloc video_subsystem_VGA_DE 1 6 2 2840J 280 3650J
  1168. preplace netloc VCAP_G7_0_1 1 0 6 NJ 1720 NJ 1720 NJ 1720 NJ 1720 NJ 1720 1910J
  1169. preplace netloc VCAP_HSYNC_0_1 1 0 6 NJ 1560 NJ 1560 NJ 1560 NJ 1560 NJ 1560 2010J
  1170. preplace netloc processing_system7_0_DDR 1 6 2 2840J 600 NJ
  1171. preplace netloc MNTZorro_v0_1_S00_AXI_0_m00_axi 1 2 5 690 2464 NJ 2464 NJ 2464 NJ 2464 2670
  1172. preplace netloc VCAP_R3_0_1 1 0 6 NJ 1980 NJ 1980 NJ 1980 NJ 1980 NJ 1980 1780J
  1173. preplace netloc VCAP_R0_0_1 1 0 6 NJ 2040 NJ 2040 NJ 2040 NJ 2040 NJ 2040 1750J
  1174. preplace netloc ZORRO_NLDS_1 1 0 6 NJ 1340 NJ 1340 NJ 1340 NJ 1340 NJ 1340 2120J
  1175. preplace netloc axi_protocol_convert_0_M_AXI 1 5 1 2160
  1176. preplace netloc VCAP_B4_0_1 1 0 6 NJ 1800 NJ 1800 NJ 1800 NJ 1800 NJ 1800 1870J
  1177. preplace netloc ZORRO_C28D_0_1 1 0 6 NJ 1520 NJ 1520 NJ 1520 NJ 1520 NJ 1520 2030J
  1178. preplace netloc ps7_0_axi_periph_M00_AXI 1 5 1 1970
  1179. preplace netloc processing_system7_0_FCLK_RESET0_N 1 0 7 30 480 NJ 480 650J 460 1010 472 NJ 472 NJ 472 2700
  1180. preplace netloc MNTZorro_v0_1_S00_AXI_0_ZORRO_INT6 1 6 2 2780J 1640 NJ
  1181. preplace netloc xlslice_1_Dout 1 7 1 NJ
  1182. preplace netloc ps7_0_axi_periph_M01_AXI 1 5 1 2180
  1183. preplace netloc VCAP_G1_0_1 1 0 6 NJ 1600 NJ 1600 NJ 1600 NJ 1600 NJ 1600 1970J
  1184. preplace netloc MNTZorro_v0_1_S00_AXI_0_ZORRO_NDTACK 1 6 2 2860J 1800 NJ
  1185. preplace netloc VCAP_B5_0_1 1 0 6 NJ 1780 NJ 1780 NJ 1780 NJ 1780 NJ 1780 1880J
  1186. preplace netloc VCAP_G2_0_1 1 0 6 NJ 1620 NJ 1620 NJ 1620 NJ 1620 NJ 1620 1960J
  1187. preplace netloc video_control_vblank 1 5 2 2170 502 2710
  1188. preplace netloc xlslice_0_Dout 1 7 1 NJ
  1189. preplace netloc MNTZorro_v0_1_S00_AXI_0_ZORRO_ADDRDIR2 1 6 2 2810J 1700 NJ
  1190. preplace netloc MNTZorro_v0_1_S00_AXI_0_ZORRO_NSLAVE 1 6 2 2840J 1760 NJ
  1191. preplace netloc ZORRO_DOE_1 1 0 6 NJ 1440 NJ 1440 NJ 1440 NJ 1440 NJ 1440 2070J
  1192. preplace netloc axi_protocol_convert_2_M_AXI 1 3 1 1010
  1193. preplace netloc MNTZorro_v0_1_S00_AXI_0_ZORRO_DATADIR 1 6 2 2790J 1660 NJ
  1194. preplace netloc axi_register_slice_1_M_AXI 1 5 1 2130
  1195. preplace netloc Net 1 6 2 2760J 1600 NJ
  1196. preplace netloc MNTZorro_v0_1_S00_AXI_0_ZORRO_NBRN 1 6 2 2820J 1720 NJ
  1197. preplace netloc Net1 1 6 2 2770J 1620 NJ
  1198. preplace netloc processing_system7_0_FCLK_CLK0 1 0 7 20 470 390 470 670 470 1000 500 1380 500 1990 1044 2840
  1199. preplace netloc processing_system7_0_FCLK_CLK1 1 3 4 1010 270 1380 80 2140 1034 2670
  1200. preplace netloc VCAP_R7_0_1 1 0 6 NJ 1900 NJ 1900 NJ 1900 NJ 1900 NJ 1900 1820J
  1201. preplace netloc VCAP_B6_0_1 1 0 6 NJ 1760 NJ 1760 NJ 1760 NJ 1760 NJ 1760 1890J
  1202. preplace netloc axi_register_slice_0_M_AXI 1 2 1 660
  1203. preplace netloc v_axi4s_vid_out_0_vid_data 1 6 1 2850
  1204. preplace netloc MNTZorro_v0_1_S00_AXI_0_ZORRO_ADDRDIR 1 6 2 2800J 1680 NJ
  1205. preplace netloc VCAP_G0_0_1 1 0 6 NJ 1580 NJ 1580 NJ 1580 NJ 1580 NJ 1580 1980J
  1206. preplace netloc VCAP_R6_0_1 1 0 6 NJ 1920 NJ 1920 NJ 1920 NJ 1920 NJ 1920 1810J
  1207. preplace netloc proc_sys_reset_1_peripheral_aresetn 1 1 6 400 490 680 480 990 660 1390 680 2000 1134 2850
  1208. preplace netloc MNTZorro_v0_1_S00_AXI_0_ZORRO_NCFGOUT 1 6 2 2830J 1740 NJ
  1209. preplace netloc M00_ARESETN_1 1 4 1 1390
  1210. preplace netloc ZORRO_NCFGIN_1 1 0 6 NJ 1480 NJ 1480 NJ 1480 NJ 1480 NJ 1480 2050J
  1211. preplace netloc ZORRO_NCCS_1 1 0 6 NJ 1400 NJ 1400 NJ 1400 NJ 1400 NJ 1400 2090J
  1212. preplace netloc VCAP_B7_0_1 1 0 6 NJ 1740 NJ 1740 NJ 1740 NJ 1740 NJ 1740 1900J
  1213. preplace netloc ZORRO_NBGN_0_1 1 0 6 NJ 1280 NJ 1280 NJ 1280 NJ 1280 NJ 1280 2150J
  1214. preplace netloc processing_system7_0_M_AXI_GP0 1 4 3 1410 1170 NJ 1170 2690
  1215. preplace netloc processing_system7_0_M_AXI_GP1 1 4 3 1400 1180 NJ 1180 2680
  1216. preplace netloc ZORRO_E7M_1 1 0 6 NJ 1500 NJ 1500 NJ 1500 NJ 1500 NJ 1500 2040J
  1217. preplace netloc axi_mem_intercon_M00_AXI 1 5 3 2180 734 NJ 734 3650
  1218. preplace netloc MNTZorro_v0_1_S00_AXI_0_m01_axi 1 6 1 2750
  1219. preplace netloc ZORRO_READ_1 1 0 6 NJ 1300 NJ 1300 NJ 1300 NJ 1300 NJ 1300 2140J
  1220. preplace netloc video_subsystem_VGA_VS 1 6 2 2740J 270 NJ
  1221. preplace netloc MNTZorro_v0_1_S00_AXI_0_video_control_op 1 5 2 2160 492 2720
  1222. preplace netloc axi_register_slice_3_M_AXI 1 4 1 N
  1223. preplace netloc VCAP_B1_0_1 1 0 6 NJ 1860 NJ 1860 NJ 1860 NJ 1860 NJ 1860 1840J
  1224. preplace netloc MNTZorro_v0_1_S00_AXI_0_video_control_interlace 1 5 2 2180 462 2740
  1225. preplace netloc clk_1 1 5 3 2170 452 2730 80 NJ
  1226. preplace netloc MNTZorro_v0_1_S00_AXI_0_video_control_data 1 5 2 2150 482 2730
  1227. preplace netloc ZORRO_NUDS_1 1 0 6 NJ 1320 NJ 1320 NJ 1320 NJ 1320 NJ 1320 2130J
  1228. preplace netloc ZORRO_NFCS_1 1 0 6 NJ 1420 NJ 1420 NJ 1420 NJ 1420 NJ 1420 2080J
  1229. preplace netloc VCAP_G4_0_1 1 0 6 NJ 1660 NJ 1660 NJ 1660 NJ 1660 NJ 1660 1940J
  1230. levelinfo -pg 1 0 210 530 840 1200 1580 2450 3500 3670 -top 0 -bot 3270
  1231. "
  1232. }
  1233. # Restore current instance
  1234. current_bd_instance $oldCurInst
  1235. validate_bd_design
  1236. save_bd_design
  1237. close_bd_design $design_name
  1238. }
  1239. # End of cr_bd_zz9000_ps()
  1240. cr_bd_zz9000_ps ""
  1241. set_property REGISTERED_WITH_MANAGER "1" [get_files zz9000_ps.bd ]
  1242. set_property SYNTH_CHECKPOINT_MODE "Hierarchical" [get_files zz9000_ps.bd ]
  1243. # Create 'synth_1' run (if not found)
  1244. if {[string equal [get_runs -quiet synth_1] ""]} {
  1245. create_run -name synth_1 -part xc7z020clg400-1 -flow {Vivado Synthesis 2018} -strategy "Flow_AreaOptimized_high" -report_strategy {No Reports} -constrset constrs_1
  1246. } else {
  1247. set_property strategy "Flow_AreaOptimized_high" [get_runs synth_1]
  1248. set_property flow "Vivado Synthesis 2018" [get_runs synth_1]
  1249. }
  1250. set obj [get_runs synth_1]
  1251. set_property set_report_strategy_name 1 $obj
  1252. set_property report_strategy {Vivado Synthesis Default Reports} $obj
  1253. set_property set_report_strategy_name 0 $obj
  1254. # Create 'synth_1_synth_report_utilization_0' report (if not found)
  1255. if { [ string equal [get_report_configs -of_objects [get_runs synth_1] synth_1_synth_report_utilization_0] "" ] } {
  1256. create_report_config -report_name synth_1_synth_report_utilization_0 -report_type report_utilization:1.0 -steps synth_design -runs synth_1
  1257. }
  1258. set obj [get_report_configs -of_objects [get_runs synth_1] synth_1_synth_report_utilization_0]
  1259. if { $obj != "" } {
  1260. set_property -name "display_name" -value "synth_1_synth_report_utilization_0" -objects $obj
  1261. }
  1262. set obj [get_runs synth_1]
  1263. set_property -name "part" -value "xc7z020clg400-1" -objects $obj
  1264. set_property -name "strategy" -value "Flow_AreaOptimized_high" -objects $obj
  1265. set_property -name "steps.synth_design.args.directive" -value "AreaOptimized_high" -objects $obj
  1266. set_property -name "steps.synth_design.args.control_set_opt_threshold" -value "1" -objects $obj
  1267. # set the current synth run
  1268. current_run -synthesis [get_runs synth_1]
  1269. # Create 'impl_1' run (if not found)
  1270. if {[string equal [get_runs -quiet impl_1] ""]} {
  1271. create_run -name impl_1 -part xc7z020clg400-1 -flow {Vivado Implementation 2018} -strategy "Flow_RunPostRoutePhysOpt" -report_strategy {No Reports} -constrset constrs_1 -parent_run synth_1
  1272. } else {
  1273. set_property strategy "Flow_RunPostRoutePhysOpt" [get_runs impl_1]
  1274. set_property flow "Vivado Implementation 2018" [get_runs impl_1]
  1275. }
  1276. set obj [get_runs impl_1]
  1277. set_property set_report_strategy_name 1 $obj
  1278. set_property report_strategy {Timing Closure Reports} $obj
  1279. set_property set_report_strategy_name 0 $obj
  1280. # Create 'impl_1_opt_report_drc_0' report (if not found)
  1281. if { [ string equal [get_report_configs -of_objects [get_runs impl_1] impl_1_opt_report_drc_0] "" ] } {
  1282. create_report_config -report_name impl_1_opt_report_drc_0 -report_type report_drc:1.0 -steps opt_design -runs impl_1
  1283. }
  1284. set obj [get_report_configs -of_objects [get_runs impl_1] impl_1_opt_report_drc_0]
  1285. if { $obj != "" } {
  1286. set_property -name "display_name" -value "impl_1_opt_report_drc_0" -objects $obj
  1287. }
  1288. # Create 'impl_1_opt_report_utilization_0' report (if not found)
  1289. if { [ string equal [get_report_configs -of_objects [get_runs impl_1] impl_1_opt_report_utilization_0] "" ] } {
  1290. create_report_config -report_name impl_1_opt_report_utilization_0 -report_type report_utilization:1.0 -steps opt_design -runs impl_1
  1291. }
  1292. set obj [get_report_configs -of_objects [get_runs impl_1] impl_1_opt_report_utilization_0]
  1293. if { $obj != "" } {
  1294. set_property -name "display_name" -value "impl_1_opt_report_utilization_0" -objects $obj
  1295. }
  1296. # Create 'impl_1_opt_report_methodology_0' report (if not found)
  1297. if { [ string equal [get_report_configs -of_objects [get_runs impl_1] impl_1_opt_report_methodology_0] "" ] } {
  1298. create_report_config -report_name impl_1_opt_report_methodology_0 -report_type report_methodology:1.0 -steps opt_design -runs impl_1
  1299. }
  1300. set obj [get_report_configs -of_objects [get_runs impl_1] impl_1_opt_report_methodology_0]
  1301. if { $obj != "" } {
  1302. set_property -name "display_name" -value "impl_1_opt_report_methodology_0" -objects $obj
  1303. }
  1304. # Create 'impl_1_opt_report_timing_summary_0' report (if not found)
  1305. if { [ string equal [get_report_configs -of_objects [get_runs impl_1] impl_1_opt_report_timing_summary_0] "" ] } {
  1306. create_report_config -report_name impl_1_opt_report_timing_summary_0 -report_type report_timing_summary:1.0 -steps opt_design -runs impl_1
  1307. }
  1308. set obj [get_report_configs -of_objects [get_runs impl_1] impl_1_opt_report_timing_summary_0]
  1309. if { $obj != "" } {
  1310. set_property -name "display_name" -value "impl_1_opt_report_timing_summary_0" -objects $obj
  1311. }
  1312. # Create 'impl_1_place_report_io_0' report (if not found)
  1313. if { [ string equal [get_report_configs -of_objects [get_runs impl_1] impl_1_place_report_io_0] "" ] } {
  1314. create_report_config -report_name impl_1_place_report_io_0 -report_type report_io:1.0 -steps place_design -runs impl_1
  1315. }
  1316. set obj [get_report_configs -of_objects [get_runs impl_1] impl_1_place_report_io_0]
  1317. if { $obj != "" } {
  1318. set_property -name "display_name" -value "impl_1_place_report_io_0" -objects $obj
  1319. }
  1320. # Create 'impl_1_place_report_incremental_reuse_0' report (if not found)
  1321. if { [ string equal [get_report_configs -of_objects [get_runs impl_1] impl_1_place_report_incremental_reuse_0] "" ] } {
  1322. create_report_config -report_name impl_1_place_report_incremental_reuse_0 -report_type report_incremental_reuse:1.0 -steps place_design -runs impl_1
  1323. }
  1324. set obj [get_report_configs -of_objects [get_runs impl_1] impl_1_place_report_incremental_reuse_0]
  1325. if { $obj != "" } {
  1326. set_property -name "display_name" -value "impl_1_place_report_incremental_reuse_0" -objects $obj
  1327. }
  1328. # Create 'impl_1_place_report_timing_summary_0' report (if not found)
  1329. if { [ string equal [get_report_configs -of_objects [get_runs impl_1] impl_1_place_report_timing_summary_0] "" ] } {
  1330. create_report_config -report_name impl_1_place_report_timing_summary_0 -report_type report_timing_summary:1.0 -steps place_design -runs impl_1
  1331. }
  1332. set obj [get_report_configs -of_objects [get_runs impl_1] impl_1_place_report_timing_summary_0]
  1333. if { $obj != "" } {
  1334. set_property -name "display_name" -value "impl_1_place_report_timing_summary_0" -objects $obj
  1335. }
  1336. # Create 'impl_1_phys_opt_report_timing_summary_0' report (if not found)
  1337. if { [ string equal [get_report_configs -of_objects [get_runs impl_1] impl_1_phys_opt_report_timing_summary_0] "" ] } {
  1338. create_report_config -report_name impl_1_phys_opt_report_timing_summary_0 -report_type report_timing_summary:1.0 -steps phys_opt_design -runs impl_1
  1339. }
  1340. set obj [get_report_configs -of_objects [get_runs impl_1] impl_1_phys_opt_report_timing_summary_0]
  1341. if { $obj != "" } {
  1342. set_property -name "display_name" -value "impl_1_phys_opt_report_timing_summary_0" -objects $obj
  1343. }
  1344. # Create 'impl_1_phys_opt_report_design_analysis_0' report (if not found)
  1345. if { [ string equal [get_report_configs -of_objects [get_runs impl_1] impl_1_phys_opt_report_design_analysis_0] "" ] } {
  1346. create_report_config -report_name impl_1_phys_opt_report_design_analysis_0 -report_type report_design_analysis:1.0 -steps phys_opt_design -runs impl_1
  1347. }
  1348. set obj [get_report_configs -of_objects [get_runs impl_1] impl_1_phys_opt_report_design_analysis_0]
  1349. if { $obj != "" } {
  1350. set_property -name "display_name" -value "impl_1_phys_opt_report_design_analysis_0" -objects $obj
  1351. }
  1352. # Create 'impl_1_route_report_utilization_0' report (if not found)
  1353. if { [ string equal [get_report_configs -of_objects [get_runs impl_1] impl_1_route_report_utilization_0] "" ] } {
  1354. create_report_config -report_name impl_1_route_report_utilization_0 -report_type report_utilization:1.0 -steps route_design -runs impl_1
  1355. }
  1356. set obj [get_report_configs -of_objects [get_runs impl_1] impl_1_route_report_utilization_0]
  1357. if { $obj != "" } {
  1358. set_property -name "display_name" -value "impl_1_route_report_utilization_0" -objects $obj
  1359. }
  1360. # Create 'impl_1_route_report_clock_utilization_0' report (if not found)
  1361. if { [ string equal [get_report_configs -of_objects [get_runs impl_1] impl_1_route_report_clock_utilization_0] "" ] } {
  1362. create_report_config -report_name impl_1_route_report_clock_utilization_0 -report_type report_clock_utilization:1.0 -steps route_design -runs impl_1
  1363. }
  1364. set obj [get_report_configs -of_objects [get_runs impl_1] impl_1_route_report_clock_utilization_0]
  1365. if { $obj != "" } {
  1366. set_property -name "display_name" -value "impl_1_route_report_clock_utilization_0" -objects $obj
  1367. }
  1368. # Create 'impl_1_route_report_drc_0' report (if not found)
  1369. if { [ string equal [get_report_configs -of_objects [get_runs impl_1] impl_1_route_report_drc_0] "" ] } {
  1370. create_report_config -report_name impl_1_route_report_drc_0 -report_type report_drc:1.0 -steps route_design -runs impl_1
  1371. }
  1372. set obj [get_report_configs -of_objects [get_runs impl_1] impl_1_route_report_drc_0]
  1373. if { $obj != "" } {
  1374. set_property -name "display_name" -value "impl_1_route_report_drc_0" -objects $obj
  1375. }
  1376. # Create 'impl_1_route_report_power_0' report (if not found)
  1377. if { [ string equal [get_report_configs -of_objects [get_runs impl_1] impl_1_route_report_power_0] "" ] } {
  1378. create_report_config -report_name impl_1_route_report_power_0 -report_type report_power:1.0 -steps route_design -runs impl_1
  1379. }
  1380. set obj [get_report_configs -of_objects [get_runs impl_1] impl_1_route_report_power_0]
  1381. if { $obj != "" } {
  1382. set_property -name "display_name" -value "impl_1_route_report_power_0" -objects $obj
  1383. }
  1384. # Create 'impl_1_route_report_route_status_0' report (if not found)
  1385. if { [ string equal [get_report_configs -of_objects [get_runs impl_1] impl_1_route_report_route_status_0] "" ] } {
  1386. create_report_config -report_name impl_1_route_report_route_status_0 -report_type report_route_status:1.0 -steps route_design -runs impl_1
  1387. }
  1388. set obj [get_report_configs -of_objects [get_runs impl_1] impl_1_route_report_route_status_0]
  1389. if { $obj != "" } {
  1390. set_property -name "display_name" -value "impl_1_route_report_route_status_0" -objects $obj
  1391. }
  1392. # Create 'impl_1_route_report_timing_summary_0' report (if not found)
  1393. if { [ string equal [get_report_configs -of_objects [get_runs impl_1] impl_1_route_report_timing_summary_0] "" ] } {
  1394. create_report_config -report_name impl_1_route_report_timing_summary_0 -report_type report_timing_summary:1.0 -steps route_design -runs impl_1
  1395. }
  1396. set obj [get_report_configs -of_objects [get_runs impl_1] impl_1_route_report_timing_summary_0]
  1397. if { $obj != "" } {
  1398. set_property -name "display_name" -value "impl_1_route_report_timing_summary_0" -objects $obj
  1399. }
  1400. # Create 'impl_1_route_report_design_analysis_0' report (if not found)
  1401. if { [ string equal [get_report_configs -of_objects [get_runs impl_1] impl_1_route_report_design_analysis_0] "" ] } {
  1402. create_report_config -report_name impl_1_route_report_design_analysis_0 -report_type report_design_analysis:1.0 -steps route_design -runs impl_1
  1403. }
  1404. set obj [get_report_configs -of_objects [get_runs impl_1] impl_1_route_report_design_analysis_0]
  1405. if { $obj != "" } {
  1406. set_property -name "display_name" -value "impl_1_route_report_design_analysis_0" -objects $obj
  1407. }
  1408. # Create 'impl_1_route_report_qor_suggestions_0' report (if not found)
  1409. if { [ string equal [get_report_configs -of_objects [get_runs impl_1] impl_1_route_report_qor_suggestions_0] "" ] } {
  1410. create_report_config -report_name impl_1_route_report_qor_suggestions_0 -report_type report_qor_suggestions:1.0 -steps route_design -runs impl_1
  1411. }
  1412. set obj [get_report_configs -of_objects [get_runs impl_1] impl_1_route_report_qor_suggestions_0]
  1413. if { $obj != "" } {
  1414. set_property -name "display_name" -value "impl_1_route_report_qor_suggestions_0" -objects $obj
  1415. }
  1416. # Create 'impl_1_route_report_incremental_reuse_0' report (if not found)
  1417. if { [ string equal [get_report_configs -of_objects [get_runs impl_1] impl_1_route_report_incremental_reuse_0] "" ] } {
  1418. create_report_config -report_name impl_1_route_report_incremental_reuse_0 -report_type report_incremental_reuse:1.0 -steps route_design -runs impl_1
  1419. }
  1420. set obj [get_report_configs -of_objects [get_runs impl_1] impl_1_route_report_incremental_reuse_0]
  1421. if { $obj != "" } {
  1422. set_property -name "display_name" -value "impl_1_route_report_incremental_reuse_0" -objects $obj
  1423. }
  1424. # Create 'impl_1_route_report_bus_skew_0' report (if not found)
  1425. if { [ string equal [get_report_configs -of_objects [get_runs impl_1] impl_1_route_report_bus_skew_0] "" ] } {
  1426. create_report_config -report_name impl_1_route_report_bus_skew_0 -report_type report_bus_skew:1.1 -steps route_design -runs impl_1
  1427. }
  1428. set obj [get_report_configs -of_objects [get_runs impl_1] impl_1_route_report_bus_skew_0]
  1429. if { $obj != "" } {
  1430. set_property -name "display_name" -value "impl_1_route_report_bus_skew_0" -objects $obj
  1431. }
  1432. # Create 'impl_1_post_route_phys_opt_report_timing_summary_0' report (if not found)
  1433. if { [ string equal [get_report_configs -of_objects [get_runs impl_1] impl_1_post_route_phys_opt_report_timing_summary_0] "" ] } {
  1434. create_report_config -report_name impl_1_post_route_phys_opt_report_timing_summary_0 -report_type report_timing_summary:1.0 -steps post_route_phys_opt_design -runs impl_1
  1435. }
  1436. set obj [get_report_configs -of_objects [get_runs impl_1] impl_1_post_route_phys_opt_report_timing_summary_0]
  1437. if { $obj != "" } {
  1438. set_property -name "display_name" -value "impl_1_post_route_phys_opt_report_timing_summary_0" -objects $obj
  1439. }
  1440. # Create 'impl_1_post_route_phys_opt_report_bus_skew_0' report (if not found)
  1441. if { [ string equal [get_report_configs -of_objects [get_runs impl_1] impl_1_post_route_phys_opt_report_bus_skew_0] "" ] } {
  1442. create_report_config -report_name impl_1_post_route_phys_opt_report_bus_skew_0 -report_type report_bus_skew:1.1 -steps post_route_phys_opt_design -runs impl_1
  1443. }
  1444. set obj [get_report_configs -of_objects [get_runs impl_1] impl_1_post_route_phys_opt_report_bus_skew_0]
  1445. if { $obj != "" } {
  1446. set_property -name "display_name" -value "impl_1_post_route_phys_opt_report_bus_skew_0" -objects $obj
  1447. }
  1448. set obj [get_runs impl_1]
  1449. set_property -name "part" -value "xc7z020clg400-1" -objects $obj
  1450. set_property -name "strategy" -value "Flow_RunPostRoutePhysOpt" -objects $obj
  1451. set_property -name "steps.phys_opt_design.is_enabled" -value "1" -objects $obj
  1452. set_property -name "steps.phys_opt_design.args.directive" -value "Explore" -objects $obj
  1453. set_property -name "steps.route_design.args.more options" -value "-tns_cleanup" -objects $obj
  1454. set_property -name "steps.post_route_phys_opt_design.is_enabled" -value "1" -objects $obj
  1455. set_property -name "steps.write_bitstream.args.readback_file" -value "0" -objects $obj
  1456. set_property -name "steps.write_bitstream.args.verbose" -value "0" -objects $obj
  1457. # set the current impl run
  1458. current_run -implementation [get_runs impl_1]
  1459. puts "INFO: Project created:${_xil_proj_name_}"
  1460. set obj [get_dashboards default_dashboard]
  1461. # Create 'drc_1' gadget (if not found)
  1462. if {[string equal [get_dashboard_gadgets -of_objects [get_dashboards default_dashboard] [ list "drc_1" ] ] ""]} {
  1463. create_dashboard_gadget -name {drc_1} -type drc
  1464. }
  1465. set obj [get_dashboard_gadgets -of_objects [get_dashboards default_dashboard] [ list "drc_1" ] ]
  1466. set_property -name "reports" -value "impl_1#impl_1_route_report_drc_0" -objects $obj
  1467. # Create 'methodology_1' gadget (if not found)
  1468. if {[string equal [get_dashboard_gadgets -of_objects [get_dashboards default_dashboard] [ list "methodology_1" ] ] ""]} {
  1469. create_dashboard_gadget -name {methodology_1} -type methodology
  1470. }
  1471. set obj [get_dashboard_gadgets -of_objects [get_dashboards default_dashboard] [ list "methodology_1" ] ]
  1472. set_property -name "reports" -value "impl_1#impl_1_route_report_methodology_0" -objects $obj
  1473. # Create 'power_1' gadget (if not found)
  1474. if {[string equal [get_dashboard_gadgets -of_objects [get_dashboards default_dashboard] [ list "power_1" ] ] ""]} {
  1475. create_dashboard_gadget -name {power_1} -type power
  1476. }
  1477. set obj [get_dashboard_gadgets -of_objects [get_dashboards default_dashboard] [ list "power_1" ] ]
  1478. set_property -name "reports" -value "impl_1#impl_1_route_report_power_0" -objects $obj
  1479. # Create 'timing_1' gadget (if not found)
  1480. if {[string equal [get_dashboard_gadgets -of_objects [get_dashboards default_dashboard] [ list "timing_1" ] ] ""]} {
  1481. create_dashboard_gadget -name {timing_1} -type timing
  1482. }
  1483. set obj [get_dashboard_gadgets -of_objects [get_dashboards default_dashboard] [ list "timing_1" ] ]
  1484. set_property -name "reports" -value "impl_1#impl_1_route_report_timing_summary_0" -objects $obj
  1485. # Create 'utilization_1' gadget (if not found)
  1486. if {[string equal [get_dashboard_gadgets -of_objects [get_dashboards default_dashboard] [ list "utilization_1" ] ] ""]} {
  1487. create_dashboard_gadget -name {utilization_1} -type utilization
  1488. }
  1489. set obj [get_dashboard_gadgets -of_objects [get_dashboards default_dashboard] [ list "utilization_1" ] ]
  1490. set_property -name "reports" -value "synth_1#synth_1_synth_report_utilization_0" -objects $obj
  1491. set_property -name "run.step" -value "synth_design" -objects $obj
  1492. set_property -name "run.type" -value "synthesis" -objects $obj
  1493. # Create 'utilization_2' gadget (if not found)
  1494. if {[string equal [get_dashboard_gadgets -of_objects [get_dashboards default_dashboard] [ list "utilization_2" ] ] ""]} {
  1495. create_dashboard_gadget -name {utilization_2} -type utilization
  1496. }
  1497. set obj [get_dashboard_gadgets -of_objects [get_dashboards default_dashboard] [ list "utilization_2" ] ]
  1498. set_property -name "reports" -value "impl_1#impl_1_place_report_utilization_0" -objects $obj
  1499. move_dashboard_gadget -name {utilization_1} -row 0 -col 0
  1500. move_dashboard_gadget -name {power_1} -row 1 -col 0
  1501. move_dashboard_gadget -name {drc_1} -row 2 -col 0
  1502. move_dashboard_gadget -name {timing_1} -row 0 -col 1
  1503. move_dashboard_gadget -name {utilization_2} -row 1 -col 1
  1504. move_dashboard_gadget -name {methodology_1} -row 2 -col 1
  1505. # Set current dashboard to 'default_dashboard'
  1506. current_dashboard default_dashboard