Skip to content

Architecture

Raul Montoya Cardenas edited this page Jul 29, 2026 · 2 revisions

Architecture

Wiki hero

Generated with Grok Build: Grok 4.5 · xAI Imagine (/imagine)

Owns (this package)

Spike-driven relevance routing only:

Piece Responsibility
ActivityRegion Compact per-region summary for one tick
RegionRouter Pre-allocated buffers and graph masks
update_routing! α/β/γ scoring, inhibition, softmax weights
routing_diagnostics Lightweight logging string
adapt_leak! Optional stress → leak mapping (not core routing)
save_state / load_state! Checkpoint mutable router fields

All hot-path scalars and buffers are Float32. The design goal is no heap allocation inside update_routing! after construction.

Does not own

Concern Owner expectation
Spike event lists / full trains Upstream SNN / SpikeStream-style extractors
Neuron / membrane / synapse sim Runtime or reservoir packages
Training / plasticity Separate training pipelines
Token embeddings / transformers ANN/LLM stacks
Hardware telemetry ingestion Reduce to rates before calling in
Deployment / supervision Application layer
Scoring config objects (RoutingConfig) Not on main — α/β/γ remain module constants (open work / LIM-230 branch)

Data flow

Caller SNN / hybrid / reservoir
        │
        ▼  reduce to compact summaries
 Vector{ActivityRegion}   (rate ∈ [0,1], output length n_out)
        │
        ▼  update_routing!(router, regions)
 RegionRouter.routing_weights   (length n_regions, sum ~1)
        │
        ▼
 Caller prioritizes modules / budget / decode paths

Design notes

  • Narrow boundary — callers bring their own dynamics; TemporalFocus only reweights.
  • Generic names preferredActivityRegion / RegionRouter; NERO aliases are compatibility shims.
  • Configurable inhibitionRegionRouter(; inhibition_matrix=...) (LIM-229); defaults from historical 4×4 INHIBIT for n ≤ 4, scaled lateral matrix for n > 4.
  • Adjacency is a mask — hot path treats adjacency_matrix[src,dst] > 0 as “apply inhibition for this pair,” not a continuous weight.
  • Dual MIT/Apache; SPDX headers on .jl sources.

Related


Last updated: July 29, 2026 Updated by: Grok Build: Grok 4.5 Package tip reference: c9ff99c (main)

Clone this wiki locally