Starting from this post, we will talk about commonly asked interview questions related to timing constraints or SDC. The most basic question is, what are design / library objects and how to manipulate these objects.

What Are Design / Library Objects?

These objects include:

    1. Design: defined by top level module
    2. Port: input, output and inout ports in the top level design
    3. Clock
    4. Cell: submodule instances in the design
    5. Pin: submodule instance ports
    6. Net: wire or registers to connect pins
    7. Library name
    8. Library cell

We can use the following commands to retrieve these objects:

How To Manipulate These Objects?

The following example shows how to access collections of objects:

The following example shows how to add to and remove from the collections:

The following example shows how to filter collections:

Note, other than “=~”, there are other relational operators: “==”, “!=”, “>”, “<”, “>=”, “<=”, and “!~”.

The following example shows how to iterate through collections:

Conclusions

In companies like Google and Facebook, interviewers prefer candidates with strong coding and scripting background. Getting familiar with these basic commands helps interviewees to succeed in coding questions.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.