Loading cocotb/x393_cocotb_03.sav +72 −14 Original line number Diff line number Diff line [*] [*] GTKWave Analyzer v3.3.66 (w)1999-2015 BSI [*] Sat Oct 29 21:44:32 2016 [*] Mon Nov 7 00:04:33 2016 [*] [dumpfile] "/home/eyesis/git/x393-neon/simulation/x393_dut-20161028224636205.fst" [dumpfile_mtime] "Sat Oct 29 06:54:57 2016" [dumpfile_size] 487758287 [dumpfile] "/home/eyesis/git/x393-neon/simulation/x393_dut-20161106163115099.fst" [dumpfile_mtime] "Mon Nov 7 00:03:53 2016" [dumpfile_size] 125174737 [savefile] "/home/eyesis/git/x393-neon/cocotb/x393_cocotb_03.sav" [timestart] 0 [size] 1814 1171 [pos] 0 0 *-25.418884 64300000 53094051 136169617 426878253 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 *-25.890059 103100000 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 [treeopen] x393_dut. [treeopen] x393_dut.simul_sensor12bits_2_i. [treeopen] x393_dut.simul_sensor12bits_3_i. Loading @@ -31,13 +31,14 @@ [treeopen] x393_dut.x393_i.sensors393_i. [treeopen] x393_dut.x393_i.sensors393_i.sensor_channel_block[0]. [treeopen] x393_dut.x393_i.sensors393_i.sensor_channel_block[0].sensor_channel_i. [treeopen] x393_dut.x393_i.sensors393_i.sensor_channel_block[0].sensor_channel_i.sens_sync_i. [treeopen] x393_dut.x393_i.sensors393_i.sensor_channel_block[0].sensor_channel_i.sensor_i2c_io_i. [treeopen] x393_dut.x393_i.sensors393_i.sensor_channel_block[0].sensor_channel_i.sensor_i2c_io_i.sensor_i2c_i. [treeopen] x393_dut.x393_i.sensors393_i.sensor_channel_block[1]. [treeopen] x393_dut.x393_i.sensors393_i.sensor_channel_block[1].sensor_channel_i. [treeopen] x393_dut.x393_i.sensors393_i.sensor_channel_block[1].sensor_channel_i.sens_sync_i. [treeopen] x393_dut.x393_i.sensors393_i.sensor_channel_block[2]. [treeopen] x393_dut.x393_i.sensors393_i.sensor_channel_block[2].sensor_channel_i. [treeopen] x393_dut.x393_i.sensors393_i.sensor_channel_block[2].sensor_channel_i.sens_parallel12_i. [treeopen] x393_dut.x393_i.sensors393_i.sensor_channel_block[2].sensor_channel_i.sens_sync_i. [treeopen] x393_dut.x393_i.sensors393_i.sensor_channel_block[3]. [treeopen] x393_dut.x393_i.sensors393_i.sensor_channel_block[3].sensor_channel_i. Loading @@ -45,7 +46,7 @@ [treeopen] x393_dut.x393_i.sensors393_i.sensor_channel_block[3].sensor_channel_i.sens_sync_i. [treeopen] x393_dut.x393_i.timing393_i. [treeopen] x393_dut.x393_i.timing393_i.camsync393_i. [sst_width] 307 [sst_width] 440 [signals_width] 319 [sst_expanded] 1 [sst_vpaned_height] 486 Loading Loading @@ -775,13 +776,13 @@ x393_dut.x393_i.axiwr_wen x393_dut.x393_i.axiwr_wdata[31:0] @1401200 - cmd @800200 @c00200 -i2c @22 x393_dut.x393_i.sensors393_i.sensor_channel_block[0].sensor_channel_i.sensor_i2c_io_i.sensor_i2c_i.rpointer[5:0] x393_dut.x393_i.sensors393_i.sensor_channel_block[0].sensor_channel_i.sensor_i2c_io_i.sensor_i2c_i.wpage0[3:0] x393_dut.x393_i.sensors393_i.sensor_channel_block[0].sensor_channel_i.sensor_i2c_io_i.sensor_i2c_i.page_r[3:0] @1000200 @1401200 -i2c @c00200 -gpio Loading Loading @@ -1842,7 +1843,7 @@ x393_dut.IMU_SDA x393_dut.IMU_TAPS[5:1] @1401200 -IMU_ @800200 @c00200 -camsync_ext_int @800022 x393_dut.x393_i.timing393_i.camsync393_i.gpio_in[9:0] Loading Loading @@ -1930,7 +1931,7 @@ x393_dut.x393_i.timing393_i.camsync393_i.input_use[9:0] -group_end -group_end -group_end @1000200 @1401200 -camsync_ext_int @800200 -sequencers_0 Loading @@ -1955,7 +1956,6 @@ x393_dut.x393_i.sensors393_i.sensor_channel_block[0].sensor_channel_i.sensor_i2c -group_end @28 x393_dut.x393_i.sensors393_i.sensor_channel_block[0].sensor_channel_i.sensor_i2c_io_i.sensor_i2c_i.sync_to_seq @29 x393_dut.x393_i.sensors393_i.sensor_channel_block[0].sensor_channel_i.sensor_i2c_io_i.sensor_i2c_i.sync_to_eof @22 x393_dut.x393_i.sensors393_i.sensor_channel_block[0].sensor_channel_i.sensor_i2c_io_i.sensor_i2c_i.frame_num_seq[3:0] Loading @@ -1967,14 +1967,72 @@ x393_dut.x393_i.sensors393_i.sensor_channel_block[0].sensor_channel_i.sensor_i2c -i2c_seq_0 @800200 -sensor_channel0 @200 - @28 x393_dut.x393_i.sensors393_i.sensor_channel_block[0].sensor_channel_i.sof_out_mclk x393_dut.x393_i.sensors393_i.sensor_channel_block[0].sensor_channel_i.eof_mclk x393_dut.x393_i.sensors393_i.sensor_channel_block[0].sensor_channel_i.eof_out x393_dut.x393_i.sensors393_i.sensor_channel_block[0].sensor_channel_i.eof_out_r x393_dut.x393_i.sensors393_i.sensor_channel_block[0].sensor_channel_i.en_mclk x393_dut.x393_i.sensors393_i.sensor_channel_block[0].sensor_channel_i.hact @22 x393_dut.x393_i.sensors393_i.sensor_channel_block[0].sensor_channel_i.frame_num_seq[3:0] @800200 -sesns_sync @28 x393_dut.x393_i.sensors393_i.sensor_channel_block[0].sensor_channel_i.sens_sync_i.sof_out x393_dut.x393_i.sensors393_i.sensor_channel_block[0].sensor_channel_i.sens_sync_i.sof_late x393_dut.x393_i.sensors393_i.sensor_channel_block[0].sensor_channel_i.sens_sync_i.sof_out_pclk @200 - @1000200 -sesns_sync -sensor_channel0 -sequencers_0 @800200 -sensor_channel_a @28 x393_dut.simul_sensor12bits_2_i.MRST x393_dut.simul_sensor12bits_2_i.HACT x393_dut.simul_sensor12bits_2_i.VACT x393_dut.x393_i.sensors393_i.sensor_channel_block[1].sensor_channel_i.sof_out_mclk x393_dut.x393_i.sensors393_i.sensor_channel_block[1].sensor_channel_i.en_mclk x393_dut.x393_i.sensors393_i.sensor_channel_block[1].sensor_channel_i.en_pclk @22 x393_dut.x393_i.sensors393_i.sensor_channel_block[1].sensor_channel_i.frame_num_seq[3:0] @28 x393_dut.x393_i.sensors393_i.sensor_channel_block[1].sensor_channel_i.sens_sync_i.sof_out x393_dut.x393_i.sensors393_i.sensor_channel_block[1].sensor_channel_i.sens_sync_i.sof_out_pclk x393_dut.x393_i.sensors393_i.sensor_channel_block[1].sensor_channel_i.sens_sync_i.sof_late @22 x393_dut.x393_i.sensors393_i.sensor_channel_block[1].sensor_channel_i.frame_num_seq[3:0] @200 -chn2 @28 x393_dut.simul_sensor12bits_3_i.MRST x393_dut.simul_sensor12bits_3_i.HACT x393_dut.simul_sensor12bits_3_i.VACT x393_dut.x393_i.sensors393_i.sensor_channel_block[2].sensor_channel_i.en_mclk x393_dut.x393_i.sensors393_i.sensor_channel_block[2].sensor_channel_i.en_pclk x393_dut.x393_i.sensors393_i.sensor_channel_block[2].sensor_channel_i.sof_out_mclk @29 x393_dut.x393_i.sensors393_i.sensor_channel_block[2].sensor_channel_i.eof_mclk @22 x393_dut.x393_i.sensors393_i.sensor_channel_block[2].sensor_channel_i.frame_num_seq[3:0] @800200 -sens_sync2 @200 - @1000200 -sens_sync2 -sensor_channel_a @800022 x393_dut.x393_i.sof_out_mclk[3:0] @28 (0)x393_dut.x393_i.sof_out_mclk[3:0] (1)x393_dut.x393_i.sof_out_mclk[3:0] (2)x393_dut.x393_i.sof_out_mclk[3:0] (3)x393_dut.x393_i.sof_out_mclk[3:0] @1001200 -group_end [pattern_trace] 1 [pattern_trace] 0 cocotb/x393_dut.v +1 −1 Original line number Diff line number Diff line Loading @@ -1613,7 +1613,7 @@ simul_axi_hp_wr #( .new_bayer (0) //SENSOR12BITS_NEW_BAYER) was 1 ) simul_sensor12bits_2_i ( .MCLK (PX2_MCLK), // input .MRST (PX2_MRST), // input .MRST (PX2_MRST & 0), // input // force reset !!! .ARO (PX2_ARO), // input .ARST (PX2_ARST), // input .OE (1'b0), // input output enable active low Loading fpga_version.vh +2 −1 Original line number Diff line number Diff line Loading @@ -35,7 +35,8 @@ * contains all the components and scripts required to completely simulate it * with at least one of the Free Software programs. */ parameter FPGA_VERSION = 32'h039300c6; //parallel - same -0.132 /31, 80.73% parameter FPGA_VERSION = 32'h039300c7; //parallel - disable SoF when channel disabled // parameter FPGA_VERSION = 32'h039300c6; //parallel - same -0.132 /31, 80.73% // parameter FPGA_VERSION = 32'h039300c5; //parallel - made i2c ahead of system frame number for eof -0.027/12 , 82.08% // parameter FPGA_VERSION = 32'h039300c4; //parallel - option to use EOF for i2c sequencer timing met, 79.66% // parameter FPGA_VERSION = 32'h039300c3; //parallel - fixing timestamps -0.209/47, 79.86% Loading py393/x393_jpeg.py +7 −0 Original line number Diff line number Diff line Loading @@ -2166,6 +2166,7 @@ measure_all "*DI" setup_all_sensors True None 0xf set_sensor_io_ctl all None None 1 # Set ARO low - check if it is still needed? #just testing set_gpio_ports 1 1 # enable software gpio pins and porta (camsync) set_gpio_pins 0 1 # pin 0 low, pin 1 - high Loading Loading @@ -2290,6 +2291,12 @@ set_gpio_pins 0 1 # pin 0 low, pin 1 - high set_logger_params_file "/home/eyesis/git/x393-neon/attic/imu_config.bin" write_control_register 0x480 0x400 # disable sensor chn 2 reset_camsync_inout 1 # reset all outputs set_camsync_period 31 # set bit duration set_camsync_period 8000 # 80 usec Loading sensor/sens_sync.v +11 −7 Original line number Diff line number Diff line Loading @@ -98,7 +98,7 @@ module sens_sync#( reg trig_r; reg [SENS_SYNC_MINBITS-1:0] period_cntr; reg period_dly; // runnning counter to enforce > min period reg en_pclk; assign set_data_mclk = cmd_we && ((cmd_a == SENS_SYNC_MULT) || (cmd_a == SENS_SYNC_LATE)); assign zero_frames_left = !(|sub_frames_left); assign hact_single = hact && !hact_r; Loading @@ -113,6 +113,9 @@ module sens_sync#( end always @ (posedge pclk) begin en_pclk <= en; if (set_data_pclk && (cmd_a_r == SENS_SYNC_MULT)) sub_frames_pclk <= cmd_data_r[SENS_SYNC_FBITS-1:0]; Loading Loading @@ -186,7 +189,7 @@ module sens_sync#( ); pulse_cross_clock pulse_cross_clock_trig_in_pclk_i ( .rst (mrst), // input .rst (!en), // input .src_clk (mclk), // input .dst_clk (pclk), // input .in_pulse (trig_in), // input Loading @@ -195,17 +198,19 @@ module sens_sync#( ); // pclk -> mclk pulse_cross_clock pulse_cross_clock_sof_out_i ( .rst (prst), // input pulse_cross_clock_orst pulse_cross_clock_sof_out_i ( .rst (!en_pclk), // input .src_clk (pclk), // input .orst (!en), // input // should work even if pclk is not running .dst_clk (mclk), // input .in_pulse (pre_sof_out), // input .out_pulse (sof_out), // output .busy() // output ); pulse_cross_clock pulse_cross_clock_sof_late_i ( .rst (prst), // input pulse_cross_clock_orst pulse_cross_clock_sof_late_i ( .rst (!en_pclk), // input .src_clk (pclk), // input .orst (!en), // input // should work even if pclk is not running .dst_clk (mclk), // input .in_pulse (pre_sof_late), // input .out_pulse (sof_late), // output Loading @@ -213,4 +218,3 @@ module sens_sync#( ); endmodule Loading
cocotb/x393_cocotb_03.sav +72 −14 Original line number Diff line number Diff line [*] [*] GTKWave Analyzer v3.3.66 (w)1999-2015 BSI [*] Sat Oct 29 21:44:32 2016 [*] Mon Nov 7 00:04:33 2016 [*] [dumpfile] "/home/eyesis/git/x393-neon/simulation/x393_dut-20161028224636205.fst" [dumpfile_mtime] "Sat Oct 29 06:54:57 2016" [dumpfile_size] 487758287 [dumpfile] "/home/eyesis/git/x393-neon/simulation/x393_dut-20161106163115099.fst" [dumpfile_mtime] "Mon Nov 7 00:03:53 2016" [dumpfile_size] 125174737 [savefile] "/home/eyesis/git/x393-neon/cocotb/x393_cocotb_03.sav" [timestart] 0 [size] 1814 1171 [pos] 0 0 *-25.418884 64300000 53094051 136169617 426878253 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 *-25.890059 103100000 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 [treeopen] x393_dut. [treeopen] x393_dut.simul_sensor12bits_2_i. [treeopen] x393_dut.simul_sensor12bits_3_i. Loading @@ -31,13 +31,14 @@ [treeopen] x393_dut.x393_i.sensors393_i. [treeopen] x393_dut.x393_i.sensors393_i.sensor_channel_block[0]. [treeopen] x393_dut.x393_i.sensors393_i.sensor_channel_block[0].sensor_channel_i. [treeopen] x393_dut.x393_i.sensors393_i.sensor_channel_block[0].sensor_channel_i.sens_sync_i. [treeopen] x393_dut.x393_i.sensors393_i.sensor_channel_block[0].sensor_channel_i.sensor_i2c_io_i. [treeopen] x393_dut.x393_i.sensors393_i.sensor_channel_block[0].sensor_channel_i.sensor_i2c_io_i.sensor_i2c_i. [treeopen] x393_dut.x393_i.sensors393_i.sensor_channel_block[1]. [treeopen] x393_dut.x393_i.sensors393_i.sensor_channel_block[1].sensor_channel_i. [treeopen] x393_dut.x393_i.sensors393_i.sensor_channel_block[1].sensor_channel_i.sens_sync_i. [treeopen] x393_dut.x393_i.sensors393_i.sensor_channel_block[2]. [treeopen] x393_dut.x393_i.sensors393_i.sensor_channel_block[2].sensor_channel_i. [treeopen] x393_dut.x393_i.sensors393_i.sensor_channel_block[2].sensor_channel_i.sens_parallel12_i. [treeopen] x393_dut.x393_i.sensors393_i.sensor_channel_block[2].sensor_channel_i.sens_sync_i. [treeopen] x393_dut.x393_i.sensors393_i.sensor_channel_block[3]. [treeopen] x393_dut.x393_i.sensors393_i.sensor_channel_block[3].sensor_channel_i. Loading @@ -45,7 +46,7 @@ [treeopen] x393_dut.x393_i.sensors393_i.sensor_channel_block[3].sensor_channel_i.sens_sync_i. [treeopen] x393_dut.x393_i.timing393_i. [treeopen] x393_dut.x393_i.timing393_i.camsync393_i. [sst_width] 307 [sst_width] 440 [signals_width] 319 [sst_expanded] 1 [sst_vpaned_height] 486 Loading Loading @@ -775,13 +776,13 @@ x393_dut.x393_i.axiwr_wen x393_dut.x393_i.axiwr_wdata[31:0] @1401200 - cmd @800200 @c00200 -i2c @22 x393_dut.x393_i.sensors393_i.sensor_channel_block[0].sensor_channel_i.sensor_i2c_io_i.sensor_i2c_i.rpointer[5:0] x393_dut.x393_i.sensors393_i.sensor_channel_block[0].sensor_channel_i.sensor_i2c_io_i.sensor_i2c_i.wpage0[3:0] x393_dut.x393_i.sensors393_i.sensor_channel_block[0].sensor_channel_i.sensor_i2c_io_i.sensor_i2c_i.page_r[3:0] @1000200 @1401200 -i2c @c00200 -gpio Loading Loading @@ -1842,7 +1843,7 @@ x393_dut.IMU_SDA x393_dut.IMU_TAPS[5:1] @1401200 -IMU_ @800200 @c00200 -camsync_ext_int @800022 x393_dut.x393_i.timing393_i.camsync393_i.gpio_in[9:0] Loading Loading @@ -1930,7 +1931,7 @@ x393_dut.x393_i.timing393_i.camsync393_i.input_use[9:0] -group_end -group_end -group_end @1000200 @1401200 -camsync_ext_int @800200 -sequencers_0 Loading @@ -1955,7 +1956,6 @@ x393_dut.x393_i.sensors393_i.sensor_channel_block[0].sensor_channel_i.sensor_i2c -group_end @28 x393_dut.x393_i.sensors393_i.sensor_channel_block[0].sensor_channel_i.sensor_i2c_io_i.sensor_i2c_i.sync_to_seq @29 x393_dut.x393_i.sensors393_i.sensor_channel_block[0].sensor_channel_i.sensor_i2c_io_i.sensor_i2c_i.sync_to_eof @22 x393_dut.x393_i.sensors393_i.sensor_channel_block[0].sensor_channel_i.sensor_i2c_io_i.sensor_i2c_i.frame_num_seq[3:0] Loading @@ -1967,14 +1967,72 @@ x393_dut.x393_i.sensors393_i.sensor_channel_block[0].sensor_channel_i.sensor_i2c -i2c_seq_0 @800200 -sensor_channel0 @200 - @28 x393_dut.x393_i.sensors393_i.sensor_channel_block[0].sensor_channel_i.sof_out_mclk x393_dut.x393_i.sensors393_i.sensor_channel_block[0].sensor_channel_i.eof_mclk x393_dut.x393_i.sensors393_i.sensor_channel_block[0].sensor_channel_i.eof_out x393_dut.x393_i.sensors393_i.sensor_channel_block[0].sensor_channel_i.eof_out_r x393_dut.x393_i.sensors393_i.sensor_channel_block[0].sensor_channel_i.en_mclk x393_dut.x393_i.sensors393_i.sensor_channel_block[0].sensor_channel_i.hact @22 x393_dut.x393_i.sensors393_i.sensor_channel_block[0].sensor_channel_i.frame_num_seq[3:0] @800200 -sesns_sync @28 x393_dut.x393_i.sensors393_i.sensor_channel_block[0].sensor_channel_i.sens_sync_i.sof_out x393_dut.x393_i.sensors393_i.sensor_channel_block[0].sensor_channel_i.sens_sync_i.sof_late x393_dut.x393_i.sensors393_i.sensor_channel_block[0].sensor_channel_i.sens_sync_i.sof_out_pclk @200 - @1000200 -sesns_sync -sensor_channel0 -sequencers_0 @800200 -sensor_channel_a @28 x393_dut.simul_sensor12bits_2_i.MRST x393_dut.simul_sensor12bits_2_i.HACT x393_dut.simul_sensor12bits_2_i.VACT x393_dut.x393_i.sensors393_i.sensor_channel_block[1].sensor_channel_i.sof_out_mclk x393_dut.x393_i.sensors393_i.sensor_channel_block[1].sensor_channel_i.en_mclk x393_dut.x393_i.sensors393_i.sensor_channel_block[1].sensor_channel_i.en_pclk @22 x393_dut.x393_i.sensors393_i.sensor_channel_block[1].sensor_channel_i.frame_num_seq[3:0] @28 x393_dut.x393_i.sensors393_i.sensor_channel_block[1].sensor_channel_i.sens_sync_i.sof_out x393_dut.x393_i.sensors393_i.sensor_channel_block[1].sensor_channel_i.sens_sync_i.sof_out_pclk x393_dut.x393_i.sensors393_i.sensor_channel_block[1].sensor_channel_i.sens_sync_i.sof_late @22 x393_dut.x393_i.sensors393_i.sensor_channel_block[1].sensor_channel_i.frame_num_seq[3:0] @200 -chn2 @28 x393_dut.simul_sensor12bits_3_i.MRST x393_dut.simul_sensor12bits_3_i.HACT x393_dut.simul_sensor12bits_3_i.VACT x393_dut.x393_i.sensors393_i.sensor_channel_block[2].sensor_channel_i.en_mclk x393_dut.x393_i.sensors393_i.sensor_channel_block[2].sensor_channel_i.en_pclk x393_dut.x393_i.sensors393_i.sensor_channel_block[2].sensor_channel_i.sof_out_mclk @29 x393_dut.x393_i.sensors393_i.sensor_channel_block[2].sensor_channel_i.eof_mclk @22 x393_dut.x393_i.sensors393_i.sensor_channel_block[2].sensor_channel_i.frame_num_seq[3:0] @800200 -sens_sync2 @200 - @1000200 -sens_sync2 -sensor_channel_a @800022 x393_dut.x393_i.sof_out_mclk[3:0] @28 (0)x393_dut.x393_i.sof_out_mclk[3:0] (1)x393_dut.x393_i.sof_out_mclk[3:0] (2)x393_dut.x393_i.sof_out_mclk[3:0] (3)x393_dut.x393_i.sof_out_mclk[3:0] @1001200 -group_end [pattern_trace] 1 [pattern_trace] 0
cocotb/x393_dut.v +1 −1 Original line number Diff line number Diff line Loading @@ -1613,7 +1613,7 @@ simul_axi_hp_wr #( .new_bayer (0) //SENSOR12BITS_NEW_BAYER) was 1 ) simul_sensor12bits_2_i ( .MCLK (PX2_MCLK), // input .MRST (PX2_MRST), // input .MRST (PX2_MRST & 0), // input // force reset !!! .ARO (PX2_ARO), // input .ARST (PX2_ARST), // input .OE (1'b0), // input output enable active low Loading
fpga_version.vh +2 −1 Original line number Diff line number Diff line Loading @@ -35,7 +35,8 @@ * contains all the components and scripts required to completely simulate it * with at least one of the Free Software programs. */ parameter FPGA_VERSION = 32'h039300c6; //parallel - same -0.132 /31, 80.73% parameter FPGA_VERSION = 32'h039300c7; //parallel - disable SoF when channel disabled // parameter FPGA_VERSION = 32'h039300c6; //parallel - same -0.132 /31, 80.73% // parameter FPGA_VERSION = 32'h039300c5; //parallel - made i2c ahead of system frame number for eof -0.027/12 , 82.08% // parameter FPGA_VERSION = 32'h039300c4; //parallel - option to use EOF for i2c sequencer timing met, 79.66% // parameter FPGA_VERSION = 32'h039300c3; //parallel - fixing timestamps -0.209/47, 79.86% Loading
py393/x393_jpeg.py +7 −0 Original line number Diff line number Diff line Loading @@ -2166,6 +2166,7 @@ measure_all "*DI" setup_all_sensors True None 0xf set_sensor_io_ctl all None None 1 # Set ARO low - check if it is still needed? #just testing set_gpio_ports 1 1 # enable software gpio pins and porta (camsync) set_gpio_pins 0 1 # pin 0 low, pin 1 - high Loading Loading @@ -2290,6 +2291,12 @@ set_gpio_pins 0 1 # pin 0 low, pin 1 - high set_logger_params_file "/home/eyesis/git/x393-neon/attic/imu_config.bin" write_control_register 0x480 0x400 # disable sensor chn 2 reset_camsync_inout 1 # reset all outputs set_camsync_period 31 # set bit duration set_camsync_period 8000 # 80 usec Loading
sensor/sens_sync.v +11 −7 Original line number Diff line number Diff line Loading @@ -98,7 +98,7 @@ module sens_sync#( reg trig_r; reg [SENS_SYNC_MINBITS-1:0] period_cntr; reg period_dly; // runnning counter to enforce > min period reg en_pclk; assign set_data_mclk = cmd_we && ((cmd_a == SENS_SYNC_MULT) || (cmd_a == SENS_SYNC_LATE)); assign zero_frames_left = !(|sub_frames_left); assign hact_single = hact && !hact_r; Loading @@ -113,6 +113,9 @@ module sens_sync#( end always @ (posedge pclk) begin en_pclk <= en; if (set_data_pclk && (cmd_a_r == SENS_SYNC_MULT)) sub_frames_pclk <= cmd_data_r[SENS_SYNC_FBITS-1:0]; Loading Loading @@ -186,7 +189,7 @@ module sens_sync#( ); pulse_cross_clock pulse_cross_clock_trig_in_pclk_i ( .rst (mrst), // input .rst (!en), // input .src_clk (mclk), // input .dst_clk (pclk), // input .in_pulse (trig_in), // input Loading @@ -195,17 +198,19 @@ module sens_sync#( ); // pclk -> mclk pulse_cross_clock pulse_cross_clock_sof_out_i ( .rst (prst), // input pulse_cross_clock_orst pulse_cross_clock_sof_out_i ( .rst (!en_pclk), // input .src_clk (pclk), // input .orst (!en), // input // should work even if pclk is not running .dst_clk (mclk), // input .in_pulse (pre_sof_out), // input .out_pulse (sof_out), // output .busy() // output ); pulse_cross_clock pulse_cross_clock_sof_late_i ( .rst (prst), // input pulse_cross_clock_orst pulse_cross_clock_sof_late_i ( .rst (!en_pclk), // input .src_clk (pclk), // input .orst (!en), // input // should work even if pclk is not running .dst_clk (mclk), // input .in_pulse (pre_sof_late), // input .out_pulse (sof_late), // output Loading @@ -213,4 +218,3 @@ module sens_sync#( ); endmodule