cocotb_benches.dau_broadcast_hash_join_tb

Attributes

_MASK32

_MASK64

_INT32_MIN

_INT32_MAX

_KEY_SPACE

_BUILD

_PROBE

_CARRY_BUILD

_CARRY_PROBE

_Q3_MIX

Functions

probe_before_any_load_misses(dut)

load_then_probe_inner_join(dut)

carry_build_columns_exact_hits(dut)

q3_style_mix_carries_build_and_probe_columns(dut)

all_probe_rows_miss_emits_nothing(dut)

last_writer_wins_on_duplicate_build_key(dut)

boundary_keys_join(dut)

second_load_replaces_the_table(dut)

repeated_probe_batches_reuse_the_table(dut)

joined_count_reports_emitted_rows(dut)

last_lands_on_final_emitted_row(dut)

output_backpressure_holds_stable(dut)

reset_mid_probe_recovers(dut)

out_of_range_probe_key_reports_range_error(dut)

negative_probe_key_reports_range_error(dut)

out_of_range_build_key_reports_range_error(dut)

range_error_mid_batch_after_hits(dut)

torn_probe_row_reports_stream_error(dut)

torn_build_row_reports_stream_error(dut)

torn_probe_row_mid_batch_reports_stream_error(dut)

reserved_out_select_drains_batch_then_reports_config_error(dut)

out_select_seven_reports_config_error(dut)

config_precedence_over_torn_and_out_of_range_first_row(dut)

field_select_latches_at_first_row(dut)

error_status_survives_backpressure(dut)

success_status_survives_backpressure(dut)

load_done_status_survives_backpressure(dut)

status_close_out_waits_for_backpressured_tail(dut)

error_close_out_waits_for_backpressured_tail(dut)

constrained_random_batches_match_golden(dut)

_signed32(value) → int

_drive_cfg(dut, *, load, cfg) → None

_start(dut) → None

_pack_rows(rows) → list[int]

_send_words(dut, words) → None

_send_rows(dut, rows) → None

_send_words_flip_cfg(dut, words, *, flip_after, new_cfg) → None

_send_batches(dut, batches) → None

_drain_words(dut) → None

_load(dut, build_rows) → None

_probe(dut, rows, cfg, *[, ready_pattern])

_collect_probe_output(dut, ready_pattern) → list[int]

_assert_quiescent(dut) → None

_expect_status(dut, *, error[, code]) → None

Module Contents

