Intel® Quartus® Prime Software
Intel® Quartus® Prime Design Software, Design Entry, Synthesis, Simulation, Verification, Timing Analysis, System Design (Platform Designer, formerly Qsys)
Announcements
Intel Support hours are Monday-Fridays, 8am-5pm PST, except Holidays. Thanks to our community members who provide support during our down time or before we get to your questions. We appreciate you!

Need Forum Guidance? Click here
Search our FPGA Knowledge Articles here.

passing value to tcl

s002wjh
New Contributor I
381 Views

is there anyway to pass value to a variable in side the tcl.  either from tcl console under quartus or using quartus_sh under linux?

for example

i have text.tcl, inside is

   set test  0

 

in my cmd line  i want to     

quartus_sh  -t test.tcl  test =5  

or in tcl console/

source test.tcl test=5

0 Kudos
1 Solution
s002wjh
New Contributor I
325 Views

thx.  seem "exec" would work but everytime i try

exec quartus_sh -t top.tcl 5   it just freeze quartus

View solution in original post

7 Replies
Heiko
Novice
368 Views

You could do

quartus_sh -t test.tcl 5

And in test.tcl have

set test [lindex $argv 0]

 

That takes the zeroth input argument, in this case 5, and assigns it to a variable test.

RichardTanSY_Intel
345 Views

May I know whether the suggestion from Heiko help in your case?
Do you need further help on this?

Best Regards,
Richard Tan

p/s: If any answer from the community or Intel support are helpful, please feel free to give Kudos. 

s002wjh
New Contributor I
342 Views

it help on linux side, but what about tcl console in quartus?

when i try quartus_sh i got these errors

 

Error:invalid command name "quartus_sh"

Error:    while executing
Error:"unknown_original quartus_sh -t top_all.tcl 5"
Error:    ("eval" body line 1)
Error:    invoked from within
Error:"eval unknown_original $cmd $args"
Error:    (procedure "::unknown" line 7)
Error:    invoked from within
Error:"quartus_sh -t top_all.tcl 5"
Heiko
Novice
333 Views

If you're running it from the tcl console the quartus_sh is not a valid command. Because (*I think) the tcl console in the quartus user interface is actually just the quartus_sh executable running in interactive mode.

To call quartus_sh from the tcl  console  you could use the exec command.

Following your example

exec quartus_sh -t top_all.tcl 5

 

Not sure if that is the most elegant solution to your problem. But it should work.

s002wjh
New Contributor I
326 Views

thx.  seem "exec" would work but everytime i try

exec quartus_sh -t top.tcl 5   it just freeze quartus

RichardTanSY_Intel
296 Views

You may need to run it using command prompt. For best results, run shell commands and Intel® Quartus® Prime executables from a system command prompt outside of the Intel® Quartus® Prime software GUI. 

Best Regards,
Richard Tan

p/s: If any answer from the community or Intel support are helpful, please feel free to give Kudos. 

RichardTanSY_Intel
270 Views

I believe that you got the answer to your inquiry. With that, I will now transition this thread to community support. If you have a new question, feel free to open a new thread to get the support from Intel experts. Otherwise, the community users will continue to help you on this thread. Thank you.

Best Regards,
Richard Tan

p/s: If any answer from the community or Intel support are helpful, please feel free to give Kudos. 

Reply