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

Liberty updates for power char and bus deinjfiotn #80

Open
wants to merge 17 commits into
base: dev
Choose a base branch
from

Conversation

dratchkov
Copy link

This pull request contains 2 changes:

  • Power characterization subtracts leakage from the total power measurements - 50x measured power over the last 2% of period is subtracted from total power measurement. gen_meas_power gets an additional 'leakage' parameter to indicate if this is a leakage-only measurement (in which case leakage is not subtracted) or not.
  • Liberty bus definitions were inverted, i.e. it was din[0:7] instead of din[7:0]

I don't know who to not include the modified .gitignore in this pull request.

@mguthaus
Copy link
Collaborator

mguthaus commented Jul 13, 2020 via email

@dratchkov
Copy link
Author

dratchkov commented Jul 13, 2020 via email

@dratchkov
Copy link
Author

I pushed a new commit, which includes a merge of your dev branch, and the .gitignore. This should bring us at the same level, .gitignore wise.

@dratchkov
Copy link
Author

I have also added the following additional enhancements:

  • Fix for leakage subtraction from dynamic power measurements (removed the 50X factor)
  • Added --num_threads command line option
  • Modified POST=0 if purge_temp is True, else POST=1.

@dratchkov
Copy link
Author

This code also adds support for Empyrean's ALPS simulator.

@mguthaus
Copy link
Collaborator

mguthaus commented Aug 3, 2020

Hi David,

I'm seeing some regression issues with this contribution:

runTest (21_hspice_delay_test.timing_sram_test) ... ERROR: file testutils.py: line 151: NOT CLOSE disabled_write1_power -0.006 0.187 diff=103.1%
ERROR: file testutils.py: line 151: NOT CLOSE write1_power 0.032 0.266 diff=87.8%
ERROR: file testutils.py: line 151: NOT CLOSE write0_power 0.095 0.333 diff=71.5%
ERROR: file testutils.py: line 151: NOT CLOSE read0_power 0.205 0.301 diff=31.8%
ERROR: file testutils.py: line 151: NOT CLOSE disabled_write0_power 0.047 0.178 diff=73.7%
ERROR: file testutils.py: line 151: NOT CLOSE read1_power 0.205 0.301 diff=31.7%
ERROR: file testutils.py: line 139: Results exceeded 25.0% tolerance compared to golden results:

Also, the .lib results in the "golden" directory have changed. If the new ones are correct, can you update them with correct results?
file1=/tmp/openram_gitlab-runner_18147_temp//sram_2_16_1_freepdk45_FF_1p0V_25C.lib
file2=/home/gitlab-runner/builds/2fd64746/0/mrg/PrivateRAM/compiler/tests/golden/sram_2_16_1_freepdk45_FF_1p0V_25C_analytical.lib
ERROR: file testutils.py: line 242: MISMATCH Line (64):
downto : true;
!=
}
ERROR: file testutils.py: line 242: MISMATCH Line (65):
}
!=
ERROR: file testutils.py: line 242: MISMATCH Line (66):
!=
type (addr){
ERROR: file testutils.py: line 242: MISMATCH Line (67):
type (addr){
!=
base_type : array;
ERROR: file testutils.py: line 242: MISMATCH Line (68):
base_type : array;
!=
data_type : bit;
ERROR: file testutils.py: line 242: MISMATCH Line (69):
data_type : bit;
!=
bit_width : ;
ERROR: file testutils.py: line 242: MISMATCH Line (70):
bit_width : ;
!=
bit_from : ;
ERROR: file testutils.py: line 242: MISMATCH Line (71):
bit_from : ;
!=
bit_to : ;
ERROR: file testutils.py: line 242: MISMATCH Line (72):
bit_to : ;
!=
}
ERROR: file testutils.py: line 242: MISMATCH Line (73):
downto : true;
!=
ERROR: file testutils.py: line 242: MISMATCH Line (74):
}
!=
cell (sram____freepdk){

@dratchkov
Copy link
Author

dratchkov commented Aug 4, 2020 via email

@mguthaus
Copy link
Collaborator

There are still errors in the unit tests, but this may just be replacing the "golden" results with updated ones. I'll take a look at this soon.

@dratchkov
Copy link
Author

dratchkov commented Sep 29, 2020 via email

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

Successfully merging this pull request may close these issues.

3 participants