The Source Blocks specify an input file or CHD, and provide directives that are active when the source is read. The Source Block may contain Placement Blocks, which identify individual cells or cell hierarchies to be read.
The same file might be used in more than one Source Block, if the directives, such as cell name modification, are different in the two blocks.
The Source Blocks start with the following keyword:
The absence of any Placement Blocks defined in the Source Block implies that all cells found in the file will be read.
The filename can also be the access name of a CHD which already exists in memory. In this case, the CHD is used for access, and cell names given in Placement Blocks must include any cell name mapping which is used in the CHD.
Further, the filename can be that of a CHD saved to disk, such a with the Save button in the Cell Hierarchy Digests panel. In this case, the CHD will be read into memory, and used as the source.
In any case where a Source Block contains a Placement Block, a temporary CHD will be created anyway if one is not given, so explicitly naming the CHD may save time/space in some cases.
In cases where a CHD is named, but no Placement Blocks are given, the hierarchy of the CHD's default cell will be streamed. The default cell is the first top-level cell found in the file, or can be configured into the CHD.
The Source Blocks can be terminated with:
Within the Source Block, one may find Placement Blocks, Source Block directives, and Placement Block directives.