diff --git a/gl/gl_mgr.sv b/gl/gl_mgr.sv index 73f6eaa1def2b390ee7764065a4f7888fe0449f0..ee158e61105f5516938e68ffb66c6984220493f4 100644 --- a/gl/gl_mgr.sv +++ b/gl/gl_mgr.sv @@ -57,14 +57,14 @@ module gl_mgr ( // Redraw cache instance logic [19:0] rc_addr1, rc_addr2; logic rc_data_in1, rc_data_in2; - logic rc_we1, rc_we2; + logic rc_we1, rc_we2, rc_we1_san; logic rc_data_out1, rc_data_out2; gl_redraw_cache redraw_cache( .addr1 (rc_addr1), .addr2 (rc_addr2), .data_in1 (rc_data_in1), .data_in2 (rc_data_in2), - .we1 (rc_we1), + .we1 (rc_we1_san), .we2 (rc_we2), .clk (CLOCK), .data_out1(rc_data_out1), @@ -109,8 +109,11 @@ module gl_mgr ( logic [9:0] fb_PAINT_X_san, fb_PAINT_Y_san; logic [15:0] fb_PAINT_RGB16; logic fb_PAINT_READY; - assign fb_PAINT_X_san = (fb_PAINT_X>10'd639) ? 10'd639 : fb_PAINT_X; - assign fb_PAINT_Y_san = (fb_PAINT_Y>10'd479) ? 10'd479 : fb_PAINT_Y; + logic paint_invalid; + assign paint_invalid = (fb_PAINT_X>10'd639) || (fb_PAINT_Y>10'd479); + assign fb_PAINT_X_san = paint_invalid ? 10'd639 : fb_PAINT_X; + assign fb_PAINT_Y_san = paint_invalid ? 10'd479 : fb_PAINT_Y; + assign rc_we1_san = paint_invalid ? 1'b0 : rc_we1; gl_frame_buffer frame_buffer( .CLK (CLOCK), .RESET (RESET),