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

📄 orca_cmb.vhd

📁 porting scintilla to qt
💻 VHD
📖 第 1 页 / 共 5 页
字号:
      tpd_b1_s1       :	VitalDelayType01 := (0.01 ns, 0.01 ns);      tpd_ci_s0       : VitalDelayType01 := (0.01 ns, 0.01 ns);      tpd_ci_s1       : VitalDelayType01 := (0.01 ns, 0.01 ns);      tipd_a0         :	VitalDelayType01 := (0.0 ns, 0.0 ns);      tipd_a1         :	VitalDelayType01 := (0.0 ns, 0.0 ns);      tipd_b0         :	VitalDelayType01 := (0.0 ns, 0.0 ns);      tipd_b1         :	VitalDelayType01 := (0.0 ns, 0.0 ns);      tipd_ci         :	VitalDelayType01 := (0.0 ns, 0.0 ns));   PORT(      a0              :	IN    std_logic;      a1              :	IN    std_logic;      b0              :	IN    std_logic;      b1              :	IN    std_logic;      ci              :	IN    std_logic;      s0              :	OUT   std_logic;      s1              :	OUT   std_logic;      cout0           :	OUT   std_logic;      cout1           :	OUT   std_logic);   ATTRIBUTE Vital_Level0 OF fadd2 : ENTITY IS TRUE;END fadd2;-- architecture body --LIBRARY ieee;USE ieee.vital_primitives.all;ARCHITECTURE v OF fadd2 IS   ATTRIBUTE Vital_Level0 OF v : ARCHITECTURE IS TRUE;    SIGNAL a0_ipd : std_logic := 'X';   SIGNAL a1_ipd : std_logic := 'X';   SIGNAL b0_ipd : std_logic := 'X';   SIGNAL b1_ipd : std_logic := 'X';   SIGNAL ci_ipd : std_logic := 'X';BEGIN   ---------------------   --  input path delays   ---------------------   WireDelay : BLOCK   BEGIN   VitalWireDelay (a0_ipd, a0, tipd_a0);   VitalWireDelay (a1_ipd, a1, tipd_a1);   VitalWireDelay (b0_ipd, b0, tipd_b0);   VitalWireDelay (b1_ipd, b1, tipd_b1);   VitalWireDelay (ci_ipd, ci, tipd_ci);   END BLOCK;    --------------------   --  behavior section   --------------------   VitalBehavior : PROCESS (a0_ipd, a1_ipd, b0_ipd, 			    b1_ipd, ci_ipd)    -- functionality results   VARIABLE results1 : std_logic_vector(1 to 2) := (others => 'X');   VARIABLE results2 : std_logic_vector(1 to 2) := (others => 'X');   ALIAS cout0_zd      : std_ulogic IS results1(1);   ALIAS s0_zd      : std_ulogic IS results1(2);   ALIAS cout1_zd      : std_ulogic IS results2(1);   ALIAS s1_zd      : std_ulogic IS results2(2);    -- output glitch detection VARIABLEs   VARIABLE cout0_GlitchData    : VitalGlitchDataType;   VARIABLE s0_GlitchData    : VitalGlitchDataType;   VARIABLE cout1_GlitchData    : VitalGlitchDataType;   VARIABLE s1_GlitchData    : VitalGlitchDataType;    constant add_table : vitaltruthtabletype := (   --------------------------------------------   --  a    b    ci   |   co   s   --------------------------------------------    ( '0', '0', '0',     '0', '0'),    ( '1', '0', '0',     '0', '1'),    ( '0', '1', '0',     '0', '1'),    ( '1', '1', '0',     '1', '0'),    ( '0', '0', '1',     '0', '1'),    ( '1', '0', '1',     '1', '0'),    ( '0', '1', '1',     '1', '0'),    ( '1', '1', '1',     '1', '1'));    BEGIN       -------------------------      --  functionality section      -------------------------      results1 := vitaltruthtable (                truthtable => add_table,                datain => (a0_ipd, b0_ipd, ci_ipd)                );      results2 := vitaltruthtable (                truthtable => add_table,                datain => (a1_ipd, b1_ipd, cout0_zd)                );      ----------------------      --  path delay section      ----------------------      VitalPathDelay01 (       OutSignal => cout0,       OutSignalName => "cout0",       OutTemp => cout0_zd,       Paths => (0 => (a0_ipd'last_event, tpd_a0_cout0, TRUE),                 1 => (a1_ipd'last_event, tpd_a1_cout0, TRUE),                 2 => (b0_ipd'last_event, tpd_b0_cout0, TRUE),                 3 => (b1_ipd'last_event, tpd_b1_cout0, TRUE),		 4 => (ci_ipd'last_event, tpd_ci_cout0, TRUE)),       GlitchData => cout0_GlitchData,       Mode => OnDetect,       XOn => XOn,       MsgOn => MsgOn);       VitalPathDelay01 (       OutSignal => s0,       OutSignalName => "s0",       OutTemp => s0_zd,       Paths => (0 => (a0_ipd'last_event, tpd_a0_s0, TRUE),                 1 => (a1_ipd'last_event, tpd_a1_s0, TRUE),                 2 => (b0_ipd'last_event, tpd_b0_s0, TRUE),                 3 => (b1_ipd'last_event, tpd_b1_s0, TRUE),		 4 => (ci_ipd'last_event, tpd_ci_s0, TRUE)),       GlitchData => s0_GlitchData,       Mode => OnDetect,       XOn => XOn,       MsgOn => MsgOn);      VitalPathDelay01 (       OutSignal => s1,       OutSignalName => "s1",       OutTemp => s1_zd,       Paths => (0 => (a0_ipd'last_event, tpd_a0_s1, TRUE),                 1 => (a1_ipd'last_event, tpd_a1_s1, TRUE),                 2 => (b0_ipd'last_event, tpd_b0_s1, TRUE),                 3 => (b1_ipd'last_event, tpd_b1_s1, TRUE),		 4 => (ci_ipd'last_event, tpd_ci_s1, TRUE)),       GlitchData => s1_GlitchData,       Mode => OnDetect,       XOn => XOn,       MsgOn => MsgOn);       VitalPathDelay01 (       OutSignal => cout1,       OutSignalName => "cout1",       OutTemp => cout1_zd,       Paths => (0 => (a0_ipd'last_event, tpd_a0_cout1, TRUE),                 1 => (a1_ipd'last_event, tpd_a1_cout1, TRUE),                 2 => (b0_ipd'last_event, tpd_b0_cout1, TRUE),                 3 => (b1_ipd'last_event, tpd_b1_cout1, TRUE),		 4 => (ci_ipd'last_event, tpd_ci_cout1, TRUE)),       GlitchData => cout1_GlitchData,       Mode => OnDetect,       XOn => XOn,       MsgOn => MsgOn);END PROCESS;END v;------- cell fsub2 -----LIBRARY ieee;USE ieee.std_logic_1164.all;USE ieee.vital_timing.all;-- entity declaration --ENTITY fsub2 IS   GENERIC(      TimingChecksOn  : boolean := TRUE;      XOn             : boolean := FALSE;      MsgOn           : boolean := TRUE;      InstancePath    : string := "fsub2";      tpd_a0_bout0    : VitalDelayType01 := (0.01 ns, 0.01 ns);      tpd_a1_bout0    : VitalDelayType01 := (0.01 ns, 0.01 ns);      tpd_b0_bout0    : VitalDelayType01 := (0.01 ns, 0.01 ns);      tpd_b1_bout0    : VitalDelayType01 := (0.01 ns, 0.01 ns);      tpd_bi_bout0    : VitalDelayType01 := (0.01 ns, 0.01 ns);      tpd_a0_bout1    : VitalDelayType01 := (0.01 ns, 0.01 ns);      tpd_a1_bout1    : VitalDelayType01 := (0.01 ns, 0.01 ns);      tpd_b0_bout1    : VitalDelayType01 := (0.01 ns, 0.01 ns);      tpd_b1_bout1    : VitalDelayType01 := (0.01 ns, 0.01 ns);      tpd_bi_bout1    : VitalDelayType01 := (0.01 ns, 0.01 ns);      tpd_a0_s0       : VitalDelayType01 := (0.01 ns, 0.01 ns);      tpd_a1_s0       : VitalDelayType01 := (0.01 ns, 0.01 ns);      tpd_b0_s0       : VitalDelayType01 := (0.01 ns, 0.01 ns);      tpd_b1_s0       : VitalDelayType01 := (0.01 ns, 0.01 ns);      tpd_bi_s0       : VitalDelayType01 := (0.01 ns, 0.01 ns);      tpd_a0_s1       : VitalDelayType01 := (0.01 ns, 0.01 ns);      tpd_a1_s1       : VitalDelayType01 := (0.01 ns, 0.01 ns);      tpd_b0_s1       : VitalDelayType01 := (0.01 ns, 0.01 ns);      tpd_b1_s1       : VitalDelayType01 := (0.01 ns, 0.01 ns);      tpd_bi_s1       : VitalDelayType01 := (0.01 ns, 0.01 ns);      tipd_a0         :	VitalDelayType01 := (0.0 ns, 0.0 ns);      tipd_a1         :	VitalDelayType01 := (0.0 ns, 0.0 ns);      tipd_b0         :	VitalDelayType01 := (0.0 ns, 0.0 ns);      tipd_b1         :	VitalDelayType01 := (0.0 ns, 0.0 ns);      tipd_bi         :	VitalDelayType01 := (0.0 ns, 0.0 ns));   PORT(      a0                     :	IN    std_logic;      a1                     :	IN    std_logic;      b0                     :	IN    std_logic;      b1                     :	IN    std_logic;      bi                     :	IN    std_logic;      bout0                  :	OUT   std_logic;      bout1                  :	OUT   std_logic;      s0                     :	OUT   std_logic;      s1                     :	OUT   std_logic);   ATTRIBUTE Vital_Level0 OF fsub2 : ENTITY IS TRUE;END fsub2;-- architecture body --LIBRARY ieee;USE ieee.vital_primitives.all;ARCHITECTURE v OF fsub2 IS   ATTRIBUTE Vital_Level0 OF v : ARCHITECTURE IS TRUE;    SIGNAL a0_ipd         : std_logic := 'X';   SIGNAL a1_ipd         : std_logic := 'X';   SIGNAL b0_ipd         : std_logic := 'X';   SIGNAL b1_ipd         : std_logic := 'X';   SIGNAL bi_ipd         : std_logic := 'X';BEGIN   ---------------------   --  input path delays   ---------------------   WireDelay : BLOCK   BEGIN   VitalWireDelay (a0_ipd, a0, tipd_a0);   VitalWireDelay (a1_ipd, a1, tipd_a1);   VitalWireDelay (b0_ipd, b0, tipd_b0);   VitalWireDelay (b1_ipd, b1, tipd_b1);   VitalWireDelay (bi_ipd, bi, tipd_bi);   END BLOCK;    --------------------   --  behavior section   --------------------   VitalBehavior : PROCESS (a0_ipd, a1_ipd, b0_ipd, 			    b1_ipd, bi_ipd)    -- functionality results   VARIABLE results1 : std_logic_vector(1 to 2) := (others => 'X');   VARIABLE results2 : std_logic_vector(1 to 2) := (others => 'X');   ALIAS bout0_zd      : std_ulogic IS results1(1);   ALIAS s0_zd      : std_ulogic IS results1(2);   ALIAS bout1_zd      : std_ulogic IS results2(1);   ALIAS s1_zd      : std_ulogic IS results2(2);    -- output glitch detection VARIABLEs   VARIABLE bout0_GlitchData    : VitalGlitchDataType;   VARIABLE s0_GlitchData    : VitalGlitchDataType;   VARIABLE bout1_GlitchData    : VitalGlitchDataType;   VARIABLE s1_GlitchData    : VitalGlitchDataType;   constant sub_table : vitaltruthtabletype := (   --------------------------------------------   --  a    b    bi   |   bo   s   --------------------------------------------    ( '0', '0', '0',     '0', '1'),    ( '1', '0', '0',     '1', '0'),    ( '0', '1', '0',     '0', '0'),    ( '1', '1', '0',     '0', '1'),    ( '0', '0', '1',     '1', '0'),    ( '1', '0', '1',     '1', '1'),    ( '0', '1', '1',     '0', '1'),    ( '1', '1', '1',     '1', '0'));    BEGIN       -------------------------      --  functionality section      -------------------------      results1 := vitaltruthtable (                truthtable => sub_table,                datain => (a0_ipd, b0_ipd, bi_ipd)                );      results2 := vitaltruthtable (                truthtable => sub_table,                datain => (a1_ipd, b1_ipd, bout0_zd)                );       ----------------------      --  path delay section      ----------------------      VitalPathDelay01 (       OutSignal => bout0,       OutSignalName => "bout0",       OutTemp => bout0_zd,       Paths => (0 => (a0_ipd'last_event, tpd_a0_bout0, TRUE),                 1 => (a1_ipd'last_event, tpd_a1_bout0, TRUE),                 2 => (b0_ipd'last_event, tpd_b0_bout0, TRUE),                 3 => (b1_ipd'last_event, tpd_b1_bout0, TRUE),		 4 => (bi_ipd'last_event, tpd_bi_bout0, TRUE)),       GlitchData => bout0_GlitchData,       Mode => OnDetect,       XOn => XOn,       MsgOn => MsgOn);       VitalPathDelay01 (       OutSignal => s0,       OutSignalName => "s0",       OutTemp => s0_zd,       Paths => (0 => (a0_ipd'last_event, tpd_a0_s0, TRUE),                 1 => (a1_ipd'last_event, tpd_a1_s0, TRUE),                 2 => (b0_ipd'last_event, tpd_b0_s0, TRUE),                 3 => (b1_ipd'last_event, tpd_b1_s0, TRUE),		 4 => (bi_ipd'last_event, tpd_bi_s0, TRUE)),       GlitchData => s0_GlitchData,       Mode => OnDetect,       XOn => XOn,       MsgOn => MsgOn);      VitalPathDelay01 (       OutSignal => s1,       OutSignalName => "s1",       OutTemp => s1_zd,       Paths => (0 => (a0_ipd'last_event, tpd_a0_s1, TRUE),                 1 => (a1_ipd'last_event, tpd_a1_s1, TRUE),                 2 => (b0_ipd'last_event, tpd_b0_s1, TRUE),                 3 => (b1_ipd'last_event, tpd_b1_s1, TRUE),		 4 => (bi_ipd'last_event, tpd_bi_s1, TRUE)),       GlitchData => s1_GlitchData,       Mode => OnDetect,       XOn => XOn,       MsgOn => MsgOn);      VitalPathDelay01 (       OutSignal => bout1,       OutSignalName => "bout1",       OutTemp => bout1_zd,       Paths => (0 => (a0_ipd'last_event, tpd_a0_bout1, TRUE),                 1 => (a1_ipd'last_event, tpd_a1_bout1, TRUE),                 2 => (b0_ipd'last_event, tpd_b0_bout1, TRUE),                 3 => (b1_ipd'last_event, tpd_b1_bout1, TRUE),                 4 => (bi_ipd'last_event, tpd_bi_bout1, TRUE)),       GlitchData => bout1_GlitchData,       Mode => OnDetect,       XOn => XOn,       MsgOn => MsgOn); END PROCESS;END v;----- cell fadsu2 -----LIBRARY ieee;USE ieee.std_logic_1164.all;USE ieee.vital_timing.all;-- entity declaration --ENTITY fadsu2 IS   GENERIC(      TimingChecksOn : boolean := TRUE;      XOn            : boolean := FALSE;      MsgOn          : boolean := TRUE;      InstancePath   : string := "fadsu2";      tpd_a0_bco     : VitalDelayType01 := (0.001 ns, 0.001 ns);      tpd_a1_bco     : VitalDelayType01 := (0.001 ns, 0.001 ns);      tpd_b0_bco     : VitalDelayType01 := (0.001 ns, 0.001 ns);      tpd_b1_bco     : VitalDelayType01 := (0.001 ns, 0.001 ns);      tpd_bci_bco    : VitalDelayType01 := (0.001 ns, 0.001 ns);      tpd_con_bco    : VitalDelayType01 := (0.001 ns, 0.001 ns);      tpd_a0_s0      : VitalDelayType01 := (0.001 ns, 0.001 ns);      tpd_a0_s1      : VitalDelayType01 := (0.001 ns, 0.001 ns);      tpd_a1_s0      : VitalDelayType01 := (0.001 ns, 0.001 ns);      tpd_a1_s1      : VitalDelayType01 := (0.001 ns, 0.001 ns);      tpd_a1_s2      : VitalDelayType01 := (0.001 ns, 0.001 ns);      tpd_b0_s0      : VitalDelayType01 := (0.001 ns, 0.001 ns);      tpd_b0_s1      : VitalDelayType01 := (0.001 ns, 0.001 ns);      tpd_b1_s0      : VitalDelayType01 := (0.001 ns, 0.001 ns);      tpd_b1_s1      : VitalDelayType01 := (0.001 ns, 0.001 ns);      tpd_bci_s0     : VitalDelayType01 := (0.001 ns, 0.001 ns);      tpd_bci_s1     : VitalDelayType01 := (0.001 ns, 0.001 ns);      tpd_con_s0     : VitalDelayType01 := (0.001 ns, 0.001 ns);      tpd_con_s1     : VitalDelayType01 := (0.001 ns, 0.001 ns);      tipd_a0        : VitalDelayType01 := (0.0 ns, 0.0 ns);      tipd_a1        : VitalDelayType01 := (0.0 ns, 0.0 ns);      tipd_b0        : VitalDelayType01 := (0.0 ns, 0.0 ns);      tipd_b1        : VitalDelayType01 := (0.0 ns, 0.0 ns);      tipd_bci       : VitalDelayType01 := (0.0 ns, 0.0 ns);      tipd_con       : VitalDelayType01 := (0.0 ns, 0.0 ns));   PORT(      a0             :	IN    std_logic;      a1             :	IN    std_logic;      b0             :	IN    std_logic;      b1             :	IN    std_logic;      bci            :	IN    std_logic;      con            :	IN    std_logic;      bco            :	OUT   std_logic;      s0             :	OUT   std_logic;      s1             :	OUT   std_logic);   ATTRIBUTE Vital_Level0 OF fadsu2 : ENTITY IS TRUE;END fadsu2;-- architecture body --LIBRARY ieee;USE ieee.vital_primitives.all;

⌨️ 快捷键说明

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