add clockgate to makefile, add Density to sim pass

This commit is contained in:
Neil Deo 2025-08-07 18:07:15 -07:00
parent c4b20f14ea
commit 88816e390e
2 changed files with 3 additions and 0 deletions

View File

@ -755,6 +755,7 @@ OBJS += passes/techmap/demuxmap.o
OBJS += passes/techmap/muxcover.o
OBJS += passes/techmap/aigmap.o
OBJS += passes/techmap/attrmap.o
OBJS += passes/techmap/clockgate.o
include $(YOSYS_SRC)/passes/hierarchy/Makefile.inc
include $(YOSYS_SRC)/passes/memory/Makefile.inc

View File

@ -2524,6 +2524,8 @@ struct AnnotateActivity : public OutputWriter {
std::vector<double_t> &clktoggleCounts = itr->second.toggleCounts;
double clk_period = real_timescale * (double)max_time / (clktoggleCounts[0] / 2.0);
double frequency = 1.0 / clk_period;
double density = clktoggleCounts[0] / (real_timescale * (double)max_time);
worker->top->module->set_string_attribute("$DENSITY", std::to_string(density));
worker->top->module->set_string_attribute("$FREQUENCY", std::to_string(frequency));
worker->top->module->set_string_attribute("$DURATION", std::to_string(max_time));
std::stringstream ss;