chisel中如何使用BlackBox

本文介绍了如何在Chisel中使用BlackBox来嵌入Verilog编写的模块。内容包括BlackBox的实现格式和例化格式,帮助理解如何在Scala驱动的Chisel环境中无缝集成Verilog代码。
摘要由CSDN通过智能技术生成

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(<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值