From 3afc09c07d8ff4f28764453c67eeec417ea0e67b Mon Sep 17 00:00:00 2001 From: David Banks Date: Sat, 4 Jul 2015 16:51:08 +0100 Subject: [PATCH] Added a jumper to select between 6809 and 6809E clocking; increased breakpoints to 8; version now 0.52 Change-Id: If17d2d0ff336fde2aafd9613eba47bbe7392ad8c --- MC6809CpuMon.bit | Bin 0 -> 169331 bytes firmware/AtomBusMon.c | 4 +- src/MC6809ECpuMon.ucf | 22 ++++--- src/MC6809ECpuMon.vhd | 144 +++++++++++++++++++++++++++++++----------- 4 files changed, 124 insertions(+), 46 deletions(-) create mode 100644 MC6809CpuMon.bit diff --git a/MC6809CpuMon.bit b/MC6809CpuMon.bit new file mode 100644 index 0000000000000000000000000000000000000000..d222eae45d99933b1f4c80069b2de5082508c76b GIT binary patch literal 169331 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 A#sB~S literal 0 HcmV?d00001 diff --git a/firmware/AtomBusMon.c b/firmware/AtomBusMon.c index 5b14470..44f774e 100644 --- a/firmware/AtomBusMon.c +++ b/firmware/AtomBusMon.c @@ -10,7 +10,7 @@ * VERSION and NAME are used in the start-up message ********************************************************/ -#define VERSION "0.50" +#define VERSION "0.52" #if (CPU == Z80) #define NAME "ICE-T80" @@ -282,7 +282,7 @@ void (*cmdFuncs[NUM_CMDS])(char *params) = { ********************************************************/ // The space available for address comparators depends on the size of the CPU core -#if ((CPU == Z80) || (CPU == 6809)) +#if (CPU == Z80) #define MAXBKPTS 4 #else #define MAXBKPTS 8 diff --git a/src/MC6809ECpuMon.ucf b/src/MC6809ECpuMon.ucf index 9ce23f6..b1e64d5 100644 --- a/src/MC6809ECpuMon.ucf +++ b/src/MC6809ECpuMon.ucf @@ -35,15 +35,21 @@ NET "Data<2>" LOC="P79" | IOSTANDARD = LVCMOS33 | SLEW = SLOW | DRIVE = 4 ; # NET "Data<1>" LOC="P85" | IOSTANDARD = LVCMOS33 | SLEW = SLOW | DRIVE = 4 ; # 6809 pin 30 NET "Data<0>" LOC="P92" | IOSTANDARD = LVCMOS33 | SLEW = SLOW | DRIVE = 4 ; # 6809 pin 31 NET "R_W_n" LOC="P98" | IOSTANDARD = LVCMOS33 | SLEW = SLOW | DRIVE = 4 ; # 6809 pin 32 -NET "BUSY" LOC="P3" | IOSTANDARD = LVCMOS33 | SLEW = SLOW | DRIVE = 4 ; # 6809 pin 33 -NET "E" LOC="P2" | IOSTANDARD = LVCMOS33 ; # 6809 pin 34 -NET "Q" LOC="P4" | IOSTANDARD = LVCMOS33 ; # 6809 pin 35 -NET "AVMA" LOC="P5" | IOSTANDARD = LVCMOS33 ; # 6809 pin 36 +NET "PIN33" LOC="P3" | IOSTANDARD = LVCMOS33 | SLEW = SLOW | DRIVE = 4 ; # 6809 pin 33 +NET "PIN34" LOC="P2" | IOSTANDARD = LVCMOS33 | SLEW = SLOW | DRIVE = 4 ; # 6809 pin 34 +NET "PIN35" LOC="P4" | IOSTANDARD = LVCMOS33 | SLEW = SLOW | DRIVE = 4 ; # 6809 pin 35 +NET "PIN36" LOC="P5" | IOSTANDARD = LVCMOS33 | SLEW = SLOW | DRIVE = 4 ; # 6809 pin 36 NET "RES_n" LOC="P90" | IOSTANDARD = LVCMOS33 ; # 6809 pin 37 -NET "LIC" LOC="P9" | IOSTANDARD = LVCMOS33 | SLEW = SLOW | DRIVE = 4 ; # 6809 pin 38 -NET "TSC" LOC="P10" | IOSTANDARD = LVCMOS33 ; # 6809 pin 39 +NET "PIN38" LOC="P9" | IOSTANDARD = LVCMOS33 | SLEW = SLOW | DRIVE = 4 ; # 6809 pin 38 +NET "PIN39" LOC="P10" | IOSTANDARD = LVCMOS33 ; # 6809 pin 39 NET "HALT_n" LOC="P11" | IOSTANDARD = LVCMOS33 ; # 6809 pin 40 +# A jumper to enable 6809E mode +NET "EMode_n" LOC="P91" | IOSTANDARD = LVCMOS33 ; + +# A clock generated from the GODIL's 49.152MHz clock +NET "clock_test" LOC="P12" | IOSTANDARD = LVCMOS33 | SLEW = SLOW | DRIVE = 4 ; + NET "led3" LOC="P43" | IOSTANDARD = LVCMOS33 ; # Red LED (near SW1) NET "led6" LOC="P25" | IOSTANDARD = LVCMOS33 ; # Red LED (just left of FPGA) NET "led8" LOC="P47" | IOSTANDARD = LVCMOS33 ; # Green LED (near SW1) @@ -67,8 +73,8 @@ NET "trig<1>" LOC="P63" | IOSTANDARD = LVCMOS33 ; NET "test1" LOC="P65" | IOSTANDARD = LVCMOS33 | SLEW = SLOW | DRIVE = 4 ; NET "test2" LOC="P66" | IOSTANDARD = LVCMOS33 | SLEW = SLOW | DRIVE = 4 ; -NET "test3" LOC="P12" | IOSTANDARD = LVCMOS33 | SLEW = SLOW | DRIVE = 4 ; -NET "test4" LOC="P91" | IOSTANDARD = LVCMOS33 | SLEW = SLOW | DRIVE = 4 ; +# NET "test3" LOC="P12" | IOSTANDARD = LVCMOS33 | SLEW = SLOW | DRIVE = 4 ; +# NET "test4" LOC="P91" | IOSTANDARD = LVCMOS33 | SLEW = SLOW | DRIVE = 4 ; # NET "" LOC="P48" | IOSTANDARD = LVCMOS33 ; # connector pin E2 diff --git a/src/MC6809ECpuMon.vhd b/src/MC6809ECpuMon.vhd index 04e6f2f..14c0d8b 100644 --- a/src/MC6809ECpuMon.vhd +++ b/src/MC6809ECpuMon.vhd @@ -27,22 +27,36 @@ entity MC6809ECpuMon is ); port ( clock49 : in std_logic; + + -- A locally generated test clock + -- 1.8457 MHz in E Mode (6809E) so it can drive E (PIN34) + -- 7.3728 MHz in Normal Mode (6809) so it can drive XTAL (PIN39) + clock_test : out std_logic; + + -- 6809/6809E mode selection + -- Jumper is between pins B1 and D1 + -- Jumper off is 6809 mode, where a 4x clock should be fed into XTAL (PIN39) + -- Jumper on is 6909E mode, where a 1x clock should be fed into E (PIN34) + EMode_n : in std_logic; --6809 Signals - E : in std_logic; - Q : in std_logic; + PIN33 : inout std_logic; + PIN34 : inout std_logic; + PIN35 : inout std_logic; + PIN36 : inout std_logic; + PIN37 : inout std_logic; + PIN38 : inout std_logic; + PIN39 : in std_logic; + + -- Signals common to both 6809 and 6809E RES_n : inout std_logic; NMI_n : in std_logic; IRQ_n : in std_logic; FIRQ_n : in std_logic; HALT_n : in std_logic; - TSC : in std_logic; BS : out std_logic; BA : out std_logic; - BUSY : out std_logic; R_W_n : out std_logic; - LIC : out std_logic; - AVMA : out std_logic; Addr : out std_logic_vector(15 downto 0); Data : inout std_logic_vector(7 downto 0); @@ -70,10 +84,8 @@ entity MC6809ECpuMon is -- Debugging signals test1 : out std_logic; - test2 : out std_logic; - test3 : out std_logic; - test4 : out std_logic - + test2 : out std_logic + ); end MC6809ECpuMon; @@ -82,7 +94,6 @@ architecture behavioral of MC6809ECpuMon is signal cpu_clk : std_logic; signal busmon_clk : std_logic; signal R_W_n_int : std_logic; -signal LIC_int : std_logic; signal NMI_sync : std_logic; signal IRQ_sync : std_logic; signal FIRQ_sync : std_logic; @@ -112,21 +123,26 @@ signal SS_Single : std_logic; signal SS_Step : std_logic; signal CountCycle : std_logic; -signal clock7_3728 : std_logic; signal clk_count : std_logic_vector(1 downto 0); +signal quadrature : std_logic_vector(1 downto 0); +signal LIC : std_logic; +signal AVMA : std_logic; +signal XTAL : std_logic; +signal EXTAL : std_logic; +signal MRDY : std_logic; +signal TSC : std_logic; +signal BUSY : std_logic; +signal Q : std_logic; +signal E : std_logic; +signal DMA_n_BREQ_n : std_logic; +signal clock7_3728 : std_logic; + begin - inst_dcm1 : entity work.DCM1 port map( - CLKIN_IN => clock49, - CLK0_OUT => clock7_3728, - CLK0_OUT1 => open, - CLK2X_OUT => open - ); - mon : entity work.BusMonCore generic map ( - num_comparators => 4 + num_comparators => 8 ) port map ( clock49 => clock49, @@ -201,7 +217,7 @@ begin clk => cpu_clk, rst => RES_sync, vma => AVMA, - lic_out => LIC_int, + lic_out => LIC, ifetch => ifetch, opfetch => open, ba => BA, @@ -219,12 +235,6 @@ begin ); end generate; - clk_gen : process(clock7_3728) - begin - if rising_edge(clock7_3728) then - clk_count <= clk_count + 1; - end if; - end process; -- Synchronize all external inputs, to avoid subtle bugs like missed interrupts irq_gen : process(cpu_clk) @@ -245,7 +255,7 @@ begin begin if rising_edge(cpu_clk) then if (hold = '0') then - ifetch1 <= ifetch and not LIC_int; + ifetch1 <= ifetch and not LIC; end if; end if; end process; @@ -270,9 +280,6 @@ begin -- Only count cycles when the 6809 is actually running CountCycle <= not hold; - cpu_clk <= not E; - busmon_clk <= E; - R_W_n <= 'Z' when TSC = '1' else '1' when memory_rd = '1' else '0' when memory_wr = '1' else @@ -290,13 +297,78 @@ begin (others => 'Z'); memory_done <= memory_rd or memory_wr; - + + -- The following outputs are not implemented + -- BUSY (6809E mode) BUSY <= '0'; - LIC <= LIC_int; + + -- The following inputs are not implemented + -- DMA_n_BREQ_n (6809 mode) + -- Pins whose functions are dependent on "E" mode + PIN33 <= BUSY when EMode_n = '0' else 'Z'; + DMA_n_BREQ_n <= '1' when EMode_n = '0' else PIN33; + + PIN34 <= 'Z' when EMode_n = '0' else E; + E <= PIN34 when EMode_n = '0' else quadrature(1); + + PIN35 <= 'Z' when EMode_n = '0' else Q; + Q <= PIN35 when EMode_n = '0' else quadrature(0); + + PIN36 <= AVMA when EMode_n = '0' else 'Z'; + MRDY <= '1' when EMode_n = '0' else PIN36; + + PIN38 <= LIC when EMode_n = '0' else 'Z'; + EXTAL <= PIN38 when EMode_n = '0' else '0'; + + TSC <= PIN39 when EMode_n = '0' else '0'; + XTAL <= '0' when EMode_n = '0' else PIN39; + + -- A locally generated test clock + -- 1.8457 MHz in E Mode (6809E) so it can drive E (PIN34) + -- 7.3728 MHz in Normal Mode (6809) so it can drive XTAL (PIN39) + clock_test <= clk_count(1) when EMode_n = '0' else clock7_3728; + + -- Main clocks + cpu_clk <= not E; + busmon_clk <= E; + + -- Quadrature clock generator, unused in 6809E mode + quadrature_gen : process(XTAL) + begin + if rising_edge(XTAL) then + if (MRDY = '1') then + if (quadrature = "00") then + quadrature <= "01"; + elsif (quadrature = "01") then + quadrature <= "11"; + elsif (quadrature = "11") then + quadrature <= "10"; + else + quadrature <= "00"; + end if; + end if; + end if; + end process; + + -- Seperate piece of circuitry that emits a 7.3728MHz clock + + inst_dcm1 : entity work.DCM1 port map( + CLKIN_IN => clock49, + CLK0_OUT => clock7_3728, + CLK0_OUT1 => open, + CLK2X_OUT => open + ); + + clk_gen : process(clock7_3728) + begin + if rising_edge(clock7_3728) then + clk_count <= clk_count + 1; + end if; + end process; + + -- Spare pins used for testing test1 <= Sync_int; test2 <= RDY_int; - test3 <= LIC_int; - test4 <= clk_count(1); - + end behavioral;