Rent_eval_2d

This program, coded in FSharp, helps answer an end-of-chapter exercise in Modern System-on-Chip Design on Arm by DJ Greaves.

// Note that a naive fractal model, with homogeneous wiring and regular structure at each level with
// give a Rent exponent of unity, since it is self-similar between levels. The key thing to include,
// to achieve the lower exponents encountered in real-world designs (that have some design/engineering
// behind them) is the ratio of terminal contacts to gates needs to get smaller as the number of gates
// gets larger (see The Interpretation and Application of Rent’s Rule Christie& Stroobandt 2000). This
// can be programmed and the exponent will emerge, but in the example code, the Rent formula is used
// explicitly with parameters rent_alpha and rent_exponent.  Hence the average number of contacts to a
// component and the number of nets are emergent (given an average fan out figure).  The model
// averages over 20 random runs for each test and the normalised standard deviation (ie. divided by
// the mean) experienced across runs is reported as one confidence indication.  These figures are all
// in the range 10 to 20 percent, which is find for this exercise.  The program then perturbs each of
// its numeric assumptions by 5 percent to explore the partial derivatives of the assumptions.
The source code Rent_eval_2d.zip.


(C) 2023 DJ Greaves.