Commit 87900556 authored by Andrey Filippov's avatar Andrey Filippov
Browse files

added more simulation images, more fixing of JPEG tail

parent e531b93e
Loading
Loading
Loading
Loading
+64 −23
Original line number Diff line number Diff line
[*]
[*] GTKWave Analyzer v3.3.66 (w)1999-2015 BSI
[*] Sun Nov 13 21:22:41 2016
[*] Mon Nov 14 07:51:42 2016
[*]
[dumpfile] "/home/eyesis/git/x393-neon/simulation/x393_dut-20161113125952314.fst"
[dumpfile_mtime] "Sun Nov 13 21:20:31 2016"
[dumpfile_size] 402520126
[dumpfile] "/home/eyesis/git/x393-neon/simulation/x393_dut-20161114000442972.fst"
[dumpfile_mtime] "Mon Nov 14 07:43:40 2016"
[dumpfile_size] 300146089
[savefile] "/home/eyesis/git/x393-neon/cocotb/x393_cocotb_03.sav"
[timestart] 343131100
[timestart] 240582030
[size] 1814 1171
[pos] 0 0
*-15.683622 343290000 -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
*-13.486365 240613470 -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.
[treeopen] x393_dut.simul_sensor12bits_i.
[treeopen] x393_dut.x393_i.
[treeopen] x393_dut.x393_i.compressor393_i.
[treeopen] x393_dut.x393_i.compressor393_i.cmprs_channel_block[0].
[treeopen] x393_dut.x393_i.compressor393_i.cmprs_channel_block[0].jp_channel_i.
[treeopen] x393_dut.x393_i.compressor393_i.cmprs_channel_block[0].jp_channel_i.huffman_stuffer_meta_i.
[treeopen] x393_dut.x393_i.compressor393_i.cmprs_channel_block[0].jp_channel_i.huffman_stuffer_meta_i.bit_stuffer_metadata_i.
@@ -62,7 +64,7 @@
[sst_vpaned_height] 486
@820
x393_dut.TEST_TITLE[639:0]
@800200
@c00200
-SENSOR0
@28
x393_dut.simul_sensor12bits_i.MRST
@@ -90,9 +92,9 @@ x393_dut.simul_sensor12bits_i.state[3:0]
x393_dut.simul_sensor12bits_i.stated[3:0]
@8022
x393_dut.simul_sensor12bits_i.cntr[15:0]
@1000200
@1401200
-SENSOR0
@800200
@c00200
-SENSOR1
@28
x393_dut.simul_sensor12bits_2_i.ARO
@@ -103,7 +105,7 @@ x393_dut.simul_sensor12bits_2_i.D[11:0]
x393_dut.simul_sensor12bits_2_i.VACT
x393_dut.simul_sensor12bits_2_i.HACT
x393_dut.simul_sensor12bits_2_i.stopped
@1000200
@1401200
-SENSOR1
@c00200
-SENSOR2
@@ -133,7 +135,7 @@ x393_dut.simul_sensor12bits_3_i.stated[3:0]
x393_dut.simul_sensor12bits_3_i.cntr[15:0]
@1401200
-SENSOR2
@800200
@c00200
-SENSOR3
@28
x393_dut.simul_sensor12bits_4_i.ARO
@@ -144,7 +146,7 @@ x393_dut.simul_sensor12bits_4_i.D[11:0]
x393_dut.simul_sensor12bits_4_i.VACT
x393_dut.simul_sensor12bits_4_i.HACT
x393_dut.simul_sensor12bits_4_i.stopped
@1000200
@1401200
-SENSOR3
@c00200
-ARO
@@ -268,9 +270,8 @@ x393_dut.x393_i.timing393_i.rtc393_i.refclk2x_mclk
-rtc
@1401200
-clocks
@800200
-synchronization
@c00200
-synchronization
-sens_sync
@28
x393_dut.x393_i.sensors393_i.sensor_channel_block[0].sensor_channel_i.sens_sync_i.trig
@@ -1248,7 +1249,7 @@ x393_dut.x393_i.compressor393_i.cmprs_channel_block[0].jp_channel_i.ts_pre_stb
x393_dut.x393_i.compressor393_i.cmprs_channel_block[0].jp_channel_i.huffman_stuffer_meta_i.bit_stuffer_metadata_i.ts_rstb
@22
x393_dut.x393_i.compressor393_i.cmprs_channel_block[0].jp_channel_i.huffman_stuffer_meta_i.bit_stuffer_metadata_i.ts_dout[7:0]
@1000200
@1401200
-synchronization
@c00200
-interrupts
@@ -1338,7 +1339,7 @@ x393_dut.x393_i.gpio393_i.ext_pins[9:0]
-group_end
@1401200
-gpio
@800200
@c00200
-event_logger
@22
x393_dut.x393_i.event_logger_i.config_gps[3:0]
@@ -2391,9 +2392,8 @@ x393_dut.x393_i.logger_stb
-buf_xclk_mclk
@1000200
-buf_xclk_mclk
@29
x393_dut.x393_i.event_logger_i.mux_data_valid
@28
x393_dut.x393_i.event_logger_i.mux_data_valid
x393_dut.x393_i.event_logger_i.ts_en
@22
x393_dut.x393_i.event_logger_i.timestamps_rdata[15:0]
@@ -2401,7 +2401,7 @@ x393_dut.x393_i.event_logger_i.mux_data_final[15:0]
x393_dut.x393_i.event_logger_i.data_out[15:0]
@28
x393_dut.x393_i.event_logger_i.data_out_stb
@1000200
@1401200
-event_logger
@28
x393_dut.x393_i.logger_stb
@@ -2746,7 +2746,7 @@ x393_dut.x393_i.sof_out_mclk[3:0]
(3)x393_dut.x393_i.sof_out_mclk[3:0]
@1401200
-group_end
@c00200
@800200
-jpeg3
@22
x393_dut.x393_i.compressor393_i.cmprs_channel_block[3].jp_channel_i.huffman_stuffer_meta_i.data_out[31:0]
@@ -2789,6 +2789,7 @@ x393_dut.x393_i.compressor393_i.cmprs_channel_block[3].jp_channel_i.huffman_stuf
x393_dut.x393_i.compressor393_i.cmprs_channel_block[3].jp_channel_i.huffman_stuffer_meta_i.bit_stuffer_27_32_i.pre_bits_out_w[4:0]
x393_dut.x393_i.compressor393_i.cmprs_channel_block[3].jp_channel_i.huffman_stuffer_meta_i.bit_stuffer_27_32_i.early_length[5:0]
x393_dut.x393_i.compressor393_i.cmprs_channel_block[3].jp_channel_i.huffman_stuffer_meta_i.bit_stuffer_27_32_i.dlen1[5:0]
@23
x393_dut.x393_i.compressor393_i.cmprs_channel_block[3].jp_channel_i.huffman_stuffer_meta_i.bit_stuffer_27_32_i.dlen2[5:0]
@800028
x393_dut.x393_i.compressor393_i.cmprs_channel_block[3].jp_channel_i.huffman_stuffer_meta_i.bit_stuffer_27_32_i.stage[1:0]
@@ -2801,9 +2802,8 @@ x393_dut.x393_i.compressor393_i.cmprs_channel_block[3].jp_channel_i.huffman_stuf
-
@1000200
-bit_stuffer_27_32
@1401200
-jpeg3
@c00200
@800200
-jpeg2
@22
x393_dut.x393_i.compressor393_i.cmprs_channel_block[2].jp_channel_i.huffman_stuffer_meta_i.data_out[31:0]
@@ -2880,7 +2880,48 @@ x393_dut.x393_i.compressor393_i.cmprs_channel_block[2].jp_channel_i.huffman_stuf
-
@1000200
-bit_stuffer
@1401200
-jpeg2
@c00200
-jpeg0
@22
x393_dut.x393_i.compressor393_i.cmprs_channel_block[0].jp_channel_i.huffman_stuffer_meta_i.data_out[31:0]
x393_dut.x393_i.compressor393_i.cmprs_channel_block[0].jp_channel_i.huffman_stuffer_meta_i.data_out_valid
x393_dut.x393_i.compressor393_i.cmprs_channel_block[0].jp_channel_i.huffman_stuffer_meta_i.stuffer_do32[31:0]
x393_dut.x393_i.compressor393_i.cmprs_channel_block[0].jp_channel_i.huffman_stuffer_meta_i.stuffer_bytes[1:0]
x393_dut.x393_i.compressor393_i.cmprs_channel_block[0].jp_channel_i.huffman_stuffer_meta_i.stuffer_dv
@800200
-bit_stuffer
@22
x393_dut.x393_i.compressor393_i.cmprs_channel_block[0].jp_channel_i.huffman_stuffer_meta_i.bit_stuffer_27_32_i.xclk
x393_dut.x393_i.compressor393_i.cmprs_channel_block[0].jp_channel_i.huffman_stuffer_meta_i.bit_stuffer_27_32_i.d_out[31:0]
x393_dut.x393_i.compressor393_i.cmprs_channel_block[0].jp_channel_i.huffman_stuffer_meta_i.bit_stuffer_27_32_i.dv
x393_dut.x393_i.compressor393_i.cmprs_channel_block[0].jp_channel_i.huffman_stuffer_meta_i.bit_stuffer_27_32_i.bytes_out[1:0]
x393_dut.x393_i.compressor393_i.cmprs_channel_block[0].jp_channel_i.huffman_stuffer_meta_i.bit_stuffer_27_32_i.flush_in
@28
(1)x393_dut.x393_i.compressor393_i.cmprs_channel_block[0].jp_channel_i.huffman_stuffer_meta_i.bit_stuffer_27_32_i.flush_stage[2:0]
@c00022
x393_dut.x393_i.compressor393_i.cmprs_channel_block[0].jp_channel_i.huffman_stuffer_meta_i.bit_stuffer_27_32_i.flush_stage[2:0]
@28
(0)x393_dut.x393_i.compressor393_i.cmprs_channel_block[0].jp_channel_i.huffman_stuffer_meta_i.bit_stuffer_27_32_i.flush_stage[2:0]
(1)x393_dut.x393_i.compressor393_i.cmprs_channel_block[0].jp_channel_i.huffman_stuffer_meta_i.bit_stuffer_27_32_i.flush_stage[2:0]
(2)x393_dut.x393_i.compressor393_i.cmprs_channel_block[0].jp_channel_i.huffman_stuffer_meta_i.bit_stuffer_27_32_i.flush_stage[2:0]
@1401200
-group_end
@22
x393_dut.x393_i.compressor393_i.cmprs_channel_block[0].jp_channel_i.huffman_stuffer_meta_i.bit_stuffer_27_32_i.flush_out
x393_dut.x393_i.compressor393_i.cmprs_channel_block[0].jp_channel_i.huffman_stuffer_meta_i.bit_stuffer_27_32_i.ds
x393_dut.x393_i.compressor393_i.cmprs_channel_block[0].jp_channel_i.huffman_stuffer_meta_i.bit_stuffer_27_32_i.din[26:0]
x393_dut.x393_i.compressor393_i.cmprs_channel_block[0].jp_channel_i.huffman_stuffer_meta_i.bit_stuffer_27_32_i.dlen[4:0]
x393_dut.x393_i.compressor393_i.cmprs_channel_block[0].jp_channel_i.huffman_stuffer_meta_i.bit_stuffer_27_32_i.early_length[5:0]
x393_dut.x393_i.compressor393_i.cmprs_channel_block[0].jp_channel_i.huffman_stuffer_meta_i.bit_stuffer_27_32_i.dlen1[5:0]
x393_dut.x393_i.compressor393_i.cmprs_channel_block[0].jp_channel_i.huffman_stuffer_meta_i.bit_stuffer_27_32_i.dlen2[5:0]
x393_dut.x393_i.compressor393_i.cmprs_channel_block[0].jp_channel_i.huffman_stuffer_meta_i.bit_stuffer_27_32_i.pre_bits_out_w[4:0]
x393_dut.x393_i.compressor393_i.cmprs_channel_block[0].jp_channel_i.huffman_stuffer_meta_i.bit_stuffer_27_32_i.stage[1:0]
@200
-
@1000200
-bit_stuffer
@1401200
-jpeg0
[pattern_trace] 1
[pattern_trace] 0
+5 −3
Original line number Diff line number Diff line
@@ -71,7 +71,8 @@ module bit_stuffer_27_32#(
//    reg               flush_pend;
//    wire              flush_ackn = flush_pend && !flush_stage[0] && !stage[0];
    // probably just a single unconditional flush_in delay (not to appear next after ds) will work
    wire        [4:0] pre_bits_out_w = dlen2[4:0] + 5'h7; 
