Signoff maps each assumption to evidence and a threshold. The scorecard below is illustrative.
Item | Count | Gate |
|---|---|---|
Assumptions validated | 39 of 46 | 84.8%, 7 open |
High-risk items open | 4 | each with owner and date |
Blockers | 2 | DVFS margin model, NoC repartition |
Readiness fraction (illustrative)
validated = 39 / 46 = 0.8478 -> 84.8%
open = 46 - 39 = 7 assumptions
with 4 high-risk open and 2 blockers, the gate reads CONDITIONALReview judges evidence completeness, not document completeness. A thick package with unproven assumptions still waits.
The gate has three outcomes. Full validation with no open high risk passes, open items with containment go conditional, and expired waivers block.
State | Meaning | Next step |
|---|---|---|
Pass | all assumptions proven, no open high risk | freeze and proceed |
Conditional | open items with owner, date and containment | track to closure at the next review |
Blocked | a waiver expired or containment is missing | stop and re-plan |
Conditional: 84.8% validated with owned open items and containment to track.
Blocked, until the risk is contained or re-waived with a new owner and date.
The model below encodes the gate rule over validated counts and waiver state. It checks gate logic, not the evidence itself.
module signoff_gate (
input logic [7:0] validated,
input logic [7:0] total,
input logic [7:0] high_risk_open,
input logic waiver_expired,
output logic [1:0] status
);
localparam logic [1:0] ST_PASS = 2'd0;
localparam logic [1:0] ST_COND = 2'd1;
localparam logic [1:0] ST_BLOCK = 2'd2;
always_comb begin
if (waiver_expired) status = ST_BLOCK;
else if ((validated == total) && (high_risk_open == 8'd0)) status = ST_PASS;
else status = ST_COND;
end
endmodule