Skip to content

Commit

Permalink
Merge pull request #18 from AUCOHL/fix_sdffe
Browse files Browse the repository at this point in the history
updating reports
  • Loading branch information
kanndil authored Sep 28, 2023
2 parents 743939d + 63272e7 commit 7ca9882
Show file tree
Hide file tree
Showing 11 changed files with 127 additions and 125 deletions.
46 changes: 25 additions & 21 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -155,39 +155,43 @@ A detailed guide can be found [here](https://github.com/kanndil/Lighter/blob/mai

# 🔬 Power reduction analysis

| Design | \# Cells | \# Added Clock Gates | Power reduction % | \# Cells reduction % |
| ------------ | -------- | -------------------- | ----------------- | -------------------- |
| AHB_SRAM | 245 | 47 | 17.29% | 25.71% |
| blake2s | 14225 | 512 | 5.40% | \-0.54% |
| chacha | 12857 | 832 | 12.87% | \-0.27% |
| genericfir | 143703 | 1536 | 7.57% | \-0.98% |
| i2c_master | 759 | 106 | 12.97% | 10.41% |
| jpeg_encoder | 63757 | 4637 | 30.85% | 13.56% |
| ldpcenc | 19947 | 1273 | 17.66% | 5.35% |
| NfiVe32_RF | 3362 | 1024 | 30.46% | 30.58% |
| picorv32a | 14348 | 1011 | 22.38% | 12.02% |
| PPU | 10156 | 2824 | 19.61% | 31.85% |
| prv32_cpu | 2186 | 207 | 28.63% | 23.97% |
| rf_64x64 | 13461 | 4096 | 32.02% | 28.89% |
| sha512 | 20240 | 3669 | 30.24% | 13.08% |
| spi_master | 179 | 43 | 8.45% | 18.99% |
| y_quantizer | 8281 | 176 | 1.06% | 1.92% |
| zigzag | 3807 | 769 | 31.95% | 58.21% |
|Design |# Cells|# Added Clock Gates|Power reduction %|# Cells reduction %|
|----------------|-------|-------------------|-----------------|-------------------|
|AHB_SRAM |245 |47 |17.29% |25.71% |
|blabla |10589 |1098 |28.80% |3.72% |
|blake2s |14207 |1872 |33.70% |11.05% |
|blake2s_core |12971 |1353 |36.05% |12.53% |
|blake2s_m_select|4518 |512 |43.00% |22.29% |
|chacha |12857 |1936 |31.49% |4.28% |
|genericfir |143575 |11624 |32.62% |5.51% |
|i2c_master |758 |106 |13.29% |13.19% |
|jpeg_encoder |62472 |4637 |30.23% |11.78% |
|ldpcenc |20134 |1273 |18.04% |6.14% |
|NfiVe32_RF |3362 |1024 |30.46% |30.58% |
|picorv32a |14271 |1244 |25.42% |12.48% |
|PPU |10248 |2845 |19.74% |34.44% |
|prv32_cpu |2241 |207 |28.57% |23.47% |
|rf_64x64 |13475 |4096 |32.01% |32.07% |
|sha512 |20187 |3669 |30.53% |12.85% |
|spi_master |175 |43 |9.16% |17.14% |
|y_huff |11004 |2345 |19.55% |21.33% |
|y_quantizer |8281 |2816 |30.96% |30.85% |
|zigzag |3807 |769 |31.95% |58.21% |


## Further Stats:

| Avarage Power Reduction % | Avarage cell Reduction % |
| ------------------------- | ------------------------ |
| 19.34% | 17.05% |
| 27.14% | 19.48% |

| Max Power Reduction % | Min Power Reduction % |
| --------------------- | --------------------- |
| 32.02% | 1.06% |
| 43.00% | 9.16% |

| Max cell Reduction % | Min cell Reduction % |
| -------------------- | -------------------- |
| 58.21% | \-0.98% |
| 58.21% | 3.72% |


<img src="https://github.com/AUCOHL/Lighter/blob/main/docs/diagrams/power_reduction_summary.png" alt="power_summary" width="750"/>
Expand Down
48 changes: 25 additions & 23 deletions docs/benchmarks.md
Original file line number Diff line number Diff line change
Expand Up @@ -67,41 +67,43 @@ These results reveal a limitation of the OpenSTA tool, as it does not consider t

The benchmarking results presented below demonstrate the remarkable energy savings and enhanced power efficiency achieved through the implementation of this optimization technique. These findings highlight the crucial role of incorporating automatic clock gating, such Lighter, within building HW designs. By leveraging Lighter, substantial power reductions can be realized, enabling designers to effectively meet power-related design constraints and elevate overall efficiency levels.

| Design | \# Cells before | \# Cells after | \# Clock Gates | \# Flipflops | \# Clock-gated Flipflops | Total power before (W) | Total power after (W) | Total power difference (W) | Power reduction % | \# Cells reduction % |
| ------------ | --------------- | -------------- | -------------- | ------------ | ------------------------ | ---------------------- | --------------------- | -------------------------- | ----------------- | -------------------- |
| AHB_SRAM | 245 | 182 | 7 | 182 | 47 | 3.90E-04 | 3.22E-04 | 6.74E-05 | 17.29% | 25.71% |
| blake2s | 14225 | 14302 | 16 | 14302 | 512 | 8.94E-03 | 8.46E-03 | 4.83E-04 | 5.40% | \-0.54% |
| chacha | 12857 | 12892 | 26 | 12892 | 832 | 6.92E-03 | 6.03E-03 | 8.90E-04 | 12.87% | \-0.27% |
| genericfir | 143703 | 145111 | 128 | 145111 | 1536 | 8.43E-02 | 7.79E-02 | 6.38E-03 | 7.57% | \-0.98% |
| i2c_master | 759 | 680 | 21 | 680 | 106 | 5.79E-04 | 5.04E-04 | 7.51E-05 | 12.97% | 10.41% |
| jpeg_encoder | 63757 | 55113 | 388 | 55113 | 4637 | 3.41E-02 | 2.36E-02 | 1.05E-02 | 30.85% | 13.56% |
| ldpcenc | 19947 | 18880 | 28 | 18880 | 1273 | 1.90E-02 | 1.56E-02 | 3.35E-03 | 17.66% | 5.35% |
| NfiVe32_RF | 3362 | 2334 | 32 | 2334 | 1024 | 7.84E-03 | 5.45E-03 | 2.39E-03 | 30.46% | 30.58% |
| picorv32a | 14348 | 12624 | 85 | 12624 | 1011 | 6.45E-03 | 5.01E-03 | 1.44E-03 | 22.38% | 12.02% |
| PPU | 10156 | 6921 | 405 | 6921 | 2824 | 6.26E-02 | 5.03E-02 | 1.23E-02 | 19.61% | 31.85% |
| prv32_cpu | 2186 | 1662 | 10 | 1662 | 207 | 1.03E-03 | 7.34E-04 | 2.95E-04 | 28.63% | 23.97% |
| rf_64x64 | 13461 | 9572 | 64 | 9572 | 4096 | 3.14E-02 | 2.14E-02 | 1.01E-02 | 32.02% | 28.89% |
| sha512 | 20240 | 17592 | 74 | 17592 | 3669 | 7.70E-03 | 5.37E-03 | 2.33E-03 | 30.24% | 13.08% |
| spi_master | 179 | 145 | 8 | 145 | 43 | 1.92E-04 | 1.76E-04 | 1.62E-05 | 8.45% | 18.99% |
| y_quantizer | 8281 | 8122 | 16 | 8122 | 176 | 2.27E-01 | 2.25E-01 | 2.41E-03 | 1.06% | 1.92% |
| zigzag | 3807 | 1591 | 65 | 1591 | 769 | 8.14E-02 | 5.54E-02 | 2.60E-02 | 31.95% | 58.21% |

|Design |# Cells before|# Cells after|# Clock Gates|# Flipflops|# Clock-gated Flipflops|Total power before (W)|Total power after (W)|Total power difference (W)|Power reduction %|# Cells reduction %|
|----------------|--------------|-------------|-------------|-----------|-----------------------|----------------------|---------------------|--------------------------|-----------------|-------------------|
|AHB_SRAM |245 |182 |7 |182 |47 |3.90E-04 |3.22E-04 |6.74E-05 |17.29% |25.71% |
|blabla |10589 |10195 |24 |10195 |1098 |1.57E-03 |1.12E-03 |4.52E-04 |28.80% |3.72% |
|blake2s |14207 |12637 |63 |12637 |1872 |8.96E-03 |5.94E-03 |3.02E-03 |33.70% |11.05% |
|blake2s_core |12971 |11346 |46 |11346 |1353 |7.09E-03 |4.53E-03 |2.56E-03 |36.05% |12.53% |
|blake2s_m_select|4518 |3511 |16 |3511 |512 |2.65E-03 |1.51E-03 |1.14E-03 |43.00% |22.29% |
|chacha |12857 |12307 |52 |12307 |1936 |6.92E-03 |4.74E-03 |2.18E-03 |31.49% |4.28% |
|genericfir |143575 |135662 |638 |135662 |11624 |8.42E-02 |5.67E-02 |2.75E-02 |32.62% |5.51% |
|i2c_master |758 |658 |21 |658 |106 |5.79E-04 |5.02E-04 |7.70E-05 |13.29% |13.19% |
|jpeg_encoder |62472 |55114 |388 |55114 |4637 |3.38E-02 |2.36E-02 |1.02E-02 |30.23% |11.78% |
|ldpcenc |20134 |18898 |28 |18898 |1273 |1.91E-02 |1.56E-02 |3.44E-03 |18.04% |6.14% |
|NfiVe32_RF |3362 |2334 |32 |2334 |1024 |7.84E-03 |5.45E-03 |2.39E-03 |30.46% |30.58% |
|picorv32a |14271 |12490 |128 |12490 |1244 |6.42E-03 |4.79E-03 |1.63E-03 |25.42% |12.48% |
|PPU |10248 |6719 |410 |6719 |2845 |6.25E-02 |5.01E-02 |1.23E-02 |19.74% |34.44% |
|prv32_cpu |2241 |1715 |10 |1715 |207 |1.03E-03 |7.34E-04 |2.94E-04 |28.57% |23.47% |
|rf_64x64 |13475 |9153 |64 |9153 |4096 |3.14E-02 |2.14E-02 |1.01E-02 |32.01% |32.07% |
|sha512 |20187 |17592 |74 |17592 |3669 |7.73E-03 |5.37E-03 |2.36E-03 |30.53% |12.85% |
|spi_master |175 |145 |8 |145 |43 |1.93E-04 |1.76E-04 |1.77E-05 |9.16% |17.14% |
|y_huff |11004 |8657 |450 |8657 |2345 |1.37E-02 |1.10E-02 |2.68E-03 |19.55% |21.33% |
|y_quantizer |8281 |5726 |256 |5726 |2816 |2.27E-01 |1.57E-01 |7.04E-02 |30.96% |30.85% |
|zigzag |3807 |1591 |65 |1591 |769 |8.14E-02 |5.54E-02 |2.60E-02 |31.95% |58.21% |


## Further Stats:

| Avarage Power Reduction % | Avarage cell Reduction % |
| ------------------------- | ------------------------ |
| 19.34% | 17.05% |
| 27.14% | 19.48% |

| Max Power Reduction % | Min Power Reduction % |
| --------------------- | --------------------- |
| 32.02% | 1.06% |
| 43.00% | 9.16% |

| Max cell Reduction % | Min cell Reduction % |
| -------------------- | -------------------- |
| 58.21% | \-0.98% |

| 58.21% | 3.72% |


<img src="https://github.com/AUCOHL/Lighter/blob/main/docs/diagrams/power_reduction_summary.png" alt="power_summary" width="750"/>
Expand Down
Binary file modified docs/diagrams/area_reduction_summary.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified docs/diagrams/power_reduction_summary.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 1 addition & 1 deletion report_power/report_power.py
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@
# ["riscv_top_151", "clk", "50.0"],
["sha512", "clk", "40.0"],
["spi_master", "clk", "20.0"],
["y_dct", "clk", "20.0"],
#["y_dct", "clk", "20.0"],
["y_huff", "clk", "14.0"],
["y_quantizer", "clk", "1.0"],
["zigzag", "clk", "0.8"],
Expand Down
35 changes: 17 additions & 18 deletions report_power/stats/stats_cells_file.csv
Original file line number Diff line number Diff line change
@@ -1,22 +1,21 @@
module,clock gates,flipflops,clock gated flipflops,cells before,cells after,cells difference
AHB_SRAM, 7, 49, 47, 245, 182,-63
blabla, 0, 1098, 0, 10589, 10589,0
blake2s, 16, 1875, 512, 14225, 14302,77
blake2s_core, 0, 1353, 0, 12872, 12971,99
blake2s_m_select, 0, 512, 0, 4380, 4518,138
chacha, 26, 1938, 832, 12857, 12892,35
genericfir, 128, 11624, 1536, 143703, 145111,1408
i2c_master, 21, 145, 106, 759, 680,-79
jpeg_encoder, 388, 4638, 4637, 63757, 55113,-8644
ldpcenc, 28, 1372, 1273, 19947, 18880,-1067
blabla, 24, 1098, 1098, 10589, 10195,-394
blake2s, 63, 1875, 1872, 14207, 12637,-1570
blake2s_core, 46, 1353, 1353, 12971, 11346,-1625
blake2s_m_select, 16, 512, 512, 4518, 3511,-1007
chacha, 52, 1938, 1936, 12857, 12307,-550
genericfir, 638, 11624, 11624, 143575, 135662,-7913
i2c_master, 21, 145, 106, 758, 658,-100
jpeg_encoder, 388, 4638, 4637, 62472, 55114,-7358
ldpcenc, 28, 1372, 1273, 20134, 18898,-1236
NfiVe32_RF, 32, 1024, 1024, 3362, 2334,-1028
picorv32a, 85, 1618, 1011, 14348, 12624,-1724
PPU, 405, 2845, 2824, 10156, 6921,-3235
prv32_cpu, 10, 211, 207, 2186, 1662,-524
rf_64x64, 64, 4096, 4096, 13461, 9572,-3889
sha512, 74, 3673, 3669, 20240, 17592,-2648
spi_master, 8, 53, 43, 179, 145,-34
y_dct, 0, 5339, 0, 96737, 96737,0
y_huff, 0, 2351, 0, 11070, 11004,-66
y_quantizer, 16, 2820, 176, 8281, 8122,-159
picorv32a, 128, 1619, 1244, 14271, 12490,-1781
PPU, 410, 2845, 2845, 10248, 6719,-3529
prv32_cpu, 10, 211, 207, 2241, 1715,-526
rf_64x64, 64, 4096, 4096, 13475, 9153,-4322
sha512, 74, 3673, 3669, 20187, 17592,-2595
spi_master, 8, 53, 43, 175, 145,-30
y_huff, 450, 2368, 2345, 11004, 8657,-2347
y_quantizer, 256, 2820, 2816, 8281, 5726,-2555
zigzag, 65, 769, 769, 3807, 1591,-2216
Loading

0 comments on commit 7ca9882

Please sign in to comment.