Subject: Re: [sv-bc] Re: implicit instantiation of top-level modules?
From: Steven Sharp (sharp@cadence.com)
Date: Thu Jul 10 2003 - 14:20:24 PDT
>Date: Thu, 10 Jul 2003 13:50:49 -0700
>From: Gordon Vreugdenhil <gvreugde@synopsys.com>
>
>This is even more important in the context of conditional
>generate where different instances of the same parent module could
>have different objects generated with the same name. In fact,
>such situations could be a slightly less insane reason to use
>relative upwards names.
If we are talking about names that start with a module name instead
of an instance name, this would be about the only way you could get
different kinds of objects from the same such name. It might also be
possible to get it by using a config to bind two different versions
of the same module to different instances.
At any rate, Shalom has an interesting point about full hierarchical
names. I have always considered the top-level modules as being instances
with the same name as the module name, and full hierarchical paths as
starting with the instance name of a top-level module (which matches
its module name). In most cases it could also be considered to be an
upward name with the module name as the first name component, but I don't
think that this really works. There can be multiple top-level modules.
An instance under one top-level module can reference a full hierarchical
name under a different top-level module. Since that other top-level
module is not an ancestor of the referencing module, it cannot be
referenced via its module name. The name must be an actual instance
name that matches the module name, or this would not work.
Steven Sharp
sharp@cadence.com
This archive was generated by hypermail 2b28 : Thu Jul 10 2003 - 14:21:46 PDT