⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mc8051_p.vhd

📁 这是用C语言编写的关于8051的VHDL的源代码
💻 VHD
📖 第 1 页 / 共 3 页
字号:
                            IC_ANL_C_BIT,                            IC_ANL_C_NBIT,                            IC_CJNE_A_D,                            IC_CJNE_A_DATA,                            IC_CJNE_RR_DATA,                            IC_CJNE_ATRI_DATA,                            IC_CLR_A,                            IC_CLR_C,                            IC_CLR_BIT,                            IC_CPL_A,                            IC_CPL_C,                            IC_CPL_BIT,                            IC_DA_A,                            IC_DEC_A,                            IC_DEC_RR,                            IC_DEC_D,                            IC_DEC_ATRI,                            IC_DIV_AB,                            IC_DJNZ_RR,                            IC_DJNZ_D,                            IC_INC_A,                            IC_INC_RR,                            IC_INC_D,                            IC_INC_ATRI,                            IC_INC_DPTR,                            IC_JB,                            IC_JBC,                            IC_JC,                            IC_JMP_A_DPTR,                            IC_JNB,                            IC_JNC,                            IC_JNZ,                            IC_JZ,                            IC_LCALL,                            IC_LJMP,                            IC_MOV_A_RR,                            IC_MOV_A_D,                            IC_MOV_A_ATRI,                            IC_MOV_A_DATA,                            IC_MOV_RR_A,                            IC_MOV_RR_D,                            IC_MOV_RR_DATA,                            IC_MOV_D_A,                            IC_MOV_D_RR,                            IC_MOV_D_D,                            IC_MOV_D_ATRI,                            IC_MOV_D_DATA,                            IC_MOV_ATRI_A,                            IC_MOV_ATRI_D,                            IC_MOV_ATRI_DATA,                            IC_MOVC_A_ATDPTR,                            IC_MOVC_A_ATPC,                            IC_MOVX_A_ATRI,                            IC_MOVX_A_ATDPTR,                            IC_MOVX_ATRI_A,                            IC_MOVX_ATDPTR_A,                            IC_MOV_C_BIT,                            IC_MOV_BIT_C,                            IC_MOV_DPTR_DATA,                            IC_MUL_AB,                            IC_NOP,                            IC_ORL_A_RR,                            IC_ORL_A_D,                            IC_ORL_A_ATRI,                            IC_ORL_A_DATA,                            IC_ORL_D_A,                            IC_ORL_D_DATA,                            IC_ORL_C_BIT,                            IC_ORL_C_NBIT,                            IC_POP,                            IC_PUSH,                            IC_RET,                            IC_RETI,                            IC_RL_A,                            IC_RLC_A,                            IC_RR_A,                            IC_RRC_A,                            IC_SETB_C,                            IC_SETB_BIT,                            IC_SJMP,                            IC_SUBB_A_RR,                            IC_SUBB_A_D,                            IC_SUBB_A_ATRI,                            IC_SUBB_A_DATA,                            IC_SWAP_A,                            IC_XCH_A_RR,                            IC_XCH_A_D,                            IC_XCH_A_ATRI,                            IC_XCHD_A_ATRI,                            IC_XRL_A_RR,                            IC_XRL_A_D,                            IC_XRL_A_ATRI,                            IC_XRL_A_DATA,                            IC_XRL_D_A,                            IC_XRL_D_DATA);    type t_tmr_lv is array(C_IMPL_N_TMR-1 downto 0) of    std_logic_vector(7 downto 0);    type t_tmr_us is array(C_IMPL_N_TMR-1 downto 0) of unsigned(7 downto 0);    type t_tmr_us2 is array(C_IMPL_N_TMR-1 downto 0) of unsigned(1 downto 0);    type t_tmr_l is array(C_IMPL_N_TMR-1 downto 0) of std_logic;    type t_siu_lv is array(C_IMPL_N_SIU-1 downto 0) of    std_logic_vector(7 downto 0);    type t_siu_us is array(C_IMPL_N_SIU-1 downto 0) of unsigned(7 downto 0);    type t_siu_l is array(C_IMPL_N_SIU-1 downto 0) of std_logic;    type t_ext_l is array(C_IMPL_N_EXT-1 downto 0) of std_logic;    component addsub_cy    generic (DWIDTH : integer);    port (opa_i    : in  std_logic_vector(DWIDTH-1 downto 0);          opb_i    : in  std_logic_vector(DWIDTH-1 downto 0);          addsub_i : in  std_logic;          cy_i     : in  std_logic;          cy_o     : out std_logic;          rslt_o   : out std_logic_vector(DWIDTH-1 downto 0));  end component;  component addsub_ovcy    generic (DWIDTH : integer);    port (opa_i    : in  std_logic_vector(DWIDTH-1 downto 0);          opb_i    : in  std_logic_vector(DWIDTH-1 downto 0);          addsub_i : in  std_logic;          cy_i     : in  std_logic;          cy_o     : out std_logic;          ov_o     : out std_logic;          rslt_o   : out std_logic_vector(DWIDTH-1 downto 0));  end component;  component addsub_core    generic (DWIDTH : integer);    port (opa_i    : in  std_logic_vector(DWIDTH-1 downto 0);          opb_i    : in  std_logic_vector(DWIDTH-1 downto 0);          addsub_i : in  std_logic;          cy_i     : in  std_logic;          cy_o     : out std_logic_vector((DWIDTH-1)/4 downto 0);          ov_o     : out std_logic;          rslt_o   : out std_logic_vector(DWIDTH-1 downto 0));  end component;  component alucore    generic (DWIDTH : integer);    port (op_a_i    : in  std_logic_vector(DWIDTH-1 downto 0);          op_b_i    : in  std_logic_vector(DWIDTH-1 downto 0);          alu_cmd_i : in  std_logic_vector(3 downto 0);          cy_i      : in  std_logic_vector((DWIDTH-1)/4 downto 0);          cy_o      : out std_logic_vector((DWIDTH-1)/4 downto 0);          result_o  : out std_logic_vector(DWIDTH-1 downto 0));  end component;  component comb_divider    generic (      DWIDTH : integer);    port (      dvdnd_i : in  std_logic_vector(DWIDTH-1 downto 0);      dvsor_i : in  std_logic_vector(DWIDTH-1 downto 0);      qutnt_o : out std_logic_vector(DWIDTH-1 downto 0);      rmndr_o : out std_logic_vector(DWIDTH-1 downto 0));  end component;  component comb_mltplr    generic (      DWIDTH : integer);    port (      mltplcnd_i : in  std_logic_vector(DWIDTH-1 downto 0);      mltplctr_i : in  std_logic_vector(DWIDTH-1 downto 0);      product_o  : out std_logic_vector((DWIDTH*2)-1 downto 0));  end component;  component dcml_adjust    generic (      DWIDTH : integer);    port (      data_i : in  std_logic_vector(DWIDTH-1 downto 0);      cy_i   : in  std_logic_vector((DWIDTH-1)/4 downto 0);      data_o : out std_logic_vector(DWIDTH-1 downto 0);      cy_o   : out std_logic);  end component;  component alumux    generic (DWIDTH : integer);    port (rom_data_i    : in  std_logic_vector(DWIDTH-1 downto 0);          ram_data_i    : in  std_logic_vector(DWIDTH-1 downto 0);          acc_i         : in  std_logic_vector(DWIDTH-1 downto 0);          cmd_i         : in  std_logic_vector(5 downto 0);          cy_i          : in  std_logic_vector((DWIDTH-1)/4 downto 0);          ov_i          : in  std_logic;          cy_o          : out std_logic_vector((DWIDTH-1)/4 downto 0);          ov_o          : out std_logic;          result_a_o    : out std_logic_vector(DWIDTH-1 downto 0);          result_b_o    : out std_logic_vector(DWIDTH-1 downto 0);          result_i      : in  std_logic_vector(DWIDTH-1 downto 0);          new_cy_i      : in  std_logic_vector((DWIDTH-1)/4 downto 0);          addsub_rslt_i : in  std_logic_vector(DWIDTH-1 downto 0);          addsub_cy_i   : in  std_logic_vector((DWIDTH-1)/4 downto 0);          addsub_ov_i   : in  std_logic;          op_a_o        : out std_logic_vector(DWIDTH-1 downto 0);          op_b_o        : out std_logic_vector(DWIDTH-1 downto 0);          alu_cmd_o     : out std_logic_vector(3 downto 0);          opa_o         : out std_logic_vector(DWIDTH-1 downto 0);          opb_o         : out std_logic_vector(DWIDTH-1 downto 0);          addsub_o      : out std_logic;          addsub_cy_o   : out std_logic;          dvdnd_o       : out std_logic_vector(DWIDTH-1 downto 0);          dvsor_o       : out std_logic_vector(DWIDTH-1 downto 0);          qutnt_i       : in  std_logic_vector(DWIDTH-1 downto 0);          rmndr_i       : in  std_logic_vector(DWIDTH-1 downto 0);          mltplcnd_o    : out std_logic_vector(DWIDTH-1 downto 0);          mltplctr_o    : out std_logic_vector(DWIDTH-1 downto 0);          product_i     : in  std_logic_vector((DWIDTH*2)-1 downto 0);          dcml_data_o   : out std_logic_vector(DWIDTH-1 downto 0);          dcml_data_i   : in  std_logic_vector(DWIDTH-1 downto 0);          dcml_cy_i     : in  std_logic);  end component;  component mc8051_alu    generic (      DWIDTH : integer);    port (      rom_data_i : in  std_logic_vector(DWIDTH-1 downto 0);      ram_data_i : in  std_logic_vector(DWIDTH-1 downto 0);      acc_i      : in  std_logic_vector(DWIDTH-1 downto 0);      cmd_i      : in  std_logic_vector(5 downto 0);      cy_i       : in  std_logic_vector((DWIDTH-1)/4 downto 0);      ov_i       : in  std_logic;      new_cy_o   : out std_logic_vector((DWIDTH-1)/4 downto 0);      new_ov_o   : out std_logic;      result_a_o : out std_logic_vector(DWIDTH-1 downto 0);      result_b_o : out std_logic_vector(DWIDTH-1 downto 0));  end component;  component mc8051_siu    port (clk     : in  std_logic;          reset   : in  std_logic;          tf_i    : in  std_logic;          trans_i : in  std_logic;          rxd_i   : in  std_logic;          scon_i  : in  std_logic_vector(5 downto 0);          sbuf_i  : in  std_logic_vector(7 downto 0);          smod_i  : in  std_logic;          sbuf_o  : out std_logic_vector(7 downto 0);          scon_o  : out std_logic_vector(2 downto 0);          rxdwr_o : out std_logic;          rxd_o   : out std_logic;          txd_o   : out std_logic);  end component;  component mc8051_tmrctr    port (clk        : in  std_logic;          reset      : in  std_logic;          int0_i     : in  std_logic;          int1_i     : in  std_logic;          t0_i       : in  std_logic;          t1_i       : in  std_logic;          tmod_i     : in  std_logic_vector(7 downto 0);          tcon_tr0_i : in  std_logic;          tcon_tr1_i : in  std_logic;          reload_i   : in  std_logic_vector(7 downto 0);          wt_en_i    : in  std_logic;          wt_i       : in  std_logic_vector(1 downto 0);          th0_o      : out std_logic_vector(7 downto 0);          tl0_o      : out std_logic_vector(7 downto 0);          th1_o      : out std_logic_vector(7 downto 0);          tl1_o      : out std_logic_vector(7 downto 0);          tf0_o      : out std_logic;          tf1_o      : out std_logic);  end component;  component control_fsm    port ( state_i     : in t_state;    -- actual state            help_i     : in std_logic_vector (7 downto 0);  -- general help-reg

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -