diff --git a/Makefile b/Makefile index 3bccbb9..7a2ef99 100644 --- a/Makefile +++ b/Makefile @@ -1,4 +1,4 @@ -COMMIT_MSG ?= "Finish top-module(axi_slave test_successful): $(shell date '+%Y-%m-%d %H:%M:%S')" +COMMIT_MSG ?= "Finish top-module(axi_slave array_ctrl apb_cfg): $(shell date '+%Y-%m-%d %H:%M:%S')" #-------------------------------------------------------------- help: diff --git a/rtl/apb_cfg.v b/rtl/apb_cfg.v new file mode 100644 index 0000000..0845dd5 --- /dev/null +++ b/rtl/apb_cfg.v @@ -0,0 +1,131 @@ +module apb_cfg( + //global signal + input apb_pclk, + input apb_prstn, + + //from apb master + input apb_psel, + input apb_penable, + input apb_pwrite, + input [7:0] apb_paddr, + input [31:0] apb_wdata, + + //to apb master + output reg [31:0] apb_rdata, + output apb_pready, + + //cfg + //mode ctrl + output reg mc_work_en, + output reg [1:0] axi_rw_priority, + //global time + output reg [7:0] array_ras_cfg, + output reg [7:0] array_rp_cfg, + output reg [7:0] array_rc_cfg, + //wr time + output reg [7:0] array_rcd_wr_cfg, + output reg [7:0] array_wr_cfg, + //rd time + output reg [7:0] array_rcd_rd_cfg, + output reg [7:0] array_rtp_cfg, + //ref ctrl + output reg [25:0] array_ref_period0, + output reg [25:0] array_ref_period1, + output reg array_ref_sel +); + +wire apb_wr; +wire apb_rd; + +assign apb_wr = apb_psel && apb_pwrite; +assign apb_rd = apb_psel && !apb_pwrite && apb_penable;//时序逻辑读 + +//apb_wr cfg +always @ (posedge apb_pclk or apb_prstn) begin + if (!apb_prstn) begin + mc_work_en <= 1'b0; + axi_rw_priority <= 2'b01; + array_ras_cfg <= 8'd16; + array_rp_cfg <= 8'd6; + array_rc_cfg <= 8'd22; + array_rcd_wr_cfg <= 8'd7; + array_wr_cfg <= 8'd6; + array_rcd_rd_cfg <= 8'd7; + array_rtp_cfg <= 8'd3; + array_ref_period0 <= 25'd24_000_000; + array_ref_period1 <= 25'd24_000_000; + array_ref_sel <= 1'b0; + end + else begin + if (apb_wr) begin + case(apb_paddr) + 8'h00 : begin + mc_work_en <= apb_wdata[0]; + axi_rw_priority <= apb_wdata[2:1]; + end + 8'h04 : begin + array_ras_cfg <= apb_wdata[7:0]; + array_rp_cfg <= apb_wdata[15:8]; + array_rc_cfg <= apb_wdata[23:16]; + end + 8'h08 : begin + array_rcd_wr_cfg <= apb_wdata[7:0]; + array_wr_cfg <= apb_wdata[15:8]; + end + 8'h0C : begin + array_rcd_rd_cfg <= apb_wdata[7:0]; + array_rtp_cfg <= apb_wdata[15:8]; + end + 8'h10 : begin + array_ref_period0 <= 25'd24_000_000;//60_000_000/2.5 + end + 8'h14 : begin + array_ref_period1 <= 25'd24_000_000;//60_000_000/2.5 + end + 8'h18 : begin + array_ref_sel <= 1'b0; + end + default : ; + endcase + end + end +end + +//apb_rd +always @ (posedge apb_pclk or negedge apb_prstn) begin + if (!apb_prstn) begin + apb_rdata <= 32'b0; + end + else if (apb_rd) begin + case (apb_paddr) + 8'h00 : begin + apb_rdata <= {29'd0,axi_rw_priority,mc_work_en}; + end + 8'h04 : begin + apb_rdata <= {8'd0,array_rc_cfg,array_rp_cfg,array_ras_cfg}; + end + 8'h08 : begin + apb_rdata <= {16'd0,array_wr_cfg,array_rcd_wr_cfg}; + end + 8'h0C : begin + apb_rdata <= {16'd0,array_rtp_cfg,array_rcd_rd_cfg}; + end + 8'h10 : begin + apb_rdata <= {7'd0,array_ref_period0}; + end + 8'h14 : begin + apb_rdata <= {7'd0,array_ref_period1}; + end + 8'h18 : begin + apb_rdata <= {31'd0,array_ref_sel}; + end + default : begin + apb_rdata <= 32'b0; + end + endcase + end +end + +assign apb_pready = 1'b1; + +endmodule diff --git a/rtl/array_ctrl.v b/rtl/array_ctrl.v new file mode 100644 index 0000000..a0fc606 --- /dev/null +++ b/rtl/array_ctrl.v @@ -0,0 +1,154 @@ +module array_ctrl( + input clk, + input rst_n, + + //axi2array_frame bus + input axi2array_frame_valid, + input [152:0] axi2array_frame_data, + output axi2array_frame_ready, + //array2axi_rdata bus + output array2axi_rdata_valid, + output [127:0] array2axi_rdata, + //array if + output array_csn, + output [15:0] array_raddr, + output array_caddr_vld_wr, + output [5:0] array_caddr_wr, + output array_wdata_vld, + output [127:0] array_wdata, + output array_caddr_vld_rd, + output [5:0] array_caddr_rd, + input array_rdata_vld, + input [127:0] array_rdata, + //apb_cfg + input mc_work_en, + input [7:0] array_inner_tras, + input [7:0] array_inner_trp, + input [7:0] array_inner_trcd_wr, + input [7:0] array_inner_twr, + input [7:0] array_inner_trcd_rd, + input [7:0] array_inner_trtp, + input array_ref_en, + input [24:0] array_inner_tref0, + input [24:0] array_inner_tref1, + input array_inner_ref_sel + +); + + wire [1:0] array_mux_sel; + wire array_wr_frame_valid; + wire [151:0] array_wr_frame_data; + wire array_rd_frame_valid; + wire [151:0] array_rd_frame_data; + wire array_ref_start; + + wire array_wr_frame_ready; + wire array_wr_done; + wire array_wr_csn; + wire [15:0] array_wr_raddr; + + wire array_rd_frame_ready; + wire array_rd_done; + wire array_rd_csn; + wire [15:0] array_rd_raddr; + + wire array_ref_done; + wire array_ref_csn; + wire [15:0] array_ref_raddr; + + + + + + +array_status_ctrl u_array_status_ctrl ( + .clk (clk), + .rst_n (rst_n), + .axi2array_frame_valid (axi2array_frame_valid), + .axi2array_frame_data (axi2array_frame_data), + .axi2array_frame_ready (axi2array_frame_ready), + .array_wr_frame_valid (array_wr_frame_valid), + .array_wr_frame_data (array_wr_frame_data), + .array_wr_frame_ready (array_wr_frame_ready), + .array_wr_done (array_wr_done), + .array_rd_frame_valid (array_rd_frame_valid), + .array_rd_frame_data (array_rd_frame_data), + .array_rd_frame_ready (array_rd_frame_ready), + .array_rd_done (array_rd_done), + .array_ref_start (array_ref_start), + .array_ref_done (array_ref_done), + .array_mux_sel (array_mux_sel), + .mc_work_en (mc_work_en), + .array_ref_en (array_ref_en), + .array_inner_tref0 (array_inner_tref0), + .array_inner_tref1 (array_inner_tref1), + .array_inner_ref_sel (array_inner_ref_sel) +); + + // 实例化被测试模块(DUT) + array_wr u_array_wr( + .clk (clk), + .rst_n (rst_n), + .array_wr_frame_valid(array_wr_frame_valid), + .array_wr_frame_data(array_wr_frame_data), + .array_wr_frame_ready(array_wr_frame_ready), + .array_wr_done (array_wr_done), + .array_wr_csn (array_wr_csn), + .array_wr_raddr (array_wr_raddr), + .array_caddr_vld_wr (array_caddr_vld_wr), + .array_caddr_wr (array_caddr_wr), + .array_wdata_vld (array_wdata_vld), + .array_wdata (array_wdata), + .array_inner_tras (array_inner_tras), + .array_inner_trp (array_inner_trp), + .array_inner_trcd_wr(array_inner_trcd_wr), + .array_inner_twr (array_inner_twr) + ); + + // 实例化被测试模块(DUT) + array_rd u_array_rd( + .clk (clk), + .rst_n (rst_n), + .array_rd_frame_valid(array_rd_frame_valid), + .array_rd_frame_data(array_rd_frame_data), + .array_rd_frame_ready(array_rd_frame_ready), + .array_rd_done (array_rd_done), + .array_rd_csn (array_rd_csn), + .array_rd_raddr (array_rd_raddr), + .array_caddr_vld_rd (array_caddr_vld_rd), + .array_caddr_rd (array_caddr_rd), + .array_rdata_vld (array_rdata_vld), + .array_rdata (array_rdata), + .array_inner_tras (array_inner_tras), + .array_inner_trp (array_inner_trp), + .array_inner_trcd_rd(array_inner_trcd_rd), + .array_inner_trtp (array_inner_trtp), + .array2axi_rdata_valid(array2axi_rdata_valid), + .array2axi_rdata (array2axi_rdata) + ); + + // 实例化待测试模块 + array_ref u_array_ref ( + .clk (clk), + .rst_n (rst_n), + .array_ref_start (array_ref_start), + .array_ref_done (array_ref_done), + .array_ref_csn (array_ref_csn), + .array_ref_raddr (array_ref_raddr), + .array_inner_tras (array_inner_tras), + .array_inner_trp (array_inner_trp) + ); + + array_mux u_array_mux ( + .array_wr_csn (array_wr_csn), + .array_wr_raddr (array_wr_raddr), + .array_rd_csn (array_rd_csn), + .array_rd_raddr (array_rd_raddr), + .array_ref_csn (array_ref_csn), + .array_ref_raddr (array_ref_raddr), + .array_mux_sel (array_mux_sel), + .array_csn (array_csn), + .array_raddr (array_raddr) + ); + +endmodule diff --git a/rtl/array_mux.v b/rtl/array_mux.v new file mode 100644 index 0000000..9ed3cee --- /dev/null +++ b/rtl/array_mux.v @@ -0,0 +1,38 @@ +module array_mux ( + input array_wr_csn, + input [15:0] array_wr_raddr, + + input array_rd_csn, + input [15:0] array_rd_raddr, + + input array_ref_csn, + input [15:0] array_ref_raddr, + + input [1:0] array_mux_sel, + + output reg array_csn, + output reg [15:0] array_raddr +); + + always @(*) begin + case (array_mux_sel) + 2'b01: begin + array_csn = array_ref_csn; + array_raddr = array_ref_raddr; + end + 2'b10: begin + array_csn = array_wr_csn; + array_raddr = array_wr_raddr; + end + 2'b11: begin + array_csn = array_rd_csn; + array_raddr = array_rd_raddr; + end + default: begin + array_csn = 1'b1; + array_raddr = 16'd0; + end + endcase + end + +endmodule \ No newline at end of file diff --git a/rtl/array_rd.v b/rtl/array_rd.v new file mode 100644 index 0000000..b053e3d --- /dev/null +++ b/rtl/array_rd.v @@ -0,0 +1,264 @@ +module array_rd ( + input clk, + input rst_n, + + input array_rd_frame_valid, + input [151:0] array_rd_frame_data, + output array_rd_frame_ready, + output array_rd_done, + + output reg array_rd_csn, + output reg [15:0] array_rd_raddr, + + output reg array_caddr_vld_rd, + output reg [5:0] array_caddr_rd, + input array_rdata_vld, + input [127:0] array_rdata, + + input [7:0] array_inner_tras, + input [7:0] array_inner_trp, + input [7:0] array_inner_trcd_rd, + input [7:0] array_inner_trtp, + + output array2axi_rdata_valid, + output [127:0] array2axi_rdata +); + + reg [2:0] cur_state,next_state; + localparam [2:0] ARR_RD_IDLE = 3'b000; + localparam [2:0] ARR_RD_LOWCS = 3'b001; + localparam [2:0] ARR_RD_RCD = 3'b010; + localparam [2:0] ARR_RD_HIGHVLD = 3'b011; + localparam [2:0] ARR_RD_RADDRLAST = 3'b100; + localparam [2:0] ARR_RD_RADDR = 3'b101; + localparam [2:0] ARR_RD_RTP = 3'b110; + localparam [2:0] ARR_RD_RP = 3'b111; + + wire rsof,reof; + wire [15:0] rraddr; + wire [5:0] rcaddr; + wire [127:0] wdata; + + reg [7:0] rd_ras_cnt; + reg [7:0] rd_rcd_cnt; + reg [7:0] rd_rtp_cnt; + reg [7:0] rd_rp_cnt; + reg single_flag_rd; + reg array_raddr_eof; + + wire async_fifo_r_wr_clk; + wire async_fifo_r_wr_rst_n; + wire async_fifo_r_wr_en; + wire [127:0] async_fifo_r_wr_data; + wire async_fifo_r_full; + wire async_fifo_r_rd_clk; + wire async_fifo_r_rd_rst_n; + wire async_fifo_r_rd_en; + wire [127:0] async_fifo_r_rd_data; + wire async_fifo_r_empty; + + async_fifo #(.FIFO_DEPTH(4), + .DATA_WIDTH(128) + ) async_fifo_r ( + .wr_clk (async_fifo_r_wr_clk), + .wr_rst_n (async_fifo_r_wr_rst_n), + .wr_en (async_fifo_r_wr_en), + .wr_data (async_fifo_r_wr_data), + .full (async_fifo_r_full), + .rd_clk (async_fifo_r_rd_clk), + .rd_rst_n (async_fifo_r_rd_rst_n), + .rd_en (async_fifo_r_rd_en), + .rd_data (async_fifo_r_rd_data), + .empty (async_fifo_r_empty) + ); + + assign {rsof,reof,rraddr,rcaddr,wdata} = array_rd_frame_data; + assign array_rd_frame_ready = (cur_state == ARR_RD_IDLE || ((cur_state == ARR_RD_RADDR) && + !array_caddr_vld_rd)); + assign array_rd_done = (cur_state == ARR_RD_RP) && rd_rp_cnt == 'd0; + assign array2axi_rdata_valid = !async_fifo_r_empty; + assign array2axi_rdata = async_fifo_r_rd_data; + + assign async_fifo_r_wr_clk = array_rdata_vld; + assign async_fifo_r_wr_rst_n = rst_n; + assign async_fifo_r_wr_en = 1'b1; + assign async_fifo_r_wr_data = array_rdata; + assign async_fifo_r_rd_clk = clk; + assign async_fifo_r_rd_rst_n = rst_n; + assign async_fifo_r_rd_en = !async_fifo_r_empty; + + always @(posedge clk or negedge rst_n) begin + if (!rst_n) begin + cur_state <= ARR_RD_IDLE; + end else begin + cur_state <= next_state; + end + end + + always @(*) begin + case (cur_state) + ARR_RD_IDLE : begin + if (array_rd_frame_valid && rsof) begin + next_state = ARR_RD_LOWCS; + end else begin + next_state = ARR_RD_IDLE; + end + end + ARR_RD_LOWCS : begin + next_state = ARR_RD_RCD; + end + ARR_RD_RCD : begin + if (rd_rcd_cnt == 'd0) begin + next_state = ARR_RD_HIGHVLD; + end else begin + next_state = ARR_RD_RCD; + end + end + ARR_RD_HIGHVLD : begin + if (single_flag_rd) begin + next_state = ARR_RD_RADDRLAST; + end else begin + next_state = ARR_RD_RADDR; + end + end + ARR_RD_RADDRLAST : begin + next_state = ARR_RD_RTP; + end + ARR_RD_RADDR : begin + if (array_raddr_eof) begin + next_state = ARR_RD_RTP; + end else begin + next_state = ARR_RD_RADDR; + end + end + ARR_RD_RTP : begin + if (rd_ras_cnt == 'd0 && rd_rtp_cnt == 'd0) begin + next_state = ARR_RD_RP; + end else begin + next_state = ARR_RD_RTP; + end + end + ARR_RD_RP : begin + if (rd_rp_cnt == 'd0) begin + next_state = ARR_RD_IDLE; + end else begin + next_state = ARR_RD_RP; + end + end + default : begin + next_state = ARR_RD_IDLE; + end + endcase + end + + always @(posedge clk or negedge rst_n) begin + if (!rst_n) begin + array_rd_csn <= 1'b1; + end else if (cur_state == ARR_RD_LOWCS) begin + array_rd_csn <= 1'b0; + end else if (cur_state == ARR_RD_RTP && next_state == ARR_RD_RP) begin + array_rd_csn <= 1'b1; + end + end + + always @(posedge clk or negedge rst_n) begin + if (!rst_n) begin + array_rd_raddr <= 'b0; + end else if (array_rd_frame_valid && array_rd_frame_ready) begin + array_rd_raddr <= rraddr; + end + end + + always @(posedge clk or negedge rst_n) begin + if (!rst_n) begin + array_caddr_rd <= 'b0; + end else if (array_rd_frame_valid && array_rd_frame_ready) begin + array_caddr_rd <= rcaddr; + end + end + + always @(posedge clk or negedge rst_n) begin + if (!rst_n) begin + array_caddr_vld_rd <= 'd0; + end else if (array_caddr_vld_rd == 1'b1) begin + array_caddr_vld_rd <= 1'b0; + end else if (cur_state == ARR_RD_HIGHVLD || (cur_state == ARR_RD_RADDR && + array_rd_frame_valid && array_rd_frame_ready)) begin + array_caddr_vld_rd <= 1'b1; + end + end + + always @(posedge clk or negedge rst_n) begin + if (!rst_n) begin + rd_ras_cnt <= 'd0; + end else if (cur_state == ARR_RD_LOWCS) begin + rd_ras_cnt <= array_inner_tras - 1'b1; + end else if (rd_ras_cnt == 'd0) begin + rd_ras_cnt <= rd_ras_cnt; + end else begin + rd_ras_cnt <= rd_ras_cnt - 1'b1; + end + end + + always @(posedge clk or negedge rst_n) begin + if (!rst_n) begin + rd_rcd_cnt <= 'd0; + end else if (cur_state == ARR_RD_LOWCS) begin + rd_rcd_cnt <= array_inner_trcd_rd - 2'b10; + end else if (cur_state == ARR_RD_RCD) begin + if (rd_rcd_cnt == 'd0) begin + rd_rcd_cnt <= rd_rcd_cnt; + end else begin + rd_rcd_cnt <= rd_rcd_cnt - 1'b1; + end + end + end + + always @(posedge clk or negedge rst_n) begin + if (!rst_n) begin + rd_rtp_cnt <= 'd0; + end else if (cur_state == ARR_RD_LOWCS) begin + rd_rtp_cnt <= array_inner_trtp - 1'b1; + end else if (cur_state == ARR_RD_RTP) begin + if (rd_rtp_cnt == 'd0) begin + rd_rtp_cnt <= rd_rtp_cnt; + end else begin + rd_rtp_cnt <= rd_rtp_cnt - 1'b1; + end + end + end + + always @(posedge clk or negedge rst_n) begin + if (!rst_n) begin + rd_rp_cnt <= 'd0; + end else if (cur_state == ARR_RD_LOWCS) begin + rd_rp_cnt <= array_inner_trp - 1'b1; + end else if (cur_state == ARR_RD_RP) begin + if (rd_rp_cnt == 'd0) begin + rd_rp_cnt <= rd_rp_cnt; + end else begin + rd_rp_cnt <= rd_rp_cnt - 1'b1; + end + end + end + + always @(posedge clk or negedge rst_n) begin + if (!rst_n) begin + single_flag_rd <= 'd0; + end else if (cur_state == ARR_RD_IDLE && array_rd_frame_valid && rsof) begin + single_flag_rd <= reof; + end + end + + always @(posedge clk or negedge rst_n) begin + if (!rst_n) begin + array_raddr_eof <= 'd0; + end else if (array_rd_frame_valid && array_rd_frame_ready) begin + array_raddr_eof <= reof; + end else begin + array_raddr_eof <= 'd0; + end + end + + +endmodule \ No newline at end of file diff --git a/rtl/array_ref.v b/rtl/array_ref.v new file mode 100644 index 0000000..b480088 --- /dev/null +++ b/rtl/array_ref.v @@ -0,0 +1,108 @@ +module array_ref ( + input clk, + input rst_n, + + input array_ref_start, + output array_ref_done, + + output array_ref_csn, + output reg [15:0] array_ref_raddr, + + input [7:0] array_inner_tras, + input [7:0] array_inner_trp +); + + reg [1:0] cur_state,next_state; + localparam [1:0] ARR_REF_IDLE = 2'b00; + localparam [1:0] ARR_REF_RCVRADDR = 2'b01; + localparam [1:0] ARR_REF_RAS = 2'b10; + localparam [1:0] ARR_REF_RP = 2'b11; + + reg [7:0] ref_ras_cnt; + reg [7:0] ref_rp_cnt; + + assign array_ref_done = (array_ref_raddr == 16'hffff) && (cur_state == ARR_REF_RP) && + (ref_rp_cnt == 'd0); + assign array_ref_csn = !(cur_state == ARR_REF_RAS); + + always @(posedge clk or negedge rst_n) begin + if (!rst_n) begin + cur_state <= ARR_REF_IDLE; + end else begin + cur_state <= next_state; + end + end + + always @(*) begin + case (cur_state) + ARR_REF_IDLE : begin + if (array_ref_start) begin + next_state = ARR_REF_RCVRADDR; + end else begin + next_state = ARR_REF_IDLE; + end + end + ARR_REF_RCVRADDR : begin + next_state = ARR_REF_RAS; + end + ARR_REF_RAS : begin + if (ref_ras_cnt == 'd0) begin + next_state = ARR_REF_RP; + end else begin + next_state = ARR_REF_RAS; + end + end + ARR_REF_RP : begin + if (ref_rp_cnt == 'd0) begin + if (array_ref_raddr == 16'hffff) begin + next_state = ARR_REF_IDLE; + end else begin + next_state = ARR_REF_RCVRADDR; + end + end else begin + next_state = ARR_REF_RP; + end + end + default : next_state = ARR_REF_IDLE; + endcase + end + + always @(posedge clk or negedge rst_n) begin + if (!rst_n) begin + array_ref_raddr <= 'd0; + end else if (cur_state == ARR_REF_IDLE) begin + array_ref_raddr <= 'd0; + end else if (cur_state == ARR_REF_RP && next_state == ARR_REF_RCVRADDR) begin + array_ref_raddr <= array_ref_raddr + 1'b1; + end + end + + always @(posedge clk or negedge rst_n) begin + if (!rst_n) begin + ref_ras_cnt <= 'd0; + end else if (cur_state == ARR_REF_RCVRADDR) begin + ref_ras_cnt <= array_inner_tras - 1'b1; + end else if (cur_state == ARR_REF_RAS) begin + if (ref_ras_cnt == 'd0) begin + ref_ras_cnt <= ref_ras_cnt; + end else begin + ref_ras_cnt <= ref_ras_cnt - 1'b1; + end + end + end + + always @(posedge clk or negedge rst_n) begin + if (!rst_n) begin + ref_rp_cnt <= 'd0; + end else if (cur_state == ARR_REF_RCVRADDR) begin + ref_rp_cnt <= array_inner_trp - 1'b1; + end else if (cur_state == ARR_REF_RP) begin + if (ref_rp_cnt == 'd0) begin + ref_rp_cnt <= ref_rp_cnt; + end else begin + ref_rp_cnt <= ref_rp_cnt - 1'b1; + end + end + end + +endmodule \ No newline at end of file diff --git a/rtl/array_status_ctrl.v b/rtl/array_status_ctrl.v new file mode 100644 index 0000000..54f0c1d --- /dev/null +++ b/rtl/array_status_ctrl.v @@ -0,0 +1,162 @@ +module array_status_ctrl( + + input clk, + input rst_n, + + input axi2array_frame_valid, + input [152:0] axi2array_frame_data, + output axi2array_frame_ready, + + output array_wr_frame_valid, + output [151:0] array_wr_frame_data, + input array_wr_frame_ready, + input array_wr_done, + + output array_rd_frame_valid, + output [151:0] array_rd_frame_data, + input array_rd_frame_ready, + input array_rd_done, + + output array_ref_start, + input array_ref_done, + + output [1:0] array_mux_sel, + + input mc_work_en, + input array_ref_en, + input [24:0] array_inner_tref0, + input [24:0] array_inner_tref1, + input array_inner_ref_sel +); + + reg [1:0] cur_state,next_state; + localparam [1:0] ARRAY_STA_IDLE = 2'b00; + localparam [1:0] ARRAY_STA_WR = 2'b10; + localparam [1:0] ARRAY_STA_RD = 2'b11; + localparam [1:0] ARRAY_STA_REF = 2'b01; + + reg mc_work_en_r ,mc_work_en_sync; + reg array_ref_en_r ,array_ref_en_sync; + reg array_inner_ref_sel_r,array_inner_ref_sel_sync; + reg array_ref_req; + reg [24:0] array_ref_cnt; + wire [24:0] array_inner_tref; + wire array_wr_req ,array_rd_req; + + assign axi2array_frame_ready = ((cur_state == ARRAY_STA_WR) && array_wr_frame_ready) || ((cur_state == ARRAY_STA_RD) && array_rd_frame_ready); + assign array_wr_frame_valid = ((cur_state == ARRAY_STA_WR) && axi2array_frame_valid); + assign array_rd_frame_valid = ((cur_state == ARRAY_STA_RD) && axi2array_frame_valid); + assign array_wr_frame_data = axi2array_frame_data[151:0]; + assign array_rd_frame_data = axi2array_frame_data[151:0]; + assign array_ref_start = ((cur_state == ARRAY_STA_IDLE && array_ref_req)); + assign array_mux_sel = cur_state; + + assign array_inner_tref = array_inner_ref_sel_sync ?array_inner_tref1:array_inner_tref0; + assign array_wr_req = axi2array_frame_valid && axi2array_frame_data[152]; + assign array_rd_req = axi2array_frame_valid && !axi2array_frame_data[152]; + + + always@(posedge clk or negedge rst_n) begin + if(!rst_n) begin + cur_state <= ARRAY_STA_IDLE; + end else begin + cur_state <= next_state; + end + end + + always@(*) begin + case(cur_state) + ARRAY_STA_IDLE : begin + if(array_ref_req) begin + next_state = ARRAY_STA_REF; + end else if(array_wr_req) begin + next_state = ARRAY_STA_WR; + end else if(array_rd_req) begin + next_state = ARRAY_STA_RD; + end else begin + next_state = ARRAY_STA_IDLE; + end + end + ARRAY_STA_WR : begin + if(array_wr_done) begin + next_state = ARRAY_STA_IDLE; + end else begin + next_state = ARRAY_STA_WR; + end + end + ARRAY_STA_RD : begin + if(array_rd_done) begin + next_state = ARRAY_STA_IDLE; + end else begin + next_state = ARRAY_STA_RD; + end + end + ARRAY_STA_REF : begin + if(array_ref_done) begin + next_state = ARRAY_STA_IDLE; + end else begin + next_state = ARRAY_STA_REF; + end + end + default : next_state = ARRAY_STA_IDLE; + endcase + end + + always@(posedge clk or negedge rst_n) begin + if(!rst_n) begin + mc_work_en_r <= 'd0; + mc_work_en_sync <= 'd0; + end else begin + mc_work_en_r <= mc_work_en; + mc_work_en_sync <= mc_work_en_r; + end + end + + always@(posedge clk or negedge rst_n) begin + if(!rst_n) begin + array_ref_en_r <= 'd0; + array_ref_en_sync <= 'd0; + end else begin + array_ref_en_r <= array_ref_en; + array_ref_en_sync <= array_ref_en_r; + end + end + + always@(posedge clk or negedge rst_n) begin + if(!rst_n) begin + array_inner_ref_sel_r <= 'd0; + array_inner_ref_sel_sync <= 'd0; + end else begin + array_inner_ref_sel_r <= array_inner_ref_sel; + array_inner_ref_sel_sync <= array_inner_ref_sel_r; + end + end + + + always@(posedge clk or negedge rst_n) begin + if(!rst_n) begin + array_ref_req <= 'd0; + end else if(mc_work_en) begin + array_ref_req <= (array_ref_cnt >= array_inner_tref && mc_work_en_sync && + array_ref_en_sync) ? 1:0; + end else if(cur_state == ARRAY_STA_IDLE) begin + array_ref_req <= 'd0; + end + end + + always@(posedge clk or negedge rst_n) begin + if(!rst_n) begin + array_ref_cnt <= 'd0; + end else if(mc_work_en && array_ref_en) begin + if(array_ref_cnt >= array_inner_tref) begin + array_ref_cnt <= 'd0; + end else begin + array_ref_cnt <= array_ref_cnt + 1'b1; + end + end else begin + array_ref_cnt <= 'd0; + end + end + + +endmodule diff --git a/rtl/array_wr.v b/rtl/array_wr.v new file mode 100644 index 0000000..b99572b --- /dev/null +++ b/rtl/array_wr.v @@ -0,0 +1,233 @@ +module array_wr ( + input clk, + input rst_n, + + input array_wr_frame_valid, + input [151:0] array_wr_frame_data, + output array_wr_frame_ready, + output array_wr_done, + + output reg array_wr_csn, + output reg [15:0] array_wr_raddr, + + output reg array_caddr_vld_wr, + output reg [5:0] array_caddr_wr, + output array_wdata_vld, + output reg [127:0] array_wdata, + + input [7:0] array_inner_tras, + input [7:0] array_inner_trp, + input [7:0] array_inner_trcd_wr, + input [7:0] array_inner_twr +); + + reg [2:0] cur_state,next_state; + localparam [2:0] ARR_WR_IDLE = 3'b000; + localparam [2:0] ARR_WR_LOWCS = 3'b001; + localparam [2:0] ARR_WR_RCD = 3'b010; + localparam [2:0] ARR_WR_HIGHVLD = 3'b011; + localparam [2:0] ARR_WR_WDATALAST = 3'b100; + localparam [2:0] ARR_WR_WDATA = 3'b101; + localparam [2:0] ARR_WR_WR = 3'b110; + localparam [2:0] ARR_WR_RP = 3'b111; + + wire wsof,weof; + wire [15:0] wraddr; + wire [5:0] wcaddr; + wire [127:0] wdata; + + reg [7:0] wr_ras_cnt; + reg [7:0] wr_rcd_cnt; + reg [7:0] wr_wr_cnt; + reg [7:0] wr_rp_cnt; + + reg single_flag_wr; + reg array_wdata_eof; + + + assign {wsof,weof,wraddr,wcaddr,wdata} = array_wr_frame_data; + assign array_wdata_vld = !array_caddr_vld_wr; + assign array_wr_frame_ready = (cur_state==ARR_WR_IDLE) || ((cur_state == ARR_WR_WDATA) && + !array_caddr_vld_wr); + assign array_wr_done = (cur_state == ARR_WR_RP) && !wr_rp_cnt; + + always @(posedge clk or negedge rst_n) begin + if (!rst_n) begin + cur_state <= ARR_WR_IDLE; + end else begin + cur_state <= next_state; + end + end + + always @(*) begin + case (cur_state) + ARR_WR_IDLE : begin + if (array_wr_frame_valid && wsof) begin + next_state = ARR_WR_LOWCS; + end else begin + next_state = ARR_WR_IDLE; + end + end + ARR_WR_LOWCS : begin + next_state = ARR_WR_RCD; + end + ARR_WR_RCD : begin + if (wr_rcd_cnt == 'd0) begin + next_state = ARR_WR_HIGHVLD; + end else begin + next_state = ARR_WR_RCD; + end + end + ARR_WR_HIGHVLD : begin + if (single_flag_wr) begin + next_state = ARR_WR_WDATALAST; + end else begin + next_state = ARR_WR_WDATA; + end + end + ARR_WR_WDATALAST: begin + next_state = ARR_WR_WR; + end + ARR_WR_WDATA : begin + if (array_wdata_eof) begin + next_state = ARR_WR_WR; + end else begin + next_state = ARR_WR_WDATA; + end + end + ARR_WR_WR : begin + if (wr_ras_cnt == 'd0 && wr_wr_cnt == 'd0) begin + next_state = ARR_WR_RP; + end else begin + next_state = ARR_WR_WR; + end + end + ARR_WR_RP : begin + if (wr_rp_cnt == 'd0) begin + next_state = ARR_WR_IDLE; + end else begin + next_state = ARR_WR_RP; + end + end + default: next_state = ARR_WR_IDLE; + endcase + end + + always @(posedge clk or negedge rst_n) begin + if (!rst_n) begin + array_wr_csn <= 1'b1; + end else if (cur_state == ARR_WR_LOWCS) begin + array_wr_csn <= 1'b0; + end else if ((cur_state == ARR_WR_WR) && (next_state == ARR_WR_RP)) begin + array_wr_csn <= 1'b1; + end + end + + always @(posedge clk or negedge rst_n) begin + if (!rst_n) begin + array_wr_raddr <= 'd0; + end else if (array_wr_frame_valid && array_wr_frame_ready) begin + array_wr_raddr <= wraddr; + end + end + + always @(posedge clk or negedge rst_n) begin + if (!rst_n) begin + array_caddr_wr <= 'd0; + end else if (array_wr_frame_valid && array_wr_frame_ready) begin + array_caddr_wr <= wcaddr; + end + end + + always @(posedge clk or negedge rst_n) begin + if (!rst_n) begin + array_wdata <= 'd0; + end else if (array_wr_frame_valid && array_wr_frame_ready) begin + array_wdata <= wdata; + end + end + + always @(posedge clk or negedge rst_n) begin + if (!rst_n) begin + array_caddr_vld_wr <= 'd0; + end else if (array_caddr_vld_wr == 1'b1) begin + array_caddr_vld_wr <= 'd0; + end else if (cur_state == ARR_WR_HIGHVLD || (cur_state == ARR_WR_WDATA && + array_wr_frame_valid && array_wr_frame_ready)) begin + array_caddr_vld_wr <= 1'b1; + end + end + + always @(posedge clk or negedge rst_n) begin + if (!rst_n) begin + wr_ras_cnt <= 'd0; + end else if (cur_state == ARR_WR_LOWCS) begin + wr_ras_cnt <= array_inner_tras - 1'b1; + end else if (wr_ras_cnt == 'd0) begin + wr_ras_cnt <= wr_ras_cnt; + end else begin + wr_ras_cnt <= wr_ras_cnt - 1'b1; + end + end + + always @(posedge clk or negedge rst_n) begin + if (!rst_n) begin + wr_rcd_cnt <= 'd0; + end else if (cur_state == ARR_WR_LOWCS) begin + wr_rcd_cnt <= array_inner_trcd_wr - 2'b10; + end else if (cur_state == ARR_WR_RCD) begin + if (wr_rcd_cnt == 'd0) begin + wr_rcd_cnt <= wr_rcd_cnt; + end else begin + wr_rcd_cnt <= wr_rcd_cnt - 1'b1; + end + end + end + + always @(posedge clk or negedge rst_n) begin + if (!rst_n) begin + wr_wr_cnt <= 'd0; + end else if (cur_state == ARR_WR_LOWCS) begin + wr_wr_cnt <= array_inner_twr -1'b1; + end else if (cur_state == ARR_WR_WR) begin + if (wr_wr_cnt == 'd0) begin + wr_wr_cnt <= wr_wr_cnt; + end else begin + wr_wr_cnt <= wr_wr_cnt -1'b1; + end + end + end + + always @(posedge clk or negedge rst_n) begin + if (!rst_n) begin + wr_rp_cnt <= 'd0; + end else if (cur_state == ARR_WR_LOWCS) begin + wr_rp_cnt <= array_inner_trp - 1'b1; + end else if (cur_state == ARR_WR_RP) begin + if (wr_rp_cnt == 'd0) begin + wr_rp_cnt <= 'd0; + end else begin + wr_rp_cnt <= wr_rp_cnt - 1'b1; + end + end + end + + always @(posedge clk or negedge rst_n) begin + if (!rst_n) begin + single_flag_wr <= 1'b0; + end else if (cur_state == ARR_WR_IDLE && array_wr_frame_valid && wsof) begin + single_flag_wr <= weof; + end + end + + always @(posedge clk or negedge rst_n) begin + if (!rst_n) begin + array_wdata_eof <= 'd0; + end else if (array_wr_frame_valid && array_wr_frame_ready) begin + array_wdata_eof <= weof; + end else begin + array_wdata_eof <= 'd0; + end + end + +endmodule \ No newline at end of file diff --git a/rtl/axi_slv.v b/rtl/axi_slv.v new file mode 100644 index 0000000..ea83661 --- /dev/null +++ b/rtl/axi_slv.v @@ -0,0 +1,92 @@ +module axi_slv( + input clk, + input rst_n, + + input axi_s_awvalid, + input [7:0] axi_s_awlen, + input [25:0] axi_s_awaddr, + output axi_s_awready, + + input axi_s_wvalid, + input axi_s_wlast, + input [63:0] axi_s_wdata, + output axi_s_wready, + + input axi_s_arvalid, + input [7:0] axi_s_arlen, + input [25:0] axi_s_araddr, + output axi_s_arready, + + output axi_s_rvalid, + output axi_s_rlast, + output [63:0] axi_s_rdata, + + output axi2array_frame_valid, + output [152:0] axi2array_frame_data, + input axi2array_frame_ready, + + input array2axi_rdata_valid, + input [127:0] array2axi_rdata, + + input [1:0] axi_bus_rw_priority, + input mc_work_en +); + wire wframe_valid; + wire [159:0] wframe_data; + wire wframe_ready; + + wire rframe_valid; + wire [159:0] rframe_data; + wire rframe_ready; + +wchannel u_wchannel( + .clk (clk), + .rst_n (rst_n), + .axi_s_awvalid (axi_s_awvalid), + .axi_s_awlen (axi_s_awlen), + .axi_s_awaddr (axi_s_awaddr), + .axi_s_awready (axi_s_awready), + .axi_s_wvalid (axi_s_wvalid), + .axi_s_wlast (axi_s_wlast), + .axi_s_wdata (axi_s_wdata), + .axi_s_wready (axi_s_wready), + .wframe_valid (wframe_valid), + .wframe_data (wframe_data), + .wframe_ready (wframe_ready) +); + +rchannel u_rchannel( + .clk (clk), + .rst_n (rst_n), + .axi_s_arvalid (axi_s_rvalid), + .axi_s_arlen (axi_s_arlen), + .axi_s_araddr (axi_s_araddr), + .axi_s_arready (axi_s_arready), + .axi_s_rvalid (axi_s_rvalid), + .axi_s_rlast (axi_s_rlast), + .axi_s_rdata (axi_s_rdata), + .rframe_valid (rframe_valid), + .rframe_data (rframe_data), + .rframe_ready (rframe_ready), + .array2axi_rdata_valid(array2axi_rdata_valid), + .array2axi_rdata(array2axi_rdata) +); + + +frame_arbiter u_frame_arbiter( + .clk (clk), + .rst_n (rst_n), + .wframe_valid (wframe_valid), + .wframe_data (wframe_data), + .wframe_ready (wframe_ready), + .rframe_valid (rframe_valid), + .rframe_data (rframe_data), + .rframe_ready (rframe_ready), + .axi2array_frame_valid(axi2array_frame_valid), + .axi2array_frame_data (axi2array_frame_data), + .axi2array_frame_ready(axi2array_frame_ready), + .mc_work_en (mc_work_en), + .axi_bus_rw_priority(axi_bus_rw_priority) +); + +endmodule diff --git a/sim/csrc/cgincr.sdb b/sim/csrc/cgincr.sdb index 9ced712..56bfe80 100644 Binary files a/sim/csrc/cgincr.sdb and b/sim/csrc/cgincr.sdb differ diff --git a/sim/csrc/cginfo.json b/sim/csrc/cginfo.json index 24d7034..5295eec 100644 --- a/sim/csrc/cginfo.json +++ b/sim/csrc/cginfo.json @@ -1,34 +1,52 @@ { - "cycles_program_begin": 8954854280857, + "cycles_program_begin": 437497044141, + "PrevCompiledModules": {}, + "MlibObjs": {}, + "Misc": { + "vcs_version": "O-2018.09-1_Full64", + "vcs_build_date": "Build Date = Oct 12 2018 20:38:10", + "daidir_abs": "/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv.daidir", + "master_pid": 5573, + "csrc": "csrc", + "cwd": "/home/ICer/ic_prjs/mc/IC_PRJ/sim", + "archive_dir": "archive.0", + "default_output_dir": "csrc", + "VCS_HOME": "/home/synopsys/vcs-mx/O-2018.09-1", + "hostname": "IC_EDA", + "csrc_abs": "/home/ICer/ic_prjs/mc/IC_PRJ/sim/csrc", + "daidir": "simv.daidir" + }, + "CompileStrategy": "fullobj", + "CurCompileUdps": {}, "perf": [ { "stat": [ "main", "entry", - 0.029060840606689453, - 0.066163, - 0.018252000000000001, - 211376, - 211376, + 0.20096111297607422, + 0.067087999999999995, + 0.52233399999999996, + 211384, + 211384, 0.0, 0.0, - 1754490737.7184789, - 8954854534841 + 1755073857.1317911, + 437497361461 ], "sub": [ { "stat": [ "doParsingAndDesignResolution", "entry", - 0.051290988922119141, - 0.073860999999999996, - 0.030481999999999999, - 267268, - 268068, + 0.24745011329650879, + 0.070399000000000003, + 0.55381000000000002, + 267276, + 268076, 0.0, 0.0, - 1754490737.7407091, - 8954898700876 + 1755073857.1782801, + 437581053845 ], "sub": [] }, @@ -36,15 +54,15 @@ "stat": [ "doParsingAndDesignResolution", "exit", - 0.07045292854309082, - 0.093826999999999994, - 0.031666, - 268308, - 268956, + 0.29336905479431152, + 0.083322999999999994, + 0.57871700000000004, + 268356, + 269004, 0.0, 0.0, - 1754490737.759871, - 8954936774690 + 1755073857.2241991, + 437663665281 ], "sub": [] }, @@ -52,30 +70,30 @@ "stat": [ "doPostDesignResolutionToVir2Vcs", "entry", - 0.071467876434326172, - 0.094949000000000006, - 0.031666, - 268308, - 268956, + 0.29522991180419922, + 0.084689, + 0.57921299999999998, + 268512, + 269004, 0.0, 0.0, - 1754490737.760886, - 8954938740821 + 1755073857.2260599, + 437667009444 ], "sub": [ { "stat": [ "doUptoVir2VcsNoSepCleanup", "entry", - 0.078627824783325195, - 0.10172299999999999, - 0.032797, - 273476, - 273480, + 0.30358695983886719, + 0.092725000000000002, + 0.57953299999999996, + 269644, + 269648, 0.0, 0.0, - 1754490737.7680459, - 8954952970863 + 1755073857.234417, + 437682071500 ], "sub": [] }, @@ -83,15 +101,15 @@ "stat": [ "doUptoVir2VcsNoSepCleanup", "exit", - 0.17286086082458496, - 0.14609, - 0.045580000000000002, - 269720, - 283444, - 0.010106, - 0.037125999999999999, - 1754490737.8622789, - 8955140243036 + 0.43445897102355957, + 0.14114599999999999, + 0.62018899999999999, + 271988, + 284336, + 0.0053299999999999997, + 0.036021999999999998, + 1755073857.365289, + 437917615769 ], "sub": [] }, @@ -99,15 +117,15 @@ "stat": [ "doRadify_vir2vcsAll", "entry", - 0.17300200462341309, - 0.14621100000000001, - 0.045616999999999998, - 269720, - 283444, - 0.010106, - 0.037125999999999999, - 1754490737.8624201, - 8955140472311 + 0.43466401100158691, + 0.141351, + 0.62018899999999999, + 271988, + 284336, + 0.0053299999999999997, + 0.036021999999999998, + 1755073857.365494, + 437917940077 ], "sub": [] }, @@ -115,15 +133,15 @@ "stat": [ "doRadify_vir2vcsAll", "exit", - 0.18115901947021484, - 0.15395200000000001, - 0.046651999999999999, - 271704, - 283444, - 0.010106, - 0.037125999999999999, - 1754490737.8705771, - 8955156828996 + 0.44249606132507324, + 0.14918100000000001, + 0.62018899999999999, + 272132, + 284336, + 0.0053299999999999997, + 0.036021999999999998, + 1755073857.3733261, + 437932095480 ], "sub": [] } @@ -133,15 +151,15 @@ "stat": [ "doPostDesignResolutionToVir2Vcs", "exit", - 0.1812889575958252, - 0.15409800000000001, - 0.046651999999999999, - 271704, - 283444, - 0.010106, - 0.037125999999999999, - 1754490737.870707, - 8955156931612 + 0.44256496429443359, + 0.149253, + 0.62018899999999999, + 272132, + 284336, + 0.0053299999999999997, + 0.036021999999999998, + 1755073857.373395, + 437932153070 ], "sub": [] }, @@ -149,30 +167,30 @@ "stat": [ "doGAToPass2", "entry", - 0.18133783340454102, - 0.15415200000000001, - 0.046651999999999999, - 271704, - 283444, - 0.010106, - 0.037125999999999999, - 1754490737.8707559, - 8955157006414 + 0.442626953125, + 0.149314, + 0.62018899999999999, + 272132, + 284336, + 0.0053299999999999997, + 0.036021999999999998, + 1755073857.373457, + 437932273635 ], "sub": [ { "stat": [ "DoPass2", "entry", - 0.22916483879089355, - 0.15607299999999999, - 0.047752999999999997, - 270148, - 283444, - 0.047620999999999997, - 0.045328, - 1754490737.9185829, - 8955252100471 + 0.82204389572143555, + 0.15271999999999999, + 0.62018899999999999, + 270576, + 284336, + 0.052364000000000001, + 0.337287, + 1755073857.7528739, + 438615263732 ], "sub": [] }, @@ -180,15 +198,15 @@ "stat": [ "DoPass2", "exit", - 0.35467386245727539, - 0.288551, - 0.053816999999999997, - 282948, - 283444, - 0.047620999999999997, - 0.045328, - 1754490738.0440919, - 8955501455464 + 1.0632719993591309, + 0.252332, + 0.75963899999999995, + 284212, + 284336, + 0.052364000000000001, + 0.337287, + 1755073857.994102, + 439049403609 ], "sub": [] } @@ -198,15 +216,15 @@ "stat": [ "doGAToPass2", "exit", - 0.36036086082458496, - 0.29200700000000002, - 0.055891999999999997, - 282948, - 283444, - 0.047620999999999997, - 0.045328, - 1754490738.0497789, - 8955512767538 + 1.0722420215606689, + 0.25439000000000001, + 0.76580700000000002, + 284212, + 284336, + 0.052364000000000001, + 0.337287, + 1755073858.003072, + 439065550163 ], "sub": [] } @@ -216,29 +234,72 @@ "stat": [ "main", "exit", - 0.36082696914672852, - 0.29243799999999998, - 0.055974000000000003, - 282940, - 283444, - 0.047620999999999997, - 0.045328, - 1754490738.050245, - 8955513659928 + 1.0725901126861572, + 0.25447700000000001, + 0.766069, + 284204, + 284336, + 0.052364000000000001, + 0.337287, + 1755073858.0034201, + 439066145641 ], "sub": [] } ], - "cpu_cycles_pass2_start": 8955252115017, - "incremental": "on", - "MlibObjs": {}, - "PEModules": [], - "rlimit": { - "data": -1, - "stack": -1 + "stat": { + "ru_self_cgstart": { + "ru_minflt": 26443, + "ru_utime_sec": 0.15285399999999999, + "ru_stime_sec": 0.62018899999999999, + "ru_maxrss_kb": 76788, + "ru_nvcsw": 112, + "ru_majflt": 54, + "ru_nivcsw": 7 + }, + "outputSizePerQuad": 68.894213197969549, + "mop/quad": 2.3480203045685277, + "nMops": 11564, + "ru_childs_cgstart": { + "ru_minflt": 10711, + "ru_utime_sec": 0.052364000000000001, + "ru_stime_sec": 0.337287, + "ru_maxrss_kb": 26184, + "ru_nvcsw": 53, + "ru_majflt": 8, + "ru_nivcsw": 26 + }, + "mopSpeed": 113777.46293180627, + "ru_childs_end": { + "ru_minflt": 10711, + "ru_utime_sec": 0.052364000000000001, + "ru_stime_sec": 0.337287, + "ru_maxrss_kb": 26184, + "ru_nvcsw": 53, + "ru_majflt": 8, + "ru_nivcsw": 26 + }, + "cpu_cycles_cgstart": 438615384880, + "totalObjSize": 339304, + "Frontend(%)": 66.877841325707564, + "nQuads": 4925, + "ru_self_end": { + "ru_minflt": 30811, + "ru_utime_sec": 0.25449100000000002, + "ru_stime_sec": 0.76610999999999996, + "ru_maxrss_kb": 90064, + "ru_nvcsw": 116, + "ru_majflt": 54, + "ru_nivcsw": 7 + }, + "cpu_cycles_end": 439066199134, + "cpu_cycles_total": 1569154993, + "quadSpeed": 48456.762793077294, + "CodeGen(%)": 33.122158674292429, + "peak_mem_kb": 284336, + "realTime": 1.0726790428161621 }, - "CompileStrategy": "fullobj", - "PrevCompiledModules": {}, + "PEModules": [], "NameTable": { "std": [ "std", @@ -246,9 +307,9 @@ "module", 1 ], - "tb_rchannel": [ - "tb_rchannel", - "TJvMf", + "tb_array_ctrl": [ + "tb_array_ctrl", + "S2s5w", "module", 2 ], @@ -259,92 +320,31 @@ 3 ] }, - "stat": { - "ru_childs_end": { - "ru_utime_sec": 0.047620999999999997, - "ru_nvcsw": 25, - "ru_stime_sec": 0.045328, - "ru_majflt": 0, - "ru_maxrss_kb": 30316, - "ru_minflt": 10693, - "ru_nivcsw": 23 - }, - "realTime": 0.36095094680786133, - "ru_self_cgstart": { - "ru_utime_sec": 0.15615299999999999, - "ru_nvcsw": 30, - "ru_stime_sec": 0.047778000000000001, - "ru_majflt": 0, - "ru_maxrss_kb": 79444, - "ru_minflt": 26640, - "ru_nivcsw": 4 - }, - "mopSpeed": 51555.842384329379, - "mop/quad": 2.7503912363067293, - "cpu_cycles_cgstart": 8955252168395, - "ru_childs_cgstart": { - "ru_utime_sec": 0.047620999999999997, - "ru_nvcsw": 25, - "ru_stime_sec": 0.045328, - "ru_majflt": 0, - "ru_maxrss_kb": 30316, - "ru_minflt": 10693, - "ru_nivcsw": 23 - }, - "CodeGen(%)": 40.089553730768436, - "nMops": 7030, - "cpu_cycles_total": 659455284, - "nQuads": 2556, - "totalObjSize": 262988, - "ru_self_end": { - "ru_utime_sec": 0.29250999999999999, - "ru_nvcsw": 32, - "ru_stime_sec": 0.055988000000000003, - "ru_majflt": 0, - "ru_maxrss_kb": 88536, - "ru_minflt": 30657, - "ru_nivcsw": 4 - }, - "cpu_cycles_end": 8955513736141, - "quadSpeed": 18744.912252396287, - "outputSizePerQuad": 102.8904538341158, - "Frontend(%)": 59.910446269231564, - "peak_mem_kb": 283444 + "cpu_cycles_pass2_start": 438615277851, + "rlimit": { + "stack": -1, + "data": -1 }, + "SIMBData": { + "bytes": 120018, + "out": "amcQwB.o", + "text": 0, + "archive": "archive.0/_5573_archive_1.a" + }, + "incremental": "on", + "LVLData": [ + "SIM" + ], "CurCompileModules": [ "...MASTER...", "...MASTER...", "std", "std", - "tb_rchannel", - "tb_rchannel" - ], - "CurCompileUdps": {}, - "SIMBData": { - "out": "amcQwB.o", - "bytes": 117874, - "text": 0, - "archive": "archive.0/_25796_archive_1.a" - }, - "LVLData": [ - "SIM" + "tb_array_ctrl", + "tb_array_ctrl" ], + "CompileStatus": "Successful", "CompileProcesses": [ - "cgproc.25796.json" - ], - "Misc": { - "vcs_version": "O-2018.09-1_Full64", - "vcs_build_date": "Build Date = Oct 12 2018 20:38:10", - "archive_dir": "archive.0", - "csrc": "csrc", - "master_pid": 25796, - "VCS_HOME": "/home/synopsys/vcs-mx/O-2018.09-1", - "hostname": "IC_EDA", - "cwd": "/home/ICer/ic_prjs/mc/IC_PRJ/sim", - "daidir_abs": "/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv.daidir", - "csrc_abs": "/home/ICer/ic_prjs/mc/IC_PRJ/sim/csrc", - "daidir": "simv.daidir", - "default_output_dir": "csrc" - }, - "CompileStatus": "Successful" + "cgproc.5573.json" + ] } \ No newline at end of file diff --git a/sim/csrc/filelist.cu b/sim/csrc/filelist.cu index 4fd0b7e..5745d38 100644 --- a/sim/csrc/filelist.cu +++ b/sim/csrc/filelist.cu @@ -1,12 +1,12 @@ PIC_LD=ld ARCHIVE_OBJS= -ARCHIVE_OBJS += _25796_archive_1.so -_25796_archive_1.so : archive.0/_25796_archive_1.a +ARCHIVE_OBJS += _5573_archive_1.so +_5573_archive_1.so : archive.0/_5573_archive_1.a @$(AR) -s $< - @$(PIC_LD) -shared -Bsymbolic -o .//../simv.daidir//_25796_archive_1.so --whole-archive $< --no-whole-archive + @$(PIC_LD) -shared -Bsymbolic -o .//../simv.daidir//_5573_archive_1.so --whole-archive $< --no-whole-archive @rm -f $@ - @ln -sf .//../simv.daidir//_25796_archive_1.so $@ + @ln -sf .//../simv.daidir//_5573_archive_1.so $@ diff --git a/sim/csrc/hsim/hsim.sdb b/sim/csrc/hsim/hsim.sdb index ee649d3..8f38dee 100644 Binary files a/sim/csrc/hsim/hsim.sdb and b/sim/csrc/hsim/hsim.sdb differ diff --git a/sim/csrc/objs/amcQw_d.o b/sim/csrc/objs/amcQw_d.o index d0a68ce..065332b 100644 Binary files a/sim/csrc/objs/amcQw_d.o and b/sim/csrc/objs/amcQw_d.o differ diff --git a/sim/csrc/rmapats_mop.o b/sim/csrc/rmapats_mop.o index 1a9f8c5..a592995 100644 Binary files a/sim/csrc/rmapats_mop.o and b/sim/csrc/rmapats_mop.o differ diff --git a/sim/filelist.f b/sim/filelist.f index f12eadb..d0821ff 100644 --- a/sim/filelist.f +++ b/sim/filelist.f @@ -1,14 +1,30 @@ -../rtl/sync_fifo_128_to_64.v -#../rtl/sync_fifo_64_to_128.v -#../rtl/async_fifo.v -#../rtl/wchannel.v -../rtl/sync_fifo.v -../rtl/rchannel.v -#../rtl/frame_arbiter.v -#../tb/tb_sync_fifo_128_to_64.v -#../tb/tb_async_fifo.v -#../tb/tb_sync_fifo_64_to_128.v -#../tb/tb_sync_fifo.v -#../tb/tb_wchannel.v -../tb/tb_rchannel.v -#../tb/tb_frame_arbiter.v +../rtl/async_fifo.v +// ../rtl/sync_fifo.v +// ../rtl/wchannel.v +// ../rtl/frame_arbiter.v +// ../rtl/sync_fifo_64_to_128.v +// ../rtl/sync_fifo_128_to_64.v +// ../rtl/rchannel.v +// ../rtl/axi_slv.v +../rtl/array_ctrl.v +../rtl/array_status_ctrl.v +../rtl/array_wr.v +../rtl/array_rd.v +../rtl/array_ref.v +../rtl/array_mux.v +//../rtl/apb_cfg.v +// ../tb/tb_async_fifo.v +// ../tb/tb_rchannel.v +// ../tb/tb_sync_fifo.v +// ../tb/tb_sync_fifo_128_to_64.v +// ../tb/tb_sync_fifo_64_to_128.v +// ../tb/tb_wchannel.v +// ../tb/tb_frame_arbiter.v +// ../tb/tb_axi_slv.v +// ../tb/tb_array_status_ctrl.v +// ../tb/tb_array_wr.v +// ../tb/tb_array_rd.v +// ../tb/tb_array_ref.v +// ../tb/tb_array_mux.v +../tb/tb_array_ctrl.v +//../tb/tb_apb_cfg.v diff --git a/sim/novas.conf b/sim/novas.conf index 8f9ff84..a2c2b04 100644 --- a/sim/novas.conf +++ b/sim/novas.conf @@ -22,8 +22,8 @@ Verdi_1\qBaseWindowRestoreStateGroup\qDockerWindow_defaultLayout\Layout="@ByteAr Verdi_1\qBaseWindowRestoreStateGroup\qDockerWindow_defaultLayout\isNestedWindow=0 Verdi_1\qBaseWindowRestoreStateGroup\qDockerWindow_defaultLayout\isVisible=true Verdi_1\qBaseWindowRestoreStateGroup\qDockerWindow_defaultLayout\size=@Size(900 700) -Verdi_1\qBaseWindowRestoreStateGroup\qDockerWindow_defaultLayout\geometry_x=507 -Verdi_1\qBaseWindowRestoreStateGroup\qDockerWindow_defaultLayout\geometry_y=88 +Verdi_1\qBaseWindowRestoreStateGroup\qDockerWindow_defaultLayout\geometry_x=509 +Verdi_1\qBaseWindowRestoreStateGroup\qDockerWindow_defaultLayout\geometry_y=90 Verdi_1\qBaseWindowRestoreStateGroup\qDockerWindow_defaultLayout\geometry_width=900 Verdi_1\qBaseWindowRestoreStateGroup\qDockerWindow_defaultLayout\geometry_height=700 Verdi_1\qBaseWindowNextStateGroup\0\qDockerWindow_restoreNewChildState=true @@ -49,8 +49,8 @@ Verdi_1\qBaseWindowNextStateGroup\0\Layout="@ByteArray(\0\0\0\xff\0\0\0\0\xfd\0\ Verdi_1\qBaseWindowNextStateGroup\0\isNestedWindow=0 Verdi_1\qBaseWindowNextStateGroup\0\isVisible=true Verdi_1\qBaseWindowNextStateGroup\0\size=@Size(900 700) -Verdi_1\qBaseWindowNextStateGroup\0\geometry_x=497 -Verdi_1\qBaseWindowNextStateGroup\0\geometry_y=80 +Verdi_1\qBaseWindowNextStateGroup\0\geometry_x=499 +Verdi_1\qBaseWindowNextStateGroup\0\geometry_y=82 Verdi_1\qBaseWindowNextStateGroup\0\geometry_width=900 Verdi_1\qBaseWindowNextStateGroup\0\geometry_height=700 Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\qDockerWindow_restoreNewChildState=true @@ -72,14 +72,14 @@ Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\qBaseDockWidgetGro Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\qBaseDockWidgetGroup\widgetDock_%3CDecl._Tree%3E\qBaseWindowBeFix=0 Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\qBaseDockWidgetGroup\widgetDock_%3CDecl._Tree%3E\dockIsFloating=false Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\ProductVersion=201809 -Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\Layout="@ByteArray(\0\0\0\xff\0\0\0\0\xfd\0\0\0\x2\0\0\0\x2\0\0\az\0\0\0\x88\xfc\x1\0\0\0\x3\xfc\0\0\0\0\0\0\x2\x30\0\0\x1\x19\0\xff\xff\xff\xfa\0\0\0\0\x1\0\0\0\x5\xfb\0\0\0.\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0I\0n\0s\0t\0.\0_\0T\0r\0\x65\0\x65\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\0V\0\xff\xff\xff\xfb\0\0\0.\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0\x44\0\x65\0\x63\0l\0.\0_\0T\0r\0\x65\0\x65\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\0V\0\xff\xff\xff\xfb\0\0\0$\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0S\0t\0\x61\0\x63\0k\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\xda\0\xff\xff\xff\xfb\0\0\0\x30\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0\x43\0l\0\x61\0s\0s\0.\0_\0T\0r\0\x65\0\x65\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\xd1\0\xff\xff\xff\xfb\0\0\0\x32\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0O\0\x62\0j\0\x65\0\x63\0t\0.\0_\0T\0r\0\x65\0\x65\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\x1\x19\0\xff\xff\xff\xfc\0\0\x2\x36\0\0\0\xc6\0\0\0\xa9\0\xff\xff\xff\xfa\0\0\0\x2\x1\0\0\0\x3\xfb\0\0\0\x30\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0S\0i\0g\0n\0\x61\0l\0_\0L\0i\0s\0t\0>\0\0\0\0\0\xff\xff\xff\xff\0\0\0k\0\0\0k\xfb\0\0\0$\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0L\0o\0\x63\0\x61\0l\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\xa9\0\xff\xff\xff\xfb\0\0\0&\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0M\0\x65\0m\0\x62\0\x65\0r\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\x8f\0\xff\xff\xff\xfb\0\0\0\x36\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0M\0T\0\x42\0_\0S\0O\0U\0R\0\x43\0\x45\0_\0T\0\x41\0\x42\0_\0\x31\x1\0\0\x3\x2\0\0\x4x\0\0\0k\0\xff\xff\xff\0\0\0\x3\0\0\az\0\0\x1\xf4\xfc\x1\0\0\0\x2\xfc\0\0\0\0\0\0\x4\xf6\0\0\x2,\0\xff\xff\xff\xfa\0\0\0\x3\x1\0\0\0\x5\xfb\0\0\0(\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0M\0\x65\0s\0s\0\x61\0g\0\x65\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\xa0\0\xff\xff\xff\xfb\0\0\0(\0w\0i\0n\0\x64\0o\0w\0\x44\0o\0\x63\0k\0_\0O\0n\0\x65\0S\0\x65\0\x61\0r\0\x63\0h\x1\0\0\0\0\xff\xff\xff\xff\0\0\x2,\0\xff\xff\xff\xfb\0\0\0$\0w\0i\0n\0\x64\0o\0w\0\x44\0o\0\x63\0k\0_\0n\0W\0\x61\0v\0\x65\0_\0\x32\x1\0\0\0\0\xff\xff\xff\xff\0\0\x1-\0\xff\xff\xff\xfb\0\0\0>\0w\0i\0n\0\x64\0o\0w\0\x44\0o\0\x63\0k\0_\0I\0n\0t\0\x65\0r\0\x61\0\x63\0t\0i\0v\0\x65\0\x43\0o\0n\0s\0o\0l\0\x65\0_\0\x33\x1\0\0\0\0\xff\xff\xff\xff\0\0\x1W\0\xff\xff\xff\xfb\0\0\0 \0w\0i\0n\0\x64\0o\0w\0\x44\0o\0\x63\0k\0_\0n\0W\0\x61\0v\0\x65\0\0\0\0\0\xff\xff\xff\xff\0\0\x1\xd5\0\xff\xff\xff\xfb\0\0\0$\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0W\0\x61\0t\0\x63\0h\0>\x1\0\0\x4\xfc\0\0\x2~\0\0\0\xa9\0\xff\xff\xff\0\0\az\0\0\0\0\0\0\0\x4\0\0\0\x4\0\0\0\b\0\0\0\b\xfc\0\0\0\x6\0\0\0\x2\0\0\0\x10\0\0\0.\0H\0\x42\0_\0I\0M\0P\0O\0R\0T\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0(\0H\0\x42\0_\0N\0\x45\0W\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0$\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0(\0H\0\x42\0_\0S\0I\0G\0N\0\x41\0L\0_\0P\0\x41\0N\0\x45\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0~\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0$\0H\0\x42\0_\0M\0U\0L\0T\0I\0_\0T\0\x41\0\x42\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0\xa2\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0*\0H\0\x42\0_\0\x45\0\x44\0I\0T\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0\xc6\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0$\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\x1\0\0\0\xea\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0,\0H\0\x42\0_\0T\0R\0\x41\0\x43\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\x1\x18\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0.\0H\0\x42\0_\0S\0O\0U\0R\0\x43\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\x2/\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0,\0t\0o\0o\0l\0\x62\0\x61\0r\0H\0\x42\0_\0T\0O\0G\0G\0L\0\x45\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x3\x1\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x32\0t\0o\0o\0l\0\x62\0\x61\0r\0H\0\x42\0_\0\x45\0M\0U\0L\0\x41\0T\0I\0O\0N\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x2\xbb\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x30\0t\0o\0o\0l\0\x62\0\x61\0r\0H\0\x42\0_\0P\0R\0O\0\x44\0T\0Y\0P\0\x45\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x3\x16\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0<\0\x41\0\x42\0V\0_\0\x41\0\x44\0\x44\0_\0T\0\x45\0M\0P\0O\0R\0\x41\0R\0Y\0_\0\x41\0S\0S\0\x45\0R\0T\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x2\xe8\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x1e\0U\0V\0M\0_\0\x41\0W\0\x41\0R\0\x45\0_\0\x44\0\x45\0\x42\0U\0G\0\0\0\x3\f\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0 \0V\0\x43\0_\0\x41\0P\0P\0S\0_\0T\0O\0O\0L\0_\0\x42\0O\0X\x1\0\0\x3\x1\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x14\0L\0O\0G\0_\0V\0I\0\x45\0W\0\x45\0R\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0$\0\x41\0M\0S\0_\0\x43\0O\0N\0\x46\0I\0G\0_\0T\0O\0O\0L\0\x42\0\x41\0R\x1\0\0\x3%\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x3\0\0\0\x30\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0&\0H\0\x42\0_\0\x42\0\x41\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x1\xfb\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x32\0t\0o\0o\0l\0\x42\0\x61\0r\0\x46\0o\0r\0m\0\x61\0l\0V\0\x65\0r\0i\0\x66\0i\0\x63\0\x61\0t\0i\0o\0n\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x4\0\0\0>\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0R\0\x45\0W\0I\0N\0\x44\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0R\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0R\0\x45\0W\0I\0N\0\x44\0_\0U\0N\0\x44\0O\0_\0R\0\x45\0\x44\0O\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\x1\0\0\x1\x5\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0@\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0R\0\x45\0V\0\x45\0R\0S\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\x1\0\0\x1\x95\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x38\0H\0\x42\0_\0P\0O\0W\0\x45\0R\0_\0T\0R\0\x41\0\x43\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0:\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0V\0S\0I\0M\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0:\0N\0O\0V\0\x41\0S\0_\0\x45\0M\0U\0L\0\x41\0T\0I\0O\0N\0_\0\x44\0\x45\0\x42\0U\0G\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0\x1a\0\x43\0V\0G\0_\0\x43\0\x45\0R\0_\0P\0\x41\0N\0\x45\0L\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0)" +Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\Layout="@ByteArray(\0\0\0\xff\0\0\0\0\xfd\0\0\0\x2\0\0\0\x2\0\0\x3\x84\0\0\x1\x34\xfc\x1\0\0\0\x3\xfc\0\0\0\0\0\0\x1&\0\0\0\x89\0\xff\xff\xff\xfa\0\0\0\0\x1\0\0\0\x2\xfb\0\0\0.\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0I\0n\0s\0t\0.\0_\0T\0r\0\x65\0\x65\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\0V\0\xff\xff\xff\xfb\0\0\0.\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0\x44\0\x65\0\x63\0l\0.\0_\0T\0r\0\x65\0\x65\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\0V\0\xff\xff\xff\xfb\0\0\0\x30\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0S\0i\0g\0n\0\x61\0l\0_\0L\0i\0s\0t\0>\0\0\0\0\xe9\0\0\0\xc6\0\0\0k\0\0\0k\xfb\0\0\0\x36\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0M\0T\0\x42\0_\0S\0O\0U\0R\0\x43\0\x45\0_\0T\0\x41\0\x42\0_\0\x31\x1\0\0\x1,\0\0\x2X\0\0\0k\0\xff\xff\xff\0\0\0\x3\0\0\x3\x84\0\0\x1\x34\xfc\x1\0\0\0\x1\xfc\0\0\0\0\0\0\x3\x84\0\0\x1\xd5\0\xff\xff\xff\xfa\0\0\0\x2\x1\0\0\0\x3\xfb\0\0\0(\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0M\0\x65\0s\0s\0\x61\0g\0\x65\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\xa0\0\xff\xff\xff\xfb\0\0\0(\0w\0i\0n\0\x64\0o\0w\0\x44\0o\0\x63\0k\0_\0O\0n\0\x65\0S\0\x65\0\x61\0r\0\x63\0h\x1\0\0\0\0\xff\xff\xff\xff\0\0\x1\x90\0\xff\xff\xff\xfb\0\0\0$\0w\0i\0n\0\x64\0o\0w\0\x44\0o\0\x63\0k\0_\0n\0W\0\x61\0v\0\x65\0_\0\x32\x1\0\0\0\0\xff\xff\xff\xff\0\0\x1\xd5\0\xff\xff\xff\0\0\x3\x84\0\0\0\0\0\0\0\x4\0\0\0\x4\0\0\0\b\0\0\0\b\xfc\0\0\0\x6\0\0\0\x2\0\0\0\x10\0\0\0.\0H\0\x42\0_\0I\0M\0P\0O\0R\0T\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0(\0H\0\x42\0_\0N\0\x45\0W\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0$\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0(\0H\0\x42\0_\0S\0I\0G\0N\0\x41\0L\0_\0P\0\x41\0N\0\x45\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0~\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0$\0H\0\x42\0_\0M\0U\0L\0T\0I\0_\0T\0\x41\0\x42\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0\xa2\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0*\0H\0\x42\0_\0\x45\0\x44\0I\0T\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0\xc6\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0$\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\x1\0\0\0\xea\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0,\0H\0\x42\0_\0T\0R\0\x41\0\x43\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\x1\x18\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0.\0H\0\x42\0_\0S\0O\0U\0R\0\x43\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\x2/\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0,\0t\0o\0o\0l\0\x62\0\x61\0r\0H\0\x42\0_\0T\0O\0G\0G\0L\0\x45\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x3\x1\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x32\0t\0o\0o\0l\0\x62\0\x61\0r\0H\0\x42\0_\0\x45\0M\0U\0L\0\x41\0T\0I\0O\0N\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x2\xbb\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x30\0t\0o\0o\0l\0\x62\0\x61\0r\0H\0\x42\0_\0P\0R\0O\0\x44\0T\0Y\0P\0\x45\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x3\x16\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0<\0\x41\0\x42\0V\0_\0\x41\0\x44\0\x44\0_\0T\0\x45\0M\0P\0O\0R\0\x41\0R\0Y\0_\0\x41\0S\0S\0\x45\0R\0T\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x2\xe8\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x1e\0U\0V\0M\0_\0\x41\0W\0\x41\0R\0\x45\0_\0\x44\0\x45\0\x42\0U\0G\0\0\0\x3\f\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0 \0V\0\x43\0_\0\x41\0P\0P\0S\0_\0T\0O\0O\0L\0_\0\x42\0O\0X\x1\0\0\x3\x1\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x14\0L\0O\0G\0_\0V\0I\0\x45\0W\0\x45\0R\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0$\0\x41\0M\0S\0_\0\x43\0O\0N\0\x46\0I\0G\0_\0T\0O\0O\0L\0\x42\0\x41\0R\x1\0\0\x3%\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x3\0\0\0\x30\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0&\0H\0\x42\0_\0\x42\0\x41\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x1\xfb\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x32\0t\0o\0o\0l\0\x42\0\x61\0r\0\x46\0o\0r\0m\0\x61\0l\0V\0\x65\0r\0i\0\x66\0i\0\x63\0\x61\0t\0i\0o\0n\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x4\0\0\0>\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0R\0\x45\0W\0I\0N\0\x44\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0R\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0R\0\x45\0W\0I\0N\0\x44\0_\0U\0N\0\x44\0O\0_\0R\0\x45\0\x44\0O\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\x1\x5\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0@\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0R\0\x45\0V\0\x45\0R\0S\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\x1\x95\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x38\0H\0\x42\0_\0P\0O\0W\0\x45\0R\0_\0T\0R\0\x41\0\x43\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0:\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0V\0S\0I\0M\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0:\0N\0O\0V\0\x41\0S\0_\0\x45\0M\0U\0L\0\x41\0T\0I\0O\0N\0_\0\x44\0\x45\0\x42\0U\0G\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0\x1a\0\x43\0V\0G\0_\0\x43\0\x45\0R\0_\0P\0\x41\0N\0\x45\0L\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0)" Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\isNestedWindow=0 Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\isVisible=true -Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\size=@Size(1914 774) -Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\geometry_x=-10 -Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\geometry_y=20 -Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\geometry_width=1914 -Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\geometry_height=774 +Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\size=@Size(900 700) +Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\geometry_x=499 +Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\geometry_y=82 +Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\geometry_width=900 +Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\geometry_height=700 Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\qBaseDockWidgetGroup\windowDock_OneSearch\isNestedWindow=1 Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\qBaseDockWidgetGroup\windowDock_OneSearch\isVisible=true Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\qBaseDockWidgetGroup\windowDock_OneSearch\qBaseWindowBeMax=0 @@ -113,8 +113,8 @@ Verdi_1\qBaseWindowNextStateGroup\1\Layout="@ByteArray(\0\0\0\xff\0\0\0\x1\xfd\0 Verdi_1\qBaseWindowNextStateGroup\1\isNestedWindow=0 Verdi_1\qBaseWindowNextStateGroup\1\isVisible=true Verdi_1\qBaseWindowNextStateGroup\1\size=@Size(900 700) -Verdi_1\qBaseWindowNextStateGroup\1\geometry_x=497 -Verdi_1\qBaseWindowNextStateGroup\1\geometry_y=80 +Verdi_1\qBaseWindowNextStateGroup\1\geometry_x=499 +Verdi_1\qBaseWindowNextStateGroup\1\geometry_y=82 Verdi_1\qBaseWindowNextStateGroup\1\geometry_width=900 Verdi_1\qBaseWindowNextStateGroup\1\geometry_height=700 Verdi_1\qBaseWindowNextStateGroup\2\qDockerWindow_restoreNewChildState=true @@ -142,8 +142,8 @@ Verdi_1\qBaseWindowNextStateGroup\2\Layout="@ByteArray(\0\0\0\xff\0\0\0\x2\xfd\0 Verdi_1\qBaseWindowNextStateGroup\2\isNestedWindow=0 Verdi_1\qBaseWindowNextStateGroup\2\isVisible=true Verdi_1\qBaseWindowNextStateGroup\2\size=@Size(900 700) -Verdi_1\qBaseWindowNextStateGroup\2\geometry_x=497 -Verdi_1\qBaseWindowNextStateGroup\2\geometry_y=80 +Verdi_1\qBaseWindowNextStateGroup\2\geometry_x=499 +Verdi_1\qBaseWindowNextStateGroup\2\geometry_y=82 Verdi_1\qBaseWindowNextStateGroup\2\geometry_width=900 Verdi_1\qBaseWindowNextStateGroup\2\geometry_height=700 Verdi_1\qBaseWindowNextStateGroup\3\qDockerWindow_restoreNewChildState=true @@ -170,14 +170,14 @@ Verdi_1\qBaseWindowNextStateGroup\3\qBaseDockWidgetGroup\windowDock_OneSearch\qB Verdi_1\qBaseWindowNextStateGroup\3\qBaseDockWidgetGroup\windowDock_OneSearch\qBaseWindowBeFix=0 Verdi_1\qBaseWindowNextStateGroup\3\qBaseDockWidgetGroup\windowDock_OneSearch\dockIsFloating=false Verdi_1\qBaseWindowNextStateGroup\3\ProductVersion=201809 -Verdi_1\qBaseWindowNextStateGroup\3\Layout="@ByteArray(\0\0\0\xff\0\0\0\x3\xfd\0\0\0\x2\0\0\0\x2\0\0\az\0\0\x1Y\xfc\x1\0\0\0\x3\xfc\0\0\0\0\0\0\x2s\0\0\0\x89\0\xff\xff\xff\xfa\0\0\0\0\x1\0\0\0\x2\xfb\0\0\0.\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0I\0n\0s\0t\0.\0_\0T\0r\0\x65\0\x65\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\0V\0\xff\xff\xff\xfb\0\0\0.\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0\x44\0\x65\0\x63\0l\0.\0_\0T\0r\0\x65\0\x65\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\0V\0\xff\xff\xff\xfb\0\0\0\x30\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0S\0i\0g\0n\0\x61\0l\0_\0L\0i\0s\0t\0>\0\0\0\0\xe9\0\0\0\xc6\0\0\0k\0\0\0k\xfb\0\0\0\x36\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0M\0T\0\x42\0_\0S\0O\0U\0R\0\x43\0\x45\0_\0T\0\x41\0\x42\0_\0\x31\x1\0\0\x2y\0\0\x5\x1\0\0\0k\0\xff\xff\xff\0\0\0\x3\0\0\az\0\0\x1Y\xfc\x1\0\0\0\x1\xfc\0\0\0\0\0\0\az\0\0\x2,\0\xff\xff\xff\xfa\0\0\0\x1\x1\0\0\0\x2\xfb\0\0\0(\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0M\0\x65\0s\0s\0\x61\0g\0\x65\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\xa0\0\xff\xff\xff\xfb\0\0\0(\0w\0i\0n\0\x64\0o\0w\0\x44\0o\0\x63\0k\0_\0O\0n\0\x65\0S\0\x65\0\x61\0r\0\x63\0h\x1\0\0\0\0\xff\xff\xff\xff\0\0\x2,\0\xff\xff\xff\0\0\az\0\0\0\0\0\0\0\x4\0\0\0\x4\0\0\0\b\0\0\0\b\xfc\0\0\0\x6\0\0\0\x2\0\0\0\x10\0\0\0.\0H\0\x42\0_\0I\0M\0P\0O\0R\0T\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0(\0H\0\x42\0_\0N\0\x45\0W\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0$\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0(\0H\0\x42\0_\0S\0I\0G\0N\0\x41\0L\0_\0P\0\x41\0N\0\x45\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0~\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0$\0H\0\x42\0_\0M\0U\0L\0T\0I\0_\0T\0\x41\0\x42\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0\xa2\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0*\0H\0\x42\0_\0\x45\0\x44\0I\0T\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0\xc6\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0$\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\x1\0\0\0\xea\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0,\0H\0\x42\0_\0T\0R\0\x41\0\x43\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\x1\x18\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0.\0H\0\x42\0_\0S\0O\0U\0R\0\x43\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\x2/\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0,\0t\0o\0o\0l\0\x62\0\x61\0r\0H\0\x42\0_\0T\0O\0G\0G\0L\0\x45\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x3\x1\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x32\0t\0o\0o\0l\0\x62\0\x61\0r\0H\0\x42\0_\0\x45\0M\0U\0L\0\x41\0T\0I\0O\0N\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x2\xbb\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x30\0t\0o\0o\0l\0\x62\0\x61\0r\0H\0\x42\0_\0P\0R\0O\0\x44\0T\0Y\0P\0\x45\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x3\x16\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0<\0\x41\0\x42\0V\0_\0\x41\0\x44\0\x44\0_\0T\0\x45\0M\0P\0O\0R\0\x41\0R\0Y\0_\0\x41\0S\0S\0\x45\0R\0T\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x2\xe8\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x1e\0U\0V\0M\0_\0\x41\0W\0\x41\0R\0\x45\0_\0\x44\0\x45\0\x42\0U\0G\0\0\0\x3\f\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0 \0V\0\x43\0_\0\x41\0P\0P\0S\0_\0T\0O\0O\0L\0_\0\x42\0O\0X\x1\0\0\x3\x1\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x14\0L\0O\0G\0_\0V\0I\0\x45\0W\0\x45\0R\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0$\0\x41\0M\0S\0_\0\x43\0O\0N\0\x46\0I\0G\0_\0T\0O\0O\0L\0\x42\0\x41\0R\x1\0\0\x3%\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x3\0\0\0\x30\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0&\0H\0\x42\0_\0\x42\0\x41\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x1\xfb\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x32\0t\0o\0o\0l\0\x42\0\x61\0r\0\x46\0o\0r\0m\0\x61\0l\0V\0\x65\0r\0i\0\x66\0i\0\x63\0\x61\0t\0i\0o\0n\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x4\0\0\0>\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0R\0\x45\0W\0I\0N\0\x44\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0R\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0R\0\x45\0W\0I\0N\0\x44\0_\0U\0N\0\x44\0O\0_\0R\0\x45\0\x44\0O\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\x1\x5\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0@\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0R\0\x45\0V\0\x45\0R\0S\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\x1\x95\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x38\0H\0\x42\0_\0P\0O\0W\0\x45\0R\0_\0T\0R\0\x41\0\x43\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0:\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0V\0S\0I\0M\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0:\0N\0O\0V\0\x41\0S\0_\0\x45\0M\0U\0L\0\x41\0T\0I\0O\0N\0_\0\x44\0\x45\0\x42\0U\0G\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0\x1a\0\x43\0V\0G\0_\0\x43\0\x45\0R\0_\0P\0\x41\0N\0\x45\0L\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0)" +Verdi_1\qBaseWindowNextStateGroup\3\Layout="@ByteArray(\0\0\0\xff\0\0\0\x3\xfd\0\0\0\x2\0\0\0\x2\0\0\x3\x84\0\0\x1\x34\xfc\x1\0\0\0\x3\xfc\0\0\0\0\0\0\x1&\0\0\0\x89\0\xff\xff\xff\xfa\0\0\0\0\x1\0\0\0\x2\xfb\0\0\0.\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0I\0n\0s\0t\0.\0_\0T\0r\0\x65\0\x65\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\0V\0\xff\xff\xff\xfb\0\0\0.\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0\x44\0\x65\0\x63\0l\0.\0_\0T\0r\0\x65\0\x65\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\0V\0\xff\xff\xff\xfb\0\0\0\x30\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0S\0i\0g\0n\0\x61\0l\0_\0L\0i\0s\0t\0>\0\0\0\0\xe9\0\0\0\xc6\0\0\0k\0\0\0k\xfb\0\0\0\x36\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0M\0T\0\x42\0_\0S\0O\0U\0R\0\x43\0\x45\0_\0T\0\x41\0\x42\0_\0\x31\x1\0\0\x1,\0\0\x2X\0\0\0k\0\xff\xff\xff\0\0\0\x3\0\0\x3\x84\0\0\x1\x34\xfc\x1\0\0\0\x1\xfc\0\0\0\0\0\0\x3\x84\0\0\x1\x90\0\xff\xff\xff\xfa\0\0\0\x1\x1\0\0\0\x2\xfb\0\0\0(\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0M\0\x65\0s\0s\0\x61\0g\0\x65\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\xa0\0\xff\xff\xff\xfb\0\0\0(\0w\0i\0n\0\x64\0o\0w\0\x44\0o\0\x63\0k\0_\0O\0n\0\x65\0S\0\x65\0\x61\0r\0\x63\0h\x1\0\0\0\0\xff\xff\xff\xff\0\0\x1\x90\0\xff\xff\xff\0\0\x3\x84\0\0\0\0\0\0\0\x4\0\0\0\x4\0\0\0\b\0\0\0\b\xfc\0\0\0\x6\0\0\0\x2\0\0\0\x10\0\0\0.\0H\0\x42\0_\0I\0M\0P\0O\0R\0T\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0(\0H\0\x42\0_\0N\0\x45\0W\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0$\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0(\0H\0\x42\0_\0S\0I\0G\0N\0\x41\0L\0_\0P\0\x41\0N\0\x45\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0~\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0$\0H\0\x42\0_\0M\0U\0L\0T\0I\0_\0T\0\x41\0\x42\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0\xa2\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0*\0H\0\x42\0_\0\x45\0\x44\0I\0T\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0\xc6\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0$\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\x1\0\0\0\xea\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0,\0H\0\x42\0_\0T\0R\0\x41\0\x43\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\x1\x18\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0.\0H\0\x42\0_\0S\0O\0U\0R\0\x43\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\x2/\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0,\0t\0o\0o\0l\0\x62\0\x61\0r\0H\0\x42\0_\0T\0O\0G\0G\0L\0\x45\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x3\x1\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x32\0t\0o\0o\0l\0\x62\0\x61\0r\0H\0\x42\0_\0\x45\0M\0U\0L\0\x41\0T\0I\0O\0N\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x2\xbb\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x30\0t\0o\0o\0l\0\x62\0\x61\0r\0H\0\x42\0_\0P\0R\0O\0\x44\0T\0Y\0P\0\x45\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x3\x16\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0<\0\x41\0\x42\0V\0_\0\x41\0\x44\0\x44\0_\0T\0\x45\0M\0P\0O\0R\0\x41\0R\0Y\0_\0\x41\0S\0S\0\x45\0R\0T\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x2\xe8\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x1e\0U\0V\0M\0_\0\x41\0W\0\x41\0R\0\x45\0_\0\x44\0\x45\0\x42\0U\0G\0\0\0\x3\f\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0 \0V\0\x43\0_\0\x41\0P\0P\0S\0_\0T\0O\0O\0L\0_\0\x42\0O\0X\x1\0\0\x3\x1\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x14\0L\0O\0G\0_\0V\0I\0\x45\0W\0\x45\0R\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0$\0\x41\0M\0S\0_\0\x43\0O\0N\0\x46\0I\0G\0_\0T\0O\0O\0L\0\x42\0\x41\0R\x1\0\0\x3%\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x3\0\0\0\x30\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0&\0H\0\x42\0_\0\x42\0\x41\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x1\xfb\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x32\0t\0o\0o\0l\0\x42\0\x61\0r\0\x46\0o\0r\0m\0\x61\0l\0V\0\x65\0r\0i\0\x66\0i\0\x63\0\x61\0t\0i\0o\0n\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x4\0\0\0>\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0R\0\x45\0W\0I\0N\0\x44\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0R\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0R\0\x45\0W\0I\0N\0\x44\0_\0U\0N\0\x44\0O\0_\0R\0\x45\0\x44\0O\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\x1\x5\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0@\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0R\0\x45\0V\0\x45\0R\0S\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\x1\x95\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x38\0H\0\x42\0_\0P\0O\0W\0\x45\0R\0_\0T\0R\0\x41\0\x43\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0:\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0V\0S\0I\0M\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0:\0N\0O\0V\0\x41\0S\0_\0\x45\0M\0U\0L\0\x41\0T\0I\0O\0N\0_\0\x44\0\x45\0\x42\0U\0G\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0\x1a\0\x43\0V\0G\0_\0\x43\0\x45\0R\0_\0P\0\x41\0N\0\x45\0L\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0)" Verdi_1\qBaseWindowNextStateGroup\3\isNestedWindow=0 Verdi_1\qBaseWindowNextStateGroup\3\isVisible=true -Verdi_1\qBaseWindowNextStateGroup\3\size=@Size(1914 774) -Verdi_1\qBaseWindowNextStateGroup\3\geometry_x=-10 -Verdi_1\qBaseWindowNextStateGroup\3\geometry_y=20 -Verdi_1\qBaseWindowNextStateGroup\3\geometry_width=1914 -Verdi_1\qBaseWindowNextStateGroup\3\geometry_height=774 +Verdi_1\qBaseWindowNextStateGroup\3\size=@Size(900 700) +Verdi_1\qBaseWindowNextStateGroup\3\geometry_x=499 +Verdi_1\qBaseWindowNextStateGroup\3\geometry_y=82 +Verdi_1\qBaseWindowNextStateGroup\3\geometry_width=900 +Verdi_1\qBaseWindowNextStateGroup\3\geometry_height=700 Verdi_1\qBaseWindowNextStateGroup\4\qDockerWindow_restoreNewChildState=true Verdi_1\qBaseWindowNextStateGroup\4\qBaseDockWidgetGroup\widgetDock_%3CInst._Tree%3E\isVisible=true Verdi_1\qBaseWindowNextStateGroup\4\qBaseDockWidgetGroup\widgetDock_%3CInst._Tree%3E\qBaseWindowBeMax=0 @@ -202,14 +202,14 @@ Verdi_1\qBaseWindowNextStateGroup\4\qBaseDockWidgetGroup\windowDock_OneSearch\qB Verdi_1\qBaseWindowNextStateGroup\4\qBaseDockWidgetGroup\windowDock_OneSearch\qBaseWindowBeFix=0 Verdi_1\qBaseWindowNextStateGroup\4\qBaseDockWidgetGroup\windowDock_OneSearch\dockIsFloating=false Verdi_1\qBaseWindowNextStateGroup\4\ProductVersion=201809 -Verdi_1\qBaseWindowNextStateGroup\4\Layout="@ByteArray(\0\0\0\xff\0\0\0\x4\xfd\0\0\0\x2\0\0\0\x2\0\0\az\0\0\x1Y\xfc\x1\0\0\0\x3\xfc\0\0\0\0\0\0\x2s\0\0\0\x89\0\xff\xff\xff\xfa\0\0\0\0\x1\0\0\0\x2\xfb\0\0\0.\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0I\0n\0s\0t\0.\0_\0T\0r\0\x65\0\x65\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\0V\0\xff\xff\xff\xfb\0\0\0.\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0\x44\0\x65\0\x63\0l\0.\0_\0T\0r\0\x65\0\x65\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\0V\0\xff\xff\xff\xfb\0\0\0\x30\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0S\0i\0g\0n\0\x61\0l\0_\0L\0i\0s\0t\0>\0\0\0\0\xe9\0\0\0\xc6\0\0\0k\0\0\0k\xfb\0\0\0\x36\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0M\0T\0\x42\0_\0S\0O\0U\0R\0\x43\0\x45\0_\0T\0\x41\0\x42\0_\0\x31\x1\0\0\x2y\0\0\x5\x1\0\0\0k\0\xff\xff\xff\0\0\0\x3\0\0\az\0\0\x1Y\xfc\x1\0\0\0\x1\xfc\0\0\0\0\0\0\az\0\0\x2,\0\xff\xff\xff\xfa\0\0\0\x1\x1\0\0\0\x2\xfb\0\0\0(\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0M\0\x65\0s\0s\0\x61\0g\0\x65\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\xa0\0\xff\xff\xff\xfb\0\0\0(\0w\0i\0n\0\x64\0o\0w\0\x44\0o\0\x63\0k\0_\0O\0n\0\x65\0S\0\x65\0\x61\0r\0\x63\0h\x1\0\0\0\0\xff\xff\xff\xff\0\0\x2,\0\xff\xff\xff\0\0\az\0\0\0\0\0\0\0\x4\0\0\0\x4\0\0\0\b\0\0\0\b\xfc\0\0\0\x6\0\0\0\x2\0\0\0\x10\0\0\0.\0H\0\x42\0_\0I\0M\0P\0O\0R\0T\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0(\0H\0\x42\0_\0N\0\x45\0W\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0$\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0(\0H\0\x42\0_\0S\0I\0G\0N\0\x41\0L\0_\0P\0\x41\0N\0\x45\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0~\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0$\0H\0\x42\0_\0M\0U\0L\0T\0I\0_\0T\0\x41\0\x42\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0\xa2\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0*\0H\0\x42\0_\0\x45\0\x44\0I\0T\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0\xc6\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0$\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\x1\0\0\0\xea\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0,\0H\0\x42\0_\0T\0R\0\x41\0\x43\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\x1\x18\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0.\0H\0\x42\0_\0S\0O\0U\0R\0\x43\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\x2/\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0,\0t\0o\0o\0l\0\x62\0\x61\0r\0H\0\x42\0_\0T\0O\0G\0G\0L\0\x45\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x3\x1\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x32\0t\0o\0o\0l\0\x62\0\x61\0r\0H\0\x42\0_\0\x45\0M\0U\0L\0\x41\0T\0I\0O\0N\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x2\xbb\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x30\0t\0o\0o\0l\0\x62\0\x61\0r\0H\0\x42\0_\0P\0R\0O\0\x44\0T\0Y\0P\0\x45\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x3\x16\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0<\0\x41\0\x42\0V\0_\0\x41\0\x44\0\x44\0_\0T\0\x45\0M\0P\0O\0R\0\x41\0R\0Y\0_\0\x41\0S\0S\0\x45\0R\0T\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x2\xe8\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x1e\0U\0V\0M\0_\0\x41\0W\0\x41\0R\0\x45\0_\0\x44\0\x45\0\x42\0U\0G\0\0\0\x3\f\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0 \0V\0\x43\0_\0\x41\0P\0P\0S\0_\0T\0O\0O\0L\0_\0\x42\0O\0X\x1\0\0\x3\x1\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x14\0L\0O\0G\0_\0V\0I\0\x45\0W\0\x45\0R\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0$\0\x41\0M\0S\0_\0\x43\0O\0N\0\x46\0I\0G\0_\0T\0O\0O\0L\0\x42\0\x41\0R\x1\0\0\x3%\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x3\0\0\0\x30\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0&\0H\0\x42\0_\0\x42\0\x41\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x1\xfb\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x32\0t\0o\0o\0l\0\x42\0\x61\0r\0\x46\0o\0r\0m\0\x61\0l\0V\0\x65\0r\0i\0\x66\0i\0\x63\0\x61\0t\0i\0o\0n\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x4\0\0\0>\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0R\0\x45\0W\0I\0N\0\x44\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0R\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0R\0\x45\0W\0I\0N\0\x44\0_\0U\0N\0\x44\0O\0_\0R\0\x45\0\x44\0O\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\x1\x5\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0@\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0R\0\x45\0V\0\x45\0R\0S\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\x1\x95\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x38\0H\0\x42\0_\0P\0O\0W\0\x45\0R\0_\0T\0R\0\x41\0\x43\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0:\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0V\0S\0I\0M\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0:\0N\0O\0V\0\x41\0S\0_\0\x45\0M\0U\0L\0\x41\0T\0I\0O\0N\0_\0\x44\0\x45\0\x42\0U\0G\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0\x1a\0\x43\0V\0G\0_\0\x43\0\x45\0R\0_\0P\0\x41\0N\0\x45\0L\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0)" +Verdi_1\qBaseWindowNextStateGroup\4\Layout="@ByteArray(\0\0\0\xff\0\0\0\x4\xfd\0\0\0\x2\0\0\0\x2\0\0\x3\x84\0\0\x1\x34\xfc\x1\0\0\0\x3\xfc\0\0\0\0\0\0\x1&\0\0\0\x89\0\xff\xff\xff\xfa\0\0\0\0\x1\0\0\0\x2\xfb\0\0\0.\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0I\0n\0s\0t\0.\0_\0T\0r\0\x65\0\x65\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\0V\0\xff\xff\xff\xfb\0\0\0.\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0\x44\0\x65\0\x63\0l\0.\0_\0T\0r\0\x65\0\x65\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\0V\0\xff\xff\xff\xfb\0\0\0\x30\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0S\0i\0g\0n\0\x61\0l\0_\0L\0i\0s\0t\0>\0\0\0\0\xe9\0\0\0\xc6\0\0\0k\0\0\0k\xfb\0\0\0\x36\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0M\0T\0\x42\0_\0S\0O\0U\0R\0\x43\0\x45\0_\0T\0\x41\0\x42\0_\0\x31\x1\0\0\x1,\0\0\x2X\0\0\0k\0\xff\xff\xff\0\0\0\x3\0\0\x3\x84\0\0\x1\x34\xfc\x1\0\0\0\x1\xfc\0\0\0\0\0\0\x3\x84\0\0\x1\x90\0\xff\xff\xff\xfa\0\0\0\x1\x1\0\0\0\x2\xfb\0\0\0(\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0M\0\x65\0s\0s\0\x61\0g\0\x65\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\xa0\0\xff\xff\xff\xfb\0\0\0(\0w\0i\0n\0\x64\0o\0w\0\x44\0o\0\x63\0k\0_\0O\0n\0\x65\0S\0\x65\0\x61\0r\0\x63\0h\x1\0\0\0\0\xff\xff\xff\xff\0\0\x1\x90\0\xff\xff\xff\0\0\x3\x84\0\0\0\0\0\0\0\x4\0\0\0\x4\0\0\0\b\0\0\0\b\xfc\0\0\0\x6\0\0\0\x2\0\0\0\x10\0\0\0.\0H\0\x42\0_\0I\0M\0P\0O\0R\0T\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0(\0H\0\x42\0_\0N\0\x45\0W\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0$\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0(\0H\0\x42\0_\0S\0I\0G\0N\0\x41\0L\0_\0P\0\x41\0N\0\x45\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0~\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0$\0H\0\x42\0_\0M\0U\0L\0T\0I\0_\0T\0\x41\0\x42\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0\xa2\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0*\0H\0\x42\0_\0\x45\0\x44\0I\0T\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0\xc6\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0$\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\x1\0\0\0\xea\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0,\0H\0\x42\0_\0T\0R\0\x41\0\x43\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\x1\x18\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0.\0H\0\x42\0_\0S\0O\0U\0R\0\x43\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\x2/\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0,\0t\0o\0o\0l\0\x62\0\x61\0r\0H\0\x42\0_\0T\0O\0G\0G\0L\0\x45\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x3\x1\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x32\0t\0o\0o\0l\0\x62\0\x61\0r\0H\0\x42\0_\0\x45\0M\0U\0L\0\x41\0T\0I\0O\0N\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x2\xbb\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x30\0t\0o\0o\0l\0\x62\0\x61\0r\0H\0\x42\0_\0P\0R\0O\0\x44\0T\0Y\0P\0\x45\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x3\x16\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0<\0\x41\0\x42\0V\0_\0\x41\0\x44\0\x44\0_\0T\0\x45\0M\0P\0O\0R\0\x41\0R\0Y\0_\0\x41\0S\0S\0\x45\0R\0T\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x2\xe8\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x1e\0U\0V\0M\0_\0\x41\0W\0\x41\0R\0\x45\0_\0\x44\0\x45\0\x42\0U\0G\0\0\0\x3\f\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0 \0V\0\x43\0_\0\x41\0P\0P\0S\0_\0T\0O\0O\0L\0_\0\x42\0O\0X\x1\0\0\x3\x1\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x14\0L\0O\0G\0_\0V\0I\0\x45\0W\0\x45\0R\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0$\0\x41\0M\0S\0_\0\x43\0O\0N\0\x46\0I\0G\0_\0T\0O\0O\0L\0\x42\0\x41\0R\x1\0\0\x3%\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x3\0\0\0\x30\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0&\0H\0\x42\0_\0\x42\0\x41\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x1\xfb\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x32\0t\0o\0o\0l\0\x42\0\x61\0r\0\x46\0o\0r\0m\0\x61\0l\0V\0\x65\0r\0i\0\x66\0i\0\x63\0\x61\0t\0i\0o\0n\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x4\0\0\0>\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0R\0\x45\0W\0I\0N\0\x44\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0R\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0R\0\x45\0W\0I\0N\0\x44\0_\0U\0N\0\x44\0O\0_\0R\0\x45\0\x44\0O\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\x1\x5\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0@\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0R\0\x45\0V\0\x45\0R\0S\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\x1\x95\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x38\0H\0\x42\0_\0P\0O\0W\0\x45\0R\0_\0T\0R\0\x41\0\x43\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0:\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0V\0S\0I\0M\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0:\0N\0O\0V\0\x41\0S\0_\0\x45\0M\0U\0L\0\x41\0T\0I\0O\0N\0_\0\x44\0\x45\0\x42\0U\0G\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0\x1a\0\x43\0V\0G\0_\0\x43\0\x45\0R\0_\0P\0\x41\0N\0\x45\0L\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0)" Verdi_1\qBaseWindowNextStateGroup\4\isNestedWindow=0 Verdi_1\qBaseWindowNextStateGroup\4\isVisible=true -Verdi_1\qBaseWindowNextStateGroup\4\size=@Size(1914 774) -Verdi_1\qBaseWindowNextStateGroup\4\geometry_x=-10 -Verdi_1\qBaseWindowNextStateGroup\4\geometry_y=20 -Verdi_1\qBaseWindowNextStateGroup\4\geometry_width=1914 -Verdi_1\qBaseWindowNextStateGroup\4\geometry_height=774 +Verdi_1\qBaseWindowNextStateGroup\4\size=@Size(900 700) +Verdi_1\qBaseWindowNextStateGroup\4\geometry_x=499 +Verdi_1\qBaseWindowNextStateGroup\4\geometry_y=82 +Verdi_1\qBaseWindowNextStateGroup\4\geometry_width=900 +Verdi_1\qBaseWindowNextStateGroup\4\geometry_height=700 Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\qBaseDockWidgetGroup\windowDock_nWave_2\isNestedWindow=1 Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\qBaseDockWidgetGroup\windowDock_nWave_2\isVisible=true Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\qBaseDockWidgetGroup\windowDock_nWave_2\qBaseWindowBeMax=0 @@ -244,229 +244,14 @@ Verdi_1\qBaseWindowNextStateGroup\5\qBaseDockWidgetGroup\windowDock_nWave_2\qBas Verdi_1\qBaseWindowNextStateGroup\5\qBaseDockWidgetGroup\windowDock_nWave_2\qBaseWindowBeFix=0 Verdi_1\qBaseWindowNextStateGroup\5\qBaseDockWidgetGroup\windowDock_nWave_2\dockIsFloating=false Verdi_1\qBaseWindowNextStateGroup\5\ProductVersion=201809 -Verdi_1\qBaseWindowNextStateGroup\5\Layout="@ByteArray(\0\0\0\xff\0\0\0\x5\xfd\0\0\0\x2\0\0\0\x2\0\0\az\0\0\x1Y\xfc\x1\0\0\0\x3\xfc\0\0\0\0\0\0\x2s\0\0\0\x89\0\xff\xff\xff\xfa\0\0\0\0\x1\0\0\0\x2\xfb\0\0\0.\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0I\0n\0s\0t\0.\0_\0T\0r\0\x65\0\x65\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\0V\0\xff\xff\xff\xfb\0\0\0.\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0\x44\0\x65\0\x63\0l\0.\0_\0T\0r\0\x65\0\x65\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\0V\0\xff\xff\xff\xfb\0\0\0\x30\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0S\0i\0g\0n\0\x61\0l\0_\0L\0i\0s\0t\0>\0\0\0\0\xe9\0\0\0\xc6\0\0\0k\0\0\0k\xfb\0\0\0\x36\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0M\0T\0\x42\0_\0S\0O\0U\0R\0\x43\0\x45\0_\0T\0\x41\0\x42\0_\0\x31\x1\0\0\x2y\0\0\x5\x1\0\0\0k\0\xff\xff\xff\0\0\0\x3\0\0\az\0\0\x1Y\xfc\x1\0\0\0\x1\xfc\0\0\0\0\0\0\az\0\0\x2,\0\xff\xff\xff\xfa\0\0\0\x2\x1\0\0\0\x3\xfb\0\0\0(\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0M\0\x65\0s\0s\0\x61\0g\0\x65\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\xa0\0\xff\xff\xff\xfb\0\0\0(\0w\0i\0n\0\x64\0o\0w\0\x44\0o\0\x63\0k\0_\0O\0n\0\x65\0S\0\x65\0\x61\0r\0\x63\0h\x1\0\0\0\0\xff\xff\xff\xff\0\0\x2,\0\xff\xff\xff\xfb\0\0\0$\0w\0i\0n\0\x64\0o\0w\0\x44\0o\0\x63\0k\0_\0n\0W\0\x61\0v\0\x65\0_\0\x32\x1\0\0\0\0\xff\xff\xff\xff\0\0\x1\xd5\0\xff\xff\xff\0\0\az\0\0\0\0\0\0\0\x4\0\0\0\x4\0\0\0\b\0\0\0\b\xfc\0\0\0\x6\0\0\0\x2\0\0\0\x10\0\0\0.\0H\0\x42\0_\0I\0M\0P\0O\0R\0T\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0(\0H\0\x42\0_\0N\0\x45\0W\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0$\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0(\0H\0\x42\0_\0S\0I\0G\0N\0\x41\0L\0_\0P\0\x41\0N\0\x45\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0~\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0$\0H\0\x42\0_\0M\0U\0L\0T\0I\0_\0T\0\x41\0\x42\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0\xa2\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0*\0H\0\x42\0_\0\x45\0\x44\0I\0T\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0\xc6\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0$\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\x1\0\0\0\xea\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0,\0H\0\x42\0_\0T\0R\0\x41\0\x43\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\x1\x18\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0.\0H\0\x42\0_\0S\0O\0U\0R\0\x43\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\x2/\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0,\0t\0o\0o\0l\0\x62\0\x61\0r\0H\0\x42\0_\0T\0O\0G\0G\0L\0\x45\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x3\x1\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x32\0t\0o\0o\0l\0\x62\0\x61\0r\0H\0\x42\0_\0\x45\0M\0U\0L\0\x41\0T\0I\0O\0N\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x2\xbb\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x30\0t\0o\0o\0l\0\x62\0\x61\0r\0H\0\x42\0_\0P\0R\0O\0\x44\0T\0Y\0P\0\x45\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x3\x16\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0<\0\x41\0\x42\0V\0_\0\x41\0\x44\0\x44\0_\0T\0\x45\0M\0P\0O\0R\0\x41\0R\0Y\0_\0\x41\0S\0S\0\x45\0R\0T\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x2\xe8\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x1e\0U\0V\0M\0_\0\x41\0W\0\x41\0R\0\x45\0_\0\x44\0\x45\0\x42\0U\0G\0\0\0\x3\f\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0 \0V\0\x43\0_\0\x41\0P\0P\0S\0_\0T\0O\0O\0L\0_\0\x42\0O\0X\x1\0\0\x3\x1\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x14\0L\0O\0G\0_\0V\0I\0\x45\0W\0\x45\0R\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0$\0\x41\0M\0S\0_\0\x43\0O\0N\0\x46\0I\0G\0_\0T\0O\0O\0L\0\x42\0\x41\0R\x1\0\0\x3%\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x3\0\0\0\x30\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0&\0H\0\x42\0_\0\x42\0\x41\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x1\xfb\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x32\0t\0o\0o\0l\0\x42\0\x61\0r\0\x46\0o\0r\0m\0\x61\0l\0V\0\x65\0r\0i\0\x66\0i\0\x63\0\x61\0t\0i\0o\0n\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x4\0\0\0>\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0R\0\x45\0W\0I\0N\0\x44\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0R\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0R\0\x45\0W\0I\0N\0\x44\0_\0U\0N\0\x44\0O\0_\0R\0\x45\0\x44\0O\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\x1\x5\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0@\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0R\0\x45\0V\0\x45\0R\0S\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\x1\x95\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x38\0H\0\x42\0_\0P\0O\0W\0\x45\0R\0_\0T\0R\0\x41\0\x43\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0:\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0V\0S\0I\0M\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0:\0N\0O\0V\0\x41\0S\0_\0\x45\0M\0U\0L\0\x41\0T\0I\0O\0N\0_\0\x44\0\x45\0\x42\0U\0G\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0\x1a\0\x43\0V\0G\0_\0\x43\0\x45\0R\0_\0P\0\x41\0N\0\x45\0L\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0)" +Verdi_1\qBaseWindowNextStateGroup\5\Layout="@ByteArray(\0\0\0\xff\0\0\0\x5\xfd\0\0\0\x2\0\0\0\x2\0\0\x3\x84\0\0\x1\x34\xfc\x1\0\0\0\x3\xfc\0\0\0\0\0\0\x1&\0\0\0\x89\0\xff\xff\xff\xfa\0\0\0\0\x1\0\0\0\x2\xfb\0\0\0.\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0I\0n\0s\0t\0.\0_\0T\0r\0\x65\0\x65\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\0V\0\xff\xff\xff\xfb\0\0\0.\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0\x44\0\x65\0\x63\0l\0.\0_\0T\0r\0\x65\0\x65\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\0V\0\xff\xff\xff\xfb\0\0\0\x30\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0S\0i\0g\0n\0\x61\0l\0_\0L\0i\0s\0t\0>\0\0\0\0\xe9\0\0\0\xc6\0\0\0k\0\0\0k\xfb\0\0\0\x36\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0M\0T\0\x42\0_\0S\0O\0U\0R\0\x43\0\x45\0_\0T\0\x41\0\x42\0_\0\x31\x1\0\0\x1,\0\0\x2X\0\0\0k\0\xff\xff\xff\0\0\0\x3\0\0\x3\x84\0\0\x1\x34\xfc\x1\0\0\0\x1\xfc\0\0\0\0\0\0\x3\x84\0\0\x1\xd5\0\xff\xff\xff\xfa\0\0\0\x2\x1\0\0\0\x3\xfb\0\0\0(\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0M\0\x65\0s\0s\0\x61\0g\0\x65\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\xa0\0\xff\xff\xff\xfb\0\0\0(\0w\0i\0n\0\x64\0o\0w\0\x44\0o\0\x63\0k\0_\0O\0n\0\x65\0S\0\x65\0\x61\0r\0\x63\0h\x1\0\0\0\0\xff\xff\xff\xff\0\0\x1\x90\0\xff\xff\xff\xfb\0\0\0$\0w\0i\0n\0\x64\0o\0w\0\x44\0o\0\x63\0k\0_\0n\0W\0\x61\0v\0\x65\0_\0\x32\x1\0\0\0\0\xff\xff\xff\xff\0\0\x1\xd5\0\xff\xff\xff\0\0\x3\x84\0\0\0\0\0\0\0\x4\0\0\0\x4\0\0\0\b\0\0\0\b\xfc\0\0\0\x6\0\0\0\x2\0\0\0\x10\0\0\0.\0H\0\x42\0_\0I\0M\0P\0O\0R\0T\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0(\0H\0\x42\0_\0N\0\x45\0W\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0$\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0(\0H\0\x42\0_\0S\0I\0G\0N\0\x41\0L\0_\0P\0\x41\0N\0\x45\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0~\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0$\0H\0\x42\0_\0M\0U\0L\0T\0I\0_\0T\0\x41\0\x42\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0\xa2\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0*\0H\0\x42\0_\0\x45\0\x44\0I\0T\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0\xc6\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0$\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\x1\0\0\0\xea\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0,\0H\0\x42\0_\0T\0R\0\x41\0\x43\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\x1\x18\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0.\0H\0\x42\0_\0S\0O\0U\0R\0\x43\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\x2/\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0,\0t\0o\0o\0l\0\x62\0\x61\0r\0H\0\x42\0_\0T\0O\0G\0G\0L\0\x45\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x3\x1\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x32\0t\0o\0o\0l\0\x62\0\x61\0r\0H\0\x42\0_\0\x45\0M\0U\0L\0\x41\0T\0I\0O\0N\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x2\xbb\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x30\0t\0o\0o\0l\0\x62\0\x61\0r\0H\0\x42\0_\0P\0R\0O\0\x44\0T\0Y\0P\0\x45\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x3\x16\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0<\0\x41\0\x42\0V\0_\0\x41\0\x44\0\x44\0_\0T\0\x45\0M\0P\0O\0R\0\x41\0R\0Y\0_\0\x41\0S\0S\0\x45\0R\0T\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x2\xe8\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x1e\0U\0V\0M\0_\0\x41\0W\0\x41\0R\0\x45\0_\0\x44\0\x45\0\x42\0U\0G\0\0\0\x3\f\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0 \0V\0\x43\0_\0\x41\0P\0P\0S\0_\0T\0O\0O\0L\0_\0\x42\0O\0X\x1\0\0\x3\x1\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x14\0L\0O\0G\0_\0V\0I\0\x45\0W\0\x45\0R\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0$\0\x41\0M\0S\0_\0\x43\0O\0N\0\x46\0I\0G\0_\0T\0O\0O\0L\0\x42\0\x41\0R\x1\0\0\x3%\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x3\0\0\0\x30\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0&\0H\0\x42\0_\0\x42\0\x41\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x1\xfb\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x32\0t\0o\0o\0l\0\x42\0\x61\0r\0\x46\0o\0r\0m\0\x61\0l\0V\0\x65\0r\0i\0\x66\0i\0\x63\0\x61\0t\0i\0o\0n\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x4\0\0\0>\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0R\0\x45\0W\0I\0N\0\x44\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0R\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0R\0\x45\0W\0I\0N\0\x44\0_\0U\0N\0\x44\0O\0_\0R\0\x45\0\x44\0O\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\x1\x5\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0@\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0R\0\x45\0V\0\x45\0R\0S\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\x1\x95\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x38\0H\0\x42\0_\0P\0O\0W\0\x45\0R\0_\0T\0R\0\x41\0\x43\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0:\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0V\0S\0I\0M\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0:\0N\0O\0V\0\x41\0S\0_\0\x45\0M\0U\0L\0\x41\0T\0I\0O\0N\0_\0\x44\0\x45\0\x42\0U\0G\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0\x1a\0\x43\0V\0G\0_\0\x43\0\x45\0R\0_\0P\0\x41\0N\0\x45\0L\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0)" Verdi_1\qBaseWindowNextStateGroup\5\isNestedWindow=0 Verdi_1\qBaseWindowNextStateGroup\5\isVisible=true -Verdi_1\qBaseWindowNextStateGroup\5\size=@Size(1914 774) -Verdi_1\qBaseWindowNextStateGroup\5\geometry_x=-10 -Verdi_1\qBaseWindowNextStateGroup\5\geometry_y=20 -Verdi_1\qBaseWindowNextStateGroup\5\geometry_width=1914 -Verdi_1\qBaseWindowNextStateGroup\5\geometry_height=774 -Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\qBaseDockWidgetGroup\windowDock_nWave_2\SELECTION_MESSAGE_TOOLBAR=false -Verdi_1\qBaseWindowNextStateGroup\6\qDockerWindow_restoreNewChildState=true -Verdi_1\qBaseWindowNextStateGroup\6\qBaseDockWidgetGroup\widgetDock_%3CInst._Tree%3E\isVisible=true -Verdi_1\qBaseWindowNextStateGroup\6\qBaseDockWidgetGroup\widgetDock_%3CInst._Tree%3E\qBaseWindowBeMax=0 -Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\qBaseDockWidgetGroup\windowDock_InteractiveConsole_3\isNestedWindow=1 -Verdi_1\qBaseWindowNextStateGroup\6\qBaseDockWidgetGroup\widgetDock_%3CInst._Tree%3E\qBaseWindowBeFix=0 -Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\qBaseDockWidgetGroup\windowDock_InteractiveConsole_3\isVisible=true -Verdi_1\qBaseWindowNextStateGroup\6\qBaseDockWidgetGroup\widgetDock_%3CInst._Tree%3E\dockIsFloating=false -Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\qBaseDockWidgetGroup\windowDock_InteractiveConsole_3\qBaseWindowBeMax=0 -Verdi_1\qBaseWindowNextStateGroup\6\qBaseDockWidgetGroup\widgetDock_%3CMessage%3E\isVisible=true -Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\qBaseDockWidgetGroup\windowDock_InteractiveConsole_3\qBaseWindowBeFix=0 -Verdi_1\qBaseWindowNextStateGroup\6\qBaseDockWidgetGroup\widgetDock_%3CMessage%3E\qBaseWindowBeMax=0 -Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\qBaseDockWidgetGroup\windowDock_InteractiveConsole_3\dockIsFloating=false -Verdi_1\qBaseWindowNextStateGroup\6\qBaseDockWidgetGroup\widgetDock_%3CMessage%3E\qBaseWindowBeFix=0 -Verdi_1\qBaseWindowNextStateGroup\6\qBaseDockWidgetGroup\widgetDock_%3CMessage%3E\dockIsFloating=false -Verdi_1\qBaseWindowNextStateGroup\6\qBaseDockWidgetGroup\widgetDock_MTB_SOURCE_TAB_1\isVisible=true -Verdi_1\qBaseWindowNextStateGroup\6\qBaseDockWidgetGroup\widgetDock_MTB_SOURCE_TAB_1\qBaseWindowBeMax=0 -Verdi_1\qBaseWindowNextStateGroup\6\qBaseDockWidgetGroup\widgetDock_MTB_SOURCE_TAB_1\qBaseWindowBeFix=0 -Verdi_1\qBaseWindowNextStateGroup\6\qBaseDockWidgetGroup\widgetDock_MTB_SOURCE_TAB_1\dockIsFloating=false -Verdi_1\qBaseWindowNextStateGroup\6\qBaseDockWidgetGroup\widgetDock_%3CSignal_List%3E\isVisible=false -Verdi_1\qBaseWindowNextStateGroup\6\qBaseDockWidgetGroup\widgetDock_%3CDecl._Tree%3E\isVisible=true -Verdi_1\qBaseWindowNextStateGroup\6\qBaseDockWidgetGroup\widgetDock_%3CDecl._Tree%3E\qBaseWindowBeMax=0 -Verdi_1\qBaseWindowNextStateGroup\6\qBaseDockWidgetGroup\widgetDock_%3CDecl._Tree%3E\qBaseWindowBeFix=0 -Verdi_1\qBaseWindowNextStateGroup\6\qBaseDockWidgetGroup\widgetDock_%3CDecl._Tree%3E\dockIsFloating=false -Verdi_1\qBaseWindowNextStateGroup\6\qBaseDockWidgetGroup\windowDock_OneSearch\isNestedWindow=1 -Verdi_1\qBaseWindowNextStateGroup\6\qBaseDockWidgetGroup\windowDock_OneSearch\isVisible=true -Verdi_1\qBaseWindowNextStateGroup\6\qBaseDockWidgetGroup\windowDock_OneSearch\qBaseWindowBeMax=0 -Verdi_1\qBaseWindowNextStateGroup\6\qBaseDockWidgetGroup\windowDock_OneSearch\qBaseWindowBeFix=0 -Verdi_1\qBaseWindowNextStateGroup\6\qBaseDockWidgetGroup\windowDock_OneSearch\dockIsFloating=false -Verdi_1\qBaseWindowNextStateGroup\6\qBaseDockWidgetGroup\windowDock_nWave_2\isNestedWindow=1 -Verdi_1\qBaseWindowNextStateGroup\6\qBaseDockWidgetGroup\windowDock_nWave_2\isVisible=true -Verdi_1\qBaseWindowNextStateGroup\6\qBaseDockWidgetGroup\windowDock_nWave_2\SELECTION_MESSAGE_TOOLBAR=false -Verdi_1\qBaseWindowNextStateGroup\6\qBaseDockWidgetGroup\windowDock_nWave_2\qBaseWindowBeMax=0 -Verdi_1\qBaseWindowNextStateGroup\6\qBaseDockWidgetGroup\windowDock_nWave_2\qBaseWindowBeFix=0 -Verdi_1\qBaseWindowNextStateGroup\6\qBaseDockWidgetGroup\windowDock_nWave_2\dockIsFloating=false -Verdi_1\qBaseWindowNextStateGroup\6\qBaseDockWidgetGroup\windowDock_InteractiveConsole_3\isNestedWindow=1 -Verdi_1\qBaseWindowNextStateGroup\6\qBaseDockWidgetGroup\windowDock_InteractiveConsole_3\isVisible=true -Verdi_1\qBaseWindowNextStateGroup\6\qBaseDockWidgetGroup\windowDock_InteractiveConsole_3\qBaseWindowBeMax=0 -Verdi_1\qBaseWindowNextStateGroup\6\qBaseDockWidgetGroup\windowDock_InteractiveConsole_3\qBaseWindowBeFix=0 -Verdi_1\qBaseWindowNextStateGroup\6\qBaseDockWidgetGroup\windowDock_InteractiveConsole_3\dockIsFloating=false -Verdi_1\qBaseWindowNextStateGroup\6\ProductVersion=201809 -Verdi_1\qBaseWindowNextStateGroup\6\Layout="@ByteArray(\0\0\0\xff\0\0\0\x6\xfd\0\0\0\x2\0\0\0\x2\0\0\az\0\0\0r\xfc\x1\0\0\0\x3\xfc\0\0\0\0\0\0\x2s\0\0\0\x89\0\xff\xff\xff\xfa\0\0\0\0\x1\0\0\0\x2\xfb\0\0\0.\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0I\0n\0s\0t\0.\0_\0T\0r\0\x65\0\x65\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\0V\0\xff\xff\xff\xfb\0\0\0.\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0\x44\0\x65\0\x63\0l\0.\0_\0T\0r\0\x65\0\x65\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\0V\0\xff\xff\xff\xfb\0\0\0\x30\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0S\0i\0g\0n\0\x61\0l\0_\0L\0i\0s\0t\0>\0\0\0\0\xe9\0\0\0\xc6\0\0\0k\0\0\0k\xfb\0\0\0\x36\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0M\0T\0\x42\0_\0S\0O\0U\0R\0\x43\0\x45\0_\0T\0\x41\0\x42\0_\0\x31\x1\0\0\x2y\0\0\x5\x1\0\0\0k\0\xff\xff\xff\0\0\0\x3\0\0\az\0\0\x2@\xfc\x1\0\0\0\x1\xfc\0\0\0\0\0\0\az\0\0\x2,\0\xff\xff\xff\xfa\0\0\0\x3\x1\0\0\0\x4\xfb\0\0\0(\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0M\0\x65\0s\0s\0\x61\0g\0\x65\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\xa0\0\xff\xff\xff\xfb\0\0\0(\0w\0i\0n\0\x64\0o\0w\0\x44\0o\0\x63\0k\0_\0O\0n\0\x65\0S\0\x65\0\x61\0r\0\x63\0h\x1\0\0\0\0\xff\xff\xff\xff\0\0\x2,\0\xff\xff\xff\xfb\0\0\0$\0w\0i\0n\0\x64\0o\0w\0\x44\0o\0\x63\0k\0_\0n\0W\0\x61\0v\0\x65\0_\0\x32\x1\0\0\0\0\xff\xff\xff\xff\0\0\x1-\0\xff\xff\xff\xfb\0\0\0>\0w\0i\0n\0\x64\0o\0w\0\x44\0o\0\x63\0k\0_\0I\0n\0t\0\x65\0r\0\x61\0\x63\0t\0i\0v\0\x65\0\x43\0o\0n\0s\0o\0l\0\x65\0_\0\x33\x1\0\0\0\0\xff\xff\xff\xff\0\0\x1W\0\xff\xff\xff\0\0\az\0\0\0\0\0\0\0\x4\0\0\0\x4\0\0\0\b\0\0\0\b\xfc\0\0\0\x6\0\0\0\x2\0\0\0\x10\0\0\0.\0H\0\x42\0_\0I\0M\0P\0O\0R\0T\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0(\0H\0\x42\0_\0N\0\x45\0W\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0$\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0(\0H\0\x42\0_\0S\0I\0G\0N\0\x41\0L\0_\0P\0\x41\0N\0\x45\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0~\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0$\0H\0\x42\0_\0M\0U\0L\0T\0I\0_\0T\0\x41\0\x42\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0\xa2\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0*\0H\0\x42\0_\0\x45\0\x44\0I\0T\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0\xc6\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0$\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\x1\0\0\0\xea\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0,\0H\0\x42\0_\0T\0R\0\x41\0\x43\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\x1\x18\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0.\0H\0\x42\0_\0S\0O\0U\0R\0\x43\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\x2/\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0,\0t\0o\0o\0l\0\x62\0\x61\0r\0H\0\x42\0_\0T\0O\0G\0G\0L\0\x45\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x3\x1\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x32\0t\0o\0o\0l\0\x62\0\x61\0r\0H\0\x42\0_\0\x45\0M\0U\0L\0\x41\0T\0I\0O\0N\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x2\xbb\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x30\0t\0o\0o\0l\0\x62\0\x61\0r\0H\0\x42\0_\0P\0R\0O\0\x44\0T\0Y\0P\0\x45\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x3\x16\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0<\0\x41\0\x42\0V\0_\0\x41\0\x44\0\x44\0_\0T\0\x45\0M\0P\0O\0R\0\x41\0R\0Y\0_\0\x41\0S\0S\0\x45\0R\0T\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x2\xe8\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x1e\0U\0V\0M\0_\0\x41\0W\0\x41\0R\0\x45\0_\0\x44\0\x45\0\x42\0U\0G\0\0\0\x3\f\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0 \0V\0\x43\0_\0\x41\0P\0P\0S\0_\0T\0O\0O\0L\0_\0\x42\0O\0X\x1\0\0\x3\x1\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x14\0L\0O\0G\0_\0V\0I\0\x45\0W\0\x45\0R\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0$\0\x41\0M\0S\0_\0\x43\0O\0N\0\x46\0I\0G\0_\0T\0O\0O\0L\0\x42\0\x41\0R\x1\0\0\x3%\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x3\0\0\0\x30\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0&\0H\0\x42\0_\0\x42\0\x41\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x1\xfb\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x32\0t\0o\0o\0l\0\x42\0\x61\0r\0\x46\0o\0r\0m\0\x61\0l\0V\0\x65\0r\0i\0\x66\0i\0\x63\0\x61\0t\0i\0o\0n\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x4\0\0\0>\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0R\0\x45\0W\0I\0N\0\x44\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0R\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0R\0\x45\0W\0I\0N\0\x44\0_\0U\0N\0\x44\0O\0_\0R\0\x45\0\x44\0O\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\x1\x5\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0@\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0R\0\x45\0V\0\x45\0R\0S\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\x1\x95\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x38\0H\0\x42\0_\0P\0O\0W\0\x45\0R\0_\0T\0R\0\x41\0\x43\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0:\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0V\0S\0I\0M\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0:\0N\0O\0V\0\x41\0S\0_\0\x45\0M\0U\0L\0\x41\0T\0I\0O\0N\0_\0\x44\0\x45\0\x42\0U\0G\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0\x1a\0\x43\0V\0G\0_\0\x43\0\x45\0R\0_\0P\0\x41\0N\0\x45\0L\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0)" -Verdi_1\qBaseWindowNextStateGroup\6\isNestedWindow=0 -Verdi_1\qBaseWindowNextStateGroup\6\isVisible=true -Verdi_1\qBaseWindowNextStateGroup\6\size=@Size(1914 774) -Verdi_1\qBaseWindowNextStateGroup\6\geometry_x=-10 -Verdi_1\qBaseWindowNextStateGroup\6\geometry_y=20 -Verdi_1\qBaseWindowNextStateGroup\6\geometry_width=1914 -Verdi_1\qBaseWindowNextStateGroup\6\geometry_height=774 -Verdi_1\qBaseWindowNextStateGroup\7\qDockerWindow_restoreNewChildState=true -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\widgetDock_%3CInst._Tree%3E\isVisible=true -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\widgetDock_%3CInst._Tree%3E\qBaseWindowBeMax=0 -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\widgetDock_%3CInst._Tree%3E\qBaseWindowBeFix=0 -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\widgetDock_%3CInst._Tree%3E\dockIsFloating=false -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\widgetDock_%3CMessage%3E\isVisible=true -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\widgetDock_%3CMessage%3E\qBaseWindowBeMax=0 -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\widgetDock_%3CMessage%3E\qBaseWindowBeFix=0 -Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\qBaseDockWidgetGroup\widgetDock_%3CLocal%3E\isVisible=true -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\widgetDock_%3CMessage%3E\dockIsFloating=false -Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\qBaseDockWidgetGroup\widgetDock_%3CLocal%3E\qBaseWindowBeMax=0 -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\widgetDock_MTB_SOURCE_TAB_1\isVisible=true -Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\qBaseDockWidgetGroup\widgetDock_%3CLocal%3E\qBaseWindowBeFix=0 -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\widgetDock_MTB_SOURCE_TAB_1\qBaseWindowBeMax=0 -Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\qBaseDockWidgetGroup\widgetDock_%3CLocal%3E\dockIsFloating=false -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\widgetDock_MTB_SOURCE_TAB_1\qBaseWindowBeFix=0 -Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\qBaseDockWidgetGroup\widgetDock_%3CWatch%3E\isVisible=true -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\widgetDock_MTB_SOURCE_TAB_1\dockIsFloating=false -Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\qBaseDockWidgetGroup\widgetDock_%3CWatch%3E\qBaseWindowBeMax=0 -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\widgetDock_%3CSignal_List%3E\isVisible=false -Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\qBaseDockWidgetGroup\widgetDock_%3CWatch%3E\qBaseWindowBeFix=0 -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\widgetDock_%3CDecl._Tree%3E\isVisible=true -Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\qBaseDockWidgetGroup\widgetDock_%3CWatch%3E\dockIsFloating=false -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\widgetDock_%3CDecl._Tree%3E\qBaseWindowBeMax=0 -Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\qBaseDockWidgetGroup\widgetDock_%3CStack%3E\isVisible=true -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\widgetDock_%3CDecl._Tree%3E\qBaseWindowBeFix=0 -Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\qBaseDockWidgetGroup\widgetDock_%3CStack%3E\qBaseWindowBeMax=0 -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\widgetDock_%3CDecl._Tree%3E\dockIsFloating=false -Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\qBaseDockWidgetGroup\widgetDock_%3CStack%3E\qBaseWindowBeFix=0 -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\windowDock_OneSearch\isNestedWindow=1 -Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\qBaseDockWidgetGroup\widgetDock_%3CStack%3E\dockIsFloating=false -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\windowDock_OneSearch\isVisible=true -Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\qBaseDockWidgetGroup\widgetDock_%3CClass._Tree%3E\isVisible=true -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\windowDock_OneSearch\qBaseWindowBeMax=0 -Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\qBaseDockWidgetGroup\widgetDock_%3CClass._Tree%3E\qBaseWindowBeMax=0 -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\windowDock_OneSearch\qBaseWindowBeFix=0 -Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\qBaseDockWidgetGroup\widgetDock_%3CClass._Tree%3E\qBaseWindowBeFix=0 -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\windowDock_OneSearch\dockIsFloating=false -Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\qBaseDockWidgetGroup\widgetDock_%3CClass._Tree%3E\dockIsFloating=false -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\windowDock_nWave_2\isNestedWindow=1 -Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\qBaseDockWidgetGroup\widgetDock_%3CObject._Tree%3E\isVisible=true -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\windowDock_nWave_2\isVisible=true -Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\qBaseDockWidgetGroup\widgetDock_%3CObject._Tree%3E\qBaseWindowBeMax=0 -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\windowDock_nWave_2\SELECTION_MESSAGE_TOOLBAR=false -Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\qBaseDockWidgetGroup\widgetDock_%3CObject._Tree%3E\qBaseWindowBeFix=0 -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\windowDock_nWave_2\qBaseWindowBeMax=0 -Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\qBaseDockWidgetGroup\widgetDock_%3CObject._Tree%3E\dockIsFloating=false -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\windowDock_nWave_2\qBaseWindowBeFix=0 -Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\qBaseDockWidgetGroup\widgetDock_%3CMember%3E\isVisible=true -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\windowDock_nWave_2\dockIsFloating=false -Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\qBaseDockWidgetGroup\widgetDock_%3CMember%3E\qBaseWindowBeMax=0 -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\windowDock_InteractiveConsole_3\isNestedWindow=1 -Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\qBaseDockWidgetGroup\widgetDock_%3CMember%3E\qBaseWindowBeFix=0 -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\windowDock_InteractiveConsole_3\isVisible=true -Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\qBaseDockWidgetGroup\widgetDock_%3CMember%3E\dockIsFloating=false -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\windowDock_InteractiveConsole_3\qBaseWindowBeMax=0 -Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\qBaseDockWidgetGroup\windowDock_nWave\isNestedWindow=1 -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\windowDock_InteractiveConsole_3\qBaseWindowBeFix=0 -Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\qBaseDockWidgetGroup\windowDock_nWave\isVisible=false -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\windowDock_InteractiveConsole_3\dockIsFloating=false -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\widgetDock_%3CLocal%3E\isVisible=true -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\widgetDock_%3CLocal%3E\qBaseWindowBeMax=0 -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\widgetDock_%3CLocal%3E\qBaseWindowBeFix=0 -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\widgetDock_%3CLocal%3E\dockIsFloating=false -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\widgetDock_%3CWatch%3E\isVisible=true -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\widgetDock_%3CWatch%3E\qBaseWindowBeMax=0 -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\widgetDock_%3CWatch%3E\qBaseWindowBeFix=0 -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\widgetDock_%3CWatch%3E\dockIsFloating=false -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\widgetDock_%3CStack%3E\isVisible=true -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\widgetDock_%3CStack%3E\qBaseWindowBeMax=0 -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\widgetDock_%3CStack%3E\qBaseWindowBeFix=0 -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\widgetDock_%3CStack%3E\dockIsFloating=false -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\widgetDock_%3CClass._Tree%3E\isVisible=true -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\widgetDock_%3CClass._Tree%3E\qBaseWindowBeMax=0 -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\widgetDock_%3CClass._Tree%3E\qBaseWindowBeFix=0 -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\widgetDock_%3CClass._Tree%3E\dockIsFloating=false -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\widgetDock_%3CObject._Tree%3E\isVisible=true -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\widgetDock_%3CObject._Tree%3E\qBaseWindowBeMax=0 -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\widgetDock_%3CObject._Tree%3E\qBaseWindowBeFix=0 -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\widgetDock_%3CObject._Tree%3E\dockIsFloating=false -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\widgetDock_%3CMember%3E\isVisible=true -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\widgetDock_%3CMember%3E\qBaseWindowBeMax=0 -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\widgetDock_%3CMember%3E\qBaseWindowBeFix=0 -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\widgetDock_%3CMember%3E\dockIsFloating=false -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\windowDock_nWave\isNestedWindow=1 -Verdi_1\qBaseWindowNextStateGroup\7\qBaseDockWidgetGroup\windowDock_nWave\isVisible=false -Verdi_1\qBaseWindowNextStateGroup\7\ProductVersion=201809 -Verdi_1\qBaseWindowNextStateGroup\7\Layout="@ByteArray(\0\0\0\xff\0\0\0\a\xfd\0\0\0\x2\0\0\0\x2\0\0\az\0\0\0\x88\xfc\x1\0\0\0\x3\xfc\0\0\0\0\0\0\x2\x30\0\0\x1\x19\0\xff\xff\xff\xfa\0\0\0\0\x1\0\0\0\x5\xfb\0\0\0.\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0I\0n\0s\0t\0.\0_\0T\0r\0\x65\0\x65\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\0V\0\xff\xff\xff\xfb\0\0\0.\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0\x44\0\x65\0\x63\0l\0.\0_\0T\0r\0\x65\0\x65\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\0V\0\xff\xff\xff\xfb\0\0\0$\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0S\0t\0\x61\0\x63\0k\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\xda\0\xff\xff\xff\xfb\0\0\0\x30\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0\x43\0l\0\x61\0s\0s\0.\0_\0T\0r\0\x65\0\x65\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\xd8\0\xff\xff\xff\xfb\0\0\0\x32\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0O\0\x62\0j\0\x65\0\x63\0t\0.\0_\0T\0r\0\x65\0\x65\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\x1\x19\0\xff\xff\xff\xfc\0\0\x2\x36\0\0\0\xc6\0\0\0\xa9\0\xff\xff\xff\xfa\0\0\0\x2\x1\0\0\0\x3\xfb\0\0\0\x30\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0S\0i\0g\0n\0\x61\0l\0_\0L\0i\0s\0t\0>\0\0\0\0\0\xff\xff\xff\xff\0\0\0k\0\0\0k\xfb\0\0\0$\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0L\0o\0\x63\0\x61\0l\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\xa9\0\xff\xff\xff\xfb\0\0\0&\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0M\0\x65\0m\0\x62\0\x65\0r\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\x8f\0\xff\xff\xff\xfb\0\0\0\x36\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0M\0T\0\x42\0_\0S\0O\0U\0R\0\x43\0\x45\0_\0T\0\x41\0\x42\0_\0\x31\x1\0\0\x3\x2\0\0\x4x\0\0\0k\0\xff\xff\xff\0\0\0\x3\0\0\az\0\0\x1\xf4\xfc\x1\0\0\0\x2\xfc\0\0\0\0\0\0\x4\xf6\0\0\x2,\0\xff\xff\xff\xfa\0\0\0\x3\x1\0\0\0\x5\xfb\0\0\0(\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0M\0\x65\0s\0s\0\x61\0g\0\x65\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\xa0\0\xff\xff\xff\xfb\0\0\0(\0w\0i\0n\0\x64\0o\0w\0\x44\0o\0\x63\0k\0_\0O\0n\0\x65\0S\0\x65\0\x61\0r\0\x63\0h\x1\0\0\0\0\xff\xff\xff\xff\0\0\x2,\0\xff\xff\xff\xfb\0\0\0$\0w\0i\0n\0\x64\0o\0w\0\x44\0o\0\x63\0k\0_\0n\0W\0\x61\0v\0\x65\0_\0\x32\x1\0\0\0\0\xff\xff\xff\xff\0\0\x1-\0\xff\xff\xff\xfb\0\0\0>\0w\0i\0n\0\x64\0o\0w\0\x44\0o\0\x63\0k\0_\0I\0n\0t\0\x65\0r\0\x61\0\x63\0t\0i\0v\0\x65\0\x43\0o\0n\0s\0o\0l\0\x65\0_\0\x33\x1\0\0\0\0\xff\xff\xff\xff\0\0\x1W\0\xff\xff\xff\xfb\0\0\0 \0w\0i\0n\0\x64\0o\0w\0\x44\0o\0\x63\0k\0_\0n\0W\0\x61\0v\0\x65\0\0\0\0\0\xff\xff\xff\xff\0\0\x1\xd5\0\xff\xff\xff\xfb\0\0\0$\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0W\0\x61\0t\0\x63\0h\0>\x1\0\0\x4\xfc\0\0\x2~\0\0\0\xa9\0\xff\xff\xff\0\0\az\0\0\0\0\0\0\0\x4\0\0\0\x4\0\0\0\b\0\0\0\b\xfc\0\0\0\x6\0\0\0\x2\0\0\0\x10\0\0\0.\0H\0\x42\0_\0I\0M\0P\0O\0R\0T\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0(\0H\0\x42\0_\0N\0\x45\0W\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0$\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0(\0H\0\x42\0_\0S\0I\0G\0N\0\x41\0L\0_\0P\0\x41\0N\0\x45\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0~\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0$\0H\0\x42\0_\0M\0U\0L\0T\0I\0_\0T\0\x41\0\x42\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0\xa2\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0*\0H\0\x42\0_\0\x45\0\x44\0I\0T\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0\xc6\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0$\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\x1\0\0\0\xea\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0,\0H\0\x42\0_\0T\0R\0\x41\0\x43\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\x1\x18\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0.\0H\0\x42\0_\0S\0O\0U\0R\0\x43\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\x2/\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0,\0t\0o\0o\0l\0\x62\0\x61\0r\0H\0\x42\0_\0T\0O\0G\0G\0L\0\x45\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x3\x1\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x32\0t\0o\0o\0l\0\x62\0\x61\0r\0H\0\x42\0_\0\x45\0M\0U\0L\0\x41\0T\0I\0O\0N\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x2\xbb\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x30\0t\0o\0o\0l\0\x62\0\x61\0r\0H\0\x42\0_\0P\0R\0O\0\x44\0T\0Y\0P\0\x45\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x3\x16\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0<\0\x41\0\x42\0V\0_\0\x41\0\x44\0\x44\0_\0T\0\x45\0M\0P\0O\0R\0\x41\0R\0Y\0_\0\x41\0S\0S\0\x45\0R\0T\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x2\xe8\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x1e\0U\0V\0M\0_\0\x41\0W\0\x41\0R\0\x45\0_\0\x44\0\x45\0\x42\0U\0G\0\0\0\x3\f\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0 \0V\0\x43\0_\0\x41\0P\0P\0S\0_\0T\0O\0O\0L\0_\0\x42\0O\0X\x1\0\0\x3\x1\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x14\0L\0O\0G\0_\0V\0I\0\x45\0W\0\x45\0R\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0$\0\x41\0M\0S\0_\0\x43\0O\0N\0\x46\0I\0G\0_\0T\0O\0O\0L\0\x42\0\x41\0R\x1\0\0\x3%\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x3\0\0\0\x30\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0&\0H\0\x42\0_\0\x42\0\x41\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x1\xfb\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x32\0t\0o\0o\0l\0\x42\0\x61\0r\0\x46\0o\0r\0m\0\x61\0l\0V\0\x65\0r\0i\0\x66\0i\0\x63\0\x61\0t\0i\0o\0n\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x4\0\0\0>\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0R\0\x45\0W\0I\0N\0\x44\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0R\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0R\0\x45\0W\0I\0N\0\x44\0_\0U\0N\0\x44\0O\0_\0R\0\x45\0\x44\0O\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\x1\0\0\x1\x5\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0@\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0R\0\x45\0V\0\x45\0R\0S\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\x1\0\0\x1\x95\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x38\0H\0\x42\0_\0P\0O\0W\0\x45\0R\0_\0T\0R\0\x41\0\x43\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0:\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0V\0S\0I\0M\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0:\0N\0O\0V\0\x41\0S\0_\0\x45\0M\0U\0L\0\x41\0T\0I\0O\0N\0_\0\x44\0\x45\0\x42\0U\0G\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0\x1a\0\x43\0V\0G\0_\0\x43\0\x45\0R\0_\0P\0\x41\0N\0\x45\0L\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0)" -Verdi_1\qBaseWindowNextStateGroup\7\isNestedWindow=0 -Verdi_1\qBaseWindowNextStateGroup\7\isVisible=true -Verdi_1\qBaseWindowNextStateGroup\7\size=@Size(1914 774) -Verdi_1\qBaseWindowNextStateGroup\7\geometry_x=-10 -Verdi_1\qBaseWindowNextStateGroup\7\geometry_y=20 -Verdi_1\qBaseWindowNextStateGroup\7\geometry_width=1914 -Verdi_1\qBaseWindowNextStateGroup\7\geometry_height=774 -Verdi_1\qBaseWindowNextStateGroup\8\qDockerWindow_restoreNewChildState=true -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\widgetDock_%3CInst._Tree%3E\isVisible=true -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\widgetDock_%3CInst._Tree%3E\qBaseWindowBeMax=0 -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\widgetDock_%3CInst._Tree%3E\qBaseWindowBeFix=0 -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\widgetDock_%3CInst._Tree%3E\dockIsFloating=false -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\widgetDock_%3CMessage%3E\isVisible=true -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\widgetDock_%3CMessage%3E\qBaseWindowBeMax=0 -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\widgetDock_%3CMessage%3E\qBaseWindowBeFix=0 -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\widgetDock_%3CMessage%3E\dockIsFloating=false -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\widgetDock_MTB_SOURCE_TAB_1\isVisible=true -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\widgetDock_MTB_SOURCE_TAB_1\qBaseWindowBeMax=0 -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\widgetDock_MTB_SOURCE_TAB_1\qBaseWindowBeFix=0 -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\widgetDock_MTB_SOURCE_TAB_1\dockIsFloating=false -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\widgetDock_%3CSignal_List%3E\isVisible=false -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\widgetDock_%3CDecl._Tree%3E\isVisible=true -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\widgetDock_%3CDecl._Tree%3E\qBaseWindowBeMax=0 -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\widgetDock_%3CDecl._Tree%3E\qBaseWindowBeFix=0 -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\widgetDock_%3CDecl._Tree%3E\dockIsFloating=false -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\windowDock_OneSearch\isNestedWindow=1 -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\windowDock_OneSearch\isVisible=true -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\windowDock_OneSearch\qBaseWindowBeMax=0 -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\windowDock_OneSearch\qBaseWindowBeFix=0 -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\windowDock_OneSearch\dockIsFloating=false -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\windowDock_nWave_2\isNestedWindow=1 -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\windowDock_nWave_2\isVisible=true -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\windowDock_nWave_2\SELECTION_MESSAGE_TOOLBAR=false -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\windowDock_nWave_2\qBaseWindowBeMax=0 -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\windowDock_nWave_2\qBaseWindowBeFix=0 -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\windowDock_nWave_2\dockIsFloating=false -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\windowDock_InteractiveConsole_3\isNestedWindow=1 -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\windowDock_InteractiveConsole_3\isVisible=true -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\windowDock_InteractiveConsole_3\qBaseWindowBeMax=0 -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\windowDock_InteractiveConsole_3\qBaseWindowBeFix=0 -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\windowDock_InteractiveConsole_3\dockIsFloating=false -Verdi_1\qBaseWindowRestoreStateGroup\backup_layout_to_restore\qBaseDockWidgetGroup\windowDock_nWave\SELECTION_MESSAGE_TOOLBAR=false -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\widgetDock_%3CLocal%3E\isVisible=true -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\widgetDock_%3CLocal%3E\qBaseWindowBeMax=0 -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\widgetDock_%3CLocal%3E\qBaseWindowBeFix=0 -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\widgetDock_%3CLocal%3E\dockIsFloating=false -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\widgetDock_%3CWatch%3E\isVisible=true -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\widgetDock_%3CWatch%3E\qBaseWindowBeMax=0 -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\widgetDock_%3CWatch%3E\qBaseWindowBeFix=0 -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\widgetDock_%3CWatch%3E\dockIsFloating=false -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\widgetDock_%3CStack%3E\isVisible=true -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\widgetDock_%3CStack%3E\qBaseWindowBeMax=0 -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\widgetDock_%3CStack%3E\qBaseWindowBeFix=0 -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\widgetDock_%3CStack%3E\dockIsFloating=false -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\widgetDock_%3CClass._Tree%3E\isVisible=true -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\widgetDock_%3CClass._Tree%3E\qBaseWindowBeMax=0 -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\widgetDock_%3CClass._Tree%3E\qBaseWindowBeFix=0 -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\widgetDock_%3CClass._Tree%3E\dockIsFloating=false -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\widgetDock_%3CObject._Tree%3E\isVisible=true -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\widgetDock_%3CObject._Tree%3E\qBaseWindowBeMax=0 -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\widgetDock_%3CObject._Tree%3E\qBaseWindowBeFix=0 -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\widgetDock_%3CObject._Tree%3E\dockIsFloating=false -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\widgetDock_%3CMember%3E\isVisible=true -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\widgetDock_%3CMember%3E\qBaseWindowBeMax=0 -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\widgetDock_%3CMember%3E\qBaseWindowBeFix=0 -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\widgetDock_%3CMember%3E\dockIsFloating=false -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\windowDock_nWave\isNestedWindow=1 -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\windowDock_nWave\isVisible=false -Verdi_1\qBaseWindowNextStateGroup\8\qBaseDockWidgetGroup\windowDock_nWave\SELECTION_MESSAGE_TOOLBAR=false -Verdi_1\qBaseWindowNextStateGroup\8\ProductVersion=201809 -Verdi_1\qBaseWindowNextStateGroup\8\Layout="@ByteArray(\0\0\0\xff\0\0\0\b\xfd\0\0\0\x2\0\0\0\x2\0\0\az\0\0\0\x88\xfc\x1\0\0\0\x3\xfc\0\0\0\0\0\0\x2\x30\0\0\x1\x19\0\xff\xff\xff\xfa\0\0\0\0\x1\0\0\0\x5\xfb\0\0\0.\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0I\0n\0s\0t\0.\0_\0T\0r\0\x65\0\x65\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\0V\0\xff\xff\xff\xfb\0\0\0.\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0\x44\0\x65\0\x63\0l\0.\0_\0T\0r\0\x65\0\x65\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\0V\0\xff\xff\xff\xfb\0\0\0$\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0S\0t\0\x61\0\x63\0k\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\xda\0\xff\xff\xff\xfb\0\0\0\x30\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0\x43\0l\0\x61\0s\0s\0.\0_\0T\0r\0\x65\0\x65\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\xd1\0\xff\xff\xff\xfb\0\0\0\x32\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0O\0\x62\0j\0\x65\0\x63\0t\0.\0_\0T\0r\0\x65\0\x65\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\x1\x19\0\xff\xff\xff\xfc\0\0\x2\x36\0\0\0\xc6\0\0\0\xa9\0\xff\xff\xff\xfa\0\0\0\x2\x1\0\0\0\x3\xfb\0\0\0\x30\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0S\0i\0g\0n\0\x61\0l\0_\0L\0i\0s\0t\0>\0\0\0\0\0\xff\xff\xff\xff\0\0\0k\0\0\0k\xfb\0\0\0$\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0L\0o\0\x63\0\x61\0l\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\xa9\0\xff\xff\xff\xfb\0\0\0&\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0M\0\x65\0m\0\x62\0\x65\0r\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\x8f\0\xff\xff\xff\xfb\0\0\0\x36\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0M\0T\0\x42\0_\0S\0O\0U\0R\0\x43\0\x45\0_\0T\0\x41\0\x42\0_\0\x31\x1\0\0\x3\x2\0\0\x4x\0\0\0k\0\xff\xff\xff\0\0\0\x3\0\0\az\0\0\x1\xf4\xfc\x1\0\0\0\x2\xfc\0\0\0\0\0\0\x4\xf6\0\0\x2,\0\xff\xff\xff\xfa\0\0\0\x3\x1\0\0\0\x5\xfb\0\0\0(\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0M\0\x65\0s\0s\0\x61\0g\0\x65\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\xa0\0\xff\xff\xff\xfb\0\0\0(\0w\0i\0n\0\x64\0o\0w\0\x44\0o\0\x63\0k\0_\0O\0n\0\x65\0S\0\x65\0\x61\0r\0\x63\0h\x1\0\0\0\0\xff\xff\xff\xff\0\0\x2,\0\xff\xff\xff\xfb\0\0\0$\0w\0i\0n\0\x64\0o\0w\0\x44\0o\0\x63\0k\0_\0n\0W\0\x61\0v\0\x65\0_\0\x32\x1\0\0\0\0\xff\xff\xff\xff\0\0\x1-\0\xff\xff\xff\xfb\0\0\0>\0w\0i\0n\0\x64\0o\0w\0\x44\0o\0\x63\0k\0_\0I\0n\0t\0\x65\0r\0\x61\0\x63\0t\0i\0v\0\x65\0\x43\0o\0n\0s\0o\0l\0\x65\0_\0\x33\x1\0\0\0\0\xff\xff\xff\xff\0\0\x1W\0\xff\xff\xff\xfb\0\0\0 \0w\0i\0n\0\x64\0o\0w\0\x44\0o\0\x63\0k\0_\0n\0W\0\x61\0v\0\x65\0\0\0\0\0\xff\xff\xff\xff\0\0\x1\xd5\0\xff\xff\xff\xfb\0\0\0$\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0W\0\x61\0t\0\x63\0h\0>\x1\0\0\x4\xfc\0\0\x2~\0\0\0\xa9\0\xff\xff\xff\0\0\az\0\0\0\0\0\0\0\x4\0\0\0\x4\0\0\0\b\0\0\0\b\xfc\0\0\0\x6\0\0\0\x2\0\0\0\x10\0\0\0.\0H\0\x42\0_\0I\0M\0P\0O\0R\0T\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0(\0H\0\x42\0_\0N\0\x45\0W\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0$\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0(\0H\0\x42\0_\0S\0I\0G\0N\0\x41\0L\0_\0P\0\x41\0N\0\x45\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0~\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0$\0H\0\x42\0_\0M\0U\0L\0T\0I\0_\0T\0\x41\0\x42\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0\xa2\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0*\0H\0\x42\0_\0\x45\0\x44\0I\0T\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0\xc6\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0$\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\x1\0\0\0\xea\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0,\0H\0\x42\0_\0T\0R\0\x41\0\x43\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\x1\x18\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0.\0H\0\x42\0_\0S\0O\0U\0R\0\x43\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\x2/\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0,\0t\0o\0o\0l\0\x62\0\x61\0r\0H\0\x42\0_\0T\0O\0G\0G\0L\0\x45\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x3\x1\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x32\0t\0o\0o\0l\0\x62\0\x61\0r\0H\0\x42\0_\0\x45\0M\0U\0L\0\x41\0T\0I\0O\0N\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x2\xbb\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x30\0t\0o\0o\0l\0\x62\0\x61\0r\0H\0\x42\0_\0P\0R\0O\0\x44\0T\0Y\0P\0\x45\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x3\x16\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0<\0\x41\0\x42\0V\0_\0\x41\0\x44\0\x44\0_\0T\0\x45\0M\0P\0O\0R\0\x41\0R\0Y\0_\0\x41\0S\0S\0\x45\0R\0T\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x2\xe8\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x1e\0U\0V\0M\0_\0\x41\0W\0\x41\0R\0\x45\0_\0\x44\0\x45\0\x42\0U\0G\0\0\0\x3\f\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0 \0V\0\x43\0_\0\x41\0P\0P\0S\0_\0T\0O\0O\0L\0_\0\x42\0O\0X\x1\0\0\x3\x1\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x14\0L\0O\0G\0_\0V\0I\0\x45\0W\0\x45\0R\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0$\0\x41\0M\0S\0_\0\x43\0O\0N\0\x46\0I\0G\0_\0T\0O\0O\0L\0\x42\0\x41\0R\x1\0\0\x3%\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x3\0\0\0\x30\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0&\0H\0\x42\0_\0\x42\0\x41\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x1\xfb\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x32\0t\0o\0o\0l\0\x42\0\x61\0r\0\x46\0o\0r\0m\0\x61\0l\0V\0\x65\0r\0i\0\x66\0i\0\x63\0\x61\0t\0i\0o\0n\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x4\0\0\0>\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0R\0\x45\0W\0I\0N\0\x44\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0R\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0R\0\x45\0W\0I\0N\0\x44\0_\0U\0N\0\x44\0O\0_\0R\0\x45\0\x44\0O\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\x1\0\0\x1\x5\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0@\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0R\0\x45\0V\0\x45\0R\0S\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\x1\0\0\x1\x95\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x38\0H\0\x42\0_\0P\0O\0W\0\x45\0R\0_\0T\0R\0\x41\0\x43\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0:\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0V\0S\0I\0M\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0:\0N\0O\0V\0\x41\0S\0_\0\x45\0M\0U\0L\0\x41\0T\0I\0O\0N\0_\0\x44\0\x45\0\x42\0U\0G\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0\x1a\0\x43\0V\0G\0_\0\x43\0\x45\0R\0_\0P\0\x41\0N\0\x45\0L\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0)" -Verdi_1\qBaseWindowNextStateGroup\8\isNestedWindow=0 -Verdi_1\qBaseWindowNextStateGroup\8\isVisible=true -Verdi_1\qBaseWindowNextStateGroup\8\size=@Size(1914 774) -Verdi_1\qBaseWindowNextStateGroup\8\geometry_x=-10 -Verdi_1\qBaseWindowNextStateGroup\8\geometry_y=20 -Verdi_1\qBaseWindowNextStateGroup\8\geometry_width=1914 -Verdi_1\qBaseWindowNextStateGroup\8\geometry_height=774 +Verdi_1\qBaseWindowNextStateGroup\5\size=@Size(900 700) +Verdi_1\qBaseWindowNextStateGroup\5\geometry_x=499 +Verdi_1\qBaseWindowNextStateGroup\5\geometry_y=82 +Verdi_1\qBaseWindowNextStateGroup\5\geometry_width=900 +Verdi_1\qBaseWindowNextStateGroup\5\geometry_height=700 Verdi_1\qBaseWindowRestoreStateGroup\layout_to_restore\qDockerWindow_restoreNewChildState=true Verdi_1\qBaseWindowRestoreStateGroup\layout_to_restore\qBaseDockWidgetGroup\widgetDock_%3CInst._Tree%3E\isVisible=true Verdi_1\qBaseWindowRestoreStateGroup\layout_to_restore\qBaseDockWidgetGroup\widgetDock_%3CInst._Tree%3E\qBaseWindowBeMax=0 @@ -496,133 +281,38 @@ Verdi_1\qBaseWindowRestoreStateGroup\layout_to_restore\qBaseDockWidgetGroup\wind Verdi_1\qBaseWindowRestoreStateGroup\layout_to_restore\qBaseDockWidgetGroup\windowDock_nWave_2\qBaseWindowBeMax=0 Verdi_1\qBaseWindowRestoreStateGroup\layout_to_restore\qBaseDockWidgetGroup\windowDock_nWave_2\qBaseWindowBeFix=0 Verdi_1\qBaseWindowRestoreStateGroup\layout_to_restore\qBaseDockWidgetGroup\windowDock_nWave_2\dockIsFloating=false -Verdi_1\qBaseWindowRestoreStateGroup\layout_to_restore\qBaseDockWidgetGroup\windowDock_InteractiveConsole_3\isNestedWindow=1 -Verdi_1\qBaseWindowRestoreStateGroup\layout_to_restore\qBaseDockWidgetGroup\windowDock_InteractiveConsole_3\isVisible=true -Verdi_1\qBaseWindowRestoreStateGroup\layout_to_restore\qBaseDockWidgetGroup\windowDock_InteractiveConsole_3\qBaseWindowBeMax=0 -Verdi_1\qBaseWindowRestoreStateGroup\layout_to_restore\qBaseDockWidgetGroup\windowDock_InteractiveConsole_3\qBaseWindowBeFix=0 -Verdi_1\qBaseWindowRestoreStateGroup\layout_to_restore\qBaseDockWidgetGroup\windowDock_InteractiveConsole_3\dockIsFloating=false -Verdi_1\qBaseWindowRestoreStateGroup\layout_to_restore\qBaseDockWidgetGroup\widgetDock_%3CLocal%3E\isVisible=true -Verdi_1\qBaseWindowRestoreStateGroup\layout_to_restore\qBaseDockWidgetGroup\widgetDock_%3CLocal%3E\qBaseWindowBeMax=0 -Verdi_1\qBaseWindowRestoreStateGroup\layout_to_restore\qBaseDockWidgetGroup\widgetDock_%3CLocal%3E\qBaseWindowBeFix=0 -Verdi_1\qBaseWindowRestoreStateGroup\layout_to_restore\qBaseDockWidgetGroup\widgetDock_%3CLocal%3E\dockIsFloating=false -Verdi_1\qBaseWindowRestoreStateGroup\layout_to_restore\qBaseDockWidgetGroup\widgetDock_%3CWatch%3E\isVisible=true -Verdi_1\qBaseWindowRestoreStateGroup\layout_to_restore\qBaseDockWidgetGroup\widgetDock_%3CWatch%3E\qBaseWindowBeMax=0 -Verdi_1\qBaseWindowRestoreStateGroup\layout_to_restore\qBaseDockWidgetGroup\widgetDock_%3CWatch%3E\qBaseWindowBeFix=0 -Verdi_1\qBaseWindowRestoreStateGroup\layout_to_restore\qBaseDockWidgetGroup\widgetDock_%3CWatch%3E\dockIsFloating=false -Verdi_1\qBaseWindowRestoreStateGroup\layout_to_restore\qBaseDockWidgetGroup\widgetDock_%3CStack%3E\isVisible=true -Verdi_1\qBaseWindowRestoreStateGroup\layout_to_restore\qBaseDockWidgetGroup\widgetDock_%3CStack%3E\qBaseWindowBeMax=0 -Verdi_1\qBaseWindowRestoreStateGroup\layout_to_restore\qBaseDockWidgetGroup\widgetDock_%3CStack%3E\qBaseWindowBeFix=0 -Verdi_1\qBaseWindowRestoreStateGroup\layout_to_restore\qBaseDockWidgetGroup\widgetDock_%3CStack%3E\dockIsFloating=false -Verdi_1\qBaseWindowRestoreStateGroup\layout_to_restore\qBaseDockWidgetGroup\widgetDock_%3CClass._Tree%3E\isVisible=true -Verdi_1\qBaseWindowRestoreStateGroup\layout_to_restore\qBaseDockWidgetGroup\widgetDock_%3CClass._Tree%3E\qBaseWindowBeMax=0 -Verdi_1\qBaseWindowRestoreStateGroup\layout_to_restore\qBaseDockWidgetGroup\widgetDock_%3CClass._Tree%3E\qBaseWindowBeFix=0 -Verdi_1\qBaseWindowRestoreStateGroup\layout_to_restore\qBaseDockWidgetGroup\widgetDock_%3CClass._Tree%3E\dockIsFloating=false -Verdi_1\qBaseWindowRestoreStateGroup\layout_to_restore\qBaseDockWidgetGroup\widgetDock_%3CObject._Tree%3E\isVisible=true -Verdi_1\qBaseWindowRestoreStateGroup\layout_to_restore\qBaseDockWidgetGroup\widgetDock_%3CObject._Tree%3E\qBaseWindowBeMax=0 -Verdi_1\qBaseWindowRestoreStateGroup\layout_to_restore\qBaseDockWidgetGroup\widgetDock_%3CObject._Tree%3E\qBaseWindowBeFix=0 -Verdi_1\qBaseWindowRestoreStateGroup\layout_to_restore\qBaseDockWidgetGroup\widgetDock_%3CObject._Tree%3E\dockIsFloating=false -Verdi_1\qBaseWindowRestoreStateGroup\layout_to_restore\qBaseDockWidgetGroup\widgetDock_%3CMember%3E\isVisible=true -Verdi_1\qBaseWindowRestoreStateGroup\layout_to_restore\qBaseDockWidgetGroup\widgetDock_%3CMember%3E\qBaseWindowBeMax=0 -Verdi_1\qBaseWindowRestoreStateGroup\layout_to_restore\qBaseDockWidgetGroup\widgetDock_%3CMember%3E\qBaseWindowBeFix=0 -Verdi_1\qBaseWindowRestoreStateGroup\layout_to_restore\qBaseDockWidgetGroup\widgetDock_%3CMember%3E\dockIsFloating=false Verdi_1\qBaseWindowRestoreStateGroup\layout_to_restore\ProductVersion=201809 -Verdi_1\qBaseWindowRestoreStateGroup\layout_to_restore\Layout="@ByteArray(\0\0\0\xff\0\0\0\0\xfd\0\0\0\x2\0\0\0\x2\0\0\az\0\0\0\x88\xfc\x1\0\0\0\x3\xfc\0\0\0\0\0\0\x2\x30\0\0\x1\x19\0\xff\xff\xff\xfa\0\0\0\0\x1\0\0\0\x5\xfb\0\0\0.\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0I\0n\0s\0t\0.\0_\0T\0r\0\x65\0\x65\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\0V\0\xff\xff\xff\xfb\0\0\0.\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0\x44\0\x65\0\x63\0l\0.\0_\0T\0r\0\x65\0\x65\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\0V\0\xff\xff\xff\xfb\0\0\0$\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0S\0t\0\x61\0\x63\0k\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\xda\0\xff\xff\xff\xfb\0\0\0\x30\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0\x43\0l\0\x61\0s\0s\0.\0_\0T\0r\0\x65\0\x65\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\xd1\0\xff\xff\xff\xfb\0\0\0\x32\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0O\0\x62\0j\0\x65\0\x63\0t\0.\0_\0T\0r\0\x65\0\x65\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\x1\x19\0\xff\xff\xff\xfc\0\0\x2\x36\0\0\0\xc6\0\0\0\xa9\0\xff\xff\xff\xfa\0\0\0\x2\x1\0\0\0\x3\xfb\0\0\0\x30\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0S\0i\0g\0n\0\x61\0l\0_\0L\0i\0s\0t\0>\0\0\0\0\0\xff\xff\xff\xff\0\0\0k\0\0\0k\xfb\0\0\0$\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0L\0o\0\x63\0\x61\0l\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\xa9\0\xff\xff\xff\xfb\0\0\0&\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0M\0\x65\0m\0\x62\0\x65\0r\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\x8f\0\xff\xff\xff\xfb\0\0\0\x36\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0M\0T\0\x42\0_\0S\0O\0U\0R\0\x43\0\x45\0_\0T\0\x41\0\x42\0_\0\x31\x1\0\0\x3\x2\0\0\x4x\0\0\0k\0\xff\xff\xff\0\0\0\x3\0\0\az\0\0\x1\xf4\xfc\x1\0\0\0\x2\xfc\0\0\0\0\0\0\x4\xf6\0\0\x2,\0\xff\xff\xff\xfa\0\0\0\x2\x1\0\0\0\x5\xfb\0\0\0(\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0M\0\x65\0s\0s\0\x61\0g\0\x65\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\xa0\0\xff\xff\xff\xfb\0\0\0(\0w\0i\0n\0\x64\0o\0w\0\x44\0o\0\x63\0k\0_\0O\0n\0\x65\0S\0\x65\0\x61\0r\0\x63\0h\x1\0\0\0\0\xff\xff\xff\xff\0\0\x2,\0\xff\xff\xff\xfb\0\0\0$\0w\0i\0n\0\x64\0o\0w\0\x44\0o\0\x63\0k\0_\0n\0W\0\x61\0v\0\x65\0_\0\x32\x1\0\0\0\0\xff\xff\xff\xff\0\0\x1-\0\xff\xff\xff\xfb\0\0\0>\0w\0i\0n\0\x64\0o\0w\0\x44\0o\0\x63\0k\0_\0I\0n\0t\0\x65\0r\0\x61\0\x63\0t\0i\0v\0\x65\0\x43\0o\0n\0s\0o\0l\0\x65\0_\0\x33\x1\0\0\0\0\xff\xff\xff\xff\0\0\x1W\0\xff\xff\xff\xfb\0\0\0 \0w\0i\0n\0\x64\0o\0w\0\x44\0o\0\x63\0k\0_\0n\0W\0\x61\0v\0\x65\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\xfb\0\0\0$\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0W\0\x61\0t\0\x63\0h\0>\x1\0\0\x4\xfc\0\0\x2~\0\0\0\xa9\0\xff\xff\xff\0\0\az\0\0\0\0\0\0\0\x4\0\0\0\x4\0\0\0\b\0\0\0\b\xfc\0\0\0\x6\0\0\0\x2\0\0\0\x10\0\0\0.\0H\0\x42\0_\0I\0M\0P\0O\0R\0T\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0(\0H\0\x42\0_\0N\0\x45\0W\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0$\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0(\0H\0\x42\0_\0S\0I\0G\0N\0\x41\0L\0_\0P\0\x41\0N\0\x45\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0~\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0$\0H\0\x42\0_\0M\0U\0L\0T\0I\0_\0T\0\x41\0\x42\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0\xa2\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0*\0H\0\x42\0_\0\x45\0\x44\0I\0T\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0\xc6\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0$\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\x1\0\0\0\xea\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0,\0H\0\x42\0_\0T\0R\0\x41\0\x43\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\x1\x18\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0.\0H\0\x42\0_\0S\0O\0U\0R\0\x43\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\x2/\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0,\0t\0o\0o\0l\0\x62\0\x61\0r\0H\0\x42\0_\0T\0O\0G\0G\0L\0\x45\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x3\x1\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x32\0t\0o\0o\0l\0\x62\0\x61\0r\0H\0\x42\0_\0\x45\0M\0U\0L\0\x41\0T\0I\0O\0N\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x2\xbb\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x30\0t\0o\0o\0l\0\x62\0\x61\0r\0H\0\x42\0_\0P\0R\0O\0\x44\0T\0Y\0P\0\x45\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x3\x16\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0<\0\x41\0\x42\0V\0_\0\x41\0\x44\0\x44\0_\0T\0\x45\0M\0P\0O\0R\0\x41\0R\0Y\0_\0\x41\0S\0S\0\x45\0R\0T\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x2\xe8\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x1e\0U\0V\0M\0_\0\x41\0W\0\x41\0R\0\x45\0_\0\x44\0\x45\0\x42\0U\0G\0\0\0\x3\f\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0 \0V\0\x43\0_\0\x41\0P\0P\0S\0_\0T\0O\0O\0L\0_\0\x42\0O\0X\x1\0\0\x3\x1\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x14\0L\0O\0G\0_\0V\0I\0\x45\0W\0\x45\0R\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0$\0\x41\0M\0S\0_\0\x43\0O\0N\0\x46\0I\0G\0_\0T\0O\0O\0L\0\x42\0\x41\0R\x1\0\0\x3%\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x3\0\0\0\x30\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0&\0H\0\x42\0_\0\x42\0\x41\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x1\xfb\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x32\0t\0o\0o\0l\0\x42\0\x61\0r\0\x46\0o\0r\0m\0\x61\0l\0V\0\x65\0r\0i\0\x66\0i\0\x63\0\x61\0t\0i\0o\0n\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x4\0\0\0>\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0R\0\x45\0W\0I\0N\0\x44\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0R\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0R\0\x45\0W\0I\0N\0\x44\0_\0U\0N\0\x44\0O\0_\0R\0\x45\0\x44\0O\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\x1\0\0\x1\x5\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0@\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0R\0\x45\0V\0\x45\0R\0S\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\x1\0\0\x1\x95\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x38\0H\0\x42\0_\0P\0O\0W\0\x45\0R\0_\0T\0R\0\x41\0\x43\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0:\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0V\0S\0I\0M\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0:\0N\0O\0V\0\x41\0S\0_\0\x45\0M\0U\0L\0\x41\0T\0I\0O\0N\0_\0\x44\0\x45\0\x42\0U\0G\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0\x1a\0\x43\0V\0G\0_\0\x43\0\x45\0R\0_\0P\0\x41\0N\0\x45\0L\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0)" +Verdi_1\qBaseWindowRestoreStateGroup\layout_to_restore\Layout="@ByteArray(\0\0\0\xff\0\0\0\0\xfd\0\0\0\x2\0\0\0\x2\0\0\a~\0\0\x1[\xfc\x1\0\0\0\x3\xfc\0\0\0\0\0\0\x2u\0\0\0\x89\0\xff\xff\xff\xfa\0\0\0\0\x1\0\0\0\x2\xfb\0\0\0.\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0I\0n\0s\0t\0.\0_\0T\0r\0\x65\0\x65\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\0V\0\xff\xff\xff\xfb\0\0\0.\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0\x44\0\x65\0\x63\0l\0.\0_\0T\0r\0\x65\0\x65\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\0V\0\xff\xff\xff\xfb\0\0\0\x30\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0S\0i\0g\0n\0\x61\0l\0_\0L\0i\0s\0t\0>\0\0\0\0\xe9\0\0\0\xc6\0\0\0k\0\0\0k\xfb\0\0\0\x36\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0M\0T\0\x42\0_\0S\0O\0U\0R\0\x43\0\x45\0_\0T\0\x41\0\x42\0_\0\x31\x1\0\0\x2{\0\0\x5\x3\0\0\0k\0\xff\xff\xff\0\0\0\x3\0\0\a~\0\0\x1[\xfc\x1\0\0\0\x1\xfc\0\0\0\0\0\0\a~\0\0\x2,\0\xff\xff\xff\xfa\0\0\0\x2\x1\0\0\0\x3\xfb\0\0\0(\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0M\0\x65\0s\0s\0\x61\0g\0\x65\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\xa0\0\xff\xff\xff\xfb\0\0\0(\0w\0i\0n\0\x64\0o\0w\0\x44\0o\0\x63\0k\0_\0O\0n\0\x65\0S\0\x65\0\x61\0r\0\x63\0h\x1\0\0\0\0\xff\xff\xff\xff\0\0\x2,\0\xff\xff\xff\xfb\0\0\0$\0w\0i\0n\0\x64\0o\0w\0\x44\0o\0\x63\0k\0_\0n\0W\0\x61\0v\0\x65\0_\0\x32\x1\0\0\0\0\xff\xff\xff\xff\0\0\x1-\0\xff\xff\xff\0\0\a~\0\0\0\0\0\0\0\x4\0\0\0\x4\0\0\0\b\0\0\0\b\xfc\0\0\0\x6\0\0\0\x2\0\0\0\x10\0\0\0.\0H\0\x42\0_\0I\0M\0P\0O\0R\0T\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0(\0H\0\x42\0_\0N\0\x45\0W\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0$\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0(\0H\0\x42\0_\0S\0I\0G\0N\0\x41\0L\0_\0P\0\x41\0N\0\x45\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0~\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0$\0H\0\x42\0_\0M\0U\0L\0T\0I\0_\0T\0\x41\0\x42\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0\xa2\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0*\0H\0\x42\0_\0\x45\0\x44\0I\0T\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0\xc6\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0$\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\x1\0\0\0\xea\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0,\0H\0\x42\0_\0T\0R\0\x41\0\x43\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\x1\x18\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0.\0H\0\x42\0_\0S\0O\0U\0R\0\x43\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\x2/\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0,\0t\0o\0o\0l\0\x62\0\x61\0r\0H\0\x42\0_\0T\0O\0G\0G\0L\0\x45\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x3\x1\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x32\0t\0o\0o\0l\0\x62\0\x61\0r\0H\0\x42\0_\0\x45\0M\0U\0L\0\x41\0T\0I\0O\0N\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x2\xbb\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x30\0t\0o\0o\0l\0\x62\0\x61\0r\0H\0\x42\0_\0P\0R\0O\0\x44\0T\0Y\0P\0\x45\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x3\x16\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0<\0\x41\0\x42\0V\0_\0\x41\0\x44\0\x44\0_\0T\0\x45\0M\0P\0O\0R\0\x41\0R\0Y\0_\0\x41\0S\0S\0\x45\0R\0T\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x2\xe8\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x1e\0U\0V\0M\0_\0\x41\0W\0\x41\0R\0\x45\0_\0\x44\0\x45\0\x42\0U\0G\0\0\0\x3\f\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0 \0V\0\x43\0_\0\x41\0P\0P\0S\0_\0T\0O\0O\0L\0_\0\x42\0O\0X\x1\0\0\x3\x1\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x14\0L\0O\0G\0_\0V\0I\0\x45\0W\0\x45\0R\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0$\0\x41\0M\0S\0_\0\x43\0O\0N\0\x46\0I\0G\0_\0T\0O\0O\0L\0\x42\0\x41\0R\x1\0\0\x3%\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x3\0\0\0\x30\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0&\0H\0\x42\0_\0\x42\0\x41\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x1\xfb\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x32\0t\0o\0o\0l\0\x42\0\x61\0r\0\x46\0o\0r\0m\0\x61\0l\0V\0\x65\0r\0i\0\x66\0i\0\x63\0\x61\0t\0i\0o\0n\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x4\0\0\0>\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0R\0\x45\0W\0I\0N\0\x44\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0R\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0R\0\x45\0W\0I\0N\0\x44\0_\0U\0N\0\x44\0O\0_\0R\0\x45\0\x44\0O\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\x1\x5\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0@\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0R\0\x45\0V\0\x45\0R\0S\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\x1\x95\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x38\0H\0\x42\0_\0P\0O\0W\0\x45\0R\0_\0T\0R\0\x41\0\x43\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0:\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0V\0S\0I\0M\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0:\0N\0O\0V\0\x41\0S\0_\0\x45\0M\0U\0L\0\x41\0T\0I\0O\0N\0_\0\x44\0\x45\0\x42\0U\0G\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0\x1a\0\x43\0V\0G\0_\0\x43\0\x45\0R\0_\0P\0\x41\0N\0\x45\0L\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0)" Verdi_1\qBaseWindowRestoreStateGroup\layout_to_restore\isNestedWindow=0 Verdi_1\qBaseWindowRestoreStateGroup\layout_to_restore\isVisible=true -Verdi_1\qBaseWindowRestoreStateGroup\layout_to_restore\size=@Size(1914 774) +Verdi_1\qBaseWindowRestoreStateGroup\layout_to_restore\size=@Size(1918 778) Verdi_1\qBaseWindowRestoreStateGroup\layout_to_restore\geometry_x=-10 Verdi_1\qBaseWindowRestoreStateGroup\layout_to_restore\geometry_y=20 -Verdi_1\qBaseWindowRestoreStateGroup\layout_to_restore\geometry_width=1914 -Verdi_1\qBaseWindowRestoreStateGroup\layout_to_restore\geometry_height=774 -Verdi_1\qBaseWindowNextStateGroup\9\qDockerWindow_restoreNewChildState=true -Verdi_1\qBaseWindowNextStateGroup\9\qBaseDockWidgetGroup\widgetDock_%3CInst._Tree%3E\isVisible=false -Verdi_1\qBaseWindowNextStateGroup\9\qBaseDockWidgetGroup\widgetDock_%3CMessage%3E\isVisible=false -Verdi_1\qBaseWindowNextStateGroup\9\qBaseDockWidgetGroup\widgetDock_MTB_SOURCE_TAB_1\isVisible=false -Verdi_1\qBaseWindowNextStateGroup\9\qBaseDockWidgetGroup\widgetDock_%3CSignal_List%3E\isVisible=false -Verdi_1\qBaseWindowNextStateGroup\9\qBaseDockWidgetGroup\widgetDock_%3CDecl._Tree%3E\isVisible=false -Verdi_1\qBaseWindowNextStateGroup\9\qBaseDockWidgetGroup\windowDock_OneSearch\isNestedWindow=1 -Verdi_1\qBaseWindowNextStateGroup\9\qBaseDockWidgetGroup\windowDock_OneSearch\isVisible=false -Verdi_1\qBaseWindowNextStateGroup\9\qBaseDockWidgetGroup\windowDock_nWave_2\isNestedWindow=1 -Verdi_1\qBaseWindowNextStateGroup\9\qBaseDockWidgetGroup\windowDock_nWave_2\isVisible=true -Verdi_1\qBaseWindowNextStateGroup\9\qBaseDockWidgetGroup\windowDock_nWave_2\SELECTION_MESSAGE_TOOLBAR=false -Verdi_1\qBaseWindowNextStateGroup\9\qBaseDockWidgetGroup\windowDock_nWave_2\qBaseWindowBeMax=1 -Verdi_1\qBaseWindowNextStateGroup\9\qBaseDockWidgetGroup\windowDock_nWave_2\qBaseWindowBeFix=1 -Verdi_1\qBaseWindowNextStateGroup\9\qBaseDockWidgetGroup\windowDock_nWave_2\dockIsFloating=false -Verdi_1\qBaseWindowNextStateGroup\9\qBaseDockWidgetGroup\windowDock_InteractiveConsole_3\isNestedWindow=1 -Verdi_1\qBaseWindowNextStateGroup\9\qBaseDockWidgetGroup\windowDock_InteractiveConsole_3\isVisible=false -Verdi_1\qBaseWindowNextStateGroup\9\qBaseDockWidgetGroup\widgetDock_%3CLocal%3E\isVisible=false -Verdi_1\qBaseWindowNextStateGroup\9\qBaseDockWidgetGroup\widgetDock_%3CWatch%3E\isVisible=false -Verdi_1\qBaseWindowNextStateGroup\9\qBaseDockWidgetGroup\widgetDock_%3CStack%3E\isVisible=false -Verdi_1\qBaseWindowNextStateGroup\9\qBaseDockWidgetGroup\widgetDock_%3CClass._Tree%3E\isVisible=false -Verdi_1\qBaseWindowNextStateGroup\9\qBaseDockWidgetGroup\widgetDock_%3CObject._Tree%3E\isVisible=false -Verdi_1\qBaseWindowNextStateGroup\9\qBaseDockWidgetGroup\widgetDock_%3CMember%3E\isVisible=false -Verdi_1\qBaseWindowNextStateGroup\9\ProductVersion=201809 -Verdi_1\qBaseWindowNextStateGroup\9\Layout="@ByteArray(\0\0\0\xff\0\0\0\t\xfd\0\0\0\x2\0\0\0\x2\0\0\az\0\0\0\x88\xfc\x1\0\0\0\x3\xfc\0\0\0\0\0\0\x2\x30\0\0\0\0\0\xff\xff\xff\xfa\0\0\0\0\x1\0\0\0\x5\xfb\0\0\0.\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0I\0n\0s\0t\0.\0_\0T\0r\0\x65\0\x65\0>\0\0\0\0\0\xff\xff\xff\xff\0\0\0V\0\xff\xff\xff\xfb\0\0\0.\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0\x44\0\x65\0\x63\0l\0.\0_\0T\0r\0\x65\0\x65\0>\0\0\0\0\0\xff\xff\xff\xff\0\0\0V\0\xff\xff\xff\xfb\0\0\0$\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0S\0t\0\x61\0\x63\0k\0>\0\0\0\0\0\xff\xff\xff\xff\0\0\0\xda\0\xff\xff\xff\xfb\0\0\0\x30\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0\x43\0l\0\x61\0s\0s\0.\0_\0T\0r\0\x65\0\x65\0>\0\0\0\0\0\xff\xff\xff\xff\0\0\0\xd1\0\xff\xff\xff\xfb\0\0\0\x32\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0O\0\x62\0j\0\x65\0\x63\0t\0.\0_\0T\0r\0\x65\0\x65\0>\0\0\0\0\0\xff\xff\xff\xff\0\0\x1\x19\0\xff\xff\xff\xfc\0\0\x2\x36\0\0\0\xc6\0\0\0\0\0\xff\xff\xff\xfa\0\0\0\x2\x1\0\0\0\x3\xfb\0\0\0\x30\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0S\0i\0g\0n\0\x61\0l\0_\0L\0i\0s\0t\0>\0\0\0\0\0\xff\xff\xff\xff\0\0\0k\0\0\0k\xfb\0\0\0$\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0L\0o\0\x63\0\x61\0l\0>\0\0\0\0\0\xff\xff\xff\xff\0\0\0\xa9\0\xff\xff\xff\xfb\0\0\0&\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0M\0\x65\0m\0\x62\0\x65\0r\0>\0\0\0\0\0\xff\xff\xff\xff\0\0\0\x8f\0\xff\xff\xff\xfb\0\0\0\x36\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0M\0T\0\x42\0_\0S\0O\0U\0R\0\x43\0\x45\0_\0T\0\x41\0\x42\0_\0\x31\0\0\0\x3\x2\0\0\x4x\0\0\0k\0\xff\xff\xff\0\0\0\x3\0\0\az\0\0\x1\xf4\xfc\x1\0\0\0\x2\xfc\0\0\0\0\0\0\x4\xf6\0\0\x1-\0\xff\xff\xff\xfa\0\0\0\x2\x1\0\0\0\x5\xfb\0\0\0(\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0M\0\x65\0s\0s\0\x61\0g\0\x65\0>\0\0\0\0\0\xff\xff\xff\xff\0\0\0\xa0\0\xff\xff\xff\xfb\0\0\0(\0w\0i\0n\0\x64\0o\0w\0\x44\0o\0\x63\0k\0_\0O\0n\0\x65\0S\0\x65\0\x61\0r\0\x63\0h\0\0\0\0\0\xff\xff\xff\xff\0\0\x2,\0\xff\xff\xff\xfb\0\0\0$\0w\0i\0n\0\x64\0o\0w\0\x44\0o\0\x63\0k\0_\0n\0W\0\x61\0v\0\x65\0_\0\x32\x1\0\0\0\0\xff\xff\xff\xff\0\0\x1-\0\xff\xff\xff\xfb\0\0\0>\0w\0i\0n\0\x64\0o\0w\0\x44\0o\0\x63\0k\0_\0I\0n\0t\0\x65\0r\0\x61\0\x63\0t\0i\0v\0\x65\0\x43\0o\0n\0s\0o\0l\0\x65\0_\0\x33\0\0\0\0\0\xff\xff\xff\xff\0\0\x1W\0\xff\xff\xff\xfb\0\0\0 \0w\0i\0n\0\x64\0o\0w\0\x44\0o\0\x63\0k\0_\0n\0W\0\x61\0v\0\x65\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\xfb\0\0\0$\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0W\0\x61\0t\0\x63\0h\0>\0\0\0\x4\xfc\0\0\x2~\0\0\0\xa9\0\xff\xff\xff\0\0\az\0\0\0\0\0\0\0\x4\0\0\0\x4\0\0\0\b\0\0\0\b\xfc\0\0\0\x6\0\0\0\x2\0\0\0\x10\0\0\0.\0H\0\x42\0_\0I\0M\0P\0O\0R\0T\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0(\0H\0\x42\0_\0N\0\x45\0W\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0$\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0(\0H\0\x42\0_\0S\0I\0G\0N\0\x41\0L\0_\0P\0\x41\0N\0\x45\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0~\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0$\0H\0\x42\0_\0M\0U\0L\0T\0I\0_\0T\0\x41\0\x42\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0\xa2\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0*\0H\0\x42\0_\0\x45\0\x44\0I\0T\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0\xc6\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0$\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\x1\0\0\0\xea\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0,\0H\0\x42\0_\0T\0R\0\x41\0\x43\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\x1\x18\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0.\0H\0\x42\0_\0S\0O\0U\0R\0\x43\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\x2/\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0,\0t\0o\0o\0l\0\x62\0\x61\0r\0H\0\x42\0_\0T\0O\0G\0G\0L\0\x45\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x3\x1\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x32\0t\0o\0o\0l\0\x62\0\x61\0r\0H\0\x42\0_\0\x45\0M\0U\0L\0\x41\0T\0I\0O\0N\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x2\xbb\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x30\0t\0o\0o\0l\0\x62\0\x61\0r\0H\0\x42\0_\0P\0R\0O\0\x44\0T\0Y\0P\0\x45\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x3\x16\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0<\0\x41\0\x42\0V\0_\0\x41\0\x44\0\x44\0_\0T\0\x45\0M\0P\0O\0R\0\x41\0R\0Y\0_\0\x41\0S\0S\0\x45\0R\0T\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x2\xe8\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x1e\0U\0V\0M\0_\0\x41\0W\0\x41\0R\0\x45\0_\0\x44\0\x45\0\x42\0U\0G\0\0\0\x3\f\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0 \0V\0\x43\0_\0\x41\0P\0P\0S\0_\0T\0O\0O\0L\0_\0\x42\0O\0X\x1\0\0\x3\x1\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x14\0L\0O\0G\0_\0V\0I\0\x45\0W\0\x45\0R\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0$\0\x41\0M\0S\0_\0\x43\0O\0N\0\x46\0I\0G\0_\0T\0O\0O\0L\0\x42\0\x41\0R\x1\0\0\x3%\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x3\0\0\0\x30\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0&\0H\0\x42\0_\0\x42\0\x41\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x1\xfb\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x32\0t\0o\0o\0l\0\x42\0\x61\0r\0\x46\0o\0r\0m\0\x61\0l\0V\0\x65\0r\0i\0\x66\0i\0\x63\0\x61\0t\0i\0o\0n\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x4\0\0\0>\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0R\0\x45\0W\0I\0N\0\x44\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0R\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0R\0\x45\0W\0I\0N\0\x44\0_\0U\0N\0\x44\0O\0_\0R\0\x45\0\x44\0O\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\x1\0\0\x1\x5\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0@\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0R\0\x45\0V\0\x45\0R\0S\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\x1\0\0\x1\x95\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x38\0H\0\x42\0_\0P\0O\0W\0\x45\0R\0_\0T\0R\0\x41\0\x43\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0:\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0V\0S\0I\0M\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0:\0N\0O\0V\0\x41\0S\0_\0\x45\0M\0U\0L\0\x41\0T\0I\0O\0N\0_\0\x44\0\x45\0\x42\0U\0G\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0\x1a\0\x43\0V\0G\0_\0\x43\0\x45\0R\0_\0P\0\x41\0N\0\x45\0L\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0)" -Verdi_1\qBaseWindowNextStateGroup\9\isNestedWindow=0 -Verdi_1\qBaseWindowNextStateGroup\9\isVisible=true -Verdi_1\qBaseWindowNextStateGroup\9\size=@Size(1914 774) -Verdi_1\qBaseWindowNextStateGroup\9\geometry_x=-10 -Verdi_1\qBaseWindowNextStateGroup\9\geometry_y=20 -Verdi_1\qBaseWindowNextStateGroup\9\geometry_width=1914 -Verdi_1\qBaseWindowNextStateGroup\9\geometry_height=774 -Verdi_1\qBaseWindowNextStateGroup\10\qDockerWindow_restoreNewChildState=true -Verdi_1\qBaseWindowNextStateGroup\10\qBaseDockWidgetGroup\widgetDock_%3CInst._Tree%3E\isVisible=false -Verdi_1\qBaseWindowNextStateGroup\10\qBaseDockWidgetGroup\widgetDock_%3CMessage%3E\isVisible=true -Verdi_1\qBaseWindowNextStateGroup\10\qBaseDockWidgetGroup\widgetDock_%3CMessage%3E\qBaseWindowBeMax=1 -Verdi_1\qBaseWindowNextStateGroup\10\qBaseDockWidgetGroup\widgetDock_%3CMessage%3E\qBaseWindowBeFix=0 -Verdi_1\qBaseWindowNextStateGroup\10\qBaseDockWidgetGroup\widgetDock_%3CMessage%3E\dockIsFloating=false -Verdi_1\qBaseWindowNextStateGroup\10\qBaseDockWidgetGroup\widgetDock_MTB_SOURCE_TAB_1\isVisible=false -Verdi_1\qBaseWindowNextStateGroup\10\qBaseDockWidgetGroup\widgetDock_%3CSignal_List%3E\isVisible=false -Verdi_1\qBaseWindowNextStateGroup\10\qBaseDockWidgetGroup\widgetDock_%3CDecl._Tree%3E\isVisible=false -Verdi_1\qBaseWindowNextStateGroup\10\qBaseDockWidgetGroup\windowDock_OneSearch\isNestedWindow=1 -Verdi_1\qBaseWindowNextStateGroup\10\qBaseDockWidgetGroup\windowDock_OneSearch\isVisible=false -Verdi_1\qBaseWindowNextStateGroup\10\qBaseDockWidgetGroup\windowDock_nWave_2\isNestedWindow=1 -Verdi_1\qBaseWindowNextStateGroup\10\qBaseDockWidgetGroup\windowDock_nWave_2\isVisible=true -Verdi_1\qBaseWindowNextStateGroup\10\qBaseDockWidgetGroup\windowDock_nWave_2\SELECTION_MESSAGE_TOOLBAR=false -Verdi_1\qBaseWindowNextStateGroup\10\qBaseDockWidgetGroup\windowDock_nWave_2\qBaseWindowBeMax=1 -Verdi_1\qBaseWindowNextStateGroup\10\qBaseDockWidgetGroup\windowDock_nWave_2\qBaseWindowBeFix=1 -Verdi_1\qBaseWindowNextStateGroup\10\qBaseDockWidgetGroup\windowDock_nWave_2\dockIsFloating=false -Verdi_1\qBaseWindowNextStateGroup\10\qBaseDockWidgetGroup\windowDock_InteractiveConsole_3\isNestedWindow=1 -Verdi_1\qBaseWindowNextStateGroup\10\qBaseDockWidgetGroup\windowDock_InteractiveConsole_3\isVisible=false -Verdi_1\qBaseWindowNextStateGroup\10\qBaseDockWidgetGroup\widgetDock_%3CLocal%3E\isVisible=false -Verdi_1\qBaseWindowNextStateGroup\10\qBaseDockWidgetGroup\widgetDock_%3CWatch%3E\isVisible=false -Verdi_1\qBaseWindowNextStateGroup\10\qBaseDockWidgetGroup\widgetDock_%3CStack%3E\isVisible=false -Verdi_1\qBaseWindowNextStateGroup\10\qBaseDockWidgetGroup\widgetDock_%3CClass._Tree%3E\isVisible=false -Verdi_1\qBaseWindowNextStateGroup\10\qBaseDockWidgetGroup\widgetDock_%3CObject._Tree%3E\isVisible=false -Verdi_1\qBaseWindowNextStateGroup\10\qBaseDockWidgetGroup\widgetDock_%3CMember%3E\isVisible=false -Verdi_1\qBaseWindowNextStateGroup\10\ProductVersion=201809 -Verdi_1\qBaseWindowNextStateGroup\10\Layout="@ByteArray(\0\0\0\xff\0\0\0\n\xfd\0\0\0\x2\0\0\0\x2\0\0\az\0\0\0\x88\xfc\x1\0\0\0\x3\xfc\0\0\0\0\0\0\x2\x30\0\0\0\0\0\xff\xff\xff\xfa\xff\xff\xff\xff\x1\0\0\0\x5\xfb\0\0\0.\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0I\0n\0s\0t\0.\0_\0T\0r\0\x65\0\x65\0>\0\0\0\0\0\xff\xff\xff\xff\0\0\0V\0\xff\xff\xff\xfb\0\0\0.\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0\x44\0\x65\0\x63\0l\0.\0_\0T\0r\0\x65\0\x65\0>\0\0\0\0\0\xff\xff\xff\xff\0\0\0V\0\xff\xff\xff\xfb\0\0\0$\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0S\0t\0\x61\0\x63\0k\0>\0\0\0\0\0\xff\xff\xff\xff\0\0\0\xda\0\xff\xff\xff\xfb\0\0\0\x30\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0\x43\0l\0\x61\0s\0s\0.\0_\0T\0r\0\x65\0\x65\0>\0\0\0\0\0\xff\xff\xff\xff\0\0\0\xd1\0\xff\xff\xff\xfb\0\0\0\x32\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0O\0\x62\0j\0\x65\0\x63\0t\0.\0_\0T\0r\0\x65\0\x65\0>\0\0\0\0\0\xff\xff\xff\xff\0\0\x1\x19\0\xff\xff\xff\xfc\0\0\x2\x36\0\0\0\xc6\0\0\0\0\0\xff\xff\xff\xfa\xff\xff\xff\xff\x1\0\0\0\x3\xfb\0\0\0\x30\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0S\0i\0g\0n\0\x61\0l\0_\0L\0i\0s\0t\0>\0\0\0\0\0\xff\xff\xff\xff\0\0\0k\0\0\0k\xfb\0\0\0$\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0L\0o\0\x63\0\x61\0l\0>\0\0\0\0\0\xff\xff\xff\xff\0\0\0\xa9\0\xff\xff\xff\xfb\0\0\0&\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0M\0\x65\0m\0\x62\0\x65\0r\0>\0\0\0\0\0\xff\xff\xff\xff\0\0\0\x8f\0\xff\xff\xff\xfb\0\0\0\x36\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0M\0T\0\x42\0_\0S\0O\0U\0R\0\x43\0\x45\0_\0T\0\x41\0\x42\0_\0\x31\0\0\0\x3\x2\0\0\x4x\0\0\0k\0\xff\xff\xff\0\0\0\x3\0\0\az\0\0\x2\x82\xfc\x1\0\0\0\x2\xfc\0\0\0\0\0\0\az\0\0\x1-\0\xff\xff\xff\xfa\0\0\0\x2\x1\0\0\0\x5\xfb\0\0\0(\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0M\0\x65\0s\0s\0\x61\0g\0\x65\0>\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\xa0\0\xff\xff\xff\xfb\0\0\0(\0w\0i\0n\0\x64\0o\0w\0\x44\0o\0\x63\0k\0_\0O\0n\0\x65\0S\0\x65\0\x61\0r\0\x63\0h\0\0\0\0\0\xff\xff\xff\xff\0\0\x2,\0\xff\xff\xff\xfb\0\0\0$\0w\0i\0n\0\x64\0o\0w\0\x44\0o\0\x63\0k\0_\0n\0W\0\x61\0v\0\x65\0_\0\x32\x1\0\0\0\0\xff\xff\xff\xff\0\0\x1-\0\xff\xff\xff\xfb\0\0\0>\0w\0i\0n\0\x64\0o\0w\0\x44\0o\0\x63\0k\0_\0I\0n\0t\0\x65\0r\0\x61\0\x63\0t\0i\0v\0\x65\0\x43\0o\0n\0s\0o\0l\0\x65\0_\0\x33\0\0\0\0\0\xff\xff\xff\xff\0\0\x1W\0\xff\xff\xff\xfb\0\0\0 \0w\0i\0n\0\x64\0o\0w\0\x44\0o\0\x63\0k\0_\0n\0W\0\x61\0v\0\x65\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\xfb\0\0\0$\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0W\0\x61\0t\0\x63\0h\0>\0\0\0\x4\xfc\0\0\x2~\0\0\0\xa9\0\xff\xff\xff\0\0\az\0\0\0\0\0\0\0\x4\0\0\0\x4\0\0\0\b\0\0\0\b\xfc\0\0\0\x6\0\0\0\x2\0\0\0\x10\0\0\0.\0H\0\x42\0_\0I\0M\0P\0O\0R\0T\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0(\0H\0\x42\0_\0N\0\x45\0W\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0$\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0(\0H\0\x42\0_\0S\0I\0G\0N\0\x41\0L\0_\0P\0\x41\0N\0\x45\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0~\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0$\0H\0\x42\0_\0M\0U\0L\0T\0I\0_\0T\0\x41\0\x42\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0\xa2\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0*\0H\0\x42\0_\0\x45\0\x44\0I\0T\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0\xc6\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0$\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\x1\0\0\0\xea\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0,\0H\0\x42\0_\0T\0R\0\x41\0\x43\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\x1\x18\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0.\0H\0\x42\0_\0S\0O\0U\0R\0\x43\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\x2/\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0,\0t\0o\0o\0l\0\x62\0\x61\0r\0H\0\x42\0_\0T\0O\0G\0G\0L\0\x45\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x3\x1\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x32\0t\0o\0o\0l\0\x62\0\x61\0r\0H\0\x42\0_\0\x45\0M\0U\0L\0\x41\0T\0I\0O\0N\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x2\xbb\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x30\0t\0o\0o\0l\0\x62\0\x61\0r\0H\0\x42\0_\0P\0R\0O\0\x44\0T\0Y\0P\0\x45\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x3\x16\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0<\0\x41\0\x42\0V\0_\0\x41\0\x44\0\x44\0_\0T\0\x45\0M\0P\0O\0R\0\x41\0R\0Y\0_\0\x41\0S\0S\0\x45\0R\0T\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x2\xe8\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x1e\0U\0V\0M\0_\0\x41\0W\0\x41\0R\0\x45\0_\0\x44\0\x45\0\x42\0U\0G\0\0\0\x3\f\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0 \0V\0\x43\0_\0\x41\0P\0P\0S\0_\0T\0O\0O\0L\0_\0\x42\0O\0X\x1\0\0\x3\x1\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x14\0L\0O\0G\0_\0V\0I\0\x45\0W\0\x45\0R\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0$\0\x41\0M\0S\0_\0\x43\0O\0N\0\x46\0I\0G\0_\0T\0O\0O\0L\0\x42\0\x41\0R\x1\0\0\x3%\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x3\0\0\0\x30\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0&\0H\0\x42\0_\0\x42\0\x41\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x1\xfb\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x32\0t\0o\0o\0l\0\x42\0\x61\0r\0\x46\0o\0r\0m\0\x61\0l\0V\0\x65\0r\0i\0\x66\0i\0\x63\0\x61\0t\0i\0o\0n\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x4\0\0\0>\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0R\0\x45\0W\0I\0N\0\x44\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0R\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0R\0\x45\0W\0I\0N\0\x44\0_\0U\0N\0\x44\0O\0_\0R\0\x45\0\x44\0O\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\x1\0\0\x1\x5\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0@\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0R\0\x45\0V\0\x45\0R\0S\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\x1\0\0\x1\x95\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x38\0H\0\x42\0_\0P\0O\0W\0\x45\0R\0_\0T\0R\0\x41\0\x43\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0:\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0V\0S\0I\0M\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0:\0N\0O\0V\0\x41\0S\0_\0\x45\0M\0U\0L\0\x41\0T\0I\0O\0N\0_\0\x44\0\x45\0\x42\0U\0G\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0\x1a\0\x43\0V\0G\0_\0\x43\0\x45\0R\0_\0P\0\x41\0N\0\x45\0L\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0)" -Verdi_1\qBaseWindowNextStateGroup\10\isNestedWindow=0 -Verdi_1\qBaseWindowNextStateGroup\10\isVisible=true -Verdi_1\qBaseWindowNextStateGroup\10\size=@Size(1914 774) -Verdi_1\qBaseWindowNextStateGroup\10\geometry_x=-10 -Verdi_1\qBaseWindowNextStateGroup\10\geometry_y=20 -Verdi_1\qBaseWindowNextStateGroup\10\geometry_width=1914 -Verdi_1\qBaseWindowNextStateGroup\10\geometry_height=774 - -[QwMainWindow] -window\nWave\layout="@ByteArray(\0\0\0\xff\0\x3\x14Q\xfd\0\0\0\0\0\0\x3\xc0\0\0\x1\x1d\0\0\0\x4\0\0\0\x4\0\0\0\b\0\0\0\b\xfc\0\0\0\x2\0\0\0\x2\0\0\0\f\0\0\0\x12\0W\0\x41\0V\0\x45\0_\0O\0P\0\x45\0N\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x12\0W\0\x41\0V\0\x45\0_\0\x45\0\x44\0I\0T\x1\0\0\0\x64\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x16\0W\0\x41\0V\0\x45\0_\0\x43\0U\0R\0S\0O\0R\x1\0\0\0\xd9\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x12\0W\0\x41\0V\0\x45\0_\0V\0I\0\x45\0W\x1\0\0\x2J\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\"\0W\0\x41\0V\0\x45\0_\0S\0\x45\0\x41\0R\0\x43\0H\0_\0\x45\0V\0\x45\0N\0T\x1\0\0\x2\xa4\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x1e\0W\0\x41\0V\0\x45\0_\0R\0\x45\0P\0L\0\x41\0Y\0_\0S\0I\0M\0\0\0\x3\a\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x12\0W\0\x41\0V\0\x45\0_\0G\0O\0T\0O\x1\0\0\x3+\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0,\0W\0\x41\0V\0\x45\0_\0G\0O\0T\0O\0_\0N\0\x41\0M\0\x45\0\x44\0_\0M\0\x41\0R\0K\0\x45\0R\0\0\0\x3n\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0 \0W\0\x41\0V\0\x45\0_\0T\0R\0\x41\0N\0S\0\x41\0\x43\0T\0I\0O\0N\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0*\0W\0\x41\0V\0\x45\0_\0\x45\0X\0P\0L\0O\0R\0\x45\0_\0P\0R\0O\0P\0\x45\0R\0T\0Y\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0 \0W\0\x41\0V\0\x45\0_\0\x46\0I\0N\0\x44\0_\0S\0I\0G\0N\0\x41\0L\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x18\0W\0\x41\0V\0\x45\0_\0P\0R\0I\0M\0\x41\0R\0Y\x1\0\0\x3\x9c\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0\x32\0S\0\x45\0L\0\x45\0\x43\0T\0I\0O\0N\0_\0M\0\x45\0S\0S\0\x41\0G\0\x45\0_\0T\0O\0O\0L\0\x42\0\x41\0R\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0)" -window\nWave\geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x1\0\0\0\0\0\0\0\0\0\x1b\0\0\ay\0\0\x2$\0\0\0\0\0\0\0\x1b\0\0\ay\0\0\x2$\0\0\0\0\0\0) -window\nWave\menubar=true -window\nWave\splitters\splitter_5\layout=@ByteArray(\0\0\0\xff\0\0\0\0\0\0\0\x2\0\0\0\0\0\0\0\x1b\x1\0\0\0\x1\0\0\0\0\x2) -window\nWave\splitters\splitter_2\layout=@ByteArray(\0\0\0\xff\0\0\0\0\0\0\0\x2\0\0\0\x64\0\0\0\0\x1\0\0\0\x1\0\0\0\0\x1) -window\nWave\splitters\splitter\layout=@ByteArray(\0\0\0\xff\0\0\0\0\0\0\0\x3\0\0\0\x41\0\0\0\0\0\0\0\0\x1\0\0\0\x1\0\0\0\0\x1) -window\nWave\splitters\Pane_Upper\layout=@ByteArray(\0\0\0\xff\0\0\0\0\0\0\0\x2\xff\xff\xff\xff\xff\xff\xff\xff\x1\0\0\0\x1\0\0\0\0\x1) -window\nWave\splitters\splitter_3\layout=@ByteArray(\0\0\0\xff\0\0\0\0\0\0\0\x2\xff\xff\xff\xff\xff\xff\xff\xff\x1\0\0\0\x1\0\0\0\0\x1) -window\nWave_2\layout="@ByteArray(\0\0\0\xff\0\x3\x14Q\xfd\0\0\0\0\0\0\az\0\0\x2\x1c\0\0\0\x4\0\0\0\x4\0\0\0\b\0\0\0\b\xfc\0\0\0\x2\0\0\0\x2\0\0\0\f\0\0\0\x12\0W\0\x41\0V\0\x45\0_\0O\0P\0\x45\0N\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x12\0W\0\x41\0V\0\x45\0_\0\x45\0\x44\0I\0T\x1\0\0\0?\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x16\0W\0\x41\0V\0\x45\0_\0\x43\0U\0R\0S\0O\0R\x1\0\0\0\xb4\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x12\0W\0\x41\0V\0\x45\0_\0V\0I\0\x45\0W\x1\0\0\x2%\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\"\0W\0\x41\0V\0\x45\0_\0S\0\x45\0\x41\0R\0\x43\0H\0_\0\x45\0V\0\x45\0N\0T\x1\0\0\x2\x7f\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x1e\0W\0\x41\0V\0\x45\0_\0R\0\x45\0P\0L\0\x41\0Y\0_\0S\0I\0M\0\0\0\x5K\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x12\0W\0\x41\0V\0\x45\0_\0G\0O\0T\0O\x1\0\0\x3\x1b\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0,\0W\0\x41\0V\0\x45\0_\0G\0O\0T\0O\0_\0N\0\x41\0M\0\x45\0\x44\0_\0M\0\x41\0R\0K\0\x45\0R\0\0\0\x5\xed\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0 \0W\0\x41\0V\0\x45\0_\0T\0R\0\x41\0N\0S\0\x41\0\x43\0T\0I\0O\0N\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0*\0W\0\x41\0V\0\x45\0_\0\x45\0X\0P\0L\0O\0R\0\x45\0_\0P\0R\0O\0P\0\x45\0R\0T\0Y\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0 \0W\0\x41\0V\0\x45\0_\0\x46\0I\0N\0\x44\0_\0S\0I\0G\0N\0\x41\0L\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x18\0W\0\x41\0V\0\x45\0_\0P\0R\0I\0M\0\x41\0R\0Y\0\0\0\x3\x99\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0\x32\0S\0\x45\0L\0\x45\0\x43\0T\0I\0O\0N\0_\0M\0\x45\0S\0S\0\x41\0G\0\x45\0_\0T\0O\0O\0L\0\x42\0\x41\0R\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0)" -window\nWave_2\geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x1\0\0\0\0\0\0\0\0\0\x1b\0\0\ay\0\0\x2h\0\0\0\0\0\0\0\x1b\0\0\ay\0\0\x2h\0\0\0\0\0\0) -window\nWave_2\menubar=true -window\nWave_2\splitters\splitter_5\layout=@ByteArray(\0\0\0\xff\0\0\0\0\0\0\0\x2\0\0\0\x3\0\0\x1\xd8\x1\0\0\0\x1\0\0\0\0\x2) -window\nWave_2\splitters\splitter_2\layout=@ByteArray(\0\0\0\xff\0\0\0\0\0\0\0\x2\0\0\x1\x1d\0\0\x6Z\x1\0\0\0\x1\0\0\0\0\x1) -window\nWave_2\splitters\splitter\layout=@ByteArray(\0\0\0\xff\0\0\0\0\0\0\0\x3\0\0\0\xc3\0\0\0\0\0\0\x5\x94\x1\0\0\0\x1\0\0\0\0\x1) -window\nWave_2\splitters\Pane_Upper\layout=@ByteArray(\0\0\0\xff\0\0\0\0\0\0\0\x2\0\0\x1\x1d\0\0\x6Z\x1\0\0\0\x1\0\0\0\0\x1) -window\nWave_2\splitters\splitter_3\layout=@ByteArray(\0\0\0\xff\0\0\0\0\0\0\0\x2\0\0\0\xc3\0\0\x5\x94\x1\0\0\0\x1\0\0\0\0\x1) -window\nWave_2\splitters\wholeSplitter\layout=@ByteArray(\0\0\0\xff\0\0\0\0\0\0\0\x3\0\0\x1\xe\0\0\x2\x80\0\0\0\xc8\x1\0\0\0\x6\x1\0\0\0\x1) -window\nWave_2\splitters\middleSplitter\layout=@ByteArray(\0\0\0\xff\0\0\0\0\0\0\0\x2\0\0\0\x4\0\0\0\f\x1\0\0\0\x6\x1\0\0\0\x2) -window\InteractiveConsole_3\layout="@ByteArray(\0\0\0\xff\0\x3\x14Q\xfd\0\0\0\0\0\0\x4\xf6\0\0\x1s\0\0\0\x4\0\0\0\x4\0\0\0\b\0\0\0\b\xfc\0\0\0\x2\0\0\0\x2\0\0\0\x6\0\0\0\"\0t\0o\0o\0l\0\x42\0\x61\0r\0V\0i\0\x65\0w\0S\0w\0i\0t\0\x63\0h\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x1a\0t\0o\0o\0l\0\x42\0\x61\0r\0S\0\x65\0\x61\0r\0\x63\0h\x1\0\0\0?\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\"\0t\0o\0o\0l\0\x42\0\x61\0r\0S\0t\0r\0u\0\x63\0t\0V\0i\0\x65\0w\x1\0\0\x1;\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x16\0t\0o\0o\0l\0\x42\0\x61\0r\0G\0o\0T\0o\x1\0\0\x2\xdf\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0$\0t\0o\0o\0l\0\x42\0\x61\0r\0R\0u\0l\0\x65\0\x44\0i\0s\0p\0l\0\x61\0y\x1\0\0\x3`\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x16\0t\0o\0o\0l\0\x42\0\x61\0r\0R\0u\0l\0\x65\x1\0\0\x4\x11\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x3\0\0\0\x1\0\0\0\x32\0V\0g\0i\0\x66\0 \0I\0n\0t\0\x65\0r\0\x61\0\x63\0t\0i\0v\0\x65\0 \0T\0o\0o\0l\0 \0\x42\0\x61\0r\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0)" -window\InteractiveConsole_3\geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x1\0\0\0\0\0\0\0\0\0\x1b\0\0\x4\xf5\0\0\x1\xd8\0\0\0\0\0\0\0\x1b\0\0\x4\xf5\0\0\x1\xd8\0\0\0\0\0\0) -window\InteractiveConsole_3\menubar=true -window\InteractiveConsole_3\splitters\splitter\layout=@ByteArray(\0\0\0\xff\0\0\0\0\0\0\0\x2\0\0\x1\xf\xff\xff\xff\xff\x1\0\0\0\x6\x1\0\0\0\x1) +Verdi_1\qBaseWindowRestoreStateGroup\layout_to_restore\geometry_width=1918 +Verdi_1\qBaseWindowRestoreStateGroup\layout_to_restore\geometry_height=778 +Verdi_1\qBaseWindowNextStateGroup\6\qDockerWindow_restoreNewChildState=true +Verdi_1\qBaseWindowNextStateGroup\6\qBaseDockWidgetGroup\widgetDock_%3CInst._Tree%3E\isVisible=false +Verdi_1\qBaseWindowNextStateGroup\6\qBaseDockWidgetGroup\widgetDock_%3CMessage%3E\isVisible=false +Verdi_1\qBaseWindowNextStateGroup\6\qBaseDockWidgetGroup\widgetDock_MTB_SOURCE_TAB_1\isVisible=false +Verdi_1\qBaseWindowNextStateGroup\6\qBaseDockWidgetGroup\widgetDock_%3CSignal_List%3E\isVisible=false +Verdi_1\qBaseWindowNextStateGroup\6\qBaseDockWidgetGroup\widgetDock_%3CDecl._Tree%3E\isVisible=false +Verdi_1\qBaseWindowNextStateGroup\6\qBaseDockWidgetGroup\windowDock_OneSearch\isNestedWindow=1 +Verdi_1\qBaseWindowNextStateGroup\6\qBaseDockWidgetGroup\windowDock_OneSearch\isVisible=false +Verdi_1\qBaseWindowNextStateGroup\6\qBaseDockWidgetGroup\windowDock_nWave_2\isNestedWindow=1 +Verdi_1\qBaseWindowNextStateGroup\6\qBaseDockWidgetGroup\windowDock_nWave_2\isVisible=true +Verdi_1\qBaseWindowNextStateGroup\6\qBaseDockWidgetGroup\windowDock_nWave_2\SELECTION_MESSAGE_TOOLBAR=false +Verdi_1\qBaseWindowNextStateGroup\6\qBaseDockWidgetGroup\windowDock_nWave_2\qBaseWindowBeMax=1 +Verdi_1\qBaseWindowNextStateGroup\6\qBaseDockWidgetGroup\windowDock_nWave_2\qBaseWindowBeFix=1 +Verdi_1\qBaseWindowNextStateGroup\6\qBaseDockWidgetGroup\windowDock_nWave_2\dockIsFloating=false +Verdi_1\qBaseWindowNextStateGroup\6\ProductVersion=201809 +Verdi_1\qBaseWindowNextStateGroup\6\Layout="@ByteArray(\0\0\0\xff\0\0\0\x6\xfd\0\0\0\x2\0\0\0\x2\0\0\a~\0\0\x1[\xfc\x1\0\0\0\x3\xfc\0\0\0\0\0\0\x2u\0\0\0\0\0\xff\xff\xff\xfa\0\0\0\0\x1\0\0\0\x2\xfb\0\0\0.\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0I\0n\0s\0t\0.\0_\0T\0r\0\x65\0\x65\0>\0\0\0\0\0\xff\xff\xff\xff\0\0\0V\0\xff\xff\xff\xfb\0\0\0.\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0\x44\0\x65\0\x63\0l\0.\0_\0T\0r\0\x65\0\x65\0>\0\0\0\0\0\xff\xff\xff\xff\0\0\0V\0\xff\xff\xff\xfb\0\0\0\x30\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0S\0i\0g\0n\0\x61\0l\0_\0L\0i\0s\0t\0>\0\0\0\0\xe9\0\0\0\xc6\0\0\0k\0\0\0k\xfb\0\0\0\x36\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0M\0T\0\x42\0_\0S\0O\0U\0R\0\x43\0\x45\0_\0T\0\x41\0\x42\0_\0\x31\0\0\0\x2{\0\0\x5\x3\0\0\0k\0\xff\xff\xff\0\0\0\x3\0\0\a~\0\0\x1[\xfc\x1\0\0\0\x1\xfc\0\0\0\0\0\0\a~\0\0\x1-\0\xff\xff\xff\xfa\0\0\0\x2\x1\0\0\0\x3\xfb\0\0\0(\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0<\0M\0\x65\0s\0s\0\x61\0g\0\x65\0>\0\0\0\0\0\xff\xff\xff\xff\0\0\0\xa0\0\xff\xff\xff\xfb\0\0\0(\0w\0i\0n\0\x64\0o\0w\0\x44\0o\0\x63\0k\0_\0O\0n\0\x65\0S\0\x65\0\x61\0r\0\x63\0h\0\0\0\0\0\xff\xff\xff\xff\0\0\x2,\0\xff\xff\xff\xfb\0\0\0$\0w\0i\0n\0\x64\0o\0w\0\x44\0o\0\x63\0k\0_\0n\0W\0\x61\0v\0\x65\0_\0\x32\x1\0\0\0\0\xff\xff\xff\xff\0\0\x1-\0\xff\xff\xff\0\0\a~\0\0\0\0\0\0\0\x4\0\0\0\x4\0\0\0\b\0\0\0\b\xfc\0\0\0\x6\0\0\0\x2\0\0\0\x10\0\0\0.\0H\0\x42\0_\0I\0M\0P\0O\0R\0T\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0(\0H\0\x42\0_\0N\0\x45\0W\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0$\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0(\0H\0\x42\0_\0S\0I\0G\0N\0\x41\0L\0_\0P\0\x41\0N\0\x45\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0~\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0$\0H\0\x42\0_\0M\0U\0L\0T\0I\0_\0T\0\x41\0\x42\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0\xa2\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0*\0H\0\x42\0_\0\x45\0\x44\0I\0T\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0\xc6\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0$\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\x1\0\0\0\xea\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0,\0H\0\x42\0_\0T\0R\0\x41\0\x43\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\x1\x18\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0.\0H\0\x42\0_\0S\0O\0U\0R\0\x43\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\x2/\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0,\0t\0o\0o\0l\0\x62\0\x61\0r\0H\0\x42\0_\0T\0O\0G\0G\0L\0\x45\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x3\x1\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x32\0t\0o\0o\0l\0\x62\0\x61\0r\0H\0\x42\0_\0\x45\0M\0U\0L\0\x41\0T\0I\0O\0N\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x2\xbb\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x30\0t\0o\0o\0l\0\x62\0\x61\0r\0H\0\x42\0_\0P\0R\0O\0\x44\0T\0Y\0P\0\x45\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x3\x16\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0<\0\x41\0\x42\0V\0_\0\x41\0\x44\0\x44\0_\0T\0\x45\0M\0P\0O\0R\0\x41\0R\0Y\0_\0\x41\0S\0S\0\x45\0R\0T\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x2\xe8\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x1e\0U\0V\0M\0_\0\x41\0W\0\x41\0R\0\x45\0_\0\x44\0\x45\0\x42\0U\0G\0\0\0\x3\f\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0 \0V\0\x43\0_\0\x41\0P\0P\0S\0_\0T\0O\0O\0L\0_\0\x42\0O\0X\x1\0\0\x3\x1\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x14\0L\0O\0G\0_\0V\0I\0\x45\0W\0\x45\0R\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0$\0\x41\0M\0S\0_\0\x43\0O\0N\0\x46\0I\0G\0_\0T\0O\0O\0L\0\x42\0\x41\0R\x1\0\0\x3%\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x3\0\0\0\x30\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0&\0H\0\x42\0_\0\x42\0\x41\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x1\xfb\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x32\0t\0o\0o\0l\0\x42\0\x61\0r\0\x46\0o\0r\0m\0\x61\0l\0V\0\x65\0r\0i\0\x66\0i\0\x63\0\x61\0t\0i\0o\0n\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x4\0\0\0>\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0R\0\x45\0W\0I\0N\0\x44\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0R\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0R\0\x45\0W\0I\0N\0\x44\0_\0U\0N\0\x44\0O\0_\0R\0\x45\0\x44\0O\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\x1\x5\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0@\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0R\0\x45\0V\0\x45\0R\0S\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\x1\x95\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x38\0H\0\x42\0_\0P\0O\0W\0\x45\0R\0_\0T\0R\0\x41\0\x43\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0:\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0V\0S\0I\0M\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0:\0N\0O\0V\0\x41\0S\0_\0\x45\0M\0U\0L\0\x41\0T\0I\0O\0N\0_\0\x44\0\x45\0\x42\0U\0G\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0\x1a\0\x43\0V\0G\0_\0\x43\0\x45\0R\0_\0P\0\x41\0N\0\x45\0L\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0)" +Verdi_1\qBaseWindowNextStateGroup\6\isNestedWindow=0 +Verdi_1\qBaseWindowNextStateGroup\6\isVisible=true +Verdi_1\qBaseWindowNextStateGroup\6\size=@Size(1918 778) +Verdi_1\qBaseWindowNextStateGroup\6\geometry_x=-10 +Verdi_1\qBaseWindowNextStateGroup\6\geometry_y=20 +Verdi_1\qBaseWindowNextStateGroup\6\geometry_width=1918 +Verdi_1\qBaseWindowNextStateGroup\6\geometry_height=778 [qBaseWindow_saveRestoreSession_group] 10=/home/ICer/ic_prjs/mc/IC_PRJ/sim/verdiLog/novas_autosave.ses @@ -630,5 +320,17 @@ window\InteractiveConsole_3\splitters\splitter\layout=@ByteArray(\0\0\0\xff\0\0\ [qDockerWindow_C] Verdi_1\position.x=-10 Verdi_1\position.y=20 -Verdi_1\width=1914 -Verdi_1\height=774 +Verdi_1\width=1918 +Verdi_1\height=778 + +[QwMainWindow] +window\nWave_2\layout="@ByteArray(\0\0\0\xff\0\x3\x14Q\xfd\0\0\0\0\0\0\a~\0\0\x2o\0\0\0\x4\0\0\0\x4\0\0\0\b\0\0\0\b\xfc\0\0\0\x2\0\0\0\x2\0\0\0\f\0\0\0\x12\0W\0\x41\0V\0\x45\0_\0O\0P\0\x45\0N\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x12\0W\0\x41\0V\0\x45\0_\0\x45\0\x44\0I\0T\x1\0\0\0?\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x16\0W\0\x41\0V\0\x45\0_\0\x43\0U\0R\0S\0O\0R\x1\0\0\0\xb4\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x12\0W\0\x41\0V\0\x45\0_\0V\0I\0\x45\0W\x1\0\0\x2,\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\"\0W\0\x41\0V\0\x45\0_\0S\0\x45\0\x41\0R\0\x43\0H\0_\0\x45\0V\0\x45\0N\0T\x1\0\0\x2\x86\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x1e\0W\0\x41\0V\0\x45\0_\0R\0\x45\0P\0L\0\x41\0Y\0_\0S\0I\0M\0\0\0\x2\xcb\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x12\0W\0\x41\0V\0\x45\0_\0G\0O\0T\0O\x1\0\0\x3\"\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0,\0W\0\x41\0V\0\x45\0_\0G\0O\0T\0O\0_\0N\0\x41\0M\0\x45\0\x44\0_\0M\0\x41\0R\0K\0\x45\0R\0\0\0\x3\x32\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0 \0W\0\x41\0V\0\x45\0_\0T\0R\0\x41\0N\0S\0\x41\0\x43\0T\0I\0O\0N\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0*\0W\0\x41\0V\0\x45\0_\0\x45\0X\0P\0L\0O\0R\0\x45\0_\0P\0R\0O\0P\0\x45\0R\0T\0Y\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0 \0W\0\x41\0V\0\x45\0_\0\x46\0I\0N\0\x44\0_\0S\0I\0G\0N\0\x41\0L\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x18\0W\0\x41\0V\0\x45\0_\0P\0R\0I\0M\0\x41\0R\0Y\0\0\0\x3`\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0\x32\0S\0\x45\0L\0\x45\0\x43\0T\0I\0O\0N\0_\0M\0\x45\0S\0S\0\x41\0G\0\x45\0_\0T\0O\0O\0L\0\x42\0\x41\0R\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0)" +window\nWave_2\geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x1\0\0\0\0\0\0\0\0\0\x1b\0\0\a}\0\0\x2\xbb\0\0\0\0\0\0\0\x1b\0\0\a}\0\0\x2\xbb\0\0\0\0\0\0) +window\nWave_2\menubar=true +window\nWave_2\splitters\splitter_5\layout=@ByteArray(\0\0\0\xff\0\0\0\0\0\0\0\x2\0\0\0\x3\0\0\0\xce\x1\0\0\0\x1\0\0\0\0\x2) +window\nWave_2\splitters\splitter_2\layout=@ByteArray(\0\0\0\xff\0\0\0\0\0\0\0\x2\0\0\0\xe3\0\0\x6\x98\x1\0\0\0\x1\0\0\0\0\x1) +window\nWave_2\splitters\splitter\layout=@ByteArray(\0\0\0\xff\0\0\0\0\0\0\0\x3\0\0\0$\0\0\0\0\0\0\x6q\x1\0\0\0\x1\0\0\0\0\x1) +window\nWave_2\splitters\Pane_Upper\layout=@ByteArray(\0\0\0\xff\0\0\0\0\0\0\0\x2\0\0\0\xe3\0\0\x6\x98\x1\0\0\0\x1\0\0\0\0\x1) +window\nWave_2\splitters\splitter_3\layout=@ByteArray(\0\0\0\xff\0\0\0\0\0\0\0\x2\0\0\0$\0\0\x6q\x1\0\0\0\x1\0\0\0\0\x1) +window\nWave_2\splitters\wholeSplitter\layout=@ByteArray(\0\0\0\xff\0\0\0\0\0\0\0\x3\0\0\x1\xe\0\0\x2\x80\0\0\0\xc8\x1\0\0\0\x6\x1\0\0\0\x1) +window\nWave_2\splitters\middleSplitter\layout=@ByteArray(\0\0\0\xff\0\0\0\0\0\0\0\x2\0\0\0\x4\0\0\0\f\x1\0\0\0\x6\x1\0\0\0\x2) diff --git a/sim/novas.rc b/sim/novas.rc index 29a06aa..7fba137 100644 --- a/sim/novas.rc +++ b/sim/novas.rc @@ -275,14 +275,6 @@ bScpecifyCellNameCase = False bSpecifyPinNameCase = False CellNameToCase = PinNameToCase = -[InteractiveDebug] -tbvLocalWatchArrayLimit = 50 -Watch_0 = 150 80 80 0 -Watch_1 = 150 80 80 306 -Watch_2 = 150 80 80 200 -Watch_3 = 150 80 80 200 -Watch_4 = 150 80 80 200 -Watch_5 = 150 80 80 200 [Language] EditWindow_Font = COURIER12 Background = ID_WHITE @@ -376,8 +368,8 @@ saveWaveformStat = TRUE savePropStat = FALSE savePropDtl = TRUE [QtDialog] -qWaveSignalDialog = 547,204,800,479 -QwUserAskDlg = 795,385,324,134 +qWaveSignalDialog = 549,206,800,479 +QwUserAskDlg = 797,387,324,134 [Relationship] hideRecursiceNode = FALSE [Session Cache] @@ -442,6 +434,7 @@ vcs_mixOption = -vhdlrun "-vhpi debussy:FSDBDumpCmd" scs_mixPath = scsim scs_mixOption = -vhpi debussy:FSDBDumpCmd vcs_svPath = simv +vcs_svOption = simType = vcssv thirdpartyIdx = -1 interactiveDebugging = FALSE @@ -450,11 +443,8 @@ iscCmdSep = FALSE ScsDebugAll = FALSE NoAppendOption = FALSE invokeSimPath = work -smartlog = TRUE -vcs_svOption = -sml=verdi [SimulationPlus2] eventDumpUnfinish = FALSE -dumpPowerRoot = FALSE [Source] wordWrapOn = TRUE viewReuse = TRUE @@ -483,7 +473,6 @@ nLineSize = 1024 verbose_progress = FALSE [TestBenchBrowser] -showUVMDynamicHierTreeWin = FALSE -DataViewTooltip = TRUE [Text] hdlTypeName = blue4 hdlLibrary = blue4 @@ -567,7 +556,7 @@ pdmlMacro = ID_BLACK font = COURIER12 annotFont = Helvetica_M_R_10 [Text.1] -viewport = -10 20 1914 774 45 +viewport = -10 20 1918 778 45 [TextPrinter] Orientation = Landscape Indicator = FALSE @@ -650,44 +639,6 @@ Button2 = "Next 1000 Time" "#1000 $stop;.\n" Button1 = "Dump All Signals" "$fsdbDumpvars;\n" [VIA] viaLogViewerDefaultRuleOneSearchForm = "share/VIA/Apps/PredefinedRules/Misc/Onesearch_rule.rc" -viaLogViewerDefaultRuleInterForm = "share/VIA/Apps/PredefinedRules/UVM_OVM_i_rule.rc" -[VIA.interactiveDebug.preference] -DefaultDisplayTimeUnit = "1.000000ns" -DefaultLogTimeUnit = "1.000000ns" -[VIA.interactiveDebug.preference.vgifColumnSettingRC] -[VIA.interactiveDebug.preference.vgifColumnSettingRC.setting0] -parRuleSets = "/home/synopsys/verdi/Verdi_O-2018.09-SP2/share/VIA/Apps/PredefinedParRules/par_rule_OVM.rc /home/synopsys/verdi/Verdi_O-2018.09-SP2/share/VIA/Apps/PredefinedParRules/par_rule_UVM.rc /home/synopsys/verdi/Verdi_O-2018.09-SP2/share/VIA/Apps/PredefinedParRule\ -s/par_rule_LP.rc /home/synopsys/verdi/Verdi_O-2018.09-SP2/share/VIA/Apps/PredefinedParRules/par_rule_VCS.rc " -[VIA.interactiveDebug.preference.vgifColumnSettingRC.setting0.column0] -name = Time -width = 60 -visualIndex = 0 -isHidden = FALSE -isUserChangeColumnVisible = FALSE -[VIA.interactiveDebug.preference.vgifColumnSettingRC.setting0.column1] -name = Type -width = 60 -visualIndex = 3 -isHidden = TRUE -isUserChangeColumnVisible = FALSE -[VIA.interactiveDebug.preference.vgifColumnSettingRC.setting0.column2] -name = Message -width = 2000 -visualIndex = 4 -isHidden = FALSE -isUserChangeColumnVisible = FALSE -[VIA.interactiveDebug.preference.vgifColumnSettingRC.setting0.column3] -name = Code -width = 60 -visualIndex = 2 -isHidden = FALSE -isUserChangeColumnVisible = FALSE -[VIA.interactiveDebug.preference.vgifColumnSettingRC.setting0.column4] -name = Severity -width = 60 -visualIndex = 1 -isHidden = FALSE -isUserChangeColumnVisible = FALSE [VIA.oneSearch.preference] DefaultDisplayTimeUnit = "1.000000ns" DefaultLogTimeUnit = "1.000000ns" @@ -701,31 +652,29 @@ visualIndex = 1 isHidden = TRUE isUserChangeColumnVisible = FALSE [VIA.oneSearch.preference.vgifColumnSettingRC.setting0.column1] -name = Type -width = 60 -visualIndex = 3 -isHidden = TRUE -isUserChangeColumnVisible = FALSE -[VIA.oneSearch.preference.vgifColumnSettingRC.setting0.column2] -name = Message -width = 2000 -visualIndex = 4 -isHidden = FALSE -isUserChangeColumnVisible = FALSE -[VIA.oneSearch.preference.vgifColumnSettingRC.setting0.column3] -name = Time -width = 60 -visualIndex = 0 -isHidden = TRUE -isUserChangeColumnVisible = FALSE -[VIA.oneSearch.preference.vgifColumnSettingRC.setting0.column4] name = Code width = 60 visualIndex = 2 isHidden = TRUE isUserChangeColumnVisible = FALSE -[VIA.parRule] -parRulePathInterForm = "" +[VIA.oneSearch.preference.vgifColumnSettingRC.setting0.column2] +name = Type +width = 60 +visualIndex = 3 +isHidden = TRUE +isUserChangeColumnVisible = FALSE +[VIA.oneSearch.preference.vgifColumnSettingRC.setting0.column3] +name = Message +width = 2000 +visualIndex = 4 +isHidden = FALSE +isUserChangeColumnVisible = FALSE +[VIA.oneSearch.preference.vgifColumnSettingRC.setting0.column4] +name = Time +width = 60 +visualIndex = 0 +isHidden = TRUE +isUserChangeColumnVisible = FALSE [Vi] ViFont = "Clean 14" ViBG = white @@ -741,8 +690,8 @@ ovaForbidSuccessColor = -c ID_GREEN5 SigGroupRuleFile = DisplayFileName = FALSE waveform_vertical_scroll_bar = TRUE -getSignalForm = 547 167 800 479 164 381 390 89 -viewPort = 0 27 1914 590 285 195 +getSignalForm = 549 169 800 479 164 381 390 89 +viewPort = 0 27 1918 673 227 36 signalSpacing = 5 digitalSignalHeight = 15 analogSignalHeight = 98 @@ -1342,7 +1291,7 @@ AddImportArgument = FALSE LineBreakWithScope = TRUE StopAfterCompileOption = -s [wave.0] -viewPort = 0 27 1914 590 285 195 +viewPort = 0 27 1918 673 227 36 [wave.1] viewPort = 127 219 960 332 100 65 [wave.2] diff --git a/sim/novas_dump.log b/sim/novas_dump.log index 488da63..f1884ad 100644 --- a/sim/novas_dump.log +++ b/sim/novas_dump.log @@ -2,158 +2,154 @@ # log primitive debug message of FSDB dumping # # This is for R&D to analyze when there are issues happening when FSDB dump # ####################################################################################### -ANF: vcsd_get_serial_mode_status('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vcsd_get_serial_mode_status') -ANF: vcsd_enable_sva_success_callback('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vcsd_enable_sva_success_callback') -ANF: vcsd_disable_sva_success_callback('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vcsd_disable_sva_success_callback') -ANF: vcsd_get_thread_id('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vcsd_get_thread_id') -ANF: vcsd_get_power_scope_name('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vcsd_get_power_scope_name') -ANF: vcsd_begin_no_value_var_info('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vcsd_begin_no_value_var_info') -ANF: vcsd_end_no_value_var_info('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vcsd_end_no_value_var_info') -ANF: vcsd_remove_xprop_merge_mode_callback('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vcsd_remove_xprop_merge_mode_callback') -ANF: vcsd_node_check_native_callback('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vcsd_node_check_native_callback') -ANF: vcsd_node_add_native_callback('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vcsd_node_add_native_callback') -ANF: vcsdIsNativeVc('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vcsdIsNativeVc') -ANF: vhpi_get_cb_info('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vhpi_get_cb_info') -ANF: vhpi_free_handle('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vhpi_free_handle') -ANF: vhpi_fetch_vcsd_handle('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vhpi_fetch_vcsd_handle') -ANF: vhpi_fetch_vpi_handle('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vhpi_fetch_vpi_handle') -ANF: vhpi_has_verilog_parent('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vhpi_has_verilog_parent') -ANF: vhpi_is_verilog_scope('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vhpi_is_verilog_scope') -ANF: scsd_xprop_is_enabled('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: scsd_xprop_is_enabled') -ANF: scsd_xprop_sig_is_promoted('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: scsd_xprop_sig_is_promoted') -ANF: scsd_xprop_int_xvalue('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: scsd_xprop_int_xvalue') -ANF: scsd_xprop_bool_xvalue('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: scsd_xprop_bool_xvalue') -ANF: scsd_xprop_enum_xvalue('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: scsd_xprop_enum_xvalue') -ANF: scsd_xprop_register_merge_mode_cb('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: scsd_xprop_register_merge_mode_cb') -ANF: scsd_xprop_delete_merge_mode_cb('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: scsd_xprop_delete_merge_mode_cb') -ANF: scsd_xprop_get_merge_mode('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: scsd_xprop_get_merge_mode') -ANF: scsd_thread_get_info('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: scsd_thread_get_info') -ANF: scsd_thread_vc_init('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: scsd_thread_vc_init') -ANF: scsd_master_set_delta_sync_cbk('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: scsd_master_set_delta_sync_cbk') -ANF: scsd_fgp_get_fsdb_cores('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: scsd_fgp_get_fsdb_cores') -ANF: msvEnableDumpingMode('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: msvEnableDumpingMode') -ANF: msvGetVersion('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: msvGetVersion') -ANF: msvGetInstProp('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: msvGetInstProp') -ANF: msvIsSpiceEngineReady('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: msvIsSpiceEngineReady') -ANF: msvSetAddProbeCallback('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: msvSetAddProbeCallback') -ANF: msvGetInstHandle('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: msvGetInstHandle') -ANF: msvGetProbeByInst('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: msvGetProbeByInst') -ANF: msvGetSigHandle('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: msvGetSigHandle') -ANF: msvGetProbeBySig('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: msvGetProbeBySig') -ANF: msvGetProbeInfo('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: msvGetProbeInfo') -ANF: msvRelease('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: msvRelease') -ANF: msvSetVcCallbackFunc('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: msvSetVcCallbackFunc') -ANF: msvCheckVcCallback('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: msvCheckVcCallback') -ANF: msvAddVcCallback('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: msvAddVcCallback') -ANF: msvRemoveVcCallback('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: msvRemoveVcCallback') -ANF: msvGetLatestValue('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: msvGetLatestValue') -ANF: msvSetEndofSimCallback('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: msvSetEndofSimCallback') -ANF: msvIgnoredProbe('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: msvIgnoredProbe') -ANF: msvGetThruNetInfo('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: msvGetThruNetInfo') -ANF: msvFreeThruNetInfo('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: msvFreeThruNetInfo') -ANF: PI_ace_get_output_time_unit('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: PI_ace_get_output_time_unit') -ANF: PI_ace_sim_sync('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: PI_ace_sim_sync') -ANF: msvGetRereadInitFile('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: msvGetRereadInitFile') -ANF: msvSetBeforeRereadCallback('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: msvSetBeforeRereadCallback') -ANF: msvSetAfterRereadCallback('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: msvSetAfterRereadCallback') -ANF: msvSetForceCallback('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: msvSetForceCallback') -ANF: msvSetReleaseCallback('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: msvSetReleaseCallback') -ANF: msvGetForceStatus('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: msvGetForceStatus') -ANF: vdi_fn_trigger_native_init_force('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vdi_fn_trigger_native_init_force') -ANF: vdi_set_native_callback('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vdi_set_native_callback') -ANF: vdi_fn_check_native_callback('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vdi_fn_check_native_callback') -ANF: vdi_fn_add_native_callback('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vdi_fn_add_native_callback') -ANF: vhdi_dt_get_type('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vhdi_dt_get_type') -ANF: vhdi_dt_get_key('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vhdi_dt_get_key') -ANF: vhdi_dt_get_vhdl_enum_info('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vhdi_dt_get_vhdl_enum_info') -ANF: vhdi_dt_get_vhdl_physical_info('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vhdi_dt_get_vhdl_physical_info') -ANF: vhdi_dt_get_vhdl_array_info('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vhdi_dt_get_vhdl_array_info') -ANF: vhdi_dt_get_vhdl_record_info('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vhdi_dt_get_vhdl_record_info') -ANF: vhdi_def_traverse_module('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vhdi_def_traverse_module') -ANF: vhdi_def_traverse_scope('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vhdi_def_traverse_scope') -ANF: vhdi_def_traverse_variable('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vhdi_def_traverse_variable') -ANF: vhdi_def_get_module_id_by_vhpi('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vhdi_def_get_module_id_by_vhpi') -ANF: vhdi_def_get_handle_by_module_id('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vhdi_def_get_handle_by_module_id') -ANF: vhdi_def_get_variable_info_by_vhpi('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vhdi_def_get_variable_info_by_vhpi') -ANF: vhdi_def_free('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vhdi_def_free') -ANF: vhdi_ist_traverse_scope('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vhdi_ist_traverse_scope') -ANF: vhdi_ist_traverse_variable('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vhdi_ist_traverse_variable') -ANF: vhdi_ist_convert_by_vhpi('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vhdi_ist_convert_by_vhpi') -ANF: vhdi_ist_clone('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vhdi_ist_clone') -ANF: vhdi_ist_free('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vhdi_ist_free') -ANF: vhdi_ist_hash_key('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vhdi_ist_hash_key') -ANF: vhdi_ist_compare('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vhdi_ist_compare') -ANF: vhdi_ist_get_value_addr('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vhdi_ist_get_value_addr') -ANF: vhdi_set_scsd_callback('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vhdi_set_scsd_callback') -ANF: vhdi_cbk_set_force_callback('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vhdi_cbk_set_force_callback') -ANF: vhdi_trigger_init_force('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vhdi_trigger_init_force') -ANF: vhdi_ist_check_scsd_callback('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vhdi_ist_check_scsd_callback') -ANF: vhdi_ist_add_scsd_callback('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vhdi_ist_add_scsd_callback') -ANF: vhdi_ist_remove_scsd_callback('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vhdi_ist_remove_scsd_callback') -ANF: vhdi_ist_get_scsd_user_data('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vhdi_ist_get_scsd_user_data') -ANF: vhdi_add_time_change_callback('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vhdi_add_time_change_callback') -ANF: vhdi_get_real_value_by_value_addr('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vhdi_get_real_value_by_value_addr') -ANF: vhdi_get_64_value_by_value_addr('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vhdi_get_64_value_by_value_addr') -ANF: vhdi_xprop_inst_is_promoted('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vhdi_xprop_inst_is_promoted') -ANF: vdi_ist_convert_by_vhdi('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vdi_ist_convert_by_vhdi') -ANF: vhdi_ist_get_module_id('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vhdi_ist_get_module_id') -ANF: vhdi_refine_foreign_scope_type('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vhdi_refine_foreign_scope_type') -ANF: vhdi_flush_callback('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vhdi_flush_callback') -ANF: vhdi_set_orig_name('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vhdi_set_orig_name') -ANF: vhdi_set_dump_pt('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vhdi_set_dump_pt') -ANF: vhdi_get_fsdb_option('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vhdi_get_fsdb_option') -ANF: vhdi_fgp_get_mode('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vhdi_fgp_get_mode') -ANF: vhdi_node_register_composite_var('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vhdi_node_register_composite_var') -ANF: vhdi_node_analysis('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vhdi_node_analysis') -ANF: vhdi_node_id('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vhdi_node_id') -ANF: vhdi_node_ist_check_scsd_callback('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vhdi_node_ist_check_scsd_callback') -ANF: vhdi_node_ist_add_scsd_callback('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vhdi_node_ist_add_scsd_callback') -ANF: vhdi_node_ist_get_value_addr('/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv: undefined symbol: vhdi_node_ist_get_value_addr') +ANF: vcsd_get_serial_mode_status('simv: undefined symbol: vcsd_get_serial_mode_status') +ANF: vcsd_enable_sva_success_callback('simv: undefined symbol: vcsd_enable_sva_success_callback') +ANF: vcsd_disable_sva_success_callback('simv: undefined symbol: vcsd_disable_sva_success_callback') +ANF: vcsd_get_thread_id('simv: undefined symbol: vcsd_get_thread_id') +ANF: vcsd_get_power_scope_name('simv: undefined symbol: vcsd_get_power_scope_name') +ANF: vcsd_begin_no_value_var_info('simv: undefined symbol: vcsd_begin_no_value_var_info') +ANF: vcsd_end_no_value_var_info('simv: undefined symbol: vcsd_end_no_value_var_info') +ANF: vcsd_remove_xprop_merge_mode_callback('simv: undefined symbol: vcsd_remove_xprop_merge_mode_callback') +ANF: vcsd_node_check_native_callback('simv: undefined symbol: vcsd_node_check_native_callback') +ANF: vcsd_node_add_native_callback('simv: undefined symbol: vcsd_node_add_native_callback') +ANF: vcsdIsNativeVc('simv: undefined symbol: vcsdIsNativeVc') +ANF: vhpi_get_cb_info('simv: undefined symbol: vhpi_get_cb_info') +ANF: vhpi_free_handle('simv: undefined symbol: vhpi_free_handle') +ANF: vhpi_fetch_vcsd_handle('simv: undefined symbol: vhpi_fetch_vcsd_handle') +ANF: vhpi_fetch_vpi_handle('simv: undefined symbol: vhpi_fetch_vpi_handle') +ANF: vhpi_has_verilog_parent('simv: undefined symbol: vhpi_has_verilog_parent') +ANF: vhpi_is_verilog_scope('simv: undefined symbol: vhpi_is_verilog_scope') +ANF: scsd_xprop_is_enabled('simv: undefined symbol: scsd_xprop_is_enabled') +ANF: scsd_xprop_sig_is_promoted('simv: undefined symbol: scsd_xprop_sig_is_promoted') +ANF: scsd_xprop_int_xvalue('simv: undefined symbol: scsd_xprop_int_xvalue') +ANF: scsd_xprop_bool_xvalue('simv: undefined symbol: scsd_xprop_bool_xvalue') +ANF: scsd_xprop_enum_xvalue('simv: undefined symbol: scsd_xprop_enum_xvalue') +ANF: scsd_xprop_register_merge_mode_cb('simv: undefined symbol: scsd_xprop_register_merge_mode_cb') +ANF: scsd_xprop_delete_merge_mode_cb('simv: undefined symbol: scsd_xprop_delete_merge_mode_cb') +ANF: scsd_xprop_get_merge_mode('simv: undefined symbol: scsd_xprop_get_merge_mode') +ANF: scsd_thread_get_info('simv: undefined symbol: scsd_thread_get_info') +ANF: scsd_thread_vc_init('simv: undefined symbol: scsd_thread_vc_init') +ANF: scsd_master_set_delta_sync_cbk('simv: undefined symbol: scsd_master_set_delta_sync_cbk') +ANF: scsd_fgp_get_fsdb_cores('simv: undefined symbol: scsd_fgp_get_fsdb_cores') +ANF: msvEnableDumpingMode('simv: undefined symbol: msvEnableDumpingMode') +ANF: msvGetVersion('simv: undefined symbol: msvGetVersion') +ANF: msvGetInstProp('simv: undefined symbol: msvGetInstProp') +ANF: msvIsSpiceEngineReady('simv: undefined symbol: msvIsSpiceEngineReady') +ANF: msvSetAddProbeCallback('simv: undefined symbol: msvSetAddProbeCallback') +ANF: msvGetInstHandle('simv: undefined symbol: msvGetInstHandle') +ANF: msvGetProbeByInst('simv: undefined symbol: msvGetProbeByInst') +ANF: msvGetSigHandle('simv: undefined symbol: msvGetSigHandle') +ANF: msvGetProbeBySig('simv: undefined symbol: msvGetProbeBySig') +ANF: msvGetProbeInfo('simv: undefined symbol: msvGetProbeInfo') +ANF: msvRelease('simv: undefined symbol: msvRelease') +ANF: msvSetVcCallbackFunc('simv: undefined symbol: msvSetVcCallbackFunc') +ANF: msvCheckVcCallback('simv: undefined symbol: msvCheckVcCallback') +ANF: msvAddVcCallback('simv: undefined symbol: msvAddVcCallback') +ANF: msvRemoveVcCallback('simv: undefined symbol: msvRemoveVcCallback') +ANF: msvGetLatestValue('simv: undefined symbol: msvGetLatestValue') +ANF: msvSetEndofSimCallback('simv: undefined symbol: msvSetEndofSimCallback') +ANF: msvIgnoredProbe('simv: undefined symbol: msvIgnoredProbe') +ANF: msvGetThruNetInfo('simv: undefined symbol: msvGetThruNetInfo') +ANF: msvFreeThruNetInfo('simv: undefined symbol: msvFreeThruNetInfo') +ANF: PI_ace_get_output_time_unit('simv: undefined symbol: PI_ace_get_output_time_unit') +ANF: PI_ace_sim_sync('simv: undefined symbol: PI_ace_sim_sync') +ANF: msvGetRereadInitFile('simv: undefined symbol: msvGetRereadInitFile') +ANF: msvSetBeforeRereadCallback('simv: undefined symbol: msvSetBeforeRereadCallback') +ANF: msvSetAfterRereadCallback('simv: undefined symbol: msvSetAfterRereadCallback') +ANF: msvSetForceCallback('simv: undefined symbol: msvSetForceCallback') +ANF: msvSetReleaseCallback('simv: undefined symbol: msvSetReleaseCallback') +ANF: msvGetForceStatus('simv: undefined symbol: msvGetForceStatus') +ANF: vdi_fn_trigger_native_init_force('simv: undefined symbol: vdi_fn_trigger_native_init_force') +ANF: vdi_set_native_callback('simv: undefined symbol: vdi_set_native_callback') +ANF: vdi_fn_check_native_callback('simv: undefined symbol: vdi_fn_check_native_callback') +ANF: vdi_fn_add_native_callback('simv: undefined symbol: vdi_fn_add_native_callback') +ANF: vhdi_dt_get_type('simv: undefined symbol: vhdi_dt_get_type') +ANF: vhdi_dt_get_key('simv: undefined symbol: vhdi_dt_get_key') +ANF: vhdi_dt_get_vhdl_enum_info('simv: undefined symbol: vhdi_dt_get_vhdl_enum_info') +ANF: vhdi_dt_get_vhdl_physical_info('simv: undefined symbol: vhdi_dt_get_vhdl_physical_info') +ANF: vhdi_dt_get_vhdl_array_info('simv: undefined symbol: vhdi_dt_get_vhdl_array_info') +ANF: vhdi_dt_get_vhdl_record_info('simv: undefined symbol: vhdi_dt_get_vhdl_record_info') +ANF: vhdi_def_traverse_module('simv: undefined symbol: vhdi_def_traverse_module') +ANF: vhdi_def_traverse_scope('simv: undefined symbol: vhdi_def_traverse_scope') +ANF: vhdi_def_traverse_variable('simv: undefined symbol: vhdi_def_traverse_variable') +ANF: vhdi_def_get_module_id_by_vhpi('simv: undefined symbol: vhdi_def_get_module_id_by_vhpi') +ANF: vhdi_def_get_handle_by_module_id('simv: undefined symbol: vhdi_def_get_handle_by_module_id') +ANF: vhdi_def_get_variable_info_by_vhpi('simv: undefined symbol: vhdi_def_get_variable_info_by_vhpi') +ANF: vhdi_def_free('simv: undefined symbol: vhdi_def_free') +ANF: vhdi_ist_traverse_scope('simv: undefined symbol: vhdi_ist_traverse_scope') +ANF: vhdi_ist_traverse_variable('simv: undefined symbol: vhdi_ist_traverse_variable') +ANF: vhdi_ist_convert_by_vhpi('simv: undefined symbol: vhdi_ist_convert_by_vhpi') +ANF: vhdi_ist_clone('simv: undefined symbol: vhdi_ist_clone') +ANF: vhdi_ist_free('simv: undefined symbol: vhdi_ist_free') +ANF: vhdi_ist_hash_key('simv: undefined symbol: vhdi_ist_hash_key') +ANF: vhdi_ist_compare('simv: undefined symbol: vhdi_ist_compare') +ANF: vhdi_ist_get_value_addr('simv: undefined symbol: vhdi_ist_get_value_addr') +ANF: vhdi_set_scsd_callback('simv: undefined symbol: vhdi_set_scsd_callback') +ANF: vhdi_cbk_set_force_callback('simv: undefined symbol: vhdi_cbk_set_force_callback') +ANF: vhdi_trigger_init_force('simv: undefined symbol: vhdi_trigger_init_force') +ANF: vhdi_ist_check_scsd_callback('simv: undefined symbol: vhdi_ist_check_scsd_callback') +ANF: vhdi_ist_add_scsd_callback('simv: undefined symbol: vhdi_ist_add_scsd_callback') +ANF: vhdi_ist_remove_scsd_callback('simv: undefined symbol: vhdi_ist_remove_scsd_callback') +ANF: vhdi_ist_get_scsd_user_data('simv: undefined symbol: vhdi_ist_get_scsd_user_data') +ANF: vhdi_add_time_change_callback('simv: undefined symbol: vhdi_add_time_change_callback') +ANF: vhdi_get_real_value_by_value_addr('simv: undefined symbol: vhdi_get_real_value_by_value_addr') +ANF: vhdi_get_64_value_by_value_addr('simv: undefined symbol: vhdi_get_64_value_by_value_addr') +ANF: vhdi_xprop_inst_is_promoted('simv: undefined symbol: vhdi_xprop_inst_is_promoted') +ANF: vdi_ist_convert_by_vhdi('simv: undefined symbol: vdi_ist_convert_by_vhdi') +ANF: vhdi_ist_get_module_id('simv: undefined symbol: vhdi_ist_get_module_id') +ANF: vhdi_refine_foreign_scope_type('simv: undefined symbol: vhdi_refine_foreign_scope_type') +ANF: vhdi_flush_callback('simv: undefined symbol: vhdi_flush_callback') +ANF: vhdi_set_orig_name('simv: undefined symbol: vhdi_set_orig_name') +ANF: vhdi_set_dump_pt('simv: undefined symbol: vhdi_set_dump_pt') +ANF: vhdi_get_fsdb_option('simv: undefined symbol: vhdi_get_fsdb_option') +ANF: vhdi_fgp_get_mode('simv: undefined symbol: vhdi_fgp_get_mode') +ANF: vhdi_node_register_composite_var('simv: undefined symbol: vhdi_node_register_composite_var') +ANF: vhdi_node_analysis('simv: undefined symbol: vhdi_node_analysis') +ANF: vhdi_node_id('simv: undefined symbol: vhdi_node_id') +ANF: vhdi_node_ist_check_scsd_callback('simv: undefined symbol: vhdi_node_ist_check_scsd_callback') +ANF: vhdi_node_ist_add_scsd_callback('simv: undefined symbol: vhdi_node_ist_add_scsd_callback') +ANF: vhdi_node_ist_get_value_addr('simv: undefined symbol: vhdi_node_ist_get_value_addr') VCS compile option: - option[0]: /home/ICer/ic_prjs/mc/IC_PRJ/sim/simv - option[1]: -sml=verdi - option[2]: +fsdb+gate=off - option[3]: -ucli2Proc - option[4]: -ucli - option[5]: -l - option[6]: /home/ICer/ic_prjs/mc/IC_PRJ/sim/verdiLog/sim.log - option[7]: /home/synopsys/vcs-mx/O-2018.09-1/linux64/bin/vcs1 - option[8]: -Mcc=gcc - option[9]: -Mcplusplus=g++ - option[10]: -Masflags= - option[11]: -Mcfl= -pipe -fPIC -O -I/home/synopsys/vcs-mx/O-2018.09-1/include - option[12]: -Mxcflags= -pipe -fPIC -I/home/synopsys/vcs-mx/O-2018.09-1/include - option[13]: -Mldflags= -rdynamic - option[14]: -Mout=simv - option[15]: -Mamsrun= - option[16]: -Mvcsaceobjs= - option[17]: -Mobjects= /home/synopsys/vcs-mx/O-2018.09-1/linux64/lib/libvirsim.so /home/synopsys/vcs-mx/O-2018.09-1/linux64/lib/liberrorinf.so /home/synopsys/vcs-mx/O-2018.09-1/linux64/lib/libsnpsmalloc.so /home/synopsys/vcs-mx/O-2018.09-1/linux64/lib/libvfs.so - option[18]: -Mexternalobj= - option[19]: -Msaverestoreobj=/home/synopsys/vcs-mx/O-2018.09-1/linux64/lib/vcs_save_restore_new.o - option[20]: -Mcrt0= - option[21]: -Mcrtn= - option[22]: -Mcsrc= - option[23]: -Msyslibs=/home/synopsys/verdi/Verdi_O-2018.09-SP2/share/PLI/VCS/LINUX64/pli.a -ldl - option[24]: -Xvcs_run_simv=1 - option[25]: -timescale=1ns/1ps - option[26]: -full64 - option[27]: +vc - option[28]: +v2k - option[29]: -debug_access+all - option[30]: +vpi - option[31]: +vcsd1 - option[32]: +itf+/home/synopsys/vcs-mx/O-2018.09-1/linux64/lib/vcsdp_lite.tab - option[33]: -picarchive - option[34]: -P - option[35]: /home/synopsys/verdi/Verdi_O-2018.09-SP2/share/PLI/VCS/LINUX64/verdi.tab - option[36]: -fsdb - option[37]: -sverilog - option[38]: -gen_obj - option[39]: -f - option[40]: filelist.f - option[41]: -load - option[42]: /home/synopsys/verdi/Verdi_O-2018.09-SP2/share/PLI/VCS/LINUX64/libnovas.so:FSDBDumpCmd - option[43]: timescale=1ns/1ps + option[0]: simv + option[1]: +vc + option[2]: +v2k + option[3]: /home/synopsys/vcs-mx/O-2018.09-1/linux64/bin/vcs1 + option[4]: -Mcc=gcc + option[5]: -Mcplusplus=g++ + option[6]: -Masflags= + option[7]: -Mcfl= -pipe -fPIC -O -I/home/synopsys/vcs-mx/O-2018.09-1/include + option[8]: -Mxcflags= -pipe -fPIC -I/home/synopsys/vcs-mx/O-2018.09-1/include + option[9]: -Mldflags= -rdynamic + option[10]: -Mout=simv + option[11]: -Mamsrun= + option[12]: -Mvcsaceobjs= + option[13]: -Mobjects= /home/synopsys/vcs-mx/O-2018.09-1/linux64/lib/libvirsim.so /home/synopsys/vcs-mx/O-2018.09-1/linux64/lib/liberrorinf.so /home/synopsys/vcs-mx/O-2018.09-1/linux64/lib/libsnpsmalloc.so /home/synopsys/vcs-mx/O-2018.09-1/linux64/lib/libvfs.so + option[14]: -Mexternalobj= + option[15]: -Msaverestoreobj=/home/synopsys/vcs-mx/O-2018.09-1/linux64/lib/vcs_save_restore_new.o + option[16]: -Mcrt0= + option[17]: -Mcrtn= + option[18]: -Mcsrc= + option[19]: -Msyslibs=/home/synopsys/verdi/Verdi_O-2018.09-SP2/share/PLI/VCS/LINUX64/pli.a -ldl + option[20]: -Xvcs_run_simv=1 + option[21]: -timescale=1ns/1ps + option[22]: -full64 + option[23]: +vc + option[24]: +v2k + option[25]: -debug_access+all + option[26]: +vpi + option[27]: +vcsd1 + option[28]: +itf+/home/synopsys/vcs-mx/O-2018.09-1/linux64/lib/vcsdp_lite.tab + option[29]: -picarchive + option[30]: -P + option[31]: /home/synopsys/verdi/Verdi_O-2018.09-SP2/share/PLI/VCS/LINUX64/verdi.tab + option[32]: -fsdb + option[33]: -sverilog + option[34]: -gen_obj + option[35]: -f + option[36]: filelist.f + option[37]: -load + option[38]: /home/synopsys/verdi/Verdi_O-2018.09-SP2/share/PLI/VCS/LINUX64/libnovas.so:FSDBDumpCmd + option[39]: timescale=1ns/1ps Chronologic Simulation VCS Release O-2018.09-1_Full64 Linux 3.10.0-1160.53.1.el7.x86_64 #1 SMP Fri Jan 14 13:59:45 UTC 2022 x86_64 CPU cores: 8 @@ -173,255 +169,163 @@ maxproc 4096 (Special)Runtime environment variables: Runtime environment variables: -XDG_VTNR=1 -LC_PAPER=zh_CN.UTF-8 -SSH_AGENT_PID=3826 -XDG_SESSION_ID=1 +XDG_SESSION_ID=2 HOSTNAME=IC_EDA -LC_MONETARY=zh_CN.UTF-8 -NOVAS_SYNC_MOTIF_DISP= -IMSETTINGS_INTEGRATE_DESKTOP=yes +TERM_PROGRAM=vscode +UNAME=/bin/uname +SELINUX_ROLE_REQUESTED= +SCRNAME=vcs +VCS_DEPTH=0 SHELL=/bin/bash -VTE_VERSION=5204 -XDG_MENU_PREFIX=gnome- TERM=xterm-256color MAKEFLAGS= HISTSIZE=1000 -SPS_FONT_PATH=/home/synopsys/verdi/Verdi_O-2018.09-SP2/font +SSH_CLIENT=192.168.223.1 52776 22 QUESTASIM_HOME=/home/mentor/questasim -GNOME_TERMINAL_SCREEN=/org/gnome/Terminal/screen/83465594_02bf_4b80_a6ef_1d361b15e756 -LC_NUMERIC=zh_CN.UTF-8 -SPS_XFONT_PATH=/home/synopsys/verdi/Verdi_O-2018.09-SP2/XFont +SELINUX_USE_CURRENT_RANGE= +TERM_PROGRAM_VERSION=1.85.2 QTDIR=/usr/lib/qt-3.3 QTINC=/usr/lib/qt-3.3/include LC_ALL=C QT_GRAPHICSSYSTEM_CHECKED=1 -IMSETTINGS_MODULE=none USER=ICer LS_COLORS=rs=0:di=38;5;27:ln=38;5;51:mh=44;38;5;15:pi=40;38;5;11:so=38;5;13:do=38;5;5:bd=48;5;232;38;5;11:cd=48;5;232;38;5;3:or=48;5;232;38;5;9:mi=05;48;5;232;38;5;15:su=48;5;196;38;5;15:sg=48;5;11;38;5;16:ca=48;5;196;38;5;226:tw=48;5;10;38;5;16:ow=48;5;10;38;5;21:st=48;5;21;38;5;15:ex=38;5;34:*.tar=38;5;9:*.tgz=38;5;9:*.arc=38;5;9:*.arj=38;5;9:*.taz=38;5;9:*.lha=38;5;9:*.lz4=38;5;9:*.lzh=38;5;9:*.lzma=38;5;9:*.tlz=38;5;9:*.txz=38;5;9:*.tzo=38;5;9:*.t7z=38;5;9:*.zip=38;5;9:*.z=38;5;9:*.Z=38;5;9:*.dz=38;5;9:*.gz=38;5;9:*.lrz=38;5;9:*.lz=38;5;9:*.lzo=38;5;9:*.xz=38;5;9:*.bz2=38;5;9:*.bz=38;5;9:*.tbz=38;5;9:*.tbz2=38;5;9:*.tz=38;5;9:*.deb=38;5;9:*.rpm=38;5;9:*.jar=38;5;9:*.war=38;5;9:*.ear=38;5;9:*.sar=38;5;9:*.rar=38;5;9:*.alz=38;5;9:*.ace=38;5;9:*.zoo=38;5;9:*.cpio=38;5;9:*.7z=38;5;9:*.rz=38;5;9:*.cab=38;5;9:*.jpg=38;5;13:*.jpeg=38;5;13:*.gif=38;5;13:*.bmp=38;5;13:*.pbm=38;5;13:*.pgm=38;5;13:*.ppm=38;5;13:*.tga=38;5;13:*.xbm=38;5;13:*.xpm=38;5;13:*.tif=38;5;13:*.tiff=38;5;13:*.png=38;5;13:*.svg=38;5;13:*.svgz=38;5;13:*.mng=38;5;13:*.pcx=38;5;13:*.mov=38;5;13:*.mpg=38;5;13:*.mpeg=38;5;13:*.m2v=38;5;13:*.mkv=38;5;13:*.webm=38;5;13:*.ogm=38;5;13:*.mp4=38;5;13:*.m4v=38;5;13:*.mp4v=38;5;13:*.vob=38;5;13:*.qt=38;5;13:*.nuv=38;5;13:*.wmv=38;5;13:*.asf=38;5;13:*.rm=38;5;13:*.rmvb=38;5;13:*.flc=38;5;13:*.avi=38;5;13:*.fli=38;5;13:*.flv=38;5;13:*.gl=38;5;13:*.dl=38;5;13:*.xcf=38;5;13:*.xwd=38;5;13:*.yuv=38;5;13:*.cgm=38;5;13:*.emf=38;5;13:*.axv=38;5;13:*.anx=38;5;13:*.ogv=38;5;13:*.ogx=38;5;13:*.aac=38;5;45:*.au=38;5;45:*.flac=38;5;45:*.mid=38;5;45:*.midi=38;5;45:*.mka=38;5;45:*.mp3=38;5;45:*.mpc=38;5;45:*.ogg=38;5;45:*.ra=38;5;45:*.wav=38;5;45:*.axa=38;5;45:*.oga=38;5;45:*.spx=38;5;45:*.xspf=38;5;45: -LD_LIBRARY_PATH=:/home/synopsys/verdi/Verdi_O-2018.09-SP2/share/PLI/lib/LINUX64:/home/synopsys/verdi/Verdi_O-2018.09-SP2/share/PLI/IUS/LINUX64/boot:/home/cadence/INCISIVE152/tools.lnx86/lib -GNOME_TERMINAL_SERVICE=:1.105 -XNLSPATH=/home/synopsys/verdi/Verdi_O-2018.09-SP2/etc/access/nls +LD_LIBRARY_PATH=/home/synopsys/vcs-mx/O-2018.09-1/linux64/lib::/home/synopsys/verdi/Verdi_O-2018.09-SP2/share/PLI/lib/LINUX64:/home/synopsys/verdi/Verdi_O-2018.09-SP2/share/PLI/IUS/LINUX64/boot:/home/cadence/INCISIVE152/tools.lnx86/lib:/home/synopsys/verdi/Verdi_O-2018.09-SP2/share/PLI/lib/LINUX64:/home/synopsys/verdi/Verdi_O-2018.09-SP2/share/PLI/IUS/LINUX64/boot:/home/cadence/INCISIVE152/tools.lnx86/lib +SCRIPT_NAME=vcs MAKE_TERMOUT=/dev/pts/0 -SSH_AUTH_SOCK=/run/user/1000/keyring/ssh +VCS_MX_HOME_INTERNAL=1 DVE_HOME=/home/synopsys/vcs-mx/O-2018.09-1 SNPSLMD_LICENSE_FILE=27000@IC_EDA -USERNAME=ICer -SESSION_MANAGER=local/unix:@/tmp/.ICE-unix/3690,unix/unix:/tmp/.ICE-unix/3690 MAKELEVEL=1 +OVA_UUM=0 MFLAGS= MMSIMHOME=/home/cadence/MMSIM151 -GNOME_SHELL_SESSION_MODE=classic -DESKTOP_SESSION=gnome-classic -PATH=/bin:/home/Xilinx/SDK/2019.1/bin:/home/Xilinx/SDK/2019.1/gnu/microblaze/lin/bin:/home/Xilinx/SDK/2019.1/gnu/arm/lin/bin:/home/Xilinx/SDK/2019.1/gnu/microblaze/linux_toolchain/lin64_le/bin:/home/Xilinx/SDK/2019.1/gnu/aarch32/lin/gcc-arm-linux-gnueabi/bin:/home/Xilinx/SDK/2019.1/gnu/aarch32/lin/gcc-arm-none-eabi/bin:/home/Xilinx/SDK/2019.1/gnu/aarch64/lin/aarch64-linux/bin:/home/Xilinx/SDK/2019.1/gnu/aarch64/lin/aarch64-none/bin:/home/Xilinx/SDK/2019.1/gnu/armr5/lin/gcc-arm-none-eabi/bin:/home/Xilinx/SDK/2019.1/tps/lnx64/cmake-3.3.2/bin:/home/Xilinx/Vivado/2019.1/bin:/home/Xilinx/DocNav:/usr/lib/qt-3.3/bin:/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/bin:/sbin:/home/synopsys/fpga/N-2018.03-SP1/bin:/home/synopsys/pts/O-2018.06-SP1/bin:/home/synopsys/icc2/O-2018.06-SP1/bin:/home/synopsys/syn/O-2018.06-SP1/bin:/home/synopsys/lc/O-2018.06-SP1/bin:/home/synopsys/SpyGlass-L2016.06/SPYGLASS_HOME//bin:/home/synopsys/vcs-mx/O-2018.09-1/gui/dve/bin:/home/synopsys/vcs-mx/O-2018.09-1/bin:/home/synopsys/verdi/Verdi_O-2018.09-SP2/bin:/home/synopsys/scl/2018.06/linux64/bin::/home/cadence/IC617/tools/dfII/bin:/home/cadence/IC617/tools/plot/bin:/home/cadence/INCISIVE152/tools/bin:/home/cadence/MMSIM151/bin:/home/cadence/MMSIM151/tools/relxpert/bin:/home/cadence/INCISIVE152/bin:/home/cadence/INCISIVE152/tools.lnx86/bin:/home/cadence/INCISIVE152/tools.lnx86/dfII/bin:/home/mentor/questasim/linux_x86_64:/home/Riscv_Tools/bin:/home/Riscv_Tools/riscv-gnu-toolchain/qemu-6.0.0/build/riscv32-linux-user +VCS_MODE_FLAG=64 +PATH=.:/home/Xilinx/SDK/2019.1/bin:/home/Xilinx/SDK/2019.1/gnu/microblaze/lin/bin:/home/Xilinx/SDK/2019.1/gnu/arm/lin/bin:/home/Xilinx/SDK/2019.1/gnu/microblaze/linux_toolchain/lin64_le/bin:/home/Xilinx/SDK/2019.1/gnu/aarch32/lin/gcc-arm-linux-gnueabi/bin:/home/Xilinx/SDK/2019.1/gnu/aarch32/lin/gcc-arm-none-eabi/bin:/home/Xilinx/SDK/2019.1/gnu/aarch64/lin/aarch64-linux/bin:/home/Xilinx/SDK/2019.1/gnu/aarch64/lin/aarch64-none/bin:/home/Xilinx/SDK/2019.1/gnu/armr5/lin/gcc-arm-none-eabi/bin:/home/Xilinx/SDK/2019.1/tps/lnx64/cmake-3.3.2/bin:/home/Xilinx/Vivado/2019.1/bin:/home/Xilinx/DocNav:/home/ICer/.vscode-server/bin/8b3775030ed1a69b13e4f4c628c612102e30a681/bin/remote-cli:/home/Xilinx/SDK/2019.1/bin:/home/Xilinx/SDK/2019.1/gnu/microblaze/lin/bin:/home/Xilinx/SDK/2019.1/gnu/arm/lin/bin:/home/Xilinx/SDK/2019.1/gnu/microblaze/linux_toolchain/lin64_le/bin:/home/Xilinx/SDK/2019.1/gnu/aarch32/lin/gcc-arm-linux-gnueabi/bin:/home/Xilinx/SDK/2019.1/gnu/aarch32/lin/gcc-arm-none-eabi/bin:/home/Xilinx/SDK/2019.1/gnu/aarch64/lin/aarch64-linux/bin:/home/Xilinx/SDK/2019.1/gnu/aarch64/lin/aarch64-none/bin:/home/Xilinx/SDK/2019.1/gnu/armr5/lin/gcc-arm-none-eabi/bin:/home/Xilinx/SDK/2019.1/tps/lnx64/cmake-3.3.2/bin:/home/Xilinx/Vivado/2019.1/bin:/home/Xilinx/DocNav:/usr/lib/qt-3.3/bin:/usr/local/bin:/usr/bin:/home/synopsys/fpga/N-2018.03-SP1/bin:/home/synopsys/pts/O-2018.06-SP1/bin:/home/synopsys/icc2/O-2018.06-SP1/bin:/home/synopsys/syn/O-2018.06-SP1/bin:/home/synopsys/lc/O-2018.06-SP1/bin:/home/synopsys/SpyGlass-L2016.06/SPYGLASS_HOME//bin:/home/synopsys/vcs-mx/O-2018.09-1/gui/dve/bin:/home/synopsys/vcs-mx/O-2018.09-1/bin:/home/synopsys/verdi/Verdi_O-2018.09-SP2/bin:/home/synopsys/scl/2018.06/linux64/bin::/home/cadence/IC617/tools/dfII/bin:/home/cadence/IC617/tools/plot/bin:/home/cadence/INCISIVE152/tools/bin:/home/cadence/MMSIM151/bin:/home/cadence/MMSIM151/tools/relxpert/bin:/home/cadence/INCISIVE152/bin:/home/cadence/INCISIVE152/tools.lnx86/bin:/home/cadence/INCISIVE152/tools.lnx86/dfII/bin:/home/mentor/questasim/linux_x86_64:/home/Riscv_Tools/bin:/home/Riscv_Tools/riscv-gnu-toolchain/qemu-6.0.0/build/riscv32-linux-user:/usr/local/sbin:/usr/sbin:/home/synopsys/fpga/N-2018.03-SP1/bin:/home/synopsys/pts/O-2018.06-SP1/bin:/home/synopsys/icc2/O-2018.06-SP1/bin:/home/synopsys/syn/O-2018.06-SP1/bin:/home/synopsys/lc/O-2018.06-SP1/bin:/home/synopsys/SpyGlass-L2016.06/SPYGLASS_HOME//bin:/home/synopsys/vcs-mx/O-2018.09-1/gui/dve/bin:/home/synopsys/vcs-mx/O-2018.09-1/bin:/home/synopsys/verdi/Verdi_O-2018.09-SP2/bin:/home/synopsys/scl/2018.06/linux64/bin::/home/cadence/IC617/tools/dfII/bin:/home/cadence/IC617/tools/plot/bin:/home/cadence/INCISIVE152/tools/bin:/home/cadence/MMSIM151/bin:/home/cadence/MMSIM151/tools/relxpert/bin:/home/cadence/INCISIVE152/bin:/home/cadence/INCISIVE152/tools.lnx86/bin:/home/cadence/INCISIVE152/tools.lnx86/dfII/bin:/home/mentor/questasim/linux_x86_64:/home/Riscv_Tools/bin:/home/Riscv_Tools/riscv-gnu-toolchain/qemu-6.0.0/build/riscv32-linux-user MAIL=/var/spool/mail/ICer PT_HOME=/home/synopsys/pts/O-2018.06-SP1 -QT_IM_MODULE=ibus CALIBRE_HOME=/home/mentor//Calibre2015/aoi_cal_2015.2_36.27 VERDI_HOME=/home/synopsys/verdi/Verdi_O-2018.09-SP2 -XDG_SESSION_TYPE=x11 MGC_CALIBRE_LAYOUT_SERVER=IC_EDA:9189 PWD=/home/ICer/ic_prjs/mc/IC_PRJ/sim -XMODIFIERS=@im=none VCS_HOME=/home/synopsys/vcs-mx/O-2018.09-1 -SYS_PROG_NAME=verdi MGC_CALIBRE_SCHEMATIC_SERVER=IC_EDA:9199 -LANG=C -GDM_LANG=zh_CN.UTF-8 +LANG=zh_CN.UTF-8 KDEDIRS=/usr VCS_ARCH_OVERRIDE=linux -LC_MEASUREMENT=zh_CN.UTF-8 +VSCODE_GIT_ASKPASS_EXTRA_ARGS= +VMR_MODE_FLAG=64 +SELINUX_LEVEL_REQUESTED= CDSHOME=/home/cadence/IC617 -SYS_INST_DIR=/home/synopsys/verdi/Verdi_O-2018.09-SP2 -GDMSESSION=gnome-classic XILINX_VIVADO=/home/Xilinx/Vivado/2019.1 QEMU_HOME=/home/Riscv_Tools/riscv-gnu-toolchain/qemu-6.0.0 HISTCONTROL=ignoredups SPECMAN_HOME=/home/cadence/INCISIVE152/components/sn +VCS_ARG_ADDED_FOR_TMP=1 +SNPS_VCS_TMPDIR=/tmp/vcs_20250813083055_5256 HOME=/home/ICer -XDG_SEAT=seat0 RISCV=/home/Riscv_Tools -SHLVL=3 +SHLVL=7 +VSCODE_GIT_ASKPASS_MAIN=/home/ICer/.vscode-server/bin/8b3775030ed1a69b13e4f4c628c612102e30a681/extensions/git/dist/askpass-main.js MGC_HOME=/home/mentor/ ICC2_HOME=/home/synopsys/icc2/O-2018.06-SP1 -VERDI_ORIGNAL_LD_LIBRARY_PATH=:/home/synopsys/verdi/Verdi_O-2018.09-SP2/share/PLI/lib/LINUX64:/home/synopsys/verdi/Verdi_O-2018.09-SP2/share/PLI/IUS/LINUX64/boot:/home/cadence/INCISIVE152/tools.lnx86/lib MGC_LICENSE_FILE=/home/mentor//license/license.dat -GNOME_DESKTOP_SESSION_ID=this-is-deprecated CADHOME=/home/cadence -XDG_SESSION_DESKTOP=gnome-classic +VCS_COM=/home/synopsys/vcs-mx/O-2018.09-1/linux64/bin/vcs1 LOGNAME=ICer DC_HOME=/home/synopsys/syn/O-2018.06-SP1 MGLS_LICENSE_FILE=/home/mentor/questasim/mentor.dat QTLIB=/usr/lib/qt-3.3/lib SPYGLASS_HOME=/home/synopsys/SpyGlass-L2016.06/SPYGLASS_HOME/ MAKE_TERMERR=/dev/pts/0 -XDG_DATA_DIRS=/home/ICer/.local/share/flatpak/exports/share/:/var/lib/flatpak/exports/share/:/usr/local/share/:/usr/share/ -DBUS_SESSION_BUS_ADDRESS=unix:abstract=/tmp/dbus-LHuevZztAf,guid=55ddfa7976bc586b8b8ee131689354d9 -NOVASHLPPATH=/home/synopsys/verdi/Verdi_O-2018.09-SP2/doc -SPS_RGB_PATH=/home/synopsys/verdi/Verdi_O-2018.09-SP2/etc/rgb +XDG_DATA_DIRS=/home/ICer/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share +SSH_CONNECTION=192.168.223.1 52776 192.168.223.129 22 +VSCODE_GIT_IPC_HANDLE=/run/user/1000/vscode-git-07cba0c96a.sock +VSCODE_IPC_HOOK_CLI=/run/user/1000/vscode-ipc-e469d87e-6fcb-418d-9f59-455493644d33.sock CDS_LIC_FILE=/home/cadence/license/cadence.dat SPECMAN_DIR=/home/cadence/INCISIVE152/components/sn/ LESSOPEN=||/usr/bin/lesspipe.sh %s +BROWSER=/home/ICer/.vscode-server/bin/8b3775030ed1a69b13e4f4c628c612102e30a681/bin/helpers/browser.sh SCL_HOME=/home/synopsys/scl/2018.06 -WINDOWPATH=1 -LD_NOVERSION=1 +sysc_uni_pwd=/home/ICer/ic_prjs/mc/IC_PRJ/sim +VSCODE_GIT_ASKPASS_NODE=/home/ICer/.vscode-server/bin/8b3775030ed1a69b13e4f4c628c612102e30a681/node +GIT_ASKPASS=/home/ICer/.vscode-server/bin/8b3775030ed1a69b13e4f4c628c612102e30a681/extensions/git/dist/askpass.sh XDG_RUNTIME_DIR=/run/user/1000 SYNPLIFY_HOME=/home/synopsys/fpga/N-2018.03-SP1 -DISPLAY=:0 -QT_PLUGIN_PATH=/home/synopsys/verdi/Verdi_O-2018.09-SP2/platform/LINUXAMD64/lib/Qt/plugins +VCS_ARCH=linux64 +QT_PLUGIN_PATH=/usr/lib64/kde4/plugins:/usr/lib/kde4/plugins LC_HOME=/home/synopsys/lc/O-2018.06-SP1 -XDG_CURRENT_DESKTOP=GNOME-Classic:GNOME +TOOL_HOME=/home/synopsys/vcs-mx/O-2018.09-1/linux64 INCISIVE_HOME=/home/cadence/INCISIVE152 -LC_TIME=zh_CN.UTF-8 -XAUTHORITY=/run/gdm/auth-for-ICer-JLN4Y3/database COLORTERM=truecolor -PS_HWPC=OFF -NOVAS_LC_ALL=C -NOVAS_SIGNAL_BASE_EXTRACTION=1 -SIGNAL_BASE_EXTRACTION=1 -NOVAS_VERDI_SVTB_BETA=1 -VERDI_SVTB_BETA=1 -NOVAS_VERDI_SVTB_ALPHA=1 -VERDI_SVTB_ALPHA=1 -NOVAS_VERDI_TB_HT=1 -VERDI_TB_HT=1 -NOVAS_WAVE_REDRAW_ALLVC=1 -WAVE_REDRAW_ALLVC=1 -NOVAS_TCL_LIBRARY=/home/synopsys/verdi/Verdi_O-2018.09-SP2/etc/access/tcl86_library -TCL_LIBRARY=/home/synopsys/verdi/Verdi_O-2018.09-SP2/etc/access/tcl86_library -XKEYSYMDB=/home/synopsys/verdi/Verdi_O-2018.09-SP2/etc/access/XKeysymDB2.1 -XLOCALEDIR=/home/synopsys/verdi/Verdi_O-2018.09-SP2/etc/access/locale -NOVAS_SIGNAL_BASED_BA=0 -SIGNAL_BASED_BA=0 -SYNOPSYS_SIM=/home/synopsys/vcs-mx/O-2018.09-1 -DISABLE_LIBRARY_MAP_CHECK=1 -SNPS_SIM_DEFAULT_GUI=verdi -FSDB_FILE=/home/ICer/ic_prjs/mc/IC_PRJ/sim/inter.fsdb -VCS_UCLI_STDIN_BLOCKING=1 -FSDB_VHDL_PROTECTED=1 -FSDB_RD_IR_ENABLE=1 -FSDB_SVA_STATUS=1 +_=./simv +OLDPWD=/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv.daidir/debug_dump/fsearch VCS_HEAP_EXEC=true VCS_PATHMAP_PRELOAD_DONE=1 -VCS_STACK_EXEC=true VCS_EXEC_DONE=1 -VCS_STOP_SAFE=1 -DVE_SIM_SELECT_LOOP=on +DVE=/home/synopsys/vcs-mx/O-2018.09-1/gui/dve +SPECMAN_OUTPUT_TO_TTY=1 Runtime command line arguments: -argv[0]=/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv -argv[1]=-sml=verdi -argv[2]=+fsdb+gate=off -argv[3]=-ucli2Proc -argv[4]=-ucli -argv[5]=-l -argv[6]=/home/ICer/ic_prjs/mc/IC_PRJ/sim/verdiLog/sim.log -317 profile - 100 - CPU/Mem usage: 0.030 sys, 0.110 user, 236.15M mem -318 Wed Aug 6 22:32:55 2025 -319 pliAppInit -320 ndpGetenv(FSDB_FILE): /home/ICer/ic_prjs/mc/IC_PRJ/sim/inter.fsdb -321 ndpGetenv(FSDB_SVA_STATUS): 1 -322 ndpGetenv(FSDB_VHDL_PROTECTED): 1 -323 FSDB_GATE & FSDB_RTL is disabled. -324 Enable Parallel Dumping. -325 pliAppMiscSet: New Sim Round -326 pliEntryInit -327 LIBSSCORE=found /home/synopsys/verdi/Verdi_O-2018.09-SP2/share/PLI/lib/LINUXAMD64/libsscore_vcs201809.so through $NOVAS_HOME setting. -328 FSDB Dumper for VCS, Release Verdi_O-2018.09-SP2, Linux x86_64/64bit, 02/21/2019 -329 (C) 1996 - 2019 by Synopsys, Inc. -330 sps_tcl_fsdbDumpfile_main at 0 -331 argv[0]: /home/ICer/ic_prjs/mc/IC_PRJ/sim/inter.fsdb -332 *Verdi* : Create FSDB file '/home/ICer/ic_prjs/mc/IC_PRJ/sim/inter.fsdb' -333 compile option from '/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv.daidir/vcs_rebuild'. -334 "vcs '-f' 'filelist.f' '-timescale=1ns/1ps' '-full64' '-R' '+vc' '+v2k' '-sverilog' '-debug_access+all' 2>&1" -335 sps_tcl_fsdbDumpflush_vd_main -336 *Verdi* : Flush all FSDB Files at 0 ps. -337 FSDB_VCS_ENABLE_FAST_VC is enable -338 sps_tcl_fsdbDumpvarsByFile_vd_main at 0 : N/A(0) -339 *Verdi* : Begin dumping the scopes by file (/home/ICer/ic_prjs/mc/IC_PRJ/sim/verdiLog/.tbsimDump_var_file). -340 [spi_vcs_vd_ppi_create_root]: no upf option -341 FSDB dumper cannot dump UPF related power signal ($power_tree): no ppiPowerNetwork. -342 pliAppHDL_DumpVarComplete traverse var: profile - - CPU/Mem usage: 0.110 sys, 0.110 user, 329.39M mem - incr: 0.000 sys, 0.000 user, 2.65M mem - accu: 0.000 sys, 0.000 user, 2.65M mem - accu incr: 0.000 sys, 0.000 user, 2.65M mem +argv[0]=simv +argv[1]=+vc +argv[2]=+v2k +271 profile - 100 + CPU/Mem usage: 0.920 sys, 0.370 user, 245.56M mem +272 Wed Aug 13 16:31:00 2025 +273 pliAppInit +274 FSDB_GATE is set. +275 FSDB_RTL is set. +276 Enable Parallel Dumping. +277 pliAppMiscSet: New Sim Round +278 pliEntryInit +279 LIBSSCORE=found /home/synopsys/verdi/Verdi_O-2018.09-SP2/share/PLI/lib/LINUXAMD64/libsscore_vcs201809.so through $NOVAS_HOME setting. +280 FSDB Dumper for VCS, Release Verdi_O-2018.09-SP2, Linux x86_64/64bit, 02/21/2019 +281 (C) 1996 - 2019 by Synopsys, Inc. +282 sps_call_fsdbDumpfile_main at 0 : ../tb/tb_array_ctrl.v(212) +283 argv[0]: (tb.fsdb) +284 *Verdi* : Create FSDB file 'tb.fsdb' +285 compile option from '/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv.daidir/vcs_rebuild'. +286 "vcs '-f' 'filelist.f' '-timescale=1ns/1ps' '-full64' '-R' '+vc' '+v2k' '-sverilog' '-debug_access+all' 2>&1" +287 FSDB_VCS_ENABLE_FAST_VC is enable +288 sps_call_fsdbDumpvars_vd_main at 0 : ../tb/tb_array_ctrl.v(213) +289 argv[0]: (0) +290 argv[1]: (handle) tb_array_ctrl +291 argv[2]: (+all) +292 [spi_vcs_vd_ppi_create_root]: no upf option +293 FSDB dumper cannot dump UPF related power signal ($power_tree): no ppiPowerNetwork. +294 *Verdi* : Begin traversing the scope (tb_array_ctrl), layer (0). +295 *Verdi* : Enable +all dumping. +296 *Verdi* : End of traversing. +297 pliAppHDL_DumpVarComplete traverse var: profile - + CPU/Mem usage: 1.570 sys, 0.370 user, 342.00M mem + incr: 0.060 sys, 0.000 user, 8.61M mem + accu: 0.060 sys, 0.000 user, 8.61M mem + accu incr: 0.060 sys, 0.000 user, 8.61M mem - Count usage: 44 var, 44 idcode, 44 callback - incr: 44 var, 44 idcode, 44 callback - accu: 44 var, 44 idcode, 44 callback - accu incr: 44 var, 44 idcode, 44 callback -343 Wed Aug 6 22:32:57 2025 -344 pliAppHDL_DumpVarComplete: profile - - CPU/Mem usage: 0.110 sys, 0.110 user, 330.44M mem + Count usage: 221 var, 140 idcode, 71 callback + incr: 221 var, 140 idcode, 71 callback + accu: 221 var, 140 idcode, 71 callback + accu incr: 221 var, 140 idcode, 71 callback +298 Wed Aug 13 16:31:01 2025 +299 pliAppHDL_DumpVarComplete: profile - + CPU/Mem usage: 1.570 sys, 0.370 user, 343.05M mem incr: 0.000 sys, 0.000 user, 1.05M mem - accu: 0.000 sys, 0.000 user, 3.70M mem + accu: 0.060 sys, 0.000 user, 9.66M mem accu incr: 0.000 sys, 0.000 user, 1.05M mem - Count usage: 44 var, 44 idcode, 44 callback + Count usage: 221 var, 140 idcode, 71 callback incr: 0 var, 0 idcode, 0 callback - accu: 44 var, 44 idcode, 44 callback + accu: 221 var, 140 idcode, 71 callback accu incr: 0 var, 0 idcode, 0 callback -345 Wed Aug 6 22:32:57 2025 -346 *Verdi* : End of dumping. -347 fsdbDumpvarsByFile: profile - - CPU/Mem usage: 0.110 sys, 0.110 user, 330.44M mem - incr: 0.000 sys, 0.000 user, 3.70M mem - accu: 0.000 sys, 0.000 user, 3.70M mem - accu incr: 0.000 sys, 0.000 user, 3.70M mem - - Count usage: 44 var, 44 idcode, 44 callback - incr: 44 var, 44 idcode, 44 callback - accu: 44 var, 44 idcode, 44 callback - accu incr: 44 var, 44 idcode, 44 callback -348 Wed Aug 6 22:32:57 2025 -349 sps_tcl_fsdbDumpflush_vd_main -350 *Verdi* : Flush all FSDB Files at 0 ps. -351 sps_tcl_fsdbDumpflush_vd_main -352 *Verdi* : Flush all FSDB Files at 0 ps. -353 sps_tcl_fsdbDumpflush_vd_main -354 *Verdi* : Flush all FSDB Files at 0 ps. -355 sps_call_fsdbDumpfile_main at 0 : ../tb/tb_rchannel.v(98) -356 argv[0]: (tb.fsdb) -357 sps_call_fsdbDumpvars_vd_main at 0 : ../tb/tb_rchannel.v(99) -358 argv[0]: (0) -359 argv[1]: (handle) tb_rchannel -360 argv[2]: (+all) -361 *Verdi* : Begin traversing the scope (tb_rchannel), layer (0). -362 *Verdi* : Enable +all dumping. -363 *Verdi* : End of traversing. -364 pliAppHDL_DumpVarComplete traverse var: profile - - CPU/Mem usage: 0.120 sys, 0.110 user, 333.21M mem - incr: 0.000 sys, 0.000 user, 1.05M mem - accu: 0.000 sys, 0.000 user, 1.05M mem - accu incr: 0.000 sys, 0.000 user, 1.05M mem - - Count usage: 159 var, 85 idcode, 72 callback - incr: 115 var, 41 idcode, 28 callback - accu: 115 var, 41 idcode, 28 callback - accu incr: 115 var, 41 idcode, 28 callback -365 Wed Aug 6 22:32:59 2025 -366 pliAppHDL_DumpVarComplete: profile - - CPU/Mem usage: 0.130 sys, 0.110 user, 333.21M mem - incr: 0.010 sys, 0.000 user, 0.00M mem - accu: 0.010 sys, 0.000 user, 1.05M mem - accu incr: 0.010 sys, 0.000 user, 0.00M mem - - Count usage: 159 var, 85 idcode, 72 callback - incr: 0 var, 0 idcode, 0 callback - accu: 115 var, 41 idcode, 28 callback - accu incr: 0 var, 0 idcode, 0 callback -367 Wed Aug 6 22:32:59 2025 -368 sps_tcl_fsdbDumpflush_vd_main -369 *Verdi* : Flush all FSDB Files at 365,000 ps. -370 End of simulation at 365000 -371 Wed Aug 6 22:41:15 2025 -372 Begin FSDB profile info: -373 FSDB Writer : bc1(202) bcn(288) mtf/stf(0/5) -FSDB Writer elapsed time : flush(0.014706) io wait(0.000000) theadpool wait(0.000000) target functin(0.000000) +300 Wed Aug 13 16:31:01 2025 +301 End of simulation at 3648750 +302 Wed Aug 13 16:31:01 2025 +303 Begin FSDB profile info: +304 FSDB Writer : bc1(3057) bcn(590) mtf/stf(0/0) +FSDB Writer elapsed time : flush(0.034176) io wait(0.000000) theadpool wait(0.000000) target functin(0.000000) FSDB Writer cpu time : MT Compression : 0 -374 End FSDB profile info -375 Parallel profile - Flush:10 Expand:0 ProduceWait:0 ConsumerWait:0 BlockUsed:0 -376 ProduceTime:0.262536335 ConsumerTime:0.000000000 Buffer:64MB -377 SimExit -378 Sim process exit +305 End FSDB profile info +306 Parallel profile - Flush:3 Expand:0 ProduceWait:0 ConsumerWait:0 BlockUsed:0 +307 ProduceTime:2.059042140 ConsumerTime:0.000000000 Buffer:64MB +308 SimExit +309 Sim process exit diff --git a/sim/simv b/sim/simv index 003f18d..6a72e8c 100755 Binary files a/sim/simv and b/sim/simv differ diff --git a/sim/simv.daidir/.vcs.timestamp b/sim/simv.daidir/.vcs.timestamp index 8335150..a530dfd 100644 --- a/sim/simv.daidir/.vcs.timestamp +++ b/sim/simv.daidir/.vcs.timestamp @@ -33,22 +33,17 @@ -timescale=1ns/1ps /home/synopsys/vcs-mx/O-2018.09-1/linux64/bin/vcs1 /home/synopsys/verdi/Verdi_O-2018.09-SP2/share/PLI/VCS/LINUX64/verdi.tab -88 +71 sysc_uni_pwd=/home/ICer/ic_prjs/mc/IC_PRJ/sim -XMODIFIERS=@im=ibus XILINX_VIVADO=/home/Xilinx/Vivado/2019.1 -XDG_VTNR=1 -XDG_SESSION_TYPE=x11 -XDG_SESSION_ID=1 -XDG_SESSION_DESKTOP=gnome-classic -XDG_SEAT=seat0 +XDG_SESSION_ID=2 XDG_RUNTIME_DIR=/run/user/1000 -XDG_MENU_PREFIX=gnome- -XDG_DATA_DIRS=/home/ICer/.local/share/flatpak/exports/share/:/var/lib/flatpak/exports/share/:/usr/local/share/:/usr/share/ -XDG_CURRENT_DESKTOP=GNOME-Classic:GNOME -XAUTHORITY=/run/gdm/auth-for-ICer-JLN4Y3/database -WINDOWPATH=1 -VTE_VERSION=5204 +XDG_DATA_DIRS=/home/ICer/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share +VSCODE_IPC_HOOK_CLI=/run/user/1000/vscode-ipc-e469d87e-6fcb-418d-9f59-455493644d33.sock +VSCODE_GIT_IPC_HANDLE=/run/user/1000/vscode-git-07cba0c96a.sock +VSCODE_GIT_ASKPASS_NODE=/home/ICer/.vscode-server/bin/8b3775030ed1a69b13e4f4c628c612102e30a681/node +VSCODE_GIT_ASKPASS_MAIN=/home/ICer/.vscode-server/bin/8b3775030ed1a69b13e4f4c628c612102e30a681/extensions/git/dist/askpass-main.js +VSCODE_GIT_ASKPASS_EXTRA_ARGS= VMR_MODE_FLAG=64 VERDI_HOME=/home/synopsys/verdi/Verdi_O-2018.09-SP2 VCS_MX_HOME_INTERNAL=1 @@ -58,23 +53,25 @@ VCS_DEPTH=0 VCS_ARG_ADDED_FOR_TMP=1 VCS_ARCH_OVERRIDE=linux VCS_ARCH=linux64 -USERNAME=ICer UNAME=/bin/uname TOOL_HOME=/home/synopsys/vcs-mx/O-2018.09-1/linux64 +TERM_PROGRAM_VERSION=1.85.2 +TERM_PROGRAM=vscode SYNPLIFY_HOME=/home/synopsys/fpga/N-2018.03-SP1 -SSH_AUTH_SOCK=/run/user/1000/keyring/ssh -SSH_AGENT_PID=3826 +SSH_CONNECTION=192.168.223.1 52776 192.168.223.129 22 +SSH_CLIENT=192.168.223.1 52776 22 SPYGLASS_HOME=/home/synopsys/SpyGlass-L2016.06/SPYGLASS_HOME/ SPECMAN_HOME=/home/cadence/INCISIVE152/components/sn SPECMAN_DIR=/home/cadence/INCISIVE152/components/sn/ -SESSION_MANAGER=local/unix:@/tmp/.ICE-unix/3690,unix/unix:/tmp/.ICE-unix/3690 +SELINUX_USE_CURRENT_RANGE= +SELINUX_ROLE_REQUESTED= +SELINUX_LEVEL_REQUESTED= SCRNAME=vcs SCRIPT_NAME=vcs SCL_HOME=/home/synopsys/scl/2018.06 RISCV=/home/Riscv_Tools QUESTASIM_HOME=/home/mentor/questasim QT_PLUGIN_PATH=/usr/lib64/kde4/plugins:/usr/lib/kde4/plugins -QT_IM_MODULE=ibus QT_GRAPHICSSYSTEM_CHECKED=1 QTLIB=/usr/lib/qt-3.3/lib QTINC=/usr/lib/qt-3.3/include @@ -94,41 +91,31 @@ MAKE_TERMERR=/dev/pts/0 MAKELEVEL=1 MAKEFLAGS= LESSOPEN=||/usr/bin/lesspipe.sh %s -LC_TIME=zh_CN.UTF-8 -LC_PAPER=zh_CN.UTF-8 -LC_NUMERIC=zh_CN.UTF-8 -LC_MONETARY=zh_CN.UTF-8 -LC_MEASUREMENT=zh_CN.UTF-8 LC_HOME=/home/synopsys/lc/O-2018.06-SP1 LC_ALL=C KDEDIRS=/usr INCISIVE_HOME=/home/cadence/INCISIVE152 -IMSETTINGS_MODULE=none -IMSETTINGS_INTEGRATE_DESKTOP=yes ICC2_HOME=/home/synopsys/icc2/O-2018.06-SP1 HISTCONTROL=ignoredups -GNOME_TERMINAL_SERVICE=:1.105 -GNOME_TERMINAL_SCREEN=/org/gnome/Terminal/screen/83465594_02bf_4b80_a6ef_1d361b15e756 -GNOME_SHELL_SESSION_MODE=classic -GNOME_DESKTOP_SESSION_ID=this-is-deprecated -GDM_LANG=zh_CN.UTF-8 -GDMSESSION=gnome-classic +GIT_ASKPASS=/home/ICer/.vscode-server/bin/8b3775030ed1a69b13e4f4c628c612102e30a681/extensions/git/dist/askpass.sh DVE_HOME=/home/synopsys/vcs-mx/O-2018.09-1 -DESKTOP_SESSION=gnome-classic DC_HOME=/home/synopsys/syn/O-2018.06-SP1 -DBUS_SESSION_BUS_ADDRESS=unix:abstract=/tmp/dbus-LHuevZztAf,guid=55ddfa7976bc586b8b8ee131689354d9 COLORTERM=truecolor CDS_LIC_FILE=/home/cadence/license/cadence.dat CDSHOME=/home/cadence/IC617 CALIBRE_HOME=/home/mentor//Calibre2015/aoi_cal_2015.2_36.27 CADHOME=/home/cadence 0 -7 -1754471014 ../tb/tb_rchannel.v -1754490726 ../rtl/rchannel.v -1754471014 ../rtl/sync_fifo.v -1754489537 ../rtl/sync_fifo_128_to_64.v -1754489266 filelist.f +11 +1755056699 ../tb/tb_array_ctrl.v +1754836477 ../rtl/array_mux.v +1754835004 ../rtl/array_ref.v +1754838848 ../rtl/array_rd.v +1754824141 ../rtl/array_wr.v +1755053675 ../rtl/array_status_ctrl.v +1754838855 ../rtl/array_ctrl.v +1754471014 ../rtl/async_fifo.v +1755073833 filelist.f 1550753332 /home/synopsys/verdi/Verdi_O-2018.09-SP2/share/PLI/VCS/LINUX64/verdi.tab 1539400757 /home/synopsys/vcs-mx/O-2018.09-1/linux64/lib/vcsdp_lite.tab 4 @@ -136,5 +123,5 @@ CADHOME=/home/cadence 1539401183 /home/synopsys/vcs-mx/O-2018.09-1/linux64/lib/liberrorinf.so 1539401125 /home/synopsys/vcs-mx/O-2018.09-1/linux64/lib/libsnpsmalloc.so 1539401175 /home/synopsys/vcs-mx/O-2018.09-1/linux64/lib/libvfs.so -1754490739 simv.daidir +1755073861 simv.daidir -1 partitionlib diff --git a/sim/simv.daidir/binmap.sdb b/sim/simv.daidir/binmap.sdb index 5a32a81..ffb82a1 100644 Binary files a/sim/simv.daidir/binmap.sdb and b/sim/simv.daidir/binmap.sdb differ diff --git a/sim/simv.daidir/cc/cc_bcode.db b/sim/simv.daidir/cc/cc_bcode.db index bcb36db..89c277f 100644 --- a/sim/simv.daidir/cc/cc_bcode.db +++ b/sim/simv.daidir/cc/cc_bcode.db @@ -1,11 +1,17 @@ -sid tb_rchannel -bcid 0 0 WIDTH,2 CALL_ARG_VAL,2,0 OPT_CONST,2 WIDTH,1 M_EQU RET -bcid 1 1 WIDTH,1 CALL_ARG_VAL,2,0 WIDTH,8 CALL_ARG_VAL,3,0 CALL_ARG_VAL,4,0 WIDTH,1 M_EQU AND RET -bcid 2 2 WIDTH,1 CALL_ARG_VAL,2,0 CALL_ARG_VAL,3,0 AND WIDTH,7 CALL_ARG_VAL,4,0 WIDTH,8 PAD WIDTH,30 CALL_ARG_VAL,5,0 WIDTH,32 OPT_CONST,0 WIDTH,8 SLICE,1 WIDTH,1 OPT_CONST,1 WIDTH,8 SHIFT_R WIDTH,1 M_EQU CALL_ARG_VAL,6,0 NOT AND AND RET -bcid 3 3 WIDTH,1 CALL_ARG_VAL,2,0 CALL_ARG_VAL,3,0 WIDTH,7 CALL_ARG_VAL,4,0 WIDTH,8 PAD WIDTH,30 CALL_ARG_VAL,5,0 WIDTH,32 OPT_CONST,0 WIDTH,8 SLICE,1 WIDTH,1 OPT_CONST,1 WIDTH,8 SHIFT_R WIDTH,1 M_EQU AND AND RET -bcid 4 4 WIDTH,1 CALL_ARG_VAL,2,0 WIDTH,7 CALL_ARG_VAL,3,0 OPT_CONST,0 WIDTH,1 M_EQU AND RET -bcid 5 5 WIDTH,1 CALL_ARG_VAL,2,0 WIDTH,7 CALL_ARG_VAL,3,0 WIDTH,8 PAD WIDTH,30 CALL_ARG_VAL,4,0 WIDTH,32 OPT_CONST,0 WIDTH,8 SLICE,1 WIDTH,1 OPT_CONST,1 WIDTH,8 SHIFT_R WIDTH,1 M_EQU AND RET -bcid 6 6 WIDTH,3 CALL_ARG_VAL,2,0 WIDTH,32 OPT_CONST,2 WIDTH,1 SLICE,1 WIDTH,3 CALL_ARG_VAL,3,0 WIDTH,32 OPT_CONST,2 WIDTH,1 SLICE,1 XOR WIDTH,3 CALL_ARG_VAL,2,0 WIDTH,32 OPT_CONST,0 WIDTH,2 SLICE,1 WIDTH,3 CALL_ARG_VAL,3,0 WIDTH,32 OPT_CONST,0 WIDTH,2 SLICE,1 WIDTH,1 M_EQU AND RET -bcid 7 7 WIDTH,3 CALL_ARG_VAL,2,0 CALL_ARG_VAL,3,0 WIDTH,1 M_EQU RET -bcid 8 8 WIDTH,4 CALL_ARG_VAL,2,0 WIDTH,32 PAD WIDTH,4 CALL_ARG_VAL,3,0 WIDTH,32 PAD SUBTRACT OPT_CONST,8 WIDTH,1 M_EQU RET -bcid 9 9 WIDTH,4 CALL_ARG_VAL,2,0 CALL_ARG_VAL,3,0 WIDTH,1 M_EQU RET +sid tb_array_ctrl +bcid 0 0 WIDTH,2 OPT_CONST,0 CALL_ARG_VAL,2,0 WIDTH,1 EQU CALL_ARG_VAL,3,0 OPT_CONST,1 EQU WIDTH,2 OPT_CONST,1 WIDTH,1 CALL_ARG_VAL,4,0 OPT_CONST,1 EQU WIDTH,2 OPT_CONST,2 WIDTH,1 CALL_ARG_VAL,5,0 OPT_CONST,1 EQU WIDTH,2 OPT_CONST,3 OPT_CONST,0 MITECONDNOINSTR,4 MITECONDNOINSTR,4 MITECONDNOINSTR,4 OPT_CONST,2 CALL_ARG_VAL,2,0 WIDTH,1 EQU CALL_ARG_VAL,6,0 OPT_CONST,1 EQU WIDTH,2 OPT_CONST,0 OPT_CONST,2 MITECONDNOINSTR,4 OPT_CONST,3 CALL_ARG_VAL,2,0 WIDTH,1 EQU CALL_ARG_VAL,7,0 OPT_CONST,1 EQU WIDTH,2 OPT_CONST,0 OPT_CONST,3 MITECONDNOINSTR,4 OPT_CONST,1 CALL_ARG_VAL,2,0 WIDTH,1 EQU CALL_ARG_VAL,8,0 OPT_CONST,1 EQU WIDTH,2 OPT_CONST,0 OPT_CONST,1 MITECONDNOINSTR,4 OPT_CONST,0 MITECONDNOINSTR,4 MITECONDNOINSTR,4 MITECONDNOINSTR,4 MITECONDNOINSTR,4 RET +bcid 1 1 WIDTH,3 OPT_CONST,0 CALL_ARG_VAL,2,0 WIDTH,1 EQU CALL_ARG_VAL,3,0 WIDTH,152 CALL_ARG_VAL,4,0 WIDTH,32 OPT_CONST,151 WIDTH,1 SLICE,1 AND OPT_CONST,1 EQU WIDTH,3 OPT_CONST,1 OPT_CONST,0 MITECONDNOINSTR,4 OPT_CONST,1 CALL_ARG_VAL,2,0 WIDTH,1 EQU WIDTH,3 OPT_CONST,2 OPT_CONST,2 CALL_ARG_VAL,2,0 WIDTH,1 EQU WIDTH,8 CALL_ARG_VAL,5,0 OPT_CONST,0 WIDTH,1 M_EQU OPT_CONST,1 EQU WIDTH,3 OPT_CONST,3 OPT_CONST,2 MITECONDNOINSTR,4 OPT_CONST,3 CALL_ARG_VAL,2,0 WIDTH,1 EQU CALL_ARG_VAL,6,0 OPT_CONST,1 EQU WIDTH,3 OPT_CONST,4 OPT_CONST,5 MITECONDNOINSTR,4 OPT_CONST,4 CALL_ARG_VAL,2,0 WIDTH,1 EQU WIDTH,3 OPT_CONST,6 OPT_CONST,5 CALL_ARG_VAL,2,0 WIDTH,1 EQU CALL_ARG_VAL,7,0 OPT_CONST,1 EQU WIDTH,3 OPT_CONST,6 OPT_CONST,5 MITECONDNOINSTR,4 OPT_CONST,6 CALL_ARG_VAL,2,0 WIDTH,1 EQU WIDTH,8 CALL_ARG_VAL,8,0 OPT_CONST,0 WIDTH,1 M_EQU WIDTH,8 CALL_ARG_VAL,9,0 OPT_CONST,0 WIDTH,1 M_EQU AND OPT_CONST,1 EQU WIDTH,3 OPT_CONST,7 OPT_CONST,6 MITECONDNOINSTR,4 OPT_CONST,7 CALL_ARG_VAL,2,0 WIDTH,1 EQU WIDTH,8 CALL_ARG_VAL,10,0 OPT_CONST,0 WIDTH,1 M_EQU OPT_CONST,1 EQU WIDTH,3 OPT_CONST,0 OPT_CONST,7 MITECONDNOINSTR,4 OPT_CONST,0 MITECONDNOINSTR,4 MITECONDNOINSTR,4 MITECONDNOINSTR,4 MITECONDNOINSTR,4 MITECONDNOINSTR,4 MITECONDNOINSTR,4 MITECONDNOINSTR,4 MITECONDNOINSTR,4 RET +bcid 2 2 WIDTH,2 OPT_CONST,0 CALL_ARG_VAL,2,0 WIDTH,1 EQU CALL_ARG_VAL,3,0 OPT_CONST,1 EQU WIDTH,2 OPT_CONST,1 OPT_CONST,0 MITECONDNOINSTR,4 OPT_CONST,1 CALL_ARG_VAL,2,0 WIDTH,1 EQU WIDTH,2 OPT_CONST,2 OPT_CONST,2 CALL_ARG_VAL,2,0 WIDTH,1 EQU WIDTH,8 CALL_ARG_VAL,4,0 OPT_CONST,0 WIDTH,1 M_EQU OPT_CONST,1 EQU WIDTH,2 OPT_CONST,3 OPT_CONST,2 MITECONDNOINSTR,4 OPT_CONST,3 CALL_ARG_VAL,2,0 WIDTH,1 EQU WIDTH,8 CALL_ARG_VAL,5,0 OPT_CONST,0 WIDTH,1 M_EQU OPT_CONST,1 EQU WIDTH,16 CALL_ARG_VAL,6,0 OPT_CONST,65535 WIDTH,1 M_EQU OPT_CONST,1 EQU WIDTH,2 OPT_CONST,0 OPT_CONST,1 MITECONDNOINSTR,4 OPT_CONST,3 MITECONDNOINSTR,4 OPT_CONST,0 MITECONDNOINSTR,4 MITECONDNOINSTR,4 MITECONDNOINSTR,4 MITECONDNOINSTR,4 RET +bcid 3 3 WIDTH,2 OPT_CONST,1 CALL_ARG_VAL,2,0 WIDTH,1 EQU WIDTH,16 CALL_ARG_VAL,3,0 WIDTH,2 OPT_CONST,2 CALL_ARG_VAL,2,0 WIDTH,1 EQU WIDTH,16 CALL_ARG_VAL,4,0 WIDTH,2 OPT_CONST,3 CALL_ARG_VAL,2,0 WIDTH,1 EQU WIDTH,16 CALL_ARG_VAL,5,0 OPT_CONST,0 MITECONDNOINSTR,4 MITECONDNOINSTR,4 MITECONDNOINSTR,4 RET +bcid 4 4 WIDTH,2 OPT_CONST,1 CALL_ARG_VAL,2,0 WIDTH,1 EQU CALL_ARG_VAL,3,0 WIDTH,2 OPT_CONST,2 CALL_ARG_VAL,2,0 WIDTH,1 EQU CALL_ARG_VAL,4,0 WIDTH,2 OPT_CONST,3 CALL_ARG_VAL,2,0 WIDTH,1 EQU CALL_ARG_VAL,5,0 OPT_CONST,1 MITECONDNOINSTR,4 MITECONDNOINSTR,4 MITECONDNOINSTR,4 RET +bcid 5 5 WIDTH,2 CALL_ARG_VAL,2,0 OPT_CONST,2 WIDTH,1 M_EQU CALL_ARG_VAL,3,0 AND WIDTH,2 CALL_ARG_VAL,2,0 OPT_CONST,3 WIDTH,1 M_EQU CALL_ARG_VAL,4,0 AND OR RET +bcid 6 6 WIDTH,2 CALL_ARG_VAL,2,0 OPT_CONST,2 WIDTH,1 M_EQU CALL_ARG_VAL,3,0 AND RET +bcid 7 7 WIDTH,2 CALL_ARG_VAL,2,0 OPT_CONST,3 WIDTH,1 M_EQU CALL_ARG_VAL,3,0 AND RET +bcid 8 8 WIDTH,2 CALL_ARG_VAL,2,0 OPT_CONST,0 WIDTH,1 M_EQU CALL_ARG_VAL,3,0 AND RET +bcid 9 9 WIDTH,1 CALL_ARG_VAL,2,0 WIDTH,25 CALL_ARG_VAL,3,0 CALL_ARG_VAL,4,0 MITECONDNOINSTR,4 RET +bcid 10 10 WIDTH,3 CALL_ARG_VAL,2,0 OPT_CONST,0 WIDTH,1 M_EQU WIDTH,3 CALL_ARG_VAL,2,0 OPT_CONST,5 WIDTH,1 M_EQU CALL_ARG_VAL,3,0 NOT AND OR RET +bcid 11 11 WIDTH,3 CALL_ARG_VAL,2,0 OPT_CONST,7 WIDTH,1 M_EQU WIDTH,8 CALL_ARG_VAL,3,0 WIDTH,32 PAD OPT_CONST,0 WIDTH,1 M_EQU AND RET +bcid 12 12 WIDTH,3 CALL_ARG_VAL,2,0 OPT_CONST,7 WIDTH,1 M_EQU WIDTH,8 CALL_ARG_VAL,3,0 OPT_CONST,0 WIDTH,1 M_EQU AND RET +bcid 13 13 WIDTH,3 CALL_ARG_VAL,2,0 CALL_ARG_VAL,2,0 WIDTH,32 OPT_CONST,1 WIDTH,3 SHIFT_R XOR RET +bcid 14 14 WIDTH,16 CALL_ARG_VAL,2,0 OPT_CONST,65535 WIDTH,1 M_EQU WIDTH,2 CALL_ARG_VAL,3,0 OPT_CONST,3 WIDTH,1 M_EQU WIDTH,8 CALL_ARG_VAL,4,0 OPT_CONST,0 WIDTH,1 M_EQU AND AND RET +bcid 15 15 WIDTH,2 CALL_ARG_VAL,2,0 OPT_CONST,2 WIDTH,1 M_NEQU RET diff --git a/sim/simv.daidir/cgname.json b/sim/simv.daidir/cgname.json index ae1b108..7344946 100644 --- a/sim/simv.daidir/cgname.json +++ b/sim/simv.daidir/cgname.json @@ -5,9 +5,9 @@ "module", 1 ], - "tb_rchannel": [ - "tb_rchannel", - "TJvMf", + "tb_array_ctrl": [ + "tb_array_ctrl", + "S2s5w", "module", 2 ], diff --git a/sim/simv.daidir/debug_dump/AllModulesSkeletons.sdb b/sim/simv.daidir/debug_dump/AllModulesSkeletons.sdb index 1a200e1..f54e306 100644 Binary files a/sim/simv.daidir/debug_dump/AllModulesSkeletons.sdb and b/sim/simv.daidir/debug_dump/AllModulesSkeletons.sdb differ diff --git a/sim/simv.daidir/debug_dump/HsimSigOptDb.sdb b/sim/simv.daidir/debug_dump/HsimSigOptDb.sdb index cc82874..a3fd1a5 100644 Binary files a/sim/simv.daidir/debug_dump/HsimSigOptDb.sdb and b/sim/simv.daidir/debug_dump/HsimSigOptDb.sdb differ diff --git a/sim/simv.daidir/debug_dump/dve_debug.db.gz b/sim/simv.daidir/debug_dump/dve_debug.db.gz index 6433bbc..d295de0 100644 Binary files a/sim/simv.daidir/debug_dump/dve_debug.db.gz and b/sim/simv.daidir/debug_dump/dve_debug.db.gz differ diff --git a/sim/simv.daidir/debug_dump/fsearch/.create_fsearch_db b/sim/simv.daidir/debug_dump/fsearch/.create_fsearch_db index 4f655bd..ed741b8 100755 --- a/sim/simv.daidir/debug_dump/fsearch/.create_fsearch_db +++ b/sim/simv.daidir/debug_dump/fsearch/.create_fsearch_db @@ -5,5 +5,5 @@ PYTHONPATH=/home/synopsys/vcs-mx/O-2018.09-1/linux64/lib/pylib27 export PYTHONPATH LD_LIBRARY_PATH=/home/synopsys/vcs-mx/O-2018.09-1/linux64/lib:/home/synopsys/vcs-mx/O-2018.09-1/linux64/lib/pylib27 export LD_LIBRARY_PATH -/home/synopsys/vcs-mx/O-2018.09-1/linux64/bin/vcsfind_create_index.exe -z "/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv.daidir/debug_dump/fsearch/./idents_9Anw8J.xml.gz" "/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv.daidir/debug_dump/fsearch/./idents_tapi.xml.gz" -o "/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv.daidir/debug_dump/fsearch/fsearch.db_tmp" +/home/synopsys/vcs-mx/O-2018.09-1/linux64/bin/vcsfind_create_index.exe -z "/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv.daidir/debug_dump/fsearch/./idents_HGElac.xml.gz" "/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv.daidir/debug_dump/fsearch/./idents_tapi.xml.gz" -o "/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv.daidir/debug_dump/fsearch/fsearch.db_tmp" \mv "/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv.daidir/debug_dump/fsearch/fsearch.db_tmp" "/home/ICer/ic_prjs/mc/IC_PRJ/sim/simv.daidir/debug_dump/fsearch/fsearch.db" diff --git a/sim/simv.daidir/debug_dump/fsearch/idents_tapi.xml.gz b/sim/simv.daidir/debug_dump/fsearch/idents_tapi.xml.gz index 0494f0b..f93dcf9 100644 Binary files a/sim/simv.daidir/debug_dump/fsearch/idents_tapi.xml.gz and b/sim/simv.daidir/debug_dump/fsearch/idents_tapi.xml.gz differ diff --git a/sim/simv.daidir/debug_dump/src_files_verilog b/sim/simv.daidir/debug_dump/src_files_verilog index 50c3f7f..9a33539 100644 --- a/sim/simv.daidir/debug_dump/src_files_verilog +++ b/sim/simv.daidir/debug_dump/src_files_verilog @@ -1,4 +1,8 @@ -/home/ICer/ic_prjs/mc/IC_PRJ/rtl/rchannel.v -/home/ICer/ic_prjs/mc/IC_PRJ/rtl/sync_fifo.v -/home/ICer/ic_prjs/mc/IC_PRJ/rtl/sync_fifo_128_to_64.v -/home/ICer/ic_prjs/mc/IC_PRJ/tb/tb_rchannel.v +/home/ICer/ic_prjs/mc/IC_PRJ/rtl/array_ctrl.v +/home/ICer/ic_prjs/mc/IC_PRJ/rtl/array_mux.v +/home/ICer/ic_prjs/mc/IC_PRJ/rtl/array_rd.v +/home/ICer/ic_prjs/mc/IC_PRJ/rtl/array_ref.v +/home/ICer/ic_prjs/mc/IC_PRJ/rtl/array_status_ctrl.v +/home/ICer/ic_prjs/mc/IC_PRJ/rtl/array_wr.v +/home/ICer/ic_prjs/mc/IC_PRJ/rtl/async_fifo.v +/home/ICer/ic_prjs/mc/IC_PRJ/tb/tb_array_ctrl.v diff --git a/sim/simv.daidir/debug_dump/topmodules b/sim/simv.daidir/debug_dump/topmodules index 313b781..e178609 100644 --- a/sim/simv.daidir/debug_dump/topmodules +++ b/sim/simv.daidir/debug_dump/topmodules @@ -1 +1 @@ -} \ No newline at end of file +4U \ No newline at end of file diff --git a/sim/simv.daidir/debug_dump/vir.sdb b/sim/simv.daidir/debug_dump/vir.sdb index d3fa42c..c662910 100644 Binary files a/sim/simv.daidir/debug_dump/vir.sdb and b/sim/simv.daidir/debug_dump/vir.sdb differ diff --git a/sim/simv.daidir/elabmoddb.sdb b/sim/simv.daidir/elabmoddb.sdb index 6f3e14c..abcf7e6 100644 Binary files a/sim/simv.daidir/elabmoddb.sdb and b/sim/simv.daidir/elabmoddb.sdb differ diff --git a/sim/simv.daidir/hslevel_callgraph.sdb b/sim/simv.daidir/hslevel_callgraph.sdb index a3abd14..f767569 100644 Binary files a/sim/simv.daidir/hslevel_callgraph.sdb and b/sim/simv.daidir/hslevel_callgraph.sdb differ diff --git a/sim/simv.daidir/hslevel_level.sdb b/sim/simv.daidir/hslevel_level.sdb index 5f0391d..a285edf 100644 Binary files a/sim/simv.daidir/hslevel_level.sdb and b/sim/simv.daidir/hslevel_level.sdb differ diff --git a/sim/simv.daidir/hslevel_rtime_level.sdb b/sim/simv.daidir/hslevel_rtime_level.sdb index 776e7c2..39d29ff 100644 Binary files a/sim/simv.daidir/hslevel_rtime_level.sdb and b/sim/simv.daidir/hslevel_rtime_level.sdb differ diff --git a/sim/simv.daidir/pcc.sdb b/sim/simv.daidir/pcc.sdb index e4ead4c..3b65f8f 100644 Binary files a/sim/simv.daidir/pcc.sdb and b/sim/simv.daidir/pcc.sdb differ diff --git a/sim/simv.daidir/prof.sdb b/sim/simv.daidir/prof.sdb index a23e7b0..b9986d4 100644 Binary files a/sim/simv.daidir/prof.sdb and b/sim/simv.daidir/prof.sdb differ diff --git a/sim/simv.daidir/rmapats.dat b/sim/simv.daidir/rmapats.dat index b2a8b6a..32949a1 100644 Binary files a/sim/simv.daidir/rmapats.dat and b/sim/simv.daidir/rmapats.dat differ diff --git a/sim/simv.daidir/rmapats.so b/sim/simv.daidir/rmapats.so index 86b5f9a..fbc50c0 100755 Binary files a/sim/simv.daidir/rmapats.so and b/sim/simv.daidir/rmapats.so differ diff --git a/sim/simv.daidir/simv.kdb b/sim/simv.daidir/simv.kdb index 9b53d70..ce57c23 100644 --- a/sim/simv.daidir/simv.kdb +++ b/sim/simv.daidir/simv.kdb @@ -7,7 +7,7 @@ UUM=FALSE KDB=FALSE USE_NOVAS_HOME=FALSE COSIM=FALSE -TOP=tb_rchannel +TOP=tb_array_ctrl OPTION=-ssv -ssy ELAB_OPTION=-ssv -ssy diff --git a/sim/simv.daidir/tt.sdb b/sim/simv.daidir/tt.sdb index 50de359..1502b93 100644 Binary files a/sim/simv.daidir/tt.sdb and b/sim/simv.daidir/tt.sdb differ diff --git a/sim/simv.daidir/vcselab_misc_hsim_fegate.db b/sim/simv.daidir/vcselab_misc_hsim_fegate.db index 1db6754..3f8e6d0 100644 Binary files a/sim/simv.daidir/vcselab_misc_hsim_fegate.db and b/sim/simv.daidir/vcselab_misc_hsim_fegate.db differ diff --git a/sim/simv.daidir/vcselab_misc_hsim_lvl.db b/sim/simv.daidir/vcselab_misc_hsim_lvl.db index 18630e7..bab3828 100644 Binary files a/sim/simv.daidir/vcselab_misc_hsim_lvl.db and b/sim/simv.daidir/vcselab_misc_hsim_lvl.db differ diff --git a/sim/simv.daidir/vcselab_misc_hsim_name.db b/sim/simv.daidir/vcselab_misc_hsim_name.db index 17642c6..885047c 100644 Binary files a/sim/simv.daidir/vcselab_misc_hsim_name.db and b/sim/simv.daidir/vcselab_misc_hsim_name.db differ diff --git a/sim/simv.daidir/vcselab_misc_hsim_uds.db b/sim/simv.daidir/vcselab_misc_hsim_uds.db index 915cf5f..f77d7f5 100644 --- a/sim/simv.daidir/vcselab_misc_hsim_uds.db +++ b/sim/simv.daidir/vcselab_misc_hsim_uds.db @@ -1,3 +1,4 @@ -vcselab_misc_midd.db 445 -vcselab_misc_mnmn.db 24 -vcselab_misc_hsim_name.db 181 +vcselab_misc_midd.db 693 +vcselab_misc_mnmn.db 26 +vcselab_misc_hsim_name.db 209 +vcselab_misc_hsim_merge.db 19304 diff --git a/sim/simv.daidir/vcselab_misc_midd.db b/sim/simv.daidir/vcselab_misc_midd.db index 8c19553..9c67c28 100644 Binary files a/sim/simv.daidir/vcselab_misc_midd.db and b/sim/simv.daidir/vcselab_misc_midd.db differ diff --git a/sim/simv.daidir/vcselab_misc_mnmn.db b/sim/simv.daidir/vcselab_misc_mnmn.db index 808b5a5..828edcb 100644 Binary files a/sim/simv.daidir/vcselab_misc_mnmn.db and b/sim/simv.daidir/vcselab_misc_mnmn.db differ diff --git a/sim/simv.daidir/vcselab_misc_partition.db b/sim/simv.daidir/vcselab_misc_partition.db index 1534898..f076447 100644 Binary files a/sim/simv.daidir/vcselab_misc_partition.db and b/sim/simv.daidir/vcselab_misc_partition.db differ diff --git a/sim/simv.daidir/vcselab_misc_vpdnodenums b/sim/simv.daidir/vcselab_misc_vpdnodenums index 6853fc4..ff1a3cd 100644 Binary files a/sim/simv.daidir/vcselab_misc_vpdnodenums and b/sim/simv.daidir/vcselab_misc_vpdnodenums differ diff --git a/sim/tb.fsdb b/sim/tb.fsdb index 60b8ead..b3841eb 100644 Binary files a/sim/tb.fsdb and b/sim/tb.fsdb differ diff --git a/sim/ucli.key b/sim/ucli.key index f25593b..e69de29 100644 --- a/sim/ucli.key +++ b/sim/ucli.key @@ -1,53 +0,0 @@ -synUtils::getArch -loaddl -simv /home/synopsys/verdi/Verdi_O-2018.09-SP2/share/PLI/VCS/LINUXAMD64/libnovas.so LoadFSDBDumpCmd;LoadFSDBDumpCmd -config ckptfsdbcheck off;config endofsim noexit;config onfail {enable all};config followactivescope on;catch {setUcliVerdiConnected};set watch::resultTagsForVerdiBP { };cbug::config pretty_print auto;fsdbDumpfile {/home/ICer/ic_prjs/mc/IC_PRJ/sim/inter.fsdb} ;fsdbDumpflush ; -sps_interactive -ucliCore::getToolPID -ucliCore::getToolPID -if {[catch {ucliCore::setFocus tool}]} {} -puts $ucliCore::nativeUcliMode -ucliCore::getToolTopPID -pid -synUtils::sendTool -active {_icl_createSharedMemory /tmp/vcs_dve_general.ICer.26345 } -if { [info vars watch::vcbp_str_len_limit_of_get_value] != ""} {set watch::vcbp_str_len_limit_of_get_value 1024} -info command stateVerdiChangeCB -proc stateVerdiChangeCB args { if {$ucliGUI::state eq "terminated"} {puts "\nVERDI_SIM_Terminated\n";catch {setVerdiSimTerminated}}} -trace variable ucliGUI::state wu stateVerdiChangeCB -if {[catch {rename synopsys::restore verdiHack::restore} ]} {puts "0"} -proc synopsys::restore {args} { verdiHack::restore $args; puts "\nVERDI_SIM_RESTORE\n"} -if {[catch {rename quit verdiHack::quit} ]} {puts "0"} -proc quit {args} { if {[string length $args] == 0} { verdiHack::quit; } elseif {([string equal "-h" $args] == 1)||([string equal "-he" $args] == 1)||([string equal "-hel" $args] == 1)||([string equal "-help" $args] == 1)} { puts "\n quit # Exit the simulation.\n \[-noprompt\] (Exit the simulation and Verdi.)\n"} elseif {([string equal "-n" $args] == 1)||([string equal "-no" $args] == 1)||([string equal "-nop" $args] == 1)||([string equal "-nopr" $args] == 1)||([string equal "-nopro" $args] == 1)||([string equal "-noprom" $args] == 1)||([string equal "-nopromp" $args] == 1)||([string equal "-noprompt" $args] == 1)} { puts "\nVERDI_EXIT_N\n" } else { verdiHack::quit $args; } } -if {[catch {rename exit verdiHack::exit} ]} {puts "0"} -proc exit {args} { if {[string length $args] == 0} { verdiHack::exit; } elseif {([string equal "-h" $args] == 1)||([string equal "-he" $args] == 1)||([string equal "-hel" $args] == 1)||([string equal "-help" $args] == 1)} { puts "\n exit # Exit the simulation.\n \[-noprompt\] (Exit the simulation and Verdi.)\n"} elseif {([string equal "-n" $args] == 1)||([string equal "-no" $args] == 1)||([string equal "-nop" $args] == 1)||([string equal "-nopr" $args] == 1)||([string equal "-nopro" $args] == 1)||([string equal "-noprom" $args] == 1)||([string equal "-nopromp" $args] == 1)||([string equal "-noprompt" $args] == 1)} { puts "\nVERDI_EXIT_N\n" } else { verdiHack::exit $args; } } -proc checkpoint::beforeRecreate {} { sps_interactive } -if {[catch {ucliCore::setFocus tool}]} {} -save::getUserdefinedProcs -info procs -lappend ucliCore::resultTagsForVerdi -if {[catch {ucliCore::setFocus tool}]} {} -fsdbDumpvarsByFile {/home/ICer/ic_prjs/mc/IC_PRJ/sim/verdiLog/.tbsimDump_var_file};fsdbDumpflush -fsdbDumpflush -if {[catch {ucliCore::setFocus tool}]} {} -fsdbDumpflush -senv -synUtils::resolveSourceFilename ../tb/tb_rchannel.v -puts $::ucliCore::cbug_active -if {[catch {ucliCore::setFocus tool}]} {} -checkpoint -list -all -stop -if {[catch {ucliCore::setFocus tool}]} {} -run -synEnv::hasFataled -ucliCore::getToolPID -save::getUserdefinedProcs -if {[catch {ucliCore::setFocus tool}]} {} -fsdbDumpflush -senv -synUtils::resolveSourceFilename ../tb/tb_rchannel.v -puts $::ucliCore::cbug_active -if {[catch {ucliCore::setFocus tool}]} {} -checkpoint -list -all -if {[catch {ucliCore::setFocus tool}]} {} -stop -if {[catch {ucliCore::setFocus tool}]} {} -finish; quit diff --git a/sim/vcs.log b/sim/vcs.log index 6331d7f..663f577 100644 --- a/sim/vcs.log +++ b/sim/vcs.log @@ -1,5 +1,5 @@ Chronologic VCS (TM) - Version O-2018.09-1_Full64 -- Wed Aug 6 22:32:17 2025 + Version O-2018.09-1_Full64 -- Wed Aug 13 16:30:57 2025 Copyright (c) 1991-2018 by Synopsys Inc. ALL RIGHTS RESERVED @@ -7,38 +7,99 @@ This program is proprietary and confidential information of Synopsys Inc. and may be used and disclosed only as authorized in a license agreement controlling such use and disclosure. -Parsing design file '../rtl/sync_fifo_128_to_64.v' -Parsing design file '../rtl/sync_fifo.v' -Parsing design file '../rtl/rchannel.v' -Parsing design file '../tb/tb_rchannel.v' +Parsing design file '../rtl/async_fifo.v' +Parsing design file '../rtl/array_ctrl.v' +Parsing design file '../rtl/array_status_ctrl.v' +Parsing design file '../rtl/array_wr.v' +Parsing design file '../rtl/array_rd.v' +Parsing design file '../rtl/array_ref.v' +Parsing design file '../rtl/array_mux.v' +Parsing design file '../tb/tb_array_ctrl.v' Top Level Modules: - tb_rchannel + tb_array_ctrl TimeScale is 1 ns / 1 ps Starting vcs inline pass... 1 module and 0 UDP read. -recompiling module tb_rchannel +recompiling module tb_array_ctrl make[1]: Entering directory '/home/ICer/ic_prjs/mc/IC_PRJ/sim/csrc' make[1]: Leaving directory '/home/ICer/ic_prjs/mc/IC_PRJ/sim/csrc' make[1]: Entering directory '/home/ICer/ic_prjs/mc/IC_PRJ/sim/csrc' rm -f _csrc*.so pre_vcsobj_*.so share_vcsobj_*.so if [ -x ../simv ]; then chmod -x ../simv; fi -g++ -o ../simv -Wl,-rpath-link=./ -Wl,-rpath='$ORIGIN'/simv.daidir/ -Wl,-rpath=./simv.daidir/ -Wl,-rpath='$ORIGIN'/simv.daidir//scsim.db.dir -rdynamic -Wl,-rpath=/home/synopsys/vcs-mx/O-2018.09-1/linux64/lib -L/home/synopsys/vcs-mx/O-2018.09-1/linux64/lib objs/amcQw_d.o _25796_archive_1.so SIM_l.o rmapats_mop.o rmapats.o rmar.o rmar_nd.o rmar_llvm_0_1.o rmar_llvm_0_0.o -lzerosoft_rt_stubs -lvirsim -lerrorinf -lsnpsmalloc -lvfs -lvcsnew -lsimprofile -luclinative /home/synopsys/vcs-mx/O-2018.09-1/linux64/lib/vcs_tls.o -Wl,-whole-archive -lvcsucli -Wl,-no-whole-archive _vcs_pli_stub_.o /home/synopsys/vcs-mx/O-2018.09-1/linux64/lib/vcs_save_restore_new.o /home/synopsys/verdi/Verdi_O-2018.09-SP2/share/PLI/VCS/LINUX64/pli.a -ldl -lc -lm -lpthread -ldl +g++ -o ../simv -Wl,-rpath-link=./ -Wl,-rpath='$ORIGIN'/simv.daidir/ -Wl,-rpath=./simv.daidir/ -Wl,-rpath='$ORIGIN'/simv.daidir//scsim.db.dir -rdynamic -Wl,-rpath=/home/synopsys/vcs-mx/O-2018.09-1/linux64/lib -L/home/synopsys/vcs-mx/O-2018.09-1/linux64/lib objs/amcQw_d.o _5573_archive_1.so SIM_l.o rmapats_mop.o rmapats.o rmar.o rmar_nd.o rmar_llvm_0_1.o rmar_llvm_0_0.o -lzerosoft_rt_stubs -lvirsim -lerrorinf -lsnpsmalloc -lvfs -lvcsnew -lsimprofile -luclinative /home/synopsys/vcs-mx/O-2018.09-1/linux64/lib/vcs_tls.o -Wl,-whole-archive -lvcsucli -Wl,-no-whole-archive _vcs_pli_stub_.o /home/synopsys/vcs-mx/O-2018.09-1/linux64/lib/vcs_save_restore_new.o /home/synopsys/verdi/Verdi_O-2018.09-SP2/share/PLI/VCS/LINUX64/pli.a -ldl -lc -lm -lpthread -ldl ../simv up to date make[1]: Leaving directory '/home/ICer/ic_prjs/mc/IC_PRJ/sim/csrc' Chronologic VCS simulator copyright 1991-2018 Contains Synopsys proprietary information. -Compiler version O-2018.09-1_Full64; Runtime version O-2018.09-1_Full64; Aug 6 22:32 2025 +Compiler version O-2018.09-1_Full64; Runtime version O-2018.09-1_Full64; Aug 13 16:31 2025 *Verdi* Loading libsscore_vcs201809.so FSDB Dumper for VCS, Release Verdi_O-2018.09-SP2, Linux x86_64/64bit, 02/21/2019 (C) 1996 - 2019 by Synopsys, Inc. *Verdi* : Create FSDB file 'tb.fsdb' -*Verdi* : Begin traversing the scope (tb_rchannel), layer (0). +*Verdi* : Begin traversing the scope (tb_array_ctrl), layer (0). *Verdi* : Enable +all dumping. *Verdi* : End of traversing. -$finish called from file "../tb/tb_rchannel.v", line 64. -$finish at simulation time 365000 +VCD+ Writer O-2018.09-1_Full64 Copyright (c) 1991-2018 by Synopsys Inc. +Time: 0, 写有效: 1, 读有效: 0, 刷新使能: 0, CSN: 1, 行地址: 0000, 列地址(写): 00, 列地址(读): 00 +Time: 354000, 写有效: 1, 读有效: 0, 刷新使能: 0, CSN: 1, 行地址: 5678, 列地址(写): 0b, 列地址(读): 00 +Time: 359000, 写有效: 1, 读有效: 0, 刷新使能: 0, CSN: 0, 行地址: 5678, 列地址(写): 0b, 列地址(读): 00 +Time: 376000, 写有效: 0, 读有效: 0, 刷新使能: 0, CSN: 0, 行地址: 5678, 列地址(写): 0b, 列地址(读): 00 +Time: 379000, 写有效: 1, 读有效: 0, 刷新使能: 0, CSN: 0, 行地址: 5678, 列地址(写): 0b, 列地址(读): 00 +Time: 381000, 写有效: 0, 读有效: 0, 刷新使能: 0, CSN: 0, 行地址: 5678, 列地址(写): 0c, 列地址(读): 00 +Time: 384000, 写有效: 1, 读有效: 0, 刷新使能: 0, CSN: 0, 行地址: 5678, 列地址(写): 0c, 列地址(读): 00 +Time: 386000, 写有效: 0, 读有效: 0, 刷新使能: 0, CSN: 0, 行地址: 5678, 列地址(写): 0d, 列地址(读): 00 +Time: 389000, 写有效: 1, 读有效: 0, 刷新使能: 0, CSN: 0, 行地址: 5678, 列地址(写): 0d, 列地址(读): 00 +Time: 404000, 写有效: 1, 读有效: 0, 刷新使能: 0, CSN: 1, 行地址: 5678, 列地址(写): 0d, 列地址(读): 00 +Time: 419000, 写有效: 1, 读有效: 0, 刷新使能: 0, CSN: 1, 行地址: 0000, 列地址(写): 0d, 列地址(读): 00 +Time: 421000, 写有效: 1, 读有效: 0, 刷新使能: 0, CSN: 1, 行地址: 5678, 列地址(写): 0d, 列地址(读): 00 +Time: 721000, 写有效: 1, 读有效: 0, 刷新使能: 0, CSN: 1, 行地址: 1234, 列地址(写): 0a, 列地址(读): 00 +Time: 726000, 写有效: 1, 读有效: 0, 刷新使能: 0, CSN: 0, 行地址: 1234, 列地址(写): 0a, 列地址(读): 00 +Time: 744000, 写有效: 0, 读有效: 0, 刷新使能: 0, CSN: 0, 行地址: 1234, 列地址(写): 0a, 列地址(读): 00 +Time: 746000, 写有效: 1, 读有效: 0, 刷新使能: 0, CSN: 0, 行地址: 1234, 列地址(写): 0a, 列地址(读): 00 +Time: 766000, 写有效: 1, 读有效: 0, 刷新使能: 0, CSN: 1, 行地址: 1234, 列地址(写): 0a, 列地址(读): 00 +Time: 781000, 写有效: 1, 读有效: 0, 刷新使能: 0, CSN: 1, 行地址: 0000, 列地址(写): 0a, 列地址(读): 00 +Time: 1004000, 写有效: 1, 读有效: 0, 刷新使能: 0, CSN: 1, 行地址: 9abc, 列地址(写): 0a, 列地址(读): 0e +Time: 1009000, 写有效: 1, 读有效: 0, 刷新使能: 0, CSN: 0, 行地址: 9abc, 列地址(写): 0a, 列地址(读): 0e +Time: 1026000, 写有效: 1, 读有效: 1, 刷新使能: 0, CSN: 0, 行地址: 9abc, 列地址(写): 0a, 列地址(读): 0e +Time: 1029000, 写有效: 1, 读有效: 0, 刷新使能: 0, CSN: 0, 行地址: 9abc, 列地址(写): 0a, 列地址(读): 0e +Time: 1049000, 写有效: 1, 读有效: 0, 刷新使能: 0, CSN: 1, 行地址: 9abc, 列地址(写): 0a, 列地址(读): 0e +Time: 1064000, 写有效: 1, 读有效: 0, 刷新使能: 0, CSN: 1, 行地址: 0000, 列地址(写): 0a, 列地址(读): 0e +Time: 1066000, 写有效: 1, 读有效: 0, 刷新使能: 0, CSN: 1, 行地址: 1234, 列地址(写): 0a, 列地址(读): 0e +Time: 1166000, 写有效: 1, 读有效: 0, 刷新使能: 0, CSN: 1, 行地址: 9abc, 列地址(写): 0e, 列地址(读): 0e +Time: 1169000, 写有效: 1, 读有效: 0, 刷新使能: 0, CSN: 0, 行地址: 9abc, 列地址(写): 0e, 列地址(读): 0e +Time: 1186000, 写有效: 0, 读有效: 0, 刷新使能: 0, CSN: 0, 行地址: 9abc, 列地址(写): 0e, 列地址(读): 0e +Time: 1189000, 写有效: 1, 读有效: 0, 刷新使能: 0, CSN: 0, 行地址: 9abc, 列地址(写): 0e, 列地址(读): 0e +Time: 1209000, 写有效: 1, 读有效: 0, 刷新使能: 0, CSN: 1, 行地址: 9abc, 列地址(写): 0e, 列地址(读): 0e +Time: 1224000, 写有效: 1, 读有效: 0, 刷新使能: 0, CSN: 1, 行地址: 0000, 列地址(写): 0e, 列地址(读): 0e +Time: 1226000, 写有效: 1, 读有效: 0, 刷新使能: 0, CSN: 1, 行地址: 9abc, 列地址(写): 0e, 列地址(读): 0e +Time: 1446000, 写有效: 1, 读有效: 0, 刷新使能: 1, CSN: 1, 行地址: 9abc, 列地址(写): 0e, 列地址(读): 0e +Time: 1696000, 写有效: 1, 读有效: 0, 刷新使能: 0, CSN: 1, 行地址: 9abc, 列地址(写): 0e, 列地址(读): 0e +Time: 1796000, 写有效: 1, 读有效: 0, 刷新使能: 1, CSN: 1, 行地址: 9abc, 列地址(写): 0e, 列地址(读): 0e +Time: 1846000, 写有效: 1, 读有效: 0, 刷新使能: 1, CSN: 1, 行地址: def0, 列地址(写): 0e, 列地址(读): 0f +Time: 1849000, 写有效: 1, 读有效: 0, 刷新使能: 1, CSN: 0, 行地址: def0, 列地址(写): 0e, 列地址(读): 0f +Time: 1866000, 写有效: 1, 读有效: 1, 刷新使能: 1, CSN: 0, 行地址: def0, 列地址(写): 0e, 列地址(读): 0f +Time: 1869000, 写有效: 1, 读有效: 0, 刷新使能: 1, CSN: 0, 行地址: def0, 列地址(写): 0e, 列地址(读): 0f +Time: 1889000, 写有效: 1, 读有效: 0, 刷新使能: 1, CSN: 1, 行地址: def0, 列地址(写): 0e, 列地址(读): 0f +Time: 1904000, 写有效: 1, 读有效: 0, 刷新使能: 1, CSN: 1, 行地址: 0000, 列地址(写): 0e, 列地址(读): 0f +Time: 1906000, 写有效: 1, 读有效: 0, 刷新使能: 0, CSN: 1, 行地址: 9abc, 列地址(写): 0e, 列地址(读): 0f +Time: 2106000, 写有效: 1, 读有效: 0, 刷新使能: 0, CSN: 1, 行地址: ffff, 列地址(写): 3f, 列地址(读): 0f +Time: 2111000, 写有效: 1, 读有效: 0, 刷新使能: 0, CSN: 0, 行地址: ffff, 列地址(写): 3f, 列地址(读): 0f +Time: 2129000, 写有效: 0, 读有效: 0, 刷新使能: 0, CSN: 0, 行地址: ffff, 列地址(写): 3f, 列地址(读): 0f +Time: 2131000, 写有效: 1, 读有效: 0, 刷新使能: 0, CSN: 0, 行地址: ffff, 列地址(写): 3f, 列地址(读): 0f +Time: 2151000, 写有效: 1, 读有效: 0, 刷新使能: 0, CSN: 1, 行地址: ffff, 列地址(写): 3f, 列地址(读): 0f +Time: 2166000, 写有效: 1, 读有效: 0, 刷新使能: 0, CSN: 1, 行地址: 0000, 列地址(写): 3f, 列地址(读): 0f +Time: 2169000, 写有效: 1, 读有效: 0, 刷新使能: 0, CSN: 1, 行地址: ffff, 列地址(写): 3f, 列地址(读): 0f +Time: 2371000, 写有效: 1, 读有效: 0, 刷新使能: 0, CSN: 0, 行地址: ffff, 列地址(写): 3f, 列地址(读): 0f +Time: 2389000, 写有效: 0, 读有效: 0, 刷新使能: 0, CSN: 0, 行地址: ffff, 列地址(写): 3f, 列地址(读): 0f +Time: 2391000, 写有效: 1, 读有效: 0, 刷新使能: 0, CSN: 0, 行地址: ffff, 列地址(写): 3f, 列地址(读): 0f +Time: 2411000, 写有效: 1, 读有效: 0, 刷新使能: 0, CSN: 1, 行地址: ffff, 列地址(写): 3f, 列地址(读): 0f +Time: 2426000, 写有效: 1, 读有效: 0, 刷新使能: 0, CSN: 1, 行地址: 0000, 列地址(写): 3f, 列地址(读): 0f +Time: 2429000, 写有效: 1, 读有效: 0, 刷新使能: 0, CSN: 1, 行地址: def0, 列地址(写): 3f, 列地址(读): 0f +所有测试场景完成! +$finish called from file "../tb/tb_array_ctrl.v", line 207. +$finish at simulation time 3648750 V C S S i m u l a t i o n R e p o r t -Time: 365000 ps -CPU Time: 0.480 seconds; Data structure size: 0.0Mb -Wed Aug 6 22:32:19 2025 -CPU time: .521 seconds to compile + .480 seconds to elab + .391 seconds to link + .525 seconds in simulation +Time: 3648750 ps +CPU Time: 2.050 seconds; Data structure size: 0.0Mb +Wed Aug 13 16:31:01 2025 +CPU time: 1.470 seconds to compile + 1.041 seconds to elab + .287 seconds to link + 2.081 seconds in simulation diff --git a/sim/verdiLog/compiler.log b/sim/verdiLog/compiler.log index 7ba8f37..755f227 100644 --- a/sim/verdiLog/compiler.log +++ b/sim/verdiLog/compiler.log @@ -2,12 +2,28 @@ Command arguments: +define+verilog -f filelist.f - ../rtl/sync_fifo_128_to_64.v - ../rtl/sync_fifo.v - ../rtl/rchannel.v - ../tb/tb_rchannel.v + ../rtl/async_fifo.v + ../rtl/array_ctrl.v + ../rtl/array_status_ctrl.v + ../rtl/array_wr.v + ../rtl/array_rd.v + ../rtl/array_ref.v + ../rtl/array_mux.v + ../tb/tb_array_ctrl.v + +*Error* nonconstant index +"../rtl/async_fifo.v", 79: + +*Error* nonconstant index +"../rtl/async_fifo.v", 80: + +*Error* nonconstant index +"../rtl/async_fifo.v", 82: + +*Error* nonconstant index +"../rtl/async_fifo.v", 83: Highest level modules: -tb_rchannel +tb_array_ctrl -Total 0 error(s), 0 warning(s) +Total 4 error(s), 0 warning(s) diff --git a/sim/verdiLog/novas.log b/sim/verdiLog/novas.log index b2c838e..157ce72 100644 --- a/sim/verdiLog/novas.log +++ b/sim/verdiLog/novas.log @@ -8,5 +8,3 @@ This software may only be used in accordance with the terms and conditions of a All other use, reproduction, or distribution of this software is strictly prohibited. -Info: Running in interactive mode. -Info: Running in interactive mode. diff --git a/sim/verdiLog/novas_autosave.ses b/sim/verdiLog/novas_autosave.ses index 008ce83..cf9f53a 100644 --- a/sim/verdiLog/novas_autosave.ses +++ b/sim/verdiLog/novas_autosave.ses @@ -18,16 +18,16 @@ AnnotationShow = 0 Console = FALSE powerDumped = 0 [hb] -postSimFile = /home/ICer/ic_prjs/mc/IC_PRJ/sim/inter.fsdb -syncTime = 90000 -viewport = 0 20 1914 774 0 0 265 1912 -activeNode = "tb_rchannel" -activeScope = "tb_rchannel" -activeFile = "../tb/tb_rchannel.v" +postSimFile = /home/ICer/ic_prjs/mc/IC_PRJ/sim/tb.fsdb +syncTime = 2168750 +viewport = 0 20 1918 778 0 0 253 898 +activeNode = "tb_array_ctrl" +activeScope = "tb_array_ctrl" +activeFile = "../tb/tb_array_ctrl.v" interactiveMode = False viewType = Source simulatorMode = False -sourceBeginLine = 0 +sourceBeginLine = 2 baMode = False srcLineNum = True AutoWrap = True @@ -44,23 +44,23 @@ DnDtraceCrossHierOnly = True traceIncTopPort = False leadingZero = False signalPane = False -Scope1 = "tb_rchannel" -rangeSelection = 1 1 1 5 1 1 +Scope1 = "tb_array_ctrl" +multipleSelection = 1 2 2 0 0 sdfCheckUndef = FALSE simFlow = FALSE [hb.design] importCmd = "-f" "filelist.f" invokeDir = /home/ICer/ic_prjs/mc/IC_PRJ/sim [hb.sourceTab.1] -scope = tb_rchannel -File = /home/ICer/ic_prjs/mc/IC_PRJ/tb/tb_rchannel.v -Line = 1 +scope = tb_array_ctrl +File = /home/ICer/ic_prjs/mc/IC_PRJ/tb/tb_array_ctrl.v +Line = 3 [nMemoryManager] -WaveformFile = /home/ICer/ic_prjs/mc/IC_PRJ/sim/inter.fsdb +WaveformFile = /home/ICer/ic_prjs/mc/IC_PRJ/sim/tb.fsdb UserActionNum = 0 nMemWindowNum = 0 [wave.0] -viewPort = 0 27 1914 615 285 195 +viewPort = 0 27 1918 673 227 36 primaryWindow = TRUE SessionFile = /home/ICer/ic_prjs/mc/IC_PRJ/sim/verdiLog/novas_autosave.ses.wave.0 displayGrid = FALSE diff --git a/sim/verdiLog/novas_autosave.ses.config b/sim/verdiLog/novas_autosave.ses.config index d9e5c74..f359711 100644 --- a/sim/verdiLog/novas_autosave.ses.config +++ b/sim/verdiLog/novas_autosave.ses.config @@ -1,7 +1,7 @@ [qBaseWindowStateGroup] qDockerWindowMgr_C\qBaseWindowRestoreStateGroup\qBaseWindow_saveRestoreSession_group\qDockerWindow_qDockContentType\Verdi=1 qDockerWindowMgr_C\qBaseWindowRestoreStateGroup\qBaseWindow_saveRestoreSession_group\qDockerWindow_qDockContentType\nWave=1 -qDockerWindowMgr_C\qBaseWindowRestoreStateGroup\qBaseWindow_saveRestoreSession_group\qDockerWindowMgr_saveDockerChildList\Verdi_1=14 +qDockerWindowMgr_C\qBaseWindowRestoreStateGroup\qBaseWindow_saveRestoreSession_group\qDockerWindowMgr_saveDockerChildList\Verdi_1=7 qDockerWindowMgr_C\qBaseWindowRestoreStateGroup\qBaseWindow_saveRestoreSession_group\qDockerWindowMgr_saveDockerChildList\Verdi_1_0=widgetDock_hdlHier_1 qDockerWindowMgr_C\qBaseWindowRestoreStateGroup\qBaseWindow_saveRestoreSession_group\qDockerWindowMgr_saveDockerChildList\Verdi_1_1=widgetDock_messageWindow_1 qDockerWindowMgr_C\qBaseWindowRestoreStateGroup\qBaseWindow_saveRestoreSession_group\qDockerWindowMgr_saveDockerChildList\Verdi_1_2=widgetDock_hdlSrc_1 @@ -9,13 +9,6 @@ qDockerWindowMgr_C\qBaseWindowRestoreStateGroup\qBaseWindow_saveRestoreSession_g qDockerWindowMgr_C\qBaseWindowRestoreStateGroup\qBaseWindow_saveRestoreSession_group\qDockerWindowMgr_saveDockerChildList\Verdi_1_4=widgetDock_svtbHier_1 qDockerWindowMgr_C\qBaseWindowRestoreStateGroup\qBaseWindow_saveRestoreSession_group\qDockerWindowMgr_saveDockerChildList\Verdi_1_5=windowDock_OneSearch_1 qDockerWindowMgr_C\qBaseWindowRestoreStateGroup\qBaseWindow_saveRestoreSession_group\qDockerWindowMgr_saveDockerChildList\Verdi_1_6=windowDock_nWave_1 -qDockerWindowMgr_C\qBaseWindowRestoreStateGroup\qBaseWindow_saveRestoreSession_group\qDockerWindowMgr_saveDockerChildList\Verdi_1_7=windowDock_InteractiveConsole_1 -qDockerWindowMgr_C\qBaseWindowRestoreStateGroup\qBaseWindow_saveRestoreSession_group\qDockerWindowMgr_saveDockerChildList\Verdi_1_8=widgetDock_svtbLocal_1 -qDockerWindowMgr_C\qBaseWindowRestoreStateGroup\qBaseWindow_saveRestoreSession_group\qDockerWindowMgr_saveDockerChildList\Verdi_1_9=widgetDock_svtbWatch_1 -qDockerWindowMgr_C\qBaseWindowRestoreStateGroup\qBaseWindow_saveRestoreSession_group\qDockerWindowMgr_saveDockerChildList\Verdi_1_10=widgetDock_svtbStack_1 -qDockerWindowMgr_C\qBaseWindowRestoreStateGroup\qBaseWindow_saveRestoreSession_group\qDockerWindowMgr_saveDockerChildList\Verdi_1_11=widgetDock_svtbClassBrowser_1 -qDockerWindowMgr_C\qBaseWindowRestoreStateGroup\qBaseWindow_saveRestoreSession_group\qDockerWindowMgr_saveDockerChildList\Verdi_1_12=widgetDock_svtbObjectBrowser_1 -qDockerWindowMgr_C\qBaseWindowRestoreStateGroup\qBaseWindow_saveRestoreSession_group\qDockerWindowMgr_saveDockerChildList\Verdi_1_13=widgetDock_svtbMember_1 Verdi_1\qBaseWindowRestoreStateGroup\qBaseWindow_saveRestoreSession_group\qDockerWindow_encode_to_relative_window_id_name=true Verdi_1\qBaseWindowRestoreStateGroup\qBaseWindow_saveRestoreSession_group\qDockerWindow_restoreNewChildState=true Verdi_1\qBaseWindowRestoreStateGroup\qBaseWindow_saveRestoreSession_group\qBaseDockWidgetGroup\widgetDock_hdlHier_1\isVisible=false @@ -31,20 +24,12 @@ Verdi_1\qBaseWindowRestoreStateGroup\qBaseWindow_saveRestoreSession_group\qBaseD Verdi_1\qBaseWindowRestoreStateGroup\qBaseWindow_saveRestoreSession_group\qBaseDockWidgetGroup\windowDock_nWave_1\qBaseWindowBeMax=1 Verdi_1\qBaseWindowRestoreStateGroup\qBaseWindow_saveRestoreSession_group\qBaseDockWidgetGroup\windowDock_nWave_1\qBaseWindowBeFix=1 Verdi_1\qBaseWindowRestoreStateGroup\qBaseWindow_saveRestoreSession_group\qBaseDockWidgetGroup\windowDock_nWave_1\dockIsFloating=false -Verdi_1\qBaseWindowRestoreStateGroup\qBaseWindow_saveRestoreSession_group\qBaseDockWidgetGroup\windowDock_InteractiveConsole_1\isNestedWindow=1 -Verdi_1\qBaseWindowRestoreStateGroup\qBaseWindow_saveRestoreSession_group\qBaseDockWidgetGroup\windowDock_InteractiveConsole_1\isVisible=false -Verdi_1\qBaseWindowRestoreStateGroup\qBaseWindow_saveRestoreSession_group\qBaseDockWidgetGroup\widgetDock_svtbLocal_1\isVisible=false -Verdi_1\qBaseWindowRestoreStateGroup\qBaseWindow_saveRestoreSession_group\qBaseDockWidgetGroup\widgetDock_svtbWatch_1\isVisible=false -Verdi_1\qBaseWindowRestoreStateGroup\qBaseWindow_saveRestoreSession_group\qBaseDockWidgetGroup\widgetDock_svtbStack_1\isVisible=false -Verdi_1\qBaseWindowRestoreStateGroup\qBaseWindow_saveRestoreSession_group\qBaseDockWidgetGroup\widgetDock_svtbClassBrowser_1\isVisible=false -Verdi_1\qBaseWindowRestoreStateGroup\qBaseWindow_saveRestoreSession_group\qBaseDockWidgetGroup\widgetDock_svtbObjectBrowser_1\isVisible=false -Verdi_1\qBaseWindowRestoreStateGroup\qBaseWindow_saveRestoreSession_group\qBaseDockWidgetGroup\widgetDock_svtbMember_1\isVisible=false Verdi_1\qBaseWindowRestoreStateGroup\qBaseWindow_saveRestoreSession_group\ProductVersion=201809 -Verdi_1\qBaseWindowRestoreStateGroup\qBaseWindow_saveRestoreSession_group\Layout="@ByteArray(\0\0\0\xff\0\0\0\0\xfd\0\0\0\x2\0\0\0\x2\0\0\az\0\0\0\x88\xfc\x1\0\0\0\x3\xfc\0\0\0\0\0\0\x2\x30\0\0\0\0\0\xff\xff\xff\xfa\xff\xff\xff\xff\x1\0\0\0\x5\xfb\0\0\0(\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0h\0\x64\0l\0H\0i\0\x65\0r\0_\0\x31\0\0\0\0\0\xff\xff\xff\xff\0\0\0V\0\xff\xff\xff\xfb\0\0\0*\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0s\0v\0t\0\x62\0H\0i\0\x65\0r\0_\0\x31\0\0\0\0\0\xff\xff\xff\xff\0\0\0V\0\xff\xff\xff\xfb\0\0\0,\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0s\0v\0t\0\x62\0S\0t\0\x61\0\x63\0k\0_\0\x31\0\0\0\0\0\xff\xff\xff\xff\0\0\0\xda\0\xff\xff\xff\xfb\0\0\0:\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0s\0v\0t\0\x62\0\x43\0l\0\x61\0s\0s\0\x42\0r\0o\0w\0s\0\x65\0r\0_\0\x31\0\0\0\0\0\xff\xff\xff\xff\0\0\0\xd1\0\xff\xff\xff\xfb\0\0\0<\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0s\0v\0t\0\x62\0O\0\x62\0j\0\x65\0\x63\0t\0\x42\0r\0o\0w\0s\0\x65\0r\0_\0\x31\0\0\0\0\0\xff\xff\xff\xff\0\0\x1\x19\0\xff\xff\xff\xfc\0\0\x2\x36\0\0\0\xc6\0\0\0\0\0\xff\xff\xff\xfa\xff\xff\xff\xff\x1\0\0\0\x3\xfb\0\0\0.\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0s\0i\0g\0n\0\x61\0l\0L\0i\0s\0t\0_\0\x31\0\0\0\0\0\xff\xff\xff\xff\0\0\0k\0\0\0k\xfb\0\0\0,\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0s\0v\0t\0\x62\0L\0o\0\x63\0\x61\0l\0_\0\x31\0\0\0\0\0\xff\xff\xff\xff\0\0\0\xa9\0\xff\xff\xff\xfb\0\0\0.\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0s\0v\0t\0\x62\0M\0\x65\0m\0\x62\0\x65\0r\0_\0\x31\0\0\0\0\0\xff\xff\xff\xff\0\0\0\x8f\0\xff\xff\xff\xfb\0\0\0&\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0h\0\x64\0l\0S\0r\0\x63\0_\0\x31\0\0\0\x3\x2\0\0\x4x\0\0\0k\0\xff\xff\xff\0\0\0\x3\0\0\az\0\0\x2\x82\xfc\x1\0\0\0\x2\xfc\0\0\0\0\0\0\az\0\0\x1-\0\xff\xff\xff\xfa\0\0\0\x2\x1\0\0\0\x5\xfb\0\0\0\x34\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0m\0\x65\0s\0s\0\x61\0g\0\x65\0W\0i\0n\0\x64\0o\0w\0_\0\x31\0\0\0\0\0\xff\xff\xff\xff\0\0\0\xa0\0\xff\xff\xff\xfb\0\0\0,\0w\0i\0n\0\x64\0o\0w\0\x44\0o\0\x63\0k\0_\0O\0n\0\x65\0S\0\x65\0\x61\0r\0\x63\0h\0_\0\x31\0\0\0\0\0\xff\xff\xff\xff\0\0\x2,\0\xff\xff\xff\xfb\0\0\0$\0w\0i\0n\0\x64\0o\0w\0\x44\0o\0\x63\0k\0_\0n\0W\0\x61\0v\0\x65\0_\0\x31\x1\0\0\0\0\xff\xff\xff\xff\0\0\x1-\0\xff\xff\xff\xfb\0\0\0>\0w\0i\0n\0\x64\0o\0w\0\x44\0o\0\x63\0k\0_\0I\0n\0t\0\x65\0r\0\x61\0\x63\0t\0i\0v\0\x65\0\x43\0o\0n\0s\0o\0l\0\x65\0_\0\x31\0\0\0\0\0\xff\xff\xff\xff\0\0\x1W\0\xff\xff\xff\xfb\0\0\0 \0w\0i\0n\0\x64\0o\0w\0\x44\0o\0\x63\0k\0_\0n\0W\0\x61\0v\0\x65\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\xfb\0\0\0,\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0s\0v\0t\0\x62\0W\0\x61\0t\0\x63\0h\0_\0\x31\0\0\0\x4\xfc\0\0\x2~\0\0\0\xa9\0\xff\xff\xff\0\0\az\0\0\0\0\0\0\0\x4\0\0\0\x4\0\0\0\b\0\0\0\b\xfc\0\0\0\x6\0\0\0\x2\0\0\0\x10\0\0\0.\0H\0\x42\0_\0I\0M\0P\0O\0R\0T\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0(\0H\0\x42\0_\0N\0\x45\0W\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0$\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0(\0H\0\x42\0_\0S\0I\0G\0N\0\x41\0L\0_\0P\0\x41\0N\0\x45\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0~\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0$\0H\0\x42\0_\0M\0U\0L\0T\0I\0_\0T\0\x41\0\x42\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0\xa2\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0*\0H\0\x42\0_\0\x45\0\x44\0I\0T\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0\xc6\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0$\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\x1\0\0\0\xea\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0,\0H\0\x42\0_\0T\0R\0\x41\0\x43\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\x1\x18\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0.\0H\0\x42\0_\0S\0O\0U\0R\0\x43\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\x2/\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0,\0t\0o\0o\0l\0\x62\0\x61\0r\0H\0\x42\0_\0T\0O\0G\0G\0L\0\x45\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x3\x1\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x32\0t\0o\0o\0l\0\x62\0\x61\0r\0H\0\x42\0_\0\x45\0M\0U\0L\0\x41\0T\0I\0O\0N\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x2\xbb\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x30\0t\0o\0o\0l\0\x62\0\x61\0r\0H\0\x42\0_\0P\0R\0O\0\x44\0T\0Y\0P\0\x45\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x3\x16\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0<\0\x41\0\x42\0V\0_\0\x41\0\x44\0\x44\0_\0T\0\x45\0M\0P\0O\0R\0\x41\0R\0Y\0_\0\x41\0S\0S\0\x45\0R\0T\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x2\xe8\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x1e\0U\0V\0M\0_\0\x41\0W\0\x41\0R\0\x45\0_\0\x44\0\x45\0\x42\0U\0G\0\0\0\x3\f\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0 \0V\0\x43\0_\0\x41\0P\0P\0S\0_\0T\0O\0O\0L\0_\0\x42\0O\0X\x1\0\0\x3\x1\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x14\0L\0O\0G\0_\0V\0I\0\x45\0W\0\x45\0R\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0$\0\x41\0M\0S\0_\0\x43\0O\0N\0\x46\0I\0G\0_\0T\0O\0O\0L\0\x42\0\x41\0R\x1\0\0\x3%\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x3\0\0\0\x30\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0&\0H\0\x42\0_\0\x42\0\x41\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x1\xfb\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x32\0t\0o\0o\0l\0\x42\0\x61\0r\0\x46\0o\0r\0m\0\x61\0l\0V\0\x65\0r\0i\0\x66\0i\0\x63\0\x61\0t\0i\0o\0n\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x4\0\0\0>\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0R\0\x45\0W\0I\0N\0\x44\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0R\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0R\0\x45\0W\0I\0N\0\x44\0_\0U\0N\0\x44\0O\0_\0R\0\x45\0\x44\0O\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\x1\0\0\x1\x5\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0@\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0R\0\x45\0V\0\x45\0R\0S\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\x1\0\0\x1\x95\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x38\0H\0\x42\0_\0P\0O\0W\0\x45\0R\0_\0T\0R\0\x41\0\x43\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0:\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0V\0S\0I\0M\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0:\0N\0O\0V\0\x41\0S\0_\0\x45\0M\0U\0L\0\x41\0T\0I\0O\0N\0_\0\x44\0\x45\0\x42\0U\0G\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0\x1a\0\x43\0V\0G\0_\0\x43\0\x45\0R\0_\0P\0\x41\0N\0\x45\0L\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0)" +Verdi_1\qBaseWindowRestoreStateGroup\qBaseWindow_saveRestoreSession_group\Layout="@ByteArray(\0\0\0\xff\0\0\0\0\xfd\0\0\0\x2\0\0\0\x2\0\0\a~\0\0\x1[\xfc\x1\0\0\0\x3\xfc\0\0\0\0\0\0\x2u\0\0\0\0\0\xff\xff\xff\xfa\xff\xff\xff\xff\x1\0\0\0\x2\xfb\0\0\0(\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0h\0\x64\0l\0H\0i\0\x65\0r\0_\0\x31\0\0\0\0\0\xff\xff\xff\xff\0\0\0V\0\xff\xff\xff\xfb\0\0\0*\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0s\0v\0t\0\x62\0H\0i\0\x65\0r\0_\0\x31\0\0\0\0\0\xff\xff\xff\xff\0\0\0V\0\xff\xff\xff\xfb\0\0\0.\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0s\0i\0g\0n\0\x61\0l\0L\0i\0s\0t\0_\0\x31\0\0\0\0\xe9\0\0\0\xc6\0\0\0k\0\0\0k\xfb\0\0\0&\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0h\0\x64\0l\0S\0r\0\x63\0_\0\x31\0\0\0\x2{\0\0\x5\x3\0\0\0k\0\xff\xff\xff\0\0\0\x3\0\0\a~\0\0\x2\xbc\xfc\x1\0\0\0\x1\xfc\0\0\0\0\0\0\a~\0\0\x1-\0\xff\xff\xff\xfa\0\0\0\x2\x1\0\0\0\x3\xfb\0\0\0\x34\0w\0i\0\x64\0g\0\x65\0t\0\x44\0o\0\x63\0k\0_\0m\0\x65\0s\0s\0\x61\0g\0\x65\0W\0i\0n\0\x64\0o\0w\0_\0\x31\0\0\0\0\0\xff\xff\xff\xff\0\0\0\xa0\0\xff\xff\xff\xfb\0\0\0,\0w\0i\0n\0\x64\0o\0w\0\x44\0o\0\x63\0k\0_\0O\0n\0\x65\0S\0\x65\0\x61\0r\0\x63\0h\0_\0\x31\0\0\0\0\0\xff\xff\xff\xff\0\0\x2,\0\xff\xff\xff\xfb\0\0\0$\0w\0i\0n\0\x64\0o\0w\0\x44\0o\0\x63\0k\0_\0n\0W\0\x61\0v\0\x65\0_\0\x31\x1\0\0\0\0\xff\xff\xff\xff\0\0\x1-\0\xff\xff\xff\0\0\a~\0\0\0\0\0\0\0\x4\0\0\0\x4\0\0\0\b\0\0\0\b\xfc\0\0\0\x6\0\0\0\x2\0\0\0\x10\0\0\0.\0H\0\x42\0_\0I\0M\0P\0O\0R\0T\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0(\0H\0\x42\0_\0N\0\x45\0W\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0$\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0(\0H\0\x42\0_\0S\0I\0G\0N\0\x41\0L\0_\0P\0\x41\0N\0\x45\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0~\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0$\0H\0\x42\0_\0M\0U\0L\0T\0I\0_\0T\0\x41\0\x42\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0\xa2\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0*\0H\0\x42\0_\0\x45\0\x44\0I\0T\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\0\xc6\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0$\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\x1\0\0\0\xea\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0,\0H\0\x42\0_\0T\0R\0\x41\0\x43\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\x1\x18\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0.\0H\0\x42\0_\0S\0O\0U\0R\0\x43\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\x1\0\0\x2/\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0,\0t\0o\0o\0l\0\x62\0\x61\0r\0H\0\x42\0_\0T\0O\0G\0G\0L\0\x45\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x3\x1\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x32\0t\0o\0o\0l\0\x62\0\x61\0r\0H\0\x42\0_\0\x45\0M\0U\0L\0\x41\0T\0I\0O\0N\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x2\xbb\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x30\0t\0o\0o\0l\0\x62\0\x61\0r\0H\0\x42\0_\0P\0R\0O\0\x44\0T\0Y\0P\0\x45\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x3\x16\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0<\0\x41\0\x42\0V\0_\0\x41\0\x44\0\x44\0_\0T\0\x45\0M\0P\0O\0R\0\x41\0R\0Y\0_\0\x41\0S\0S\0\x45\0R\0T\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x2\xe8\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x1e\0U\0V\0M\0_\0\x41\0W\0\x41\0R\0\x45\0_\0\x44\0\x45\0\x42\0U\0G\0\0\0\x3\f\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0 \0V\0\x43\0_\0\x41\0P\0P\0S\0_\0T\0O\0O\0L\0_\0\x42\0O\0X\x1\0\0\x3\x1\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x14\0L\0O\0G\0_\0V\0I\0\x45\0W\0\x45\0R\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0$\0\x41\0M\0S\0_\0\x43\0O\0N\0\x46\0I\0G\0_\0T\0O\0O\0L\0\x42\0\x41\0R\x1\0\0\x3%\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x3\0\0\0\x30\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0&\0H\0\x42\0_\0\x42\0\x41\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\0\0\0\x1\xfb\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x32\0t\0o\0o\0l\0\x42\0\x61\0r\0\x46\0o\0r\0m\0\x61\0l\0V\0\x65\0r\0i\0\x66\0i\0\x63\0\x61\0t\0i\0o\0n\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x4\0\0\0>\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0R\0\x45\0W\0I\0N\0\x44\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0R\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0R\0\x45\0W\0I\0N\0\x44\0_\0U\0N\0\x44\0O\0_\0R\0\x45\0\x44\0O\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\x1\x5\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0@\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0R\0\x45\0V\0\x45\0R\0S\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\x1\x95\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x38\0H\0\x42\0_\0P\0O\0W\0\x45\0R\0_\0T\0R\0\x41\0\x43\0\x45\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0_\0P\0\x41\0N\0\x45\0L\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0:\0N\0O\0V\0\x41\0S\0_\0T\0\x42\0\x42\0R\0_\0\x44\0\x45\0\x42\0U\0G\0_\0V\0S\0I\0M\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0:\0N\0O\0V\0\x41\0S\0_\0\x45\0M\0U\0L\0\x41\0T\0I\0O\0N\0_\0\x44\0\x45\0\x42\0U\0G\0_\0\x43\0O\0M\0M\0\x41\0N\0\x44\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0\x1a\0\x43\0V\0G\0_\0\x43\0\x45\0R\0_\0P\0\x41\0N\0\x45\0L\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0)" Verdi_1\qBaseWindowRestoreStateGroup\qBaseWindow_saveRestoreSession_group\isNestedWindow=0 Verdi_1\qBaseWindowRestoreStateGroup\qBaseWindow_saveRestoreSession_group\isVisible=true -Verdi_1\qBaseWindowRestoreStateGroup\qBaseWindow_saveRestoreSession_group\size=@Size(1914 774) +Verdi_1\qBaseWindowRestoreStateGroup\qBaseWindow_saveRestoreSession_group\size=@Size(1918 778) Verdi_1\qBaseWindowRestoreStateGroup\qBaseWindow_saveRestoreSession_group\geometry_x=-10 Verdi_1\qBaseWindowRestoreStateGroup\qBaseWindow_saveRestoreSession_group\geometry_y=20 -Verdi_1\qBaseWindowRestoreStateGroup\qBaseWindow_saveRestoreSession_group\geometry_width=1914 -Verdi_1\qBaseWindowRestoreStateGroup\qBaseWindow_saveRestoreSession_group\geometry_height=774 +Verdi_1\qBaseWindowRestoreStateGroup\qBaseWindow_saveRestoreSession_group\geometry_width=1918 +Verdi_1\qBaseWindowRestoreStateGroup\qBaseWindow_saveRestoreSession_group\geometry_height=778 diff --git a/sim/verdiLog/novas_autosave.ses.png b/sim/verdiLog/novas_autosave.ses.png index 031f058..f643528 100644 Binary files a/sim/verdiLog/novas_autosave.ses.png and b/sim/verdiLog/novas_autosave.ses.png differ diff --git a/sim/verdiLog/novas_autosave.ses.wave.0 b/sim/verdiLog/novas_autosave.ses.wave.0 index 1cfd411..cae987c 100644 --- a/sim/verdiLog/novas_autosave.ses.wave.0 +++ b/sim/verdiLog/novas_autosave.ses.wave.0 @@ -2,11 +2,11 @@ Magic 271485 Revision Verdi_O-2018.09-SP2 ; Window Layout -viewPort 0 27 1914 615 285 195 +viewPort 0 27 1918 673 227 36 ; File list: ; openDirFile [-d delimiter] [-s time_offset] [-rf auto_bus_rule_file] path_name file_name -openDirFile -d / "" "/home/ICer/ic_prjs/mc/IC_PRJ/sim/inter.fsdb" +openDirFile -d / "" "/home/ICer/ic_prjs/mc/IC_PRJ/sim/tb.fsdb" ; file time scale: ; fileTimeScale ### s|ms|us|ns|ps @@ -16,16 +16,16 @@ signalSpacing 5 ; windowTimeUnit is used for zoom, cursor & marker ; waveform viewport range -zoom 0.000000 659986.290231 -cursor 90000.000000 +zoom 0.000000 3478035.391566 +cursor 2168750.000000 marker 0.000000 ; user define markers ; userMarker time_pos marker_name color linestyle ; visible top row signal index -top 16 +top 1 ; marker line index -markerPos 44 +markerPos 28 ; event list ; addEvent event_name event_expression @@ -46,66 +46,48 @@ curSTATUS ByChange addGroup "G1" -activeDirFile "" "/home/ICer/ic_prjs/mc/IC_PRJ/sim/inter.fsdb" -addSignal -h 15 -UNSIGNED -HEX /tb_rchannel/u_rchannel/arcaddr[5:0] -addSignal -h 15 -UNSIGNED -HEX /tb_rchannel/u_rchannel/arlen[7:0] -addSignal -h 15 -UNSIGNED -HEX /tb_rchannel/u_rchannel/arraddr[15:0] -addSignal -h 15 -UNSIGNED -HEX /tb_rchannel/u_rchannel/array2axi_rdata[127:0] -addSignal -h 15 /tb_rchannel/u_rchannel/array2axi_rdata_valid -addSignal -h 15 -UNSIGNED -HEX /tb_rchannel/u_rchannel/axi_s_araddr[25:0] -addSignal -h 15 -UNSIGNED -HEX /tb_rchannel/u_rchannel/axi_s_arlen[7:0] -addSignal -h 15 /tb_rchannel/u_rchannel/axi_s_arready -addSignal -h 15 /tb_rchannel/u_rchannel/axi_s_arvalid -addSignal -h 15 -UNSIGNED -HEX /tb_rchannel/u_rchannel/axi_s_rdata[63:0] -addSignal -h 15 /tb_rchannel/u_rchannel/axi_s_rlast -addSignal -h 15 /tb_rchannel/u_rchannel/axi_s_rvalid -addSignal -h 15 /tb_rchannel/u_rchannel/clk -addSignal -h 15 -UNSIGNED -HEX /tb_rchannel/u_rchannel/cur_state[1:0] -addSignal -h 15 -UNSIGNED -HEX /tb_rchannel/u_rchannel/next_state[1:0] -addSignal -h 15 -UNSIGNED -HEX /tb_rchannel/u_rchannel/rcaddr[5:0] -addSignal -h 15 -UNSIGNED -HEX /tb_rchannel/u_rchannel/rdata_cnt[7:0] -addSignal -h 15 /tb_rchannel/u_rchannel/reof -addSignal -h 15 -UNSIGNED -HEX /tb_rchannel/u_rchannel/rframe_cnt[6:0] -addSignal -h 15 -UNSIGNED -HEX /tb_rchannel/u_rchannel/rframe_data[159:0] -addSignal -h 15 /tb_rchannel/u_rchannel/rframe_ready -addSignal -h 15 /tb_rchannel/u_rchannel/rframe_valid -addSignal -h 15 -UNSIGNED -HEX /tb_rchannel/u_rchannel/rraddr[15:0] -addSignal -h 15 /tb_rchannel/u_rchannel/rsof -addSignal -h 15 /tb_rchannel/u_rchannel/rst_n -addSignal -h 15 /tb_rchannel/u_rchannel/sync_fifo_ar_empty -addSignal -h 15 /tb_rchannel/u_rchannel/sync_fifo_ar_full -addSignal -h 15 -UNSIGNED -HEX /tb_rchannel/u_rchannel/sync_fifo_ar_rd_data[29:0] -addSignal -h 15 /tb_rchannel/u_rchannel/sync_fifo_ar_rd_en -addSignal -h 15 -UNSIGNED -HEX /tb_rchannel/u_rchannel/sync_fifo_ar_wr_data[29:0] -addSignal -h 15 /tb_rchannel/u_rchannel/sync_fifo_ar_wr_en -addSignal -h 15 /tb_rchannel/u_rchannel/sync_fifo_arlen_empty -addSignal -h 15 /tb_rchannel/u_rchannel/sync_fifo_arlen_full -addSignal -h 15 -UNSIGNED -HEX /tb_rchannel/u_rchannel/sync_fifo_arlen_rd_data[7:0] -addSignal -h 15 /tb_rchannel/u_rchannel/sync_fifo_arlen_rd_en -addSignal -h 15 -UNSIGNED -HEX /tb_rchannel/u_rchannel/sync_fifo_arlen_wr_data[7:0] -addSignal -h 15 /tb_rchannel/u_rchannel/sync_fifo_arlen_wr_en -addSignal -h 15 /tb_rchannel/u_rchannel/sync_fifo_r_empty -addSignal -h 15 /tb_rchannel/u_rchannel/sync_fifo_r_full -addSignal -h 15 -UNSIGNED -HEX /tb_rchannel/u_rchannel/sync_fifo_r_rd_data[63:0] -addSignal -h 15 /tb_rchannel/u_rchannel/sync_fifo_r_rd_en -addSignal -h 15 -UNSIGNED -HEX /tb_rchannel/u_rchannel/sync_fifo_r_wr_data[127:0] -addSignal -h 15 /tb_rchannel/u_rchannel/sync_fifo_r_wr_en -addSignal -h 15 -UNSIGNED -HEX /tb_rchannel/u_rchannel/wdata[127:0] +activeDirFile "" "/home/ICer/ic_prjs/mc/IC_PRJ/sim/tb.fsdb" +addSignal -h 15 /tb_array_ctrl/array2axi_rdata[127:0] +addSignal -h 15 -holdScope array2axi_rdata_valid +addSignal -h 15 -holdScope array_caddr_rd[5:0] +addSignal -h 15 -holdScope array_caddr_vld_rd +addSignal -h 15 -holdScope array_caddr_vld_wr +addSignal -h 15 -holdScope array_caddr_wr[5:0] +addSignal -h 15 -holdScope array_csn +addSignal -h 15 -holdScope array_inner_ref_sel +addSignal -h 15 -holdScope array_inner_tras[7:0] +addSignal -h 15 -holdScope array_inner_trcd_rd[7:0] +addSignal -h 15 -holdScope array_inner_trcd_wr[7:0] +addSignal -h 15 -holdScope array_inner_tref0[24:0] +addSignal -h 15 -holdScope array_inner_tref1[24:0] +addSignal -h 15 -holdScope array_inner_trp[7:0] +addSignal -h 15 -holdScope array_inner_trtp[7:0] +addSignal -h 15 -holdScope array_inner_twr[7:0] +addSignal -h 15 -holdScope array_raddr[15:0] +addSignal -h 15 -holdScope array_rdata[127:0] +addSignal -h 15 -holdScope array_rdata_vld +addSignal -h 15 -holdScope array_ref_en +addSignal -h 15 -holdScope array_wdata[127:0] +addSignal -h 15 -holdScope array_wdata_vld +addSignal -h 15 -holdScope axi2array_frame_data[152:0] +addSignal -h 15 -holdScope axi2array_frame_ready +addSignal -h 15 -holdScope axi2array_frame_valid +addSignal -h 15 -holdScope clk +addSignal -h 15 -holdScope mc_work_en +addSignal -h 15 -holdScope rst_n addGroup "G2" ; getSignalForm Scope Hierarchy Status ; active file of getSignalForm -activeDirFile "" "/home/ICer/ic_prjs/mc/IC_PRJ/sim/inter.fsdb" +activeDirFile "" "/home/ICer/ic_prjs/mc/IC_PRJ/sim/tb.fsdb" GETSIGNALFORM_SCOPE_HIERARCHY_BEGIN getSignalForm close -"/tb_rchannel" -"/tb_rchannel/u_rchannel" +"/tb_array_ctrl" SCOPE_LIST_BEGIN -"/tb_rchannel" -"/tb_rchannel/u_rchannel" +"/tb_array_ctrl" SCOPE_LIST_END GETSIGNALFORM_SCOPE_HIERARCHY_END diff --git a/sim/verdiLog/turbo.log b/sim/verdiLog/turbo.log index 796e719..d5dfad4 100644 --- a/sim/verdiLog/turbo.log +++ b/sim/verdiLog/turbo.log @@ -1,3 +1,3 @@ Command Line: /home/synopsys/verdi/Verdi_O-2018.09-SP2/platform/LINUXAMD64/bin/Novas -f filelist.f -ssf tb.fsdb uname(Linux IC_EDA 3.10.0-1160.53.1.el7.x86_64 #1 SMP Fri Jan 14 13:59:45 UTC 2022 x86_64) -au time 532.936489 24.438809 15.829228 delta 612864000 612864000 total 1037946880 1037946880 +au time 232.879158 5.609200 4.987353 delta 605061120 605061120 total 1030144000 1030144000 diff --git a/sim/verdiLog/verdi.cmd b/sim/verdiLog/verdi.cmd index 16d3d22..73f2b08 100644 --- a/sim/verdiLog/verdi.cmd +++ b/sim/verdiLog/verdi.cmd @@ -2,224 +2,87 @@ debImport "-f" "filelist.f" debLoadSimResult /home/ICer/ic_prjs/mc/IC_PRJ/sim/tb.fsdb wvCreateWindow wvGetSignalOpen -win $_nWave2 -wvGetSignalSetScope -win $_nWave2 "/tb_rchannel" -wvGetSignalSetScope -win $_nWave2 "/tb_rchannel/u_rchannel" -wvSetPosition -win $_nWave2 {("G1" 44)} -wvSetPosition -win $_nWave2 {("G1" 44)} +wvGetSignalSetScope -win $_nWave2 "/tb_array_ctrl" +wvSetPosition -win $_nWave2 {("G1" 28)} +wvSetPosition -win $_nWave2 {("G1" 28)} wvAddSignal -win $_nWave2 -clear wvAddSignal -win $_nWave2 -group {"G1" \ -{/tb_rchannel/u_rchannel/arcaddr\[5:0\]} \ -{/tb_rchannel/u_rchannel/arlen\[7:0\]} \ -{/tb_rchannel/u_rchannel/arraddr\[15:0\]} \ -{/tb_rchannel/u_rchannel/array2axi_rdata\[127:0\]} \ -{/tb_rchannel/u_rchannel/array2axi_rdata_valid} \ -{/tb_rchannel/u_rchannel/axi_s_araddr\[25:0\]} \ -{/tb_rchannel/u_rchannel/axi_s_arlen\[7:0\]} \ -{/tb_rchannel/u_rchannel/axi_s_arready} \ -{/tb_rchannel/u_rchannel/axi_s_arvalid} \ -{/tb_rchannel/u_rchannel/axi_s_rdata\[63:0\]} \ -{/tb_rchannel/u_rchannel/axi_s_rlast} \ -{/tb_rchannel/u_rchannel/axi_s_rvalid} \ -{/tb_rchannel/u_rchannel/clk} \ -{/tb_rchannel/u_rchannel/cur_state\[1:0\]} \ -{/tb_rchannel/u_rchannel/next_state\[1:0\]} \ -{/tb_rchannel/u_rchannel/rcaddr\[5:0\]} \ -{/tb_rchannel/u_rchannel/rdata_cnt\[7:0\]} \ -{/tb_rchannel/u_rchannel/reof} \ -{/tb_rchannel/u_rchannel/rframe_cnt\[6:0\]} \ -{/tb_rchannel/u_rchannel/rframe_data\[159:0\]} \ -{/tb_rchannel/u_rchannel/rframe_ready} \ -{/tb_rchannel/u_rchannel/rframe_valid} \ -{/tb_rchannel/u_rchannel/rraddr\[15:0\]} \ -{/tb_rchannel/u_rchannel/rsof} \ -{/tb_rchannel/u_rchannel/rst_n} \ -{/tb_rchannel/u_rchannel/sync_fifo_ar_empty} \ -{/tb_rchannel/u_rchannel/sync_fifo_ar_full} \ -{/tb_rchannel/u_rchannel/sync_fifo_ar_rd_data\[29:0\]} \ -{/tb_rchannel/u_rchannel/sync_fifo_ar_rd_en} \ -{/tb_rchannel/u_rchannel/sync_fifo_ar_wr_data\[29:0\]} \ -{/tb_rchannel/u_rchannel/sync_fifo_ar_wr_en} \ -{/tb_rchannel/u_rchannel/sync_fifo_arlen_empty} \ -{/tb_rchannel/u_rchannel/sync_fifo_arlen_full} \ -{/tb_rchannel/u_rchannel/sync_fifo_arlen_rd_data\[7:0\]} \ -{/tb_rchannel/u_rchannel/sync_fifo_arlen_rd_en} \ -{/tb_rchannel/u_rchannel/sync_fifo_arlen_wr_data\[7:0\]} \ -{/tb_rchannel/u_rchannel/sync_fifo_arlen_wr_en} \ -{/tb_rchannel/u_rchannel/sync_fifo_r_empty} \ -{/tb_rchannel/u_rchannel/sync_fifo_r_full} \ -{/tb_rchannel/u_rchannel/sync_fifo_r_rd_data\[63:0\]} \ -{/tb_rchannel/u_rchannel/sync_fifo_r_rd_en} \ -{/tb_rchannel/u_rchannel/sync_fifo_r_wr_data\[127:0\]} \ -{/tb_rchannel/u_rchannel/sync_fifo_r_wr_en} \ -{/tb_rchannel/u_rchannel/wdata\[127:0\]} \ +{/tb_array_ctrl/array2axi_rdata\[127:0\]} \ +{/tb_array_ctrl/array2axi_rdata_valid} \ +{/tb_array_ctrl/array_caddr_rd\[5:0\]} \ +{/tb_array_ctrl/array_caddr_vld_rd} \ +{/tb_array_ctrl/array_caddr_vld_wr} \ +{/tb_array_ctrl/array_caddr_wr\[5:0\]} \ +{/tb_array_ctrl/array_csn} \ +{/tb_array_ctrl/array_inner_ref_sel} \ +{/tb_array_ctrl/array_inner_tras\[7:0\]} \ +{/tb_array_ctrl/array_inner_trcd_rd\[7:0\]} \ +{/tb_array_ctrl/array_inner_trcd_wr\[7:0\]} \ +{/tb_array_ctrl/array_inner_tref0\[24:0\]} \ +{/tb_array_ctrl/array_inner_tref1\[24:0\]} \ +{/tb_array_ctrl/array_inner_trp\[7:0\]} \ +{/tb_array_ctrl/array_inner_trtp\[7:0\]} \ +{/tb_array_ctrl/array_inner_twr\[7:0\]} \ +{/tb_array_ctrl/array_raddr\[15:0\]} \ +{/tb_array_ctrl/array_rdata\[127:0\]} \ +{/tb_array_ctrl/array_rdata_vld} \ +{/tb_array_ctrl/array_ref_en} \ +{/tb_array_ctrl/array_wdata\[127:0\]} \ +{/tb_array_ctrl/array_wdata_vld} \ +{/tb_array_ctrl/axi2array_frame_data\[152:0\]} \ +{/tb_array_ctrl/axi2array_frame_ready} \ +{/tb_array_ctrl/axi2array_frame_valid} \ +{/tb_array_ctrl/clk} \ +{/tb_array_ctrl/mc_work_en} \ +{/tb_array_ctrl/rst_n} \ } wvAddSignal -win $_nWave2 -group {"G2" \ } wvSelectSignal -win $_nWave2 {( "G1" 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 \ - 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 \ - 40 41 42 43 44 )} -wvSetPosition -win $_nWave2 {("G1" 44)} -wvSetPosition -win $_nWave2 {("G1" 44)} -wvSetPosition -win $_nWave2 {("G1" 44)} + 18 19 20 21 22 23 24 25 26 27 28 )} +wvSetPosition -win $_nWave2 {("G1" 28)} +wvSetPosition -win $_nWave2 {("G1" 28)} +wvSetPosition -win $_nWave2 {("G1" 28)} wvAddSignal -win $_nWave2 -clear wvAddSignal -win $_nWave2 -group {"G1" \ -{/tb_rchannel/u_rchannel/arcaddr\[5:0\]} \ -{/tb_rchannel/u_rchannel/arlen\[7:0\]} \ -{/tb_rchannel/u_rchannel/arraddr\[15:0\]} \ -{/tb_rchannel/u_rchannel/array2axi_rdata\[127:0\]} \ -{/tb_rchannel/u_rchannel/array2axi_rdata_valid} \ -{/tb_rchannel/u_rchannel/axi_s_araddr\[25:0\]} \ -{/tb_rchannel/u_rchannel/axi_s_arlen\[7:0\]} \ -{/tb_rchannel/u_rchannel/axi_s_arready} \ -{/tb_rchannel/u_rchannel/axi_s_arvalid} \ -{/tb_rchannel/u_rchannel/axi_s_rdata\[63:0\]} \ -{/tb_rchannel/u_rchannel/axi_s_rlast} \ -{/tb_rchannel/u_rchannel/axi_s_rvalid} \ -{/tb_rchannel/u_rchannel/clk} \ -{/tb_rchannel/u_rchannel/cur_state\[1:0\]} \ -{/tb_rchannel/u_rchannel/next_state\[1:0\]} \ -{/tb_rchannel/u_rchannel/rcaddr\[5:0\]} \ -{/tb_rchannel/u_rchannel/rdata_cnt\[7:0\]} \ -{/tb_rchannel/u_rchannel/reof} \ -{/tb_rchannel/u_rchannel/rframe_cnt\[6:0\]} \ -{/tb_rchannel/u_rchannel/rframe_data\[159:0\]} \ -{/tb_rchannel/u_rchannel/rframe_ready} \ -{/tb_rchannel/u_rchannel/rframe_valid} \ -{/tb_rchannel/u_rchannel/rraddr\[15:0\]} \ -{/tb_rchannel/u_rchannel/rsof} \ -{/tb_rchannel/u_rchannel/rst_n} \ -{/tb_rchannel/u_rchannel/sync_fifo_ar_empty} \ -{/tb_rchannel/u_rchannel/sync_fifo_ar_full} \ -{/tb_rchannel/u_rchannel/sync_fifo_ar_rd_data\[29:0\]} \ -{/tb_rchannel/u_rchannel/sync_fifo_ar_rd_en} \ -{/tb_rchannel/u_rchannel/sync_fifo_ar_wr_data\[29:0\]} \ -{/tb_rchannel/u_rchannel/sync_fifo_ar_wr_en} \ -{/tb_rchannel/u_rchannel/sync_fifo_arlen_empty} \ -{/tb_rchannel/u_rchannel/sync_fifo_arlen_full} \ -{/tb_rchannel/u_rchannel/sync_fifo_arlen_rd_data\[7:0\]} \ -{/tb_rchannel/u_rchannel/sync_fifo_arlen_rd_en} \ -{/tb_rchannel/u_rchannel/sync_fifo_arlen_wr_data\[7:0\]} \ -{/tb_rchannel/u_rchannel/sync_fifo_arlen_wr_en} \ -{/tb_rchannel/u_rchannel/sync_fifo_r_empty} \ -{/tb_rchannel/u_rchannel/sync_fifo_r_full} \ -{/tb_rchannel/u_rchannel/sync_fifo_r_rd_data\[63:0\]} \ -{/tb_rchannel/u_rchannel/sync_fifo_r_rd_en} \ -{/tb_rchannel/u_rchannel/sync_fifo_r_wr_data\[127:0\]} \ -{/tb_rchannel/u_rchannel/sync_fifo_r_wr_en} \ -{/tb_rchannel/u_rchannel/wdata\[127:0\]} \ +{/tb_array_ctrl/array2axi_rdata\[127:0\]} \ +{/tb_array_ctrl/array2axi_rdata_valid} \ +{/tb_array_ctrl/array_caddr_rd\[5:0\]} \ +{/tb_array_ctrl/array_caddr_vld_rd} \ +{/tb_array_ctrl/array_caddr_vld_wr} \ +{/tb_array_ctrl/array_caddr_wr\[5:0\]} \ +{/tb_array_ctrl/array_csn} \ +{/tb_array_ctrl/array_inner_ref_sel} \ +{/tb_array_ctrl/array_inner_tras\[7:0\]} \ +{/tb_array_ctrl/array_inner_trcd_rd\[7:0\]} \ +{/tb_array_ctrl/array_inner_trcd_wr\[7:0\]} \ +{/tb_array_ctrl/array_inner_tref0\[24:0\]} \ +{/tb_array_ctrl/array_inner_tref1\[24:0\]} \ +{/tb_array_ctrl/array_inner_trp\[7:0\]} \ +{/tb_array_ctrl/array_inner_trtp\[7:0\]} \ +{/tb_array_ctrl/array_inner_twr\[7:0\]} \ +{/tb_array_ctrl/array_raddr\[15:0\]} \ +{/tb_array_ctrl/array_rdata\[127:0\]} \ +{/tb_array_ctrl/array_rdata_vld} \ +{/tb_array_ctrl/array_ref_en} \ +{/tb_array_ctrl/array_wdata\[127:0\]} \ +{/tb_array_ctrl/array_wdata_vld} \ +{/tb_array_ctrl/axi2array_frame_data\[152:0\]} \ +{/tb_array_ctrl/axi2array_frame_ready} \ +{/tb_array_ctrl/axi2array_frame_valid} \ +{/tb_array_ctrl/clk} \ +{/tb_array_ctrl/mc_work_en} \ +{/tb_array_ctrl/rst_n} \ } wvAddSignal -win $_nWave2 -group {"G2" \ } wvSelectSignal -win $_nWave2 {( "G1" 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 \ - 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 \ - 40 41 42 43 44 )} -wvSetPosition -win $_nWave2 {("G1" 44)} + 18 19 20 21 22 23 24 25 26 27 28 )} +wvSetPosition -win $_nWave2 {("G1" 28)} wvGetSignalClose -win $_nWave2 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvSetCursor -win $_nWave2 2182.373767 -snap {("G1" 16)} -srcTBInvokeSim -srcTBRunSim -verdiDockWidgetSetCurTab -dock windowDock_nWave_2 -wvZoomOut -win $_nWave2 -wvZoomOut -win $_nWave2 -wvZoomOut -win $_nWave2 -wvZoomOut -win $_nWave2 -wvZoomOut -win $_nWave2 -wvZoomOut -win $_nWave2 -wvZoomOut -win $_nWave2 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollDown -win $_nWave2 0 -wvScrollDown -win $_nWave2 0 -wvScrollDown -win $_nWave2 0 -wvScrollDown -win $_nWave2 0 -wvScrollDown -win $_nWave2 0 verdiDockWidgetMaximize -dock windowDock_nWave_2 -wvScrollDown -win $_nWave2 0 -wvScrollDown -win $_nWave2 0 -wvScrollDown -win $_nWave2 0 -wvScrollDown -win $_nWave2 0 -wvScrollDown -win $_nWave2 0 -wvScrollDown -win $_nWave2 0 -wvSelectSignal -win $_nWave2 {( "G1" 24 )} -wvSetCursor -win $_nWave2 169335.416349 -snap {("G1" 18)} -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 0 -wvScrollDown -win $_nWave2 0 -wvScrollDown -win $_nWave2 0 -wvScrollUp -win $_nWave2 22 -wvSelectSignal -win $_nWave2 {( "G1" 20 )} -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 +wvZoomOut -win $_nWave2 +wvZoomOut -win $_nWave2 wvScrollUp -win $_nWave2 1 wvScrollUp -win $_nWave2 1 wvScrollUp -win $_nWave2 1 @@ -227,214 +90,60 @@ wvScrollDown -win $_nWave2 0 wvScrollDown -win $_nWave2 0 wvScrollDown -win $_nWave2 0 wvScrollDown -win $_nWave2 0 -wvSetCursor -win $_nWave2 115310.104685 -snap {("G1" 14)} -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 wvScrollDown -win $_nWave2 1 wvScrollDown -win $_nWave2 1 wvScrollDown -win $_nWave2 1 wvScrollDown -win $_nWave2 0 wvScrollDown -win $_nWave2 0 +wvZoomIn -win $_nWave2 +wvZoomIn -win $_nWave2 +wvZoomOut -win $_nWave2 +wvZoomOut -win $_nWave2 +wvZoomOut -win $_nWave2 wvScrollDown -win $_nWave2 0 wvScrollDown -win $_nWave2 0 -wvScrollDown -win $_nWave2 0 -wvScrollDown -win $_nWave2 0 -wvScrollDown -win $_nWave2 0 -wvScrollDown -win $_nWave2 0 -wvScrollDown -win $_nWave2 0 -wvScrollDown -win $_nWave2 0 -wvScrollDown -win $_nWave2 0 -wvScrollDown -win $_nWave2 0 -wvScrollDown -win $_nWave2 0 -wvScrollDown -win $_nWave2 0 -wvScrollDown -win $_nWave2 0 -wvScrollDown -win $_nWave2 0 -wvScrollDown -win $_nWave2 0 -wvScrollDown -win $_nWave2 0 -wvScrollUp -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 0 -wvScrollDown -win $_nWave2 0 -wvScrollDown -win $_nWave2 0 -wvSelectSignal -win $_nWave2 {( "G1" 44 )} -wvSetCursor -win $_nWave2 46874.026295 -snap {("G1" 39)} -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 wvScrollUp -win $_nWave2 1 wvScrollUp -win $_nWave2 1 wvScrollUp -win $_nWave2 1 wvScrollDown -win $_nWave2 0 wvScrollDown -win $_nWave2 0 wvScrollDown -win $_nWave2 0 -wvSetCursor -win $_nWave2 191246.027283 -snap {("G1" 3)} -wvSetCursor -win $_nWave2 235776.352263 -snap {("G1" 4)} -wvSetCursor -win $_nWave2 283119.118821 -snap {("G1" 4)} -wvSetCursor -win $_nWave2 305149.911179 -snap {("G1" 4)} -wvSetCursor -win $_nWave2 353430.158263 -snap {("G1" 4)} -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvSetCursor -win $_nWave2 144372.000988 -snap {("G1" 37)} -wvSetCursor -win $_nWave2 195464.689649 -snap {("G1" 40)} -wvSelectSignal -win $_nWave2 {( "G1" 40 )} -wvSetCursor -win $_nWave2 201089.572805 -snap {("G1" 40)} -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvSelectSignal -win $_nWave2 {( "G1" 20 )} -wvSetCursor -win $_nWave2 61404.974446 -snap {("G1" 20)} -wvSetCursor -win $_nWave2 63748.675761 -snap {("G1" 20)} -wvSetCursor -win $_nWave2 82029.546016 -snap {("G1" 20)} -wvSetCursor -win $_nWave2 101247.896797 -snap {("G1" 20)} -wvSetCursor -win $_nWave2 117185.065737 -snap {("G1" 20)} -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 wvScrollDown -win $_nWave2 1 +wvSetCursor -win $_nWave2 815148.074696 -snap {("G1" 1)} wvScrollDown -win $_nWave2 1 wvScrollDown -win $_nWave2 1 wvScrollDown -win $_nWave2 0 +wvScrollUp -win $_nWave2 1 +wvSetCursor -win $_nWave2 2125359.901563 -snap {("G1" 17)} +wvScrollUp -win $_nWave2 1 +wvScrollUp -win $_nWave2 1 wvScrollDown -win $_nWave2 0 wvScrollDown -win $_nWave2 0 +wvScrollDown -win $_nWave2 1 +wvScrollDown -win $_nWave2 1 +wvScrollUp -win $_nWave2 1 +wvScrollUp -win $_nWave2 1 wvScrollDown -win $_nWave2 0 +wvScrollDown -win $_nWave2 1 +wvScrollDown -win $_nWave2 1 +wvScrollDown -win $_nWave2 1 wvScrollUp -win $_nWave2 1 wvScrollUp -win $_nWave2 1 wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvSelectSignal -win $_nWave2 {( "G1" 19 )} -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 +wvScrollDown -win $_nWave2 0 +wvScrollDown -win $_nWave2 1 +wvScrollDown -win $_nWave2 1 +wvScrollDown -win $_nWave2 1 wvScrollUp -win $_nWave2 1 wvScrollUp -win $_nWave2 1 wvSelectSignal -win $_nWave2 {( "G1" 17 )} +wvSetCursor -win $_nWave2 1560739.024699 -snap {("G1" 17)} +wvSetCursor -win $_nWave2 1556468.876889 -snap {("G1" 17)} +wvSetCursor -win $_nWave2 1866054.593142 -snap {("G1" 17)} +wvSetCursor -win $_nWave2 1891675.480005 -snap {("G1" 17)} +wvSetCursor -win $_nWave2 2053941.096800 -snap {("G1" 17)} +wvSetCursor -win $_nWave2 2132938.831292 -snap {("G1" 17)} +wvSetCursor -win $_nWave2 2235422.378741 -snap {("G1" 17)} wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollUp -win $_nWave2 1 -wvScrollDown -win $_nWave2 0 -wvScrollDown -win $_nWave2 0 -wvScrollDown -win $_nWave2 0 -wvScrollDown -win $_nWave2 0 -wvScrollDown -win $_nWave2 0 -wvScrollDown -win $_nWave2 0 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 -wvScrollDown -win $_nWave2 1 wvScrollDown -win $_nWave2 1 debExit diff --git a/tb/tb_apb_cfg.v b/tb/tb_apb_cfg.v new file mode 100644 index 0000000..3414767 --- /dev/null +++ b/tb/tb_apb_cfg.v @@ -0,0 +1,110 @@ +module tb_apb_cfg; + reg apb_pclk; + reg apb_prstn; + + //from apb master + reg apb_psel; + reg apb_penable; + reg apb_pwrite; + reg [7:0] apb_paddr; + reg [31:0] apb_wdata; + + //to apb master + wire [31:0] apb_rdata; + wire apb_pready; + + //cfg + //mode ctrl + wire mc_work_en; + wire [1:0] axi_rw_priority; + // + wire [7:0] array_ras_cfg; + wire [7:0] array_rp_cfg; + wire [7:0] array_rc_cfg; + // + wire [7:0] array_rcd_wr_cfg; + wire [7:0] array_wr_cfg; + // + wire [7:0] array_rcd_rd_cfg; + wire [7:0] array_rtp_cfg; + // + wire [25:0] array_ref_period0; + wire [25:0] array_ref_period1; + wire array_ref_sel; + +apb_cfg u_apb_cfg( + .apb_pclk(apb_pclk), + .apb_prstn(apb_prstn), + .apb_psel(apb_psel), + .apb_penable(apb_penable), + .apb_pwrite(apb_pwrite), + .apb_paddr(apb_paddr), + .apb_wdata(apb_wdata), + + .apb_rdata(apb_rdata), + .apb_pready(apb_pready), + + .mc_work_en(mc_work_en), + .axi_rw_priority(axi_rw_priority), + + .array_ras_cfg(array_ras_cfg), + .array_rp_cfg(array_rp_cfg), + .array_rc_cfg(array_rc_cfg), + + .array_rcd_wr_cfg(array_rcd_wr_cfg), + .array_wr_cfg(array_wr_cfg), + + .array_rcd_rd_cfg(array_rcd_rd_cfg), + .array_rtp_cfg(array_rtp_cfg), + + .array_ref_period0(array_ref_period0), + .array_ref_period1(array_ref_period1), + .array_ref_sel(array_ref_sel) +); + +initial begin + apb_pclk = 1'b0; + apb_prstn = 1'b0; + #20 + apb_prstn = 1'b1; +end +always #10 apb_pclk = ~apb_pclk; + +initial begin + apb_psel = 1'b0; + apb_penable = 1'b0; + apb_pwrite = 1'b0; + apb_paddr = 'b0; + apb_wdata = 'b0; +end + +//task wr +task apb_wr; + input apb_paddr_temp; + input apb_wdata_temp; + begin + wait(apb_pready); + @(negedge apb_pclk); + apb_paddr = apb_paddr_temp; + apb_wdata = apb_wdata_temp; + apb_psel = 1'b1; + apb_pwrite = 1'b1; + apb_penable = 1'b0; + @(posedge apb_pclk); + #0.7 + apb_penable = 1'b1; + wait(apb_pready); + @(posedge apb_pclk); + apb_psel = 1'b0; + apb_pwrite = 1'b0; + apb_penable = 1'b0; + end +endtask + +initial begin + #50 + apb_wr(8'h00,{31'b0,1'b1}); + $finish; +end + +endmodule diff --git a/tb/tb_array_ctrl.v b/tb/tb_array_ctrl.v new file mode 100644 index 0000000..5da425b --- /dev/null +++ b/tb/tb_array_ctrl.v @@ -0,0 +1,257 @@ +`timescale 1ns/1ps + +module tb_array_ctrl; + + // 时钟与复位信号 + reg clk; + reg rst_n; + + // AXI到array的帧信号 + reg axi2array_frame_valid; + reg [152:0] axi2array_frame_data; + wire axi2array_frame_ready; + + // array到AXI的读数据信号 + wire array2axi_rdata_valid; + wire [127:0] array2axi_rdata; + + // array接口信号 + wire array_csn; + wire [15:0] array_raddr; + wire array_caddr_vld_wr; + wire [5:0] array_caddr_wr; + wire array_wdata_vld; + wire [127:0] array_wdata; + wire array_caddr_vld_rd; + wire [5:0] array_caddr_rd; + reg array_rdata_vld; + reg [127:0] array_rdata; + + // APB配置信号(内存控制器时序参数) + reg mc_work_en; + reg [7:0] array_inner_tras; // 行预充电时间 + reg [7:0] array_inner_trp; // 预充电到激活时间 + reg [7:0] array_inner_trcd_wr;// 激活到写命令时间 + reg [7:0] array_inner_twr; // 写恢复时间 + reg [7:0] array_inner_trcd_rd;// 激活到读命令时间 + reg [7:0] array_inner_trtp; // 读预充电时间 + reg array_ref_en; // 刷新使能 + reg [24:0] array_inner_tref0; // 刷新间隔0 + reg [24:0] array_inner_tref1; // 刷新间隔1 + reg array_inner_ref_sel;// 刷新间隔选择 + + // 实例化被测模块 + array_ctrl u_array_ctrl ( + .clk (clk), + .rst_n (rst_n), + .axi2array_frame_valid (axi2array_frame_valid), + .axi2array_frame_data (axi2array_frame_data), + .axi2array_frame_ready (axi2array_frame_ready), + .array2axi_rdata_valid (array2axi_rdata_valid), + .array2axi_rdata (array2axi_rdata), + .array_csn (array_csn), + .array_raddr (array_raddr), + .array_caddr_vld_wr (array_caddr_vld_wr), + .array_caddr_wr (array_caddr_wr), + .array_wdata_vld (array_wdata_vld), + .array_wdata (array_wdata), + .array_caddr_vld_rd (array_caddr_vld_rd), + .array_caddr_rd (array_caddr_rd), + .array_rdata_vld (array_rdata_vld), + .array_rdata (array_rdata), + .mc_work_en (mc_work_en), + .array_inner_tras (array_inner_tras), + .array_inner_trp (array_inner_trp), + .array_inner_trcd_wr (array_inner_trcd_wr), + .array_inner_twr (array_inner_twr), + .array_inner_trcd_rd (array_inner_trcd_rd), + .array_inner_trtp (array_inner_trtp), + .array_ref_en (array_ref_en), + .array_inner_tref0 (array_inner_tref0), + .array_inner_tref1 (array_inner_tref1), + .array_inner_ref_sel (array_inner_ref_sel) + ); + + // 时钟生成:50MHz(周期20ns) + initial begin + clk = 1'b0; + forever #1.25 clk = ~clk; + end + + // 复位与初始化流程 + initial begin + // 初始复位状态 + rst_n = 1'b0; + axi2array_frame_valid = 1'b0; + axi2array_frame_data = 153'd0; + array_rdata_vld = 1'b0; + array_rdata = 128'd0; + mc_work_en = 1'b0; + // 初始化时序参数(示例值,模拟真实内存时序) + array_inner_tras = 8'd16; // 行预充电时间:2个时钟周期 + array_inner_trp = 8'd6; // 预充电到激活时间:1个时钟周期 + array_inner_trcd_wr = 8'd7; // 激活到写命令时间:1个时钟周期 + array_inner_twr = 8'd6; // 写恢复时间:3个时钟周期 + array_inner_trcd_rd = 8'd7; // 激活到读命令时间:1个时钟周期 + array_inner_trtp = 8'd3; // 读预充电时间:1个时钟周期 + array_ref_en = 1'b0; // 初始关闭刷新 + array_inner_tref0 = 25'd100; // 刷新间隔0:5个时钟周期(100ns) + array_inner_tref1 = 25'd60; // 刷新间隔1:10个时钟周期(200ns) + array_inner_ref_sel = 1'b0; // 默认选择刷新间隔0 + + // 释放复位并启动控制器 + #100 rst_n = 1'b1; // 100ns后释放复位 + #50 mc_work_en = 1'b1; // 50ns后使能控制器工作 + + // 测试场景1:单周期写操作(完整帧:含SOF和EOF) + @(posedge clk); + // 帧数据格式:[152]操作类型(1=写), [151]SOF, [150]EOF, [149:134]行地址, [133:128]列地址, [127:0]数据 + axi2array_frame_data = {1'b1, 1'b1, 1'b1, 16'h1234, 6'h0A, 128'h5A5A_5A5A_5A5A_5A5A_5A5A_5A5A_5A5A_5A5A}; + axi2array_frame_valid = 1'b1; // 发送写请求 + @(posedge axi2array_frame_ready); // 等待控制器接收 + axi2array_frame_valid = 1'b0; // 撤销请求 + #200; // 等待写操作完成(含时序延迟) + + // 测试场景2:多周期写操作(分帧传输,SOF=首帧,EOF=尾帧) + @(posedge clk); + // 首帧:SOF=1,EOF=0 + axi2array_frame_data = {1'b1, 1'b1, 1'b0, 16'h5678, 6'h0B, 128'hA5A5_A5A5_A5A5_A5A5_A5A5_A5A5_A5A5_A5A5}; + axi2array_frame_valid = 1'b1; + @(posedge axi2array_frame_ready); + // 次帧:SOF=0,EOF=0 + axi2array_frame_data = {1'b1, 1'b0, 1'b0, 16'h5678, 6'h0C, 128'hAA55_AA55_AA55_AA55_AA55_AA55_AA55_AA55}; + @(posedge axi2array_frame_ready); + // 尾帧:SOF=0,EOF=1 + axi2array_frame_data = {1'b1, 1'b0, 1'b1, 16'h5678, 6'h0D, 128'h55AA_55AA_55AA_55AA_55AA_55AA_55AA_55AA}; + @(posedge axi2array_frame_ready); + axi2array_frame_valid = 1'b0; + #300; // 等待多帧写完成 + + // 测试场景3:单周期读操作(读取场景1写入的数据) + @(posedge clk); + // 帧数据格式:[152]操作类型(0=读), [151]SOF, [150]EOF, [149:134]行地址, [133:128]列地址, [127:0]无效(读数据由array返回) + axi2array_frame_data = {1'b0, 1'b1, 1'b1, 16'h1234, 6'h0A, 128'd0}; + axi2array_frame_valid = 1'b1; // 发送读请求 + @(posedge axi2array_frame_ready); + axi2array_frame_valid = 1'b0; + // 模拟array返回读数据(延迟1个时钟周期,符合时序) + #20; // 等待控制器发起读命令 + array_rdata = 128'h5A5A_5A5A_5A5A_5A5A_5A5A_5A5A_5A5A_5A5A; // 预期数据(与场景1写入一致) + array_rdata_vld = 1'b1; + @(posedge clk); + array_rdata_vld = 1'b0; // 撤销读数据有效 + #200; // 等待读响应返回AXI + + // 测试场景4:读写混合操作(写后立即读,验证数据一致性) + @(posedge clk); + // 先写 + axi2array_frame_data = {1'b1, 1'b1, 1'b1, 16'h9ABC, 6'h0E, 128'h1234_5678_9ABC_DEF0_1234_5678_9ABC_DEF0}; + axi2array_frame_valid = 1'b1; + @(posedge axi2array_frame_ready); + axi2array_frame_valid = 1'b0; + #100; // 等待写完成 + // 立即读 + axi2array_frame_data = {1'b0, 1'b1, 1'b1, 16'h9ABC, 6'h0E, 128'd0}; + axi2array_frame_valid = 1'b1; + @(posedge axi2array_frame_ready); + axi2array_frame_valid = 1'b0; + #20; + array_rdata = 128'h1234_5678_9ABC_DEF0_1234_5678_9ABC_DEF0; // 验证写后读一致性 + array_rdata_vld = 1'b1; + @(posedge clk); + array_rdata_vld = 1'b0; + #200; + + // 测试场景5:刷新操作(使能刷新,验证控制器响应) + @(posedge clk); + array_ref_en = 1'b1; // 开启刷新 + #(2.5*array_inner_tref0); // 等待至少1个刷新周期(根据tref0=5个时钟周期) + array_ref_en = 1'b0; // 关闭刷新 + #100; + + // 测试场景6:刷新与读写冲突(刷新期间发起读写,验证优先级) + @(posedge clk); + array_ref_en = 1'b1; // 开启刷新 + #50; // 确保刷新已启动 + // 尝试写入(预期被阻塞,直到刷新完成) + axi2array_frame_data = {1'b1, 1'b1, 1'b1, 16'hDEF0, 6'h0F, 128'hFEDC_BA98_7654_3210_FEDC_BA98_7654_3210}; + axi2array_frame_valid = 1'b1; + @(posedge axi2array_frame_ready); // 可能延迟,因刷新优先级更高 + axi2array_frame_valid = 1'b0; + array_ref_en = 1'b0; // 关闭刷新 + #200; + + // 测试场景7:边界地址读写(最大行/列地址) + @(posedge clk); + // 写最大地址 + axi2array_frame_data = {1'b1, 1'b1, 1'b1, 16'hFFFF, 6'h3F, 128'hFFFF_FFFF_FFFF_FFFF_FFFF_FFFF_FFFF_FFFF}; + axi2array_frame_valid = 1'b1; + @(posedge axi2array_frame_ready); + axi2array_frame_valid = 1'b0; + #200; + // 读最大地址 + axi2array_frame_data = {1'b0, 1'b1, 1'b1, 16'hFFFF, 6'h3F, 128'd0}; + axi2array_frame_valid = 1'b1; + @(posedge axi2array_frame_ready); + axi2array_frame_valid = 1'b0; + #20; + array_rdata = 128'hFFFF_FFFF_FFFF_FFFF_FFFF_FFFF_FFFF_FFFF; // 验证边界地址数据 + array_rdata_vld = 1'b1; + @(posedge clk); + array_rdata_vld = 1'b0; + #200; + + // 测试结束 + #1000; + $display("所有测试场景完成!"); + $finish; + end + + // 波形记录(用于仿真后分析) + initial begin + $fsdbDumpfile("tb.fsdb"); // 记录FSDB格式波形 + $fsdbDumpvars(0, tb_array_ctrl, "+all"); // 记录所有信号 + $vcdpluson; // 记录VCD+格式波形 + $vcdplusmemon; // 记录内存信号 + end + + // 信号监控与断言(验证关键功能) + initial begin + $monitor( + "Time: %0t, 写有效: %b, 读有效: %b, 刷新使能: %b, CSN: %b, 行地址: %h, 列地址(写): %h, 列地址(读): %h", + $time, array_wdata_vld, array_caddr_vld_rd, array_ref_en, array_csn, array_raddr, array_caddr_wr, array_caddr_rd + ); + + // 断言1:复位期间片选信号CSN应为高(无效) + @(negedge rst_n); + if (array_csn !== 1'b1) begin + $error("复位期间CSN应为高!Time: %0t", $time); + end + + // 断言2:写操作时CSN应为低(有效),且写数据有效 + @(posedge array_wdata_vld); + if (array_csn !== 1'b0) begin + $error("写操作时CSN应为低!Time: %0t", $time); + end + + // 断言3:读操作时CSN应为低(有效),且读地址有效 + @(posedge array_caddr_vld_rd); + if (array_csn !== 1'b0) begin + $error("读操作时CSN应为低!Time: %0t", $time); + end + + // 断言4:读响应数据应与写入数据一致(场景3验证) + @(posedge array2axi_rdata_valid); + if (array2axi_rdata !== 128'h5A5A_5A5A_5A5A_5A5A_5A5A_5A5A_5A5A_5A5A) begin + $error("读数据与写入数据不一致!Time: %0t", $time); + end + + // 断言5:刷新期间不应有读写操作(CSN保持高或读写信号无效) + @(posedge array_ref_en); + #10; // 等待刷新启动 + if (array_wdata_vld === 1'b1 || array_caddr_vld_rd === 1'b1) begin + $error("刷新期间不应有读写操作!Time: %0t", $time); + end + end + +endmodule \ No newline at end of file diff --git a/tb/tb_array_mux.v b/tb/tb_array_mux.v new file mode 100644 index 0000000..e889f24 --- /dev/null +++ b/tb/tb_array_mux.v @@ -0,0 +1,100 @@ +`timescale 1ns/1ps + +module tb_array_mux; + + // 输入信号定义 + reg array_wr_csn; // 写操作片选 + reg [15:0] array_wr_raddr; // 写操作地址 + reg array_rd_csn; // 读操作片选 + reg [15:0] array_rd_raddr; // 读操作地址 + reg array_ref_csn; // 刷新操作片选 + reg [15:0] array_ref_raddr; // 刷新操作地址 + reg [1:0] array_mux_sel; // 选择控制信号 + + // 输出信号定义 + wire array_csn; // 输出片选 + wire [15:0] array_raddr; // 输出地址 + + // 例化被测试模块 + array_mux uut ( + .array_wr_csn (array_wr_csn), + .array_wr_raddr (array_wr_raddr), + .array_rd_csn (array_rd_csn), + .array_rd_raddr (array_rd_raddr), + .array_ref_csn (array_ref_csn), + .array_ref_raddr (array_ref_raddr), + .array_mux_sel (array_mux_sel), + .array_csn (array_csn), + .array_raddr (array_raddr) + ); + + // 初始化测试向量 + initial begin + // 初始值设置 + array_wr_csn = 1'b0; + array_wr_raddr = 16'h1234; + array_rd_csn = 1'b1; + array_rd_raddr = 16'h5678; + array_ref_csn = 1'b0; + array_ref_raddr = 16'h9ABC; + array_mux_sel = 2'b00; + + // 等待10ns,确保初始状态稳定 + #10; + + // 测试场景1:选择刷新操作(2'b01) + array_mux_sel = 2'b01; + #10; + $display("Test Case 1 (sel=01): csn=%b, addr=%h (Expected: csn=%b, addr=%h)", + array_csn, array_raddr, array_ref_csn, array_ref_raddr); + + // 测试场景2:选择写操作(2'b10) + array_mux_sel = 2'b10; + #10; + $display("Test Case 2 (sel=10): csn=%b, addr=%h (Expected: csn=%b, addr=%h)", + array_csn, array_raddr, array_wr_csn, array_wr_raddr); + + // 测试场景3:选择读操作(2'b11) + array_mux_sel = 2'b11; + #10; + $display("Test Case 3 (sel=11): csn=%b, addr=%h (Expected: csn=%b, addr=%h)", + array_csn, array_raddr, array_rd_csn, array_rd_raddr); + + // 测试场景4:默认情况(2'b00) + array_mux_sel = 2'b00; + #10; + $display("Test Case 4 (sel=00): csn=%b, addr=%h (Expected: csn=1, addr=0000)", + array_csn, array_raddr); + + // 测试场景5:动态改变输入值,验证实时性 + array_ref_csn = 1'b1; + array_ref_raddr = 16'hDEF0; + array_mux_sel = 2'b01; + #10; + $display("Test Case 5 (sel=01 updated): csn=%b, addr=%h (Expected: csn=%b, addr=%h)", + array_csn, array_raddr, array_ref_csn, array_ref_raddr); + + // 测试场景6:覆盖所有可能的选择信号 + array_mux_sel = 2'b00; #5; + array_mux_sel = 2'b01; #5; + array_mux_sel = 2'b10; #5; + array_mux_sel = 2'b11; #5; + + // 结束仿真 + $finish; + end + + initial begin + $fsdbDumpfile("tb.fsdb"); + $fsdbDumpvars(0,tb_array_mux,"+all"); + $vcdpluson; + $vcdplusmemon; + end + + // 监控信号变化(可选,用于波形分析) + initial begin + $monitor("Time: %0t, sel=%b, csn=%b, addr=%h", + $time, array_mux_sel, array_csn, array_raddr); + end + +endmodule \ No newline at end of file diff --git a/tb/tb_array_rd.v b/tb/tb_array_rd.v new file mode 100644 index 0000000..28bf844 --- /dev/null +++ b/tb/tb_array_rd.v @@ -0,0 +1,175 @@ +`timescale 1ns/1ps + +module tb_array_rd(); + + // 时钟和复位信号 + reg clk; + reg rst_n; + + // 输入信号(DUT 的输入) + reg array_rd_frame_valid; + reg [151:0] array_rd_frame_data; + reg array_rdata_vld; + reg [127:0] array_rdata; + reg [7:0] array_inner_tras; + reg [7:0] array_inner_trp; + reg [7:0] array_inner_trcd_rd; + reg [7:0] array_inner_trtp; + + // 输出信号(DUT 的输出) + wire array_rd_frame_ready; + wire array_rd_done; + wire array_rd_csn; + wire [15:0] array_rd_raddr; + wire array_caddr_vld_rd; + wire [5:0] array_caddr_rd; + wire array2axi_rdata_valid; + wire [127:0] array2axi_rdata; + + // 实例化被测试模块(DUT) + array_rd u_array_rd( + .clk (clk), + .rst_n (rst_n), + .array_rd_frame_valid(array_rd_frame_valid), + .array_rd_frame_data(array_rd_frame_data), + .array_rd_frame_ready(array_rd_frame_ready), + .array_rd_done (array_rd_done), + .array_rd_csn (array_rd_csn), + .array_rd_raddr (array_rd_raddr), + .array_caddr_vld_rd (array_caddr_vld_rd), + .array_caddr_rd (array_caddr_rd), + .array_rdata_vld (array_rdata_vld), + .array_rdata (array_rdata), + .array_inner_tras (array_inner_tras), + .array_inner_trp (array_inner_trp), + .array_inner_trcd_rd(array_inner_trcd_rd), + .array_inner_trtp (array_inner_trtp), + .array2axi_rdata_valid(array2axi_rdata_valid), + .array2axi_rdata (array2axi_rdata) + ); + + // 生成时钟(50MHz,周期 20ns) + initial begin + clk = 1'b0; + forever #10 clk = ~clk; + end + + // 主测试流程 + initial begin + // 初始化信号 + rst_n = 1'b0; + array_rd_frame_valid = 1'b0; + array_rd_frame_data = 152'd0; + array_rdata_vld = 1'b0; + array_rdata = 128'd0; + array_inner_tras = 8'd3; // 示例值:TRAS = 3 个时钟周期 + array_inner_trp = 8'd2; // 示例值:TRP = 2 个时钟周期 + array_inner_trcd_rd = 8'd2; // 示例值:TRCD_RD = 2 个时钟周期 + array_inner_trtp = 8'd1; // 示例值:TRTP = 1 个时钟周期 + + // 复位释放(10 个时钟周期后) + #200; + rst_n = 1'b1; + #20; + + // 测试场景 1:单帧数据读取(含 SOF 和 EOF) + $display("=== 测试场景 1:单帧数据读取 ==="); + send_frame( + 1'b1, // 起始标志 + 1'b1, // 结束标志(单帧) + 16'h1234,// 读取地址 + 6'h05, // 列地址 + 128'h0 // 读取操作的帧数据中数据段无效,填0 + ); + #20; + drive_rdata(128'hA5A5A5A5A5A5A5A5A5A5A5A5A5A5A5A5); // 返回读取数据 + wait(array_rd_done); // 等待读取完成 + #100; + + // 测试场景 2:多帧数据读取(首帧 SOF,末帧 EOF) + $display("=== 测试场景 2:多帧数据读取 ==="); + // 第一帧(SOF=1,EOF=0) + send_frame( + 1'b1, + 1'b0, + 16'h5678, + 6'h0A, + 128'h0 // 数据段无效 + ); + // 模拟返回第一帧数据 + drive_rdata(128'h55AA55AA55AA55AA55AA55AA55AA55AA); + #10; + // 第二帧(SOF=0,EOF=1) + send_frame( + 1'b0, + 1'b1, + 16'h5678, // 地址与前一帧相同(连续读取) + 6'h0B, + 128'h0 // 数据段无效 + ); + drive_rdata(128'hAA55AA55AA55AA55AA55AA55AA55AA55); + wait(array_rd_done); // 等待读取完成 + #100; + + // 测试场景 3:无输入时的空闲状态 + $display("=== 测试场景 3:空闲状态验证 ==="); + array_rd_frame_valid = 1'b0; + #200; + + // 测试结束 + $display("=== 所有测试场景完成 ==="); + $finish; + end + + // 任务:发送一帧读取请求 + task send_frame; + input rsof; // 帧起始标志 + input reof; // 帧结束标志 + input [15:0] rraddr; // 读取地址 + input [5:0] rcaddr; // 列地址 + input [127:0] wdata; // 占位(读取操作中无效) + begin + // 等待模块就绪(ready 信号为高) + wait(array_rd_frame_ready); + #10; // 延迟一小段时间 + + // 驱动输入信号 + array_rd_frame_valid = 1'b1; + array_rd_frame_data = {rsof, reof, rraddr, rcaddr, wdata}; // 拼接帧数据 + #20; // 保持一个时钟周期 + + // 撤销有效信号 + array_rd_frame_valid = 1'b0; + array_rd_frame_data = 152'd0; + end + endtask + + // 任务:驱动读取数据返回 + task drive_rdata; + input [127:0] data; // 要返回的读取数据 + begin + array_rdata_vld = 1'b1; + array_rdata = data; + #20; // 保持一个时钟周期 + array_rdata_vld = 1'b0; + array_rdata = 128'd0; + end + endtask + + initial begin + $fsdbDumpfile("tb.fsdb"); + $fsdbDumpvars(0,tb_array_rd,"+all"); + $vcdpluson; + $vcdplusmemon; + end + + // 监控关键信号变化(用于调试) + initial begin + $monitor( + "Time: %0t, State: %h, CSN: %b, Ready: %b, Done: %b, CaddrVld: %b, FIFOValid: %b", + $time, u_array_rd.cur_state, array_rd_csn, array_rd_frame_ready, + array_rd_done, array_caddr_vld_rd, array2axi_rdata_valid + ); + end + +endmodule \ No newline at end of file diff --git a/tb/tb_array_ref.v b/tb/tb_array_ref.v new file mode 100644 index 0000000..86ef933 --- /dev/null +++ b/tb/tb_array_ref.v @@ -0,0 +1,103 @@ +`timescale 1ns/1ps + +module tb_array_ref(); + + // 输入信号定义 + reg clk; + reg rst_n; + reg array_ref_start; + reg [7:0] array_inner_tras; + reg [7:0] array_inner_trp; + + // 输出信号定义 + wire array_ref_done; + wire array_ref_csn; + wire [15:0] array_ref_raddr; + + // 实例化待测试模块 + array_ref uut ( + .clk (clk), + .rst_n (rst_n), + .array_ref_start (array_ref_start), + .array_ref_done (array_ref_done), + .array_ref_csn (array_ref_csn), + .array_ref_raddr (array_ref_raddr), + .array_inner_tras (array_inner_tras), + .array_inner_trp (array_inner_trp) + ); + + // 时钟生成:10ns周期(100MHz) + initial begin + clk = 0; + forever #1.25 clk = ~clk; + end + + // 主测试流程 + initial begin + // 初始化信号 + rst_n = 0; + array_ref_start = 0; + array_inner_tras = 8'd2; // RAS周期为2个时钟 + array_inner_trp = 8'd1; // RP周期为1个时钟 + + // 复位释放 + #20; + rst_n = 1; + #10; + + // 启动刷新操作 + @(posedge clk); + array_ref_start = 1; + @(posedge clk); + array_ref_start = 0; // 释放启动信号 + + // 等待刷新完成(全地址遍历) + wait(array_ref_done); + $display("=== 第一次完整刷新完成 ==="); + #50; + + // // 测试不同的tras和trp参数 + // array_inner_tras = 8'd3; + // array_inner_trp = 8'd2; + // @(posedge clk); + // array_ref_start = 1; + // @(posedge clk); + // array_ref_start = 0; + + // wait(array_ref_done); + // $display("=== 第二次完整刷新完成 ==="); + // #50; + + // // 测试中途复位 + // @(posedge clk); + // array_ref_start = 1; + // @(posedge clk); + // array_ref_start = 0; + // #30; + // rst_n = 0; + // #20; + // rst_n = 1; + // $display("=== 复位测试完成 ==="); + + // 结束仿真 + #100; + $display("=== 仿真结束 ==="); + $finish; + end + + initial begin + $fsdbDumpfile("tb.fsdb"); + $fsdbDumpvars(0,tb_array_ref,"+all"); + $vcdpluson; + $vcdplusmemon; + end + // 监控信号变化 + initial begin + $monitor( + "Time: %0t, State: %b, raddr: %h, csn: %b, done: %b, ras_cnt: %h, rp_cnt: %h", + $time, uut.cur_state, array_ref_raddr, array_ref_csn, array_ref_done, + uut.ref_ras_cnt, uut.ref_rp_cnt + ); + end + +endmodule \ No newline at end of file diff --git a/tb/tb_array_status_ctrl.v b/tb/tb_array_status_ctrl.v new file mode 100644 index 0000000..1a8ae89 --- /dev/null +++ b/tb/tb_array_status_ctrl.v @@ -0,0 +1,182 @@ +`timescale 1ns/1ps + +module tb_array_status_ctrl(); + +// 时钟与复位信号 +reg clk; +reg rst_n; + +// AXI 到数组的帧信号 +reg axi2array_frame_valid; +reg [152:0] axi2array_frame_data; +wire axi2array_frame_ready; + +// 数组读写信号 +wire array_wr_frame_valid; +wire [151:0] array_wr_frame_data; +reg array_wr_frame_ready; +reg array_wr_done; + +wire array_rd_frame_valid; +wire [151:0] array_rd_frame_data; +reg array_rd_frame_ready; +reg array_rd_done; + +// 数组刷新信号 +wire array_ref_start; +reg array_ref_done; + +// 其他控制信号 +wire [1:0] array_mux_sel; +reg mc_work_en; +reg array_ref_en; +reg [24:0] array_inner_tref0; +reg [24:0] array_inner_tref1; +reg array_inner_ref_sel; + +// 例化被测试模块 +array_status_ctrl uut ( + .clk (clk), + .rst_n (rst_n), + .axi2array_frame_valid (axi2array_frame_valid), + .axi2array_frame_data (axi2array_frame_data), + .axi2array_frame_ready (axi2array_frame_ready), + .array_wr_frame_valid (array_wr_frame_valid), + .array_wr_frame_data (array_wr_frame_data), + .array_wr_frame_ready (array_wr_frame_ready), + .array_wr_done (array_wr_done), + .array_rd_frame_valid (array_rd_frame_valid), + .array_rd_frame_data (array_rd_frame_data), + .array_rd_frame_ready (array_rd_frame_ready), + .array_rd_done (array_rd_done), + .array_ref_start (array_ref_start), + .array_ref_done (array_ref_done), + .array_mux_sel (array_mux_sel), + .mc_work_en (mc_work_en), + .array_ref_en (array_ref_en), + .array_inner_tref0 (array_inner_tref0), + .array_inner_tref1 (array_inner_tref1), + .array_inner_ref_sel (array_inner_ref_sel) +); + +// 生成时钟(50MHz,周期20ns) +initial begin + clk = 0; + forever #10 clk = ~clk; +end + +// 主测试流程 +initial begin + // 初始化信号 + rst_n = 0; + axi2array_frame_valid = 0; + axi2array_frame_data = 0; + array_wr_frame_ready = 0; + array_wr_done = 0; + array_rd_frame_ready = 0; + array_rd_done = 0; + array_ref_done = 0; + mc_work_en = 0; + array_ref_en = 0; + array_inner_tref0 = 25'd5; // 刷新计数阈值 + array_inner_tref1 = 25'd10; + array_inner_ref_sel = 0; + + // 释放复位 + #100 rst_n = 1; + #20; + + // 测试场景1:写操作 + $display("Test Case 1: Write Operation"); + mc_work_en = 1; // 使能工作模式 + #20; + // 发送写请求(bit152=1) + axi2array_frame_data = {1'b1, 152'h123456}; // 写数据 + axi2array_frame_valid = 1; + array_wr_frame_ready = 1; // 准备接收写数据 + #20; + array_wr_done = 1; // 写完成 + #20; + axi2array_frame_valid = 0; + array_wr_done = 0; + #100; + + // 测试场景2:读操作 + $display("Test Case 2: Read Operation"); + // 发送读请求(bit152=0) + axi2array_frame_data = {1'b0, 152'hABCDEF}; // 读数据 + axi2array_frame_valid = 1; + array_rd_frame_ready = 1; // 准备接收读数据 + #20; + array_rd_done = 1; // 读完成 + #20; + axi2array_frame_valid = 0; + array_rd_done = 0; + #100; + + // 测试场景3:刷新操作(达到计数阈值) + $display("Test Case 3: Refresh Operation (by counter)"); + array_ref_en = 1; // 使能刷新 + #200; // 等待刷新计数器达到阈值(tref0=5,约100ns后触发) + array_ref_done = 1; // 刷新完成 + #20; + array_ref_done = 0; + array_ref_en = 0; + #100; + + // 测试场景4:状态优先级(刷新 > 写 > 读) + $display("Test Case 4: State Priority (Refresh > Write > Read)"); + array_ref_en = 1; + mc_work_en = 1; + // 同时触发刷新请求、写请求和读请求 + axi2array_frame_data = {1'b1, 152'hFEDCBA}; // 写请求 + axi2array_frame_valid = 1; + #20; + array_ref_done = 1; // 先完成刷新 + #20; + array_ref_done = 0; + #20; + array_wr_done = 1; // 再完成写操作 + #20; + axi2array_frame_valid = 0; + array_wr_done = 0; + #100; + + // 结束测试 + $display("All Test Cases Completed!"); + $finish; +end + +// 监控状态变化 +always @(posedge clk) begin + if (rst_n) begin + case (uut.cur_state) + 2'b00: $display("[%0t] State: IDLE", $time); + 2'b01: $display("[%0t] State: WRITE", $time); + 2'b10: $display("[%0t] State: READ", $time); + 2'b11: $display("[%0t] State: REFRESH", $time); + endcase + end +end + + initial begin + $fsdbDumpfile("tb.fsdb"); + $fsdbDumpvars(0,tb_array_status_ctrl,"+all"); + $vcdpluson; + $vcdplusmemon; + end + +// 监控关键信号 +always @(posedge clk) begin + if (array_ref_start) begin + $display("[%0t] Refresh Start Triggered", $time); + end + if (array_wr_frame_valid && array_wr_frame_ready) begin + $display("[%0t] Write Data Transferred: %h", $time, array_wr_frame_data); + end + if (array_rd_frame_valid && array_rd_frame_ready) begin + $display("[%0t] Read Data Transferred: %h", $time, array_rd_frame_data); + end +end + +endmodule \ No newline at end of file diff --git a/tb/tb_array_wr.v b/tb/tb_array_wr.v new file mode 100644 index 0000000..7518941 --- /dev/null +++ b/tb/tb_array_wr.v @@ -0,0 +1,151 @@ +`timescale 1ns/1ps + +module tb_array_wr(); + + // 时钟和复位信号 + reg clk; + reg rst_n; + + // 输入信号(DUT 的输入) + reg array_wr_frame_valid; + reg [151:0] array_wr_frame_data; + reg [7:0] array_inner_tras; + reg [7:0] array_inner_trp; + reg [7:0] array_inner_trcd_wr; + reg [7:0] array_inner_twr; + + // 输出信号(DUT 的输出) + wire array_wr_frame_ready; + wire array_wr_done; + wire array_wr_csn; + wire [15:0] array_wr_raddr; + wire array_caddr_vld_wr; + wire [5:0] array_caddr_wr; + wire array_wdata_vld; + wire [127:0] array_wdata; + + // 实例化被测试模块(DUT) + array_wr u_array_wr( + .clk (clk), + .rst_n (rst_n), + .array_wr_frame_valid(array_wr_frame_valid), + .array_wr_frame_data(array_wr_frame_data), + .array_wr_frame_ready(array_wr_frame_ready), + .array_wr_done (array_wr_done), + .array_wr_csn (array_wr_csn), + .array_wr_raddr (array_wr_raddr), + .array_caddr_vld_wr (array_caddr_vld_wr), + .array_caddr_wr (array_caddr_wr), + .array_wdata_vld (array_wdata_vld), + .array_wdata (array_wdata), + .array_inner_tras (array_inner_tras), + .array_inner_trp (array_inner_trp), + .array_inner_trcd_wr(array_inner_trcd_wr), + .array_inner_twr (array_inner_twr) + ); + + // 生成时钟(50MHz,周期 20ns) + initial begin + clk = 1'b0; + forever #10 clk = ~clk; + end + + // 主测试流程 + initial begin + // 初始化信号 + rst_n = 1'b0; + array_wr_frame_valid = 1'b0; + array_wr_frame_data = 152'd0; + array_inner_tras = 8'd3; // 示例值:TRAS = 3 个时钟周期 + array_inner_trp = 8'd2; // 示例值:TRP = 2 个时钟周期 + array_inner_trcd_wr = 8'd2; // 示例值:TRCD_WR = 2 个时钟周期 + array_inner_twr = 8'd2; // 示例值:TWR = 2 个时钟周期 + + // 复位释放(10 个时钟周期后) + #200; + rst_n = 1'b1; + #20; + + // 测试场景 1:单帧数据写入(含 SOF 和 EOF) + $display("=== 测试场景 1:单帧数据写入 ==="); + send_frame( + 1'b1, // 起始标志 + 1'b1, // 结束标志(单帧) + 16'h1234,// 地址 + 6'h05, // 列地址 + 128'hA5A5A5A5A5A5A5A5A5A5A5A5A5A5A5A5 // 数据 + ); + wait(array_wr_done); // 等待写入完成 + #100; + + // 测试场景 2:多帧数据写入(首帧 SOF,末帧 EOF) + $display("=== 测试场景 2:多帧数据写入 ==="); + // 第一帧(SOF=1,EOF=0) + send_frame( + 1'b1, + 1'b0, + 16'h5678, + 6'h0A, + 128'h55AA55AA55AA55AA55AA55AA55AA55AA + ); + #20; + // 第二帧(SOF=0,EOF=1) + send_frame( + 1'b0, + 1'b1, + 16'h5678, // 地址与前一帧相同(连续写入) + 6'h0B, + 128'hAA55AA55AA55AA55AA55AA55AA55AA55 + ); + wait(array_wr_done); // 等待写入完成 + #100; + + // 测试场景 3:无输入时的空闲状态 + $display("=== 测试场景 3:空闲状态验证 ==="); + array_wr_frame_valid = 1'b0; + #200; + + // 测试结束 + $display("=== 所有测试场景完成 ==="); + $finish; + end + + // 任务:发送一帧数据(封装输入信号逻辑) + task send_frame; + input wsof; // 帧起始标志 + input weof; // 帧结束标志 + input [15:0] wraddr; // 写入地址 + input [5:0] wcaddr; // 列地址 + input [127:0] wdata; // 写入数据 + begin + // 等待模块就绪(ready 信号为高) + wait(array_wr_frame_ready); + #10; // 延迟一小段时间 + + // 驱动输入信号 + array_wr_frame_valid = 1'b1; + array_wr_frame_data = {wsof, weof, wraddr, wcaddr, wdata}; // 拼接帧数据 + #20; // 保持一个时钟周期 + + // 撤销有效信号 + array_wr_frame_valid = 1'b0; + array_wr_frame_data = 152'd0; + end + endtask + + initial begin + $fsdbDumpfile("tb.fsdb"); + $fsdbDumpvars(0,tb_array_wr,"+all"); + $vcdpluson; + $vcdplusmemon; + end + + // 监控关键信号变化(可选,用于调试) + initial begin + $monitor( + "Time: %0t, State: %h, CSN: %b, Ready: %b, Done: %b, Valid: %b", + $time, u_array_wr.cur_state, array_wr_csn, array_wr_frame_ready, array_wr_done, array_wdata_vld + ); + end + +endmodule \ No newline at end of file diff --git a/tb/tb_axi_slv.v b/tb/tb_axi_slv.v new file mode 100644 index 0000000..ed3b2ff --- /dev/null +++ b/tb/tb_axi_slv.v @@ -0,0 +1,197 @@ +module tb_axi_slv; + reg clk; + reg rst_n; + + reg axi_s_awvalid; + reg [7:0] axi_s_awlen; + reg [25:0] axi_s_awaddr; + wire axi_s_awready; + + reg axi_s_wvalid; + reg axi_s_wlast; + reg [63:0] axi_s_wdata; + wire axi_s_wready; + + reg axi_s_arvalid; + reg [7:0] axi_s_arlen; + reg [25:0] axi_s_araddr; + wire axi_s_arready; + + wire axi_s_rvalid; + wire axi_s_rlast; + wire [63:0] axi_s_rdata; + + wire axi2array_frame_valid; + wire [152:0] axi2array_frame_data; + reg axi2array_frame_ready; + + reg array2axi_rdata_valid; + reg [127:0] array2axi_rdata; + + reg [1:0] axi_bus_rw_priority; + reg mc_work_en; + +axi_slv u_axi_slv( + .clk (clk), + .rst_n (rst_n), + + .axi_s_awvalid (axi_s_awvalid), + .axi_s_awlen (axi_s_awlen), + .axi_s_awaddr (axi_s_awaddr), + .axi_s_awready (axi_s_awready), + + .axi_s_wvalid (axi_s_wvalid), + .axi_s_wlast (axi_s_wlast), + .axi_s_wdata (axi_s_wdata), + .axi_s_wready (axi_s_wready), + + .axi_s_arvalid (axi_s_arvalid), + .axi_s_arlen (axi_s_arlen), + .axi_s_araddr (axi_s_araddr), + .axi_s_arready (axi_s_arready), + + .axi_s_rvalid (axi_s_rvalid), + .axi_s_rlast (axi_s_rlast), + .axi_s_rdata (axi_s_rdata), + + .axi2array_frame_valid (axi2array_frame_valid), + .axi2array_frame_data (axi2array_frame_data), + .axi2array_frame_ready (axi2array_frame_ready), + + .array2axi_rdata_valid (array2axi_rdata_valid), + .array2axi_rdata (array2axi_rdata), + + .axi_bus_rw_priority (axi_bus_rw_priority), + .mc_work_en (mc_work_en) +); + + task aw; + input [7:0] awlen; + input [25:0] awaddr; + begin + @(posedge clk) begin + axi_s_awvalid <= 1'b1; + axi_s_awaddr <= awaddr; + axi_s_awlen <= awlen; + end + #1; + wait(axi_s_awready); + @(posedge clk) begin + axi_s_awvalid <= 1'b0; + end + end + endtask + + task w; + input [63:0] wdata; + input wlast; + begin + @(posedge clk) begin + axi_s_wvalid <= 1'b1; + axi_s_wdata <= wdata; + axi_s_wlast <= wlast; + end + #0.1; + wait(axi_s_wready); + @(posedge clk) begin + axi_s_wvalid <= 1'b0; + end + end + endtask + + task ar; + input [25:0] araddr; + input [7:0] arlen; + begin + @(posedge clk) begin + axi_s_arvalid <= 1'b1; + axi_s_araddr <= araddr; + axi_s_arlen <= arlen; + end + #1; + wait(axi_s_arready); + @(posedge clk) begin + axi_s_arvalid <= 1'b0; + end + end + endtask + + task arrayrdata; + input [127:0] rdata; + begin + @(posedge clk) begin + array2axi_rdata_valid <= 1'b1; + array2axi_rdata <= rdata; + end + @(posedge clk) begin + array2axi_rdata_valid <= 1'b0; + end + end + endtask + + initial begin + clk = 0; + forever begin + #1.25 clk = ~clk; + end + end + + initial begin + rst_n = 'd0; + axi_s_awvalid = 'd0; + axi_s_awlen ='d0; + axi_s_awaddr ='d0; + + axi_s_wvalid = 'd0; + axi_s_wdata = 'd0; + axi_s_wlast = 'd0; + axi_s_arvalid = 'd0; + axi_s_araddr = 'd0; + axi_s_arlen = 'd0; + + array2axi_rdata ='d0; + array2axi_rdata_valid = 'd0; + axi2array_frame_ready = 1'd1; + mc_work_en = 1'b1; + axi_bus_rw_priority = 2'b10; + @(posedge clk) begin + rst_n = 1'b1; + end + aw(8'd5,{16'h0,6'h3f,4'h0}); + w(64'd1,0); + w(64'd2,0); + w(64'd3,0); + w(64'd4,0); + w(64'd5,0); + w(64'd6,1); + @(posedge clk) begin + axi_s_wvalid <= 1'b0; + end + ar({16'h1,6'h3f,4'h0},8'd9); + @(posedge clk); + @(posedge clk); + @(posedge clk); + @(posedge clk); + @(posedge clk); + @(posedge clk); + @(posedge clk); + @(posedge clk); + @(posedge clk); + @(posedge clk); + arrayrdata({64'h2,64'h1}); + arrayrdata({64'h4,64'h3}); + arrayrdata({64'h6,64'h5}); + arrayrdata({64'h8,64'h7}); + arrayrdata({64'ha,64'h9}); + #15; + $finish; + end + + initial begin + $fsdbDumpfile("tb.fsdb"); + $fsdbDumpvars(0,tb_axi_slv,"+all"); + $vcdpluson; + $vcdplusmemon; + end + +endmodule