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

📄 orca_io.vhd

📁 porting scintilla to qt
💻 VHD
📖 第 1 页 / 共 5 页
字号:
      -------------------------      --  functionality section      -------------------------      b_ipd2 := VitalIDENT (data => b_ipd,                           resultmap => ('U','X','0','1','H'));      tri := VitalOR2 (a => NOT(tsallnet), b => t_ipd);      b_zd := VitalBUFIF0 (data => i_ipd, enable => tri,                         resultmap => ('U','X','0','1','H'));      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 bbw -------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 bbw IS   GENERIC(      Keepermode      : boolean := FALSE;      TimingChecksOn  : boolean := TRUE;      XOn             : boolean := FALSE;      MsgOn           : boolean := TRUE;      InstancePath    : string := "bbw";      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 bbw : ENTITY IS TRUE;END bbw;-- architecture body --ARCHITECTURE v OF bbw IS   ATTRIBUTE Vital_Level0 OF v : ARCHITECTURE IS TRUE;   SIGNAL b_int  : std_logic := 'L';   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   --------------------   KEEP : PROCESS (b)   BEGIN        IF (b'event) THEN           IF (b = '1') THEN              b_int <= 'H';           ELSIF (b = '0') THEN              b_int <= 'L';           END IF;        END IF;   END PROCESS;   b <= b_int;   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 ib -------LIBRARY ieee;USE ieee.std_logic_1164.all;USE ieee.vital_timing.all;USE ieee.vital_primitives.all;-- entity declaration --ENTITY ib IS   GENERIC(      TimingChecksOn  : boolean := TRUE;      XOn             : boolean := FALSE;      MsgOn           : boolean := TRUE;      InstancePath    : string := "ib";      tpd_i_o         :	VitalDelayType01 := (0.001 ns, 0.001 ns);      tipd_i          :	VitalDelayType01 := (0.0 ns, 0.0 ns));   PORT(      i               :	IN std_logic;      o               :	OUT std_logic);    ATTRIBUTE Vital_Level0 OF ib : ENTITY IS TRUE; END ib;-- architecture body --ARCHITECTURE v OF ib IS   ATTRIBUTE Vital_Level0 OF v : ARCHITECTURE IS TRUE;   SIGNAL i_ipd	 : std_logic := 'X';BEGIN   ---------------------   --  input path delays   ---------------------   WireDelay : BLOCK   BEGIN   VitalWireDelay (i_ipd, i, tipd_i);   END BLOCK;   --------------------   --  behavior section   --------------------   VitalBehavior : PROCESS (i_ipd)   -- functionality results   VARIABLE results : std_logic_vector(1 to 1) := (others => 'X');   ALIAS o_zd : std_ulogic IS results(1);   -- output glitch detection VARIABLEs   VARIABLE o_GlitchData	: VitalGlitchDataType;   BEGIN      -------------------------      --  functionality section      -------------------------      o_zd := VitalBUF(i_ipd);      ----------------------      --  path delay section      ----------------------      VitalPathDelay01 (       OutSignal => o,       OutSignalName => "o",       OutTemp => o_zd,       Paths => (0 => (i_ipd'last_event, (tpd_i_o), TRUE)),       GlitchData => o_GlitchData,       Mode => OnDetect,       XOn => XOn,       MsgOn => MsgOn);END PROCESS;END v;------- cell ibpd -------LIBRARY ieee;USE ieee.std_logic_1164.all;USE ieee.vital_timing.all;USE ieee.vital_primitives.all;-- entity declaration --ENTITY ibpd IS   GENERIC(      TimingChecksOn  : boolean := TRUE;      XOn             : boolean := FALSE;      MsgOn           : boolean := TRUE;      InstancePath    : string := "ibpd";      tpd_i_o         :	VitalDelayType01 := (0.001 ns, 0.001 ns);      tipd_i          :	VitalDelayType01 := (0.0 ns, 0.0 ns));   PORT(      i               :	IN std_logic;      o               :	OUT std_logic);    ATTRIBUTE Vital_Level0 OF ibpd : ENTITY IS TRUE; END ibpd;-- architecture body --ARCHITECTURE v OF ibpd IS   ATTRIBUTE Vital_Level0 OF v : ARCHITECTURE IS TRUE;   SIGNAL i_ipd	 : std_logic := 'X';BEGIN   ---------------------   --  input path delays   ---------------------   WireDelay : BLOCK   BEGIN   VitalWireDelay (i_ipd, i, tipd_i);   END BLOCK;   --------------------   --  behavior section   --------------------   VitalBehavior : PROCESS (i_ipd)   -- functionality results   VARIABLE i_ipd2 : std_ulogic := 'X';   VARIABLE results : std_logic_vector(1 to 1) := (others => 'X');   ALIAS o_zd : std_ulogic IS results(1);   -- output glitch detection VARIABLEs   VARIABLE o_GlitchData	: VitalGlitchDataType;   BEGIN      -------------------------      --  functionality section      -------------------------      i_ipd2 := VitalIDENT (data => i_ipd,                           resultmap => ('U','X','0','1','L'));      o_zd := VitalBUF(i_ipd2);      ----------------------      --  path delay section      ----------------------      VitalPathDelay01 (       OutSignal => o,       OutSignalName => "o",       OutTemp => o_zd,       Paths => (0 => (i_ipd'last_event, (tpd_i_o), TRUE)),       GlitchData => o_GlitchData,       Mode => OnDetect,       XOn => XOn,       MsgOn => MsgOn);END PROCESS;END v;------- cell ibpu -------LIBRARY ieee;USE ieee.std_logic_1164.all;USE ieee.vital_timing.all;USE ieee.vital_primitives.all;-- entity declaration --ENTITY ibpu IS   GENERIC(      TimingChecksOn  : boolean := TRUE;      XOn             : boolean := FALSE;      MsgOn           : boolean := TRUE;      InstancePath    : string := "ibpu";      tpd_i_o         :	VitalDelayType01 := (0.001 ns, 0.001 ns);      tipd_i          :	VitalDelayType01 := (0.0 ns, 0.0 ns));   PORT(      i               :	IN std_logic;      o               :	OUT std_logic);    ATTRIBUTE Vital_Level0 OF ibpu : ENTITY IS TRUE; END ibpu;-- architecture body --ARCHITECTURE v OF ibpu IS   ATTRIBUTE Vital_Level0 OF v : ARCHITECTURE IS TRUE;   SIGNAL i_ipd	 : std_logic := 'X';BEGIN   ---------------------   --  input path delays   ---------------------   WireDelay : BLOCK   BEGIN   VitalWireDelay (i_ipd, i, tipd_i);

⌨️ 快捷键说明

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