未找到黑盒异常

问题描述

我正在尝试在我的 chisel 代码中包含一个黑盒模块。我使用了 addResource 构造并给出了 verilog 文件的正确路径。但我不确定为什么会收到此错误

[错误] (run-main-0) firrtl.transforms.BlackBoxNotFoundException: BlackBox '../resources/MyBlackBox.v' 未找到。你拼错了吗 它?它在 src/{main,test}/resources 中吗? [错误] 空

这是我的代码片段

import chisel3._
import chisel3.util.{HasBlackBoxResource}

class MyBlackBox(p : Parameters) extends BlackBox with HasBlackBoxResource{
    val io = IO(new Bundle(){
    val in1 = Input(UInt(32.W))
    val in2 = Input(UInt(32.W))
    val out1 = Output(UInt(32.W))
    val out2 = Output(UInt(32.W))
})
addResource("../resources/MyBlackBox.v")
}

这是verilog代码

module MyBlackBox(
input [31:0] in1,input [31:0] in2,output [31:0] out1,output [31:0] out2
);

always@(*) begin
out1 <= in1 * in1;
out2 <= in2 * in2;  
end
endmodule

这是我调用黑盒的类

class dummy extends Module{
val io = IO(new Bundle {
val in1 = Input(UInt(32.W))
val in2 = Input(UInt(32.W))
val out1 = Output(UInt(32.W))
val out2 = Output(UInt(32.W))
})
val bb = Module(new MyBlackBox)
bb.io.in1 := io.in1
bb.io.in2 := io.in2
io.out1 := bb.io.out1
io.out2 := bb.io.out2

}

测试平台如下

import chisel3._
import chisel3.iotesters._

class dummy_Driver(dut : dummy) extends PeekPokeTester(dut){}

object dummy_Driver extends App{
    chisel3.iotesters.Driver.execute(Array("--backend-name","verilator","--target-dir","test_run_dir/dummy","--top-name","dummy"),() => new dummy)
    { c => new dummy_Driver(c)}
}

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)