Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #Run with : ./run_area_report.sh [module_names]
- for file in "$@"
- do
- module_name=$file
- if [ "$module_name" = "ahb_rom" ]
- then
- ##For the rom we need to compile and link for code.vmem
- echo "Copying code.vmem..."
- cd software
- ./compile_and_link
- cd ../
- cp ./software/code.vmem ./behavioural/
- fi
- ## Create standalone instantiation of module for synthesis
- echo "module synth_$module_name ();" > ./behavioural/synth_$module_name\.sv
- echo "$module_name synth_inst ();" >> ./behavioural/synth_$module_name\.sv
- echo "endmodule" >> ./behavioural/synth_$module_name\.sv
- mkdir $module_name\_area_report
- cd $module_name\_area_report
- # Setup env vars, PDK locations etc
- cp ../synthesis/.synopsys_dc.setup .
- . ../umc_directories.sh
- # Run synthesis and area report
- dc_shell -f ../area_report.tcl -x "set module_name $module_name"
- cd ../
- ## Cleanup
- rm ./behavioural/synth_$module_name\.sv
- rm ./behavioural/code.vmem
- done
- # Parse reports
- python3 ./extract_areas.py $@ > areas.rpt
- # CLeanup
- for file in "$@"
- do
- rm -r ./$file\_area_report
- done
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement