peteraa 7 år sedan
förälder
incheckning
a361dc460d
3 ändrade filer med 11 tillägg och 3 borttagningar
  1. +4
    -1
      src/main/scala/daisyGrid.scala
  2. +4
    -2
      src/main/scala/daisyMatMul.scala
  3. +3
    -0
      src/main/scala/daisyVec.scala

+ 4
- 1
src/main/scala/daisyGrid.scala Visa fil

@@ -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))
})


+ 4
- 2
src/main/scala/daisyMatMul.scala Visa fil

@@ -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


+ 3
- 0
src/main/scala/daisyVec.scala Visa fil

@@ -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 {


Laddar…
Avbryt
Spara