Files
eb001/src/main/scala/backBoard/ebus/Encryptor.scala

34 lines
601 B
Scala
Raw Normal View History

2025-05-22 16:54:17 +08:00
package BACK
import chisel3._
import chisel3.util._
class Encryptor_IO_Bundle extends Bundle{
val init = Flipped(Valid(UInt(128.W)))
val op = Decoupled(UInt(8.W))
}
class Encryptor extends Module{
val io: Encryptor_IO_Bundle = IO(new Encryptor_IO_Bundle)
2025-09-02 16:22:27 +08:00
val encryptReg = RegInit(0.U(128.W))
2025-05-22 16:54:17 +08:00
when( io.init.valid ){
encryptReg := io.init.bits
} .elsewhen( io.op.fire ){
encryptReg := Cat(encryptReg(119,0), io.op.bits)
}
val opValid = RegInit(false.B)
when( io.init.fire ){
opValid := true.B
}
io.op.valid := opValid
io.op.bits := encryptReg(127, 120)
}