cocotb_benches.dau_broadcast_hash_join_tb._MASK32 = 4294967295
cocotb_benches.dau_broadcast_hash_join_tb._MASK64 = 18446744073709551615
cocotb_benches.dau_broadcast_hash_join_tb._INT32_MIN = -2147483648
cocotb_benches.dau_broadcast_hash_join_tb._INT32_MAX = 2147483647
cocotb_benches.dau_broadcast_hash_join_tb._KEY_SPACE = 1024
cocotb_benches.dau_broadcast_hash_join_tb._BUILD = [(7, 100, 101, 102), (100, 200, 201, 202), (63, 300, 301, 302), (1023, 400, 401, 402), (5, 500,...
cocotb_benches.dau_broadcast_hash_join_tb._PROBE = [(7, 1000, 1001, 1002), (999, 2000, 2001, 2002), (63, 3000, 3001, 3002), (100, 4000, 4001,...
cocotb_benches.dau_broadcast_hash_join_tb._CARRY_BUILD
cocotb_benches.dau_broadcast_hash_join_tb._CARRY_PROBE
cocotb_benches.dau_broadcast_hash_join_tb._Q3_MIX
async cocotb_benches.dau_broadcast_hash_join_tb.probe_before_any_load_misses(dut)
async cocotb_benches.dau_broadcast_hash_join_tb.load_then_probe_inner_join(dut)
async cocotb_benches.dau_broadcast_hash_join_tb.carry_build_columns_exact_hits(dut)
async cocotb_benches.dau_broadcast_hash_join_tb.q3_style_mix_carries_build_and_probe_columns(dut)
async cocotb_benches.dau_broadcast_hash_join_tb.all_probe_rows_miss_emits_nothing(dut)
async cocotb_benches.dau_broadcast_hash_join_tb.last_writer_wins_on_duplicate_build_key(dut)
async cocotb_benches.dau_broadcast_hash_join_tb.boundary_keys_join(dut)
async cocotb_benches.dau_broadcast_hash_join_tb.second_load_replaces_the_table(dut)
async cocotb_benches.dau_broadcast_hash_join_tb.repeated_probe_batches_reuse_the_table(dut)
async cocotb_benches.dau_broadcast_hash_join_tb.joined_count_reports_emitted_rows(dut)
async cocotb_benches.dau_broadcast_hash_join_tb.last_lands_on_final_emitted_row(dut)
async cocotb_benches.dau_broadcast_hash_join_tb.output_backpressure_holds_stable(dut)
async cocotb_benches.dau_broadcast_hash_join_tb.reset_mid_probe_recovers(dut)
async cocotb_benches.dau_broadcast_hash_join_tb.out_of_range_probe_key_reports_range_error(dut)
async cocotb_benches.dau_broadcast_hash_join_tb.negative_probe_key_reports_range_error(dut)
async cocotb_benches.dau_broadcast_hash_join_tb.out_of_range_build_key_reports_range_error(dut)
async cocotb_benches.dau_broadcast_hash_join_tb.range_error_mid_batch_after_hits(dut)
async cocotb_benches.dau_broadcast_hash_join_tb.torn_probe_row_reports_stream_error(dut)
async cocotb_benches.dau_broadcast_hash_join_tb.torn_build_row_reports_stream_error(dut)
async cocotb_benches.dau_broadcast_hash_join_tb.torn_probe_row_mid_batch_reports_stream_error(dut)
async cocotb_benches.dau_broadcast_hash_join_tb.reserved_out_select_drains_batch_then_reports_config_error(dut)
async cocotb_benches.dau_broadcast_hash_join_tb.out_select_seven_reports_config_error(dut)
async cocotb_benches.dau_broadcast_hash_join_tb.config_precedence_over_torn_and_out_of_range_first_row(dut)
async cocotb_benches.dau_broadcast_hash_join_tb.field_select_latches_at_first_row(dut)
async cocotb_benches.dau_broadcast_hash_join_tb.error_status_survives_backpressure(dut)
async cocotb_benches.dau_broadcast_hash_join_tb.success_status_survives_backpressure(dut)
async cocotb_benches.dau_broadcast_hash_join_tb.load_done_status_survives_backpressure(dut)
async cocotb_benches.dau_broadcast_hash_join_tb.status_close_out_waits_for_backpressured_tail(dut)
async cocotb_benches.dau_broadcast_hash_join_tb.error_close_out_waits_for_backpressured_tail(dut)
async cocotb_benches.dau_broadcast_hash_join_tb.constrained_random_batches_match_golden(dut)
cocotb_benches.dau_broadcast_hash_join_tb._signed32(value: int) → int
cocotb_benches.dau_broadcast_hash_join_tb._drive_cfg(dut, *, load: int, cfg: dau_core.operators.BroadcastJoinConfig) → None
async cocotb_benches.dau_broadcast_hash_join_tb._start(dut) → None
cocotb_benches.dau_broadcast_hash_join_tb._pack_rows(rows) → list[int]
async cocotb_benches.dau_broadcast_hash_join_tb._send_words(dut, words) → None
async cocotb_benches.dau_broadcast_hash_join_tb._send_rows(dut, rows) → None
async cocotb_benches.dau_broadcast_hash_join_tb._send_words_flip_cfg(dut, words, *, flip_after: int, new_cfg: dau_core.operators.BroadcastJoinConfig) → None
async cocotb_benches.dau_broadcast_hash_join_tb._send_batches(dut, batches) → None
async cocotb_benches.dau_broadcast_hash_join_tb._drain_words(dut) → None
async cocotb_benches.dau_broadcast_hash_join_tb._load(dut, build_rows) → None
async cocotb_benches.dau_broadcast_hash_join_tb._probe(dut, rows, cfg: dau_core.operators.BroadcastJoinConfig, *, ready_pattern=(1,))
async cocotb_benches.dau_broadcast_hash_join_tb._collect_probe_output(dut, ready_pattern) → list[int]
async cocotb_benches.dau_broadcast_hash_join_tb._assert_quiescent(dut) → None
async cocotb_benches.dau_broadcast_hash_join_tb._expect_status(dut, *, error: bool, code: int = 0) → None