UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

AR# 58784

Superclock module programming tcl script error (setup_scm_325_00.tcl)

Description

When running the tcl script provided with the VC7215 Reference Design files (setup_scm2_325_00.tcl) to set up the Superclock module, an ERROR occurs in the TCL console:

 ERROR: [Common 17-55] 'get_property' expects at least one object.
    while executing
"get_property INPUT_VALUE [get_hw_probes {u_vio_sclk2_control/si570_freq}]"
    (procedure "configure_scm2" line 36)
    invoked from within
"configure_scm2 $freq"
    (file "./setup_scm2_325_00.tcl" line 101)

 

This is due to a missing prefix in the frequency validation sequence.  

NOTE: This does not affect the frequency being written to the Superclock module, only in the readback.

Additionally, since the value written is in MHz with 2 decimal places, the readback value does not always match the one written.

Solution

Change lines 77 and 78 from:

 

 set si570_freq [get_property INPUT_VALUE [get_hw_probes {u_vio_sclk2_control/si570_freq}]]
 set si5368_freq [get_property INPUT_VALUE [get_hw_probes {u_vio_sclk2_control/si5368_freq}]]

to:

 set si570_freq [get_property INPUT_VALUE [get_hw_probes {u_scm2/u_vio_sclk2_control/si570_freq}]]
 set si5368_freq [get_property INPUT_VALUE [get_hw_probes {u_scm2/u_vio_sclk2_control/si5368_freq}]]

 

To compare the 2 values properly, (in MHz with 2 decimal places), replace the code on lines 80-90 with:

    # The script input has 5 digits of precision and the VIO console has 6.  Round off the VIO value
 set si570_freq [expr round([expr $si570_freq/10])]
 set si5368_freq [expr round([expr $si5368_freq/10])]
 set si570_freq [expr $si570_freq * 10]
 set si5368_freq [expr $si5368_freq * 10]
 if {$expected_freq == $si570_freq} {
  puts "Si570 has expected frequency: $expected_freq"
 } else {
  puts "Si570 does not have expected frequency (${expected_freq}) : $si570_freq"
 }
 
 if {$expected_freq == $si5368_freq} {
  puts "Si5368 has expected frequency: $expected_freq"
 } else {
  puts "Si5368 does not have expected frequency (${expected_freq}) : $si5368_freq"
 }
 
An updated version of the TCL script has been attached.

Attachments

Associated Attachments

Name File Size File Type
setup_scm2_325_00_updated.tcl 5 KB TCL
AR# 58784
Date Created 12/12/2013
Last Updated 06/25/2014
Status Active
Type General Article
Devices
  • Virtex-7
Tools
  • Vivado Design Suite - 2013.3
Boards & Kits
  • Virtex-7 FPGA VC7215 Characterization Kit