Эти параметры относятся к RTL description rules разделу вкладки Coding standards панели HDL Code Generation > Global Settings диалогового окна Параметры конфигурации. Используйте эти параметры для настройки правил описания RTL для условных выражений и операторов if-else, заданных в отраслевых стандартных рекомендациях.
Укажите, нужно ли проверять длину условных операторов, которые описываются отдельно в процессе. Эта проверка соответствует CGSL-2.F.B.1 из отраслевых стандартных руководящих принципов.
По умолчанию: On
Проверьте длину условных операторов в процессе. Длина по умолчанию 1.
Не проверяйте длину условных операторов в процессе.
Чтобы снять флажок Check for conditional statements in processes, установите параметр HDL coding standard равным Industry
.
Чтобы задать это свойство:
Создайте объект стандартной индивидуальной настройки HDL-кодирования.
cso = hdlcoder.CodingStandard('Industry');
Установите ConditionalRegionCheck
свойство объекта стандартной индивидуальной настройки HDL-кодирования.
Для примера, чтобы проверить наличие четырёх условных операторов в процессе, введите:
cso.ConditionalRegionCheck.enable = true; cso.ConditionalRegionCheck.length = 4;
Установите HDLCodingStandardCustomizations
свойство стандартному объекту индивидуальной настройки HDL-кодирования, задайте стандарт кодирования и сгенерируйте код.
Для примера, если ваш DUT sfir_fixed/symmetric_fir
, введите:
makehdl('sfir_fixed/symmetric_fir', 'HDLCodingStandard','Industry', ... 'HDLCodingStandardCustomizations',cso);
Укажите, нужно ли проверять длину цепи оператора if-else. Эта проверка соответствует CGSL-2.G.C.1c из отраслевых стандартных руководящих принципов.
По умолчанию: On
Проверьте длину цепи оператора if-else.
Максимальная длина цепи оператора if-else, заданная как положительное целое число. Значение по умолчанию является 7.
Не проверяйте длину цепи оператора if-else.
Чтобы снять флажок Check if-else statement chain length, установите параметр HDL coding standard равным Industry
.
Чтобы задать это свойство:
Создайте объект стандартной индивидуальной настройки HDL-кодирования.
cso = hdlcoder.CodingStandard('Industry');
Установите IfElseChain
свойство объекта стандартной индивидуальной настройки HDL-кодирования.
Для примера, чтобы проверить на цепи оператора if-else с длиной более 5, введите:
cso.IfElseChain.enable = true; cso.IfElseChain.length = 5;
Установите HDLCodingStandardCustomizations
свойство стандартному объекту индивидуальной настройки HDL-кодирования, задайте стандарт кодирования и сгенерируйте код.
Для примера, если ваш DUT sfir_fixed/symmetric_fir
, введите:
makehdl('sfir_fixed/symmetric_fir', 'HDLCodingStandard','Industry', ... 'HDLCodingStandardCustomizations',cso);
Укажите, следует ли проверять глубину вложения оператора if-else. Эта проверка соответствует CGSL-2.G.C.1a из отраслевых стандартных руководящих принципов.
По умолчанию: On
Проверьте глубину вложения оператора if-else.
Максимальная глубина вложения оператора if-else, заданная как положительное целое число. Значение по умолчанию является 3.
Не проверяйте глубину вложения оператора if-else.
Чтобы снять флажок Check if-else statement nesting depth, установите параметр HDL coding standard равным Industry
.
Чтобы задать это свойство:
Создайте объект стандартной индивидуальной настройки HDL-кодирования.
cso = hdlcoder.CodingStandard('Industry');
Установите IfElseNesting
свойство объекта стандартной индивидуальной настройки HDL-кодирования.
Для примера, чтобы включить проверку на глубину вложения оператора if-else с максимальной глубиной 5, введите:
cso.IfElseNesting.enable = true; cso.IfElseNesting.depth = 5;
Установите HDLCodingStandardCustomizations
свойство стандартному объекту индивидуальной настройки HDL-кодирования, задайте стандарт кодирования и сгенерируйте код.
Для примера, если ваш DUT sfir_fixed/symmetric_fir
, введите:
makehdl('sfir_fixed/symmetric_fir', 'HDLCodingStandard','Industry', ... 'HDLCodingStandardCustomizations',cso);