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

📄 orca_io.vhd

📁 porting scintilla to qt
💻 VHD
📖 第 1 页 / 共 5 页
字号:
-- ---------------------------------------------------------------------- >>>>>>>>>>>>>>>>>>>>>>>>> COPYRIGHT NOTICE <<<<<<<<<<<<<<<<<<<<<<<<<-- ---------------------------------------------------------------------- Copyright (c) 2005 by Lattice Semiconductor Corporation-- --------------------------------------------------------------------------                     Lattice Semiconductor Corporation--                     5555 NE Moore Court--                     Hillsboro, OR 97214--                     U.S.A.----                     TEL: 1-800-Lattice  (USA and Canada)--                          1-408-826-6000 (other locations)----                     web: http://www.latticesemi.com/--                     email: techsupport@latticesemi.com---- ------------------------------------------------------------------------ Simulation Library File for EC/XP---- $Header: /home/dmsys/pvcs/RCSMigTest/rcs/vhdl/pkg/vhdsclibs/data/orca5mg/src/RCS/ORCA_IO.vhd,v 1.4 2005/05/19 20:36:59 pradeep Exp $ -- ------- cell tsall -------LIBRARY ieee;USE ieee.std_logic_1164.all;USE ieee.vital_timing.all;USE ieee.vital_primitives.all;USE work.global.tsallnet;  -- entity declaration --ENTITY tsall IS   GENERIC(      TimingChecksOn  : boolean := FALSE;      XOn             : boolean := FALSE;      MsgOn           : boolean := FALSE;      InstancePath    : string := "tsall");    PORT(      tsall           : IN std_logic := 'Z');END tsall; -- architecture body --ARCHITECTURE v OF tsall IS BEGIN    ---------------------   --  input path delays   ---------------------   WireDelay : BLOCK   BEGIN   --  empty   END BLOCK;    --------------------   --  behavior section   --------------------   tsallnet <= tsall; END v; ------- cell bb -------LIBRARY ieee;USE ieee.std_logic_1164.all;USE ieee.vital_timing.all;USE ieee.vital_primitives.all;USE work.global.tsallnet;-- entity declaration --ENTITY bb IS   GENERIC(      TimingChecksOn  : boolean := TRUE;      XOn             : boolean := FALSE;      MsgOn           : boolean := TRUE;      InstancePath    : string := "bb";      tpd_i_b         :  VitalDelayType01z :=                (0.001 ns, 0.001 ns, 0.001 ns, 0.001 ns, 0.001 ns, 0.001 ns);      tpd_t_b         :  VitalDelayType01z :=               (0.001 ns, 0.001 ns, 0.001 ns, 0.001 ns, 0.001 ns, 0.001 ns);      tpd_b_o         :  VitalDelayType01 := (0.001 ns, 0.001 ns);      tipd_b          :  VitalDelayType01 := (0.0 ns, 0.0 ns);      tipd_i          :  VitalDelayType01 := (0.0 ns, 0.0 ns);      tipd_t          :  VitalDelayType01 := (0.0 ns, 0.0 ns));   PORT(      b               :  INOUT std_logic;      i               :  IN std_logic;      t               :  IN std_logic;      o               :  OUT std_logic);    ATTRIBUTE Vital_Level0 OF bb : ENTITY IS TRUE; END bb;-- architecture body --ARCHITECTURE v OF bb IS   ATTRIBUTE Vital_Level0 OF v : ARCHITECTURE IS TRUE;   SIGNAL b_ipd  : std_logic := 'X';   SIGNAL i_ipd  : std_logic := 'X';   SIGNAL t_ipd  : std_logic := 'X';BEGIN   ---------------------   --  input path delays   ---------------------   WireDelay : BLOCK   BEGIN   VitalWireDelay (b_ipd, b, tipd_b);   VitalWireDelay (i_ipd, i, tipd_i);   VitalWireDelay (t_ipd, t, tipd_t);   END BLOCK;   --------------------   --  behavior section   --------------------   VitalBehavior : PROCESS (b_ipd, i_ipd, t_ipd, tsallnet)   -- functionality results   VARIABLE results : std_logic_vector(1 to 2) := (others => 'X');   ALIAS b_zd       : std_ulogic IS results(1);   ALIAS o_zd       : std_ulogic IS results(2);   VARIABLE tri     : std_logic := 'X';   VARIABLE tpd_tsall_b : VitalDelayType01z :=                (0.001 ns, 0.001 ns, 0.001 ns, 0.001 ns, 0.001 ns, 0.001 ns);   -- output glitch detection VARIABLEs   VARIABLE b_GlitchData        : VitalGlitchDataType;   VARIABLE o_GlitchData        : VitalGlitchDataType;   BEGIN      -------------------------      --  functionality section      -------------------------      tri := VitalOR2 (a => NOT(tsallnet), b => t_ipd);      b_zd := VitalBUFIF0 (data => i_ipd, enable => tri);      o_zd := VitalBUF(b_ipd);      ----------------------      --  path delay section      ----------------------      VitalPathDelay01z (       OutSignal => b,       OutSignalName => "b",       OutTemp => b_zd,       Paths => (0 => (i_ipd'last_event, tpd_i_b, TRUE),                 1 => (t_ipd'last_event, tpd_t_b, TRUE),                 2 => (tsallnet'last_event, tpd_tsall_b, TRUE)),       GlitchData => b_GlitchData,       Mode => OnDetect,       XOn => XOn,       MsgOn => MsgOn);      VitalPathDelay01 (       OutSignal => o,       OutSignalName => "o",       OutTemp => o_zd,       Paths => (0 => (b_ipd'last_event, tpd_b_o, TRUE)),       GlitchData => o_GlitchData,       Mode => OnDetect,       XOn => XOn,       MsgOn => MsgOn);END PROCESS;END v;------- cell bbpd -------LIBRARY ieee;USE ieee.std_logic_1164.all;USE ieee.vital_timing.all;USE ieee.vital_primitives.all;USE work.global.tsallnet;-- entity declaration --ENTITY bbpd IS   GENERIC(      TimingChecksOn  : boolean := TRUE;      XOn             : boolean := FALSE;      MsgOn           : boolean := TRUE;      InstancePath    : string := "bbpd";      tpd_i_b         :	VitalDelayType01z :=                (0.001 ns, 0.001 ns, 0.001 ns, 0.001 ns, 0.001 ns, 0.001 ns);      tpd_t_b         :	VitalDelayType01z :=                (0.001 ns, 0.001 ns, 0.001 ns, 0.001 ns, 0.001 ns, 0.001 ns);      tpd_b_o         :	VitalDelayType01 := (0.001 ns, 0.001 ns);      tipd_b          :	VitalDelayType01 := (0.0 ns, 0.0 ns);      tipd_i          :	VitalDelayType01 := (0.0 ns, 0.0 ns);      tipd_t          :	VitalDelayType01 := (0.0 ns, 0.0 ns));   PORT(      b               :	INOUT std_logic;      i               :	IN std_logic;      t               :	IN std_logic;      o               :	OUT std_logic);    ATTRIBUTE Vital_Level0 OF bbpd : ENTITY IS TRUE; END bbpd;-- architecture body --ARCHITECTURE v OF bbpd IS   ATTRIBUTE Vital_Level0 OF v : ARCHITECTURE IS TRUE;   SIGNAL b_ipd	 : std_logic := 'X';   SIGNAL i_ipd	 : std_logic := 'X';   SIGNAL t_ipd	 : std_logic := 'X';BEGIN   ---------------------   --  input path delays   ---------------------   WireDelay : BLOCK   BEGIN   VitalWireDelay (b_ipd, b, tipd_b);   VitalWireDelay (i_ipd, i, tipd_i);   VitalWireDelay (t_ipd, t, tipd_t);   END BLOCK;   --------------------   --  behavior section   --------------------   VitalBehavior : PROCESS (b_ipd, i_ipd, t_ipd, tsallnet)   -- functionality results   VARIABLE b_ipd2  : std_ulogic := 'X';   VARIABLE results : std_logic_vector(1 to 2) := (others => 'X');   ALIAS b_zd       : std_ulogic IS results(1);   ALIAS o_zd       : std_ulogic IS results(2);   VARIABLE tri     : std_logic := 'X';   VARIABLE tpd_tsall_b : VitalDelayType01z :=                (0.001 ns, 0.001 ns, 0.001 ns, 0.001 ns, 0.001 ns, 0.001 ns);   -- output glitch detection VARIABLEs   VARIABLE b_GlitchData	: VitalGlitchDataType;   VARIABLE o_GlitchData	: VitalGlitchDataType;   BEGIN      -------------------------      --  functionality section      -------------------------      b_ipd2 := VitalIDENT (data => b_ipd,                           resultmap => ('U','X','0','1','L'));      tri := VitalOR2 (a => NOT(tsallnet), b => t_ipd);      b_zd := VitalBUFIF0 (data => i_ipd, enable => tri,                           resultmap => ('U','X','0','1','L'));      o_zd := VitalBUF(b_ipd2);      ----------------------      --  path delay section      ----------------------      VitalPathDelay01z (       OutSignal => b,       OutSignalName => "b",       OutTemp => b_zd,       Paths => (0 => (i_ipd'last_event, tpd_i_b, TRUE),                 1 => (t_ipd'last_event, tpd_t_b, TRUE),                 2 => (tsallnet'last_event, tpd_tsall_b, TRUE)),       GlitchData => b_GlitchData,       Mode => OnDetect,       XOn => XOn,       MsgOn => MsgOn);      VitalPathDelay01 (       OutSignal => o,       OutSignalName => "o",       OutTemp => o_zd,       Paths => (0 => (b_ipd'last_event, tpd_b_o, TRUE)),       GlitchData => o_GlitchData,       Mode => OnDetect,       XOn => XOn,       MsgOn => MsgOn);END PROCESS;END v;------- cell bbpu -------LIBRARY ieee;USE ieee.std_logic_1164.all;USE ieee.vital_timing.all;USE ieee.vital_primitives.all;USE work.global.tsallnet;-- entity declaration --ENTITY bbpu IS   GENERIC(      TimingChecksOn  : boolean := TRUE;      XOn             : boolean := FALSE;      MsgOn           : boolean := TRUE;      InstancePath    : string := "bbpu";      tpd_i_b         :	VitalDelayType01z :=                (0.001 ns, 0.001 ns, 0.001 ns, 0.001 ns, 0.001 ns, 0.001 ns);      tpd_t_b         :	VitalDelayType01z :=                (0.001 ns, 0.001 ns, 0.001 ns, 0.001 ns, 0.001 ns, 0.001 ns);      tpd_b_o         :	VitalDelayType01 := (0.001 ns, 0.001 ns);      tipd_b          :	VitalDelayType01 := (0.0 ns, 0.0 ns);      tipd_i          :	VitalDelayType01 := (0.0 ns, 0.0 ns);      tipd_t          :	VitalDelayType01 := (0.0 ns, 0.0 ns));   PORT(      b               :	INOUT std_logic;      i               :	IN std_logic;      t               :	IN std_logic;      o               :	OUT std_logic);    ATTRIBUTE Vital_Level0 OF bbpu : ENTITY IS TRUE; END bbpu;-- architecture body --ARCHITECTURE v OF bbpu IS   ATTRIBUTE Vital_Level0 OF v : ARCHITECTURE IS TRUE;   SIGNAL b_ipd	 : std_logic := 'X';   SIGNAL i_ipd	 : std_logic := 'X';   SIGNAL t_ipd	 : std_logic := 'X';BEGIN   ---------------------   --  input path delays   ---------------------   WireDelay : BLOCK   BEGIN   VitalWireDelay (b_ipd, b, tipd_b);   VitalWireDelay (i_ipd, i, tipd_i);   VitalWireDelay (t_ipd, t, tipd_t);   END BLOCK;   --------------------   --  behavior section   --------------------   VitalBehavior : PROCESS (b_ipd, i_ipd, t_ipd, tsallnet)   -- functionality results   VARIABLE b_ipd2  : std_ulogic := 'X';   VARIABLE results : std_logic_vector(1 to 2) := (others => 'X');   ALIAS b_zd       : std_ulogic IS results(1);   ALIAS o_zd       : std_ulogic IS results(2);   VARIABLE tri     : std_logic := 'X';   VARIABLE tpd_tsall_b : VitalDelayType01z :=                (0.001 ns, 0.001 ns, 0.001 ns, 0.001 ns, 0.001 ns, 0.001 ns);   -- output glitch detection VARIABLEs   VARIABLE b_GlitchData	: VitalGlitchDataType;   VARIABLE o_GlitchData	: VitalGlitchDataType;   BEGIN

⌨️ 快捷键说明

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