• 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. Custom IC SKILL
  3. skill script sum list elements using plus command

Stats

  • Locked Locked
  • Replies 4
  • Subscribers 143
  • Views 15400
  • 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

skill script sum list elements using plus command

christerNtch
christerNtch over 13 years ago

 Hi there,

Does anyone know if and how to make "plus" work for a list,

for example:

(setq taps (list 1 5 1))
(setq hSum plus(taps)) 

i.e., I want hSum = sum of elements of list "taps"

I know it works like 

plus(1 5 1) = 7

but I have rather long list (which is also input parameter in my script)

 thanks for any help

  • Cancel
  • skillUser
    skillUser over 13 years ago

    Hi Christer,

    What you need is the "apply" function so that you can apply the function to a list of values which will ultimately form the functions' arguments:

    (setq hSum (apply 'plus taps))
    => 7

    Hopefully this answers your question.

    Best regards,

    Lawrence.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • christerNtch
    christerNtch over 13 years ago

     yes thanks, thats exactly what i was wondering

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • christerNtch
    christerNtch over 13 years ago

     I also have another question I dont know if it is appropriate to ask in this post. In my script I instantiate two blocks and now I want to connect them with a bus. which command should be used? and how?

    should I first make a net and then connect each terminal to this net in different lines of script?

    BR

    //

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • skillUser
    skillUser over 13 years ago

    Hi Christer,

    probably best to start a new thread.  However, I don't think I've done this before entirely in SKILL.  I assme this is a schematic?  I think that you would create each bit signal of the bus and then connect the instance terminals (instTerms) to each net in turn.  I think that you would also have to take care of creating the instTerms yourself (this is done automatically when you create wire connections in the GUI). Which version are you using?

    Regards,

    Lawrence.

    • 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