如何在 Chisel 中生成带有参数化模块的 Verilog 代码?
How to generate Verilog code with parametized modules in Chisel?
chisel 中的以下模块定义:
class Mux2 (width: Int = 4) extends Module
不会生成参数化的 Verilog 模块。生成的 Verilog RTL 将代替用户实例化模块的参数值。
有没有办法生成带有实际参数化模块定义的 Verilog。
module Mux2 #(parameter width = 4)
如果没有办法做到这一点,这将是一个非常有用的功能。
不幸的是,这可能是一个不可能添加的功能。 Chisel 实际上只是硬件原语的 Scala 库,它使您能够编写 Scala 程序来精心设计电路。 Chisel 生成器的参数化是任意 Scala 代码,在一般情况下不可能映射到 Verilog 结构。事实上,Chisel 的主要用途在于使设计人员能够使用 [可综合] Verilog 中不存在的这些更高级别的结构(例如,面向对象编程、函数式编程)。
chisel 中的以下模块定义:
class Mux2 (width: Int = 4) extends Module
不会生成参数化的 Verilog 模块。生成的 Verilog RTL 将代替用户实例化模块的参数值。
有没有办法生成带有实际参数化模块定义的 Verilog。
module Mux2 #(parameter width = 4)
如果没有办法做到这一点,这将是一个非常有用的功能。
不幸的是,这可能是一个不可能添加的功能。 Chisel 实际上只是硬件原语的 Scala 库,它使您能够编写 Scala 程序来精心设计电路。 Chisel 生成器的参数化是任意 Scala 代码,在一般情况下不可能映射到 Verilog 结构。事实上,Chisel 的主要用途在于使设计人员能够使用 [可综合] Verilog 中不存在的这些更高级别的结构(例如,面向对象编程、函数式编程)。