// SPDX-License-Identifier: Apache-2.0 package chiselTests import chisel3._ import chisel3.stage.ChiselStage class Padder extends Module { val io = IO(new Bundle { val a = Input(UInt(4.W)) val asp = Output(SInt(8.W)) val aup = Output(UInt(8.W)) }) io.asp := io.a.asSInt io.aup := io.a.asUInt } /* class PadsTester(c: Pads) extends Tester(c) { def pads(x: BigInt, s: Int, w: Int) = { val sign = (x & (1 << (s-1))) val wmask = (1 << w) - 1 val bmask = (1 << s) - 1 if (sign == 0) x else ((~bmask | x) & wmask) } for (t <- 0 until 16) { val test_a = rnd.nextInt(1 << 4) poke(c.io.a, test_a) step(1) expect(c.io.asp, pads(test_a, 4, 8)) expect(c.io.aup, test_a) } } */ class PadderSpec extends ChiselPropSpec { property("Padder should elaborate") { ChiselStage.elaborate { new Padder } } ignore("PadderTester should return the correct result") {} }