Host first
v0 keeps host control explicit. Integrated RISC-V control is deferred until a measured v0 justifies it.
The proposed first hardware path favors a complete, understandable detector flow over headline throughput: eight INT8 output-channel MAC lanes, INT32 accumulation, about 52 KiB of logical local storage, serialized DMA, and host control.
v0 keeps host control explicit. Integrated RISC-V control is deferred until a measured v0 justifies it.
DMA and local SRAM behavior are part of the contract, not invisible implementation detail.
INT8 activation and weight behavior with INT32 accumulation forms the first proposed hardware path.
Vector, preprocessing, clamp, scale, requantization, and argmax-like operations are kept explicit.
The reusable scheduler executes both complete Conv-SiLU blocks through 16,245 commands. Both retained tensors match all 614,400 golden INT8 values. See the two-block report.
HASLAB separates mathematical intent, byte-level commands, implementation, and evidence. This prevents a future circuit bug from silently redefining correctness.
Ties-to-even rounding, saturation, signed zero, NaN handling, overflow rejection, accumulation order, layouts, and activation behavior.
A proposed 128-byte command encoding with version rejection, invalid-field behavior, reset precedence, sequence handling, and structured errors.
46 stored fixtures cover bytes, memory images, completion state, errors, provenance, hashes, and strict validation—without deriving expected values during execution.
The project distinguishes software reference support from device-command support and future research. “Supported” never means the same thing at every layer.
| Format | Intended role | Current support |
|---|---|---|
| INT8 | Activations and weights for the first hardware path | Golden-model and command-simulator semantics implemented |
| INT32 | Exact accumulation, bias, optional raw logits | Golden-model and command-simulator semantics implemented |
| E4M3FN FP8 | First planned native FP8 mode | Reference behavior only; no v0 device command |
| E5M2 FP8 | Possible later format | Conversion reference only |
| FP32 | Reference calculation and proposed FP8 accumulation | Software reference use only |
| FP16 accumulation | Possible constrained future mode | Not selected or implemented |
The first RTL is intentionally narrow. It must consume reviewed commands and match the same independent vectors as the simulator before coverage expands.
Interpret the command fields and reject invalid instructions.
Provide the local operands with explicit addressing and bounds.
Multiply and accumulate signed 8-bit input and weight values.
Keep the running sum under the defined integer arithmetic rules.
Scale, round, and clamp the result to the output representation.
Expose completion or an architectural fault for comparison.
Read 01 → 06. Colors identify functional roles; every stage is part of the planned RTL slice. Each must match the independent conformance expectations.
Clear boundaries make the project easier to evaluate, integrate, and extend.