第 5章 VHDL基本语句(三)
VHDL编码风格
<EDA技术 与应用 > 课程讲义
合肥工业大学 彭良清
下一章上一章
本节内容
1,注释和文本
2,常规风格指导
3,缩进格式指导
4,命名惯例
5,留白
6,示例
良好的
代码风格
可以
大大提高
阅读效率
好码如诗
注释和文本格式(一)
1,在文本开始描述设计文件地功能和端口
2,重要语句应加以注释,并且如果代码更新,注释也
应该更新
3,不应使用语句本身作为注释,例如,
注释和文本格式(二)
1,注释应位于其说明的代码之上,并且应该左右均
对齐。
2,在注释分解符和注释文本之间应该留有空格
常规风格指导(一)
? 所有 关键词、器件名称、常数、图元 应该大写,
其他文本应该小写(包括宏模块)
常规风格指导(二)
? 所有 关键词、器件名称、常数、图元 应该大写,
其他文本应该小写(包括宏模块)
缩进格式指导,IF语句
缩进格式指导,CASE语句
缩进格式指导,VARIABLE语句
命名惯例:命名应含义明确
命名惯例:使用下划线作( _)为分割符
命名惯例:不使用含义不明的缩写
命名惯例:对于常数,不直接在代码中使
用数字,而应该定义一个常数变量名
留白(一)
? 在 逻辑段落 之间 增加 空行
? 在下列符号前不要插入空格:
分号 (;) 逗号 (,),闭双引号 (“),or 闭括弧 ()),
? 在下列符号后不要插入空格:
开双引号 (“),or 开括弧 ((),
留白(二)
? 使用 TAB键对齐冒号 (:),ENTITY中的标识符等
留白(三)
? 在开括弧 (()之前使用空格,以便分割标识符
留白(四)
?在 运算符
前后
均
插入空格
举例
? 以下代码为 Altera公司的
SDRAM控制器代码
1,Command.vhd
2,control_interface.vhd
3,pll1.vhd
4,sdr_data_path.vhd
5,sdr_sdram.vhd
The end
The end.
以下内容
为
正文的引用,
可不阅读。
返回
MAX+PLUS II BNF
? MAX+PLUS II Help uses the Backus-Naur Form (BNF) to define the
syntax of the text file formats and message variables,BNF uses the
following notation,
? Characters,Meaning:
1.,:=,Is defined as” 定义为
2,<...> Identifiers (i.e.,variables) 标识符(如变量标识符)
3,[...] Optional items 可选项
4,{,.,} Repeated items (zero or more times) 重复条目
5.,..|..,Indicates a choice between items 在 2个条目间选择一个 (或 )
6.,n:n Suffix indicates a range (e.g.,<name char>:1:8 means "from 1 to 8
name characters")
7,italics Variables in syntax descriptions 可变量
8,Courier font Literal text in syntax descriptions,Bold Courier
font is also sometimes used to help distinguish literal text from italic
variables in syntax descriptions,
返回
STD_LOGIC的取值
1,TYPE std_ulogic IS ( 'U',-- Uninitialized
2,'X',-- Forcing Unknown
3,'0',-- Forcing 0
4,'1',-- Forcing 1
5,'Z',-- High Impedance
6,'W',-- Weak Unknown
7,'L',-- Weak 0
8,'H',-- Weak 1
9,'-' -- Don't care
10,);
返回
详细参见
STD1164.VHD
VHDL编码风格
<EDA技术 与应用 > 课程讲义
合肥工业大学 彭良清
下一章上一章
本节内容
1,注释和文本
2,常规风格指导
3,缩进格式指导
4,命名惯例
5,留白
6,示例
良好的
代码风格
可以
大大提高
阅读效率
好码如诗
注释和文本格式(一)
1,在文本开始描述设计文件地功能和端口
2,重要语句应加以注释,并且如果代码更新,注释也
应该更新
3,不应使用语句本身作为注释,例如,
注释和文本格式(二)
1,注释应位于其说明的代码之上,并且应该左右均
对齐。
2,在注释分解符和注释文本之间应该留有空格
常规风格指导(一)
? 所有 关键词、器件名称、常数、图元 应该大写,
其他文本应该小写(包括宏模块)
常规风格指导(二)
? 所有 关键词、器件名称、常数、图元 应该大写,
其他文本应该小写(包括宏模块)
缩进格式指导,IF语句
缩进格式指导,CASE语句
缩进格式指导,VARIABLE语句
命名惯例:命名应含义明确
命名惯例:使用下划线作( _)为分割符
命名惯例:不使用含义不明的缩写
命名惯例:对于常数,不直接在代码中使
用数字,而应该定义一个常数变量名
留白(一)
? 在 逻辑段落 之间 增加 空行
? 在下列符号前不要插入空格:
分号 (;) 逗号 (,),闭双引号 (“),or 闭括弧 ()),
? 在下列符号后不要插入空格:
开双引号 (“),or 开括弧 ((),
留白(二)
? 使用 TAB键对齐冒号 (:),ENTITY中的标识符等
留白(三)
? 在开括弧 (()之前使用空格,以便分割标识符
留白(四)
?在 运算符
前后
均
插入空格
举例
? 以下代码为 Altera公司的
SDRAM控制器代码
1,Command.vhd
2,control_interface.vhd
3,pll1.vhd
4,sdr_data_path.vhd
5,sdr_sdram.vhd
The end
The end.
以下内容
为
正文的引用,
可不阅读。
返回
MAX+PLUS II BNF
? MAX+PLUS II Help uses the Backus-Naur Form (BNF) to define the
syntax of the text file formats and message variables,BNF uses the
following notation,
? Characters,Meaning:
1.,:=,Is defined as” 定义为
2,<...> Identifiers (i.e.,variables) 标识符(如变量标识符)
3,[...] Optional items 可选项
4,{,.,} Repeated items (zero or more times) 重复条目
5.,..|..,Indicates a choice between items 在 2个条目间选择一个 (或 )
6.,n:n Suffix indicates a range (e.g.,<name char>:1:8 means "from 1 to 8
name characters")
7,italics Variables in syntax descriptions 可变量
8,Courier font Literal text in syntax descriptions,Bold Courier
font is also sometimes used to help distinguish literal text from italic
variables in syntax descriptions,
返回
STD_LOGIC的取值
1,TYPE std_ulogic IS ( 'U',-- Uninitialized
2,'X',-- Forcing Unknown
3,'0',-- Forcing 0
4,'1',-- Forcing 1
5,'Z',-- High Impedance
6,'W',-- Weak Unknown
7,'L',-- Weak 0
8,'H',-- Weak 1
9,'-' -- Don't care
10,);
返回
详细参见
STD1164.VHD