//    wire        [4:0] pre_bits_out_w = dlen2[4:0] + 5'h7; 
    wire        [5:0] pre_bits_out_w = {1'b0,dlen2[4:0]} + 6'h7; 

    assign d_out = data3[DATA3_LEN-1 -: 32];
    
@@ -165,8 +166,9 @@ module bit_stuffer_27_32#(
            
        end

//        dv <= (ds_stage[0] && dlen1[5]) || (flush_stage[1] && (|data3[DATA3_LEN-1 -: 32]));
        dv <= (stage[0] && dlen1[5]) || (flush_stage[1] && (|data3[DATA3_LEN-1 -: 32])); // both ds and flush-caused (full 32-bit out if available)
///        dv <= (stage[0] && dlen1[5]) || (flush_stage[1] && (|data3[DATA3_LEN-1 -: 32])); // both ds and flush-caused (full 32-bit out if available)
 
        dv <= (stage[0] && dlen1[5]) || (flush_stage[1] && (|pre_bits_out_w[5:3])); // both ds and flush-caused (full 32-bit out if available)
// no difference in number of cells
//        if      (rst )                bytes_out <= 0; // if the dv was caused by 32 bits full - output 4 bytes
//        else if (ds_stage[1])         bytes_out <= 0; // if the dv was caused by 32 bits full - output 4 bytes
+2 −1
Original line number Diff line number Diff line
@@ -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'h039300cb;      //parallel - modifying trigger/timestamps -0.050/13 80.38%
        parameter FPGA_VERSION =          32'h039300cc;      //parallel - more jpeg tail -0.268/56, 80.24 %
//      parameter FPGA_VERSION =          32'h039300cb;      //parallel - modifying trigger/timestamps -0.050/13 80.38%
//      parameter FPGA_VERSION =          32'h039300ca;      //parallel - and more ... fixed -0.267/46, 80.42%
//      parameter FPGA_VERSION =          32'h039300c9;      //parallel - trying more ...-0.123/32 79.82%
//      parameter FPGA_VERSION =          32'h039300c8;      //parallel - trying to fix "premature..." -0.121/21, 80.2%
+11 −4
Original line number Diff line number Diff line
@@ -74,10 +74,17 @@
//    parameter SENSOR_IMAGE_TYPE2 =       "NORM3",
//    parameter SENSOR_IMAGE_TYPE3 =       "NORM4",

    parameter SENSOR_IMAGE_TYPE0 =       "NORM1",
    parameter SENSOR_IMAGE_TYPE1 =       "NORM2",
    parameter SENSOR_IMAGE_TYPE2 =       "NORM3", // 4",
    parameter SENSOR_IMAGE_TYPE3 =       "NORM3",
//    parameter SENSOR_IMAGE_TYPE0 =       "NORM10",
//    parameter SENSOR_IMAGE_TYPE1 =       "NORM10",
//    parameter SENSOR_IMAGE_TYPE2 =       "NORM11", // 4",
//    parameter SENSOR_IMAGE_TYPE3 =       "NORM12",
    
    parameter SENSOR_IMAGE_TYPE0 =       "NORM13",
    parameter SENSOR_IMAGE_TYPE1 =       "NORM13",
    parameter SENSOR_IMAGE_TYPE2 =       "NORM14", // 4",
    parameter SENSOR_IMAGE_TYPE3 =       "NORM15",
    


    parameter SIMULATE_CMPRS_CMODE0 =     CMPRS_CBIT_CMODE_JPEG18,
    parameter SIMULATE_CMPRS_CMODE1 =     CMPRS_CBIT_CMODE_JPEG18,
+1 −1
Original line number Diff line number Diff line
@@ -35,7 +35,7 @@
3ae 3a3 2cf 212 347 270 161 107 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 11f 350 088 33b 2d1 0c1 1a0 0b4 1a0 0b4 2c3 272 17a 1df 0f6 0a0 193 2a8 063 208 354 07c 2a1 11f 2a1 11f 20b 216 215 173 20b 1ef 3ff 05a 06d 286 004 3f2 3ae 3a3 
0f2 10e 24c 10e 1f6 375 316 19b 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 08b 15f 161 3a5 0b7 1a3 33f 30c 33f 30c 00c 208 05b 052 060 217 214 279 0f2 04f 0a3 025 0ea 278 0ea 278 133 112 3c6 076 0c7 26f 064 17f 202 2ba 08a 2f2 0f2 10e 
13e 15d 2a3 180 047 197 174 034 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 129 3da 0f2 3e4 31e 101 167 3c9 167 3c9 0af 394 15c 063 2f3 212 306 0f8 17a 2ab 1b2 08b 0fc 276 0fc 276 0f4 243 2d7 355 3ec 1b4 07a 391 0d1 344 012 0f0 13e 15d 
193 191 0d2 066 339 1d6 17c 1d2 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 108 036 0b0 3f7 3c3 03d 0f8 306 3dd 117 3ea 117 3ea 1ab 015 17e 310 1af 192 168 324 2fb 21d 382 2ae 3d7 219 3d7 219 24e 2a9 04a 312 07a 0bd 141 390 1d8 122 39b 2ea 193 191 
193 191 0d2 066 339 1d6 17c 1d2 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 3f7 3c3 03d 0f8 306 3dd 117 3ea 117 3ea 1ab 015 17e 310 1af 192 168 324 2fb 21d 382 2ae 3d7 219 3d7 219 24e 2a9 04a 312 07a 0bd 141 390 1d8 122 39b 2ea 193 191 
2f1 2aa 1da 2c1 3cb 132 02c 375 3b4 06a 2a8 08d 3c3 336 260 218 260 218 2a4 160 0f7 293 159 3fc 1f7 218 041 3e1 16f 336 351 071 351 071 000 08a 1c1 15b 194 198 23c 1fc 274 3a3 314 38e 27b 261 27b 261 241 344 11d 0ac 371 08c 3b9 27c 218 156 024 1e1 2f1 2aa 
259 1a9 2bc 191 2ff 0ab 286 21c 2a1 2fa 0ff 37e 115 0d5 0c8 113 0c8 113 3c4 075 05b 27b 364 08d 027 3da 1fd 19f 359 00c 114 25d 114 25d 0ae 1f5 325 042 3a2 322 281 282 0e7 03e 166 02b 1e8 04e 1e8 04e 1cd 114 252 122 1d1 220 0e2 155 291 0de 2af 2d5 259 1a9 
0c9 38c 076 1d6 1d4 140 188 2c9 37e 3b6 0ce 204 3a7 2b0 27a 232 27a 232 2fc 140 2a0 1c0 359 363 389 20a 273 332 1c4 35e 360 2ae 360 2ae 0b4 154 2ab 0c6 0d8 332 337 1b5 353 0ee 379 185 31e 0e0 31e 0e0 1f2 119 0e7 176 09b 278 1bc 11a 043 0bc 03a 2c7 0c9 38c 
Loading