Skip to main content
Filter by
Sorted by
Tagged with
0 votes
1 answer
52 views

I am trying to use Record class to generate RegInit. This can help to dynamically create RegInit with other information in Module. I am trying to use Record class to generate RegInit. Here are my ...
XINGYU YAN's user avatar
1 vote
1 answer
293 views

I am trying to simulate a system using chisel 3. The system has a blackbox that has a verilog. The verilog code is not behavioural, it simply instantiate a module that the synthesizer configures.I ...
Mohamed M. Shahawy's user avatar
1 vote
1 answer
52 views

Is there any way to copy all bits of a bundle into another bundle? Basically, I want to send out the same data into two outputs that would be connected to different receivers. E.g: io.out(1).bits.x :=...
Ali Sed's user avatar
  • 151
1 vote
1 answer
102 views

I just learned about the scalar to study rocket chips. I see some strange codes in the Config.scala of Rocket-chip abstract class Field[T] private (val default: Option[T]) { def this() // 1st-this ...
astrohan's user avatar
1 vote
1 answer
267 views

I declared a counter like this : val MAXCOUNT = ((BigInt(1) << COUNT_WIDTH)-1) val counterSize = log2Ceil(MAXCOUNT) println("Maxcount -> " + MAXCOUNT + ", " + ...
FabienM's user avatar
  • 3,901
1 vote
1 answer
198 views

I'm trying to implement a queue of bundles using chisel class element extends Bundle{ val data=UInt(32.W) } class testQueue extends Module { val io = IO(new Bundle { val in = Flipped(Decoupled(...
Boucii's user avatar
  • 51
1 vote
1 answer
99 views

If I have class ios extends Bundle{ val wen = Input(Bool()) val wdata = Input(UInt(8.W)) val rdata = Output(UInt(8.W)) } With Flipped I can get something like class flipped_ios extends Bundle{ ...
Kera's user avatar
  • 105
1 vote
1 answer
146 views

I'm using the Queue of the Chisel Lang in a design. Accessing the empty and full signals of the Queue could be beneficial, but since they're not part of the IO, I cannot use them. Is there any way to ...
Ali Sed's user avatar
  • 151
2 votes
1 answer
82 views

I made some chisel projects published on my github repositories. All projects are initialized with chisel-template official example. For the moment to use these as packages I have to «publish it local»...
FabienM's user avatar
  • 3,901
2 votes
2 answers
247 views

I am trying to come up with a better title. I am new in Chisel and Scala. Below there is a Chisel code defining and testing an module. import chisel3._ import chiseltest._ import org.scalatest....
Kera's user avatar
  • 105
1 vote
0 answers
42 views

I make a RISCV core with chisel3. However, when I want to tapeout the core, the SRAMs make a big problem. I should synthesize the logic first, and synthesize the top hierarchy with SRAM as blackbox. ...
DDK's user avatar
  • 136
0 votes
1 answer
370 views

I am fairly new to Chisel, and is currently attempting to rewrite a Chisel project from Chisel 3.4 to 3.5. The issue I have faced is the project initializes IO()'s with a custom class that extends a ...
stackmeister's user avatar
0 votes
1 answer
146 views

I'm writing a chisel project as follows: Chisel Project. When I tried to generate a verilog file by object Elaborate extends App { (new chisel3.stage.ChiselStage).execute(args, Seq(chisel3.stage....
wuliJerry's user avatar
  • 311
0 votes
1 answer
132 views

I am trying to add a custom instruction to a freedom e300 rocket-chip. The custom instruction is to perform an operation using the values of registers a0 to a7 that have been pre-loaded. (Load the ...
fuishi's user avatar
  • 1
1 vote
1 answer
189 views

When I am running a code for testing in fixedpoint, I am getting an error. Can anyone help me with the code??? Code: import chisel3._ import chisel3.util._ import chisel3.experimental....
Soham's user avatar
  • 11
0 votes
1 answer
208 views

In my scala chisel project I need to insert system-verilog blackbox with 2-d arrays of ports. For example: module something_bb( input [`somtething_width-1 :0] something_i [`somtething_num-...
Nickolay Bandurin's user avatar
1 vote
0 answers
50 views

As we know for the two-dimensional systolic array, except that the data of the first row is sent at the time of initialization, or say the first cycle, the following ones must be sent after a row/...
IskandarZhang's user avatar
0 votes
1 answer
41 views

I've seen something like: def matInit(n:Int):Array[Array[Int]]={ val maxval=5 val rnd=new Random(100) Array.tabulate(n){_=>Array.tabulate(n){_=>rnd.nextInt(maxval+...
IskandarZhang's user avatar
1 vote
1 answer
389 views

I'm trying to add a new blackboxed verilog module to the chipyard hardware generation framework and simulate it with verilator. My changes pass chipyard's scala compilation phase in which the chisel ...
benjaminou4412's user avatar
-1 votes
1 answer
207 views

When making a FIRRTL register, it is possible to provide a "with: (reset => ...)" value used to initialize the register. When making a FIRRTL memory (aka a dynamic register array), there ...
Daniel's user avatar
  • 1,925
8 votes
1 answer
494 views

I'm a SW developer trying to understand configuration of the RISC-V Platform-Level Interrupt Controller (PLIC) that's in a rocket-chip derived SoC in an FPGA. Please correct me if my terminology is ...
Jens's user avatar
  • 73.3k
0 votes
1 answer
118 views

I am trying to write a 64 bit word to the MMIO register using the reg_write64 construct defined in mmio.h. Everything works fine as long as the wire that I map this register to in chisel land is not ...
CV_Ruddha's user avatar
  • 406
1 vote
1 answer
165 views

I started to program in Chisel recently and I need to use dsptools for my project. However I am having issues to even have a very simple case working. For example the code below: package radix2 ...
Hakime's user avatar
  • 13
1 vote
1 answer
90 views

Writing a register file in FIRRTL is straightforward: make a memory of machine words and read/write them. However, when writing a cache, it is different: you typically have a cache line and when ...
Daniel's user avatar
  • 1,925
0 votes
1 answer
102 views

Here is a simple module containing a down counter: import chisel3.util.{Valid, DeqIO} class Input(WIDTH : Int) extends Bundle { val x = UInt(WIDTH.W) } class Output(WIDTH : Int) extends Bundle { ...
Gaslight Deceive Subvert's user avatar
1 vote
1 answer
92 views

This may or may not be a duplicate of How to use chisel module as package. Again, for scala/sbt/maven experts this may be obvious, for old school ASIC designers it's not: I have project PROJ with ...
Robert M.'s user avatar
0 votes
1 answer
569 views

I'm trying to connect a PCIe device to a chipyard design using the existing edge overlay for the VCU118 (slightly modified because I'm using a different board but this should not matter). @michael-...
Santos's user avatar
  • 1
1 vote
1 answer
84 views

I'm coming from Bluespec and not understanding this Chisel behavior. I have a simple Module: class WhyFails extends Module { val io = IO(new Bundle { val operation = Input(UInt(2.W)) ...
John W. Terrell's user avatar
1 vote
1 answer
122 views

When I wrote this : class MullerC(val WIDTH: Int = 2) extends Module { val io = IO(new Bundle { val in = Input(Vec(WIDTH, Bool())) val out = Output(Bool()) }) io.out := false.B when (...
Yude Wei's user avatar
2 votes
1 answer
176 views

I have some FIRRTL and I want to get a critical path / bottleneck analysis of the code so as to maximize the clock rate by minimizing the critical path. I can write a weighted topological sort myself, ...
Daniel's user avatar
  • 1,925
1 vote
1 answer
360 views

I initialized two registers in my accelerator like val one = RegInit(0.U(5.W)) val two = RegInit(0.U(5.W)) If I have loaded a data to my rs1(R-type instruction) in my C test code, I wanted to assign ...
Lei Niu's user avatar
  • 13
1 vote
1 answer
773 views

This is a continuation from the other question i asked : Instanciation of a class doesn't work (Chisel/Scala) Actually, I wanna print the "result" variable. I wrote this command : sbt ...
Emmanuelle's user avatar
1 vote
1 answer
369 views

I got the following error: java.lang.IllegalArgumentException: requirement failed: must be inside Builder context issue when I write this on the terminal : sbt run This is my code: import chisel3._ ...
Emmanuelle's user avatar
2 votes
1 answer
495 views

I am trying to build a minimal example, of how to generate an AXI4Stream interface using Chisel and diplomacy. I am using the diplomatic interface already available in rocket-chip (freechips....
Jure Vreča's user avatar
1 vote
0 answers
110 views

I would like to build a fat JAR that can build my Chisel code. I have built these previously using Maven assembly: https://github.com/hutch31/ChiselCodeGenerator But I would like to get this working ...
Guy Hutchison's user avatar
2 votes
1 answer
144 views

I see the following FIRRTL code emitted by Chisel: cmem mem : SInt<64>[8] and infer mport _T = mem[io.address], clock NOTE: my memory object is named "mem". However in the firrtl 1.5....
Daniel's user avatar
  • 1,925
1 vote
0 answers
158 views

Here is the code that causes java.lang.NullPointerException: val confidence = SyncReadMem(params.numEntries, UInt(params.confidenceBitsNum.W)) val s0_valid = io.mem.valid val s0_index ...
wind's user avatar
  • 11
2 votes
1 answer
265 views

I'm trying to pass implicit parameters to a submodule in an instantiated module. The implicit parameter is the config package defined in rocketchipenter link description here, I want to use the config ...
Self-Motivated Wu's user avatar
0 votes
1 answer
503 views

Software: IntelliJ IDEA OS: Ubuntu20.04.3 LST Language: Scala Chisel Here is my project path tree: - src[sources root] -- common --- Extend.scala -- NpcCore.scala Extend.scala package common ...
Jan's user avatar
  • 5
2 votes
1 answer
935 views

I'm getting a wrong "CombLoopException" when passing a complex Record (Bundle based on key-value pairs) as UInt and converting the UInt back to the Record by using asUInt() and asTypeOf(...)....
larluc's user avatar
  • 23
1 vote
1 answer
1k views

I am trying to add an accelerator to the rocket chip framework through the MMIO peripheral. I went through the GCD example and was able to build the basic GCD code. I then replaced the GCD with an ...
CV_Ruddha's user avatar
  • 406
1 vote
1 answer
68 views

I'm attempting to do these rather large DMA transfers over the frontbus to memory. The frontbus is ready and no other clients are contending for the front bus at the moment this occurs. My AXI client ...
metzkorn's user avatar
  • 355
0 votes
1 answer
479 views

Per this: https://github.com/chipsalliance/chisel3/issues/2439 I've decided to change all Vec[Bool] to UInt where possible. One feature of a Vec[Bool] is that testing the values of each bit is simple. ...
nic's user avatar
  • 1,581
1 vote
1 answer
104 views

I want to use Mux to choose bundle enter code here class ComIO extends Bunlde { val in = Input(UInt(32.W) val in = Input(UInt(32.W) } class EntIO extends Bundle { val com = new ComIO } class Ent ...
HaibaraMegumi's user avatar
0 votes
1 answer
395 views

I've found that SpinalHDL has some powerful and elegant ways to describe a rather complicated fsm. I wonder if it's possible to construct a FSM lib (like SpinalHDL has done) in Chisel? p.s. I'm not ...
sheldoncooper0's user avatar
1 vote
1 answer
788 views

I followed the MMIO Peripherals page from the Chipyard documentation to learn about adding modules to rocket-chip within Chipyard framework - and all that seems to have worked pretty well. I summed up ...
apaj's user avatar
  • 319
1 vote
1 answer
770 views

I am new to the sbt and mill, and I am practicing to use both tool to build the chisel (scala project). View this github repo as a reference, I am wondering to know how to write the mill-version build....
徐韋凱's user avatar
4 votes
1 answer
112 views

I have code like this: val pop: Bool = ( (fsm === Fsm.None && canPop) || (fsm === Fsm.Some && canPop && fooBar) (fsm === Fsm.Other && canPop && ...
nic's user avatar
  • 1,581
0 votes
1 answer
451 views

I have the following test harness for a module defined in Verilog: class TestMCQDiv extends FlatSpec with ChiselScalatestTester with Matchers { behavior of "MCQDiv" // Dependent ...
Espresso's user avatar
  • 187
3 votes
1 answer
539 views

For testing inputs/outputs specified as vectors, I need to be able to programmatically create the desired Vec[Bool] for poke and expect. Seq[Bool] is a convient structure to create either directly (e....
nic's user avatar
  • 1,581

1
2
3 4 5
14