Visible to Intel only — GUID: mwh1410471011053
Ixiasoft
Visible to Intel only — GUID: mwh1410471011053
Ixiasoft
2.7.7. Fit a Design Using Multiple Seeds
Because the top-level entity in the project does not have the same name as the project, you must specify the revision name for the top-level entity with the --rev option. The --seed option specifies the seeds to use for fitting.
A seed is a parameter that affects the random initial placement of the Intel® Quartus® Prime Fitter. Varying the seed can result in better performance for some designs.
After each fitting attempt, the script creates new directories for the results of each fitting attempt and copies the complete project to the new directory so that the results are available for viewing and debugging after the script has completed.
#!/bin/sh
ERROR_SEEDS=""
quartus_syn fir_filter --rev=filtref
# Iterate over a number of seeds
for seed in 1 2 3 4 5
do
echo "Starting fit with seed=$seed"
# Perform a fitting attempt with the specified seed
quartus_fit fir_filter --seed=$seed --rev=filtref
# If the exit-code is non-zero, the fitting attempt was
# successful, so copy the project to a new directory
if [ $? -eq 0 ]
then
mkdir ../fir_filter-seed_$seed
mkdir ../fir_filter-seed_$seed/db
cp * ../fir_filter-seed_$seed
cp db/* ../fir_filter-seed_$seed/db
else
ERROR_SEEDS="$ERROR_SEEDS $seed"
fi
done
if [ -z "$ERROR_SEEDS" ]
then
echo "Seed sweeping was successful"
exit 0
else
echo "There were errors with the following seed(s)"
echo $ERROR_SEEDS
exit 1
fi