m3s014bo.vhd

来自「another 8051 core porocesssor vhdl sourc」· VHDL 代码 · 共 165 行

VHD
165
字号
--*******************************************************************       ----IMPORTANT NOTICE                                                          ----================                                                          ----Copyright Mentor Graphics Corporation 1996 - 1999.  All rights reserved.  ----This file and associated deliverables are the trade secrets,              ----confidential information and copyrighted works of Mentor Graphics         ----Corporation and its licensors and are subject to your license agreement   ----with Mentor Graphics Corporation.                                         ----                                                                          ----Use of these deliverables for the purpose of making silicon from an IC    ----design is limited to the terms and conditions of your license agreement   ----with Mentor Graphics If you have further questions please contact Mentor  ----Graphics Customer Support.                                                ----                                                                          ----This Mentor Graphics core (m8051 v1999.120) was extracted on              ----workstation hostid _hostid_ Inventra                                      ---- Stack Pointer for M8051--Copyright Mentor Graphics Corporation and Licensors 1998. All Rights Reserved.--v1.003--*********************************************************************--@(#)m3s014bo.vhd	1.2 04/08/99 SCCS Version Control--File	        :       m3s014bo.vhd--Created on    :       28th November 1995--Purpose       :       Stack Pointer sub-block of m8051--Version       :       1.003--Mod Date      :       2nd April 1998--Mod History	:	1.003 _e suffix removed from entity names.--                      1.002 Sensitivity List Revisions.----*********************************************************************--Hierarchy record      :--Called by             :m3s020bo.vhd--Calls to              :None--                      :--                      :--                      :---------------------------------------------------library IEEE;use IEEE.std_logic_1164.all;library WORK;--*********************************************************************--Entity Definition--*********************************************************************entity m3s014bo is--*******************************************************************       ----IMPORTANT NOTICE                                                          ----================                                                          ----Copyright Mentor Graphics Corporation 1996 - 1999.  All rights reserved.  ----This file and associated deliverables are the trade secrets,              ----confidential information and copyrighted works of Mentor Graphics         ----Corporation and its licensors and are subject to your license agreement   ----with Mentor Graphics Corporation.                                         ----                                                                          ----Use of these deliverables for the purpose of making silicon from an IC    ----design is limited to the terms and conditions of your license agreement   ----with Mentor Graphics If you have further questions please contact Mentor  ----Graphics Customer Support.                                                ----                                                                          ----This Mentor Graphics core (m8051 v1999.120) was extracted on              ----workstation hostid _hostid_ Inventra                                      --       port(SP:            out std_logic_vector(7 downto 0);            RAMDI:            in std_logic_vector(7 downto 0);            SPC:            in std_logic_vector(1 downto 0);            SFRW:            in std_logic_vector(16 downto 16);            DIV2CK,            NX1,            CLEAR,            ENAB:            in std_logic             );       end m3s014bo;--*********************************************************************--Architecture definition--*********************************************************************architecture m3s014bo_rtl of m3s014bo is--*********************************************************************--*********************************************************************--Signal definitions--*********************************************************************signal L_SP,LOCALA,LOCALB:std_logic_vector(7 downto 0);signal CD,CU:std_logic_vector(6 downto 0);--*********************************************************************begin--*********************************************************************--Process Definitions--*********************************************************************localout:process(L_SP)begin   SP <= L_SP;end process localout;--*********************************************************************muxlocala:process(SFRW, RAMDI, LOCALB)begin  case SFRW(16) is      when '0' => LOCALA <= LOCALB;      when '1' => LOCALA <= RAMDI;      when others => LOCALA <= "XXXXXXXX";  end case;end process muxlocala;--*********************************************************************setsp:process(NX1)begin   if (NX1'event and NX1 ='1') then      if CLEAR ='1' then           L_SP <= "00000111" ;      elsif ((ENAB and not DIV2CK)='1') then           L_SP <= LOCALA;      end if;   end if;end process setsp;--*********************************************************************setlocalb:process(SPC,L_SP,CU,CD)begin   LOCALB(0) <= (SPC(0) or SPC(1)) XOR L_SP(0);      LOCALB(1) <= (CU(0) or CD(0)) XOR L_SP(1);   LOCALB(2) <= (CU(1) or CD(1)) XOR L_SP(2);   LOCALB(3) <= (CU(2) or CD(2)) XOR L_SP(3);   LOCALB(4) <= (CU(3) or CD(3)) XOR L_SP(4);   LOCALB(5) <= (CU(4) or CD(4)) XOR L_SP(5);   LOCALB(6) <= (CU(5) or CD(5)) XOR L_SP(6);   LOCALB(7) <= (CU(6) or CD(6)) XOR L_SP(7);end process setlocalb;--*********************************************************************setcueven:process(SPC, L_SP, CU)begin    CU(0) <= SPC(1) and L_SP(0);   CU(2) <= CU(1) and L_SP(2);   CU(4) <= CU(3) and L_SP(4);   CU(6) <= CU(5) and L_SP(6);end process setcueven;--*********************************************************************setcuodd:process(CU, L_SP)begin    CU(1) <= CU(0) and L_SP(1);   CU(3) <= CU(2) and L_SP(3);   CU(5) <= CU(4) and L_SP(5);end process setcuodd;--*********************************************************************setcdeven:process(SPC, L_SP, CD)begin     CD(0) <= SPC(0) and not L_SP(0);    CD(2) <= CD(1) and not L_SP(2);    CD(4) <= CD(3) and not L_SP(4);    CD(6) <= CD(5) and not L_SP(6);end process setcdeven;--*********************************************************************setcdodd:process(CD, L_SP)begin     CD(1) <= CD(0) and not L_SP(1);    CD(3) <= CD(2) and not L_SP(3);    CD(5) <= CD(4) and not L_SP(5);end process setcdodd;--*********************************************************************end m3s014bo_rtl;--*********************************************************************

⌨️ 快捷键说明

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