Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Negligible Power Values #2108

Open
suhanimitra opened this issue Nov 26, 2023 · 5 comments
Open

Negligible Power Values #2108

suhanimitra opened this issue Nov 26, 2023 · 5 comments

Comments

@suhanimitra
Copy link

I have been trying to run a single-module Verilog file of mine but keep getting power values ~0 mw in the SiliconCompiler output. I've changed the period and tried numerous technology nodes (asap7, freepdk45, etc), but all are giving me the same issue. I get cellarea, memory, and other values but power doesn't have a value. I've also had this occur for other Verilog files of mine and am not sure how to address this. I have included the metrics table from this run below.

Screenshot 2023-11-26 at 3 26 53 PM
@gadfort
Copy link
Contributor

gadfort commented Nov 29, 2023

@suhanimitra I would check that you have a clock defined in your design. Without one, I think you would just get leakage power which is fairly small. The default units for the power is mW, which may be too large for a small design. Before the run begins you may want to switch the units to uW, by chip.set('unit', 'power', 'uw') (https://docs.siliconcompiler.com/en/latest/reference_manual/schema.html#param-unit-power-ref)

@suhanimitra
Copy link
Author

I had a clocked defined using chip.clock('clk', period=1000) in my python file. I also tried rerunning my file after changing the units of power using chip.set('unit', 'power', 'uw'), but am still getting the same power values as I initially did. I'm not sure if the unit change is working though, as the HTML file still shows the units as "mw". This is what my python file looks like:
Screenshot 2023-12-01 at 12 22 08 AM

@gadfort
Copy link
Contributor

gadfort commented Dec 1, 2023

I'm sorry, I was wrong, I meant to set the units for the metric itself.
chip.set('metric', 'power', 'uw', field='unit')

The units you are setting currently do not effect anything.
For asap7, a clock period of 1000ns is very large which will also contribute to the low power. You may want to consider lowering that some.

@suhanimitra
Copy link
Author

No worries!

I tried running it again, with chip.set('metric', 'peakpower', 'uw', field='unit') and a lower period of 100, but am only getting values of ~0.031 uw which is still quite small. Is there anything else that could be causing these power values to be so low?

@gadfort
Copy link
Contributor

gadfort commented Dec 6, 2023

Without knowing what the design is it's hard to estimate if the power numbers are off. Certainly running a 7nm process as 10MHz will power your power

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants