调整同步spi的enw enr的byte数
This commit is contained in:
@@ -65,8 +65,8 @@ abstract class SpiInterfaceBase extends Module with RequireAsyncReset{
|
||||
val spiLenTemp = RegInit(2.U(12.W))
|
||||
val spiCnt = RegInit(0.U(12.W))
|
||||
|
||||
io.isEnW := isSckPosedgeNext(0) & ~shiftCSn(2) & bitSelNext.andR & isSpiWrite & byteSelNext >= 3.U & (spiCnt < spiLen)
|
||||
io.isEnR := (isSckPosedge & ~shiftCSn(1) & bitSel === 0.U & isSpiRead & byteSel >= 3.U ) & (spiCnt <= spiLen)
|
||||
io.isEnW := isSckPosedgeNext(0) & ~shiftCSn(2) & bitSelNext.andR & isSpiWrite & byteSelNext >= 4.U & (spiCnt < spiLen)
|
||||
io.isEnR := (isSckPosedge & ~shiftCSn(1) & bitSel === 0.U & isSpiRead & byteSel >= 4.U ) & (spiCnt <= spiLen)
|
||||
|
||||
io.dataw := exRegi
|
||||
io.addrr := addrr
|
||||
@@ -104,7 +104,7 @@ abstract class SpiInterfaceBase extends Module with RequireAsyncReset{
|
||||
} .elsewhen(isSckPosedge & ~shiftCSn(1) & bitSel.andR & byteSel === 1.U) {//CS为低,且SCK上跳的第0byte
|
||||
addrr := Cat(addrr(7,0), exRegi(6,0), shiftMOSI)
|
||||
} .otherwise{ // byteSel > 1.U
|
||||
when( isSckPosedge & byteSel >= 3.U & bitSel === 0.U ){
|
||||
when( isSckPosedge & byteSel >= 4.U & bitSel === 0.U ){
|
||||
addrr := addrr + 1.U
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user