📄 mc8051_struct.vhd
字号:
ov : OUT std_logic; rs : OUT std_logic_vector( 1 DOWNTO 0 ); data_gb : INOUT std_logic_vector( 7 DOWNTO 0 ) );END COMPONENT;COMPONENT serial PORT ( addr_gb : IN std_logic_vector( 7 DOWNTO 0 ); indirect_sel : IN std_logic; int_clk : IN std_logic; int_rst : IN std_logic; rd_gb : IN std_logic; rxd : IN std_logic; wr_gb : IN std_logic; acknow : OUT std_logic; rxd_ctrl : OUT std_logic; txd : OUT std_logic; txd_ctrl : OUT std_logic; data_gb : INOUT std_logic_vector( 7 DOWNTO 0 ) );END COMPONENT;COMPONENT sp PORT ( dec_rd_sp : IN std_logic; inc_wr_sp : IN std_logic; int_clk : IN std_logic; int_rst : IN std_logic; acknow : INOUT std_logic; addr_gb : INOUT std_logic_vector( 7 DOWNTO 0 ); data_gb : INOUT std_logic_vector( 7 DOWNTO 0 ); indirect_sel : INOUT std_logic; rd_gb : INOUT std_logic; wr_gb : INOUT std_logic );END COMPONENT;-- Optional embedded configurations--synopsys translate_offFOR ALL : acc_reg USE ENTITY mc8051.acc_reg;FOR ALL : b_sfr USE ENTITY mc8051.b_sfr;FOR ALL : cpu_core USE ENTITY mc8051.cpu_core;FOR ALL : dptr_reg USE ENTITY mc8051.dptr_reg;FOR ALL : hi_dmem USE ENTITY mc8051.hi_dmem;FOR ALL : inter_ctrl USE ENTITY mc8051.inter_ctrl;FOR ALL : lo_dmem USE ENTITY mc8051.lo_dmem;FOR ALL : osc_sm USE ENTITY mc8051.osc_sm;FOR ALL : p0_drv USE ENTITY mc8051.p0_drv;FOR ALL : p1_drv USE ENTITY mc8051.p1_drv;FOR ALL : p2_drv USE ENTITY mc8051.p2_drv;FOR ALL : p3_drv USE ENTITY mc8051.p3_drv;FOR ALL : prog_rom USE ENTITY mc8051.prog_rom;FOR ALL : program_ctrl USE ENTITY mc8051.program_ctrl;FOR ALL : psw USE ENTITY mc8051.psw;FOR ALL : serial USE ENTITY mc8051.serial;FOR ALL : sp USE ENTITY mc8051.sp;--synopsys translate_onBEGIN-- Architecture concurrent statements-- HDL Text Block 5int_rst <= '0' WHEN rst='0' OR rst='L' ELSE '1' WHEN rst='1' OR rst='H';-- HDL Text Block 6int_clk <= xtal1;-- HDL Text Block 7latch_pins <= '1' WHEN cycle_states = s1p1 ELSE '0';-- Instance port mappings. acc_reg1 : acc_reg PORT MAP ( addr_gb => addr_gb(7 downto 0), indirect_sel => indirect_sel, int_clk => int_clk, int_rst => int_rst, rd_gb => rd_gb, wr_acc => wr_acc, wr_gb => wr_gb, acc => acc(7 downto 0), acknow => acknow, parity => parity, data_gb => data_gb(7 downto 0) ); b_sfr1 : b_sfr PORT MAP ( addr_gb => addr_gb(7 downto 0), indirect_sel => indirect_sel, int_clk => int_clk, int_rst => int_rst, rd_gb => rd_gb, wr_gb => wr_gb, acknow => acknow, data_gb => data_gb(7 downto 0) ); I1 : cpu_core PORT MAP ( ac => ac, acc => acc(7 downto 0), acknow => acknow, cy => cy, int_clk => int_clk, int_rst => int_rst, ir => ir(7 downto 0), new_ir => new_ir, ov => ov, rs => rs(1 downto 0), ac_out => ac_out, addr_gb => addr_gb(7 downto 0), cmp_true => cmp_true, cy_out => cy_out, dec_rd_sp => dec_rd_sp, inc_wr_sp => inc_wr_sp, indirect_sel => indirect_sel, ov_out => ov_out, rd_gb => rd_gb, rd_pmem1 => rd_pmem1, rd_pmem2 => rd_pmem2, read_latch => read_latch, wr_acc => wr_acc, wr_gb => wr_gb, wr_out => wr_out, data_gb => data_gb(7 downto 0) ); dptr1 : dptr_reg PORT MAP ( addr_gb => addr_gb(7 downto 0), indirect_sel => indirect_sel, int_clk => int_clk, int_rst => int_rst, rd_gb => rd_gb, wr_gb => wr_gb, acknow => acknow, dptr => dptr(15 downto 0), data_gb => data_gb(7 downto 0) ); hi_dmem1 : hi_dmem PORT MAP ( addr_gb => addr_gb(7 downto 0), indirect_sel => indirect_sel, int_clk => int_clk, int_rst => int_rst, rd_gb => rd_gb, wr_gb => wr_gb, acknow => acknow, data_gb => data_gb(7 downto 0) ); inter_ctrl1 : inter_ctrl PORT MAP ( P0 => P0(7 downto 0), acknow => acknow, cycle_states => cycle_states(3 downto 0), dptr => dptr(15 downto 0), ea_n => ea_n, int_clk => int_clk, int_rst => int_rst, ir => ir(7 downto 0), last_cycle => last_cycle, pdat_loc => pdat_loc(15 downto 0), rom_data => rom_data(7 downto 0), rs => rs(1 downto 0), addr_gb => addr_gb(7 downto 0), ale => ale, indirect_sel => indirect_sel, p0_addr => p0_addr(7 downto 0), p0_ctrl => p0_ctrl, p2_addr => p2_addr(7 downto 0), p2_ctrl => p2_ctrl, pdata => pdata(7 downto 0), psen_n => psen_n, rd_gb => rd_gb, rd_n => rd_n, rd_n_ctrl => rd_n_ctrl, rom_rd_n => rom_rd_n, wr_gb => wr_gb, wr_n => wr_n, wr_n_ctrl => wr_n_ctrl, data_gb => data_gb(7 downto 0) ); lo_dmem1 : lo_dmem PORT MAP ( addr_gb => addr_gb(7 downto 0), int_clk => int_clk, int_rst => int_rst, rd_gb => rd_gb, wr_gb => wr_gb, acknow => acknow, data_gb => data_gb(7 downto 0) ); osc : osc_sm PORT MAP ( int_clk => int_clk, int_rst => int_rst, xtal1 => xtal1, cycle_states => cycle_states(3 downto 0), xtal2 => xtal2 ); p0_drv1 : p0_drv PORT MAP ( addr_gb => addr_gb(7 downto 0), indirect_sel => indirect_sel, int_clk => int_clk, int_rst => int_rst, latch_pins => latch_pins, p0_addr => p0_addr(7 downto 0), p0_ctrl => p0_ctrl, rd_gb => rd_gb, read_latch => read_latch, wr_gb => wr_gb, acknow => acknow, P0 => P0(7 downto 0), data_gb => data_gb(7 downto 0) ); p1_drv1 : p1_drv PORT MAP ( addr_gb => addr_gb(7 downto 0), indirect_sel => indirect_sel, int_clk => int_clk, int_rst => int_rst, latch_pins => latch_pins, rd_gb => rd_gb, read_latch => read_latch, wr_gb => wr_gb, acknow => acknow, P1 => P1(7 downto 0), data_gb => data_gb(7 downto 0) ); p2_drv1 : p2_drv PORT MAP ( addr_gb => addr_gb(7 downto 0), indirect_sel => indirect_sel, int_clk => int_clk, int_rst => int_rst, latch_pins => latch_pins, p2_addr => p2_addr(7 downto 0), p2_ctrl => p2_ctrl, rd_gb => rd_gb, read_latch => read_latch, wr_gb => wr_gb, acknow => acknow, P2 => P2(7 downto 0), data_gb => data_gb(7 downto 0) ); p3_drv1 : p3_drv PORT MAP ( addr_gb => addr_gb(7 downto 0), indirect_sel => indirect_sel, int_clk => int_clk, int_rst => int_rst, latch_pins => latch_pins, rd_gb => rd_gb, rd_n => rd_n, rd_n_ctrl => rd_n_ctrl, read_latch => read_latch, rxd_ctrl => rxd_ctrl, txd => txd, txd_ctrl => txd_ctrl, wr_gb => wr_gb, wr_n => wr_n, wr_n_ctrl => wr_n_ctrl, acknow => acknow, rxd => rxd, P3 => P3(7 downto 0), data_gb => data_gb(7 downto 0) ); I2 : prog_rom PORT MAP ( int_clk => int_clk, int_rst => int_rst, p0_addr => p0_addr(7 downto 0), p2_addr => p2_addr(7 downto 0), rom_rd_n => rom_rd_n, rom_data => rom_data(7 downto 0) ); I0 : program_ctrl PORT MAP ( cmp_true => cmp_true, cycle_states => cycle_states(3 downto 0), dptr => dptr(15 downto 0), int_clk => int_clk, int_rst => int_rst, pdata => pdata(7 downto 0), rd_pmem1 => rd_pmem1, rd_pmem2 => rd_pmem2, addr_gb => addr_gb(7 downto 0), dec_rd_sp => dec_rd_sp, inc_wr_sp => inc_wr_sp, indirect_sel => indirect_sel, ir => ir(7 downto 0), last_cycle => last_cycle, new_ir => new_ir, pdat_loc => pdat_loc(15 downto 0), rd_gb => rd_gb, wr_gb => wr_gb, acknow => acknow, data_gb => data_gb(7 downto 0) ); psw1 : psw PORT MAP ( ac_out => ac_out, addr_gb => addr_gb(7 downto 0), cy_out => cy_out, indirect_sel => indirect_sel, int_clk => int_clk, int_rst => int_rst, ov_out => ov_out, parity => parity, rd_gb => rd_gb, wr_gb => wr_gb, wr_out => wr_out, ac => ac, acknow => acknow, cy => cy, ov => ov, rs => rs(1 downto 0), data_gb => data_gb(7 downto 0) ); serial1 : serial PORT MAP ( addr_gb => addr_gb(7 downto 0), indirect_sel => indirect_sel, int_clk => int_clk, int_rst => int_rst, rd_gb => rd_gb, rxd => rxd, wr_gb => wr_gb, acknow => acknow, rxd_ctrl => rxd_ctrl, txd => txd, txd_ctrl => txd_ctrl, data_gb => data_gb(7 downto 0) ); sp1 : sp PORT MAP ( dec_rd_sp => dec_rd_sp, inc_wr_sp => inc_wr_sp, int_clk => int_clk, int_rst => int_rst, acknow => acknow, addr_gb => addr_gb(7 downto 0), data_gb => data_gb(7 downto 0), indirect_sel => indirect_sel, rd_gb => rd_gb, wr_gb => wr_gb );END struct;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -