From 7912cc1e4a372d353d2b857a185110ea17af9696 Mon Sep 17 00:00:00 2001 From: shylie Date: Thu, 24 Apr 2025 21:20:25 -0400 Subject: [PATCH] Fix dvi-dynamic example --- dvi-dynamic/rtl/source/impl_1/impl_1.pdc | 16 ++++++++-------- dvi-dynamic/rtl/source/impl_1/top.sv | 2 +- dvi-dynamic/src/main.cpp | 16 ++++------------ 3 files changed, 13 insertions(+), 21 deletions(-) diff --git a/dvi-dynamic/rtl/source/impl_1/impl_1.pdc b/dvi-dynamic/rtl/source/impl_1/impl_1.pdc index cd356ce..bd1e29a 100644 --- a/dvi-dynamic/rtl/source/impl_1/impl_1.pdc +++ b/dvi-dynamic/rtl/source/impl_1/impl_1.pdc @@ -4,11 +4,11 @@ ldc_set_location -site 39 [get_ports {led_g}] ldc_set_location -site 40 [get_ports {led_b}] ldc_set_location -site 41 [get_ports {led_r}] -ldc_set_location -site 27 [get_ports {data[0]}] -ldc_set_location -site 25 [get_ports {data[1]}] -ldc_set_location -site 21 [get_ports {data[2]}] -ldc_set_location -site 19 [get_ports {data[3]}] -ldc_set_location -site 26 [get_ports {data[4]}] -ldc_set_location -site 23 [get_ports {data[5]}] -ldc_set_location -site 20 [get_ports {data[6]}] -ldc_set_location -site 18 [get_ports {data[7]}] \ No newline at end of file +ldc_set_location -site 19 [get_ports {data[0]}] +ldc_set_location -site 26 [get_ports {data[1]}] +ldc_set_location -site 23 [get_ports {data[2]}] +ldc_set_location -site 21 [get_ports {data[3]}] +ldc_set_location -site 18 [get_ports {data[4]}] +ldc_set_location -site 9 [get_ports {data[5]}] +ldc_set_location -site 11 [get_ports {data[6]}] +ldc_set_location -site 25 [get_ports {data[7]}] \ No newline at end of file diff --git a/dvi-dynamic/rtl/source/impl_1/top.sv b/dvi-dynamic/rtl/source/impl_1/top.sv index 1d5617d..d86d779 100644 --- a/dvi-dynamic/rtl/source/impl_1/top.sv +++ b/dvi-dynamic/rtl/source/impl_1/top.sv @@ -19,6 +19,6 @@ assign led_r = 1'b1; assign led_g = counter[N]; assign led_b = 1'b1; -assign data = '0; +assign data = counter[N:N-8]; endmodule \ No newline at end of file diff --git a/dvi-dynamic/src/main.cpp b/dvi-dynamic/src/main.cpp index 7299eba..e028ec6 100644 --- a/dvi-dynamic/src/main.cpp +++ b/dvi-dynamic/src/main.cpp @@ -171,25 +171,17 @@ void dma_irq1_handler() int main(void) { - ice_led_init(); - - sleep_ms(1000); + ice_fpga_init(FPGA_DATA, 48); + ice_fpga_start(FPGA_DATA); ice_cram_open(FPGA_DATA); ice_cram_write(mandelbrot_bin_data, mandelbrot_bin_size); ice_cram_close(); - ice_fpga_init(FPGA_DATA, 16); - - for (int i = 0; i < FRAMEBUFFER_SIZE; i++) - { - FRAMEBUFFER[i] = rand(); - } - const PIO pio = pio0; const uint offset = pio_add_program(pio, &fpga_program); const uint sm = pio_claim_unused_sm(pio, true); - fpga_program_init(pio, sm, offset, 0); + fpga_program_init(pio, sm, offset, 23); { dma_channel_config c = dma_channel_get_default_config(DMACH_FBPI); channel_config_set_read_increment(&c, false); @@ -312,6 +304,6 @@ int main(void) while (true) { - __wfi(); + __wfi(); } }