|
|
- library ieee;
- use ieee.std_logic_1164.all;
-
-
- entity issue is
- port (
- clk : in std_logic
- );
- end entity issue;
-
-
- architecture psl of issue is
-
- attribute anyconst : boolean;
-
- signal a: natural;
- attribute anyconst of a : signal is true;
-
- begin
-
- -- All is sensitive to rising edge of clk
- default clock is rising_edge(clk);
-
- -- works
- assume always a = 42;
- assert always a = 42;
-
- -- Error occurs when using a generate statement
- testG : if true generate
-
- signal b : natural;
- attribute anyconst of b : signal is true;
-
- begin
-
- -- works
- GEN_ASSUME : assume always b = 23;
- GEN_ASSERT : assert always b = 23;
-
- end generate testG;
-
- -- Same error occurs when using a block statement
- testB : block is
-
- signal c : natural;
- attribute anyconst of c : signal is true;
-
- begin
-
- -- works
- BLK_ASSUME : assume always c = 11;
- BLK_ASSERT : assert always c = 11;
-
- end block testB;
-
-
- end architecture psl;
|