Line 86... |
Line 86... |
lut_ram_dout_i, // LUT-RAM data output
|
lut_ram_dout_i, // LUT-RAM data output
|
`endif
|
`endif
|
vid_ram_dout_i // Video-RAM data output
|
vid_ram_dout_i // Video-RAM data output
|
);
|
);
|
|
|
|
// PARAMETERs
|
|
//============
|
|
|
|
parameter [14:0] BASE_ADDR = 15'h0200; // Register base address
|
|
// - 7 LSBs must stay cleared: 0x0080, 0x0100,
|
|
// 0x0180, 0x0200,
|
|
// 0x0280, ...
|
// OUTPUTs
|
// OUTPUTs
|
//=========
|
//=========
|
output irq_gfx_o; // Graphic Controller interrupt
|
output irq_gfx_o; // Graphic Controller interrupt
|
|
|
output lt24_cs_n_o; // LT24 Chip select (Active low)
|
output lt24_cs_n_o; // LT24 Chip select (Active low)
|
Line 191... |
Line 198... |
wire refresh_active;
|
wire refresh_active;
|
wire [15:0] refresh_data;
|
wire [15:0] refresh_data;
|
wire refresh_data_ready;
|
wire refresh_data_ready;
|
wire refresh_data_request;
|
wire refresh_data_request;
|
wire [`APIX_MSB:0] refresh_frame_addr;
|
wire [`APIX_MSB:0] refresh_frame_addr;
|
wire [1:0] refresh_lut_select;
|
wire [2:0] hw_lut_palette_sel;
|
|
wire [3:0] hw_lut_bgcolor;
|
|
wire [3:0] hw_lut_fgcolor;
|
|
wire sw_lut_enable;
|
|
wire sw_lut_bank_select;
|
|
|
wire gpu_cmd_done_evt;
|
wire gpu_cmd_done_evt;
|
wire gpu_cmd_error_evt;
|
wire gpu_cmd_error_evt;
|
wire gpu_dma_busy;
|
wire gpu_dma_busy;
|
wire gpu_get_data;
|
wire gpu_get_data;
|
Line 206... |
Line 217... |
|
|
//============================================================================
|
//============================================================================
|
// 2) REGISTERS
|
// 2) REGISTERS
|
//============================================================================
|
//============================================================================
|
|
|
ogfx_reg ogfx_reg_inst (
|
ogfx_reg #(.BASE_ADDR(BASE_ADDR)) ogfx_reg_inst (
|
|
|
// OUTPUTs
|
// OUTPUTs
|
.irq_gfx_o ( irq_gfx_o ), // Graphic Controller interrupt
|
.irq_gfx_o ( irq_gfx_o ), // Graphic Controller interrupt
|
|
|
.gpu_data_o ( gpu_data ), // GPU data
|
.gpu_data_o ( gpu_data ), // GPU data
|
Line 241... |
Line 252... |
.gfx_mode_o ( gfx_mode ), // Video mode (1xx:16bpp / 011:8bpp / 010:4bpp / 001:2bpp / 000:1bpp)
|
.gfx_mode_o ( gfx_mode ), // Video mode (1xx:16bpp / 011:8bpp / 010:4bpp / 001:2bpp / 000:1bpp)
|
|
|
.per_dout_o ( per_dout_o ), // Peripheral data output
|
.per_dout_o ( per_dout_o ), // Peripheral data output
|
|
|
.refresh_frame_addr_o ( refresh_frame_addr ), // Refresh frame base address
|
.refresh_frame_addr_o ( refresh_frame_addr ), // Refresh frame base address
|
.refresh_lut_select_o ( refresh_lut_select ), // Refresh LUT bank selection
|
|
|
.hw_lut_palette_sel_o ( hw_lut_palette_sel ), // Hardware LUT palette configuration
|
|
.hw_lut_bgcolor_o ( hw_lut_bgcolor ), // Hardware LUT background-color selection
|
|
.hw_lut_fgcolor_o ( hw_lut_fgcolor ), // Hardware LUT foreground-color selection
|
|
.sw_lut_enable_o ( sw_lut_enable ), // Refresh LUT-RAM enable
|
|
.sw_lut_bank_select_o ( sw_lut_bank_select ), // Refresh LUT-RAM bank selection
|
|
|
`ifdef WITH_PROGRAMMABLE_LUT
|
`ifdef WITH_PROGRAMMABLE_LUT
|
.lut_ram_addr_o ( lut_ram_sw_addr ), // LUT-RAM address
|
.lut_ram_addr_o ( lut_ram_sw_addr ), // LUT-RAM address
|
.lut_ram_din_o ( lut_ram_sw_din ), // LUT-RAM data
|
.lut_ram_din_o ( lut_ram_sw_din ), // LUT-RAM data
|
.lut_ram_wen_o ( lut_ram_sw_wen ), // LUT-RAM write strobe (active low)
|
.lut_ram_wen_o ( lut_ram_sw_wen ), // LUT-RAM write strobe (active low)
|
Line 403... |
Line 419... |
.vid_ram_dout_rdy_nxt_i ( vid_ram_refr_dout_rdy_nxt ), // Video-RAM data output ready during next cycle
|
.vid_ram_dout_rdy_nxt_i ( vid_ram_refr_dout_rdy_nxt ), // Video-RAM data output ready during next cycle
|
|
|
.refresh_active_i ( refresh_active ), // Display refresh on going
|
.refresh_active_i ( refresh_active ), // Display refresh on going
|
.refresh_data_request_i ( refresh_data_request ), // Display refresh new data request
|
.refresh_data_request_i ( refresh_data_request ), // Display refresh new data request
|
.refresh_frame_base_addr_i ( refresh_frame_addr ), // Refresh frame base address
|
.refresh_frame_base_addr_i ( refresh_frame_addr ), // Refresh frame base address
|
.refresh_lut_select_i ( refresh_lut_select ) // Refresh LUT bank selection
|
|
|
.hw_lut_palette_sel_i ( hw_lut_palette_sel ), // Hardware LUT palette configuration
|
|
.hw_lut_bgcolor_i ( hw_lut_bgcolor ), // Hardware LUT background-color selection
|
|
.hw_lut_fgcolor_i ( hw_lut_fgcolor ), // Hardware LUT foreground-color selection
|
|
.sw_lut_enable_i ( sw_lut_enable ), // Refresh LUT-RAM enable
|
|
.sw_lut_bank_select_i ( sw_lut_bank_select ) // Refresh LUT-RAM bank selection
|
);
|
);
|
|
|
//============================================================================
|
//============================================================================
|
// 6) ARBITER FOR VIDEO AND LUT MEMORIES
|
// 6) ARBITER FOR VIDEO AND LUT MEMORIES
|
//============================================================================
|
//============================================================================
|