RE: [sv-bc] $unit::m or $root.m in module instance?

From: Michael \(Mac\) McNamara <mcnamara_at_.....>
Date: Thu Oct 12 2006 - 08:13:44 PDT
Gord writes:

  The current restrictions make non-trivial cases infeasible; if
  no one really cares about it, I'd rather leave this as a simpler
  model rather than making all the interactions more complex.


And I agree.

I envision the use of local modules to be very specific, and intended to
be essentially a declarative task which has local storage.  

These are powerful for object oriented coding and really should have
simple syntax.

If one wants to instantiate another module that has the same name as a
local model, one can build a wrapper module which instantiates the
global, and instantiate that:

module nest(a,b);
endmodule

module top;
      module nest;
      endmodule

	// local nest
      nest n1(a,b);

	// global nest;
	Nest_w n2(b,c);

endmodule

module nest_w (a,b);
	nest n1 (a,b);
endmodule

Moreover, one should really adopt a naming convention for local modules
in order to make understanding the code easier, and also to greatly
reduce the risk of overlap:

module top;
      module local_to_top_nest;
      endmodule

	// local nest
      Local_to_top_nest n1(a,b);

	// global nest;
	nest n2(b,c);

endmodule
Received on Thu Oct 12 08:13:52 2006

This archive was generated by hypermail 2.1.8 : Thu Oct 12 2006 - 08:14:08 PDT