The default regression is intentionally split by tool capability.
make test-iverilogruns self-checking synthesizable RTL tests, including asynchronous mailbox/FIFO reset scenarios, flow-control edges, storage, and clock handover behavior. It also covers stream windows, PLRU, peak counters, SECDED fault injection, and warm-flush CDC recovery.- The extended regressions cover queue fall-through/full behavior, latest-value overwrite semantics, crossbar lock/fair handoff, tagged FIFO order, circular storage bounds, mask/control filters, Bloom insertion/removal, four-phase event delivery, and clearable CDC recovery.
make test-verilatorruns the same RTL suite plusaxi_bfm_tb. The latter uses SystemVerilog classes and virtual interfaces, which are not fully supported by Icarus.make formalproves arbitration invariants, stream-replicator pending-mask behavior, SECDED single-fault correction, PLRU one-hot victim, and stream-window bounds. It also runs 32-step bounded checks for the stream queue, mailbox, and warm-flush CDC under representative synchronized-clock models.make lint,make synth,make format-check,make mk-validate, andmake license-checkremain required delivery gates.make license-checkalso validates the PULP source-to-component manifest, per-file SPDX markers, and NOTICE entries.
CDC formal checks do not model analog metastability. The design relies on the documented synchronizer stage requirements, structural CDC primitives, and asynchronous-clock simulation for that implementation boundary.