Skip to content

Commit 4f3249c

Browse files
mojtaba-bishehNitsirksMojtaba Bisheh Niasar
authored
Update ABR regression (#246)
* update stream msg KAT to disable scoreboard and rely on self checking update stream msg KAT to set STROBE back to 0xF at the start of each KAT * added verify_stream_msg into promote regression * added ABR tests to nightly regression * removed unnecessary file * MICROSOFT AUTOMATED PIPELINE: Stamp 'verify_stream' with updated timestamp and hash after successful run * updated done status for on-the-fly zeroize test * zeroized expected output for on-the-fly zeroize test * MICROSOFT AUTOMATED PIPELINE: Stamp 'verify_stream' with updated timestamp and hash after successful run --------- Co-authored-by: Michael Norris <michnorris@microsoft.com> Co-authored-by: Mojtaba Bisheh Niasar <“mojtabab@microsoft.com”>
1 parent f24a681 commit 4f3249c

File tree

7 files changed

+42
-43
lines changed

7 files changed

+42
-43
lines changed

.github/workflow_metadata/pr_hash

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
ec72e0b27630587e486ee2559c54ef26827658dbef8c7900e562dc17583b5f33ce5e83fdae864c624f6aca27318e856f
1+
172d8cab05e64cfcc4a27eca2b72511df02958207d0024c9864437194a0b421da9b6c2504655993e7cc930c8db3628ff
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
1765481443
1+
1765495073

src/abr_top/stimulus/testsuites/abr_top_nightly_random_regression.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,9 +23,12 @@ contents:
2323
$ADAMSBRIDGE_ROOT/src/abr_top/uvmf/uvmf_template_output/project_benches/mldsa/tb/tests/src/ML_DSA_randomized_verif_stream_msg_test : { weight 40 }
2424
$ADAMSBRIDGE_ROOT/src/abr_top/uvmf/uvmf_template_output/project_benches/mldsa/tb/tests/src/ML_DSA_randomized_KeySign_stream_msg_test : { weight 40 }
2525
$ADAMSBRIDGE_ROOT/src/abr_top/uvmf/uvmf_template_output/project_benches/mldsa/tb/tests/src/ML_DSA_randomized_reset_test : { weight 5 }
26+
$ADAMSBRIDGE_ROOT/src/abr_top/uvmf/uvmf_template_output/project_benches/mldsa/tb/tests/src/ML_DSA_randomized_early_run_test : { weight 5 }
2627
$ADAMSBRIDGE_ROOT/src/abr_top/uvmf/uvmf_template_output/project_benches/mldsa/tb/tests/src/ML_KEM_randomized_keygen_test : { weight 40 }
2728
$ADAMSBRIDGE_ROOT/src/abr_top/uvmf/uvmf_template_output/project_benches/mldsa/tb/tests/src/ML_KEM_randomized_encap_test : { weight 40 }
2829
$ADAMSBRIDGE_ROOT/src/abr_top/uvmf/uvmf_template_output/project_benches/mldsa/tb/tests/src/ML_KEM_randomized_encap_input_fail_test : { weight 5 }
2930
$ADAMSBRIDGE_ROOT/src/abr_top/uvmf/uvmf_template_output/project_benches/mldsa/tb/tests/src/ML_KEM_randomized_decap_test : { weight 40 }
3031
$ADAMSBRIDGE_ROOT/src/abr_top/uvmf/uvmf_template_output/project_benches/mldsa/tb/tests/src/ML_KEM_randomized_decap_input_fail_test : { weight 5 }
3132
$ADAMSBRIDGE_ROOT/src/abr_top/uvmf/uvmf_template_output/project_benches/mldsa/tb/tests/src/ML_KEM_randomized_keygen_decap_test : { weight 40 }
33+
$ADAMSBRIDGE_ROOT/src/abr_top/uvmf/uvmf_template_output/project_benches/mldsa/tb/tests/src/ML_KEM_overwrite_test : { weight 5 }
34+
$ADAMSBRIDGE_ROOT/src/abr_top/uvmf/uvmf_template_output/project_benches/mldsa/tb/tests/src/ML_KEM_randomized_all_test : { weight 5 }

src/abr_top/stimulus/uvmf_mldsa_top_promote_regression.yml

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,16 @@ contents:
5252
path: "{template_basename}__1.yml"
5353
templates:
5454
- $ADAMSBRIDGE_ROOT/src/abr_top/uvmf/uvmf_template_output/project_benches/mldsa/tb/tests/src/ML_DSA_verif_KATs_test
55+
- generator:
56+
tags: ["L0", "uvmf_mldsa", "directed", "smoke_test"]
57+
path: ""
58+
weight: 100
59+
generations: 1
60+
formats:
61+
generate: "reseed {template}.yml -seed 1"
62+
path: "{template_basename}__1.yml"
63+
templates:
64+
- $ADAMSBRIDGE_ROOT/src/abr_top/uvmf/uvmf_template_output/project_benches/mldsa/tb/tests/src/ML_DSA_verif_KATs_stream_msg_test
5565
- generator:
5666
tags: ["L0", "uvmf_mldsa", "directed", "smoke_test"]
5767
path: ""

src/abr_top/uvmf/uvmf_template_output/project_benches/mldsa/tb/sequences/src/ML_KEM_base_sequence.svh

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -331,9 +331,10 @@ class ML_KEM_base_sequence extends mldsa_bench_sequence_base;
331331
end
332332
endtask
333333

334-
task compare_keygen_vectors();
334+
task compare_keygen_vectors(bit error_flag = 0);
335335
// Compare Encapsulation Key (ek)
336336
foreach (expected_ek[i]) begin
337+
if (error_flag) expected_ek[i] = '0;
337338
if (actual_ek[i] !== expected_ek[i]) begin
338339
`uvm_error("EK_MISMATCH",
339340
$sformatf("ek[%0d] mismatch: expected %08h, actual %08h",
@@ -347,6 +348,7 @@ class ML_KEM_base_sequence extends mldsa_bench_sequence_base;
347348

348349
// Compare Decapsulation Key (dk)
349350
foreach (expected_dk[j]) begin
351+
if (error_flag) expected_dk[j] = '0;
350352
if (actual_dk[j] !== expected_dk[j]) begin
351353
`uvm_error("DK_MISMATCH",
352354
$sformatf("dk[%0d] mismatch: expected %08h, actual %08h",

src/abr_top/uvmf/uvmf_template_output/project_benches/mldsa/tb/sequences/src/ML_KEM_randomized_all_sequence.svh

Lines changed: 24 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -41,10 +41,14 @@ class ML_KEM_randomized_all_sequence extends ML_KEM_base_sequence;
4141
wait_for_done(0, "ready");
4242
run_operation(32'h1, "KeyGen Operation");
4343
maybe_reset_mid_op(on_the_fly_zeroize);
44-
wait_for_done(0, "ready");
44+
if (on_the_fly_zeroize) begin
45+
wait_for_done(0, "ready");
46+
end else begin
47+
wait_for_done(1, "valid");
48+
end
4549
read_ek();
4650
read_dk();
47-
compare_keygen_vectors();
51+
compare_keygen_vectors(on_the_fly_zeroize);
4852
zeroize();
4953
wait_for_done(0, "ready");
5054
endtask
@@ -57,10 +61,14 @@ class ML_KEM_randomized_all_sequence extends ML_KEM_base_sequence;
5761
wait_for_done(0, "ready");
5862
run_operation(32'h2, "Encap Operation");
5963
maybe_reset_mid_op(on_the_fly_zeroize);
60-
wait_for_done(0, "ready");
64+
if (on_the_fly_zeroize) begin
65+
wait_for_done(0, "ready");
66+
end else begin
67+
wait_for_done(1, "valid");
68+
end
6169
read_ciphertext();
6270
read_shared_key();
63-
compare_encap_vectors();
71+
compare_encap_vectors(on_the_fly_zeroize);
6472
zeroize();
6573
wait_for_done(0, "ready");
6674
endtask
@@ -73,9 +81,13 @@ class ML_KEM_randomized_all_sequence extends ML_KEM_base_sequence;
7381
wait_for_done(0, "ready");
7482
run_operation(32'h3, "decap Operation");
7583
maybe_reset_mid_op(on_the_fly_zeroize);
76-
wait_for_done(0, "ready");
84+
if (on_the_fly_zeroize) begin
85+
wait_for_done(0, "ready");
86+
end else begin
87+
wait_for_done(1, "valid");
88+
end
7789
read_shared_key();
78-
compare_decap_vectors();
90+
compare_decap_vectors(on_the_fly_zeroize);
7991
zeroize();
8092
wait_for_done(0, "ready");
8193
endtask
@@ -88,9 +100,13 @@ class ML_KEM_randomized_all_sequence extends ML_KEM_base_sequence;
88100
wait_for_done(0, "ready");
89101
run_operation(32'h4, "keygen decap Operation");
90102
maybe_reset_mid_op(on_the_fly_zeroize);
91-
wait_for_done(0, "ready");
103+
if (on_the_fly_zeroize) begin
104+
wait_for_done(0, "ready");
105+
end else begin
106+
wait_for_done(1, "valid");
107+
end
92108
read_shared_key();
93-
compare_decap_vectors();
109+
compare_decap_vectors(on_the_fly_zeroize);
94110
zeroize();
95111
wait_for_done(0, "ready");
96112
endtask

src/abr_top/uvmf/uvmf_template_output/project_benches/mldsa/tb/tests/src/abr_example_test.yml.orig

Lines changed: 0 additions & 32 deletions
This file was deleted.

0 commit comments

Comments
 (0)