finally fixed multiple drivers problem
This commit is contained in:
@@ -1,73 +1,47 @@
|
||||
-- WARNING: Do NOT edit the input and output ports in this file in a text
|
||||
-- editor if you plan to continue editing the block that represents it in
|
||||
-- the Block Editor! File corruption is VERY likely to occur.
|
||||
|
||||
-- Copyright (C) 1991-2008 Altera Corporation
|
||||
-- Your use of Altera Corporation's design tools, logic functions
|
||||
-- and other software and tools, and its AMPP partner logic
|
||||
-- functions, and any output files from any of the foregoing
|
||||
-- (including device programming or simulation files), and any
|
||||
-- associated documentation or information are expressly subject
|
||||
-- to the terms and conditions of the Altera Program License
|
||||
-- Subscription Agreement, Altera MegaCore Function License
|
||||
-- Agreement, or other applicable license agreement, including,
|
||||
-- without limitation, that your use is for the sole purpose of
|
||||
-- programming logic devices manufactured by Altera and sold by
|
||||
-- Altera or its authorized distributors. Please refer to the
|
||||
-- applicable agreement for further details.
|
||||
|
||||
|
||||
-- Generated by Quartus II Version 8.1 (Build Build 163 10/28/2008)
|
||||
-- Created on Fri Oct 16 15:40:59 2009
|
||||
|
||||
library ieee;
|
||||
use ieee.std_logic_1164.all;
|
||||
use ieee.numeric_std.all;
|
||||
use ieee.std_logic_1164.all;
|
||||
use ieee.numeric_std.all;
|
||||
|
||||
entity blitter is
|
||||
-- {{ALTERA_IO_BEGIN}} DO NOT REMOVE THIS LINE!
|
||||
PORT
|
||||
port
|
||||
(
|
||||
nRSTO : IN std_logic;
|
||||
MAIN_CLK : IN std_logic;
|
||||
FB_ALE : IN std_logic;
|
||||
nFB_WR : IN std_logic;
|
||||
nFB_OE : IN std_logic;
|
||||
FB_SIZE0 : IN std_logic;
|
||||
FB_SIZE1 : IN std_logic;
|
||||
VIDEO_RAM_CTR : IN std_logic_vector(15 DOWNTO 0);
|
||||
BLITTER_ON : IN std_logic;
|
||||
FB_ADR : IN std_logic_vector(31 DOWNTO 0);
|
||||
nFB_CS1 : IN std_logic;
|
||||
nFB_CS2 : IN std_logic;
|
||||
nFB_CS3 : IN std_logic;
|
||||
DDRCLK0 : IN std_logic;
|
||||
BLITTER_DIN : IN std_logic_vector(127 DOWNTO 0);
|
||||
BLITTER_DACK : IN std_logic_vector(4 DOWNTO 0);
|
||||
SR_BLITTER_DACK : IN std_logic;
|
||||
BLITTER_RUN : OUT std_logic;
|
||||
BLITTER_DOUT : OUT std_logic_vector(127 DOWNTO 0);
|
||||
BLITTER_ADR : OUT std_logic_vector(31 DOWNTO 0);
|
||||
BLITTER_SIG : OUT std_logic;
|
||||
BLITTER_WR : OUT std_logic;
|
||||
blitter_ta : OUT std_logic;
|
||||
fb_ad_in : in std_logic_vector(31 DOWNTO 0);
|
||||
nRSTO : in std_logic;
|
||||
MAIN_CLK : in std_logic;
|
||||
FB_ALE : in std_logic;
|
||||
nFB_WR : in std_logic;
|
||||
nFB_OE : in std_logic;
|
||||
FB_SIZE0 : in std_logic;
|
||||
FB_SIZE1 : in std_logic;
|
||||
VIDEO_RAM_CTR : in std_logic_vector(15 downto 0);
|
||||
BLITTER_ON : in std_logic;
|
||||
FB_ADR : in std_logic_vector(31 downto 0);
|
||||
nFB_CS1 : in std_logic;
|
||||
nFB_CS2 : in std_logic;
|
||||
nFB_CS3 : in std_logic;
|
||||
DDRCLK0 : in std_logic;
|
||||
BLITTER_DIN : in std_logic_vector(127 downto 0);
|
||||
BLITTER_DACK : in std_logic_vector(4 downto 0);
|
||||
SR_BLITTER_DACK : in std_logic;
|
||||
blitter_run : out std_logic;
|
||||
blitter_dout : out std_logic_vector(127 downto 0);
|
||||
blitter_adr : out std_logic_vector(31 downto 0);
|
||||
blitter_sig : out std_logic;
|
||||
blitter_wr : out std_logic;
|
||||
blitter_ta : out std_logic;
|
||||
fb_ad_in : in std_logic_vector(31 downto 0);
|
||||
fb_ad_out : out std_logic_vector(31 downto 0)
|
||||
);
|
||||
-- {{ALTERA_IO_END}} DO NOT REMOVE THIS LINE!
|
||||
|
||||
END BLITTER;
|
||||
end BLITTER;
|
||||
|
||||
|
||||
ARCHITECTURE rtl OF blitter IS
|
||||
architecture rtl of blitter is
|
||||
|
||||
|
||||
BEGIN
|
||||
BLITTER_RUN <= '0';
|
||||
BLITTER_DOUT <= x"FEDCBA9876543210F0F0F0F0F0F0F0F0";
|
||||
BLITTER_ADR <= x"76543210";
|
||||
BLITTER_SIG <= '0';
|
||||
BLITTER_WR <= '0';
|
||||
begin
|
||||
blitter_run <= '0';
|
||||
blitter_dout <= x"FEDCBA9876543210F0F0F0F0F0F0F0F0";
|
||||
blitter_adr <= x"76543210";
|
||||
blitter_sig <= '0';
|
||||
blitter_wr <= '0';
|
||||
blitter_ta <= '0';
|
||||
|
||||
END rtl;
|
||||
fb_ad_out <= (others => 'Z');
|
||||
end rtl;
|
||||
|
||||
@@ -1384,17 +1384,25 @@ begin
|
||||
"00000" & video_act_adr(26 downto 24) when video_cnt_h and not nfb_oe else
|
||||
(others => 'Z');
|
||||
|
||||
u0_data <= (sizeIt(VIDEO_BASE_L,8) and VIDEO_BASE_L_D_q) or
|
||||
(sizeIt(VIDEO_BASE_M,8) and VIDEO_BASE_M_D_q) or
|
||||
(sizeIt(VIDEO_BASE_H,8) and VIDEO_BASE_H_D_q) or
|
||||
(sizeIt(VIDEO_CNT_L,8) and VIDEO_ACT_ADR(7 downto 0)) or
|
||||
(sizeIt(VIDEO_CNT_M,8) and VIDEO_ACT_ADR(15 downto 8)) or
|
||||
(sizeIt(VIDEO_CNT_H,8) and VIDEO_ACT_ADR(23 downto 16));
|
||||
u0_enabledt <= (VIDEO_BASE_L or VIDEO_BASE_M or VIDEO_BASE_H or VIDEO_CNT_L
|
||||
or VIDEO_CNT_M or VIDEO_CNT_H) and (not nFB_OE);
|
||||
fb_ad_out(23 downto 16) <= u0_tridata when u0_enabledt;
|
||||
|
||||
|
||||
-- u0_data <= (sizeIt(VIDEO_BASE_L,8) and VIDEO_BASE_L_D_q) or
|
||||
-- (sizeIt(VIDEO_BASE_M,8) and VIDEO_BASE_M_D_q) or
|
||||
-- (sizeIt(VIDEO_BASE_H,8) and VIDEO_BASE_H_D_q) or
|
||||
-- (sizeIt(VIDEO_CNT_L,8) and VIDEO_ACT_ADR(7 downto 0)) or
|
||||
-- (sizeIt(VIDEO_CNT_M,8) and VIDEO_ACT_ADR(15 downto 8)) or
|
||||
-- (sizeIt(VIDEO_CNT_H,8) and VIDEO_ACT_ADR(23 downto 16));
|
||||
-- u0_enabledt <= (VIDEO_BASE_L or VIDEO_BASE_M or VIDEO_BASE_H or VIDEO_CNT_L
|
||||
-- or VIDEO_CNT_M or VIDEO_CNT_H) and (not nFB_OE);
|
||||
-- fb_ad_out(23 downto 16) <= u0_tridata when u0_enabledt else (others => 'Z');
|
||||
|
||||
fb_ad_out(23 downto 16) <= video_base_l_d_q when video_base_l and not nfb_oe else
|
||||
video_base_m_d_q when video_base_m and not nfb_oe else
|
||||
video_base_h_d_q when video_base_h and not nfb_oe else
|
||||
video_act_adr(7 downto 0) when video_cnt_l and not nfb_oe else
|
||||
video_act_adr(15 downto 8) when video_cnt_m and not nfb_oe else
|
||||
video_act_adr(23 downto 16) when video_cnt_h and not nfb_oe else
|
||||
(others => 'Z');
|
||||
fb_ad_out(15 downto 0) <= (others => 'Z');
|
||||
|
||||
-- Assignments added to explicitly combine the
|
||||
-- effects of multiple drivers in the source
|
||||
FIFO_BANK_OK_d <= FIFO_BANK_OK_d_1 or FIFO_BANK_OK_d_2;
|
||||
|
||||
926
Video/video.vhd
926
Video/video.vhd
File diff suppressed because it is too large
Load Diff
@@ -1131,7 +1131,7 @@ begin
|
||||
-- 10 VGA
|
||||
-- 11 TV
|
||||
-- $8006/2
|
||||
sys_ctr_cs <= '1' when nFB_CS1 = '0' and f_addr_cmp_w(fb_adR, 20x"f8006") = '1';
|
||||
sys_ctr_cs <= '1' when nFB_CS1 = '0' and f_addr_cmp_w(fb_adR, 20x"f8006") = '1' else '0';
|
||||
-- fb_adR(19 downto 1) = std_logic_vector'(20x"f8006")(19 downto 1) else '0';
|
||||
|
||||
-- sys_ctr_CS <= to_std_logic(((not nFB_CS1) = '1') and fb_adR(19 downto 1) = "1111100000000000011");
|
||||
@@ -1284,32 +1284,32 @@ begin
|
||||
-- (sizeIt(VIDEO_PLL_RECONFIG_CS,16) and std_logic_vector'(vr_busy & "0000" & vr_wr_q & vr_rd & video_reconfig_q & "11111010"));
|
||||
|
||||
fb_ad_out(31 downto 16) <= "000000" & st_shift_mode_q & "00000000" when st_shift_mode_cs = '1' else
|
||||
"100000000" & sys_ctr_q(6 downto 4) & (not blitter_run) & sys_ctr_q(2 downto 0) when sys_ctr_cs = '1' else
|
||||
lwd_q when lof_cs = '1' and lwd_cs = '1' else
|
||||
"0000" & hbe_q when hbe_cs = '1' else
|
||||
"0000" & hdb_q when hdb_cs = '1' else
|
||||
"0000" & hde_q when hde_cs = '1' else
|
||||
"0000" & hbb_q when hbb_cs = '1' else
|
||||
"0000" & hss_q when hss_cs = '1' else
|
||||
"0000" & hht_q when hht_cs = '1' else
|
||||
"00000" & vbe_q when vbe_cs = '1' else
|
||||
"00000" & vdb_q when vdb_cs = '1' else
|
||||
"00000" & vde_q when vde_cs = '1' else
|
||||
"00000" & vbb_q when vbb_cs = '1' else
|
||||
"00000" & vss_q when vss_cs = '1' else
|
||||
"00000" & vft_q when vft_cs = '1' else
|
||||
"0000000" & vco_q when vco_cs = '1' else
|
||||
"000000000000" & vcntrl_q when vcntrl_cs = '1' else
|
||||
acp_vctr_q(31 downto 16) when acp_vctr_cs = '1' else
|
||||
atari_hh_q(31 downto 16) when atari_hh_cs = '1' else
|
||||
atari_vh_q(31 downto 16) when atari_vh_cs = '1' else
|
||||
atari_hl_q(31 downto 16) when atari_hl_cs = '1' else
|
||||
atari_vl_q(31 downto 16) when atari_vl_cs = '1' else
|
||||
"00000000" & border_color_q(23 downto 16) when border_color_cs = '1' else
|
||||
"0000000" & vr_dout_q when video_pll_config_cs = '1' else
|
||||
vr_busy & "0000" & vr_wr_q & vr_rd & video_reconfig_q & "11111010" when video_pll_reconfig_cs = '1' else
|
||||
(others => 'Z');
|
||||
|
||||
"100000000" & sys_ctr_q(6 downto 4) & (not blitter_run) & sys_ctr_q(2 downto 0) when sys_ctr_cs = '1' else
|
||||
lwd_q when lof_cs = '1' and lwd_cs = '1' else
|
||||
"0000" & hbe_q when hbe_cs = '1' else
|
||||
"0000" & hdb_q when hdb_cs = '1' else
|
||||
"0000" & hde_q when hde_cs = '1' else
|
||||
"0000" & hbb_q when hbb_cs = '1' else
|
||||
"0000" & hss_q when hss_cs = '1' else
|
||||
"0000" & hht_q when hht_cs = '1' else
|
||||
"00000" & vbe_q when vbe_cs = '1' else
|
||||
"00000" & vdb_q when vdb_cs = '1' else
|
||||
"00000" & vde_q when vde_cs = '1' else
|
||||
"00000" & vbb_q when vbb_cs = '1' else
|
||||
"00000" & vss_q when vss_cs = '1' else
|
||||
"00000" & vft_q when vft_cs = '1' else
|
||||
"0000000" & vco_q when vco_cs = '1' else
|
||||
"000000000000" & vcntrl_q when vcntrl_cs = '1' else
|
||||
acp_vctr_q(31 downto 16) when acp_vctr_cs = '1' else
|
||||
atari_hh_q(31 downto 16) when atari_hh_cs = '1' else
|
||||
atari_vh_q(31 downto 16) when atari_vh_cs = '1' else
|
||||
atari_hl_q(31 downto 16) when atari_hl_cs = '1' else
|
||||
atari_vl_q(31 downto 16) when atari_vl_cs = '1' else
|
||||
"00000000" & border_color_q(23 downto 16) when border_color_cs = '1' else
|
||||
"0000000" & vr_dout_q when video_pll_config_cs = '1' else
|
||||
vr_busy & "0000" & vr_wr_q & vr_rd & video_reconfig_q & "11111010" when video_pll_reconfig_cs = '1' else
|
||||
(others => 'Z');
|
||||
|
||||
-- u0_enabledt <= (st_shift_mode_CS or falcon_shift_mode_CS or acp_vctr_CS or border_color_CS or sys_ctr_CS or lof_CS or lwd_CS or HBE_CS or HDB_CS or
|
||||
-- hde_CS or HBB_CS or HSS_CS or HHT_CS or atari_hh_CS or atari_vh_CS or atari_hl_CS or ATARI_VL_CS or VIDEO_PLL_CONFIG_CS or
|
||||
-- VIDEO_PLL_RECONFIG_CS or VBE_CS or VDB_CS or VDE_CS or VBB_CS or VSS_CS or VFT_CS or VCO_CS or vcntrl_cs) and (not nFB_OE);
|
||||
@@ -1326,16 +1326,38 @@ begin
|
||||
-- fb_ad(15 downto 0) <= u1_tridata;
|
||||
|
||||
fb_ad_out(15 downto 0) <= acp_vctr_q(15 downto 0) when acp_vctr_cs = '1' else
|
||||
atari_hh_q(15 downto 0) when atari_hh_cs = '1' else
|
||||
atari_vh_q(15 downto 0) when atari_vh_cs = '1' else
|
||||
atari_hl_q(15 downto 0) when atari_hl_cs = '1' else
|
||||
atari_vl_q(15 downto 0) when atari_vl_cs = '1' else
|
||||
border_color_q(15 downto 0) when border_color_cs = '1' else
|
||||
(others => 'Z');
|
||||
atari_hh_q(15 downto 0) when atari_hh_cs = '1' else
|
||||
atari_vh_q(15 downto 0) when atari_vh_cs = '1' else
|
||||
atari_hl_q(15 downto 0) when atari_hl_cs = '1' else
|
||||
atari_vl_q(15 downto 0) when atari_vl_cs = '1' else
|
||||
border_color_q(15 downto 0) when border_color_cs = '1' else
|
||||
(others => 'Z');
|
||||
|
||||
video_mod_ta <= clut_ta_q or st_shift_mode_CS or falcon_shift_mode_CS or acp_vctr_CS or sys_ctr_CS or lof_CS or lwd_CS or HBE_CS or HDB_CS or
|
||||
hde_CS or HBB_CS or HSS_CS or HHT_CS or atari_hh_CS or atari_vh_CS or atari_hl_CS or ATARI_VL_CS or VBE_CS or VDB_CS or VDE_CS or VBB_CS or
|
||||
VSS_CS or VFT_CS or VCO_CS or vcntrl_cs;
|
||||
video_mod_ta <= clut_ta_q or
|
||||
st_shift_mode_cs or
|
||||
falcon_shift_mode_cs or
|
||||
acp_vctr_cs or
|
||||
sys_ctr_cs or
|
||||
lof_cs or
|
||||
lwd_cs or
|
||||
hbe_cs or
|
||||
hdb_cs or
|
||||
hde_cs or
|
||||
hbb_cs or
|
||||
hss_cs or
|
||||
hht_cs or
|
||||
atari_hh_cs or
|
||||
atari_vh_cs or
|
||||
atari_hl_cs or
|
||||
atari_vl_cs or
|
||||
vbe_cs or
|
||||
vdb_cs or
|
||||
vde_cs or
|
||||
vbb_cs or
|
||||
vss_cs or
|
||||
vft_cs or
|
||||
vco_cs or
|
||||
vcntrl_cs;
|
||||
|
||||
-- VIDEO AUSGABE SETZEN
|
||||
CLK17M_d <= not CLK17M_q;
|
||||
|
||||
Reference in New Issue
Block a user