This repository has been archived on 2026-08-21 . You can view files and clone it. You cannot open issues or pull requests or push a commit.
ce40a6df42791b48ff4a123b26b7a48f9ba18325
Decouple the ENC_C1/C2 compress micro-sequence into a streaming producer/collector instead of feeding one coeff and draining the whole 6-stage comp_decomp pipeline per coeff. - comp_decomp_sync: ready_o = 1'b1 (fully pipelined, consumer never backpressures since ready_i is tied high), so feeders can issue a new coeff every cycle. - mlkem_top ENC_C1/C2: producer feeds one coeff every 2 cycles (<=5.5 bit/cyc, under the single-port ct drain of 8 bit/cyc so the bit buffer stays bounded); a per-cycle collector appends compressed bits and drains one ct byte/cycle. Verified byte-exact against NIST KAT (Vivado 2019.2 XSIM) for KeyGen, Encaps (9/9), Decaps (9/9 incl. reject path + DECOMP), hello_world e2e. K=2 Encaps: ENC_C1 6273->1035, ENC_C2 2945->522, total 27851->20190. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Description
No description provided
Languages
Verilog
46.5%
C
27.8%
Assembly
20.5%
SystemVerilog
3.3%
Python
0.7%
Other
1.2%