📄 program_ctrl_struct.vhd
字号:
---------------------------------------------------- Model : 8051 Behavioral Model,-- VHDL Entity mc8051.program_ctrl.interface---- Author : Michael Mayer (mrmayer@computer.org),-- Dr. Hardy J. Pottinger,-- Department of Electrical Engineering-- University of Missouri - Rolla---- Created at : 09/22/98 14:04:05--LIBRARY ieee ;USE ieee.std_logic_1164.all;USE ieee.numeric_std.all;LIBRARY mc8051 ;USE mc8051.synth_pack.all;ENTITY program_ctrl IS PORT( cmp_true : IN std_logic ; cycle_states : IN std_logic_vector( 3 DOWNTO 0 ) ; dptr : IN std_logic_vector( 15 DOWNTO 0 ) ; int_clk : IN std_logic ; int_rst : IN std_logic ; pdata : IN std_logic_vector( 7 DOWNTO 0 ) ; rd_pmem1 : IN std_logic ; rd_pmem2 : IN std_logic ; addr_gb : OUT std_logic_vector( 7 DOWNTO 0 ) ; dec_rd_sp : OUT std_logic ; inc_wr_sp : OUT std_logic ; indirect_sel : OUT std_logic ; ir : OUT std_logic_vector( 7 DOWNTO 0 ) ; last_cycle : OUT std_logic ; new_ir : OUT std_logic ; pdat_loc : OUT std_logic_vector( 15 DOWNTO 0 ) ; rd_gb : OUT std_logic ; wr_gb : OUT std_logic ; acknow : INOUT std_logic ; data_gb : INOUT std_logic_vector( 7 DOWNTO 0 ) );-- DeclarationsEND program_ctrl ;---- VHDL Architecture mc8051.program_ctrl.struct---- Created:-- by - mrmayer.UNKNOWN (eceultra3.ece.umr.edu)-- at - 14:04:08 09/22/98---- Generated by Mentor Graphics' Renoir(TM) 3.4 (Build 18)--LIBRARY ieee ;USE ieee.std_logic_1164.all;USE ieee.std_logic_1164.all;USE ieee.numeric_std.all;LIBRARY mc8051 ;USE mc8051.synth_pack.all;LIBRARY mc8051;ARCHITECTURE struct OF program_ctrl IS-- Architecture declarations-- Internal signal declarationsSIGNAL call_addr : std_logic_vector( 15 DOWNTO 0 ) ;SIGNAL force_lcall : std_logic;SIGNAL new_pc : std_logic_vector( 15 DOWNTO 0 ) ;SIGNAL pc : std_logic_vector( 15 DOWNTO 0 ) ;SIGNAL pmem1 : std_logic_vector( 7 DOWNTO 0 ) ;SIGNAL pmem2 : std_logic_vector( 7 DOWNTO 0 ) ;SIGNAL wr_pc : std_logic;-- Implicit buffer signal declarationsSIGNAL ir_internal : std_logic_vector( 7 DOWNTO 0 ) ;SIGNAL new_ir_internal : std_logic;SIGNAL last_cycle_internal : std_logic;-- Component DeclarationsCOMPONENT int_hand PORT ( int_clk : IN std_logic; int_rst : IN std_logic; last_cycle : IN std_logic; call_addr : OUT std_logic_vector( 15 DOWNTO 0 ); force_lcall : OUT std_logic );END COMPONENT;COMPONENT pc_chg PORT ( cmp_true : IN std_logic; cycle_states : IN std_logic_vector( 3 DOWNTO 0 ); dptr : IN std_logic_vector( 15 DOWNTO 0 ); int_clk : IN std_logic; int_rst : IN std_logic; ir : IN std_logic_vector( 7 DOWNTO 0 ); last_cycle : IN std_logic; new_ir : IN std_logic; pc : IN std_logic_vector( 15 DOWNTO 0 ); pmem1 : IN std_logic_vector( 7 DOWNTO 0 ); pmem2 : IN std_logic_vector( 7 DOWNTO 0 ); addr_gb : OUT std_logic_vector( 7 DOWNTO 0 ); dec_rd_sp : OUT std_logic; inc_wr_sp : OUT std_logic; indirect_sel : OUT std_logic; new_pc : OUT std_logic_vector( 15 DOWNTO 0 ); rd_gb : OUT std_logic; wr_gb : OUT std_logic; wr_pc : OUT std_logic; acknow : INOUT std_logic; data_gb : INOUT std_logic_vector( 7 DOWNTO 0 ) );END COMPONENT;COMPONENT pc_inc PORT ( cycle_states : IN std_logic_vector( 3 DOWNTO 0 ); force_lcall : IN std_logic; int_clk : IN std_logic; int_rst : IN std_logic; ir : IN std_logic_vector( 7 DOWNTO 0 ); new_ir : IN std_logic; pc : IN std_logic_vector( 15 DOWNTO 0 ); last_cycle : OUT std_logic; pdat_loc : OUT std_logic_vector( 15 DOWNTO 0 ); wr_pc : OUT std_logic; new_pc : INOUT std_logic_vector( 15 DOWNTO 0 ) );END COMPONENT;COMPONENT pmem_reg PORT ( call_addr : IN std_logic_vector( 15 DOWNTO 0 ); cycle_states : IN std_logic_vector( 3 DOWNTO 0 ); force_lcall : IN std_logic; int_clk : IN std_logic; int_rst : IN std_logic; last_cycle : IN std_logic; new_pc : IN std_logic_vector( 15 DOWNTO 0 ); pdata : IN std_logic_vector( 7 DOWNTO 0 ); rd_pmem1 : IN std_logic; rd_pmem2 : IN std_logic; wr_pc : IN std_logic; acknow : OUT std_logic; data_gb : OUT std_logic_vector( 7 DOWNTO 0 ); ir : OUT std_logic_vector( 7 DOWNTO 0 ); new_ir : OUT std_logic; pc : OUT std_logic_vector( 15 DOWNTO 0 ); pmem1 : OUT std_logic_vector( 7 DOWNTO 0 ); pmem2 : OUT std_logic_vector( 7 DOWNTO 0 ) );END COMPONENT;-- Optional embedded configurations--synopsys translate_offFOR ALL : int_hand USE ENTITY mc8051.int_hand;FOR ALL : pc_chg USE ENTITY mc8051.pc_chg;FOR ALL : pc_inc USE ENTITY mc8051.pc_inc;FOR ALL : pmem_reg USE ENTITY mc8051.pmem_reg;--synopsys translate_onBEGIN-- Instance port mappings. I3 : int_hand PORT MAP ( int_clk => int_clk, int_rst => int_rst, last_cycle => last_cycle_internal, call_addr => call_addr(15 downto 0), force_lcall => force_lcall ); I0 : pc_chg 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, ir => ir_internal(7 downto 0), last_cycle => last_cycle_internal, new_ir => new_ir_internal, pc => pc(15 downto 0), pmem1 => pmem1(7 downto 0), pmem2 => pmem2(7 downto 0), addr_gb => addr_gb(7 downto 0), dec_rd_sp => dec_rd_sp, inc_wr_sp => inc_wr_sp, indirect_sel => indirect_sel, new_pc => new_pc(15 downto 0), rd_gb => rd_gb, wr_gb => wr_gb, wr_pc => wr_pc, acknow => acknow, data_gb => data_gb(7 downto 0) ); I1 : pc_inc PORT MAP ( cycle_states => cycle_states(3 downto 0), force_lcall => force_lcall, int_clk => int_clk, int_rst => int_rst, ir => ir_internal(7 downto 0), new_ir => new_ir_internal, pc => pc(15 downto 0), last_cycle => last_cycle_internal, pdat_loc => pdat_loc(15 downto 0), wr_pc => wr_pc, new_pc => new_pc(15 downto 0) ); I2 : pmem_reg PORT MAP ( call_addr => call_addr(15 downto 0), cycle_states => cycle_states(3 downto 0), force_lcall => force_lcall, int_clk => int_clk, int_rst => int_rst, last_cycle => last_cycle_internal, new_pc => new_pc(15 downto 0), pdata => pdata(7 downto 0), rd_pmem1 => rd_pmem1, rd_pmem2 => rd_pmem2, wr_pc => wr_pc, acknow => acknow, data_gb => data_gb(7 downto 0), ir => ir_internal(7 downto 0), new_ir => new_ir_internal, pc => pc(15 downto 0), pmem1 => pmem1(7 downto 0), pmem2 => pmem2(7 downto 0) ); -- Implicit buffered output assignments ir <= ir_internal; new_ir <= new_ir_internal; last_cycle <= last_cycle_internal;END struct;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -