0

I have a theoretical question regarding tcl commands, specifically ipx.

I am working with a project which contains several IPs. Each IP has a corresponding tcl file which is used to package such IP to include it in the IP catalog. Studying the code, I encountered with several tcl commands that I have found easily in the corresponding user guide (UG835). Nonetheless, there are some other commands that begin with ipx:: (e.g. ipx::package_project).

I have looked for information regarding ipx and I haven't found anything that helps me understand what it exactly is. The little I have found indicates that it is an IP integrator, but I haven't found neither a formal definition nor an explanation of how it's used. Also, I haven't found any user guide that contains a detailed explanation about these ipx commands (ipx::package_project, ipx::add_subcore).

Does anybody know what ipx exactly is, why it is used (I'm guessing for package integration) and where can I find information about its commands?

anmomu
  • 161
  • 1
  • 6
  • 1
    `ipx` is not a command of TCL itself, but something Vivado's TCL libraries has, just in case that help un-confuse you about documentation. – Marcus Müller Jun 23 '21 at 10:30
  • @MarcusMüller Ok, but things like `package_project` or `add_subcore` (in `ipx::package_project` and `ipx::add_subcore`, respectively) are commands, aren't they? The double colon looks like the resolution operator used in *C++* but I don't know if it serves the same purpose as I haven't found any information in that regard. – anmomu Jun 23 '21 at 10:40
  • 1
    That means `ipx` is a Tcl _namespace_ and `package_project` is a procedure defined within that namespace. You might find this chapter of the Tcl tutorial helpful: http://www.tcl-lang.org/man/tcl8.5/tutorial/Tcl31.html – glenn jackman Jun 23 '21 at 18:20

0 Answers0