chisel中如何使用BlackBox
chisel中的BlackBox
源文章来自于:
https://chipyard.readthedocs.io/en/latest/Customization/Incorporating-Verilog-Blocks.html
并做了一些修改
BlackBox的使用可以在chisel中嵌入原有使用Verilog所写的模块。
BlackBox实现格式
module GCDMMIOBlackBox
#(parameter WIDTH)
(
input clock,
input reset,
output input_ready,
input input_valid,
input [WIDTH-1:0] x,
input [WIDTH-1:0] y,
input output_ready,
output output_valid,
output reg [WIDTH-1:0] gcd,
output busy
);
......
endmodule
对应的chisel BlackBox实现方式:
class GCDMMIOBlackBox(val wd: Int) extends BlackBox(Map("WIDTH" -> wd))
{
val OtherInnerPara = ...
val io = IO(new Bundle{
val clock = input ( Clock(<