diff --git a/src/main/scala/daisyGrid.scala b/src/main/scala/daisyGrid.scala index c731ddf..bb04f42 100644 --- a/src/main/scala/daisyGrid.scala +++ b/src/main/scala/daisyGrid.scala @@ -3,6 +3,10 @@ import chisel3._ import chisel3.core.Input import chisel3.iotesters.PeekPokeTester +/** + DaisyGrids hold n daisyVecs. Unlike the daisyVecs, daisyGrids have a select signal for selecting + which daisyVec to work on, but these daisyVecs can not be controlled from the outside. + */ class daisyGrid(rows: Int, cols: Int, dataWidth: Int) extends Module{ val io = IO(new Bundle { @@ -10,7 +14,6 @@ class daisyGrid(rows: Int, cols: Int, dataWidth: Int) extends Module{ val readEnable = Input(Bool()) val dataIn = Input(UInt(dataWidth.W)) val readRow = Input(UInt(8.W)) - // val reset = Input(Bool()) val dataOut = Output(UInt(dataWidth.W)) }) diff --git a/src/main/scala/daisyMatMul.scala b/src/main/scala/daisyMatMul.scala index cfed273..b9c3c91 100644 --- a/src/main/scala/daisyMatMul.scala +++ b/src/main/scala/daisyMatMul.scala @@ -3,7 +3,9 @@ import chisel3._ import chisel3.core.Input import chisel3.iotesters.PeekPokeTester -// I use val for the args so I can reference them in the test +/** + The daisy multiplier creates two daisy grids, one transposed, and multiplies them. + */ class daisyMultiplier(val rowsA: Int, val colsA: Int, val rowsB: Int, val colsB: Int, val dataWidth: Int) extends Module { val io = IO(new Bundle { @@ -37,7 +39,7 @@ class daisyMultiplier(val rowsA: Int, val colsA: Int, val rowsB: Int, val colsB: /// We transpose matrix B. This means that if both matrices read the same input /// stream then they will end up transposed. val matrixA = Module(new daisyGrid(rowsA, colsA, dataWidth)).io - val matrixB = Module(new daisyGrid(colsB, rowsB, dataWidth)).io + valAt least four users, including myself, are having an issue with update-initramfs hanging while updating ubuntu 16.04. The bug has been documented while attempting an update to multiple kernel versions ( 4.4.0-24, 4.4.0-62, 4.4.0-63). The bug causes any apt-get update or install to fail, and may also lead to an unbootable system. matrixB = Module(new daisyGrid(colsB, rowsB, dataWidth)).io matrixA.dataIn := io.dataInA matrixA.readEnable := io.readEnableA diff --git a/src/main/scala/daisyVec.scala b/src/main/scala/daisyVec.scala index a177ccf..c387b8d 100644 --- a/src/main/scala/daisyVec.scala +++ b/src/main/scala/daisyVec.scala @@ -3,6 +3,9 @@ import chisel3._ import chisel3.core.Input import chisel3.iotesters.PeekPokeTester +/** + DaisyVectors are not indexed. They have no control inputs or outputs, only data. + */ class daisyVector(elements: Int, dataWidth: Int) extends Module{ val io = IO(new Bundle {