由于在创建Vivado工程,编写文件,使用路径时使用特殊字符或格式往往会引起综合或仿真失败,严重时会引起系统崩溃,因此本文着重介绍在Vivado环境下对于路径及文件名中使用字符的各种限制。
1. Vivado的命名约定
Vivado的命名约定有如下规则。如果没有按照如下的命名约定对于工程设计和使用工具都会有潜在的风险,而且在设计流程中会出现不可预测的行为。
- 源文件名称必须以字母(A-Z、a-z)开头,并且只能包含大小写字母(A-Z、a-z)、数字(0-9)以及下划线 (_)。
- 输出文件名(如.bit.mcs文件等)必须以字母(A-Z、a-z)开头,并且只能包含大小写字母(A-Z、a-z)、数字(0-9)以及下划线 (_)。
- 工程名必须以字母(A-Z、a-z)开头,并且只能包含大小写字母(A-Z、a-z)、数字(0-9)以及下划线 (_)。
- 工程路径名必须以字母(A-Z、a-z)开头,并且只能包含大小写字母(A-Z、a-z)、数字(0-9)、波浪号 (~)以及下划线 (_)。
注意: Windows 操作系统的路径长度限制为 260 个字符,这可能会影响Vivado工具对文件的寻址。为避免此问题,请在创建时使用尽可能短的名称。创建工程时,目录位置 尽量接近根目录。在定义IP或管理IP项目或创建模块设计(Block design)时也要尽量使用合理的短名称。
2.如下字符不能在工程或文件名中使用
• ! # $ % ^ & * ( ) ` ; < > ? , [ ] { } ‘ ” |
• tab (\t),
• return (\r)
• new line (\n)
在Windows的路径寻址中会使用”\”分割不同的子目录,但不能出现在文件或目录名称中,同时应注意”\”之后不能跟t,r,n字符以免会被解释成制表符,回车、换行等。主要”/”作为作为子目录之间的分隔符可以在Windows或Linux下使用,建议使用”/”作为子目录以及子目录与文件的分隔符。
•点”.” (“.”不能用作路径或文件的结束符)。
• @不能在新建的文件或目录名称中使用。
注意:在 Vivado IDE 中,新文件或项目名称不支持 @ 字符。 Vivado IDE确实允许将磁盘上使用 @ 字符的现有文件添加到项目中。 Vivado IDE
可以打开项目名称中包含 @ 字符的项目。使用 Tcl 控制台,可以创建一个名称包含 @ 字符的项目。
- 空格(space):Windows 操作系统支持目录和文件名中的空格。但是,应该避免使用空格,以保持项目或文件Windows和Linux操作系统在之间的可移植性。
3. 总结:
虽然本文以Vivado为例介绍了项目名称、路径名、文件名以及各种组合中字符的使用规则,这些规则对其他的EDA工具也具有一般的适用性,因此在编写文件,创建目录时应注意遵守。