• Skip to main content
  • Skip to search
  • Skip to footer
Cadence Home
  • This search text may be transcribed, used, stored, or accessed by our third-party service providers per our Cookie Policy and Privacy Policy.

  1. Community Forums
  2. Digital Implementation
  3. soc encounter-sdc file error

Stats

  • Locked Locked
  • Replies 9
  • Subscribers 94
  • Views 17728
  • Members are here 0
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

soc encounter-sdc file error

shrene82
shrene82 over 15 years ago

Hi friends

Iam working on cadence soc encounter.

Iam using the technology library from OSU AMI 0.5 u 

Consider the following vhdl code for byte multipleser

...............................................................................

library ieee;
use ieee.std_logic_1164.all;
 
entity bytemux is
port(       md : in std_logic_vector(31 downto 0);
            sd : in std_logic_vector(31 downto 0);
            be : in std_logic_vector(3 downto 0);
     bytedata : out std_logic_vector(31 downto 0));
end bytemux;
....................................... ...................................

i have the follwing sdc file

set sdc_version 1.5
# Set the current design
current_design bytemux

set_wire_load_mode "enclosed"
set_max_dynamic_power 450 uW

...................................................................

My RTL import was successful in soc encounter 8.1

But when i tried the RTL synthesis i get the following error

____________________________________________________________

Statistics for commands executed by read_sdc:
 "current_design"          - successful      1 , failed      0 (runtime  0.00)
 "set_max_dynamic_power"   - successful      1 , failed      0 (runtime  0.00)
 "set_wire_load_mode"      - successful      1 , failed      0 (runtime  0.00)
Total runtime 0

EC INFO: Total cpu-time and memory after CONSTRAINT: 8 sec., 25.32 MBytes.

Error   : A required object parameter could not be found. [TUI-61] [path_group]
        : An object of type 'instance|external_delay|clock|port|pin' named '' could not be found.
        : Check to make sure that the object exists and is of the correct type.  The 'what_is' command can be used to determine the type of an object.
  path_group: assigns certain paths to a cost group

Usage: path_group [-mode <mode>]
           [-from <instance|external_delay|clock|port|pin>+]
           [-through <instance|port|pin>+]+
           [-to <instance|external_delay|clock|port|pin>+] [-paths <string>]
           [-setup] [-hold] [-name <string>] -group <cost_group>
 

Can somebody let me know where the error is

