{
 "tool_image": "openroad/orfs@sha256:9aeafa602de8317ea294ec24b95755437546111a08e4e1bce452339401da14b2",
 "problem": "studies/compare/PROBLEM.md",
 "useful_macs_per_token": 4358144,
 "notes": [
  "Power is measured at the target clock; throughput uses the target clock when met, otherwise the design's own minimum period.",
  "Storage is excluded for every engine.",
  "Host work for the TPU mapping (group scale, row sum) is not charged to it."
 ],
 "rows": [
  {
   "platform": "nangate45",
   "design": "cv_gemv_r14c_p8",
   "name": "CV-GEMV r14, P = 8, PAIR_REG = 0",
   "source": "Corvel (r13 with the scale's Booth digits held one-hot; results identical to r1)",
   "external": false,
   "public_rtl": false,
   "math": "W4A8-G32, full (group scale and row sum in the engine)",
   "target_ns": 4.0,
   "setup_worst_slack_ns": 2.02837,
   "met_target": true,
   "clock_used_mhz": 250.0,
   "min_period_ns": 1.97,
   "cell_area_um2": 25121.6,
   "cells": 14605,
   "die_area_um2": 56003.2,
   "route_drc_violations": 0,
   "lec_final": "identical",
   "replay": "PASS",
   "cycles_per_token": 69104,
   "cycles_basis": "testbench cycle count (core's rule) + 1 (result fully presented)",
   "useful_mac_per_s": 15766612641.815237,
   "peak_mac_per_cycle": 64,
   "utilization": 0.9854132901134521,
   "M1_gmac_s_per_mm2": 627.611801868322,
   "M2_pj_per_useful_mac": 0.694855424951539,
   "M3_bits_per_useful_mac": 5.375,
   "M3_basis": "read_count x (P*32 + 64) + groups x row blocks x P*12",
   "workload_power_mw": 10.95512,
   "power_clock_mhz": 250.0,
   "S1_min_period_ns": 1.97,
   "S2_cell_area_per_peak_mac_um2": 392.525,
   "sources": {
    "metrics": "nangate45-cv_gemv_r14c_p8/6_report.json",
    "timing": "nangate45-cv_gemv_r14c_p8/6_finish.rpt",
    "power": "nangate45-cv_gemv_r14c_p8/power.log",
    "replay": "nangate45-cv_gemv_r14c_p8/sim.log",
    "lec": "nangate45-cv_gemv_r14c_p8/lec.txt"
   }
  },
  {
   "platform": "asap7",
   "design": "cv_gemv_r14r_p8",
   "name": "CV-GEMV r14, P = 8, PAIR_REG = 1",
   "source": "Corvel (r13 with the scale's Booth digits held one-hot; results identical to r1)",
   "external": false,
   "public_rtl": false,
   "math": "W4A8-G32, full (group scale and row sum in the engine)",
   "target_ns": 1.0,
   "setup_worst_slack_ns": 0.186278,
   "met_target": true,
   "clock_used_mhz": 1000.0,
   "min_period_ns": 0.81372,
   "cell_area_um2": 2277.54,
   "cells": 20523,
   "die_area_um2": 4797.64,
   "route_drc_violations": 0,
   "lec_final": "identical",
   "replay": "PASS",
   "cycles_per_token": 69216,
   "cycles_basis": "testbench cycle count (core's rule) + 1 (result fully presented)",
   "useful_mac_per_s": 62964401294.49838,
   "peak_mac_per_cycle": 64,
   "utilization": 0.9838187702265372,
   "M1_gmac_s_per_mm2": 27645.79383655101,
   "M2_pj_per_useful_mac": 0.15085997608213494,
   "M3_bits_per_useful_mac": 5.375,
   "M3_basis": "read_count x (P*32 + 64) + groups x row blocks x P*12",
   "workload_power_mw": 9.498465,
   "power_clock_mhz": 1000.0,
   "S1_min_period_ns": 0.81372,
   "S2_cell_area_per_peak_mac_um2": 35.5865625,
   "sources": {
    "metrics": "asap7-cv_gemv_r14r_p8/6_report.json",
    "timing": "asap7-cv_gemv_r14r_p8/6_finish.rpt",
    "power": "asap7-cv_gemv_r14r_p8/power.log",
    "replay": "asap7-cv_gemv_r14r_p8/sim.log",
    "lec": "asap7-cv_gemv_r14r_p8/lec.txt"
   }
  },
  {
   "platform": "sky130hd",
   "design": "cv_gemv_r14c_p8",
   "name": "CV-GEMV r14, P = 8, PAIR_REG = 0",
   "source": "Corvel (r13 with the scale's Booth digits held one-hot; results identical to r1)",
   "external": false,
   "public_rtl": false,
   "math": "W4A8-G32, full (group scale and row sum in the engine)",
   "target_ns": 8.0,
   "setup_worst_slack_ns": 0.44967,
   "met_target": true,
   "clock_used_mhz": 125.0,
   "min_period_ns": 7.55,
   "cell_area_um2": 137618,
   "cells": 17976,
   "die_area_um2": 272698,
   "route_drc_violations": 0,
   "lec_final": "identical",
   "replay": "PASS",
   "cycles_per_token": 69104,
   "cycles_basis": "testbench cycle count (core's rule) + 1 (result fully presented)",
   "useful_mac_per_s": 7883306320.9076185,
   "peak_mac_per_cycle": 64,
   "utilization": 0.9854132901134521,
   "M1_gmac_s_per_mm2": 57.28397681195497,
   "M2_pj_per_useful_mac": 3.7173362219513626,
   "M3_bits_per_useful_mac": 5.375,
   "M3_basis": "read_count x (P*32 + 64) + groups x row blocks x P*12",
   "workload_power_mw": 29.30384,
   "power_clock_mhz": 125.0,
   "S1_min_period_ns": 7.55,
   "S2_cell_area_per_peak_mac_um2": 2150.28125,
   "sources": {
    "metrics": "sky130hd-cv_gemv_r14c_p8/6_report.json",
    "timing": "sky130hd-cv_gemv_r14c_p8/6_finish.rpt",
    "power": "sky130hd-cv_gemv_r14c_p8/power.log",
    "replay": "sky130hd-cv_gemv_r14c_p8/sim.log",
    "lec": "sky130hd-cv_gemv_r14c_p8/lec.txt"
   }
  },
  {
   "platform": "gf180",
   "design": "cv_gemv_r14r_p8",
   "name": "CV-GEMV r14, P = 8, PAIR_REG = 1",
   "source": "Corvel (r13 with the scale's Booth digits held one-hot; results identical to r1)",
   "external": false,
   "public_rtl": false,
   "math": "W4A8-G32, full (group scale and row sum in the engine)",
   "target_ns": 8.0,
   "setup_worst_slack_ns": 0.0143414,
   "met_target": true,
   "clock_used_mhz": 125.0,
   "min_period_ns": 7.99,
   "cell_area_um2": 718535,
   "cells": 16567,
   "die_area_um2": 1420900.0,
   "route_drc_violations": 0,
   "lec_final": "identical",
   "replay": "PASS",
   "cycles_per_token": 69216,
   "cycles_basis": "testbench cycle count (core's rule) + 1 (result fully presented)",
   "useful_mac_per_s": 7870550161.812298,
   "peak_mac_per_cycle": 64,
   "utilization": 0.9838187702265372,
   "M1_gmac_s_per_mm2": 10.95360721720208,
   "M2_pj_per_useful_mac": 110.68411301306244,
   "M3_bits_per_useful_mac": 5.375,
   "M3_basis": "read_count x (P*32 + 64) + groups x row blocks x P*12",
   "workload_power_mw": 871.1134000000001,
   "power_clock_mhz": 125.0,
   "S1_min_period_ns": 7.99,
   "S2_cell_area_per_peak_mac_um2": 11227.109375,
   "sources": {
    "metrics": "gf180-cv_gemv_r14r_p8/6_report.json",
    "timing": "gf180-cv_gemv_r14r_p8/6_finish.rpt",
    "power": "gf180-cv_gemv_r14r_p8/power.log",
    "replay": "gf180-cv_gemv_r14r_p8/sim.log",
    "lec": "gf180-cv_gemv_r14r_p8/lec.txt"
   }
  },
  {
   "platform": "ihp-sg13g2",
   "design": "cv_gemv_r14c_p8",
   "name": "CV-GEMV r14, P = 8, PAIR_REG = 0",
   "source": "Corvel (r13 with the scale's Booth digits held one-hot; results identical to r1)",
   "external": false,
   "public_rtl": false,
   "math": "W4A8-G32, full (group scale and row sum in the engine)",
   "target_ns": 8.0,
   "setup_worst_slack_ns": 1.01771,
   "met_target": true,
   "clock_used_mhz": 125.0,
   "min_period_ns": 6.98,
   "cell_area_um2": 284621,
   "cells": 24332,
   "die_area_um2": 859329,
   "route_drc_violations": 0,
   "lec_final": "vacuous: no comparable outputs",
   "replay": "PASS",
   "cycles_per_token": 69104,
   "cycles_basis": "testbench cycle count (core's rule) + 1 (result fully presented)",
   "useful_mac_per_s": 7883306320.9076185,
   "peak_mac_per_cycle": 64,
   "utilization": 0.9854132901134521,
   "M1_gmac_s_per_mm2": 27.697556824365098,
   "M2_pj_per_useful_mac": 3.4968852082537882,
   "M3_bits_per_useful_mac": 5.375,
   "M3_basis": "read_count x (P*32 + 64) + groups x row blocks x P*12",
   "workload_power_mw": 27.56602,
   "power_clock_mhz": 125.0,
   "S1_min_period_ns": 6.98,
   "S2_cell_area_per_peak_mac_um2": 4447.203125,
   "sources": {
    "metrics": "ihp-sg13g2-cv_gemv_r14c_p8/6_report.json",
    "timing": "ihp-sg13g2-cv_gemv_r14c_p8/6_finish.rpt",
    "power": "ihp-sg13g2-cv_gemv_r14c_p8/power.log",
    "replay": "ihp-sg13g2-cv_gemv_r14c_p8/sim.log",
    "lec": "ihp-sg13g2-cv_gemv_r14c_p8/lec.txt"
   }
  }
 ],
 "files_sha256": {
  "asap7-cv_gemv_r14r_p8/5_route_drc.rpt": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
  "asap7-cv_gemv_r14r_p8/6_finish.rpt": "9538eaab26f581a69bfe9687e9fbf7e45beaddb8d687e62fe928646bc8e5fa40",
  "asap7-cv_gemv_r14r_p8/6_report.json": "1fe2c5848ed2c0f73ff144d81d9922e73e53c53a6df23ac087061179a148badc",
  "asap7-cv_gemv_r14r_p8/activity-header.txt": "5bf5371699ae3083310d2686a66bca4aea7b6e875bb031b85507860a0b9dd423",
  "asap7-cv_gemv_r14r_p8/constraint.sdc": "f008120b21ba330593aba7cafb86a5a58720c0d98d772f710826bef56c408b15",
  "asap7-cv_gemv_r14r_p8/lec.txt": "bdf9e47df0f6a9ffa0226b9f0f77797cdcc87c34ead8e1b35d4af17f5d394f4d",
  "asap7-cv_gemv_r14r_p8/power.log": "4a5ef261442b5788940dbed24d04903e4100b2919bba1cb0b3d7414a8fc1d221",
  "asap7-cv_gemv_r14r_p8/result.json": "bd22a73956e7863fa5f46a060f307e5354f71d3d0502383cacb851b805c52ba9",
  "asap7-cv_gemv_r14r_p8/sim.log": "26912a539df4dbe33964b7c2a650193243985d8b41dd12e233931fd96b46a162",
  "fixtures.json": "5863a21a45d3ba3cc5d11d8679b18299adde5760d65e8f522e73c55aff8a50c5",
  "gf180-cv_gemv_r14r_p8/5_route_drc.rpt": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
  "gf180-cv_gemv_r14r_p8/6_finish.rpt": "5d45d836d6287e6a276a7bb4c74d4b4a947b3431c062e9f2f57ab79c29c6e889",
  "gf180-cv_gemv_r14r_p8/6_report.json": "aaa1bb2f3b12d7f278b0b59f65b5509f2c21498bd71c334f5c4ef0cecf389d37",
  "gf180-cv_gemv_r14r_p8/activity-header.txt": "8e7a355a0860c7cf5d727af0890379c19ef46afa449412b0f4fcb8ff814f3797",
  "gf180-cv_gemv_r14r_p8/constraint.sdc": "6b27ffd5346aa0a8d82cbf0241a683c5ed6352a57bb12080c0cb9af799afab1b",
  "gf180-cv_gemv_r14r_p8/lec.txt": "3615e33304223855c2340fba95c03af813a466006569da87856c65154c080ec9",
  "gf180-cv_gemv_r14r_p8/power.log": "fa4011596dd4bda2109bf1262fe5a506f336010d8166b1dd8bf4f30236d669cb",
  "gf180-cv_gemv_r14r_p8/result.json": "89342686a695f284e410ffd7f5dbc827dd8f6eb7d621abcb7c851ebab002e3cc",
  "gf180-cv_gemv_r14r_p8/sim.log": "e07648c178af1a2ffc3ebb73a81be105cc95141b4eb17b6fb1afdf3a0940265b",
  "ihp-sg13g2-cv_gemv_r14c_p8/5_route_drc.rpt": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
  "ihp-sg13g2-cv_gemv_r14c_p8/6_finish.rpt": "140064ff2e2330289a76c4ea4120cf2d70fdeb91085ef11b128dcc3c80d3ca85",
  "ihp-sg13g2-cv_gemv_r14c_p8/6_report.json": "7f4ae25e864fa842d94d98ae4c282587c3b550ba0d1301ca9353b18a35cf37b8",
  "ihp-sg13g2-cv_gemv_r14c_p8/activity-header.txt": "b793d8eb3c015c1c07e944a7c87d73f23a57a2f792b15a0c710a2899656587ef",
  "ihp-sg13g2-cv_gemv_r14c_p8/constraint.sdc": "6b27ffd5346aa0a8d82cbf0241a683c5ed6352a57bb12080c0cb9af799afab1b",
  "ihp-sg13g2-cv_gemv_r14c_p8/lec.txt": "81cee0f14ac4c62254063eec8a64cdadc72d94fa032b6f333298d9f1b2af3d4b",
  "ihp-sg13g2-cv_gemv_r14c_p8/power.log": "51be23c488bd44fedc52c21b43c9ad7fe6e5975de6f5ab2fc6ef09bdb94a3c8d",
  "ihp-sg13g2-cv_gemv_r14c_p8/result.json": "15b033c5075dbf894f012242891d6a911073dee1078b7acbb4ed4c27b70c599f",
  "ihp-sg13g2-cv_gemv_r14c_p8/sim.log": "14cff0eab994ff819b9a77d6a73f8ae52250d4b4e8c83b9b85426c64ce9226ae",
  "nangate45-cv_gemv_r14c_p8/5_route_drc.rpt": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
  "nangate45-cv_gemv_r14c_p8/6_finish.rpt": "6dcebee449bc690f3c0c058283cbc1471fb4cbddaa46f8acba1320572aca5c4c",
  "nangate45-cv_gemv_r14c_p8/6_report.json": "f6c8fd2c942b950f29bf1e7e6ac669cfff68bf35f12182a25df988b290a1a205",
  "nangate45-cv_gemv_r14c_p8/activity-header.txt": "278d31b805aded95979f1f15a12f546fa0a6feae50b8ade7ff365bce7b5f8cdf",
  "nangate45-cv_gemv_r14c_p8/constraint.sdc": "22b9abd354c2d398a54a5fdd0472a5c1fbc0146e454904a69ccf2be091164e17",
  "nangate45-cv_gemv_r14c_p8/lec.txt": "84f520d4c43ac0c2204fd013a9db8b07b48c02d94010cc8486cd983a7f9b593d",
  "nangate45-cv_gemv_r14c_p8/power.log": "f96e9a8195cdeea98e8eebd7cf156f7d32b69294b7d878d58e1d94aa7149c440",
  "nangate45-cv_gemv_r14c_p8/result.json": "256857cb44e53140207823f84ac74f72b5f48481c4b323b3631a313a589601d7",
  "nangate45-cv_gemv_r14c_p8/sim.log": "86b408c15632ed65fa3c42745fb4570bfc5abe6bf38012f8ea77182847d7846f",
  "sky130hd-cv_gemv_r14c_p8/5_route_drc.rpt": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
  "sky130hd-cv_gemv_r14c_p8/6_finish.rpt": "f580473be23d7b4c8135b06c5afc77ae77f7bb9417cdc07945d66ab13328b791",
  "sky130hd-cv_gemv_r14c_p8/6_report.json": "bc0551867c2833aa7da71288b253df07c40c073c05814ca5e313cbe6097e627e",
  "sky130hd-cv_gemv_r14c_p8/activity-header.txt": "910e187eff4fa0022e41bf9b7f614e4fd6c4d969fb553e109c3f352d7028f39a",
  "sky130hd-cv_gemv_r14c_p8/constraint.sdc": "6b27ffd5346aa0a8d82cbf0241a683c5ed6352a57bb12080c0cb9af799afab1b",
  "sky130hd-cv_gemv_r14c_p8/lec.txt": "ce56fa4fe8a700fce7f8485e2c9c7c62023699993707e18a2164ddd8adf9229b",
  "sky130hd-cv_gemv_r14c_p8/power.log": "0bf7b96165ed6a0d79808addb68f3f315ba9bcccbc0f9f5f20b8dc26a630f8d6",
  "sky130hd-cv_gemv_r14c_p8/result.json": "deb7c9c7743eed72be894f7bdf3ff463bcd59935ed1dc09af0e105b6f9bb9158",
  "sky130hd-cv_gemv_r14c_p8/sim.log": "d152654f7dff6bd552654f6ffb47065af495927d87d1d49d2901178fb264946d"
 }
}