chisel

    2熱度

    1回答

    您能否告訴我如何遍歷bundle的signalName? 像 class test extends Bundle { val io = IO(new Bundle{ val a = Input(Bool()) val b = Input(Bool()) }) for (signame <- io.elements) { printf("%

    0熱度

    1回答

    在riscv測試中,特別是基準測試。 vvadd和mt-vvadd測試有什麼區別?兩者都表示「這個基準測試會添加兩個向量,並將結果寫入第三個向量。輸入數據(和參考數據)應該使用vvadd_gendata.pl perl腳本生成並轉儲到名爲dataset.h的文件中。」

    1熱度

    1回答

    我什麼趨勢做: 貓(...的輸入列表...):= UINT 的寬線當我這樣做的斯卡拉報告關於位了Syntex錯誤,所以我將其更改爲: 貓(...的輸入列表...).flatten:= UINT 的寬線 這一次階滿意但firrtl報告錯誤,因爲分配的左側將被分配到一個導線,然後將其暴力與輸入: 節點_T_47 =位(...一體從 _T_47 < = ... //這個暴力(FE)男規則 你能ENLIG

    1熱度

    2回答

    對於2D列表/數組的每個元素都可以使用「foreach」嗎? 我試過代碼: val n_vec = (0 to 2).map(i=> (0 to 2).map(j=> Wire(UInt(3.W)) ) ) n_vec.foreach((i:Int)=>( n_vec(i).foreach((j:Int)=>{ n_v

    1熱度

    1回答

    假設有一個B模塊,其中A是一個實例。 class B extends Module { … val u_A = Module(new A) // the way to hook u_A’s port is the issue } A模塊的說明: class A extends Module { val io = IO(new Bundle{

    1熱度

    1回答

    你能微啓是否有打印宏象 `synthesis_on `synthesis_keep_hiear 到RTL的方法嗎?

    0熱度

    1回答

    似乎是鑿子2和鑿子3之間的按位否定運算符的錯誤或未記錄的更改。 Chisel3代碼不工作的線含有生成 import chisel3._ class bitwise_neg extends Module { val io = new Bundle { val in = Input(UInt(4.W)) val out = Output(UInt(4.W))

    1熱度

    1回答

    以下代碼實現了一個n位固定優先級仲裁器。 import chisel3._ import chisel3.util._ class fixedPriorityArbiter(val n_reqs:Int = 4) extends Module { val NO_OF_REQS = n_reqs val io = IO(new Bundle { val req

    0熱度

    2回答

    假設我有一個Bool Vec。我想填充一個相同大小的新Vec,其值等於我在原始Vec中看到的這個指數的真值。我想要聯合做到這一點。 隨着我的HLS背景和編碼風格在我的腦海解決,我想寫的東西是這樣的: def foo (in : Vec[UInt]) = { val out = Vec.fill(in.size) {UInt(in.size)} val nextInd = Wi

    1熱度

    1回答

    它可以使一個部分指派給一個矢量IO如下: import chisel3._ class example_1 extends Module { val io = IO(new Bundle { val in1 = Input(Vec(4, Bool()) val out1 = Output(Vec(4, Bool()) }) for (I <