主要内容

基本编码实践

高密度脂蛋白编码器™符合以下命名约定和基本编码规则和检查建模构造,违反这些规则。高密度脂蛋白编码器报告潜在的HDL编码标准报告违反规则的行为。为了避免这些违规行为,看到规则的建议。

1。通用命名约定

1.。一个设计和顶级命名约定

规则/严重性 消息 问题 建议
1. a.a.1
警告

Verilog:源文件的名字应该是一样的模块文件的名称。

默认情况下,高密度脂蛋白编码器生成模块和文件名称相同的代码。如果你使用黑箱结构子系统和生成代码,源名称和文件名称可以是不同的。

如果你使用黑箱子系统架构,确保源文件名称和模块名称都是一样的。

硬件描述语言(VHDL):文件名包含实体应该扩展.vhd或.vhdl。

源文件名称必须使用一定的推荐命名约定和文件扩展名。

使用硬件描述语言(VHDL)文件扩展名的选择高密度脂蛋白工作流顾问,或VHDLFileExtension从命令行属性。

1. a.a.2
消息
Verilog /硬件描述语言(VHDL):标识和名称应遵循推荐命名约定。

一个名字设计不以字母或包含一个字符以外的一个数字,字母或下划线。

更新的名字在你的设计,使他们从一个字母(无所不包的,无所不包的),并且只包含字母数字字符(无所不包的,无所不包的,0 - 9)和下划线(_)。

1. a.a.3
消息
Verilog /硬件描述语言(VHDL):关键词Verilog-HDL (IEEE1364) SystemVerilog (v3.1a),在硬件描述语言(VHDL)和关键词(IEEE1076.X)不得使用。

有Verilog®、SystemVerilog或硬件描述语言(VHDL)®关键字的名字在你的设计中。

更新的名字在你的设计,不含Verilog, SystemVerilog或硬件描述语言(VHDL)关键字。

您可以禁用这个规则检查通过HDLKeywordsHDL编码标准定制对象的属性。

1. a.a.3vb
消息
硬件描述语言(VHDL):不要使用标准的硬件描述语言(VHDL)的名字。

高密度脂蛋白编码器不使用标准的硬件描述语言(VHDL)的名字。

不需要行动。

1. a.a.4
错误

Verilog /硬件描述语言(VHDL):不使用名称从VDD开始,VSS, VCC,接地或VREF。

一个名称或名称的设计不使用标准的命名约定。

更新的名字在你的设计,使他们从一个字母(无所不包的,无所不包的),并且只包含字母数字字符(无所不包的,无所不包的,0 - 9)和下划线(_)。

1. a.a.5
错误

Verilog /硬件描述语言(VHDL):不要用例的变种名称相同的范围。

两个或两个以上的名字在你的设计中,在相同的范围,是相同的情况除外。

例如,名称喷火喷火不能在相同的范围。

更新的名字在你的设计中没有两个名字相同的范围只在不同情况下。

您可以禁用这个规则检查通过DetectDuplicateNamesCheckHDL编码标准定制对象的属性。

1. a.a.6
警告

Verilog:主要港口名称或模块名称必须遵循推荐命名约定。

高密度脂蛋白编码器生成的代码符合这个规则,Verilog硬件描述语言(VHDL)。

不需要行动。

硬件描述语言(VHDL):组件名称应与相应的实体名称相同。

1. a.a.9
警告
Verilog /硬件描述语言(VHDL):顶层模块/实体和端口名称应该小于或等于16个字符长度和大小写混合。

顶层模块、实体或端口名称生成的代码超过16个字符,或使用与大小写混合字母。

更新指定的名字在你的设计,以便它是小于或等于16个字符长,和字母都是小写的。所有的字母都必须要么所有大写或小写。

您可以定制这个规则使用ModuleInstanceEntityNameLengthHDL编码标准定制对象的属性。

1.。B模块命名约定

规则/严重性 消息 问题 建议
1. a.b.1-1b
错误

Verilog:模块和实例名应该是2和32个字符的长度之间的关系。实例名称包括层次结构应该小于或等于128个字符的长度。

