m3s007bo.vhd

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

VHD
162
字号
--*******************************************************************       ----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                                      ----Conditional jump test subblock for m8051--Copyright Mentor Graphics Corporation and Licensors 1998. All rights reserved--v1.008--*********************************************************************--@(#)m3s007bo.vhd	1.2 04/08/99 SCCS Version Control--File	        :       m3s007bo.vhd--Created on    :       8th October 1995--Purpose       :       conditional jump test subblock for M8051--Version       :       1.008--Mod Date      :       2nd April 1998--Mod History	:       1.008 _e suffix removed from entity names.--                      1.007 STATDs 7-12 removed--                      1.006 Sensivity List Revisions--                      1.005 C_TRUE clocked at c2s4p1--                      1.004-CTRU only clocked at end of CYC1--                      1.003-changed CA inverted, CTRU delayed--                      1.002-Calling file changed to m8051.vhd--                      1.001(Original)------*********************************************************************--Hierarchy record      :--Called by             :m8051.vhd--Calls to              :None--                      :--                      :--                      :---------------------------------------------------library IEEE;use IEEE.std_logic_1164.all;library WORK;--*********************************************************************--Entity Definition--*********************************************************************entity m3s007bo 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(C_TRUE:            out std_logic;            ALUDAT:            in std_logic_vector(7 downto 0);            OPC:            in std_logic_vector(7 downto 4);            PSWDAT:            in std_logic_vector(7 downto 7);            CYC:            in std_logic_vector(2 downto 2);            STATD:            in std_logic_vector(3 downto 3);            BBIT,            DIV2CK,            NX1,            RST:            in std_logic             );       end m3s007bo;--*********************************************************************--Architecture definition--*********************************************************************architecture m3s007bo_rtl of m3s007bo is--*********************************************************************--*********************************************************************--Signal definitions--*********************************************************************signal AA,CA,TMPCTRU:std_logic; --*********************************************************************begin--*********************************************************************--Process Definitions--*********************************************************************accumulator_zero:process(ALUDAT)-- test for zero in the accumulator via ALU busbegin   AA <= ALUDAT(0) or ALUDAT(1) or ALUDAT(2) or ALUDAT(3) or ALUDAT(4)         or ALUDAT(5) or ALUDAT(6) or ALUDAT(7);end process accumulator_zero;--*********************************************************************misc3:process(OPC,PSWDAT,BBIT,AA)begin  case OPC(6 downto 4) is      when "000" => CA <= '1';      when "001" => CA <= BBIT;      when "010" => CA <= BBIT;      when "011" => CA <= not BBIT;      when "100" => CA <= PSWDAT(7);      when "101" => CA <= not PSWDAT(7);      when "110" => CA <= not AA;      when "111" => CA <= AA;      when others => CA <= 'X';  end case;end process misc3;--*********************************************************************misc4:process(OPC, AA, CA)begin  case OPC(7) is      when '0' => TMPCTRU <= CA;      when '1' => TMPCTRU <= AA;      when others => TMPCTRU<= 'X';  end case;end process misc4;--*********************************************************************ctruout:process(NX1,RST)-- Updates condition at the beginning of c2s4p1.  This output is used by-- module m3s010bo at c2s5p1 and module m3s008 at c2s5p2 for jbc writes.begin    if RST ='1' then       C_TRUE <= '0';    elsif NX1'event and NX1 ='1' then       if (CYC(2) and STATD(3) and not DIV2CK) ='1' then           C_TRUE <= TMPCTRU;       end if;     end if;end process ctruout;--*********************************************************************end m3s007bo_rtl;--*********************************************************************

⌨️ 快捷键说明

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