Compiler Surface Policy¶
This page defines the root-level sc_neurocore.compiler API boundary. The
package facade exports the stable symbols used by ordinary compiler clients.
Some modules remain direct public modules because existing workflows import
them by module path. The remaining modules are internal build tools used by the
compiler facade, deployment facade, or hardware evidence pipeline.
Use from sc_neurocore.compiler import ... for facade symbols. Import direct
public modules only when their module path is shown below. Internal build tools
can change without a deprecation window.
Root Module Decisions¶
| Module | Status | Decision |
|---|---|---|
adaptive_precision |
public facade | Package-level exports provide the adaptive precision planning API. |
auto_tune |
internal build tool | Internal heuristic helper used by precision planning workflows. |
block_floating |
direct public module | Shared-exponent format types are imported directly by quantization workflows. |
block_floating_quantization |
direct public module | Block-floating dense compilation helpers are direct quantization surfaces. |
certification_gen |
internal build tool | Deployment evidence generator reached through deployment. |
cocotb_gen |
internal build tool | Testbench generator reached through deployment. |
compiler_impl |
internal build tool | Legacy implementation module behind documented compiler entry points. |
constraint_gen |
direct public module | Timing constraint generator has direct tests and documentation. |
deployment |
direct public module | Deployment facade aggregates constraints, drivers, evidence, and multi-target helpers. |
equation_compiler |
public facade | Package-level exports provide equation-to-FPGA helpers. |
fixed_point_quantization |
direct public module | Fixed-point quantization primitives back direct quantization workflows. |
formal_evidence |
internal build tool | Evidence writer used by hardware audit pipelines. |
fpga_wrapper |
internal build tool | Wrapper generator behind compiler and deployment paths. |
guard_bits |
internal build tool | Static-analysis primitive reached through static_analysis. |
host_driver_gen |
internal build tool | Host driver generator reached through deployment. |
ir_type_checker |
public facade | Package-level exports provide stochastic IR validation helpers. |
layer_precision |
internal build tool | Validated row model behind adaptive precision layer manifests. |
length_planner |
internal build tool | Validated layer-length planner behind adaptive precision manifests. |
live_control |
public facade | Package-level exports provide live MMIO control specs. |
live_control_ops |
internal build tool | Implementation module for live-control operations. |
live_control_specs |
internal build tool | Implementation module for live-control spec records. |
live_control_types |
internal build tool | Implementation module for live-control type aliases. |
manifest_gen |
internal build tool | Manifest helper used by validation and compiler evidence paths. |
mixed_dense_kernel |
internal build tool | Numeric kernel behind mixed dense compilation. |
mixed_dense_quantization |
direct public module | Mixed dense compiler helpers are direct quantization surfaces. |
mixed_precision |
compatibility facade | Backward-compatible facade for mixed-precision solver imports. |
mixed_precision_spec |
internal build tool | Data model behind the mixed-precision facade. |
mlir_emitter |
public facade | Package-level exports provide MLIR bundle emission. |
multi_target |
internal build tool | Multi-target comparison helper reached through deployment. |
overflow_proof |
internal build tool | Static-analysis proof primitive reached through static_analysis. |
pipeline |
public facade | Package-level exports provide the compiler pipeline. |
pipeline_analysis |
internal build tool | Static-analysis primitive reached through static_analysis. |
power_estimator |
direct public module | Power estimator has direct tests and documentation. |
precision_config |
direct public module | Precision configuration types are direct mixed-precision surfaces. |
precision_pairs |
internal build tool | Preset/configuration helper behind precision planning. |
precision_presets |
internal build tool | Preset registry behind mixed-precision facade. |
precision_solver |
direct public module | Constraint solver has direct tests and documented usage. |
q_format |
direct public module | Q-format types are direct quantization surfaces. |
quantization_reports |
internal build tool | Report records are re-exported through quantization surfaces. |
quantize_core |
compatibility facade | Backward-compatible import surface for quantizer. |
quantizer |
public facade | Package-level exports provide canonical quantization helpers. |
resource_estimator |
internal build tool | Deployment estimator reached through deployment. |
riscv_driver |
direct public module | RISC-V driver generator has direct tests and documentation. |
sby_formal |
internal build tool | SymbiYosys script generator reached through deployment. |
sensitivity_analysis |
direct public module | Sensitivity analysis has direct tests and adaptive-precision usage. |
slr_placement |
internal build tool | Placement helper reached through deployment. |
static_analysis |
direct public module | Static-analysis facade aggregates guard, proof, pipeline, power, and SVA helpers. |
sva_gen |
direct public module | SVA generator has direct tests and documentation. |
synapse_planner |
internal build tool | Validated synapse planner behind adaptive precision manifests and Studio auto-tuning. |
synapse_precision |
internal build tool | Validated row model behind adaptive precision synapse manifests. |
testbench_gen |
direct public module | Verilog testbench generator has direct tests and documentation. |
validation |
direct public module | Adaptive-runtime validation is re-exported by a compatibility facade. |
verilog_compiler |
internal build tool | Backend implementation reached through equation_compiler. |
verilog_compiler_config |
internal build tool | Backend configuration record for Verilog emission. |
verilog_expr_emitter |
internal build tool | Expression emitter behind the equation compiler. |
Enforcement¶
tests/test_compiler_surface_policy.py reads this table and the filesystem on
each run. A new root compiler module must either join the package facade, become
a direct public or compatibility module, or appear here as an internal build
tool with a clear reason.