debug开始,cdrin优化后payloadlen加载错误
This commit is contained in:
@@ -159,19 +159,17 @@ class BackSysImp(outer: BackSys) extends LazyModuleImp(outer) with HasBackParame
|
|||||||
gpio.io.mem.valid := pico.io.mem.valid & pico.io.mem.addr.extract(11) === "b1".U & ~pico.io.mem.instr
|
gpio.io.mem.valid := pico.io.mem.valid & pico.io.mem.addr.extract(11) === "b1".U & ~pico.io.mem.instr
|
||||||
|
|
||||||
pico.io.mem.ready :=
|
pico.io.mem.ready :=
|
||||||
Mux( pico.io.mem.instr, sram.io.mem.ready,
|
Mux( pico.io.mem.instr | pico.io.mem.addr.extract(31) === "b1".U, sram.io.mem.ready,
|
||||||
Mux1H(Seq(
|
Mux1H(Seq(
|
||||||
( pico.io.mem.addr.extract(31) === "b1".U ) -> sram.io.mem.ready,
|
( pico.io.mem.addr.extract(10) === "b0".U ) -> cdr.io.mem.ready,
|
||||||
( pico.io.mem.addr.extract(11) === "b0".U ) -> cdr.io.mem.ready,
|
( pico.io.mem.addr.extract(10) === "b1".U ) -> gpio.io.mem.ready,
|
||||||
( pico.io.mem.addr.extract(11) === "b1".U ) -> gpio.io.mem.ready,
|
|
||||||
))
|
))
|
||||||
)
|
)
|
||||||
pico.io.mem.rdata :=
|
pico.io.mem.rdata :=
|
||||||
Mux( pico.io.mem.instr, sram.io.mem.rdata,
|
Mux( pico.io.mem.instr | pico.io.mem.addr.extract(31) === "b1".U, sram.io.mem.rdata,
|
||||||
Mux1H(Seq(
|
Mux1H(Seq(
|
||||||
( pico.io.mem.addr.extract(31) === "b1".U ) -> sram.io.mem.rdata,
|
( pico.io.mem.addr.extract(10) === "b0".U ) -> cdr.io.mem.rdata,
|
||||||
( pico.io.mem.addr.extract(11) === "b0".U ) -> cdr.io.mem.rdata,
|
( pico.io.mem.addr.extract(10) === "b1".U ) -> gpio.io.mem.rdata,
|
||||||
( pico.io.mem.addr.extract(11) === "b1".U ) -> gpio.io.mem.rdata,
|
|
||||||
))
|
))
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|||||||
@@ -63,7 +63,10 @@ trait TLCDRTx{ this: TLCDRBase =>
|
|||||||
|
|
||||||
when( txFifo.io.deq.fire ){ //txCnt === 3.U
|
when( txFifo.io.deq.fire ){ //txCnt === 3.U
|
||||||
txData := txFifo.io.deq.bits
|
txData := txFifo.io.deq.bits
|
||||||
|
when( isTxBusy ){
|
||||||
assert(CDROut.io.axis.fire)
|
assert(CDROut.io.axis.fire)
|
||||||
|
}
|
||||||
|
|
||||||
} .elsewhen( CDROut.io.axis.fire ){
|
} .elsewhen( CDROut.io.axis.fire ){
|
||||||
txData := txData << 8
|
txData := txData << 8
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -14,9 +14,9 @@ volatile uint32_t *cdr_rxLen = (uint32_t*)( 0x000 + 0x18 ); //read
|
|||||||
volatile uint32_t *cdr_rxFifo = (uint32_t*)( 0x000 + 0x1c ); //read
|
volatile uint32_t *cdr_rxFifo = (uint32_t*)( 0x000 + 0x1c ); //read
|
||||||
|
|
||||||
|
|
||||||
volatile uint32_t *WriteGpio = (uint32_t*) ( 0x800);
|
volatile uint32_t *WriteGpio = (uint32_t*) ( 0x400);
|
||||||
volatile uint32_t *ReadGpio = (uint32_t*) ( 0x800);
|
volatile uint32_t *ReadGpio = (uint32_t*) ( 0x400);
|
||||||
volatile uint32_t *ReadIsLast = (uint32_t*) ( 0x808);
|
volatile uint32_t *ReadIsLast = (uint32_t*) ( 0x408);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user