Constant Rules¶
constant_001¶
This rule checks the indent of a constant declaration.
Violation
architecture RTL of FIFO is
constant size : integer := 1;
constant width : integer := 32
Fix
architecture RTL of FIFO is
constant size : integer := 1;
constant width : integer := 32
constant_002¶
This rule checks the constant keyword is has proper case.
Refer to the section Configuring Uppercase and Lowercase Rules for information on changing the default case.
Violation
CONSTANT size : integer := 1;
Fix
constant size : integer := 1;
constant_003¶
This rule was depricated and replaced with rules: function_015, package_019, procedure_010, architecture_029 and process_037.
constant_004¶
This rule checks the constant identifier has proper case.
Refer to the section Configuring Uppercase and Lowercase Rules for information on changing the default case.
Violation
constant SIZE : integer := 1;
Fix
constant size : integer := 1;
constant_005¶
This rule checks for a single space after the colon.
Violation
constant size :integer := 1;
constant wdith : integer := 32;
Fix
constant size : integer := 1;
constant width : integer := 32;
constant_006¶
This rule checks for at least a single space before the colon.
Violation
constant size: integer := 1;
constant width : integer := 32;
Fix
constant size : integer := 1;
constant width : integer := 32;
constant_007¶
This rule checks the := is on the same line at the constant keyword.
Violation
constant size : integer
:= 1;
Fix
constant size : integer := 1;
Fix
constant size : integer := 1;
constant width : integer := 32
constant_010¶
This rule checks for a single space before the := keyword in constant declarations. Having a space makes it clearer where the assignment occurs on the line.
Violation
constant size : integer:= 1;
constant width : integer := 10;
Fix
constant size : integer := 1;
constant width : integer := 10;
constant_011¶
This rule checks the constant type has proper case.
Refer to the section Configuring Uppercase and Lowercase Rules for information on changing the default case.
Violation
constant size : INTEGER := 1;
Fix
constant size : integer := 1;
constant_012¶
This rule checks the alignment of multiline constants that contain arrays.
Refer to section Configuring Multiline Indent Rules for options.
Note
The structure of multiline array constants is handled by the rule constant_016.
Violation
constant rom : romq_type :=
(
0,
65535,
32768
);
Fix
constant rom : romq_type :=
(
0,
65535,
32768
);
constant_013¶
This rule checks for consistent capitalization of constant names.
Violation
architecture RTL of ENTITY1 is
constant c_size : integer := 5;
constant c_ones : std_logic_vector(c_size - 1 downto 0) := (others => '1');
constant c_zeros : std_logic_vector(c_size - 1 downto 0) := (others => '0');
signal data : std_logic_vector(c_size - 1 downto 0);
begin
data <= C_ONES;
PROC_NAME : process () is
begin
data <= C_ones;
if (sig2 = '0') then
data <= c_Zeros;
end if;
end process PROC_NAME;
end architecture RTL;
Fix
architecture RTL of ENTITY1 is
constant c_size : integer := 5;
constant c_ones : std_logic_vector(c_size - 1 downto 0) := (others => '1');
constant c_zeros : std_logic_vector(c_size - 1 downto 0) := (others => '0');
signal data : std_logic_vector(c_size - 1 downto 0);
begin
data <= c_ones;
PROC_NAME : process () is
begin
data <= c_ones;
if (sig2 = '0') then
data <= c_zeros;
end if;
end process PROC_NAME;
end architecture RTL;
constant_014¶
This rule checks the indent of multiline constants that do not contain arrays.
Violation
constant width : integer := a + b +
c + d;
Fix
constant width : integer := a + b +
c + d;
constant_015¶
This rule checks for valid prefixes on constant identifiers. The default constant prefix is c_.
Refer to the section Configuring Prefix and Suffix Rules for information on changing the allowed prefixes.
Violation
constant my_const : integer;
Fix
constant c_my_const : integer;
constant_016¶
This rule checks the structure of multiline constants that contain arrays.
Refer to section Configuring Multiline Structure Rules for options.
Note
The indenting of multiline array constants is handled by the rule constant_012.
Violation
constant rom : romq_type := (0, 65535, 32768);
Fix
constant rom : romq_type :=
(
0,
65535,
32768
);
constant_600¶
This rule checks for valid suffixes on constant identifiers. The default constant suffix is _c.
Refer to the section Configuring Prefix and Suffix Rules for information on changing the allowed suffixes.
Violation
constant my_const : integer;
Fix
constant my_const_c : integer;