如何将 val 名称保留在 withClock() 或 withClockAndReset() 范围内
How to keep val names under withClock() or withClockAndReset() scopes
withClock()
和 withClockAndReset()
范围内的 Val 名称往往会在生成的 Verilog 文件中丢失其编码名称。
到目前为止,为了保持原始名称,我使用了 suggestName()
函数来强制使用原始名称。
但是我想知道是否有更聪明的方法呢?有没有办法强制所有 val 保留他们的名字而不在每个 val 声明中添加 suggestName()
?
正如 Kamyar 在他的评论中提到的,您应该使用 @chiselName
宏
import chisel3._
import chisel3.experimental.chiselName
@chiselName
class MyModule extends Module {
...
withClock(otherClock) {
val importantReg = Reg(...) // <- this will now get a name
}
}
@chiselName
的工作方式是它会自动为每个 val
添加一个 .suggestName
。
withClock()
和 withClockAndReset()
范围内的 Val 名称往往会在生成的 Verilog 文件中丢失其编码名称。
到目前为止,为了保持原始名称,我使用了 suggestName()
函数来强制使用原始名称。
但是我想知道是否有更聪明的方法呢?有没有办法强制所有 val 保留他们的名字而不在每个 val 声明中添加 suggestName()
?
正如 Kamyar 在他的评论中提到的,您应该使用 @chiselName
宏
import chisel3._
import chisel3.experimental.chiselName
@chiselName
class MyModule extends Module {
...
withClock(otherClock) {
val importantReg = Reg(...) // <- this will now get a name
}
}
@chiselName
的工作方式是它会自动为每个 val
添加一个 .suggestName
。