Parameter Purpose --addcache Add a 16 kb direct mapped cache --onlysum Only print cost total --robtable Print the ROB size comparison table --rstable Print the reservation station comparison table --comptable Print the comparison table for the three designs --tag=n Set the number of tag bits to n --trick1 Enable optimization trick1 --trick2 Enable optimization trick2
Parameter Purpose --tag=n Set the number of tag bits to n --trick1 Enable optimization trick1 --trick2 Enable optimization trick2
patht pup("pup");
The string argument is the name of the source of the data path, as used for
the printout. A data path can be extended by further components just by
adding them:
patht inv_pup=pup+cinv;
This defines a new data path called inv_pup (inverted power up). The new
signal is calculated from pup with the delay of an inverter. In order to
allow correlation of gate delays to components of the design, it is possible
to add a string to a data path. This string is the name of all gates, which
have been added since the last component. The example above is now:
patht inv_pup=pup+cinv+"inverted power up";
Most gates and circuits use more than one data path as input. The
accumulated delay of the new data path is the maximum of the accumulated
delays of all input data paths. This can be expressed as follows:
patht new_path=max(path1, path2, ....)+circuit_delay;
The max function is defined for up to four arguments. However, the
source code of the data path library can be extended to any given number of
arguments with ease. As soon as a data path ends in a register, it is stored
in a list of data paths. After all data paths in the design have been added
to that list, the max function of the pathlist is called. It returns
the data path with the maximum accumulated delay.