Make Int -> Bool conversions explicit
This commit is contained in:
parent
1b030777ce
commit
6465e2df14
@ -57,7 +57,7 @@ class SECCode extends Code
|
||||
|
||||
val y = for (i <- 1 to n) yield {
|
||||
if (isPow2(i)) {
|
||||
val r = for (j <- 1 to n; if j != i && (j & i))
|
||||
val r = for (j <- 1 to n; if j != i && (j & i).toBoolean)
|
||||
yield x(mapping(j))
|
||||
r reduce (_^_)
|
||||
} else
|
||||
@ -71,7 +71,7 @@ class SECCode extends Code
|
||||
|
||||
val p2 = for (i <- 0 until log2Up(n)) yield 1 << i
|
||||
val syndrome = p2 map { i =>
|
||||
val r = for (j <- 1 to n; if j & i)
|
||||
val r = for (j <- 1 to n; if (j & i).toBoolean)
|
||||
yield y(j-1)
|
||||
r reduce (_^_)
|
||||
}
|
||||
|
@ -3,15 +3,18 @@ package rocket
|
||||
import Chisel._
|
||||
import scala.math._
|
||||
|
||||
object Util
|
||||
{
|
||||
class BooleanToInt(x: Int) {
|
||||
def toBoolean: Boolean = if (x != 0) true else false
|
||||
}
|
||||
|
||||
object Util {
|
||||
implicit def intToUInt(x: Int): UInt = UInt(x)
|
||||
implicit def intToBoolean(x: Int): Boolean = if (x != 0) true else false
|
||||
implicit def booleanToInt(x: Boolean): Int = if (x) 1 else 0
|
||||
implicit def booleanToBool(x: Boolean): Bits = Bool(x)
|
||||
implicit def intSeqToUIntSeq(x: Iterable[Int]): Iterable[UInt] = x.map(UInt(_))
|
||||
|
||||
implicit def wcToUInt(c: WideCounter): UInt = c.value
|
||||
|
||||
implicit def booleanToInt(x: Boolean): Int = if (x) 1 else 0
|
||||
implicit def intToBooleanToInt(x: Int): BooleanToInt = new BooleanToInt(x)
|
||||
}
|
||||
|
||||
object AVec
|
||||
|
Loading…
Reference in New Issue
Block a user