ICE70
ICE70 验证是否正确指定了注册表项的整数值。 不会验证 ##str 和 #%unexpanded str 格式的值。 会验证 #xhex、#Xhex、#integer 和 #[property] 格式的值。 下表提供了简要概述。
值 | 验证 |
---|---|
##str | valid |
#%unexpanded str | valid |
#xHex,#XHex | 验证有效的十六进制字符(0-9,A-F,a-f)。 此处允许使用属性。 |
#+int, #-int, #int | 验证有效数字字符(0-9)。 此处允许使用属性。 |
输入到注册表中的整数值的语法是 #integer,其中 integer 是数字。
如果未正确指定注册表项的整数值,ICE70 将报告错误。
对于给定示例,ICE70 报告以下错误。
The value #12xz34 is an invalid numeric value for registry entry Reg1. If you meant to use a string, then the string value entry must be preceded by ## not #.
修复此错误:如果希望值为数字,请将该值更改为使用所有数字字符。 如果希望值为字符串,则其前面必须有两个 # (##),而不是一个。
The value #xz34 is an invalid hexadecimal value for registry entry Reg2.
修复此错误:有效的十六进制字符为 0-9、A-F 和 a-f。 只有这些字符的后面可以带有 #X(或 #X)。
注册表(部分)
注册表 | 值 |
---|---|
Reg1 | #12xz34 |
Reg2 | #xz34 |
- #[myproperty] 有效。
- #[myproperty 无效(缺少结束括号)。
- #[myprop1] [myprop2 有效。 (即使最后一个缺少结束括号,myprop1 也可以计算为 #str,因此会得到 ##str[myprop2,这是有效的
- #]myproperty[ 无效
- 值字符串中的任何嵌入属性都不能采用 [$compkey]、[#filekey] 和 [!filekey] 格式,因为这些不是数字。 但有一个例外,#[myproperty] [$compkey](或是 [#filekey] 或 [!filekey])是有效的,因为与前面一样,[myproperty] 可以计算为 #str。