一个模块,生成的代码实例,或实体的名字是少于2字符或超过32个字符的长度。

更新指定的名字在你的设计,这样就从2到32个字符的长度。

您可以定制这个规则使用ModuleInstanceEntityNameLengthHDL编码标准定制对象的属性。

硬件描述语言(VHDL):实体之间的名称和实例名称应该2和32个字符的长度。实例名称包括层次结构应该小于或等于128个字符的长度。

1.。C信号命名约定

规则/严重性 消息 问题 建议
1. a.c.3
错误

Verilog:信号名称,港口名称,参数名称,定义名称和函数名应该2 - 40个字符的长度。

信号、港口、参数、定义或函数名生成的代码是少于2字符,或超过40个字符长。

更新函数名或子系统的名字在你的设计从2到40个字符长度。

您可以定制这个规则使用SignalPortParamNameLengthHDL编码标准定制对象的属性。

硬件描述语言(VHDL):信号名称,变量名称,类型名称,标签名称和函数名应该2 - 40个字符的长度。

1.。D文件、方案和参数的命名约定

规则/严重性 消息 问题 建议
1. a.d.1
警告

Verilog:包括文件必须扩展匹配”。h”、“.vh”、“。公司”,和“。h”、“。公司”、“ht”、“。testbench啧啧”。

生成包含文件匹配testbench这些扩展。

不需要行动。

硬件描述语言(VHDL):包文件名称应遵循“pac.vhd”。

默认情况下,生成的包文件后缀_pkg

在配置参数对话框,HDL代码生成>全局设置>一般窗格中,指定包后缀_pac

1. a.d.4
警告

Verilog:宏定义模块外不得使用的模块。

在Verilog HDL编码器不生成宏代码,或重新定义常量的VHDL代码。

不需要行动。

硬件描述语言(VHDL):常量不应该重新定义。

1. a.d.9
警告

Verilog:位宽度必须指定参数超过32位。

高密度脂蛋白编码器没有指定一位宽度大于32位生成的代码。

不需要行动。

硬件描述语言(VHDL):一般不能用于顶层模块。

如果你使用泛型高层模块或如果你有面具在你的设计和设置参数MaskParameterAsGeneric这违反财产,高密度脂蛋白编码器报告。

如果你有面具设计参数,设置MaskParameterAsGeneric

1.。E注册和时钟的命名约定

规则/严重性 消息 问题 建议
1. a.e.2
警告

Verilog /硬件描述语言(VHDL):时钟、复位,使信号应遵循推荐命名约定。

时钟、复位,使信号不使用推荐的命名约定。

在配置参数对话框,HDL代码生成>全局设置窗格中,使用时钟输入端口,复位输入端口,时钟允许输入端口时钟选择、更新的名字,复位,使信号分别。时钟信号名称必须包含clkck,复位信号名称必须包含rstx,resetx,rst_n,reset_n,rst_x,或reset_x和时钟启动信号名称必须包含

1.。F结构命名约定

规则/严重性 消息 问题 建议
1. a.f.1
警告

硬件描述语言(VHDL):架构名称必须包含RTL。

在代码生成的硬件描述语言(VHDL),架构名称不包含RTL。

HDL代码生成>全局设置>一般选项卡中,更新硬件描述语言(VHDL)架构名称使用一个架构包含RTL的名字。

1. a.f.4
警告

硬件描述语言(VHDL):一个实体及其体系结构必须在同一个文件中描述。

默认情况下,HDL编码描述的实体和架构VHDL代码在同一个文件中。

如果你设置SplitEntityArch财产,生成的硬件描述语言(VHDL)代码描述了实体和建筑在单独的文件中,所以高密度脂蛋白编码器报告一个警告。

SplitEntityArch掉,这样HDL编码描述的实体和架构VHDL代码在同一个文件中。

1。B时钟和重置的总方针

1. b。一个时钟约束

规则/严重性 消息 问题 建议
1. b.a.1
消息

硬件描述语言(VHDL):设计应该只有一个时钟和只使用一个时钟的边缘。

你的设计使用多个边缘的时钟或包含不止一个时钟信号。

