From c5d71f269dfdc2c16fd27b7eb88d981d569135ae Mon Sep 17 00:00:00 2001 From: morgan Date: Mon, 13 Jan 2025 16:35:34 +0800 Subject: [PATCH] sim: add pix format for roi --- sim_roi.py | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/sim_roi.py b/sim_roi.py index 3f84ee7..2d8ccbe 100644 --- a/sim_roi.py +++ b/sim_roi.py @@ -230,11 +230,20 @@ def testbench(): def testbench_fake_data(): - pix_size = 16 + # config + pix_size = 10 x_size = 7 y_size = 3 - l_size = ceil(x_size*pix_size/32) + + l_size = ceil(x_size*pix_size/32) + pix_fmt = { + 8: 0x0101, + 10: 0x0102, + 12: 0x0103, + 14: 0x0104, + 16: 0x0105, + } # frame header paks = [ {"data": C(0x7C7C7C7C, word_dw), "k" : Replicate(1, 4)}, @@ -261,8 +270,8 @@ def testbench_fake_data(): {"data": C(0x00000000, word_dw), "k" : Replicate(0, 4)}, # DsizeL[23:16] {"data": C(0x00000000, word_dw), "k" : Replicate(0, 4)}, # DsizeL[15:8] {"data": Replicate(C(l_size, char_width), 4), "k" : Replicate(0, 4)}, # DsizeL[7:0] - {"data": C(0x01010101, word_dw), "k" : Replicate(0, 4)}, - {"data": C(0x01010101, word_dw), "k" : Replicate(0, 4)}, + {"data": Replicate(C(pix_fmt[pix_size] >> 8, char_width), 4), "k" : Replicate(0, 4)}, # PixelF[15:8] + {"data": Replicate(C(pix_fmt[pix_size] & 0xFF, char_width), 4), "k" : Replicate(0, 4)}, # PixelF[7:0] {"data": C(0x00000000, word_dw), "k" : Replicate(0, 4)}, {"data": C(0x00000000, word_dw), "k" : Replicate(0, 4)}, {"data": C(0x00000000, word_dw), "k" : Replicate(0, 4)}, @@ -292,7 +301,8 @@ def testbench_fake_data(): serialized = (packed & (0xFFFF_FFFF << i*word_dw)) >> i*word_dw print(f"{serialized:08X}") paks.append({"data": C(serialized, word_dw), "k" : Replicate(0, 4)}) - paks.append({"data": C(0xCB5DCDD6, word_dw), "k" : Replicate(0, 4), "eop": 0}) # fake crc + + paks.append({"data": C(0xCB5DCDD6, word_dw), "k" : Replicate(0, 4), "eop": 0}) # fake crc yield from packet_sim(paks)