I think i made a simple syntax error somewhere

 

  • Cancel
  • archive
    archive over 15 years ago

     Hi,

    Encounter (Enc) uses RTL Compiler (RC) to do synthesis. The error message you are seeing is coming from RC. It looks like something may have happened when the design was being passed from Enc to RC. All of the interface files should live in a directory in your working directory. Look for something with EC in the name. I would take a look at the batch script in that directory in particular.

    Debugging issues like this is often easier from the RC cockpit. You could use the script in the EC directory to run RC directly. Once you hit the error issue 'echo $errorInfo' to see the TCL stack trace. Do this immediately after you hit the error. This helps to narrow down the issue. Feel free to report back with the contents of the errorInfo var.

    Also, do you know what version of RC you are using. This will be shown in the logfile upon invocation of RC.

    Matt

     

     

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • grasshopper
    grasshopper over 15 years ago
     Hi,

    I Just cut and pasted and put into a script the exact information you sent and I did not get any errors in RC81 or RC91. Please review and post your findings to the community. If you want, provide your script and maybe the problem is there

    Regards,

    gh-
    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • shrene82
    shrene82 over 15 years ago

    hi matt.

    I found the ec.tcl script in the folder n2n_input.The relevant part of path_groups is shown below

     # creating cost/path-groups
    if {[llength [all::all_seqs]] > 0} {
      define_cost_group -name I2C -design $ec::MODULE
      define_cost_group -name C2O -design $ec::MODULE
      path_group -from [all::all_inps] -to [all::all_seqs] -group I2C -name I2C
      path_group -from [all::all_seqs] -to [all::all_outs] -group C2O -name C2O
    }
    define_cost_group -name I2O -design $ec::MODULE
    path_group -from [all::all_inps] -to [all::all_outs] -group I2O -name I2O

    I wrote the sdc file in the above format

    But still no joy

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • archive
    archive over 15 years ago
     Hi,

    I used the above along with a testcase from a colleague and still was unable to reproduce the issue. I tried 8.1.100 as well as 9.1.100. Have you been able to get the $errorInfo? You should be able to do 'rc -f ec.tcl' to run the design then do 'echo $errorInfo' when the failure occurs.
    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • shrene82
    shrene82 over 15 years ago

     hi mrardon

    I have a typical problem.When i work with any sequential circuit,i dont have a problem with my RTL compiler. It is able to execute and synthesise properly. But when i work with a combinational circuit i get the following error

    Error   : A required object parameter could not be found. [TUI-61] [path_group]
            : An object of type 'instance|external_delay|clock|port|pin' named '' could not be found.
            : Check to make sure that the object exists and is of the correct type.  The 'what_is' command can be used to determine the type      of    an object.
      path_group: assigns certain paths to a cost group 

    EC ERROR: RC could not finish successfully. Force an exit now. (Failed on path_group -from {} -to {} -group C2C -name C2C)

    I worked with few simple examples like shift register, multiplexer etc.

    My RTL compiler is version v08.10-s108_1 (32-bit) built Jul 29 2008

    I would suggest you to send me any vhdl and sdc file for a combinational circuit.

    Let me work and get back to you regarding the error. Let the sdc file also have a virtual clock.

    I feel my sdc file may have error with respect to the creation of virtual clock

    Thanks and regards

    Srinivasan

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • archive
    archive over 15 years ago

     Based on the error message...

     EC ERROR: RC could not finish successfully. Force an exit now. (Failed on path_group -from {} -to {} -group C2C -name C2C)

     It looks like the script has something like...

    path_group -from [all::all_seqs] -to [all::all_seqs] -group C2C -name C2C

    which fails since [all::all_seqs] returns null. I see in the snippet from a previous reply that this is inside an 'if' construct that checks for the null condition. Is that the way that the construct is in the EC script?

    If the EC script does not have the path_group command within an if construct that checks for a null condition then I think your best bet would be to file a service request on support.cadence.com or to contact the support center at 877-CDS-4911.  

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • shrene82
    shrene82 over 15 years ago

     hi mrardon

    The tcl script of ec is shown below...

    This ec.tcl file is located inside n2n_input folder

    # creating cost/path-groups
    if {[llength [all::all_seqs]] > 0} {
      define_cost_group -name I2C -design $ec::MODULE
      define_cost_group -name C2O -design $ec::MODULE
      path_group -from [all::all_inps] -to [all::all_seqs] -group I2C -name I2C
      path_group -from [all::all_seqs] -to [all::all_outs] -group C2O -name C2O
    }
    define_cost_group -name I2O -design $ec::MODULE
    path_group -from [all::all_inps] -to [all::all_outs] -group I2O -name I2O


    As u said i have the if loop in the script.

     Also i have the r2g.tcl script which also gets executed and gets updated

    #####################################################################
    # Define cost groups (clock-clock, clock-output, input-clock, input-output)
    #####################################################################

    define_cost_group -name I2C
    define_cost_group -name C2O
    define_cost_group -name I2O
    define_cost_group -name C2C
    path_group -from [all des seqs] -to [all des seqs] -group C2C -name C2C
    path_group -from [all des seqs] -to [all des outs] -group C2O -name C2O
    path_group -from [all des inps] -to [all des seqs] -group I2C -name I2C
    path_group -from [all des inps] -to [all des outs] -group I2O -name I2O

     This r2g.tcl script is located inside the r2g_input folder

    But this does not have the if loop

    So can i say that th error is in the r2g.tcl script

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • archive
    archive over 15 years ago

     Yes, I would say that the error is coming from r2g.tcl.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • trurle
    trurle over 15 years ago

    Ok, source of error is clear. But how to edit r2g script? It have the "save" button and can be saved in the SOC encounter 8.1 synthesis form, but the r2g.tcl script contents is not editable (does not respond to any keyboard input).

    If you edit r2g.tcl by external editor, modified file will be owerwritten by the SOC - so nofix is possible anyway.

    Any suggestions?

     Actually in my SOC installation all text input fields does not work. Seems weird bug with the keyboard. But in Cadence IC and all other software keyboard is working properly.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel

Community Guidelines

The Cadence Design Communities support Cadence users and technologists interacting to exchange ideas, news, technical information, and best practices to solve problems and get the most from Cadence technology. The community is open to everyone, and to provide the most value, we require participants to follow our Community Guidelines that facilitate a quality exchange of ideas and information. By accessing, contributing, using or downloading any materials from the site, you agree to be bound by the full Community Guidelines.

© 2025 Cadence Design Systems, Inc. All Rights Reserved.

  • Terms of Use
  • Privacy
  • Cookie Policy
  • US Trademarks
  • Do Not Sell or Share My Personal Information