diff --git a/vpr/src/pack/prepack.h b/vpr/src/pack/prepack.h index 8fe2c583ec..d367e873ad 100644 --- a/vpr/src/pack/prepack.h +++ b/vpr/src/pack/prepack.h @@ -56,9 +56,15 @@ enum class e_pack_pattern_molecule_type : bool { * @brief Represents a grouping of atom blocks that match a pack_pattern, * these groups are intended to be placed as a single unit during packing * - * A chain is a special type of pack pattern. A chain can extend across multiple logic blocks. - * Must segment the chain to fit in a logic block by identifying the actual atom that forms the root of the new chain. - * Assumes that the root of a chain is the primitive that starts the chain or is driven from outside the logic block + * A chain is a special type of pack pattern since it can extend across multiple + * logic blocks. The prepacker segments the chain into molecules that each fit + * in a logic block by identifying the atom that forms the root of the chain, + * and starting the first molecule from it. Long chains can lead to multiple + * molecules; a new molecule is created as the chain is traversed every time we + * exceed the maximum number of bits a single logic block can implement. The + * MoleculeChainId can be used to identify the molecules that are part of the + * same chain; it is set to Invalid if a given molecule did not come from a + * chain. */ class t_pack_molecule { public: