URL
https://opencores.org/ocsvn/cpu65c02_true_cycle/cpu65c02_true_cycle/trunk
Subversion Repositories cpu65c02_true_cycle
Compare Revisions
- This comparison shows the changes necessary to convert path
/
- from Rev 6 to Rev 7
- ↔ Reverse comparison
Rev 6 → Rev 7
/trunk/rtl/vhdl/reg_pc.vhd
2,7 → 2,7
-- |
-- Created: |
-- by - eda.UNKNOWN (ENTWICKL4-XP-PR) |
-- at - 20:01:55 12.08.2008 |
-- at - 20:45:03 03.01.2009 |
-- |
-- Generated by Mentor Graphics' HDL Designer(TM) 2007.1a (Build 13) |
-- |
17,13 → 17,12
ld_i : in std_logic_vector (1 downto 0); |
ld_pc_i : in std_logic; |
offset_i : in std_logic_vector (15 downto 0); |
rst_rst_i : in std_logic; |
rst_rst_n_i : in std_logic; |
sel_pc_as_i : in std_logic; |
sel_pc_in_i : in std_logic; |
sel_pc_val_i : in std_logic_vector (1 downto 0); |
adr_nxt_pc_o : out std_logic_vector (15 downto 0); |
adr_pc_o : out std_logic_vector (15 downto 0); |
cout_o_i : out std_logic |
adr_pc_o : out std_logic_vector (15 downto 0) |
); |
|
-- Declarations |
44,17 → 43,25
-- |
-- CVS Revisins History |
-- |
-- $Log: not supported by cvs2svn $ |
-- |
-- $Log: not supported by cvs2svn $ |
-- Revision 1.3 2009/01/04 10:20:51 eda |
-- Changes for cosmetic issues only |
-- |
-- Revision 1.2 2009/01/04 09:23:14 eda |
-- - Delete unused nets and blocks (same as R6502_TC) |
-- - Rename blocks |
-- - Re-arrage FSM symbols in block FSM_Execution_Unit |
-- |
-- <<-- more -->> |
-- Title: Program Counter Logic |
-- Path: R65C02_TC/Reg_PC/struct |
-- Edited: by eda on 11 Aug 2008 |
-- Edited: by eda on 01 Jan 2009 |
-- |
-- VHDL Architecture R65C02_TC.Reg_PC.struct |
-- |
-- Created: |
-- by - eda.UNKNOWN (ENTWICKL4-XP-PR) |
-- at - 20:01:55 12.08.2008 |
-- at - 20:45:03 03.01.2009 |
-- |
-- Generated by Mentor Graphics' HDL Designer(TM) 2007.1a (Build 13) |
-- |
68,24 → 75,35
-- Architecture declarations |
|
-- Internal signal declarations |
signal d1_o_i : std_logic_vector(7 downto 0); |
signal d_o_i : std_logic_vector(7 downto 0); |
signal dout1_o_i : std_logic_vector(7 downto 0); |
signal dout3_o_i : std_logic; |
signal dout5_o_i : std_logic_vector(7 downto 0); |
signal dout6_o_i : std_logic_vector(7 downto 0); |
signal dout_o_i : std_logic; |
signal load3_o_i : std_logic; |
signal load_o_i : std_logic; |
signal val_one : std_logic_vector(7 downto 0); |
signal val_two : std_logic_vector(7 downto 0); |
signal val_zero : std_logic_vector(7 downto 0); |
signal adr_pc_high_o_i : std_logic_vector(7 downto 0); |
signal adr_pc_low_o_i : std_logic_vector(7 downto 0); |
signal adr_pc_o_i : std_logic_vector(15 downto 0); |
signal as_n_o_i : std_logic; |
signal ci_o_i : std_logic; |
signal cout_pc_o_i : std_logic; |
signal load3_o_i : std_logic; |
signal load_o_i : std_logic; |
signal offset_high_o_i : std_logic_vector(7 downto 0); |
signal offset_low_o_i : std_logic_vector(7 downto 0); |
signal val_o_i : std_logic_vector(7 downto 0); |
signal val_one : std_logic_vector(7 downto 0); |
signal val_zero : std_logic_vector(7 downto 0); |
|
-- Implicit buffer signal declarations |
signal adr_pc_o_internal : std_logic_vector (15 downto 0); |
signal cout_o_i_internal : std_logic; |
signal adr_pc_o_internal : std_logic_vector (15 downto 0); |
signal adr_nxt_pc_o_internal : std_logic_vector (15 downto 0); |
|
|
-- ModuleWare signal declarations(v1.9) for instance 'U_11' of 'addsub' |
signal mw_U_11temp_din0 : std_logic_vector(8 downto 0); |
signal mw_U_11temp_din1 : std_logic_vector(8 downto 0); |
signal mw_U_11sum : unsigned(8 downto 0); |
|
-- ModuleWare signal declarations(v1.9) for instance 'U_12' of 'addsub' |
signal mw_U_12temp_din0 : std_logic_vector(8 downto 0); |
signal mw_U_12temp_din1 : std_logic_vector(8 downto 0); |
signal mw_U_12sum : unsigned(8 downto 0); |
|
-- ModuleWare signal declarations(v1.9) for instance 'U_0' of 'adff' |
signal mw_U_0reg_cval : std_logic_vector(7 downto 0); |
|
94,71 → 112,47
|
|
begin |
-- Architecture concurrent statements |
-- HDL Embedded Text Block 1 eb1 |
-- eb1 1 |
adr_nxt_pc_o(7 DOWNTO 0) <= d_o_i; |
|
-- HDL Embedded Text Block 2 eb2 |
-- eb1 1 |
val_zero (7 downto 0) <= X"00"; |
val_one (7 downto 0) <= X"01"; |
val_two (7 downto 0) <= X"02"; |
|
-- HDL Embedded Text Block 3 eb3 |
-- eb1 1 |
adr_nxt_pc_o(15 DOWNTO 8) <= d1_o_i; |
|
|
-- ModuleWare code(v1.9) for instance 'U_11' of 'addsub' |
u_11combo_proc: process (dout5_o_i, dout1_o_i, dout3_o_i, val_zero(0)) |
variable temp_din0 : std_logic_vector(8 downto 0); |
variable temp_din1 : std_logic_vector(8 downto 0); |
variable temp_sum : unsigned(8 downto 0); |
mw_U_11temp_din0 <= '0' & adr_pc_low_o_i; |
mw_U_11temp_din1 <= '0' & val_o_i; |
u_11combo_proc: process (mw_U_11temp_din0, mw_U_11temp_din1, as_n_o_i) |
variable temp_carry : std_logic; |
variable temp_cout : std_logic; |
begin |
temp_din0 := '0' & dout5_o_i; |
temp_din1 := '0' & dout1_o_i; |
temp_carry := val_zero(0); |
if (dout3_o_i = '1') then |
temp_sum := unsigned(temp_din0) + unsigned(temp_din1) + temp_carry; |
temp_cout := temp_sum(8) ; |
temp_carry := '0'; |
if (as_n_o_i = '1') then |
mw_U_11sum <= unsigned(mw_U_11temp_din0) + unsigned(mw_U_11temp_din1) + temp_carry; |
else |
temp_sum := unsigned(temp_din0) - unsigned(temp_din1) - temp_carry; |
temp_cout := temp_sum(8) ; |
mw_U_11sum <= unsigned(mw_U_11temp_din0) - unsigned(mw_U_11temp_din1) - temp_carry; |
end if; |
d_o_i <= conv_std_logic_vector(temp_sum(7 downto 0),8); |
cout_o_i_internal <= temp_cout; |
end process u_11combo_proc; |
adr_nxt_pc_o_internal(7 DOWNTO 0) <= conv_std_logic_vector(mw_U_11sum(7 downto 0),8); |
cout_pc_o_i <= mw_U_11sum(8); |
|
-- ModuleWare code(v1.9) for instance 'U_12' of 'addsub' |
u_12combo_proc: process (dout6_o_i, offset_i(15 DOWNTO 8), dout3_o_i, dout_o_i) |
variable temp_din0 : std_logic_vector(8 downto 0); |
variable temp_din1 : std_logic_vector(8 downto 0); |
variable temp_sum : unsigned(8 downto 0); |
mw_U_12temp_din0 <= '0' & adr_pc_high_o_i; |
mw_U_12temp_din1 <= '0' & offset_high_o_i; |
u_12combo_proc: process (mw_U_12temp_din0, mw_U_12temp_din1, as_n_o_i, ci_o_i) |
variable temp_carry : std_logic; |
begin |
temp_din0 := '0' & dout6_o_i; |
temp_din1 := '0' & offset_i(15 DOWNTO 8); |
temp_carry := dout_o_i; |
if (dout3_o_i = '1') then |
temp_sum := unsigned(temp_din0) + unsigned(temp_din1) + temp_carry; |
temp_carry := ci_o_i; |
if (as_n_o_i = '1') then |
mw_U_12sum <= unsigned(mw_U_12temp_din0) + unsigned(mw_U_12temp_din1) + temp_carry; |
else |
temp_sum := unsigned(temp_din0) - unsigned(temp_din1) - temp_carry; |
mw_U_12sum <= unsigned(mw_U_12temp_din0) - unsigned(mw_U_12temp_din1) - temp_carry; |
end if; |
d1_o_i <= conv_std_logic_vector(temp_sum(7 downto 0),8); |
end process u_12combo_proc; |
adr_nxt_pc_o_internal(15 DOWNTO 8) <= conv_std_logic_vector(mw_U_12sum(7 downto 0),8); |
|
-- ModuleWare code(v1.9) for instance 'U_0' of 'adff' |
adr_pc_o_internal(7 DOWNTO 0) <= mw_U_0reg_cval; |
u_0seq_proc: process (clk_clk_i, rst_rst_i) |
u_0seq_proc: process (clk_clk_i, rst_rst_n_i) |
begin |
if (rst_rst_i = '1') then |
if (rst_rst_n_i = '0') then |
mw_U_0reg_cval <= "00000000"; |
elsif (clk_clk_i'event and clk_clk_i='1') then |
if (load_o_i = '1') then |
mw_U_0reg_cval <= d_o_i; |
mw_U_0reg_cval <= adr_nxt_pc_o_internal(7 DOWNTO 0); |
end if; |
end if; |
end process u_0seq_proc; |
165,13 → 159,13
|
-- ModuleWare code(v1.9) for instance 'U_4' of 'adff' |
adr_pc_o_internal(15 DOWNTO 8) <= mw_U_4reg_cval; |
u_4seq_proc: process (clk_clk_i, rst_rst_i) |
u_4seq_proc: process (clk_clk_i, rst_rst_n_i) |
begin |
if (rst_rst_i = '1') then |
if (rst_rst_n_i = '0') then |
mw_U_4reg_cval <= "00000000"; |
elsif (clk_clk_i'event and clk_clk_i='1') then |
if (load3_o_i = '1') then |
mw_U_4reg_cval <= d1_o_i; |
mw_U_4reg_cval <= adr_nxt_pc_o_internal(15 DOWNTO 8); |
end if; |
end if; |
end process u_4seq_proc; |
183,50 → 177,52
load3_o_i <= ld_pc_i and ld_i(1); |
|
-- ModuleWare code(v1.9) for instance 'U_10' of 'and' |
dout_o_i <= cout_o_i_internal and ld_pc_i; |
ci_o_i <= cout_pc_o_i and ld_pc_i; |
|
-- ModuleWare code(v1.9) for instance 'U_1' of 'constval' |
val_zero <= "00000000"; |
|
-- ModuleWare code(v1.9) for instance 'U_9' of 'constval' |
val_one <= "00000001"; |
|
-- ModuleWare code(v1.9) for instance 'U_2' of 'inv' |
dout3_o_i <= not(sel_pc_as_i); |
as_n_o_i <= not(sel_pc_as_i); |
|
-- ModuleWare code(v1.9) for instance 'U_5' of 'mux' |
u_5combo_proc: process(val_one, val_two, offset_i(7 DOWNTO 0), |
val_zero, sel_pc_val_i) |
begin |
case sel_pc_val_i is |
when "00" => dout1_o_i <= val_one; |
when "01" => dout1_o_i <= val_two; |
when "10" => dout1_o_i <= offset_i(7 DOWNTO 0); |
when "11" => dout1_o_i <= val_zero; |
when others => dout1_o_i <= (others => 'X'); |
end case; |
end process u_5combo_proc; |
|
-- ModuleWare code(v1.9) for instance 'U_8' of 'mux' |
u_8combo_proc: process(adr_pc_o_internal(7 DOWNTO 0), |
adr_i(7 DOWNTO 0), sel_pc_in_i) |
u_8combo_proc: process(adr_pc_o_internal, adr_i, sel_pc_in_i) |
begin |
case sel_pc_in_i is |
when '0' => dout5_o_i <= adr_pc_o_internal(7 DOWNTO 0); |
when '1' => dout5_o_i <= adr_i(7 DOWNTO 0); |
when others => dout5_o_i <= (others => 'X'); |
when '0' => adr_pc_o_i <= adr_pc_o_internal; |
when '1' => adr_pc_o_i <= adr_i; |
when others => adr_pc_o_i <= (others => 'X'); |
end case; |
end process u_8combo_proc; |
|
-- ModuleWare code(v1.9) for instance 'U_9' of 'mux' |
u_9combo_proc: process(adr_pc_o_internal(15 DOWNTO 8), |
adr_i(15 DOWNTO 8), sel_pc_in_i) |
-- ModuleWare code(v1.9) for instance 'U_13' of 'mux' |
u_13combo_proc: process(val_one, val_zero, offset_low_o_i, |
sel_pc_val_i) |
begin |
case sel_pc_in_i is |
when '0' => dout6_o_i <= adr_pc_o_internal(15 DOWNTO 8); |
when '1' => dout6_o_i <= adr_i(15 DOWNTO 8); |
when others => dout6_o_i <= (others => 'X'); |
case sel_pc_val_i is |
when "00" => val_o_i <= val_one; |
when "01" => val_o_i <= val_zero; |
when "10" => val_o_i <= offset_low_o_i; |
when "11" => val_o_i <= val_zero; |
when others => val_o_i <= (others => 'X'); |
end case; |
end process u_9combo_proc; |
end process u_13combo_proc; |
|
-- ModuleWare code(v1.9) for instance 'U_3' of 'split' |
adr_pc_low_o_i <= adr_pc_o_i(7 downto 0); |
adr_pc_high_o_i <= adr_pc_o_i(15 downto 8); |
|
-- ModuleWare code(v1.9) for instance 'U_5' of 'split' |
offset_low_o_i <= offset_i(7 downto 0); |
offset_high_o_i <= offset_i(15 downto 8); |
|
-- Instance port mappings. |
|
-- Implicit buffered output assignments |
adr_pc_o <= adr_pc_o_internal; |
cout_o_i <= cout_o_i_internal; |
adr_pc_o <= adr_pc_o_internal; |
adr_nxt_pc_o <= adr_nxt_pc_o_internal; |
|
end struct; |
/trunk/rtl/vhdl/reg_sp.vhd
2,7 → 2,7
-- |
-- Created: |
-- by - eda.UNKNOWN (ENTWICKL4-XP-PR) |
-- at - 20:09:12 12.08.2008 |
-- at - 20:45:03 03.01.2009 |
-- |
-- Generated by Mentor Graphics' HDL Designer(TM) 2007.1a (Build 13) |
-- |
12,16 → 12,14
|
entity Reg_SP is |
port( |
adr_sp_i : in std_logic_vector (15 downto 0); |
clk_clk_i : in std_logic; |
ld_i : in std_logic_vector (1 downto 0); |
ld_sp_i : in std_logic; |
rst_rst_i : in std_logic; |
sel_sp_as_i : in std_logic; |
sel_sp_in_i : in std_logic; |
sel_sp_val_i : in std_logic; |
adr_nxt_sp_o : out std_logic_vector (15 downto 0); |
adr_sp_o : out std_logic_vector (15 downto 0) |
adr_low_i : in std_logic_vector (7 downto 0); |
clk_clk_i : in std_logic; |
ld_low_i : in std_logic; |
ld_sp_i : in std_logic; |
rst_rst_n_i : in std_logic; |
sel_sp_as_i : in std_logic; |
sel_sp_in_i : in std_logic; |
adr_sp_o : out std_logic_vector (15 downto 0) |
); |
|
-- Declarations |
42,17 → 40,25
-- |
-- CVS Revisins History |
-- |
-- $Log: not supported by cvs2svn $ |
-- |
-- $Log: not supported by cvs2svn $ |
-- Revision 1.3 2009/01/04 10:20:51 eda |
-- Changes for cosmetic issues only |
-- |
-- Revision 1.2 2009/01/04 09:23:15 eda |
-- - Delete unused nets and blocks (same as R6502_TC) |
-- - Rename blocks |
-- - Re-arrage FSM symbols in block FSM_Execution_Unit |
-- |
-- <<-- more -->> |
-- Title: Stack Pointer Logic |
-- Path: R65C02_TC/Reg_SP/struct |
-- Edited: by eda on 12 Aug 2008 |
-- Edited: by eda on 01 Jan 2009 |
-- |
-- VHDL Architecture R65C02_TC.Reg_SP.struct |
-- |
-- Created: |
-- by - eda.UNKNOWN (ENTWICKL4-XP-PR) |
-- at - 20:09:12 12.08.2008 |
-- at - 20:45:03 03.01.2009 |
-- |
-- Generated by Mentor Graphics' HDL Designer(TM) 2007.1a (Build 13) |
-- |
66,114 → 72,81
-- Architecture declarations |
|
-- Internal signal declarations |
signal d_o_i : std_logic_vector(7 downto 0); |
signal dout1_o_i : std_logic_vector(7 downto 0); |
signal dout2_o_i : std_logic_vector(7 downto 0); |
signal dout3_o_i : std_logic; |
signal load3_o_i : std_logic; |
signal load_o_i : std_logic; |
signal val_one : std_logic_vector(7 downto 0); |
signal val_two : std_logic_vector(7 downto 0); |
signal val_zero : std_logic_vector(7 downto 0); |
signal adr_sp_low_o_i : std_logic_vector(7 downto 0); |
signal load_o_i : std_logic; |
signal result_low1_o_i : std_logic_vector(7 downto 0); |
signal result_low_o_i : std_logic_vector(7 downto 0); |
signal sp_as_n_o_i : std_logic; |
signal val_one : std_logic_vector(7 downto 0); |
|
-- Implicit buffer signal declarations |
signal adr_sp_o_internal : std_logic_vector (15 downto 0); |
|
|
-- ModuleWare signal declarations(v1.9) for instance 'U_11' of 'addsub' |
signal mw_U_11temp_din0 : std_logic_vector(8 downto 0); |
signal mw_U_11temp_din1 : std_logic_vector(8 downto 0); |
signal mw_U_11sum : unsigned(8 downto 0); |
|
-- ModuleWare signal declarations(v1.9) for instance 'U_0' of 'adff' |
signal mw_U_0reg_cval : std_logic_vector(7 downto 0); |
|
-- ModuleWare signal declarations(v1.9) for instance 'U_4' of 'adff' |
signal mw_U_4reg_cval : std_logic_vector(7 downto 0); |
|
|
begin |
-- Architecture concurrent statements |
-- HDL Embedded Text Block 2 eb2 |
-- eb1 1 |
val_zero (7 downto 0) <= X"00"; |
val_one (7 downto 0) <= X"01"; |
val_two (7 downto 0) <= X"02"; |
adr_nxt_sp_o (15 downto 8) <= X"01"; |
|
-- HDL Embedded Text Block 3 eb3 |
-- eb1 1 |
adr_nxt_sp_o(7 DOWNTO 0) <= d_o_i; |
|
|
-- ModuleWare code(v1.9) for instance 'U_11' of 'addsub' |
u_11combo_proc: process (adr_sp_o_internal(7 DOWNTO 0), dout1_o_i, dout3_o_i, val_zero(0)) |
variable temp_din0 : std_logic_vector(8 downto 0); |
variable temp_din1 : std_logic_vector(8 downto 0); |
variable temp_sum : unsigned(8 downto 0); |
mw_U_11temp_din0 <= '0' & adr_sp_low_o_i; |
mw_U_11temp_din1 <= '0' & val_one; |
u_11combo_proc: process (mw_U_11temp_din0, mw_U_11temp_din1, sp_as_n_o_i) |
variable temp_carry : std_logic; |
begin |
temp_din0 := '0' & adr_sp_o_internal(7 DOWNTO 0); |
temp_din1 := '0' & dout1_o_i; |
temp_carry := val_zero(0); |
if (dout3_o_i = '1') then |
temp_sum := unsigned(temp_din0) + unsigned(temp_din1) + temp_carry; |
temp_carry := '0'; |
if (sp_as_n_o_i = '1') then |
mw_U_11sum <= unsigned(mw_U_11temp_din0) + unsigned(mw_U_11temp_din1) + temp_carry; |
else |
temp_sum := unsigned(temp_din0) - unsigned(temp_din1) - temp_carry; |
mw_U_11sum <= unsigned(mw_U_11temp_din0) - unsigned(mw_U_11temp_din1) - temp_carry; |
end if; |
dout2_o_i <= conv_std_logic_vector(temp_sum(7 downto 0),8); |
end process u_11combo_proc; |
result_low_o_i <= conv_std_logic_vector(mw_U_11sum(7 downto 0),8); |
|
-- ModuleWare code(v1.9) for instance 'U_0' of 'adff' |
adr_sp_o_internal(7 DOWNTO 0) <= mw_U_0reg_cval; |
u_0seq_proc: process (clk_clk_i, rst_rst_i) |
u_0seq_proc: process (clk_clk_i, rst_rst_n_i) |
begin |
if (rst_rst_i = '1') then |
if (rst_rst_n_i = '0') then |
mw_U_0reg_cval <= "00000000"; |
elsif (clk_clk_i'event and clk_clk_i='1') then |
if (load_o_i = '1') then |
mw_U_0reg_cval <= d_o_i; |
mw_U_0reg_cval <= result_low1_o_i; |
end if; |
end if; |
end process u_0seq_proc; |
|
-- ModuleWare code(v1.9) for instance 'U_4' of 'adff' |
adr_sp_o_internal(15 DOWNTO 8) <= mw_U_4reg_cval; |
u_4seq_proc: process (clk_clk_i, rst_rst_i) |
begin |
if (rst_rst_i = '1') then |
mw_U_4reg_cval <= "00000000"; |
elsif (clk_clk_i'event and clk_clk_i='1') then |
if (load3_o_i = '1') then |
mw_U_4reg_cval <= val_one; |
end if; |
end if; |
end process u_4seq_proc; |
|
-- ModuleWare code(v1.9) for instance 'U_6' of 'and' |
load_o_i <= ld_sp_i and ld_i(0); |
load_o_i <= ld_sp_i and ld_low_i; |
|
-- ModuleWare code(v1.9) for instance 'U_7' of 'and' |
load3_o_i <= ld_sp_i and ld_i(1); |
-- ModuleWare code(v1.9) for instance 'U_3' of 'buff' |
adr_sp_o_internal(15 DOWNTO 8) <= val_one; |
|
-- ModuleWare code(v1.9) for instance 'U_4' of 'constval' |
val_one <= "00000001"; |
|
-- ModuleWare code(v1.9) for instance 'U_2' of 'inv' |
dout3_o_i <= not(sel_sp_as_i); |
sp_as_n_o_i <= not(sel_sp_as_i); |
|
-- ModuleWare code(v1.9) for instance 'U_5' of 'mux' |
u_5combo_proc: process(val_one, val_two, sel_sp_val_i) |
begin |
case sel_sp_val_i is |
when '0' => dout1_o_i <= val_one; |
when '1' => dout1_o_i <= val_two; |
when others => dout1_o_i <= (others => 'X'); |
end case; |
end process u_5combo_proc; |
|
-- ModuleWare code(v1.9) for instance 'U_8' of 'mux' |
u_8combo_proc: process(dout2_o_i, adr_sp_i(7 DOWNTO 0), sel_sp_in_i) |
u_8combo_proc: process(result_low_o_i, adr_low_i, sel_sp_in_i) |
begin |
case sel_sp_in_i is |
when '0' => d_o_i <= dout2_o_i; |
when '1' => d_o_i <= adr_sp_i(7 DOWNTO 0); |
when others => d_o_i <= (others => 'X'); |
when '0' => result_low1_o_i <= result_low_o_i; |
when '1' => result_low1_o_i <= adr_low_i; |
when others => result_low1_o_i <= (others => 'X'); |
end case; |
end process u_8combo_proc; |
|
-- ModuleWare code(v1.9) for instance 'U_10' of 'tap' |
adr_sp_low_o_i <= adr_sp_o_internal(7 downto 0); |
|
-- Instance port mappings. |
|
-- Implicit buffered output assignments |
/trunk/rtl/vhdl/r65c02_tc.vhd
2,7 → 2,7
-- |
-- Created: |
-- by - eda.UNKNOWN (ENTWICKL4-XP-PR) |
-- at - 16:15:12 17.08.2008 |
-- at - 20:48:26 04.01.2009 |
-- |
-- Generated by Mentor Graphics' HDL Designer(TM) 2007.1a (Build 13) |
-- |
45,17 → 45,17
-- |
-- CVS Revisins History |
-- |
-- $Log: not supported by cvs2svn $ |
-- |
-- Title: Top Level for the 65C02 Core |
-- $Log: not supported by cvs2svn $ |
-- <<-- more -->> |
-- Title: Top Level |
-- Path: R65C02_TC/R65C02_TC/struct |
-- Edited: by eda on 12 Aug 2008 |
-- Edited: by eda on 04 Jan 2009 |
-- |
-- VHDL Architecture R65C02_TC.R65C02_TC.struct |
-- |
-- Created: |
-- by - eda.UNKNOWN (ENTWICKL4-XP-PR) |
-- at - 16:15:12 17.08.2008 |
-- at - 20:48:26 04.01.2009 |
-- |
-- Generated by Mentor Graphics' HDL Designer(TM) 2007.1a (Build 13) |
-- |
/trunk/rtl/vhdl/core.vhd
2,7 → 2,7
-- |
-- Created: |
-- by - eda.UNKNOWN (ENTWICKL4-XP-PR) |
-- at - 16:15:11 17.08.2008 |
-- at - 20:48:25 04.01.2009 |
-- |
-- Generated by Mentor Graphics' HDL Designer(TM) 2007.1a (Build 13) |
-- |
33,29 → 33,29
|
-- Jens-D. Gutschmidt Project: R65C02_TC |
-- scantara2003@yahoo.de |
-- COPYRIGHT (C) 2008 by Jens Gutschmidt and OPENCORES.ORG |
-- |
-- This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by |
-- the Free Software Foundation, either version 3 of the License, or any later version. |
-- |
-- This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of |
-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. |
-- |
-- You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>. |
-- |
-- CVS Revisins History |
-- |
-- $Log: not supported by cvs2svn $ |
-- |
-- Title: Core of 6502 |
-- COPYRIGHT (C) 2008 by Jens Gutschmidt and OPENCORES.ORG |
-- |
-- This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version |
-- 3 of the License, or any later version. |
-- |
-- This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A |
-- PARTICULAR PURPOSE. See the GNU General Public License for more details. |
-- |
-- You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>. |
-- |
-- CVS Revisins History |
-- |
-- $Log: not supported by cvs2svn $ |
-- <<-- more -->> |
-- Title: Core |
-- Path: R65C02_TC/Core/struct |
-- Edited: by eda on 17 Aug 2008 |
-- Edited: by eda on 04 Jan 2009 |
-- |
-- VHDL Architecture R65C02_TC.Core.struct |
-- |
-- Created: |
-- by - eda.UNKNOWN (ENTWICKL4-XP-PR) |
-- at - 16:15:12 17.08.2008 |
-- at - 20:48:25 04.01.2009 |
-- |
-- Generated by Mentor Graphics' HDL Designer(TM) 2007.1a (Build 13) |
-- |
70,72 → 70,108
-- Architecture declarations |
|
-- Internal signal declarations |
signal adr_nxt_pc_o_i : std_logic_vector(15 downto 0); |
signal adr_nxt_sp_o_i : std_logic_vector(15 downto 0); |
signal adr_o_i : std_logic_vector(15 downto 0); |
signal adr_pc_o_i : std_logic_vector(15 downto 0); |
signal adr_sp_o_i : std_logic_vector(15 downto 0); |
signal ch_a_o_i : std_logic_vector(7 downto 0); |
signal ch_b_o_i : std_logic_vector(7 downto 0); |
signal cout_pc_o_i : std_logic; |
signal d_alu_o_i : std_logic_vector(7 downto 0); |
signal d_regs_in_o_i : std_logic_vector(7 downto 0); |
signal d_regs_out_o_i : std_logic_vector(7 downto 0); |
signal fetch_o_i : std_logic; |
signal ld_o_i : std_logic_vector(1 downto 0); |
signal ld_pc_o_i : std_logic; |
signal ld_regs_o_i : std_logic; |
signal ld_sp_o_i : std_logic; |
signal nmi_o_i : std_logic; |
signal offset_o_i : std_logic_vector(15 downto 0); |
signal q_a_o_i : std_logic_vector(7 downto 0); |
signal q_x_o_i : std_logic_vector(7 downto 0); |
signal q_y_o_i : std_logic_vector(7 downto 0); |
signal reg_0flag_core_o_i : std_logic; |
signal reg_0flag_o_i : std_logic; |
signal reg_1flag_o_i : std_logic; |
signal reg_3flag_core_o_i : std_logic; |
signal reg_6flag_o_i : std_logic; |
signal reg_7flag_core_o_i : std_logic; |
signal reg_7flag_o_i : std_logic; |
signal rst_rst_o_i : std_logic; |
signal sel_alu_as_o_i : std_logic; |
signal sel_alu_out_o_i : std_logic_vector(2 downto 0); |
signal sel_pc_as_o_i : std_logic; |
signal sel_pc_in_o_i : std_logic_vector(1 downto 0); |
signal sel_pc_val_o_i : std_logic_vector(1 downto 0); |
signal sel_rb_in_o_i : std_logic_vector(2 downto 0); |
signal sel_rb_out_o_i : std_logic_vector(2 downto 0); |
signal sel_reg_o_i : std_logic_vector(1 downto 0); |
signal sel_sp_as_o_i : std_logic; |
signal sel_sp_in_o_i : std_logic_vector(1 downto 0); |
signal sel_sp_val_o_i : std_logic_vector(1 downto 0); |
signal adr_nxt_pc_o_i : std_logic_vector(15 downto 0); |
signal adr_o_i : std_logic_vector(15 downto 0); |
signal adr_pc_o_i : std_logic_vector(15 downto 0); |
signal adr_sp_o_i : std_logic_vector(15 downto 0); |
signal ch_a_o_i : std_logic_vector(7 downto 0); |
signal ch_b_o_i : std_logic_vector(7 downto 0); |
signal d_alu_n_o_i : std_logic; |
signal d_alu_o_i : std_logic_vector(7 downto 0); |
signal d_alu_or_o_i : std_logic; |
signal d_regs_in_o_i : std_logic_vector(7 downto 0); |
signal d_regs_out_o_i : std_logic_vector(7 downto 0); |
signal fetch_o_i : std_logic; |
signal ld_o_i : std_logic_vector(1 downto 0); |
signal ld_pc_o_i : std_logic; |
signal ld_sp_o_i : std_logic; |
signal load_regs_o_i : std_logic; |
signal nmi_o_i : std_logic; |
signal offset_o_i : std_logic_vector(15 downto 0); |
signal q_a_o_i : std_logic_vector(7 downto 0); |
signal q_x_o_i : std_logic_vector(7 downto 0); |
signal q_y_o_i : std_logic_vector(7 downto 0); |
signal reg_0flag_o_i : std_logic; |
signal reg_1flag_o_i : std_logic; |
signal reg_7flag_o_i : std_logic; |
signal sel_pc_as_o_i : std_logic; |
signal sel_pc_in_o_i : std_logic; |
signal sel_pc_val_o_i : std_logic_vector(1 downto 0); |
signal sel_rb_in_o_i : std_logic_vector(1 downto 0); |
signal sel_rb_out_o_i : std_logic_vector(1 downto 0); |
signal sel_reg_o_i : std_logic_vector(1 downto 0); |
signal sel_sp_as_o_i : std_logic; |
signal sel_sp_in_o_i : std_logic; |
|
|
-- ModuleWare signal declarations(v1.9) for instance 'U_11' of 'add' |
signal mw_U_11temp_din0 : std_logic_vector(8 downto 0); |
signal mw_U_11temp_din1 : std_logic_vector(8 downto 0); |
signal mw_U_11sum : unsigned(8 downto 0); |
|
-- Component Declarations |
component ALU |
component FSM_Execution_Unit |
port ( |
ch_a_i : in std_logic_vector (7 downto 0); |
ch_b_i : in std_logic_vector (7 downto 0); |
reg_0flag_core_i : in std_logic ; |
reg_3flag_core_i : in std_logic ; |
reg_7flag_core_i : in std_logic ; |
sel_alu_as_i : in std_logic ; |
sel_alu_out_i : in std_logic_vector (2 downto 0); |
d_alu_o : out std_logic_vector (7 downto 0); |
reg_0flag_o : out std_logic ; |
reg_1flag_o : out std_logic ; |
reg_6flag_o : out std_logic ; |
reg_7flag_o : out std_logic |
adr_nxt_pc_i : in std_logic_vector (15 downto 0); |
adr_pc_i : in std_logic_vector (15 downto 0); |
adr_sp_i : in std_logic_vector (15 downto 0); |
clk_clk_i : in std_logic ; |
d_alu_i : in std_logic_vector ( 7 downto 0 ); |
d_i : in std_logic_vector ( 7 downto 0 ); |
d_regs_out_i : in std_logic_vector ( 7 downto 0 ); |
irq_n_i : in std_logic ; |
nmi_i : in std_logic ; |
q_a_i : in std_logic_vector ( 7 downto 0 ); |
q_x_i : in std_logic_vector ( 7 downto 0 ); |
q_y_i : in std_logic_vector ( 7 downto 0 ); |
rdy_i : in std_logic ; |
reg_0flag_i : in std_logic ; |
reg_1flag_i : in std_logic ; |
reg_7flag_i : in std_logic ; |
rst_rst_n_i : in std_logic ; |
so_n_i : in std_logic ; |
a_o : out std_logic_vector (15 downto 0); |
adr_o : out std_logic_vector (15 downto 0); |
ch_a_o : out std_logic_vector ( 7 downto 0 ); |
ch_b_o : out std_logic_vector ( 7 downto 0 ); |
d_o : out std_logic_vector ( 7 downto 0 ); |
d_regs_in_o : out std_logic_vector ( 7 downto 0 ); |
fetch_o : out std_logic ; |
ld_o : out std_logic_vector ( 1 downto 0 ); |
ld_pc_o : out std_logic ; |
ld_sp_o : out std_logic ; |
load_regs_o : out std_logic ; |
offset_o : out std_logic_vector ( 15 downto 0 ); |
rd_o : out std_logic ; |
sel_pc_as_o : out std_logic ; |
sel_pc_in_o : out std_logic ; |
sel_pc_val_o : out std_logic_vector ( 1 downto 0 ); |
sel_rb_in_o : out std_logic_vector ( 1 downto 0 ); |
sel_rb_out_o : out std_logic_vector ( 1 downto 0 ); |
sel_reg_o : out std_logic_vector ( 1 downto 0 ); |
sel_sp_as_o : out std_logic ; |
sel_sp_in_o : out std_logic ; |
sync_o : out std_logic ; |
wr_n_o : out std_logic ; |
wr_o : out std_logic |
); |
end component; |
component FSM_NMI |
port ( |
clk_clk_i : in std_logic ; |
fetch_i : in std_logic ; |
nmi_n_i : in std_logic ; |
rst_rst_n_i : in std_logic ; |
nmi_o : out std_logic |
); |
end component; |
component RegBank_AXY |
port ( |
clk_clk_i : in std_logic ; |
d_regs_in_i : in std_logic_vector (7 downto 0); |
load_regs_i : in std_logic ; |
rst_rst_i : in std_logic ; |
sel_rb_in_i : in std_logic_vector (2 downto 0); |
rst_rst_n_i : in std_logic ; |
sel_rb_in_i : in std_logic_vector (1 downto 0); |
sel_rb_out_i : in std_logic_vector (1 downto 0); |
sel_reg_i : in std_logic_vector (1 downto 0); |
d_regs_out_o : out std_logic_vector (7 downto 0); |
151,135 → 187,125
ld_i : in std_logic_vector (1 downto 0); |
ld_pc_i : in std_logic ; |
offset_i : in std_logic_vector (15 downto 0); |
rst_rst_i : in std_logic ; |
rst_rst_n_i : in std_logic ; |
sel_pc_as_i : in std_logic ; |
sel_pc_in_i : in std_logic ; |
sel_pc_val_i : in std_logic_vector (1 downto 0); |
adr_nxt_pc_o : out std_logic_vector (15 downto 0); |
adr_pc_o : out std_logic_vector (15 downto 0); |
cout_o_i : out std_logic |
adr_pc_o : out std_logic_vector (15 downto 0) |
); |
end component; |
component Reg_SP |
port ( |
adr_sp_i : in std_logic_vector (15 downto 0); |
clk_clk_i : in std_logic ; |
ld_i : in std_logic_vector (1 downto 0); |
ld_sp_i : in std_logic ; |
rst_rst_i : in std_logic ; |
sel_sp_as_i : in std_logic ; |
sel_sp_in_i : in std_logic ; |
sel_sp_val_i : in std_logic ; |
adr_nxt_sp_o : out std_logic_vector (15 downto 0); |
adr_sp_o : out std_logic_vector (15 downto 0) |
); |
end component; |
component fsm_core_V2_1 |
port ( |
adr_nxt_pc_i : in std_logic_vector (15 downto 0); |
adr_nxt_sp_i : in std_logic_vector (15 downto 0); |
adr_pc_i : in std_logic_vector (15 downto 0); |
adr_sp_i : in std_logic_vector (15 downto 0); |
clk_clk_i : in std_logic ; |
cout_pc_i : in std_logic ; |
d_alu_i : in std_logic_vector ( 7 downto 0 ); |
d_i : in std_logic_vector ( 7 downto 0 ); |
d_regs_out_i : in std_logic_vector ( 7 downto 0 ); |
irq_n_i : in std_logic ; |
nmi_i : in std_logic ; |
q_a_i : in std_logic_vector ( 7 downto 0 ); |
q_x_i : in std_logic_vector ( 7 downto 0 ); |
q_y_i : in std_logic_vector ( 7 downto 0 ); |
rdy_i : in std_logic ; |
reg_0flag_i : in std_logic ; |
reg_1flag_i : in std_logic ; |
reg_6flag_i : in std_logic ; |
reg_7flag_i : in std_logic ; |
rst_rst_n_i : in std_logic ; |
so_n_i : in std_logic ; |
a_o : out std_logic_vector (15 downto 0); |
adr_o : out std_logic_vector (15 downto 0); |
ch_a_o : out std_logic_vector ( 7 downto 0 ); |
ch_b_o : out std_logic_vector ( 7 downto 0 ); |
d_o : out std_logic_vector ( 7 downto 0 ); |
d_regs_in_o : out std_logic_vector ( 7 downto 0 ); |
fetch_o : out std_logic ; |
ld_o : out std_logic_vector ( 1 downto 0 ); |
ld_pc_o : out std_logic ; |
ld_regs_o : out std_logic ; |
ld_sp_o : out std_logic ; |
offset_o : out std_logic_vector ( 15 downto 0 ); |
rd_o : out std_logic ; |
reg_0flag_o : out std_logic ; |
reg_3flag_o : out std_logic ; |
reg_7flag_o : out std_logic ; |
sync_o : out std_logic ; |
unused_reg_1flag_o : out std_logic ; |
wr_n_o : out std_logic ; |
wr_o : out std_logic ; |
sel_alu_as_o_i : inout std_logic ; |
sel_alu_out_o_i : inout std_logic_vector ( 2 downto 0 ); |
sel_pc_as_o_i : inout std_logic ; |
sel_pc_in_o_i : inout std_logic_vector ( 1 downto 0 ); |
sel_pc_val_o_i : inout std_logic_vector ( 1 downto 0 ); |
sel_rb_in_o_i : inout std_logic_vector ( 2 downto 0 ); |
sel_rb_out_o_i : inout std_logic_vector ( 2 downto 0 ); |
sel_reg_o_i : inout std_logic_vector ( 1 downto 0 ); |
sel_sp_as_o_i : inout std_logic ; |
sel_sp_in_o_i : inout std_logic_vector ( 1 downto 0 ); |
sel_sp_val_o_i : inout std_logic_vector ( 1 downto 0 ) |
); |
end component; |
component fsm_nmi |
port ( |
adr_low_i : in std_logic_vector (7 downto 0); |
clk_clk_i : in std_logic ; |
fetch_i : in std_logic ; |
nmi_n_i : in std_logic ; |
ld_low_i : in std_logic ; |
ld_sp_i : in std_logic ; |
rst_rst_n_i : in std_logic ; |
nmi_o : out std_logic |
sel_sp_as_i : in std_logic ; |
sel_sp_in_i : in std_logic ; |
adr_sp_o : out std_logic_vector (15 downto 0) |
); |
end component; |
|
-- Optional embedded configurations |
-- pragma synthesis_off |
for all : ALU use entity R65C02_TC.ALU; |
for all : FSM_Execution_Unit use entity R65C02_TC.FSM_Execution_Unit; |
for all : FSM_NMI use entity R65C02_TC.FSM_NMI; |
for all : RegBank_AXY use entity R65C02_TC.RegBank_AXY; |
for all : Reg_PC use entity R65C02_TC.Reg_PC; |
for all : Reg_SP use entity R65C02_TC.Reg_SP; |
for all : fsm_core_V2_1 use entity R65C02_TC.fsm_core_V2_1; |
for all : fsm_nmi use entity R65C02_TC.fsm_nmi; |
-- pragma synthesis_on |
|
|
begin |
|
-- ModuleWare code(v1.9) for instance 'U_5' of 'inv' |
rst_rst_o_i <= not(rst_rst_n_i); |
-- ModuleWare code(v1.9) for instance 'U_11' of 'add' |
mw_U_11temp_din0 <= '0' & ch_a_o_i; |
mw_U_11temp_din1 <= '0' & ch_b_o_i; |
u_11combo_proc: process (mw_U_11temp_din0, mw_U_11temp_din1) |
variable temp_carry : std_logic; |
begin |
temp_carry := '0'; |
mw_U_11sum <= unsigned(mw_U_11temp_din0) + unsigned(mw_U_11temp_din1) + temp_carry; |
end process u_11combo_proc; |
d_alu_o_i <= conv_std_logic_vector(mw_U_11sum(7 downto 0),8); |
reg_0flag_o_i <= mw_U_11sum(8) ; |
|
-- ModuleWare code(v1.9) for instance 'U_8' of 'inv' |
reg_1flag_o_i <= not(d_alu_or_o_i); |
|
-- ModuleWare code(v1.9) for instance 'U_9' of 'inv' |
reg_7flag_o_i <= not(d_alu_n_o_i); |
|
-- ModuleWare code(v1.9) for instance 'U_10' of 'inv' |
d_alu_n_o_i <= not(d_alu_o_i(7)); |
|
-- ModuleWare code(v1.9) for instance 'U_7' of 'por' |
d_alu_or_o_i <= d_alu_o_i(0) or d_alu_o_i(1) or d_alu_o_i(2) or d_alu_o_i(3) or d_alu_o_i(4) or d_alu_o_i(5) or d_alu_o_i(6) or d_alu_o_i(7); |
|
-- Instance port mappings. |
U_3 : ALU |
U_4 : FSM_Execution_Unit |
port map ( |
ch_a_i => ch_a_o_i, |
ch_b_i => ch_b_o_i, |
reg_0flag_core_i => reg_0flag_core_o_i, |
reg_3flag_core_i => reg_3flag_core_o_i, |
reg_7flag_core_i => reg_7flag_core_o_i, |
sel_alu_as_i => sel_alu_as_o_i, |
sel_alu_out_i => sel_alu_out_o_i, |
d_alu_o => d_alu_o_i, |
reg_0flag_o => reg_0flag_o_i, |
reg_1flag_o => reg_1flag_o_i, |
reg_6flag_o => reg_6flag_o_i, |
reg_7flag_o => reg_7flag_o_i |
adr_nxt_pc_i => adr_nxt_pc_o_i, |
adr_pc_i => adr_pc_o_i, |
adr_sp_i => adr_sp_o_i, |
clk_clk_i => clk_clk_i, |
d_alu_i => d_alu_o_i, |
d_i => d_i, |
d_regs_out_i => d_regs_out_o_i, |
irq_n_i => irq_n_i, |
nmi_i => nmi_o_i, |
q_a_i => q_a_o_i, |
q_x_i => q_x_o_i, |
q_y_i => q_y_o_i, |
rdy_i => rdy_i, |
reg_0flag_i => reg_0flag_o_i, |
reg_1flag_i => reg_1flag_o_i, |
reg_7flag_i => reg_7flag_o_i, |
rst_rst_n_i => rst_rst_n_i, |
so_n_i => so_n_i, |
a_o => a_o, |
adr_o => adr_o_i, |
ch_a_o => ch_a_o_i, |
ch_b_o => ch_b_o_i, |
d_o => d_o, |
d_regs_in_o => d_regs_in_o_i, |
fetch_o => fetch_o_i, |
ld_o => ld_o_i, |
ld_pc_o => ld_pc_o_i, |
ld_sp_o => ld_sp_o_i, |
load_regs_o => load_regs_o_i, |
offset_o => offset_o_i, |
rd_o => rd_o, |
sel_pc_as_o => sel_pc_as_o_i, |
sel_pc_in_o => sel_pc_in_o_i, |
sel_pc_val_o => sel_pc_val_o_i, |
sel_rb_in_o => sel_rb_in_o_i, |
sel_rb_out_o => sel_rb_out_o_i, |
sel_reg_o => sel_reg_o_i, |
sel_sp_as_o => sel_sp_as_o_i, |
sel_sp_in_o => sel_sp_in_o_i, |
sync_o => sync_o, |
wr_n_o => wr_n_o, |
wr_o => wr_o |
); |
U_3 : FSM_NMI |
port map ( |
clk_clk_i => clk_clk_i, |
fetch_i => fetch_o_i, |
nmi_n_i => nmi_n_i, |
rst_rst_n_i => rst_rst_n_i, |
nmi_o => nmi_o_i |
); |
U_2 : RegBank_AXY |
port map ( |
clk_clk_i => clk_clk_i, |
d_regs_in_i => d_regs_in_o_i, |
load_regs_i => ld_regs_o_i, |
rst_rst_i => rst_rst_o_i, |
load_regs_i => load_regs_o_i, |
rst_rst_n_i => rst_rst_n_i, |
sel_rb_in_i => sel_rb_in_o_i, |
sel_rb_out_i => sel_rb_out_o_i(1 DOWNTO 0), |
sel_rb_out_i => sel_rb_out_o_i, |
sel_reg_i => sel_reg_o_i, |
d_regs_out_o => d_regs_out_o_i, |
q_a_o => q_a_o_i, |
293,89 → 319,23
ld_i => ld_o_i, |
ld_pc_i => ld_pc_o_i, |
offset_i => offset_o_i, |
rst_rst_i => rst_rst_o_i, |
rst_rst_n_i => rst_rst_n_i, |
sel_pc_as_i => sel_pc_as_o_i, |
sel_pc_in_i => sel_pc_in_o_i(0), |
sel_pc_in_i => sel_pc_in_o_i, |
sel_pc_val_i => sel_pc_val_o_i, |
adr_nxt_pc_o => adr_nxt_pc_o_i, |
adr_pc_o => adr_pc_o_i, |
cout_o_i => cout_pc_o_i |
adr_pc_o => adr_pc_o_i |
); |
U_1 : Reg_SP |
port map ( |
adr_sp_i => adr_o_i, |
clk_clk_i => clk_clk_i, |
ld_i => ld_o_i, |
ld_sp_i => ld_sp_o_i, |
rst_rst_i => rst_rst_o_i, |
sel_sp_as_i => sel_sp_as_o_i, |
sel_sp_in_i => sel_sp_in_o_i(0), |
sel_sp_val_i => sel_sp_val_o_i(0), |
adr_nxt_sp_o => adr_nxt_sp_o_i, |
adr_sp_o => adr_sp_o_i |
); |
U_4 : fsm_core_V2_1 |
port map ( |
adr_nxt_pc_i => adr_nxt_pc_o_i, |
adr_nxt_sp_i => adr_nxt_sp_o_i, |
adr_pc_i => adr_pc_o_i, |
adr_sp_i => adr_sp_o_i, |
clk_clk_i => clk_clk_i, |
cout_pc_i => cout_pc_o_i, |
d_alu_i => d_alu_o_i, |
d_i => d_i, |
d_regs_out_i => d_regs_out_o_i, |
irq_n_i => irq_n_i, |
nmi_i => nmi_o_i, |
q_a_i => q_a_o_i, |
q_x_i => q_x_o_i, |
q_y_i => q_y_o_i, |
rdy_i => rdy_i, |
reg_0flag_i => reg_0flag_o_i, |
reg_1flag_i => reg_1flag_o_i, |
reg_6flag_i => reg_6flag_o_i, |
reg_7flag_i => reg_7flag_o_i, |
rst_rst_n_i => rst_rst_n_i, |
so_n_i => so_n_i, |
a_o => a_o, |
adr_o => adr_o_i, |
ch_a_o => ch_a_o_i, |
ch_b_o => ch_b_o_i, |
d_o => d_o, |
d_regs_in_o => d_regs_in_o_i, |
fetch_o => fetch_o_i, |
ld_o => ld_o_i, |
ld_pc_o => ld_pc_o_i, |
ld_regs_o => ld_regs_o_i, |
ld_sp_o => ld_sp_o_i, |
offset_o => offset_o_i, |
rd_o => rd_o, |
reg_0flag_o => reg_0flag_core_o_i, |
reg_3flag_o => reg_3flag_core_o_i, |
reg_7flag_o => reg_7flag_core_o_i, |
sync_o => sync_o, |
unused_reg_1flag_o => open, |
wr_n_o => wr_n_o, |
wr_o => wr_o, |
sel_alu_as_o_i => sel_alu_as_o_i, |
sel_alu_out_o_i => sel_alu_out_o_i, |
sel_pc_as_o_i => sel_pc_as_o_i, |
sel_pc_in_o_i => sel_pc_in_o_i, |
sel_pc_val_o_i => sel_pc_val_o_i, |
sel_rb_in_o_i => sel_rb_in_o_i, |
sel_rb_out_o_i => sel_rb_out_o_i, |
sel_reg_o_i => sel_reg_o_i, |
sel_sp_as_o_i => sel_sp_as_o_i, |
sel_sp_in_o_i => sel_sp_in_o_i, |
sel_sp_val_o_i => sel_sp_val_o_i |
); |
U_6 : fsm_nmi |
port map ( |
adr_low_i => adr_o_i(7 DOWNTO 0), |
clk_clk_i => clk_clk_i, |
fetch_i => fetch_o_i, |
nmi_n_i => nmi_n_i, |
ld_low_i => ld_o_i(0), |
ld_sp_i => ld_sp_o_i, |
rst_rst_n_i => rst_rst_n_i, |
nmi_o => nmi_o_i |
sel_sp_as_i => sel_sp_as_o_i, |
sel_sp_in_i => sel_sp_in_o_i, |
adr_sp_o => adr_sp_o_i |
); |
|
end struct; |
/trunk/rtl/vhdl/fsm_nmi.vhd
1,8 → 1,8
-- VHDL Entity R65C02_TC.fsm_nmi.symbol |
-- VHDL Entity R65C02_TC.FSM_NMI.symbol |
-- |
-- Created: |
-- by - eda.UNKNOWN (ENTWICKL4-XP-PR) |
-- at - 20:01:57 12.08.2008 |
-- by - eda.UNKNOWN (TEST) |
-- at - 22:45:35 03.01.2009 |
-- |
-- Generated by Mentor Graphics' HDL Designer(TM) 2007.1a (Build 13) |
-- |
10,18 → 10,18
USE ieee.std_logic_1164.all; |
USE ieee.std_logic_arith.all; |
|
entity fsm_nmi is |
port( |
clk_clk_i : in std_logic; |
fetch_i : in std_logic; |
nmi_n_i : in std_logic; |
rst_rst_n_i : in std_logic; |
nmi_o : out std_logic |
ENTITY FSM_NMI IS |
PORT( |
clk_clk_i : IN std_logic; |
fetch_i : IN std_logic; |
nmi_n_i : IN std_logic; |
rst_rst_n_i : IN std_logic; |
nmi_o : OUT std_logic |
); |
|
-- Declarations |
|
end fsm_nmi ; |
END FSM_NMI ; |
|
-- Jens-D. Gutschmidt Project: R65C02_TC |
|
51,20 → 51,30
|
-- |
|
-- $Log: not supported by cvs2svn $ |
-- $Log: not supported by cvs2svn $ |
-- Revision 1.3 2009/01/04 10:20:52 eda |
-- Changes for cosmetic issues only |
-- |
-- Revision 1.2 2009/01/04 09:23:15 eda |
-- - Delete unused nets and blocks (same as R6502_TC) |
-- - Rename blocks |
-- - Re-arrage FSM symbols in block FSM_Execution_Unit |
-- |
|
-- <<-- more -->> |
|
-- Title: FSM for NMI |
|
-- Path: R65C02_TC/fsm_nmi/fsm |
-- Path: R65C02_TC/FSM_NMI/fsm |
|
-- Edited: by eda on 17 Apr 2008 |
-- Edited: by eda on 03 Jan 2009 |
|
-- |
-- VHDL Architecture R65C02_TC.fsm_nmi.fsm |
-- VHDL Architecture R65C02_TC.FSM_NMI.fsm |
-- |
-- Created: |
-- by - eda.UNKNOWN (ENTWICKL4-XP-PR) |
-- at - 20:01:57 12.08.2008 |
-- by - eda.UNKNOWN (TEST) |
-- at - 22:45:35 03.01.2009 |
-- |
-- Generated by Mentor Graphics' HDL Designer(TM) 2007.1a (Build 13) |
-- |
72,9 → 82,9
USE ieee.std_logic_1164.all; |
USE ieee.std_logic_arith.all; |
|
architecture fsm of fsm_nmi is |
ARCHITECTURE fsm OF FSM_NMI IS |
|
type state_type is ( |
TYPE STATE_TYPE IS ( |
idle, |
idle1, |
idle2, |
82,81 → 92,83
); |
|
-- State vector declaration |
attribute state_vector : string; |
attribute state_vector of fsm : architecture is "current_state"; |
ATTRIBUTE state_vector : string; |
ATTRIBUTE state_vector OF fsm : ARCHITECTURE IS "current_state"; |
|
-- Declare current and next state signals |
signal current_state : state_type; |
signal next_state : state_type; |
SIGNAL current_state : STATE_TYPE; |
SIGNAL next_state : STATE_TYPE; |
|
-- Declare any pre-registered internal signals |
signal nmi_o_cld : std_logic ; |
SIGNAL nmi_o_cld : std_logic ; |
|
begin |
BEGIN |
|
----------------------------------------------------------------- |
clocked_proc : process ( |
clocked_proc : PROCESS ( |
clk_clk_i, |
rst_rst_n_i |
) |
----------------------------------------------------------------- |
begin |
if (rst_rst_n_i = '0') then |
BEGIN |
IF (rst_rst_n_i = '0') THEN |
current_state <= idle; |
-- Default Reset Values |
nmi_o_cld <= '0'; |
elsif (clk_clk_i'event and clk_clk_i = '1') then |
ELSIF (clk_clk_i'EVENT AND clk_clk_i = '1') THEN |
current_state <= next_state; |
-- Default Assignment To Internals |
nmi_o_cld <= '0'; |
|
-- Combined Actions |
case current_state is |
when IMP => |
CASE current_state IS |
WHEN IMP => |
nmi_o_cld <= '1'; |
when others => |
null; |
end case; |
end if; |
end process clocked_proc; |
WHEN OTHERS => |
NULL; |
END CASE; |
END IF; |
END PROCESS clocked_proc; |
|
----------------------------------------------------------------- |
nextstate_proc : process ( |
nextstate_proc : PROCESS ( |
current_state, |
fetch_i, |
nmi_n_i |
) |
----------------------------------------------------------------- |
begin |
case current_state is |
when idle => |
if (nmi_n_i = '1') then |
BEGIN |
CASE current_state IS |
WHEN idle => |
IF (nmi_n_i = '1') THEN |
next_state <= idle1; |
else |
ELSE |
next_state <= idle; |
end if; |
when idle1 => |
if (nmi_n_i = '0') then |
END IF; |
WHEN idle1 => |
IF (nmi_n_i = '0') THEN |
next_state <= idle2; |
else |
ELSE |
next_state <= idle1; |
end if; |
when idle2 => |
if (nmi_n_i = '0') then |
END IF; |
WHEN idle2 => |
IF (nmi_n_i = '0') THEN |
next_state <= IMP; |
else |
ELSE |
next_state <= idle; |
end if; |
when IMP => |
if (fetch_i = '1') then |
END IF; |
WHEN IMP => |
IF (fetch_i = '1') THEN |
next_state <= idle; |
end if; |
when others => |
ELSE |
next_state <= IMP; |
END IF; |
WHEN OTHERS => |
next_state <= idle; |
end case; |
end process nextstate_proc; |
END CASE; |
END PROCESS nextstate_proc; |
|
-- Concurrent Statements |
-- Clocked output assignments |
nmi_o <= nmi_o_cld; |
end fsm; |
END fsm; |
/trunk/rtl/vhdl/regbank_axy.vhd
2,7 → 2,7
-- |
-- Created: |
-- by - eda.UNKNOWN (ENTWICKL4-XP-PR) |
-- at - 20:01:56 12.08.2008 |
-- at - 20:45:03 03.01.2009 |
-- |
-- Generated by Mentor Graphics' HDL Designer(TM) 2007.1a (Build 13) |
-- |
15,8 → 15,8
clk_clk_i : in std_logic; |
d_regs_in_i : in std_logic_vector (7 downto 0); |
load_regs_i : in std_logic; |
rst_rst_i : in std_logic; |
sel_rb_in_i : in std_logic_vector (2 downto 0); |
rst_rst_n_i : in std_logic; |
sel_rb_in_i : in std_logic_vector (1 downto 0); |
sel_rb_out_i : in std_logic_vector (1 downto 0); |
sel_reg_i : in std_logic_vector (1 downto 0); |
d_regs_out_o : out std_logic_vector (7 downto 0); |
43,17 → 43,25
-- |
-- CVS Revisins History |
-- |
-- $Log: not supported by cvs2svn $ |
-- |
-- $Log: not supported by cvs2svn $ |
-- Revision 1.3 2009/01/04 10:20:51 eda |
-- Changes for cosmetic issues only |
-- |
-- Revision 1.2 2009/01/04 09:23:15 eda |
-- - Delete unused nets and blocks (same as R6502_TC) |
-- - Rename blocks |
-- - Re-arrage FSM symbols in block FSM_Execution_Unit |
-- |
-- <<-- more -->> |
-- Title: Register Bank for register A, X and Y |
-- Path: R65C02_TC/RegBank_AXY/struct |
-- Edited: by eda on 11 Aug 2008 |
-- Edited: by eda on 02 Jan 2009 |
-- |
-- VHDL Architecture R65C02_TC.RegBank_AXY.struct |
-- |
-- Created: |
-- by - eda.UNKNOWN (ENTWICKL4-XP-PR) |
-- at - 20:01:56 12.08.2008 |
-- at - 20:45:04 03.01.2009 |
-- |
-- Generated by Mentor Graphics' HDL Designer(TM) 2007.1a (Build 13) |
-- |
67,11 → 75,11
-- Architecture declarations |
|
-- Internal signal declarations |
signal dout_o_i : std_logic_vector(7 downto 0); |
signal ld_o_i : std_logic_vector(3 downto 0); |
signal ld : std_logic_vector(2 downto 0); |
signal load1_o_i : std_logic; |
signal load2_o_i : std_logic; |
signal load_o_i : std_logic; |
signal q_mux_o_i : std_logic_vector(7 downto 0); |
signal val_zero : std_logic_vector(7 downto 0); |
|
-- Implicit buffer signal declarations |
91,21 → 99,16
|
|
begin |
-- Architecture concurrent statements |
-- HDL Embedded Text Block 1 eb1 |
-- eb1 1 |
val_zero (7 downto 0) <= X"00"; |
|
|
-- ModuleWare code(v1.9) for instance 'U_0' of 'adff' |
q_a_o_internal <= mw_U_0reg_cval; |
u_0seq_proc: process (clk_clk_i, rst_rst_i) |
u_0seq_proc: process (clk_clk_i, rst_rst_n_i) |
begin |
if (rst_rst_i = '1') then |
if (rst_rst_n_i = '0') then |
mw_U_0reg_cval <= "00000000"; |
elsif (clk_clk_i'event and clk_clk_i='1') then |
if (load_o_i = '1') then |
mw_U_0reg_cval <= dout_o_i; |
mw_U_0reg_cval <= q_mux_o_i; |
end if; |
end if; |
end process u_0seq_proc; |
112,13 → 115,13
|
-- ModuleWare code(v1.9) for instance 'U_4' of 'adff' |
q_x_o_internal <= mw_U_4reg_cval; |
u_4seq_proc: process (clk_clk_i, rst_rst_i) |
u_4seq_proc: process (clk_clk_i, rst_rst_n_i) |
begin |
if (rst_rst_i = '1') then |
if (rst_rst_n_i = '0') then |
mw_U_4reg_cval <= "00000000"; |
elsif (clk_clk_i'event and clk_clk_i='1') then |
if (load1_o_i = '1') then |
mw_U_4reg_cval <= dout_o_i; |
mw_U_4reg_cval <= q_mux_o_i; |
end if; |
end if; |
end process u_4seq_proc; |
125,36 → 128,38
|
-- ModuleWare code(v1.9) for instance 'U_5' of 'adff' |
q_y_o_internal <= mw_U_5reg_cval; |
u_5seq_proc: process (clk_clk_i, rst_rst_i) |
u_5seq_proc: process (clk_clk_i, rst_rst_n_i) |
begin |
if (rst_rst_i = '1') then |
if (rst_rst_n_i = '0') then |
mw_U_5reg_cval <= "00000000"; |
elsif (clk_clk_i'event and clk_clk_i='1') then |
if (load2_o_i = '1') then |
mw_U_5reg_cval <= dout_o_i; |
mw_U_5reg_cval <= q_mux_o_i; |
end if; |
end if; |
end process u_5seq_proc; |
|
-- ModuleWare code(v1.9) for instance 'U_6' of 'and' |
load_o_i <= load_regs_i and ld_o_i(0); |
load_o_i <= load_regs_i and ld(0); |
|
-- ModuleWare code(v1.9) for instance 'U_7' of 'and' |
load1_o_i <= load_regs_i and ld_o_i(1); |
load1_o_i <= load_regs_i and ld(1); |
|
-- ModuleWare code(v1.9) for instance 'U_8' of 'and' |
load2_o_i <= load_regs_i and ld_o_i(2); |
load2_o_i <= load_regs_i and ld(2); |
|
-- ModuleWare code(v1.9) for instance 'U_11' of 'constval' |
val_zero <= "00000000"; |
|
-- ModuleWare code(v1.9) for instance 'U_1' of 'decoder1' |
u_1combo_proc: process (sel_reg_i) |
begin |
ld_o_i <= (others => '0'); |
ld <= (others => '0'); |
case sel_reg_i is |
when "00" => ld_o_i(0) <= '1'; |
when "01" => ld_o_i(1) <= '1'; |
when "10" => ld_o_i(2) <= '1'; |
when "11" => ld_o_i(3) <= '1'; |
when others => ld_o_i <= (others => '0'); |
when "00" => ld(0) <= '1'; |
when "01" => ld(1) <= '1'; |
when "10" => ld(2) <= '1'; |
when others => ld <= (others => '0'); |
end case; |
end process u_1combo_proc; |
|
173,14 → 178,14
|
-- ModuleWare code(v1.9) for instance 'U_3' of 'mux' |
u_3combo_proc: process(q_a_o_internal, q_y_o_internal, q_x_o_internal, |
d_regs_in_i, sel_rb_in_i(1 DOWNTO 0)) |
d_regs_in_i, sel_rb_in_i) |
begin |
case sel_rb_in_i(1 DOWNTO 0) is |
when "00" => dout_o_i <= q_a_o_internal; |
when "01" => dout_o_i <= q_y_o_internal; |
when "10" => dout_o_i <= q_x_o_internal; |
when "11" => dout_o_i <= d_regs_in_i; |
when others => dout_o_i <= (others => 'X'); |
case sel_rb_in_i is |
when "00" => q_mux_o_i <= q_a_o_internal; |
when "01" => q_mux_o_i <= q_y_o_internal; |
when "10" => q_mux_o_i <= q_x_o_internal; |
when "11" => q_mux_o_i <= d_regs_in_i; |
when others => q_mux_o_i <= (others => 'X'); |
end case; |
end process u_3combo_proc; |
|
/trunk/doc/HTML/R65C02_TC/@reg_@p@c/struct_bd.htm
4,7 → 4,7
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> |
<title>R65C02_TC\Reg_PC\struct_bd</title> |
<!-- Generated by HDL Designer --> |
<!-- at 18:05:58 on 01.12.2008 --> |
<!-- at 11:17:44 on 04.01.2009 --> |
|
|
<script language='javascript'> |
/trunk/doc/HTML/R65C02_TC/@reg_@p@c/struct_bdToolbarFrame0.htm
5,7 → 5,7
|
<title>R65C02_TC\Reg_PC\struct_bd</title> |
<!-- Generated by HDL Designer --> |
<!-- at 18:05:58 on 01.12.2008 --> |
<!-- at 11:17:44 on 04.01.2009 --> |
|
|
<SCRIPT SRC="../../scripts/is.js"> |
/trunk/doc/HTML/R65C02_TC/@reg_@p@c/struct_bdToolbarFrame1.htm
5,7 → 5,7
|
<title>R65C02_TC\Reg_PC\struct_bd</title> |
<!-- Generated by HDL Designer --> |
<!-- at 18:05:58 on 01.12.2008 --> |
<!-- at 11:17:44 on 04.01.2009 --> |
|
|
<SCRIPT SRC="../../scripts/is.js"> |
/trunk/doc/HTML/R65C02_TC/@reg_@p@c/struct_bdToolbarFrame2.htm
5,7 → 5,7
|
<title>R65C02_TC\Reg_PC\struct_bd</title> |
<!-- Generated by HDL Designer --> |
<!-- at 18:05:58 on 01.12.2008 --> |
<!-- at 11:17:44 on 04.01.2009 --> |
|
|
<SCRIPT SRC="../../scripts/is.js"> |
/trunk/doc/HTML/R65C02_TC/@reg_@p@c/struct_bdToolbarFrame3.htm
5,7 → 5,7
|
<title>R65C02_TC\Reg_PC\struct_bd</title> |
<!-- Generated by HDL Designer --> |
<!-- at 18:05:58 on 01.12.2008 --> |
<!-- at 11:17:44 on 04.01.2009 --> |
|
|
<SCRIPT SRC="../../scripts/is.js"> |
/trunk/doc/HTML/R65C02_TC/@reg_@p@c/struct_bdContentFrame0.htm
4,7 → 4,7
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> |
|
<!-- Generated by HDL Designer --> |
<!-- at 18:05:58 on 01.12.2008 --> |
<!-- at 11:17:44 on 04.01.2009 --> |
|
</head> |
|
165,12 → 165,9
<SCRIPT LANGUAGE="javascript"> |
<!-- |
|
uart_topImage = new hdsImage(1231,1067,'struct_bd.jpg', 'uart_top'); |
uart_topImage = new hdsImage(1517,1067,'struct_bd.jpg', 'uart_top'); |
|
// Block Diagram hot spots |
areas0[areas0.length] = new hotArea(76,650,151,725, 'struct_bd@072eb2.htm', 'eb2', 1); |
areas0[areas0.length] = new hotArea(863,250,938,287, 'struct_bd@072eb1.htm', 'eb1', 1); |
areas0[areas0.length] = new hotArea(863,562,938,600, 'struct_bd@072eb3.htm', 'eb3', 1); |
areas = areas0 |
|
|
/trunk/doc/HTML/R65C02_TC/@reg_@p@c/struct_bdContentFrame1.htm
4,7 → 4,7
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> |
<title>R65C02_TC\Reg_PC\struct_bd</title> |
<!-- Generated by HDL Designer --> |
<!-- at 18:05:58 on 01.12.2008 --> |
<!-- at 11:17:44 on 04.01.2009 --> |
|
<script language='javascript'> |
|
52,32 → 52,32
<H4>Declarations</H4> |
<H4>Ports:</H4> |
<pre CLASS=indent> |
clk_clk_i : <span class=T>std_logic</span> |
rst_rst_i : <span class=T>std_logic</span> |
sel_pc_in_i : <span class=T>std_logic</span> |
ld_i : <span class=T>std_logic_vector</span>(1 <span class=K>DOWNTO</span> 0) |
adr_i : <span class=T>std_logic_vector</span>(15 <span class=K>DOWNTO</span> 0) |
adr_pc_o : <span class=T>std_logic_vector</span>(15 <span class=K>DOWNTO</span> 0) |
sel_pc_val_i : <span class=T>std_logic_vector</span>(1 <span class=K>DOWNTO</span> 0) |
sel_pc_as_i : <span class=T>std_logic</span> |
cout_o_i : <span class=T>std_logic</span> |
offset_i : <span class=T>std_logic_vector</span>(15 <span class=K>DOWNTO</span> 0) |
ld_pc_i : <span class=T>std_logic</span> |
adr_nxt_pc_o : <span class=T>std_logic_vector</span>(15 <span class=K>DOWNTO</span> 0)</pre> |
clk_clk_i : <span class=T>std_logic</span> |
rst_rst_n_i : <span class=T>std_logic</span> |
sel_pc_in_i : <span class=T>std_logic</span> |
ld_i : <span class=T>std_logic_vector</span>(1 <span class=K>DOWNTO</span> 0) |
adr_i : <span class=T>std_logic_vector</span>(15 <span class=K>DOWNTO</span> 0) |
adr_pc_o : <span class=T>std_logic_vector</span>(15 <span class=K>DOWNTO</span> 0) |
sel_pc_val_i : <span class=T>std_logic_vector</span>(1 <span class=K>DOWNTO</span> 0) |
sel_pc_as_i : <span class=T>std_logic</span> |
offset_i : <span class=T>std_logic_vector</span>(15 <span class=K>DOWNTO</span> 0) |
ld_pc_i : <span class=T>std_logic</span> |
adr_nxt_pc_o : <span class=T>std_logic_vector</span>(15 <span class=K>DOWNTO</span> 0)</pre> |
<H4>Diagram Signals:</H4> |
<pre CLASS=indent> |
<span class=K>signal</span> load_o_i : <span class=T>std_logic</span> |
<span class=K>signal</span> val_zero : <span class=T>std_logic_vector</span>(7 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> val_one : <span class=T>std_logic_vector</span>(7 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> val_two : <span class=T>std_logic_vector</span>(7 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> dout1_o_i : <span class=T>std_logic_vector</span>(7 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> dout3_o_i : <span class=T>std_logic</span> |
<span class=K>signal</span> load3_o_i : <span class=T>std_logic</span> |
<span class=K>signal</span> d_o_i : <span class=T>std_logic_vector</span>(7 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> d1_o_i : <span class=T>std_logic_vector</span>(7 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> dout_o_i : <span class=T>std_logic</span> |
<span class=K>signal</span> dout5_o_i : <span class=T>std_logic_vector</span>(7 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> dout6_o_i : <span class=T>std_logic_vector</span>(7 <span class=K>DOWNTO</span> 0)</pre> |
<span class=K>signal</span> load_o_i : <span class=T>std_logic</span> |
<span class=K>signal</span> val_zero : <span class=T>std_logic_vector</span>(7 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> val_one : <span class=T>std_logic_vector</span>(7 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> as_n_o_i : <span class=T>std_logic</span> |
<span class=K>signal</span> cout_pc_o_i : <span class=T>std_logic</span> |
<span class=K>signal</span> load3_o_i : <span class=T>std_logic</span> |
<span class=K>signal</span> val_o_i : <span class=T>std_logic_vector</span>(7 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> ci_o_i : <span class=T>std_logic</span> |
<span class=K>signal</span> adr_pc_o_i : <span class=T>std_logic_vector</span>(15 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> adr_pc_low_o_i : <span class=T>std_logic_vector</span>(7 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> adr_pc_high_o_i : <span class=T>std_logic_vector</span>(7 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> offset_low_o_i : <span class=T>std_logic_vector</span>(7 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> offset_high_o_i : <span class=T>std_logic_vector</span>(7 <span class=K>DOWNTO</span> 0)</pre> |
<H4>Pre User:</H4> |
<pre CLASS=indent> |
</pre> |
/trunk/doc/HTML/R65C02_TC/@reg_@p@c/struct_bd.jpg
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
/trunk/doc/HTML/R65C02_TC/@reg_@p@c/struct_bdContentFrame2.htm
4,7 → 4,7
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> |
<title>R65C02_TC\Reg_PC\struct_bd</title> |
<!-- Generated by HDL Designer --> |
<!-- at 18:05:58 on 01.12.2008 --> |
<!-- at 11:17:44 on 04.01.2009 --> |
|
<script language='javascript'> |
|
/trunk/doc/HTML/R65C02_TC/@reg_@p@c/struct_bdContentFrame3.htm
4,7 → 4,7
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> |
<title>R65C02_TC\Reg_PC\struct_bd</title> |
<!-- Generated by HDL Designer --> |
<!-- at 18:05:58 on 01.12.2008 --> |
<!-- at 11:17:44 on 04.01.2009 --> |
|
<script language='javascript'> |
|
/trunk/doc/HTML/R65C02_TC/@reg_@s@p/struct_bd.htm
4,7 → 4,7
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> |
<title>R65C02_TC\Reg_SP\struct_bd</title> |
<!-- Generated by HDL Designer --> |
<!-- at 18:05:58 on 01.12.2008 --> |
<!-- at 11:17:44 on 04.01.2009 --> |
|
|
<script language='javascript'> |
/trunk/doc/HTML/R65C02_TC/@reg_@s@p/struct_bdToolbarFrame0.htm
5,7 → 5,7
|
<title>R65C02_TC\Reg_SP\struct_bd</title> |
<!-- Generated by HDL Designer --> |
<!-- at 18:05:58 on 01.12.2008 --> |
<!-- at 11:17:44 on 04.01.2009 --> |
|
|
<SCRIPT SRC="../../scripts/is.js"> |
/trunk/doc/HTML/R65C02_TC/@reg_@s@p/struct_bdToolbarFrame1.htm
5,7 → 5,7
|
<title>R65C02_TC\Reg_SP\struct_bd</title> |
<!-- Generated by HDL Designer --> |
<!-- at 18:05:58 on 01.12.2008 --> |
<!-- at 11:17:44 on 04.01.2009 --> |
|
|
<SCRIPT SRC="../../scripts/is.js"> |
/trunk/doc/HTML/R65C02_TC/@reg_@s@p/struct_bdToolbarFrame2.htm
5,7 → 5,7
|
<title>R65C02_TC\Reg_SP\struct_bd</title> |
<!-- Generated by HDL Designer --> |
<!-- at 18:05:58 on 01.12.2008 --> |
<!-- at 11:17:44 on 04.01.2009 --> |
|
|
<SCRIPT SRC="../../scripts/is.js"> |
/trunk/doc/HTML/R65C02_TC/@reg_@s@p/struct_bdToolbarFrame3.htm
5,7 → 5,7
|
<title>R65C02_TC\Reg_SP\struct_bd</title> |
<!-- Generated by HDL Designer --> |
<!-- at 18:05:58 on 01.12.2008 --> |
<!-- at 11:17:44 on 04.01.2009 --> |
|
|
<SCRIPT SRC="../../scripts/is.js"> |
/trunk/doc/HTML/R65C02_TC/@reg_@s@p/struct_bdContentFrame0.htm
4,7 → 4,7
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> |
|
<!-- Generated by HDL Designer --> |
<!-- at 18:05:58 on 01.12.2008 --> |
<!-- at 11:17:44 on 04.01.2009 --> |
|
</head> |
|
165,11 → 165,9
<SCRIPT LANGUAGE="javascript"> |
<!-- |
|
uart_topImage = new hdsImage(1231,1067,'struct_bd.jpg', 'uart_top'); |
uart_topImage = new hdsImage(1371,1067,'struct_bd.jpg', 'uart_top'); |
|
// Block Diagram hot spots |
areas0[areas0.length] = new hotArea(76,650,151,750, 'struct_bd@072eb2.htm', 'eb2', 1); |
areas0[areas0.length] = new hotArea(826,312,901,350, 'struct_bd@072eb3.htm', 'eb3', 1); |
areas = areas0 |
|
|
/trunk/doc/HTML/R65C02_TC/@reg_@s@p/struct_bdContentFrame1.htm
4,7 → 4,7
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> |
<title>R65C02_TC\Reg_SP\struct_bd</title> |
<!-- Generated by HDL Designer --> |
<!-- at 18:05:58 on 01.12.2008 --> |
<!-- at 11:17:44 on 04.01.2009 --> |
|
<script language='javascript'> |
|
52,27 → 52,22
<H4>Declarations</H4> |
<H4>Ports:</H4> |
<pre CLASS=indent> |
clk_clk_i : <span class=T>std_logic</span> |
rst_rst_i : <span class=T>std_logic</span> |
sel_sp_in_i : <span class=T>std_logic</span> |
ld_i : <span class=T>std_logic_vector</span>(1 <span class=K>DOWNTO</span> 0) |
adr_sp_i : <span class=T>std_logic_vector</span>(15 <span class=K>DOWNTO</span> 0) |
adr_sp_o : <span class=T>std_logic_vector</span>(15 <span class=K>DOWNTO</span> 0) |
sel_sp_val_i : <span class=T>std_logic</span> |
sel_sp_as_i : <span class=T>std_logic</span> |
ld_sp_i : <span class=T>std_logic</span> |
adr_nxt_sp_o : <span class=T>std_logic_vector</span>(15 <span class=K>DOWNTO</span> 0)</pre> |
clk_clk_i : <span class=T>std_logic</span> |
rst_rst_n_i : <span class=T>std_logic</span> |
sel_sp_in_i : <span class=T>std_logic</span> |
ld_low_i : <span class=T>std_logic</span> |
adr_low_i : <span class=T>std_logic_vector</span>(7 <span class=K>DOWNTO</span> 0) |
adr_sp_o : <span class=T>std_logic_vector</span>(15 <span class=K>DOWNTO</span> 0) |
sel_sp_as_i : <span class=T>std_logic</span> |
ld_sp_i : <span class=T>std_logic</span></pre> |
<H4>Diagram Signals:</H4> |
<pre CLASS=indent> |
<span class=K>signal</span> load_o_i : <span class=T>std_logic</span> |
<span class=K>signal</span> val_zero : <span class=T>std_logic_vector</span>(7 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> val_one : <span class=T>std_logic_vector</span>(7 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> val_two : <span class=T>std_logic_vector</span>(7 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> dout1_o_i : <span class=T>std_logic_vector</span>(7 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> dout2_o_i : <span class=T>std_logic_vector</span>(7 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> dout3_o_i : <span class=T>std_logic</span> |
<span class=K>signal</span> load3_o_i : <span class=T>std_logic</span> |
<span class=K>signal</span> d_o_i : <span class=T>std_logic_vector</span>(7 <span class=K>DOWNTO</span> 0)</pre> |
<span class=K>signal</span> val_one : <span class=T>std_logic_vector</span>(7 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> sp_as_n_o_i : <span class=T>std_logic</span> |
<span class=K>signal</span> load_o_i : <span class=T>std_logic</span> |
<span class=K>signal</span> adr_sp_low_o_i : <span class=T>std_logic_vector</span>(7 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> result_low_o_i : <span class=T>std_logic_vector</span>(7 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> result_low1_o_i : <span class=T>std_logic_vector</span>(7 <span class=K>DOWNTO</span> 0)</pre> |
<H4>Pre User:</H4> |
<pre CLASS=indent> |
</pre> |
/trunk/doc/HTML/R65C02_TC/@reg_@s@p/struct_bdContentFrame2.htm
4,7 → 4,7
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> |
<title>R65C02_TC\Reg_SP\struct_bd</title> |
<!-- Generated by HDL Designer --> |
<!-- at 18:05:58 on 01.12.2008 --> |
<!-- at 11:17:44 on 04.01.2009 --> |
|
<script language='javascript'> |
|
/trunk/doc/HTML/R65C02_TC/@reg_@s@p/struct_bd.jpg
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
/trunk/doc/HTML/R65C02_TC/@reg_@s@p/struct_bdContentFrame3.htm
4,7 → 4,7
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> |
<title>R65C02_TC\Reg_SP\struct_bd</title> |
<!-- Generated by HDL Designer --> |
<!-- at 18:05:58 on 01.12.2008 --> |
<!-- at 11:17:44 on 04.01.2009 --> |
|
<script language='javascript'> |
|
/trunk/doc/HTML/R65C02_TC/@r65@c02_@t@c/struct_bdToolbarFrame1.htm
5,7 → 5,7
|
<title>R65C02_TC\R65C02_TC\struct_bd</title> |
<!-- Generated by HDL Designer --> |
<!-- at 18:05:56 on 01.12.2008 --> |
<!-- at 11:17:42 on 04.01.2009 --> |
|
|
<SCRIPT SRC="../../scripts/is.js"> |
/trunk/doc/HTML/R65C02_TC/@r65@c02_@t@c/struct_bd.htm
4,7 → 4,7
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> |
<title>R65C02_TC\R65C02_TC\struct_bd</title> |
<!-- Generated by HDL Designer --> |
<!-- at 18:05:56 on 01.12.2008 --> |
<!-- at 11:17:42 on 04.01.2009 --> |
|
|
<script language='javascript'> |
/trunk/doc/HTML/R65C02_TC/@r65@c02_@t@c/struct_bdToolbarFrame2.htm
5,7 → 5,7
|
<title>R65C02_TC\R65C02_TC\struct_bd</title> |
<!-- Generated by HDL Designer --> |
<!-- at 18:05:56 on 01.12.2008 --> |
<!-- at 11:17:42 on 04.01.2009 --> |
|
|
<SCRIPT SRC="../../scripts/is.js"> |
/trunk/doc/HTML/R65C02_TC/@r65@c02_@t@c/struct_bdToolbarFrame3.htm
5,7 → 5,7
|
<title>R65C02_TC\R65C02_TC\struct_bd</title> |
<!-- Generated by HDL Designer --> |
<!-- at 18:05:56 on 01.12.2008 --> |
<!-- at 11:17:42 on 04.01.2009 --> |
|
|
<SCRIPT SRC="../../scripts/is.js"> |
/trunk/doc/HTML/R65C02_TC/@r65@c02_@t@c/struct_bdContentFrame0.htm
4,7 → 4,7
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> |
|
<!-- Generated by HDL Designer --> |
<!-- at 18:05:56 on 01.12.2008 --> |
<!-- at 11:17:42 on 04.01.2009 --> |
|
</head> |
|
/trunk/doc/HTML/R65C02_TC/@r65@c02_@t@c/struct_bdContentFrame1.htm
4,7 → 4,7
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> |
<title>R65C02_TC\R65C02_TC\struct_bd</title> |
<!-- Generated by HDL Designer --> |
<!-- at 18:05:56 on 01.12.2008 --> |
<!-- at 11:17:42 on 04.01.2009 --> |
|
<script language='javascript'> |
|
/trunk/doc/HTML/R65C02_TC/@r65@c02_@t@c/struct_bd.jpg
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
/trunk/doc/HTML/R65C02_TC/@r65@c02_@t@c/struct_bdContentFrame2.htm
4,7 → 4,7
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> |
<title>R65C02_TC\R65C02_TC\struct_bd</title> |
<!-- Generated by HDL Designer --> |
<!-- at 18:05:56 on 01.12.2008 --> |
<!-- at 11:17:42 on 04.01.2009 --> |
|
<script language='javascript'> |
|
/trunk/doc/HTML/R65C02_TC/@r65@c02_@t@c/struct_bdContentFrame3.htm
4,7 → 4,7
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> |
<title>R65C02_TC\R65C02_TC\struct_bd</title> |
<!-- Generated by HDL Designer --> |
<!-- at 18:05:56 on 01.12.2008 --> |
<!-- at 11:17:42 on 04.01.2009 --> |
|
<script language='javascript'> |
|
/trunk/doc/HTML/R65C02_TC/@r65@c02_@t@c/struct_bdToolbarFrame0.htm
5,7 → 5,7
|
<title>R65C02_TC\R65C02_TC\struct_bd</title> |
<!-- Generated by HDL Designer --> |
<!-- at 18:05:56 on 01.12.2008 --> |
<!-- at 11:17:42 on 04.01.2009 --> |
|
|
<SCRIPT SRC="../../scripts/is.js"> |
/trunk/doc/HTML/R65C02_TC/@core/struct_bdToolbarFrame1.htm
5,7 → 5,7
|
<title>R65C02_TC\Core\struct_bd</title> |
<!-- Generated by HDL Designer --> |
<!-- at 18:05:57 on 01.12.2008 --> |
<!-- at 11:17:43 on 04.01.2009 --> |
|
|
<SCRIPT SRC="../../scripts/is.js"> |
/trunk/doc/HTML/R65C02_TC/@core/struct_bd.htm
4,7 → 4,7
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> |
<title>R65C02_TC\Core\struct_bd</title> |
<!-- Generated by HDL Designer --> |
<!-- at 18:05:57 on 01.12.2008 --> |
<!-- at 11:17:43 on 04.01.2009 --> |
|
|
<script language='javascript'> |
/trunk/doc/HTML/R65C02_TC/@core/struct_bdToolbarFrame2.htm
5,7 → 5,7
|
<title>R65C02_TC\Core\struct_bd</title> |
<!-- Generated by HDL Designer --> |
<!-- at 18:05:57 on 01.12.2008 --> |
<!-- at 11:17:43 on 04.01.2009 --> |
|
|
<SCRIPT SRC="../../scripts/is.js"> |
/trunk/doc/HTML/R65C02_TC/@core/struct_bdToolbarFrame3.htm
5,7 → 5,7
|
<title>R65C02_TC\Core\struct_bd</title> |
<!-- Generated by HDL Designer --> |
<!-- at 18:05:57 on 01.12.2008 --> |
<!-- at 11:17:43 on 04.01.2009 --> |
|
|
<SCRIPT SRC="../../scripts/is.js"> |
/trunk/doc/HTML/R65C02_TC/@core/struct_bdContentFrame0.htm
4,7 → 4,7
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> |
|
<!-- Generated by HDL Designer --> |
<!-- at 18:05:57 on 01.12.2008 --> |
<!-- at 11:17:43 on 04.01.2009 --> |
|
</head> |
|
165,15 → 165,14
<SCRIPT LANGUAGE="javascript"> |
<!-- |
|
uart_topImage = new hdsImage(1697,1330,'struct_bd.jpg', 'uart_top'); |
uart_topImage = new hdsImage(1947,1330,'struct_bd.jpg', 'uart_top'); |
|
// Block Diagram hot spots |
areas0[areas0.length] = new hotArea(1267,88,1479,213, '../../R65C02_TC/@reg@bank_@a@x@y/struct_bd.htm', 'RegBank_AXY', 1); |
areas0[areas0.length] = new hotArea(704,88,892,238, '../../R65C02_TC/@reg_@p@c/struct_bd.htm', 'Reg_PC', 1); |
areas0[areas0.length] = new hotArea(704,462,904,662, '../../R65C02_TC/@reg_@s@p/struct_bd.htm', 'Reg_SP', 1); |
areas0[areas0.length] = new hotArea(1267,487,1442,625, '../../R65C02_TC/@a@l@u/struct_bd.htm', 'ALU', 1); |
areas0[areas0.length] = new hotArea(729,850,879,925, '../../R65C02_TC/fsm_nmi/fsm_sm.htm', 'fsm_nmi', 1); |
areas0[areas0.length] = new hotArea(167,500,404,1100, '../../R65C02_TC/fsm_core_@v2_1/fsm_sm.htm', 'fsm_core_V2_1', 1); |
areas0[areas0.length] = new hotArea(692,88,867,275, '../../R65C02_TC/@reg_@p@c/struct_bd.htm', 'Reg_PC', 1); |
areas0[areas0.length] = new hotArea(692,462,867,625, '../../R65C02_TC/@reg_@s@p/struct_bd.htm', 'Reg_SP', 1); |
areas0[areas0.length] = new hotArea(1442,88,1655,238, '../../R65C02_TC/@reg@bank_@a@x@y/struct_bd.htm', 'RegBank_AXY', 1); |
areas0[areas0.length] = new hotArea(180,500,430,1050, '../../R65C02_TC/@f@s@m_@execution_@unit/fsm_sm.htm', 'FSM_Execution_Unit', 1); |
areas0[areas0.length] = new hotArea(742,862,892,950, '../../R65C02_TC/@f@s@m_@n@m@i/fsm_sm.htm', 'FSM_NMI', 1); |
areas = areas0 |
|
|
/trunk/doc/HTML/R65C02_TC/@core/struct_bdContentFrame1.htm
4,7 → 4,7
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> |
<title>R65C02_TC\Core\struct_bd</title> |
<!-- Generated by HDL Designer --> |
<!-- at 18:05:57 on 01.12.2008 --> |
<!-- at 11:17:43 on 04.01.2009 --> |
|
<script language='javascript'> |
|
52,61 → 52,53
<H4>Declarations</H4> |
<H4>Ports:</H4> |
<pre CLASS=indent> |
clk_clk_i : <span class=T>std_logic</span> |
so_n_i : <span class=T>std_logic</span> |
irq_n_i : <span class=T>std_logic</span> |
rdy_i : <span class=T>std_logic</span> |
rst_rst_n_i : <span class=T>std_logic</span> |
d_o : <span class=T>std_logic_vector</span>(7 <span class=K>DOWNTO</span> 0) |
d_i : <span class=T>std_logic_vector</span>(7 <span class=K>DOWNTO</span> 0) |
rd_o : <span class=T>std_logic</span> |
sync_o : <span class=T>std_logic</span> |
wr_n_o : <span class=T>std_logic</span> |
wr_o : <span class=T>std_logic</span> |
nmi_n_i : <span class=T>std_logic</span> |
a_o : <span class=T>std_logic_vector</span>(15 <span class=K>DOWNTO</span> 0)</pre> |
clk_clk_i : <span class=T>std_logic</span> |
d_i : <span class=T>std_logic_vector</span>(7 <span class=K>DOWNTO</span> 0) |
rdy_i : <span class=T>std_logic</span> |
irq_n_i : <span class=T>std_logic</span> |
so_n_i : <span class=T>std_logic</span> |
a_o : <span class=T>std_logic_vector</span>(15 <span class=K>DOWNTO</span> 0) |
d_o : <span class=T>std_logic_vector</span>(7 <span class=K>DOWNTO</span> 0) |
rd_o : <span class=T>std_logic</span> |
wr_o : <span class=T>std_logic</span> |
wr_n_o : <span class=T>std_logic</span> |
sync_o : <span class=T>std_logic</span> |
rst_rst_n_i : <span class=T>std_logic</span> |
nmi_n_i : <span class=T>std_logic</span></pre> |
<H4>Diagram Signals:</H4> |
<pre CLASS=indent> |
<span class=K>signal</span> rst_rst_o_i : <span class=T>std_logic</span> |
<span class=K>signal</span> adr_o_i : <span class=T>std_logic_vector</span>(15 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> offset_o_i : <span class=T>std_logic_vector</span>(15 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> ch_a_o_i : <span class=T>std_logic_vector</span>(7 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> ch_b_o_i : <span class=T>std_logic_vector</span>(7 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> reg_0flag_core_o_i : <span class=T>std_logic</span> |
<span class=K>signal</span> reg_3flag_core_o_i : <span class=T>std_logic</span> |
<span class=K>signal</span> reg_7flag_core_o_i : <span class=T>std_logic</span> |
<span class=K>signal</span> adr_sp_o_i : <span class=T>std_logic_vector</span>(15 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> adr_pc_o_i : <span class=T>std_logic_vector</span>(15 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> ld_regs_o_i : <span class=T>std_logic</span> |
<span class=K>signal</span> ld_o_i : <span class=T>std_logic_vector</span>(1 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> reg_0flag_o_i : <span class=T>std_logic</span> |
<span class=K>signal</span> reg_1flag_o_i : <span class=T>std_logic</span> |
<span class=K>signal</span> reg_6flag_o_i : <span class=T>std_logic</span> |
<span class=K>signal</span> reg_7flag_o_i : <span class=T>std_logic</span> |
<span class=K>signal</span> d_regs_out_o_i : <span class=T>std_logic_vector</span>(7 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> d_alu_o_i : <span class=T>std_logic_vector</span>(7 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> cout_pc_o_i : <span class=T>std_logic</span> |
<span class=K>signal</span> d_regs_in_o_i : <span class=T>std_logic_vector</span>(7 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> sel_reg_o_i : <span class=T>std_logic_vector</span>(1 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> ld_pc_o_i : <span class=T>std_logic</span> |
<span class=K>signal</span> sel_alu_out_o_i : <span class=T>std_logic_vector</span>(2 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> sel_rb_out_o_i : <span class=T>std_logic_vector</span>(2 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> sel_rb_in_o_i : <span class=T>std_logic_vector</span>(2 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> sel_pc_in_o_i : <span class=T>std_logic_vector</span>(1 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> ld_sp_o_i : <span class=T>std_logic</span> |
<span class=K>signal</span> sel_sp_in_o_i : <span class=T>std_logic_vector</span>(1 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> sel_sp_val_o_i : <span class=T>std_logic_vector</span>(1 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> sel_pc_val_o_i : <span class=T>std_logic_vector</span>(1 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> sel_sp_as_o_i : <span class=T>std_logic</span> |
<span class=K>signal</span> sel_pc_as_o_i : <span class=T>std_logic</span> |
<span class=K>signal</span> sel_alu_as_o_i : <span class=T>std_logic</span> |
<span class=K>signal</span> adr_nxt_pc_o_i : <span class=T>std_logic_vector</span>(15 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> adr_nxt_sp_o_i : <span class=T>std_logic_vector</span>(15 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> q_a_o_i : <span class=T>std_logic_vector</span>(7 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> q_x_o_i : <span class=T>std_logic_vector</span>(7 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> q_y_o_i : <span class=T>std_logic_vector</span>(7 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> nmi_o_i : <span class=T>std_logic</span> |
<span class=K>signal</span> fetch_o_i : <span class=T>std_logic</span></pre> |
<span class=K>signal</span> adr_o_i : <span class=T>std_logic_vector</span>(15 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> offset_o_i : <span class=T>std_logic_vector</span>(15 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> ch_a_o_i : <span class=T>std_logic_vector</span>(7 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> ch_b_o_i : <span class=T>std_logic_vector</span>(7 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> adr_sp_o_i : <span class=T>std_logic_vector</span>(15 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> adr_pc_o_i : <span class=T>std_logic_vector</span>(15 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> load_regs_o_i : <span class=T>std_logic</span> |
<span class=K>signal</span> ld_o_i : <span class=T>std_logic_vector</span>(1 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> reg_0flag_o_i : <span class=T>std_logic</span> |
<span class=K>signal</span> reg_1flag_o_i : <span class=T>std_logic</span> |
<span class=K>signal</span> reg_7flag_o_i : <span class=T>std_logic</span> |
<span class=K>signal</span> d_regs_out_o_i : <span class=T>std_logic_vector</span>(7 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> d_alu_o_i : <span class=T>std_logic_vector</span>(7 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> sel_reg_o_i : <span class=T>std_logic_vector</span>(1 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> ld_pc_o_i : <span class=T>std_logic</span> |
<span class=K>signal</span> sel_rb_out_o_i : <span class=T>std_logic_vector</span>(1 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> sel_rb_in_o_i : <span class=T>std_logic_vector</span>(1 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> sel_pc_in_o_i : <span class=T>std_logic</span> |
<span class=K>signal</span> ld_sp_o_i : <span class=T>std_logic</span> |
<span class=K>signal</span> sel_sp_in_o_i : <span class=T>std_logic</span> |
<span class=K>signal</span> sel_pc_val_o_i : <span class=T>std_logic_vector</span>(1 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> sel_sp_as_o_i : <span class=T>std_logic</span> |
<span class=K>signal</span> sel_pc_as_o_i : <span class=T>std_logic</span> |
<span class=K>signal</span> adr_nxt_pc_o_i : <span class=T>std_logic_vector</span>(15 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> q_a_o_i : <span class=T>std_logic_vector</span>(7 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> q_x_o_i : <span class=T>std_logic_vector</span>(7 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> q_y_o_i : <span class=T>std_logic_vector</span>(7 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> d_regs_in_o_i : <span class=T>std_logic_vector</span>(7 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> nmi_o_i : <span class=T>std_logic</span> |
<span class=K>signal</span> fetch_o_i : <span class=T>std_logic</span> |
<span class=K>signal</span> d_alu_n_o_i : <span class=T>std_logic</span> |
<span class=K>signal</span> d_alu_or_o_i : <span class=T>std_logic</span></pre> |
<H4>Pre User:</H4> |
<pre CLASS=indent> |
</pre> |
/trunk/doc/HTML/R65C02_TC/@core/struct_bd.jpg
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
/trunk/doc/HTML/R65C02_TC/@core/struct_bdContentFrame2.htm
4,7 → 4,7
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> |
<title>R65C02_TC\Core\struct_bd</title> |
<!-- Generated by HDL Designer --> |
<!-- at 18:05:57 on 01.12.2008 --> |
<!-- at 11:17:43 on 04.01.2009 --> |
|
<script language='javascript'> |
|
/trunk/doc/HTML/R65C02_TC/@core/struct_bdContentFrame3.htm
4,7 → 4,7
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> |
<title>R65C02_TC\Core\struct_bd</title> |
<!-- Generated by HDL Designer --> |
<!-- at 18:05:57 on 01.12.2008 --> |
<!-- at 11:17:43 on 04.01.2009 --> |
|
<script language='javascript'> |
|
/trunk/doc/HTML/R65C02_TC/@core/struct_bdToolbarFrame0.htm
5,7 → 5,7
|
<title>R65C02_TC\Core\struct_bd</title> |
<!-- Generated by HDL Designer --> |
<!-- at 18:05:57 on 01.12.2008 --> |
<!-- at 11:17:43 on 04.01.2009 --> |
|
|
<SCRIPT SRC="../../scripts/is.js"> |
/trunk/doc/HTML/R65C02_TC/@reg@bank_@a@x@y/struct_bdToolbarFrame1.htm
5,7 → 5,7
|
<title>R65C02_TC\RegBank_AXY\struct_bd</title> |
<!-- Generated by HDL Designer --> |
<!-- at 18:05:59 on 01.12.2008 --> |
<!-- at 11:17:45 on 04.01.2009 --> |
|
|
<SCRIPT SRC="../../scripts/is.js"> |
/trunk/doc/HTML/R65C02_TC/@reg@bank_@a@x@y/struct_bd.htm
4,7 → 4,7
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> |
<title>R65C02_TC\RegBank_AXY\struct_bd</title> |
<!-- Generated by HDL Designer --> |
<!-- at 18:05:59 on 01.12.2008 --> |
<!-- at 11:17:45 on 04.01.2009 --> |
|
|
<script language='javascript'> |
/trunk/doc/HTML/R65C02_TC/@reg@bank_@a@x@y/struct_bdToolbarFrame2.htm
5,7 → 5,7
|
<title>R65C02_TC\RegBank_AXY\struct_bd</title> |
<!-- Generated by HDL Designer --> |
<!-- at 18:05:59 on 01.12.2008 --> |
<!-- at 11:17:45 on 04.01.2009 --> |
|
|
<SCRIPT SRC="../../scripts/is.js"> |
/trunk/doc/HTML/R65C02_TC/@reg@bank_@a@x@y/struct_bdToolbarFrame3.htm
5,7 → 5,7
|
<title>R65C02_TC\RegBank_AXY\struct_bd</title> |
<!-- Generated by HDL Designer --> |
<!-- at 18:05:59 on 01.12.2008 --> |
<!-- at 11:17:45 on 04.01.2009 --> |
|
|
<SCRIPT SRC="../../scripts/is.js"> |
/trunk/doc/HTML/R65C02_TC/@reg@bank_@a@x@y/struct_bdContentFrame0.htm
4,7 → 4,7
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> |
|
<!-- Generated by HDL Designer --> |
<!-- at 18:05:59 on 01.12.2008 --> |
<!-- at 11:17:45 on 04.01.2009 --> |
|
</head> |
|
165,10 → 165,9
<SCRIPT LANGUAGE="javascript"> |
<!-- |
|
uart_topImage = new hdsImage(1242,1042,'struct_bd.jpg', 'uart_top'); |
uart_topImage = new hdsImage(1305,1067,'struct_bd.jpg', 'uart_top'); |
|
// Block Diagram hot spots |
areas0[areas0.length] = new hotArea(73,650,148,700, 'struct_bd@072eb1.htm', 'eb1', 1); |
areas = areas0 |
|
|
/trunk/doc/HTML/R65C02_TC/@reg@bank_@a@x@y/struct_bdContentFrame1.htm
4,7 → 4,7
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> |
<title>R65C02_TC\RegBank_AXY\struct_bd</title> |
<!-- Generated by HDL Designer --> |
<!-- at 18:05:59 on 01.12.2008 --> |
<!-- at 11:17:45 on 04.01.2009 --> |
|
<script language='javascript'> |
|
53,9 → 53,9
<H4>Ports:</H4> |
<pre CLASS=indent> |
clk_clk_i : <span class=T>std_logic</span> |
rst_rst_i : <span class=T>std_logic</span> |
rst_rst_n_i : <span class=T>std_logic</span> |
d_regs_in_i : <span class=T>std_logic_vector</span>(7 <span class=K>DOWNTO</span> 0) |
sel_rb_in_i : <span class=T>std_logic_vector</span>(2 <span class=K>DOWNTO</span> 0) |
sel_rb_in_i : <span class=T>std_logic_vector</span>(1 <span class=K>DOWNTO</span> 0) |
sel_rb_out_i : <span class=T>std_logic_vector</span>(1 <span class=K>DOWNTO</span> 0) |
load_regs_i : <span class=T>std_logic</span> |
q_a_o : <span class=T>std_logic_vector</span>(7 <span class=K>DOWNTO</span> 0) |
65,11 → 65,11
sel_reg_i : <span class=T>std_logic_vector</span>(1 <span class=K>DOWNTO</span> 0)</pre> |
<H4>Diagram Signals:</H4> |
<pre CLASS=indent> |
<span class=K>signal</span> dout_o_i : <span class=T>std_logic_vector</span>(7 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> ld_o_i : <span class=T>std_logic_vector</span>(3 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> ld : <span class=T>std_logic_vector</span>(2 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> load_o_i : <span class=T>std_logic</span> |
<span class=K>signal</span> load1_o_i : <span class=T>std_logic</span> |
<span class=K>signal</span> load2_o_i : <span class=T>std_logic</span> |
<span class=K>signal</span> q_mux_o_i : <span class=T>std_logic_vector</span>(7 <span class=K>DOWNTO</span> 0) |
<span class=K>signal</span> val_zero : <span class=T>std_logic_vector</span>(7 <span class=K>DOWNTO</span> 0)</pre> |
<H4>Pre User:</H4> |
<pre CLASS=indent> |
/trunk/doc/HTML/R65C02_TC/@reg@bank_@a@x@y/struct_bd.jpg
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
/trunk/doc/HTML/R65C02_TC/@reg@bank_@a@x@y/struct_bdContentFrame2.htm
4,7 → 4,7
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> |
<title>R65C02_TC\RegBank_AXY\struct_bd</title> |
<!-- Generated by HDL Designer --> |
<!-- at 18:05:59 on 01.12.2008 --> |
<!-- at 11:17:45 on 04.01.2009 --> |
|
<script language='javascript'> |
|
/trunk/doc/HTML/R65C02_TC/@reg@bank_@a@x@y/struct_bdContentFrame3.htm
4,7 → 4,7
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> |
<title>R65C02_TC\RegBank_AXY\struct_bd</title> |
<!-- Generated by HDL Designer --> |
<!-- at 18:05:59 on 01.12.2008 --> |
<!-- at 11:17:45 on 04.01.2009 --> |
|
<script language='javascript'> |
|
/trunk/doc/HTML/R65C02_TC/@reg@bank_@a@x@y/struct_bdToolbarFrame0.htm
5,7 → 5,7
|
<title>R65C02_TC\RegBank_AXY\struct_bd</title> |
<!-- Generated by HDL Designer --> |
<!-- at 18:05:59 on 01.12.2008 --> |
<!-- at 11:17:45 on 04.01.2009 --> |
|
|
<SCRIPT SRC="../../scripts/is.js"> |
/trunk/doc/HTML/R65C02_TCR65C02_TCindex.htm
1118,62 → 1118,6
'BlockDiagram', 'R65C02_TC/Reg_PC/struct', |
'R65C02_TC/@reg_@p@c/struct_bd.htm', |
'R65C02_TC/Reg_PC/struct'); |
nodes[6] = theMenu.addChild(nodes[5], |
'VHDL', '1: eb1', |
'R65C02_TC/@reg_@p@c/struct_bd@072eb1.htm', |
'1: eb1'); |
nodes[6] = theMenu.addChild(nodes[5], |
'VHDL', '2: eb2', |
'R65C02_TC/@reg_@p@c/struct_bd@072eb2.htm', |
'2: eb2'); |
nodes[6] = theMenu.addChild(nodes[5], |
'VHDL', '3: eb3', |
'R65C02_TC/@reg_@p@c/struct_bd@072eb3.htm', |
'3: eb3'); |
nodes[6] = theMenu.addChild(nodes[5], |
'InlineModulewareInstance', 'U_0 : moduleware.adff', |
'R65C02_TC/@reg_@p@c/struct_bd.htm', |
'U_0 : moduleware.adff'); |
nodes[6] = theMenu.addChild(nodes[5], |
'InlineModulewareInstance', 'U_10 : moduleware.and', |
'R65C02_TC/@reg_@p@c/struct_bd.htm', |
'U_10 : moduleware.and'); |
nodes[6] = theMenu.addChild(nodes[5], |
'InlineModulewareInstance', 'U_11 : moduleware.addsub', |
'R65C02_TC/@reg_@p@c/struct_bd.htm', |
'U_11 : moduleware.addsub'); |
nodes[6] = theMenu.addChild(nodes[5], |
'InlineModulewareInstance', 'U_12 : moduleware.addsub', |
'R65C02_TC/@reg_@p@c/struct_bd.htm', |
'U_12 : moduleware.addsub'); |
nodes[6] = theMenu.addChild(nodes[5], |
'InlineModulewareInstance', 'U_2 : moduleware.inv', |
'R65C02_TC/@reg_@p@c/struct_bd.htm', |
'U_2 : moduleware.inv'); |
nodes[6] = theMenu.addChild(nodes[5], |
'InlineModulewareInstance', 'U_4 : moduleware.adff', |
'R65C02_TC/@reg_@p@c/struct_bd.htm', |
'U_4 : moduleware.adff'); |
nodes[6] = theMenu.addChild(nodes[5], |
'InlineModulewareInstance', 'U_5 : moduleware.mux', |
'R65C02_TC/@reg_@p@c/struct_bd.htm', |
'U_5 : moduleware.mux'); |
nodes[6] = theMenu.addChild(nodes[5], |
'InlineModulewareInstance', 'U_6 : moduleware.and', |
'R65C02_TC/@reg_@p@c/struct_bd.htm', |
'U_6 : moduleware.and'); |
nodes[6] = theMenu.addChild(nodes[5], |
'InlineModulewareInstance', 'U_7 : moduleware.and', |
'R65C02_TC/@reg_@p@c/struct_bd.htm', |
'U_7 : moduleware.and'); |
nodes[6] = theMenu.addChild(nodes[5], |
'InlineModulewareInstance', 'U_8 : moduleware.mux', |
'R65C02_TC/@reg_@p@c/struct_bd.htm', |
'U_8 : moduleware.mux'); |
nodes[6] = theMenu.addChild(nodes[5], |
'InlineModulewareInstance', 'U_9 : moduleware.mux', |
'R65C02_TC/@reg_@p@c/struct_bd.htm', |
'U_9 : moduleware.mux'); |
nodes[4] = theMenu.addChild(nodes[3], |
'Instance', 'U_1 : R65C02_TC.Reg_SP', |
'R65C02_TC/@core/struct_bd.htm', |
1182,46 → 1126,6
'BlockDiagram', 'R65C02_TC/Reg_SP/struct', |
'R65C02_TC/@reg_@s@p/struct_bd.htm', |
'R65C02_TC/Reg_SP/struct'); |
nodes[6] = theMenu.addChild(nodes[5], |
'VHDL', '2: eb2', |
'R65C02_TC/@reg_@s@p/struct_bd@072eb2.htm', |
'2: eb2'); |
nodes[6] = theMenu.addChild(nodes[5], |
'VHDL', '3: eb3', |
'R65C02_TC/@reg_@s@p/struct_bd@072eb3.htm', |
'3: eb3'); |
nodes[6] = theMenu.addChild(nodes[5], |
'InlineModulewareInstance', 'U_0 : moduleware.adff', |
'R65C02_TC/@reg_@s@p/struct_bd.htm', |
'U_0 : moduleware.adff'); |
nodes[6] = theMenu.addChild(nodes[5], |
'InlineModulewareInstance', 'U_11 : moduleware.addsub', |
'R65C02_TC/@reg_@s@p/struct_bd.htm', |
'U_11 : moduleware.addsub'); |
nodes[6] = theMenu.addChild(nodes[5], |
'InlineModulewareInstance', 'U_2 : moduleware.inv', |
'R65C02_TC/@reg_@s@p/struct_bd.htm', |
'U_2 : moduleware.inv'); |
nodes[6] = theMenu.addChild(nodes[5], |
'InlineModulewareInstance', 'U_4 : moduleware.adff', |
'R65C02_TC/@reg_@s@p/struct_bd.htm', |
'U_4 : moduleware.adff'); |
nodes[6] = theMenu.addChild(nodes[5], |
'InlineModulewareInstance', 'U_5 : moduleware.mux', |
'R65C02_TC/@reg_@s@p/struct_bd.htm', |
'U_5 : moduleware.mux'); |
nodes[6] = theMenu.addChild(nodes[5], |
'InlineModulewareInstance', 'U_6 : moduleware.and', |
'R65C02_TC/@reg_@s@p/struct_bd.htm', |
'U_6 : moduleware.and'); |
nodes[6] = theMenu.addChild(nodes[5], |
'InlineModulewareInstance', 'U_7 : moduleware.and', |
'R65C02_TC/@reg_@s@p/struct_bd.htm', |
'U_7 : moduleware.and'); |
nodes[6] = theMenu.addChild(nodes[5], |
'InlineModulewareInstance', 'U_8 : moduleware.mux', |
'R65C02_TC/@reg_@s@p/struct_bd.htm', |
'U_8 : moduleware.mux'); |
nodes[4] = theMenu.addChild(nodes[3], |
'Instance', 'U_2 : R65C02_TC.RegBank_AXY', |
'R65C02_TC/@core/struct_bd.htm', |
1230,286 → 1134,166
'BlockDiagram', 'R65C02_TC/RegBank_AXY/struct', |
'R65C02_TC/@reg@bank_@a@x@y/struct_bd.htm', |
'R65C02_TC/RegBank_AXY/struct'); |
nodes[6] = theMenu.addChild(nodes[5], |
'VHDL', '1: eb1', |
'R65C02_TC/@reg@bank_@a@x@y/struct_bd@072eb1.htm', |
'1: eb1'); |
nodes[6] = theMenu.addChild(nodes[5], |
'InlineModulewareInstance', 'U_0 : moduleware.adff', |
'R65C02_TC/@reg@bank_@a@x@y/struct_bd.htm', |
'U_0 : moduleware.adff'); |
nodes[6] = theMenu.addChild(nodes[5], |
'InlineModulewareInstance', 'U_1 : moduleware.decoder1', |
'R65C02_TC/@reg@bank_@a@x@y/struct_bd.htm', |
'U_1 : moduleware.decoder1'); |
nodes[6] = theMenu.addChild(nodes[5], |
'InlineModulewareInstance', 'U_2 : moduleware.mux', |
'R65C02_TC/@reg@bank_@a@x@y/struct_bd.htm', |
'U_2 : moduleware.mux'); |
nodes[6] = theMenu.addChild(nodes[5], |
'InlineModulewareInstance', 'U_3 : moduleware.mux', |
'R65C02_TC/@reg@bank_@a@x@y/struct_bd.htm', |
'U_3 : moduleware.mux'); |
nodes[6] = theMenu.addChild(nodes[5], |
'InlineModulewareInstance', 'U_4 : moduleware.adff', |
'R65C02_TC/@reg@bank_@a@x@y/struct_bd.htm', |
'U_4 : moduleware.adff'); |
nodes[6] = theMenu.addChild(nodes[5], |
'InlineModulewareInstance', 'U_5 : moduleware.adff', |
'R65C02_TC/@reg@bank_@a@x@y/struct_bd.htm', |
'U_5 : moduleware.adff'); |
nodes[6] = theMenu.addChild(nodes[5], |
'InlineModulewareInstance', 'U_6 : moduleware.and', |
'R65C02_TC/@reg@bank_@a@x@y/struct_bd.htm', |
'U_6 : moduleware.and'); |
nodes[6] = theMenu.addChild(nodes[5], |
'InlineModulewareInstance', 'U_7 : moduleware.and', |
'R65C02_TC/@reg@bank_@a@x@y/struct_bd.htm', |
'U_7 : moduleware.and'); |
nodes[6] = theMenu.addChild(nodes[5], |
'InlineModulewareInstance', 'U_8 : moduleware.and', |
'R65C02_TC/@reg@bank_@a@x@y/struct_bd.htm', |
'U_8 : moduleware.and'); |
nodes[4] = theMenu.addChild(nodes[3], |
'Instance', 'U_3 : R65C02_TC.ALU', |
'Instance', 'U_3 : R65C02_TC.FSM_NMI', |
'R65C02_TC/@core/struct_bd.htm', |
'U_3 : R65C02_TC.ALU'); |
'U_3 : R65C02_TC.FSM_NMI'); |
nodes[5] = theMenu.addChild(nodes[4], |
'BlockDiagram', 'R65C02_TC/ALU/struct', |
'R65C02_TC/@a@l@u/struct_bd.htm', |
'R65C02_TC/ALU/struct'); |
'StateDiagram', 'R65C02_TC/FSM_NMI/fsm', |
'R65C02_TC/@f@s@m_@n@m@i/fsm_sm.htm', |
'R65C02_TC/FSM_NMI/fsm'); |
nodes[6] = theMenu.addChild(nodes[5], |
'VHDL', '3: eb3', |
'R65C02_TC/@a@l@u/struct_bd@072eb3.htm', |
'3: eb3'); |
nodes[6] = theMenu.addChild(nodes[5], |
'InlineModulewareInstance', 'U_0 : moduleware.sand', |
'R65C02_TC/@a@l@u/struct_bd.htm', |
'U_0 : moduleware.sand'); |
nodes[6] = theMenu.addChild(nodes[5], |
'InlineModulewareInstance', 'U_1 : moduleware.sor', |
'R65C02_TC/@a@l@u/struct_bd.htm', |
'U_1 : moduleware.sor'); |
nodes[6] = theMenu.addChild(nodes[5], |
'InlineModulewareInstance', 'U_10 : moduleware.inv', |
'R65C02_TC/@a@l@u/struct_bd.htm', |
'U_10 : moduleware.inv'); |
nodes[6] = theMenu.addChild(nodes[5], |
'InlineModulewareInstance', 'U_11 : moduleware.sand', |
'R65C02_TC/@a@l@u/struct_bd.htm', |
'U_11 : moduleware.sand'); |
nodes[6] = theMenu.addChild(nodes[5], |
'InlineModulewareInstance', 'U_12 : moduleware.sor', |
'R65C02_TC/@a@l@u/struct_bd.htm', |
'U_12 : moduleware.sor'); |
nodes[6] = theMenu.addChild(nodes[5], |
'InlineModulewareInstance', 'U_13 : moduleware.sand', |
'R65C02_TC/@a@l@u/struct_bd.htm', |
'U_13 : moduleware.sand'); |
nodes[6] = theMenu.addChild(nodes[5], |
'InlineModulewareInstance', 'U_14 : moduleware.inv', |
'R65C02_TC/@a@l@u/struct_bd.htm', |
'U_14 : moduleware.inv'); |
nodes[6] = theMenu.addChild(nodes[5], |
'InlineModulewareInstance', 'U_15 : moduleware.decoder1', |
'R65C02_TC/@a@l@u/struct_bd.htm', |
'U_15 : moduleware.decoder1'); |
nodes[6] = theMenu.addChild(nodes[5], |
'InlineModulewareInstance', 'U_2 : moduleware.sxor', |
'R65C02_TC/@a@l@u/struct_bd.htm', |
'U_2 : moduleware.sxor'); |
nodes[6] = theMenu.addChild(nodes[5], |
'InlineModulewareInstance', 'U_4 : moduleware.inv', |
'R65C02_TC/@a@l@u/struct_bd.htm', |
'U_4 : moduleware.inv'); |
nodes[6] = theMenu.addChild(nodes[5], |
'InlineModulewareInstance', 'U_5 : moduleware.mux', |
'R65C02_TC/@a@l@u/struct_bd.htm', |
'U_5 : moduleware.mux'); |
nodes[6] = theMenu.addChild(nodes[5], |
'InlineModulewareInstance', 'U_7 : moduleware.por', |
'R65C02_TC/@a@l@u/struct_bd.htm', |
'U_7 : moduleware.por'); |
nodes[6] = theMenu.addChild(nodes[5], |
'InlineModulewareInstance', 'U_8 : moduleware.inv', |
'R65C02_TC/@a@l@u/struct_bd.htm', |
'U_8 : moduleware.inv'); |
nodes[6] = theMenu.addChild(nodes[5], |
'InlineModulewareInstance', 'U_9 : moduleware.inv', |
'R65C02_TC/@a@l@u/struct_bd.htm', |
'U_9 : moduleware.inv'); |
nodes[6] = theMenu.addChild(nodes[5], |
'Instance', 'U_6 : R65C02_TC.ADD_SUB', |
'R65C02_TC/@a@l@u/struct_bd.htm', |
'U_6 : R65C02_TC.ADD_SUB'); |
nodes[7] = theMenu.addChild(nodes[6], |
'FlowDiagram', 'R65C02_TC/ADD_SUB/flow', |
'R65C02_TC/@a@d@d_@s@u@b/flow_fc.htm', |
'R65C02_TC/ADD_SUB/flow'); |
nodes[8] = theMenu.addChild(nodes[7], |
'FcConcurrent', 'process0', |
'R65C02_TC/@a@d@d_@s@u@b/flow_fc_process0.htm', |
'process0'); |
'SmConcurrent', 'csm', |
'R65C02_TC/@f@s@m_@n@m@i/fsm_sm_csm.htm', |
'csm'); |
nodes[4] = theMenu.addChild(nodes[3], |
'Instance', 'U_4 : R65C02_TC.fsm_core_V2_1', |
'Instance', 'U_4 : R65C02_TC.FSM_Execution_Unit', |
'R65C02_TC/@core/struct_bd.htm', |
'U_4 : R65C02_TC.fsm_core_V2_1'); |
'U_4 : R65C02_TC.FSM_Execution_Unit'); |
nodes[5] = theMenu.addChild(nodes[4], |
'StateDiagram', 'R65C02_TC/fsm_core_V2_1/fsm', |
'R65C02_TC/fsm_core_@v2_1/fsm_sm.htm', |
'R65C02_TC/fsm_core_V2_1/fsm'); |
'StateDiagram', 'R65C02_TC/FSM_Execution_Unit/fsm', |
'R65C02_TC/@f@s@m_@execution_@unit/fsm_sm.htm', |
'R65C02_TC/FSM_Execution_Unit/fsm'); |
nodes[6] = theMenu.addChild(nodes[5], |
'SmConcurrent', 'csm', |
'R65C02_TC/fsm_core_@v2_1/fsm_sm_csm.htm', |
'R65C02_TC/@f@s@m_@execution_@unit/fsm_sm_csm.htm', |
'csm'); |
nodes[7] = theMenu.addChild(nodes[6], |
'StateDiagram', 'ADC :csm', |
'R65C02_TC/fsm_core_@v2_1/fsm_sm_csm_@a@d@c.htm', |
'R65C02_TC/@f@s@m_@execution_@unit/fsm_sm_csm_@a@d@c.htm', |
'ADC :csm'); |
nodes[7] = theMenu.addChild(nodes[6], |
'StateDiagram', 'ASL :csm', |
'R65C02_TC/fsm_core_@v2_1/fsm_sm_csm_@a@s@l.htm', |
'R65C02_TC/@f@s@m_@execution_@unit/fsm_sm_csm_@a@s@l.htm', |
'ASL :csm'); |
nodes[7] = theMenu.addChild(nodes[6], |
'StateDiagram', 'ASL1 :csm', |
'R65C02_TC/fsm_core_@v2_1/fsm_sm_csm_@a@s@l1.htm', |
'R65C02_TC/@f@s@m_@execution_@unit/fsm_sm_csm_@a@s@l1.htm', |
'ASL1 :csm'); |
nodes[7] = theMenu.addChild(nodes[6], |
'StateDiagram', 'BEQ :csm', |
'R65C02_TC/fsm_core_@v2_1/fsm_sm_csm_@b@e@q.htm', |
'R65C02_TC/@f@s@m_@execution_@unit/fsm_sm_csm_@b@e@q.htm', |
'BEQ :csm'); |
nodes[7] = theMenu.addChild(nodes[6], |
'StateDiagram', 'BIT :csm', |
'R65C02_TC/fsm_core_@v2_1/fsm_sm_csm_@b@i@t.htm', |
'R65C02_TC/@f@s@m_@execution_@unit/fsm_sm_csm_@b@i@t.htm', |
'BIT :csm'); |
nodes[7] = theMenu.addChild(nodes[6], |
'StateDiagram', 'BRK :csm', |
'R65C02_TC/fsm_core_@v2_1/fsm_sm_csm_@b@r@k.htm', |
'R65C02_TC/@f@s@m_@execution_@unit/fsm_sm_csm_@b@r@k.htm', |
'BRK :csm'); |
nodes[7] = theMenu.addChild(nodes[6], |
'StateDiagram', 'CLC :csm', |
'R65C02_TC/fsm_core_@v2_1/fsm_sm_csm_@c@l@c.htm', |
'R65C02_TC/@f@s@m_@execution_@unit/fsm_sm_csm_@c@l@c.htm', |
'CLC :csm'); |
nodes[7] = theMenu.addChild(nodes[6], |
'StateDiagram', 'CLD :csm', |
'R65C02_TC/fsm_core_@v2_1/fsm_sm_csm_@c@l@d.htm', |
'R65C02_TC/@f@s@m_@execution_@unit/fsm_sm_csm_@c@l@d.htm', |
'CLD :csm'); |
nodes[7] = theMenu.addChild(nodes[6], |
'StateDiagram', 'CLI :csm', |
'R65C02_TC/fsm_core_@v2_1/fsm_sm_csm_@c@l@i.htm', |
'R65C02_TC/@f@s@m_@execution_@unit/fsm_sm_csm_@c@l@i.htm', |
'CLI :csm'); |
nodes[7] = theMenu.addChild(nodes[6], |
'StateDiagram', 'CLV :csm', |
'R65C02_TC/fsm_core_@v2_1/fsm_sm_csm_@c@l@v.htm', |
'R65C02_TC/@f@s@m_@execution_@unit/fsm_sm_csm_@c@l@v.htm', |
'CLV :csm'); |
nodes[7] = theMenu.addChild(nodes[6], |
'StateDiagram', 'DEC :csm', |
'R65C02_TC/fsm_core_@v2_1/fsm_sm_csm_@d@e@c.htm', |
'R65C02_TC/@f@s@m_@execution_@unit/fsm_sm_csm_@d@e@c.htm', |
'DEC :csm'); |
nodes[7] = theMenu.addChild(nodes[6], |
'StateDiagram', 'DEX :csm', |
'R65C02_TC/fsm_core_@v2_1/fsm_sm_csm_@d@e@x.htm', |
'R65C02_TC/@f@s@m_@execution_@unit/fsm_sm_csm_@d@e@x.htm', |
'DEX :csm'); |
nodes[7] = theMenu.addChild(nodes[6], |
'StateDiagram', 'IRQ :csm', |
'R65C02_TC/fsm_core_@v2_1/fsm_sm_csm_@i@r@q.htm', |
'R65C02_TC/@f@s@m_@execution_@unit/fsm_sm_csm_@i@r@q.htm', |
'IRQ :csm'); |
nodes[7] = theMenu.addChild(nodes[6], |
'StateDiagram', 'JMP :csm', |
'R65C02_TC/fsm_core_@v2_1/fsm_sm_csm_@j@m@p.htm', |
'R65C02_TC/@f@s@m_@execution_@unit/fsm_sm_csm_@j@m@p.htm', |
'JMP :csm'); |
nodes[7] = theMenu.addChild(nodes[6], |
'StateDiagram', 'JSR :csm', |
'R65C02_TC/fsm_core_@v2_1/fsm_sm_csm_@j@s@r.htm', |
'R65C02_TC/@f@s@m_@execution_@unit/fsm_sm_csm_@j@s@r.htm', |
'JSR :csm'); |
nodes[7] = theMenu.addChild(nodes[6], |
'StateDiagram', 'LDA :csm', |
'R65C02_TC/fsm_core_@v2_1/fsm_sm_csm_@l@d@a.htm', |
'R65C02_TC/@f@s@m_@execution_@unit/fsm_sm_csm_@l@d@a.htm', |
'LDA :csm'); |
nodes[7] = theMenu.addChild(nodes[6], |
'StateDiagram', 'LSR1 :csm', |
'R65C02_TC/fsm_core_@v2_1/fsm_sm_csm_@l@s@r1.htm', |
'R65C02_TC/@f@s@m_@execution_@unit/fsm_sm_csm_@l@s@r1.htm', |
'LSR1 :csm'); |
nodes[7] = theMenu.addChild(nodes[6], |
'StateDiagram', 'NMI :csm', |
'R65C02_TC/fsm_core_@v2_1/fsm_sm_csm_@n@m@i.htm', |
'R65C02_TC/@f@s@m_@execution_@unit/fsm_sm_csm_@n@m@i.htm', |
'NMI :csm'); |
nodes[7] = theMenu.addChild(nodes[6], |
'StateDiagram', 'NOP :csm', |
'R65C02_TC/fsm_core_@v2_1/fsm_sm_csm_@n@o@p.htm', |
'R65C02_TC/@f@s@m_@execution_@unit/fsm_sm_csm_@n@o@p.htm', |
'NOP :csm'); |
nodes[7] = theMenu.addChild(nodes[6], |
'StateDiagram', 'PHA :csm', |
'R65C02_TC/fsm_core_@v2_1/fsm_sm_csm_@p@h@a.htm', |
'R65C02_TC/@f@s@m_@execution_@unit/fsm_sm_csm_@p@h@a.htm', |
'PHA :csm'); |
nodes[7] = theMenu.addChild(nodes[6], |
'StateDiagram', 'PHP :csm', |
'R65C02_TC/fsm_core_@v2_1/fsm_sm_csm_@p@h@p.htm', |
'R65C02_TC/@f@s@m_@execution_@unit/fsm_sm_csm_@p@h@p.htm', |
'PHP :csm'); |
nodes[7] = theMenu.addChild(nodes[6], |
'StateDiagram', 'PLA :csm', |
'R65C02_TC/fsm_core_@v2_1/fsm_sm_csm_@p@l@a.htm', |
'R65C02_TC/@f@s@m_@execution_@unit/fsm_sm_csm_@p@l@a.htm', |
'PLA :csm'); |
nodes[7] = theMenu.addChild(nodes[6], |
'StateDiagram', 'PLP :csm', |
'R65C02_TC/fsm_core_@v2_1/fsm_sm_csm_@p@l@p.htm', |
'R65C02_TC/@f@s@m_@execution_@unit/fsm_sm_csm_@p@l@p.htm', |
'PLP :csm'); |
nodes[7] = theMenu.addChild(nodes[6], |
'StateDiagram', 'RES1 :csm', |
'R65C02_TC/fsm_core_@v2_1/fsm_sm_csm_@r@e@s1.htm', |
'R65C02_TC/@f@s@m_@execution_@unit/fsm_sm_csm_@r@e@s1.htm', |
'RES1 :csm'); |
nodes[7] = theMenu.addChild(nodes[6], |
'StateDiagram', 'RL1 :csm', |
'R65C02_TC/fsm_core_@v2_1/fsm_sm_csm_@r@l1.htm', |
'R65C02_TC/@f@s@m_@execution_@unit/fsm_sm_csm_@r@l1.htm', |
'RL1 :csm'); |
nodes[7] = theMenu.addChild(nodes[6], |
'StateDiagram', 'RR1 :csm', |
'R65C02_TC/fsm_core_@v2_1/fsm_sm_csm_@r@r1.htm', |
'R65C02_TC/@f@s@m_@execution_@unit/fsm_sm_csm_@r@r1.htm', |
'RR1 :csm'); |
nodes[7] = theMenu.addChild(nodes[6], |
'StateDiagram', 'RTI :csm', |
'R65C02_TC/fsm_core_@v2_1/fsm_sm_csm_@r@t@i.htm', |
'R65C02_TC/@f@s@m_@execution_@unit/fsm_sm_csm_@r@t@i.htm', |
'RTI :csm'); |
nodes[7] = theMenu.addChild(nodes[6], |
'StateDiagram', 'RTS :csm', |
'R65C02_TC/fsm_core_@v2_1/fsm_sm_csm_@r@t@s.htm', |
'R65C02_TC/@f@s@m_@execution_@unit/fsm_sm_csm_@r@t@s.htm', |
'RTS :csm'); |
nodes[7] = theMenu.addChild(nodes[6], |
'StateDiagram', 'SBC :csm', |
'R65C02_TC/fsm_core_@v2_1/fsm_sm_csm_@s@b@c.htm', |
'R65C02_TC/@f@s@m_@execution_@unit/fsm_sm_csm_@s@b@c.htm', |
'SBC :csm'); |
nodes[7] = theMenu.addChild(nodes[6], |
'StateDiagram', 'SEC :csm', |
'R65C02_TC/fsm_core_@v2_1/fsm_sm_csm_@s@e@c.htm', |
'R65C02_TC/@f@s@m_@execution_@unit/fsm_sm_csm_@s@e@c.htm', |
'SEC :csm'); |
nodes[7] = theMenu.addChild(nodes[6], |
'StateDiagram', 'SED :csm', |
'R65C02_TC/fsm_core_@v2_1/fsm_sm_csm_@s@e@d.htm', |
'R65C02_TC/@f@s@m_@execution_@unit/fsm_sm_csm_@s@e@d.htm', |
'SED :csm'); |
nodes[7] = theMenu.addChild(nodes[6], |
'StateDiagram', 'SEI :csm', |
'R65C02_TC/fsm_core_@v2_1/fsm_sm_csm_@s@e@i.htm', |
'R65C02_TC/@f@s@m_@execution_@unit/fsm_sm_csm_@s@e@i.htm', |
'SEI :csm'); |
nodes[7] = theMenu.addChild(nodes[6], |
'StateDiagram', 'STA :csm', |
'R65C02_TC/fsm_core_@v2_1/fsm_sm_csm_@s@t@a.htm', |
'R65C02_TC/@f@s@m_@execution_@unit/fsm_sm_csm_@s@t@a.htm', |
'STA :csm'); |
nodes[7] = theMenu.addChild(nodes[6], |
'StateDiagram', 'TAX :csm', |
'R65C02_TC/fsm_core_@v2_1/fsm_sm_csm_@t@a@x.htm', |
'R65C02_TC/@f@s@m_@execution_@unit/fsm_sm_csm_@t@a@x.htm', |
'TAX :csm'); |
nodes[4] = theMenu.addChild(nodes[3], |
'Instance', 'U_6 : R65C02_TC.fsm_nmi', |
'R65C02_TC/@core/struct_bd.htm', |
'U_6 : R65C02_TC.fsm_nmi'); |
nodes[5] = theMenu.addChild(nodes[4], |
'StateDiagram', 'R65C02_TC/fsm_nmi/fsm', |
'R65C02_TC/fsm_nmi/fsm_sm.htm', |
'R65C02_TC/fsm_nmi/fsm'); |
nodes[6] = theMenu.addChild(nodes[5], |
'SmConcurrent', 'csm', |
'R65C02_TC/fsm_nmi/fsm_sm_csm.htm', |
'csm'); |
|
} |
|
/trunk/TO_DO_list.txt
1,3 → 1,8
(January, 4th 2009) |
- (DONE) Remove unused nets, register and modules |
- (DONE) Update the HDL Designer files for better viewing and |
understanding |
|
(August, 5th 2008) |
- (DONE) Rename all port names (_i, _o, _o_i) |
- (DONE) Test and verify all Op Codes |
5,8 → 10,8
- (DONE) Implement same improvements like cpu6502_tc (graphical design, source |
utilisation...) |
- (75%) Finish working for Specification of cpu65C02_tc |
- Create high level testbench in assembler and hardware for |
- (WORKING) Create high level testbench in assembler and hardware for |
testing all Op Codes (include accurate cycle timing) |
- Create simulation files for Modelsim |
- Create a simple .wlf file to demonstrate the cpu65C02_tc |
- (WORKING) Create simulation files for Modelsim |
- (WORKING) Create a simple .wlf file to demonstrate the cpu65C02_tc |
- Update the HDL Designer files for better viewing and understanding |