diff --git a/mercury-app/src/hw_ifc/CMakeLists.txt b/mercury-app/src/hw_ifc/CMakeLists.txt index 297743c..9b646e3 100644 --- a/mercury-app/src/hw_ifc/CMakeLists.txt +++ b/mercury-app/src/hw_ifc/CMakeLists.txt @@ -151,7 +151,7 @@ include_directories( add_custom_target(hw_ifc ALL - COMMAND cargo build -p mercury --release + COMMAND cargo build -p mercury --release #--target armv7-unknown-linux-gnueabihf WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/../src/hw_ifc #COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_BINARY_DIR}/cargo/release/my-project-binary ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/my-project-binary COMMENT "Build Mercury..." diff --git a/mercury-hdl/mercury_proj.tcl b/mercury-hdl/mercury_proj.tcl index 86d1c0b..908f1a2 100644 --- a/mercury-hdl/mercury_proj.tcl +++ b/mercury-hdl/mercury_proj.tcl @@ -3,7 +3,7 @@ # # mercury_proj.tcl: Tcl script for re-creating project 'mercury' # -# Generated by Vivado on Sun Mar 24 12:40:01 EDT 2024 +# Generated by Vivado on Sun Mar 24 15:41:40 EDT 2024 # IP Build 3864474 on Sun May 7 20:36:21 MDT 2023 # # This file contains the Vivado Tcl commands for re-creating the project to the state* @@ -23,7 +23,7 @@ # 2. The following source(s) files that were local or imported into the original project. # (Please see the '$orig_proj_dir' and '$origin_dir' variable setting below at the start of the script) # -# "/home/nwdepatie/mercury/mercury.srcs/utils_1/imports/synth_1/mercury_wrapper.dcp" +# "/media/nwdepatie/shared/workdir/Capstone/mercury/mercury-hdl/mercury/mercury.srcs/utils_1/imports/synth_1/mercury_wrapper.dcp" # # 3. The following remote source files that were added to the original project:- # @@ -37,7 +37,7 @@ proc checkRequiredFiles { origin_dir} { set status true set files [list \ - "[file normalize "$origin_dir/../../../../../../../home/nwdepatie/mercury/mercury.srcs/utils_1/imports/synth_1/mercury_wrapper.dcp"]"\ + "[file normalize "$origin_dir/mercury/mercury.srcs/utils_1/imports/synth_1/mercury_wrapper.dcp"]"\ ] foreach ifile $files { if { ![file isfile $ifile] } { @@ -125,7 +125,7 @@ if { $::argc > 0 } { } # Set the directory path for the original project from where this script was exported -set orig_proj_dir "[file normalize "$origin_dir/../../../../../../../home/nwdepatie/mercury"]" +set orig_proj_dir "[file normalize "$origin_dir/mercury"]" # Check for paths and files needed for project creation set validate_required 0 @@ -351,6 +351,7 @@ set_property -name "simulator_launch_mode" -value "off" -objects $obj set_property -name "source_set" -value "sources_1" -objects $obj set_property -name "systemc_include_dirs" -value "" -objects $obj set_property -name "top" -value "stepper_pulse_tb" -objects $obj +set_property -name "top_auto_set" -value "0" -objects $obj set_property -name "top_lib" -value "xil_defaultlib" -objects $obj set_property -name "transport_int_delay" -value "0" -objects $obj set_property -name "transport_path_delay" -value "0" -objects $obj @@ -399,7 +400,7 @@ set_property -name "xsim.simulate.xsim.more_options" -value "" -objects $obj set obj [get_filesets utils_1] # Import local files from the original project set files [list \ - [file normalize "${origin_dir}/../../../../../../../home/nwdepatie/mercury/mercury.srcs/utils_1/imports/synth_1/mercury_wrapper.dcp" ]\ + [file normalize "${origin_dir}/mercury/mercury.srcs/utils_1/imports/synth_1/mercury_wrapper.dcp" ]\ ] set imported_files [import_files -fileset utils_1 $files] @@ -795,9 +796,6 @@ proc create_hier_cell_drive { parentCell nameHier } { # Create instance: axi_timer_drv2, and set properties set axi_timer_drv2 [ create_bd_cell -type ip -vlnv xilinx.com:ip:axi_timer:2.0 axi_timer_drv2 ] - # Create instance: axi_timer_drv1, and set properties - set axi_timer_drv1 [ create_bd_cell -type ip -vlnv xilinx.com:ip:axi_timer:2.0 axi_timer_drv1 ] - # Create instance: axi_timer_drv3, and set properties set axi_timer_drv3 [ create_bd_cell -type ip -vlnv xilinx.com:ip:axi_timer:2.0 axi_timer_drv3 ] @@ -822,25 +820,74 @@ proc create_hier_cell_drive { parentCell nameHier } { # Create instance: xlslice_0, and set properties set xlslice_0 [ create_bd_cell -type ip -vlnv xilinx.com:ip:xlslice:1.0 xlslice_0 ] + # Create instance: axi_timer_drv1, and set properties + set axi_timer_drv1 [ create_bd_cell -type ip -vlnv xilinx.com:ip:axi_timer:2.0 axi_timer_drv1 ] + # Create interface connections - connect_bd_intf_net -intf_net Conn1 [get_bd_intf_pins axi_timer_drv1/S_AXI] [get_bd_intf_pins S_AXI] connect_bd_intf_net -intf_net Conn2 [get_bd_intf_pins axi_timer_drv3/S_AXI] [get_bd_intf_pins S_AXI1] connect_bd_intf_net -intf_net Conn3 [get_bd_intf_pins axi_timer_drv4/S_AXI] [get_bd_intf_pins S_AXI2] connect_bd_intf_net -intf_net Conn4 [get_bd_intf_pins axi_gpio_dir/S_AXI] [get_bd_intf_pins S_AXI3] connect_bd_intf_net -intf_net Conn5 [get_bd_intf_pins axi_timer_drv2/S_AXI] [get_bd_intf_pins S_AXI4] + connect_bd_intf_net -intf_net S_AXI_1 [get_bd_intf_pins S_AXI] [get_bd_intf_pins axi_timer_drv1/S_AXI] # Create port connections connect_bd_net -net axi_gpio_2_gpio2_io_o [get_bd_pins axi_gpio_dir/gpio2_io_o] [get_bd_pins xlslice_1/Din] connect_bd_net -net axi_gpio_2_gpio_io_o [get_bd_pins axi_gpio_dir/gpio_io_o] [get_bd_pins xlslice_0/Din] connect_bd_net -net axi_timer_0_pwm0 [get_bd_pins axi_timer_drv2/pwm0] [get_bd_pins DAC_1_INA] - connect_bd_net -net axi_timer_1_pwm0 [get_bd_pins axi_timer_drv1/pwm0] [get_bd_pins DAC_1_INB] connect_bd_net -net axi_timer_2_pwm0 [get_bd_pins axi_timer_drv3/pwm0] [get_bd_pins DAC_2_INA] connect_bd_net -net axi_timer_3_pwm0 [get_bd_pins axi_timer_drv4/pwm0] [get_bd_pins DAC_2_INB] - connect_bd_net -net s_axi_aclk_1 [get_bd_pins s_axi_aclk] [get_bd_pins axi_timer_drv1/s_axi_aclk] [get_bd_pins axi_timer_drv3/s_axi_aclk] [get_bd_pins axi_timer_drv4/s_axi_aclk] [get_bd_pins axi_gpio_dir/s_axi_aclk] [get_bd_pins axi_timer_drv2/s_axi_aclk] - connect_bd_net -net s_axi_aresetn_1 [get_bd_pins s_axi_aresetn] [get_bd_pins axi_timer_drv1/s_axi_aresetn] [get_bd_pins axi_timer_drv4/s_axi_aresetn] [get_bd_pins axi_timer_drv3/s_axi_aresetn] [get_bd_pins axi_gpio_dir/s_axi_aresetn] [get_bd_pins axi_timer_drv2/s_axi_aresetn] + connect_bd_net -net s_axi_aclk_1 [get_bd_pins s_axi_aclk] [get_bd_pins axi_timer_drv3/s_axi_aclk] [get_bd_pins axi_timer_drv4/s_axi_aclk] [get_bd_pins axi_gpio_dir/s_axi_aclk] [get_bd_pins axi_timer_drv2/s_axi_aclk] [get_bd_pins axi_timer_drv1/s_axi_aclk] + connect_bd_net -net s_axi_aresetn_1 [get_bd_pins s_axi_aresetn] [get_bd_pins axi_timer_drv4/s_axi_aresetn] [get_bd_pins axi_timer_drv3/s_axi_aresetn] [get_bd_pins axi_gpio_dir/s_axi_aresetn] [get_bd_pins axi_timer_drv2/s_axi_aresetn] [get_bd_pins axi_timer_drv1/s_axi_aresetn] connect_bd_net -net xlslice_0_Dout [get_bd_pins xlslice_0/Dout] [get_bd_pins Drive_DIR_1] connect_bd_net -net xlslice_1_Dout [get_bd_pins xlslice_1/Dout] [get_bd_pins Drive_DIR_3] + # Perform GUI Layout + regenerate_bd_layout -hierarchy [get_bd_cells /drive] -layout_string { + "ActiveEmotionalView":"Default View", + "Default View_ScaleFactor":"0.389126", + "Default View_TopLeft":"-144,-332", + "ExpandedHierarchyInLayout":"", + "guistr":"# # String gsaved with Nlview 7.5.8 2022-09-21 7111 VDI=41 GEI=38 GUI=JA:10.0 TLS +# -string -flagsOSRD +preplace port S_AXI -pg 1 -lvl 0 -x 0 -y 660 -defaultsOSRD +preplace port S_AXI1 -pg 1 -lvl 0 -x 0 -y 60 -defaultsOSRD +preplace port S_AXI2 -pg 1 -lvl 0 -x 0 -y 460 -defaultsOSRD +preplace port S_AXI3 -pg 1 -lvl 0 -x 0 -y 850 -defaultsOSRD +preplace port S_AXI4 -pg 1 -lvl 0 -x 0 -y 260 -defaultsOSRD +preplace port port-id_s_axi_aclk -pg 1 -lvl 0 -x 0 -y 870 -defaultsOSRD +preplace port port-id_s_axi_aresetn -pg 1 -lvl 0 -x 0 -y 890 -defaultsOSRD +preplace port port-id_DAC_1_INA -pg 1 -lvl 3 -x 620 -y 320 -defaultsOSRD +preplace port port-id_DAC_1_INB -pg 1 -lvl 3 -x 620 -y 20 -defaultsOSRD +preplace port port-id_DAC_2_INA -pg 1 -lvl 3 -x 620 -y 120 -defaultsOSRD +preplace port port-id_DAC_2_INB -pg 1 -lvl 3 -x 620 -y 520 -defaultsOSRD +preplace portBus Drive_DIR_1 -pg 1 -lvl 3 -x 620 -y 860 -defaultsOSRD +preplace portBus Drive_DIR_3 -pg 1 -lvl 3 -x 620 -y 960 -defaultsOSRD +preplace inst axi_timer_drv2 -pg 1 -lvl 2 -x 470 -y 310 -defaultsOSRD +preplace inst axi_timer_drv3 -pg 1 -lvl 2 -x 470 -y 110 -defaultsOSRD +preplace inst axi_timer_drv4 -pg 1 -lvl 2 -x 470 -y 510 -defaultsOSRD +preplace inst axi_gpio_dir -pg 1 -lvl 1 -x 180 -y 870 -defaultsOSRD +preplace inst xlslice_1 -pg 1 -lvl 2 -x 470 -y 960 -defaultsOSRD +preplace inst xlslice_0 -pg 1 -lvl 2 -x 470 -y 860 -defaultsOSRD +preplace inst axi_timer_drv1 -pg 1 -lvl 2 -x 470 -y 710 -defaultsOSRD +preplace netloc axi_gpio_2_gpio2_io_o 1 1 1 330J 900n +preplace netloc axi_gpio_2_gpio_io_o 1 1 1 NJ 860 +preplace netloc axi_timer_0_pwm0 1 2 1 NJ 320 +preplace netloc axi_timer_2_pwm0 1 2 1 NJ 120 +preplace netloc axi_timer_3_pwm0 1 2 1 NJ 520 +preplace netloc s_axi_aclk_1 1 0 2 20 740 330 +preplace netloc s_axi_aresetn_1 1 0 2 30 760 340 +preplace netloc xlslice_0_Dout 1 2 1 NJ 860 +preplace netloc xlslice_1_Dout 1 2 1 NJ 960 +preplace netloc Conn2 1 0 2 NJ 60 NJ +preplace netloc Conn3 1 0 2 NJ 460 NJ +preplace netloc Conn4 1 0 1 NJ 850 +preplace netloc Conn5 1 0 2 NJ 260 NJ +preplace netloc S_AXI_1 1 0 2 NJ 660 NJ +levelinfo -pg 1 0 180 470 620 +pagesize -pg 1 -db -bbox -sgen -150 0 790 1020 +" +} + # Restore current instance current_bd_instance $oldCurInst } @@ -1252,7 +1299,7 @@ proc create_hier_cell_drive { parentCell nameHier } { # Create instance: axi_interconnect_0, and set properties set axi_interconnect_0 [ create_bd_cell -type ip -vlnv xilinx.com:ip:axi_interconnect:2.1 axi_interconnect_0 ] set_property -dict [list \ - CONFIG.NUM_MI {12} \ + CONFIG.NUM_MI {16} \ CONFIG.NUM_SI {2} \ ] $axi_interconnect_0 @@ -1315,70 +1362,70 @@ proc create_hier_cell_drive { parentCell nameHier } { connect_bd_net -net step_clk_1 [get_bd_pins processing_system7_0/FCLK_CLK1] [get_bd_pins gantry/step_clk] # Create address segments + assign_bd_address -offset 0x40030000 -range 0x00010000 -target_address_space [get_bd_addr_spaces processing_system7_0/Data] [get_bd_addr_segs gantry/axi_gpio_dir1/S_AXI/Reg] -force + assign_bd_address -offset 0x40040000 -range 0x00010000 -target_address_space [get_bd_addr_spaces processing_system7_0/Data] [get_bd_addr_segs gantry/axi_gpio_dir2/S_AXI/Reg] -force + assign_bd_address -offset 0x40050000 -range 0x00010000 -target_address_space [get_bd_addr_spaces processing_system7_0/Data] [get_bd_addr_segs gantry/axi_gpio_dir3/S_AXI/Reg] -force + assign_bd_address -offset 0x41220000 -range 0x00010000 -target_address_space [get_bd_addr_spaces processing_system7_0/Data] [get_bd_addr_segs drive/axi_gpio_dir/S_AXI/Reg] -force + assign_bd_address -offset 0x41260000 -range 0x00010000 -target_address_space [get_bd_addr_spaces processing_system7_0/Data] [get_bd_addr_segs gantry/axi_gpio_rst/S_AXI/Reg] -force assign_bd_address -offset 0x41230000 -range 0x00010000 -target_address_space [get_bd_addr_spaces processing_system7_0/Data] [get_bd_addr_segs gantry/axi_gpio_step1/S_AXI/Reg] -force assign_bd_address -offset 0x41240000 -range 0x00010000 -target_address_space [get_bd_addr_spaces processing_system7_0/Data] [get_bd_addr_segs gantry/axi_gpio_step2/S_AXI/Reg] -force - assign_bd_address -offset 0x41220000 -range 0x00010000 -target_address_space [get_bd_addr_spaces processing_system7_0/Data] [get_bd_addr_segs drive/axi_gpio_dir/S_AXI/Reg] -force assign_bd_address -offset 0x41250000 -range 0x00010000 -target_address_space [get_bd_addr_spaces processing_system7_0/Data] [get_bd_addr_segs gantry/axi_gpio_step3/S_AXI/Reg] -force - assign_bd_address -offset 0x41260000 -range 0x00010000 -target_address_space [get_bd_addr_spaces processing_system7_0/Data] [get_bd_addr_segs gantry/axi_gpio_rst/S_AXI/Reg] -force - assign_bd_address -dict [list offset 0x7FFF8000 range 0x00008000 offset 0x80000000 range 0x00008000] -target_address_space [get_bd_addr_spaces processing_system7_0/Data] [get_bd_addr_segs gantry/axi_gpio_dir1/S_AXI/Reg] -force - assign_bd_address -offset 0x41200000 -range 0x00010000 -target_address_space [get_bd_addr_spaces processing_system7_0/Data] [get_bd_addr_segs gantry/axi_gpio_dir2/S_AXI/Reg] -force - assign_bd_address -offset 0x41210000 -range 0x00010000 -target_address_space [get_bd_addr_spaces processing_system7_0/Data] [get_bd_addr_segs gantry/axi_gpio_dir3/S_AXI/Reg] -force - assign_bd_address -offset 0x42800000 -range 0x00010000 -target_address_space [get_bd_addr_spaces processing_system7_0/Data] [get_bd_addr_segs drive/axi_timer_drv2/S_AXI/Reg] -force - assign_bd_address -offset 0x42810000 -range 0x00010000 -target_address_space [get_bd_addr_spaces processing_system7_0/Data] [get_bd_addr_segs drive/axi_timer_drv1/S_AXI/Reg] -force - assign_bd_address -offset 0x42820000 -range 0x00010000 -target_address_space [get_bd_addr_spaces processing_system7_0/Data] [get_bd_addr_segs drive/axi_timer_drv3/S_AXI/Reg] -force - assign_bd_address -offset 0x42830000 -range 0x00010000 -target_address_space [get_bd_addr_spaces processing_system7_0/Data] [get_bd_addr_segs drive/axi_timer_drv4/S_AXI/Reg] -force + assign_bd_address -dict [list offset 0x7FFF8000 range 0x00008000 offset 0x80000000 range 0x00008000] -target_address_space [get_bd_addr_spaces processing_system7_0/Data] [get_bd_addr_segs drive/axi_timer_drv1/S_AXI/Reg] -force + assign_bd_address -offset 0x40000000 -range 0x00010000 -target_address_space [get_bd_addr_spaces processing_system7_0/Data] [get_bd_addr_segs drive/axi_timer_drv2/S_AXI/Reg] -force + assign_bd_address -offset 0x40010000 -range 0x00010000 -target_address_space [get_bd_addr_spaces processing_system7_0/Data] [get_bd_addr_segs drive/axi_timer_drv3/S_AXI/Reg] -force + assign_bd_address -offset 0x40020000 -range 0x00010000 -target_address_space [get_bd_addr_spaces processing_system7_0/Data] [get_bd_addr_segs drive/axi_timer_drv4/S_AXI/Reg] -force # Perform GUI Layout regenerate_bd_layout -layout_string { "ActiveEmotionalView":"Default View", - "Default View_ScaleFactor":"0.797945", - "Default View_TopLeft":"-108,-4", + "Default View_ScaleFactor":"0.809697", + "Default View_TopLeft":"336,0", "ExpandedHierarchyInLayout":"", "guistr":"# # String gsaved with Nlview 7.5.8 2022-09-21 7111 VDI=41 GEI=38 GUI=JA:10.0 TLS # -string -flagsOSRD -preplace port DDR -pg 1 -lvl 4 -x 1180 -y 60 -defaultsOSRD -preplace port FIXED_IO -pg 1 -lvl 4 -x 1180 -y 80 -defaultsOSRD -preplace port port-id_DAC_1_INA -pg 1 -lvl 4 -x 1180 -y 160 -defaultsOSRD -preplace port port-id_DAC_1_INB -pg 1 -lvl 4 -x 1180 -y 180 -defaultsOSRD -preplace port port-id_DAC_2_INA -pg 1 -lvl 4 -x 1180 -y 200 -defaultsOSRD -preplace port port-id_DAC_2_INB -pg 1 -lvl 4 -x 1180 -y 220 -defaultsOSRD +preplace port DDR -pg 1 -lvl 4 -x 1340 -y 60 -defaultsOSRD +preplace port FIXED_IO -pg 1 -lvl 4 -x 1340 -y 80 -defaultsOSRD +preplace port port-id_DAC_1_INA -pg 1 -lvl 4 -x 1340 -y 160 -defaultsOSRD +preplace port port-id_DAC_1_INB -pg 1 -lvl 4 -x 1340 -y 180 -defaultsOSRD +preplace port port-id_DAC_2_INA -pg 1 -lvl 4 -x 1340 -y 200 -defaultsOSRD +preplace port port-id_DAC_2_INB -pg 1 -lvl 4 -x 1340 -y 220 -defaultsOSRD preplace port port-id_reset_rtl -pg 1 -lvl 0 -x 0 -y 20 -defaultsOSRD -preplace port port-id_STEP_1 -pg 1 -lvl 4 -x 1180 -y 480 -defaultsOSRD -preplace port port-id_STEP_2 -pg 1 -lvl 4 -x 1180 -y 620 -defaultsOSRD -preplace port port-id_STEP_3 -pg 1 -lvl 4 -x 1180 -y 760 -defaultsOSRD -preplace portBus Drive_DIR_1 -pg 1 -lvl 4 -x 1180 -y 240 -defaultsOSRD -preplace portBus Drive_DIR_2 -pg 1 -lvl 4 -x 1180 -y 260 -defaultsOSRD -preplace portBus Drive_DIR_3 -pg 1 -lvl 4 -x 1180 -y 280 -defaultsOSRD -preplace portBus Drive_DIR_4 -pg 1 -lvl 4 -x 1180 -y 300 -defaultsOSRD -preplace portBus NENBL_1 -pg 1 -lvl 4 -x 1180 -y 440 -defaultsOSRD -preplace portBus DIR_1 -pg 1 -lvl 4 -x 1180 -y 380 -defaultsOSRD -preplace portBus M0_1 -pg 1 -lvl 4 -x 1180 -y 400 -defaultsOSRD -preplace portBus M1_1 -pg 1 -lvl 4 -x 1180 -y 420 -defaultsOSRD -preplace portBus CONFIG_1 -pg 1 -lvl 4 -x 1180 -y 360 -defaultsOSRD -preplace portBus NSLEEP_1 -pg 1 -lvl 4 -x 1180 -y 460 -defaultsOSRD -preplace portBus CONFIG_2 -pg 1 -lvl 4 -x 1180 -y 500 -defaultsOSRD -preplace portBus DIR_2 -pg 1 -lvl 4 -x 1180 -y 520 -defaultsOSRD -preplace portBus M0_2 -pg 1 -lvl 4 -x 1180 -y 540 -defaultsOSRD -preplace portBus M1_2 -pg 1 -lvl 4 -x 1180 -y 560 -defaultsOSRD -preplace portBus NENBL_2 -pg 1 -lvl 4 -x 1180 -y 580 -defaultsOSRD -preplace portBus NSLEEP_2 -pg 1 -lvl 4 -x 1180 -y 600 -defaultsOSRD -preplace portBus CONFIG_3 -pg 1 -lvl 4 -x 1180 -y 640 -defaultsOSRD -preplace portBus DIR_3 -pg 1 -lvl 4 -x 1180 -y 660 -defaultsOSRD -preplace portBus M0_3 -pg 1 -lvl 4 -x 1180 -y 680 -defaultsOSRD -preplace portBus M1_3 -pg 1 -lvl 4 -x 1180 -y 700 -defaultsOSRD -preplace portBus NENBL_3 -pg 1 -lvl 4 -x 1180 -y 720 -defaultsOSRD -preplace portBus NSLEEP_3 -pg 1 -lvl 4 -x 1180 -y 740 -defaultsOSRD +preplace port port-id_STEP_1 -pg 1 -lvl 4 -x 1340 -y 480 -defaultsOSRD +preplace port port-id_STEP_2 -pg 1 -lvl 4 -x 1340 -y 620 -defaultsOSRD +preplace port port-id_STEP_3 -pg 1 -lvl 4 -x 1340 -y 760 -defaultsOSRD +preplace portBus Drive_DIR_1 -pg 1 -lvl 4 -x 1340 -y 240 -defaultsOSRD +preplace portBus Drive_DIR_2 -pg 1 -lvl 4 -x 1340 -y 260 -defaultsOSRD +preplace portBus Drive_DIR_3 -pg 1 -lvl 4 -x 1340 -y 280 -defaultsOSRD +preplace portBus Drive_DIR_4 -pg 1 -lvl 4 -x 1340 -y 300 -defaultsOSRD +preplace portBus NENBL_1 -pg 1 -lvl 4 -x 1340 -y 440 -defaultsOSRD +preplace portBus DIR_1 -pg 1 -lvl 4 -x 1340 -y 380 -defaultsOSRD +preplace portBus M0_1 -pg 1 -lvl 4 -x 1340 -y 400 -defaultsOSRD +preplace portBus M1_1 -pg 1 -lvl 4 -x 1340 -y 420 -defaultsOSRD +preplace portBus CONFIG_1 -pg 1 -lvl 4 -x 1340 -y 360 -defaultsOSRD +preplace portBus NSLEEP_1 -pg 1 -lvl 4 -x 1340 -y 460 -defaultsOSRD +preplace portBus CONFIG_2 -pg 1 -lvl 4 -x 1340 -y 500 -defaultsOSRD +preplace portBus DIR_2 -pg 1 -lvl 4 -x 1340 -y 520 -defaultsOSRD +preplace portBus M0_2 -pg 1 -lvl 4 -x 1340 -y 540 -defaultsOSRD +preplace portBus M1_2 -pg 1 -lvl 4 -x 1340 -y 560 -defaultsOSRD +preplace portBus NENBL_2 -pg 1 -lvl 4 -x 1340 -y 580 -defaultsOSRD +preplace portBus NSLEEP_2 -pg 1 -lvl 4 -x 1340 -y 600 -defaultsOSRD +preplace portBus CONFIG_3 -pg 1 -lvl 4 -x 1340 -y 640 -defaultsOSRD +preplace portBus DIR_3 -pg 1 -lvl 4 -x 1340 -y 660 -defaultsOSRD +preplace portBus M0_3 -pg 1 -lvl 4 -x 1340 -y 680 -defaultsOSRD +preplace portBus M1_3 -pg 1 -lvl 4 -x 1340 -y 700 -defaultsOSRD +preplace portBus NENBL_3 -pg 1 -lvl 4 -x 1340 -y 720 -defaultsOSRD +preplace portBus NSLEEP_3 -pg 1 -lvl 4 -x 1340 -y 740 -defaultsOSRD preplace inst processing_system7_0 -pg 1 -lvl 1 -x 240 -y 160 -defaultsOSRD preplace inst rst_ps7_0_100M -pg 1 -lvl 1 -x 240 -y 420 -defaultsOSRD -preplace inst axi_interconnect_0 -pg 1 -lvl 2 -x 640 -y 460 -defaultsOSRD -preplace inst drive -pg 1 -lvl 3 -x 1010 -y 210 -defaultsOSRD -preplace inst gantry -pg 1 -lvl 3 -x 1010 -y 560 -defaultsOSRD +preplace inst axi_interconnect_0 -pg 1 -lvl 2 -x 730 -y 460 -defaultsOSRD +preplace inst drive -pg 1 -lvl 3 -x 1165 -y 210 -defaultsOSRD +preplace inst gantry -pg 1 -lvl 3 -x 1165 -y 560 -defaultsOSRD preplace netloc Drive_Dir1 1 3 1 NJ 220 preplace netloc drive_DAC_1_INA 1 3 1 NJ 160 preplace netloc drive_DAC_1_INB 1 3 1 NJ 180 preplace netloc drive_DAC_2_INA 1 3 1 NJ 200 -preplace netloc drive_Drive_DIR_1 1 3 1 1160 240n -preplace netloc drive_Drive_DIR_3 1 3 1 1150 260n +preplace netloc drive_Drive_DIR_1 1 3 1 1320 240n +preplace netloc drive_Drive_DIR_3 1 3 1 1310 260n preplace netloc gantry_CONFIG_1 1 3 1 NJ 360 preplace netloc gantry_CONFIG_2 1 3 1 NJ 500 preplace netloc gantry_CONFIG_3 1 3 1 NJ 640 @@ -1400,36 +1447,37 @@ preplace netloc gantry_NSLEEP_3 1 3 1 NJ 740 preplace netloc gantry_STEP_1 1 3 1 NJ 480 preplace netloc gantry_STEP_2 1 3 1 NJ 620 preplace netloc gantry_STEP_3 1 3 1 NJ 760 -preplace netloc processing_system7_0_FCLK_CLK0 1 0 3 40 520 500 830 870 -preplace netloc processing_system7_0_FCLK_RESET0_N 1 0 2 50 320 430 -preplace netloc rst_ps7_0_100M_peripheral_aresetn 1 1 2 490 90 820 -preplace netloc step_clk_1 1 1 2 430J 70 830 -preplace netloc axi_interconnect_0_M00_AXI 1 2 1 780 150n -preplace netloc axi_interconnect_0_M01_AXI 1 2 1 790 170n -preplace netloc axi_interconnect_0_M02_AXI 1 2 1 800 190n -preplace netloc axi_interconnect_0_M03_AXI 1 2 1 850 210n -preplace netloc axi_interconnect_0_M04_AXI 1 2 1 860 230n -preplace netloc axi_interconnect_0_M05_AXI 1 2 1 860 450n -preplace netloc axi_interconnect_0_M06_AXI 1 2 1 850 470n -preplace netloc axi_interconnect_0_M07_AXI 1 2 1 840 490n -preplace netloc axi_interconnect_0_M08_AXI 1 2 1 800 510n -preplace netloc axi_interconnect_0_M09_AXI 1 2 1 790 530n -preplace netloc axi_interconnect_0_M10_AXI 1 2 1 780 550n +preplace netloc processing_system7_0_FCLK_CLK0 1 0 3 20 520 570 70 1005 +preplace netloc processing_system7_0_FCLK_RESET0_N 1 0 2 30 320 450 +preplace netloc rst_ps7_0_100M_peripheral_aresetn 1 1 2 580 90 975 +preplace netloc step_clk_1 1 1 2 450J 50 985 +preplace netloc axi_interconnect_0_M00_AXI 1 2 1 890 150n +preplace netloc axi_interconnect_0_M01_AXI 1 2 1 900 170n +preplace netloc axi_interconnect_0_M02_AXI 1 2 1 995 190n +preplace netloc axi_interconnect_0_M03_AXI 1 2 1 1015 210n +preplace netloc axi_interconnect_0_M04_AXI 1 2 1 1025 230n +preplace netloc axi_interconnect_0_M05_AXI 1 2 1 1025 450n +preplace netloc axi_interconnect_0_M06_AXI 1 2 1 1015 470n +preplace netloc axi_interconnect_0_M07_AXI 1 2 1 995 490n +preplace netloc axi_interconnect_0_M08_AXI 1 2 1 900 510n +preplace netloc axi_interconnect_0_M09_AXI 1 2 1 890 530n +preplace netloc axi_interconnect_0_M10_AXI 1 2 1 880 550n preplace netloc axi_interconnect_0_M11_AXI 1 2 1 N 570 preplace netloc processing_system7_0_DDR 1 1 3 NJ 60 NJ 60 NJ preplace netloc processing_system7_0_FIXED_IO 1 1 3 NJ 80 NJ 80 NJ -preplace netloc processing_system7_0_M_AXI_GP0 1 1 1 450 120n -preplace netloc processing_system7_0_M_AXI_GP1 1 1 1 440 140n -levelinfo -pg 1 0 240 640 1010 1180 -pagesize -pg 1 -db -bbox -sgen -120 0 1350 850 +preplace netloc processing_system7_0_M_AXI_GP0 1 1 1 470 120n +preplace netloc processing_system7_0_M_AXI_GP1 1 1 1 460 140n +levelinfo -pg 1 0 240 730 1165 1340 +pagesize -pg 1 -db -bbox -sgen -120 0 2430 2220 " } # Restore current instance current_bd_instance $oldCurInst - validate_bd_design save_bd_design +common::send_gid_msg -ssname BD::TCL -id 2050 -severity "WARNING" "This Tcl script was generated from a block design that has not been validated. It is possible that design <$design_name> may result in errors during validation." + close_bd_design $design_name } # End of cr_bd_mercury() @@ -1450,7 +1498,7 @@ set_property USED_IN_SYNTHESIS "1" [get_files mercury.bd ] #call make_wrapper to create wrapper files if { [get_property IS_LOCKED [ get_files -norecurse mercury.bd] ] == 1 } { - import_files -fileset sources_1 [file normalize "${origin_dir}/../../../../../../../home/nwdepatie/mercury/mercury.gen/sources_1/bd/mercury/hdl/mercury_wrapper.v" ] + import_files -fileset sources_1 [file normalize "${origin_dir}/mercury/mercury.gen/sources_1/bd/mercury/hdl/mercury_wrapper.v" ] } else { set wrapper_path [make_wrapper -fileset sources_1 -files [ get_files -norecurse mercury.bd] -top] add_files -norecurse -fileset sources_1 $wrapper_path @@ -1497,7 +1545,7 @@ set_property -name "constrset" -value "constrs_1" -objects $obj set_property -name "description" -value "Vivado Synthesis Defaults" -objects $obj set_property -name "flow" -value "Vivado Synthesis 2023" -objects $obj set_property -name "name" -value "synth_1" -objects $obj -set_property -name "needs_refresh" -value "0" -objects $obj +set_property -name "needs_refresh" -value "1" -objects $obj set_property -name "srcset" -value "sources_1" -objects $obj set_property -name "incremental_checkpoint" -value "$proj_dir/mercury.srcs/utils_1/imports/synth_1/mercury_wrapper.dcp" -objects $obj set_property -name "auto_incremental_checkpoint" -value "1" -objects $obj @@ -1956,7 +2004,7 @@ set_property -name "constrset" -value "constrs_1" -objects $obj set_property -name "description" -value "Default settings for Implementation." -objects $obj set_property -name "flow" -value "Vivado Implementation 2023" -objects $obj set_property -name "name" -value "impl_1" -objects $obj -set_property -name "needs_refresh" -value "0" -objects $obj +set_property -name "needs_refresh" -value "1" -objects $obj set_property -name "pr_configuration" -value "" -objects $obj set_property -name "dfx_mode" -value "STANDARD" -objects $obj set_property -name "srcset" -value "sources_1" -objects $obj