
Atomic Memory™
Questa directory contiene i moduli RTL di riferimento, le immagini FPGA precompilate e gli script TCL opzionali per i test della primitiva atomica di misura–collasso. Questa primitiva è un meccanismo hardware di misura–collasso compatibile con CMOS che impone una semantica di singola lettura: la prima lettura qualificata restituisce il byte memorizzato e l'atto di misura innesca deterministicamente un evento di collasso irreversibile. Dopo il collasso, la cella produce solo output offuscati o derivati da PRNG, assicurando che il valore originale non possa essere recuperato. L'implementazione dimostra divulgazione deterministica alla prima lettura, controllo di accesso condizionato dalla base, e transizioni di stato atomiche unidirezionali attraverso un banco di celle di memoria indipendenti.
I file .sof forniti consentono la validazione hardware diretta senza moduli
di interfaccia bus aggiuntivi.
Stato: Rilascio di artefatto di ricerca
Licenza: Solo uso non commerciale (vedi LICENZA qui sotto)
Brevetti in attesa: US 19/286,600
Hardware target: Intel Cyclone V (5CSEBA6 / DE-SoC)
| File / Cartella | Descrizione |
|---|---|
fpga/collapse_cell.sv | Cella primitiva a lettura singola utilizzata nell'articolo |
fpga/collapse_bank.sv | Banco da 1024 celle con bus condiviso di entropia/offuscamento |
fpga/Atomic1024Bank.sof | Bitstream pulito per 1024 celle (nessun SignalTap – percorso flash più veloce) |
fpga/SignalTap.sof | Build strumentata con demo automatica hands-free |
fpga/SignalTap.stp | File SignalTap preconfigurato – apri → Esegui → osserva i tempi di collasso |
fpga/program_clean.bat | Flash con un clic per Windows (versione pulita) |
fpga/program_clean.sh | Flash con un clic per Linux (versione pulita) |
fpga/program_signaltap.bat | Flash con un clic per Windows (demo SignalTap) |
fpga/program_signaltap.sh | Flash con un clic per Linux (demo SignalTap) |
tcl/ | Script TCL opzionali per System Console per test automatizzati |
images/ | Forma d'onda di divulgazione + distruzione in un ciclo dall'articolo associato |
ROADMAP.md | Roadmap del progetto e fasi di sviluppo ASIC/FPGA pianificate |
LICENSE.md | Licenza non commerciale |
README.md | Questo file |
collapse_cell.svImplementa la primitiva di memoria a lettura singola (ROOM) con misura–collasso:
INIT carica il valore e la baseStato interno chiave:
basis_valid_qarmed_qcollapsed_qcollapse_bank.svImplementa l'array completo di 1024 celle. Questo modulo fornisce:
collapse_celldata_o, collapsed_q, stato, ecc.)Il percorso RO è attivo solo dopo il collasso e contribuisce al flusso di output offuscato post-collasso quando abilitato. Non influisce sulla correttezza della prima lettura né sulla semantica del collasso.
Atomic1024Bank.sofSignalTap.sofSegnali sondati (vedi SignalTap.stp):
read_pulsebasis_in[7:0]basis_valid_qarmed_qcollapsed_qdata_o[7:0]valid_out (se presente)tcl/)Questi script opzionali sono forniti per gli utenti che desiderano automatizzare le interazioni, pilotare sequenze o riprodurre il flusso di test interno.
Le capacità di esempio includono:
Questi script non dipendono da alcun HDL di interfaccia bus incluso in questo artefatto. Gli utenti possono adattarli per la propria interfaccia host, sequencer GPIO o flussi di lavoro System Console.
Atomic1024Bank.sof o SignalTap.sofNon è richiesto alcun slave Avalon-MM o wrapper IP esterno per utilizzare queste immagini.
Vedere il file LICENSE.md completo.
Si applica una licenza di ricerca non commerciale.
Questo riepilogo è solo informativo. Il testo completo in LICENSE.md prevale.
Se utilizzi questo artefatto in lavori accademici, cita l'articolo associato:
Cita come:
Francis X. Cunnane III. A CMOS Measurement–Collapse Primitive for Ephemeral Secrets in Post-Quantum Cryptography. TechRxiv. December 02, 2025.
https://doi.org/10.36227/techrxiv.176463742.23048082/v3
Esempio BibTeX:
@misc{cunnane2025measurementcollapse,
author = {Cunnane III, Francis X.},
title = {A CMOS Measurement--Collapse Primitive for Ephemeral Secrets in Post-Quantum Cryptography},
year = {2025},
month = dec,
note = {TechRxiv},
doi = {10.36227/techrxiv.176463742.23048082/v1},
url = {https://doi.org/10.36227/techrxiv.176463742.23048082/v1}
}