clk clk rst_n rst_n bram_addr[12:0] bram_addr[12:0] bram_din[31:0] bram_din[31:0] bram_dout[31:0] bram_dout[31:0] bram_en bram_en bram_we[3:0] bram_we[3:0] busy busy spi_done spi_done error_busy error_busy asic_rst_n asic_rst_n asic_trig asic_trig asic_csn asic_csn asic_sck asic_sck asic_si asic_si asic_so asic_so bit_cnt[31:0] bit_cnt[31:0] frame_bits[31:0] frame_bits[31:0] shift_in[31:0] shift_in[31:0] frame_in[31:0] frame_in[31:0] read_response[7:0] read_response[7:0] CLK_PERIOD[31:0] CLK_PERIOD[31:0]