Line 159... |
Line 159... |
dbg_i2c_wr(BRK1_CTL, 16'h0005);
|
dbg_i2c_wr(BRK1_CTL, 16'h0005);
|
dbg_i2c_wr(CPU_CTL, 16'h0002);
|
dbg_i2c_wr(CPU_CTL, 16'h0002);
|
repeat(100) @(posedge mclk);
|
repeat(100) @(posedge mclk);
|
|
|
// CHECK
|
// CHECK
|
if (r0 !== ('h10000-`PMEM_SIZE+'h18)) tb_error("====== DATA FLOW (EXECUTION-UNIT) - SINGLE ADDRESSES - READ: test 1 =====");
|
if (r0 !== ('h10000-`PMEM_SIZE+'h0C)) tb_error("====== DATA FLOW (EXECUTION-UNIT) - SINGLE ADDRESSES - READ: test 1 =====");
|
if (mem200 !== 16'h0001) tb_error("====== DATA FLOW (EXECUTION-UNIT) - SINGLE ADDRESSES - READ: test 2 =====");
|
if (mem200 !== 16'h0000) tb_error("====== DATA FLOW (EXECUTION-UNIT) - SINGLE ADDRESSES - READ: test 2 =====");
|
dbg_i2c_rd(CPU_STAT);
|
dbg_i2c_rd(CPU_STAT);
|
if (dbg_i2c_buf !== 16'h0021) tb_error("====== DATA FLOW (EXECUTION-UNIT) - SINGLE ADDRESSES - READ: test 3 =====");
|
if (dbg_i2c_buf !== 16'h0021) tb_error("====== DATA FLOW (EXECUTION-UNIT) - SINGLE ADDRESSES - READ: test 3 =====");
|
dbg_i2c_rd(BRK1_STAT);
|
dbg_i2c_rd(BRK1_STAT);
|
if (dbg_i2c_buf !== 16'h0001) tb_error("====== DATA FLOW (EXECUTION-UNIT) - SINGLE ADDRESSES - READ: test 4 =====");
|
if (dbg_i2c_buf !== 16'h0001) tb_error("====== DATA FLOW (EXECUTION-UNIT) - SINGLE ADDRESSES - READ: test 4 =====");
|
dbg_i2c_wr(BRK1_STAT, 16'h0001);
|
dbg_i2c_wr(BRK1_STAT, 16'h0001);
|
Line 174... |
Line 174... |
// RE-RUN
|
// RE-RUN
|
dbg_i2c_wr(CPU_CTL, 16'h0002);
|
dbg_i2c_wr(CPU_CTL, 16'h0002);
|
repeat(100) @(posedge mclk);
|
repeat(100) @(posedge mclk);
|
|
|
// RE-CHECK
|
// RE-CHECK
|
if (r0 !== ('h10000-`PMEM_SIZE+'h1C)) tb_error("====== INSTRUCTION FLOW (FRONTEND) - SINGLE ADDRESSES - READ: test 6 =====");
|
if (r0 !== ('h10000-`PMEM_SIZE+'h14)) tb_error("====== INSTRUCTION FLOW (FRONTEND) - SINGLE ADDRESSES - READ: test 6 =====");
|
if (mem200 !== 16'h0001) tb_error("====== INSTRUCTION FLOW (FRONTEND) - SINGLE ADDRESSES - READ: test 7 =====");
|
if (mem200 !== 16'h0001) tb_error("====== INSTRUCTION FLOW (FRONTEND) - SINGLE ADDRESSES - READ: test 7 =====");
|
dbg_i2c_rd(CPU_STAT);
|
dbg_i2c_rd(CPU_STAT);
|
if (dbg_i2c_buf !== 16'h0021) tb_error("====== INSTRUCTION FLOW (FRONTEND) - SINGLE ADDRESSES - READ: test 8 =====");
|
if (dbg_i2c_buf !== 16'h0021) tb_error("====== INSTRUCTION FLOW (FRONTEND) - SINGLE ADDRESSES - READ: test 8 =====");
|
dbg_i2c_rd(BRK1_STAT);
|
dbg_i2c_rd(BRK1_STAT);
|
if (dbg_i2c_buf !== 16'h0004) tb_error("====== INSTRUCTION FLOW (FRONTEND) - SINGLE ADDRESSES - READ: test 9 =====");
|
if (dbg_i2c_buf !== 16'h0004) tb_error("====== INSTRUCTION FLOW (FRONTEND) - SINGLE ADDRESSES - READ: test 9 =====");
|
Line 190... |
Line 190... |
dbg_i2c_wr(CPU_CTL, 16'h0002);
|
dbg_i2c_wr(CPU_CTL, 16'h0002);
|
repeat(100) @(posedge mclk);
|
repeat(100) @(posedge mclk);
|
|
|
// CHECK
|
// CHECK
|
if (r0 !== ('h10000-`PMEM_SIZE+'h18)) tb_error("====== DATA FLOW (EXECUTION-UNIT) - SINGLE ADDRESSES - READ: test 11 =====");
|
if (r0 !== ('h10000-`PMEM_SIZE+'h18)) tb_error("====== DATA FLOW (EXECUTION-UNIT) - SINGLE ADDRESSES - READ: test 11 =====");
|
if (mem200 !== 16'h0002) tb_error("====== DATA FLOW (EXECUTION-UNIT) - SINGLE ADDRESSES - READ: test 12 =====");
|
if (mem200 !== 16'h0001) tb_error("====== DATA FLOW (EXECUTION-UNIT) - SINGLE ADDRESSES - READ: test 12 =====");
|
dbg_i2c_rd(CPU_STAT);
|
dbg_i2c_rd(CPU_STAT);
|
if (dbg_i2c_buf !== 16'h0021) tb_error("====== DATA FLOW (EXECUTION-UNIT) - SINGLE ADDRESSES - READ: test 13 =====");
|
if (dbg_i2c_buf !== 16'h0021) tb_error("====== DATA FLOW (EXECUTION-UNIT) - SINGLE ADDRESSES - READ: test 13 =====");
|
dbg_i2c_rd(BRK1_STAT);
|
dbg_i2c_rd(BRK1_STAT);
|
if (dbg_i2c_buf !== 16'h0001) tb_error("====== DATA FLOW (EXECUTION-UNIT) - SINGLE ADDRESSES - READ: test 14 =====");
|
if (dbg_i2c_buf !== 16'h0001) tb_error("====== DATA FLOW (EXECUTION-UNIT) - SINGLE ADDRESSES - READ: test 14 =====");
|
dbg_i2c_wr(BRK1_STAT, 16'h0001);
|
dbg_i2c_wr(BRK1_STAT, 16'h0001);
|
Line 342... |
Line 342... |
if (r0 !== ('h10000-`PMEM_SIZE+'h0c)) tb_error("====== INSTRUCTION FLOW (FRONTEND) - SINGLE ADDRESSES - READ/WRITE: test 11 =====");
|
if (r0 !== ('h10000-`PMEM_SIZE+'h0c)) tb_error("====== INSTRUCTION FLOW (FRONTEND) - SINGLE ADDRESSES - READ/WRITE: test 11 =====");
|
if (mem200 !== 16'h0000) tb_error("====== INSTRUCTION FLOW (FRONTEND) - SINGLE ADDRESSES - READ/WRITE: test 12 =====");
|
if (mem200 !== 16'h0000) tb_error("====== INSTRUCTION FLOW (FRONTEND) - SINGLE ADDRESSES - READ/WRITE: test 12 =====");
|
dbg_i2c_rd(CPU_STAT);
|
dbg_i2c_rd(CPU_STAT);
|
if (dbg_i2c_buf !== 16'h0021) tb_error("====== INSTRUCTION FLOW (FRONTEND) - SINGLE ADDRESSES - READ/WRITE: test 13 =====");
|
if (dbg_i2c_buf !== 16'h0021) tb_error("====== INSTRUCTION FLOW (FRONTEND) - SINGLE ADDRESSES - READ/WRITE: test 13 =====");
|
dbg_i2c_rd(BRK1_STAT);
|
dbg_i2c_rd(BRK1_STAT);
|
if (dbg_i2c_buf !== 16'h0002) tb_error("====== INSTRUCTION FLOW (FRONTEND) - SINGLE ADDRESSES - READ/WRITE: test 14 =====");
|
if (dbg_i2c_buf !== 16'h0003) tb_error("====== INSTRUCTION FLOW (FRONTEND) - SINGLE ADDRESSES - READ/WRITE: test 14 =====");
|
dbg_i2c_wr(BRK1_STAT, 16'h0002);
|
dbg_i2c_wr(BRK1_STAT, 16'h0003);
|
dbg_i2c_rd(CPU_STAT);
|
dbg_i2c_rd(CPU_STAT);
|
if (dbg_i2c_buf !== 16'h0001) tb_error("====== INSTRUCTION FLOW (FRONTEND) - SINGLE ADDRESSES - READ/WRITE: test 15 =====");
|
if (dbg_i2c_buf !== 16'h0001) tb_error("====== INSTRUCTION FLOW (FRONTEND) - SINGLE ADDRESSES - READ/WRITE: test 15 =====");
|
|
|
// RE-RUN
|
// RE-RUN
|
dbg_i2c_wr(CPU_CTL, 16'h0002);
|
dbg_i2c_wr(CPU_CTL, 16'h0002);
|
Line 357... |
Line 357... |
if (r0 !== ('h10000-`PMEM_SIZE+'h14)) tb_error("====== INSTRUCTION FLOW (FRONTEND) - SINGLE ADDRESSES - READ/WRITE: test 16 =====");
|
if (r0 !== ('h10000-`PMEM_SIZE+'h14)) tb_error("====== INSTRUCTION FLOW (FRONTEND) - SINGLE ADDRESSES - READ/WRITE: test 16 =====");
|
if (mem200 !== 16'h0001) tb_error("====== INSTRUCTION FLOW (FRONTEND) - SINGLE ADDRESSES - READ/WRITE: test 17 =====");
|
if (mem200 !== 16'h0001) tb_error("====== INSTRUCTION FLOW (FRONTEND) - SINGLE ADDRESSES - READ/WRITE: test 17 =====");
|
dbg_i2c_rd(CPU_STAT);
|
dbg_i2c_rd(CPU_STAT);
|
if (dbg_i2c_buf !== 16'h0021) tb_error("====== INSTRUCTION FLOW (FRONTEND) - SINGLE ADDRESSES - READ/WRITE: test 18 =====");
|
if (dbg_i2c_buf !== 16'h0021) tb_error("====== INSTRUCTION FLOW (FRONTEND) - SINGLE ADDRESSES - READ/WRITE: test 18 =====");
|
dbg_i2c_rd(BRK1_STAT);
|
dbg_i2c_rd(BRK1_STAT);
|
if (dbg_i2c_buf !== 16'h0008) tb_error("====== INSTRUCTION FLOW (FRONTEND) - SINGLE ADDRESSES - READ/WRITE: test 19 =====");
|
if (dbg_i2c_buf !== 16'h000C) tb_error("====== INSTRUCTION FLOW (FRONTEND) - SINGLE ADDRESSES - READ/WRITE: test 19 =====");
|
dbg_i2c_wr(BRK1_STAT, 16'h0008);
|
dbg_i2c_wr(BRK1_STAT, 16'h000C);
|
dbg_i2c_rd(CPU_STAT);
|
dbg_i2c_rd(CPU_STAT);
|
if (dbg_i2c_buf !== 16'h0001) tb_error("====== INSTRUCTION FLOW (FRONTEND) - SINGLE ADDRESSES - READ/WRITE: test 20 =====");
|
if (dbg_i2c_buf !== 16'h0001) tb_error("====== INSTRUCTION FLOW (FRONTEND) - SINGLE ADDRESSES - READ/WRITE: test 20 =====");
|
|
|
// RE-RUN
|
// RE-RUN
|
dbg_i2c_wr(CPU_CTL, 16'h0002);
|
dbg_i2c_wr(CPU_CTL, 16'h0002);
|
Line 413... |
Line 413... |
dbg_i2c_wr(BRK1_CTL, 16'h0015);
|
dbg_i2c_wr(BRK1_CTL, 16'h0015);
|
dbg_i2c_wr(CPU_CTL, 16'h0002);
|
dbg_i2c_wr(CPU_CTL, 16'h0002);
|
repeat(100) @(posedge mclk);
|
repeat(100) @(posedge mclk);
|
|
|
// CHECK
|
// CHECK
|
if (r0 !== ('h10000-`PMEM_SIZE+'h18)) tb_error("====== DATA FLOW (EXECUTION-UNIT) - ADDRESS RANGE - READ: test 1 =====");
|
if (r0 !== ('h10000-`PMEM_SIZE+'h08)) tb_error("====== DATA FLOW (EXECUTION-UNIT) - ADDRESS RANGE - READ: test 1 =====");
|
if (mem200 !== 16'h0001) tb_error("====== DATA FLOW (EXECUTION-UNIT) - ADDRESS RANGE - READ: test 2 =====");
|
if (mem200 !== 16'h0000) tb_error("====== DATA FLOW (EXECUTION-UNIT) - ADDRESS RANGE - READ: test 2 =====");
|
dbg_i2c_rd(CPU_STAT);
|
dbg_i2c_rd(CPU_STAT);
|
if (dbg_i2c_buf !== 16'h0021) tb_error("====== DATA FLOW (EXECUTION-UNIT) - ADDRESS RANGE - READ: test 3 =====");
|
if (dbg_i2c_buf !== 16'h0021) tb_error("====== DATA FLOW (EXECUTION-UNIT) - ADDRESS RANGE - READ: test 3 =====");
|
dbg_i2c_rd(BRK1_STAT);
|
dbg_i2c_rd(BRK1_STAT);
|
if (dbg_i2c_buf !== 16'h0010) tb_error("====== DATA FLOW (EXECUTION-UNIT) - ADDRESS RANGE - READ: test 4 =====");
|
if (dbg_i2c_buf !== 16'h0010) tb_error("====== DATA FLOW (EXECUTION-UNIT) - ADDRESS RANGE - READ: test 4 =====");
|
dbg_i2c_wr(BRK1_STAT, 16'h0010);
|
dbg_i2c_wr(BRK1_STAT, 16'h0010);
|
Line 428... |
Line 428... |
// RE-RUN
|
// RE-RUN
|
dbg_i2c_wr(CPU_CTL, 16'h0002);
|
dbg_i2c_wr(CPU_CTL, 16'h0002);
|
repeat(100) @(posedge mclk);
|
repeat(100) @(posedge mclk);
|
|
|
// RE-CHECK
|
// RE-CHECK
|
if (r0 !== ('h10000-`PMEM_SIZE+'h18)) tb_error("====== INSTRUCTION FLOW (FRONTEND) - ADDRESS RANGE - READ: test 6 =====");
|
if (r0 !== ('h10000-`PMEM_SIZE+'h0C)) tb_error("====== INSTRUCTION FLOW (FRONTEND) - ADDRESS RANGE - READ: test 6 =====");
|
if (mem200 !== 16'h0002) tb_error("====== INSTRUCTION FLOW (FRONTEND) - ADDRESS RANGE - READ: test 7 =====");
|
if (mem200 !== 16'h0000) tb_error("====== INSTRUCTION FLOW (FRONTEND) - ADDRESS RANGE - READ: test 7 =====");
|
dbg_i2c_rd(CPU_STAT);
|
dbg_i2c_rd(CPU_STAT);
|
if (dbg_i2c_buf !== 16'h0021) tb_error("====== INSTRUCTION FLOW (FRONTEND) - ADDRESS RANGE - READ: test 8 =====");
|
if (dbg_i2c_buf !== 16'h0021) tb_error("====== INSTRUCTION FLOW (FRONTEND) - ADDRESS RANGE - READ: test 8 =====");
|
dbg_i2c_rd(BRK1_STAT);
|
dbg_i2c_rd(BRK1_STAT);
|
if (dbg_i2c_buf !== 16'h0010) tb_error("====== INSTRUCTION FLOW (FRONTEND) - ADDRESS RANGE - READ: test 9 =====");
|
if (dbg_i2c_buf !== 16'h0010) tb_error("====== INSTRUCTION FLOW (FRONTEND) - ADDRESS RANGE - READ: test 9 =====");
|
dbg_i2c_wr(BRK1_STAT, 16'h0010);
|
dbg_i2c_wr(BRK1_STAT, 16'h0010);
|
Line 586... |
Line 586... |
if (r0 !== ('h10000-`PMEM_SIZE+'h08)) tb_error("====== INSTRUCTION FLOW (FRONTEND) - ADDRESS RANGE - READ/WRITE: test 11 =====");
|
if (r0 !== ('h10000-`PMEM_SIZE+'h08)) tb_error("====== INSTRUCTION FLOW (FRONTEND) - ADDRESS RANGE - READ/WRITE: test 11 =====");
|
if (mem200 !== 16'h0000) tb_error("====== INSTRUCTION FLOW (FRONTEND) - ADDRESS RANGE - READ/WRITE: test 12 =====");
|
if (mem200 !== 16'h0000) tb_error("====== INSTRUCTION FLOW (FRONTEND) - ADDRESS RANGE - READ/WRITE: test 12 =====");
|
dbg_i2c_rd(CPU_STAT);
|
dbg_i2c_rd(CPU_STAT);
|
if (dbg_i2c_buf !== 16'h0021) tb_error("====== INSTRUCTION FLOW (FRONTEND) - ADDRESS RANGE - READ/WRITE: test 13 =====");
|
if (dbg_i2c_buf !== 16'h0021) tb_error("====== INSTRUCTION FLOW (FRONTEND) - ADDRESS RANGE - READ/WRITE: test 13 =====");
|
dbg_i2c_rd(BRK1_STAT);
|
dbg_i2c_rd(BRK1_STAT);
|
if (dbg_i2c_buf !== 16'h0020) tb_error("====== INSTRUCTION FLOW (FRONTEND) - ADDRESS RANGE - READ/WRITE: test 14 =====");
|
if (dbg_i2c_buf !== 16'h0030) tb_error("====== INSTRUCTION FLOW (FRONTEND) - ADDRESS RANGE - READ/WRITE: test 14 =====");
|
dbg_i2c_wr(BRK1_STAT, 16'h0020);
|
dbg_i2c_wr(BRK1_STAT, 16'h0030);
|
dbg_i2c_rd(CPU_STAT);
|
dbg_i2c_rd(CPU_STAT);
|
if (dbg_i2c_buf !== 16'h0001) tb_error("====== INSTRUCTION FLOW (FRONTEND) - ADDRESS RANGE - READ/WRITE: test 15 =====");
|
if (dbg_i2c_buf !== 16'h0001) tb_error("====== INSTRUCTION FLOW (FRONTEND) - ADDRESS RANGE - READ/WRITE: test 15 =====");
|
|
|
// RE-RUN
|
// RE-RUN
|
dbg_i2c_wr(CPU_CTL, 16'h0002);
|
dbg_i2c_wr(CPU_CTL, 16'h0002);
|
Line 601... |
Line 601... |
if (r0 !== ('h10000-`PMEM_SIZE+'h0C)) tb_error("====== INSTRUCTION FLOW (FRONTEND) - ADDRESS RANGE - READ/WRITE: test 16 =====");
|
if (r0 !== ('h10000-`PMEM_SIZE+'h0C)) tb_error("====== INSTRUCTION FLOW (FRONTEND) - ADDRESS RANGE - READ/WRITE: test 16 =====");
|
if (mem200 !== 16'h0000) tb_error("====== INSTRUCTION FLOW (FRONTEND) - ADDRESS RANGE - READ/WRITE: test 17 =====");
|
if (mem200 !== 16'h0000) tb_error("====== INSTRUCTION FLOW (FRONTEND) - ADDRESS RANGE - READ/WRITE: test 17 =====");
|
dbg_i2c_rd(CPU_STAT);
|
dbg_i2c_rd(CPU_STAT);
|
if (dbg_i2c_buf !== 16'h0021) tb_error("====== INSTRUCTION FLOW (FRONTEND) - ADDRESS RANGE - READ/WRITE: test 18 =====");
|
if (dbg_i2c_buf !== 16'h0021) tb_error("====== INSTRUCTION FLOW (FRONTEND) - ADDRESS RANGE - READ/WRITE: test 18 =====");
|
dbg_i2c_rd(BRK1_STAT);
|
dbg_i2c_rd(BRK1_STAT);
|
if (dbg_i2c_buf !== 16'h0020) tb_error("====== INSTRUCTION FLOW (FRONTEND) - ADDRESS RANGE - READ/WRITE: test 19 =====");
|
if (dbg_i2c_buf !== 16'h0030) tb_error("====== INSTRUCTION FLOW (FRONTEND) - ADDRESS RANGE - READ/WRITE: test 19 =====");
|
dbg_i2c_wr(BRK1_STAT, 16'h0020);
|
dbg_i2c_wr(BRK1_STAT, 16'h0030);
|
dbg_i2c_rd(CPU_STAT);
|
dbg_i2c_rd(CPU_STAT);
|
if (dbg_i2c_buf !== 16'h0001) tb_error("====== INSTRUCTION FLOW (FRONTEND) - ADDRESS RANGE - READ/WRITE: test 20 =====");
|
if (dbg_i2c_buf !== 16'h0001) tb_error("====== INSTRUCTION FLOW (FRONTEND) - ADDRESS RANGE - READ/WRITE: test 20 =====");
|
|
|
// RE-RUN
|
// RE-RUN
|
dbg_i2c_wr(CPU_CTL, 16'h0002);
|
dbg_i2c_wr(CPU_CTL, 16'h0002);
|
Line 631... |
Line 631... |
if (r0 !== ('h10000-`PMEM_SIZE+'h08)) tb_error("====== INSTRUCTION FLOW (FRONTEND) - ADDRESS RANGE - READ/WRITE: test 26 =====");
|
if (r0 !== ('h10000-`PMEM_SIZE+'h08)) tb_error("====== INSTRUCTION FLOW (FRONTEND) - ADDRESS RANGE - READ/WRITE: test 26 =====");
|
if (mem200 !== 16'h0001) tb_error("====== INSTRUCTION FLOW (FRONTEND) - ADDRESS RANGE - READ/WRITE: test 27 =====");
|
if (mem200 !== 16'h0001) tb_error("====== INSTRUCTION FLOW (FRONTEND) - ADDRESS RANGE - READ/WRITE: test 27 =====");
|
dbg_i2c_rd(CPU_STAT);
|
dbg_i2c_rd(CPU_STAT);
|
if (dbg_i2c_buf !== 16'h0021) tb_error("====== INSTRUCTION FLOW (FRONTEND) - ADDRESS RANGE - READ/WRITE: test 28 =====");
|
if (dbg_i2c_buf !== 16'h0021) tb_error("====== INSTRUCTION FLOW (FRONTEND) - ADDRESS RANGE - READ/WRITE: test 28 =====");
|
dbg_i2c_rd(BRK1_STAT);
|
dbg_i2c_rd(BRK1_STAT);
|
if (dbg_i2c_buf !== 16'h0020) tb_error("====== INSTRUCTION FLOW (FRONTEND) - ADDRESS RANGE - READ/WRITE: test 29 =====");
|
if (dbg_i2c_buf !== 16'h0030) tb_error("====== INSTRUCTION FLOW (FRONTEND) - ADDRESS RANGE - READ/WRITE: test 29 =====");
|
dbg_i2c_wr(BRK1_STAT, 16'h0020);
|
dbg_i2c_wr(BRK1_STAT, 16'h0030);
|
dbg_i2c_rd(CPU_STAT);
|
dbg_i2c_rd(CPU_STAT);
|
if (dbg_i2c_buf !== 16'h0001) tb_error("====== INSTRUCTION FLOW (FRONTEND) - ADDRESS RANGE - READ/WRITE: test 30 =====");
|
if (dbg_i2c_buf !== 16'h0001) tb_error("====== INSTRUCTION FLOW (FRONTEND) - ADDRESS RANGE - READ/WRITE: test 30 =====");
|
|
|
end
|
end
|
|
|