pub mod chiplets;
pub mod decoder;
mod rows;
pub use rows::{RowIndex, RowIndexError};
mod main_trace;
pub use main_trace::{MainTrace, MainTraceRow};
pub const MIN_TRACE_LEN: usize = 64;
pub const SYS_TRACE_WIDTH: usize = 6;
pub const DECODER_TRACE_WIDTH: usize = 24;
pub const STACK_TRACE_WIDTH: usize = 19;
pub mod log_deferred {
use core::ops::Range;
use super::chiplets::hasher::{CAPACITY_LEN, Hasher};
pub const HELPER_ADDR_IDX: usize = 0;
pub const HELPER_STATE_PREV_RANGE: Range<usize> = Range {
start: HELPER_ADDR_IDX + 1,
end: HELPER_ADDR_IDX + 1 + CAPACITY_LEN,
};
pub const STACK_STMNT_RANGE: Range<usize> = Hasher::RATE1_RANGE;
pub const STACK_STATE_NEW_RANGE: Range<usize> = Hasher::RATE0_RANGE;
}
pub const RANGE_CHECK_TRACE_WIDTH: usize = 2;
pub const CHIPLET_CONTROLLER_OFFSET: usize = 1;
pub const CHIPLET_CLK_WIDTH: usize = 1;
pub const CHIPLET_PAYLOAD_WIDTH: usize = CHIPLET_CONTROLLER_OFFSET + chiplets::hasher::TRACE_WIDTH;
pub const CHIPLETS_WIDTH: usize = CHIPLET_PAYLOAD_WIDTH + CHIPLET_CLK_WIDTH;
pub mod poseidon2_permutation {
pub use crate::constraints::poseidon2_permutation::columns::NUM_POSEIDON2_PERMUTATION_COLS;
}
pub const TRACE_WIDTH: usize = SYS_TRACE_WIDTH
+ DECODER_TRACE_WIDTH
+ STACK_TRACE_WIDTH
+ RANGE_CHECK_TRACE_WIDTH
+ CHIPLETS_WIDTH;
pub const AUX_TRACE_WIDTH: usize = crate::LOGUP_AUX_TRACE_WIDTH;
pub const AUX_TRACE_RAND_CHALLENGES: usize = 2;
pub mod bus_message {
pub const LABEL_IDX: usize = 0;
pub const ADDR_IDX: usize = 1;
pub const NODE_INDEX_IDX: usize = 2;
pub const STATE_START_IDX: usize = 3;
pub const CAPACITY_START_IDX: usize = 11;
pub const CAPACITY_DOMAIN_IDX: usize = CAPACITY_START_IDX + 1;
}