Class VerilogElaborator


  • public final class VerilogElaborator
    extends VerilogSyntaxBackend
    VerilogElaborator implements a simple elaboration engine.

    [IEEE Std 1364-2005] 12.8 Elaboration Elaboration is the process that occurs between parsing and simulation. It binds modules to module instances, builds the model hierarchy, computes parameter values, resolves hierarchical names, establishes net connectivity, and prepares all of this for simulation. With the addition of generate constructs, the order in which these tasks occur becomes significant.

    • Constructor Summary

      Constructors 
      Constructor Description
      VerilogElaborator​(java.lang.String name)
      Creates an elaboration engine.
      VerilogElaborator​(java.lang.String name, java.lang.String moduleName)
      Creates an elaboration engine.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      VerilogDesign getDesign()
      Returns the elaborated design.
      java.lang.String getModuleName()
      Returns the name of the module to be elaborated.
      void setModuleName​(java.lang.String moduleName)
      Sets the name of the module to be elaborated.
      void start​(VerilogNode rootNode)
      Processes the abstract syntax tree (AST).
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • VerilogElaborator

        public VerilogElaborator​(java.lang.String name)
        Creates an elaboration engine.
        Parameters:
        name - the back-end name.
      • VerilogElaborator

        public VerilogElaborator​(java.lang.String name,
                                 java.lang.String moduleName)
        Creates an elaboration engine.
        Parameters:
        name - the back-end name.
        moduleName - the name of the module to be elaborated.
    • Method Detail

      • getModuleName

        public java.lang.String getModuleName()
        Returns the name of the module to be elaborated.
        Returns:
        the module name.
      • setModuleName

        public void setModuleName​(java.lang.String moduleName)
        Sets the name of the module to be elaborated.
        Parameters:
        moduleName - the module name.
      • getDesign

        public VerilogDesign getDesign()
        Returns the elaborated design.
        Returns:
        the elaborated design.