如果你设置ClockInputs财产多个或使用TriggerAsClock使用触发子系统的触发信号作为时钟,高密度脂蛋白编码器生成此消息。

更新你的设计使用一个时钟信号。在HDL代码生成>全局设置面板,设置时钟输入,时钟边缘不断上升的下降

1. b.a.2
错误

Verilog /硬件描述语言(VHDL):不要创建一个RS门闩或触发器使用原始细胞等,或。

高密度脂蛋白编码器不会创建门闩,符合这个规则。

不需要行动。

1. b.a.3
错误

Verilog /硬件描述语言(VHDL):删除组合循环。

高密度脂蛋白编码器不会创建组合循环。

不需要行动。

1。C准则初始复位

1.摄氏度。一个触发器时钟约束

规则/严重性 消息 问题 建议
1. c.a.3
警告

Verilog /硬件描述语言(VHDL):不使用异步设置/重置信号初始复位。

高密度脂蛋白编码器不使用异步复位信号过速或同步复位信号。

不需要行动。

1. c.a.6
错误

Verilog /硬件描述语言(VHDL):信号不能被用作异步复位和同步复位。

HDL编码增加了DUT外的重置控制逻辑,不生成异步复位和同步复位信号。

不需要行动。

1. c.a.7
警告

Verilog /硬件描述语言(VHDL):一组触发器必须没有异步和异步复位。

高密度脂蛋白编码器不生成代码异步设置和重置信号。

不需要行动。

1.摄氏度。B重置约定

规则/严重性 消息 问题 建议
1. c.b.1a
消息

Verilog /硬件描述语言(VHDL):异步重置或设置不能封闭。

高密度脂蛋白编码器不门异步设置或复位信号。

不需要行动。

1. c.b.1b
消息

Verilog /硬件描述语言(VHDL):重置必须在单独的模块生成实例化在顶层。

生成的代码符合这个规则,因为DUT不包含重置实例化。

不需要行动。

1. c.b.2
警告

Verilog /硬件描述语言(VHDL):不使用信号除了初始复位异步复位触发器的输入。

高密度脂蛋白编码器只使用初始复位信号异步复位触发器的输入。

不需要行动。

1。D指南钟

1. d。一个时钟包装的限制

规则/严重性 消息 问题 建议
1. d.a.1
警告

Verilog /硬件描述语言(VHDL):时钟应该在单独的模块或实体生成实例化在顶层。

高密度脂蛋白编码器生成符合这个规则的代码,因为DUT不包含时钟实例化。

不需要行动。

1. d。C时钟门控约束

规则/严重性 消息 问题 建议
1. d.c.2-4
消息

Verilog /硬件描述语言(VHDL):不使用其他拖鞋和触发器的时钟触发器输出时钟信号作为non-clock信号。

高密度脂蛋白编码器不使用的输出时钟的人字拖拖鞋,或触发器的时钟信号为nonclock信号。

不需要行动。

1. d.c.6
消息

Verilog /硬件描述语言(VHDL):不要使用有倒边的拖鞋。

如果你的模型金宝app®模型使用一个触发子系统块与上升和下降触发器和TriggerAsClock启用,HDL编码人员违背了这一规则。

禁用TriggerAsClock或不使用触发子系统块的上升和下降触发仿真软件模型中。金宝app

1. d。D时钟等级限制

规则/严重性 消息 问题 建议
1. d.d.2
消息

Verilog:一个层次级别应该只有一个单独的时钟。

仿真软件模金宝app型使用多个时钟信号。

更新你的设计使用一个时钟信号。在HDL代码生成>全局设置面板,设置时钟输入

1。F分层设计指南

1. f。一个基本块大小的指导方针

规则/严重性 消息 问题 建议
1. f.a.4
错误

Verilog /硬件描述语言(VHDL):时钟生成、重置代内存,设置/确保缓冲区,和I / O细胞必须在顶层模块。

高密度脂蛋白DUT编码器生成单独的模块,内存,定时控制器,符合这个规则。

不需要行动。

另请参阅

属性

相关的例子

更多关于