同步测试完成
This commit is contained in:
@@ -546,6 +546,9 @@ trait SlaveParserSync{ this: SlaveParserBase =>
|
||||
|
||||
val recoTimeStamp = Reg(UInt(64.W)) //时钟补偿寄存器
|
||||
|
||||
dontTouch(deltaFinal)
|
||||
dontTouch(recoTimeStamp)
|
||||
|
||||
// recoTimeStamp = io.timeStamp + deltaFinal
|
||||
// recoTimeStamp = io.timeStamp + mstSlvDeltaTimeStamp + deltaMstSlvDeltaTimeStamp
|
||||
// recoTimeStamp = io.timeStamp + mstTimeStamp - downTimeStamp + (mstDeltaTimeStamp - slvDeltaTimeStamp ) >> 1
|
||||
@@ -579,30 +582,30 @@ trait SlaveParserSync{ this: SlaveParserBase =>
|
||||
|
||||
when( isSync ){
|
||||
when( syncCnt === 0.U ){
|
||||
mstTimeStamp := Cat( downRecParser.io.data.bits, mstTimeStamp(55,0) )
|
||||
} .elsewhen( syncCnt === 1.U ){
|
||||
mstTimeStamp := Cat( mstTimeStamp(63,56), downRecParser.io.data.bits, mstTimeStamp(47,0) )
|
||||
} .elsewhen( syncCnt === 2.U ){
|
||||
mstTimeStamp := Cat( mstTimeStamp(63,48), downRecParser.io.data.bits, mstTimeStamp(39,0) )
|
||||
} .elsewhen( syncCnt === 3.U ){
|
||||
mstTimeStamp := Cat( mstTimeStamp(63,40), downRecParser.io.data.bits, mstTimeStamp(31,0) )
|
||||
} .elsewhen( syncCnt === 4.U ){
|
||||
mstTimeStamp := Cat( mstTimeStamp(63,32), downRecParser.io.data.bits, mstTimeStamp(23,0) )
|
||||
} .elsewhen( syncCnt === 5.U ){
|
||||
mstTimeStamp := Cat( mstTimeStamp(63,24), downRecParser.io.data.bits, mstTimeStamp(15,0) )
|
||||
} .elsewhen( syncCnt === 6.U ){
|
||||
mstTimeStamp := Cat( mstTimeStamp(63,16), downRecParser.io.data.bits, mstTimeStamp(7,0) )
|
||||
} .elsewhen( syncCnt === 7.U ){
|
||||
mstTimeStamp := Cat( mstTimeStamp(63, 8), downRecParser.io.data.bits )
|
||||
} .elsewhen( syncCnt === 1.U ){
|
||||
mstTimeStamp := Cat( mstTimeStamp(63,16), downRecParser.io.data.bits, mstTimeStamp(7,0) )
|
||||
} .elsewhen( syncCnt === 2.U ){
|
||||
mstTimeStamp := Cat( mstTimeStamp(63,24), downRecParser.io.data.bits, mstTimeStamp(15,0) )
|
||||
} .elsewhen( syncCnt === 3.U ){
|
||||
mstTimeStamp := Cat( mstTimeStamp(63,32), downRecParser.io.data.bits, mstTimeStamp(23,0) )
|
||||
} .elsewhen( syncCnt === 4.U ){
|
||||
mstTimeStamp := Cat( mstTimeStamp(63,40), downRecParser.io.data.bits, mstTimeStamp(31,0) )
|
||||
} .elsewhen( syncCnt === 5.U ){
|
||||
mstTimeStamp := Cat( mstTimeStamp(63,48), downRecParser.io.data.bits, mstTimeStamp(39,0) )
|
||||
} .elsewhen( syncCnt === 6.U ){
|
||||
mstTimeStamp := Cat( mstTimeStamp(63,56), downRecParser.io.data.bits, mstTimeStamp(47,0) )
|
||||
} .elsewhen( syncCnt === 7.U ){
|
||||
mstTimeStamp := Cat( downRecParser.io.data.bits, mstTimeStamp(55,0) )
|
||||
} .elsewhen( syncCnt === 8.U ){
|
||||
mstSlvDeltaTimeStamp := mstTimeStamp - downTimeStamp
|
||||
mstDeltaTimeStamp := Cat( downRecParser.io.data.bits, mstDeltaTimeStamp(23, 0) )
|
||||
} .elsewhen( syncCnt === 9.U ){
|
||||
mstDeltaTimeStamp := Cat( mstDeltaTimeStamp(31,24), downRecParser.io.data.bits, mstDeltaTimeStamp(15,0) )
|
||||
} .elsewhen( syncCnt === 10.U ){
|
||||
mstDeltaTimeStamp := Cat( mstDeltaTimeStamp(31,16), downRecParser.io.data.bits, mstDeltaTimeStamp(7,0) )
|
||||
} .elsewhen( syncCnt === 11.U ){
|
||||
mstDeltaTimeStamp := Cat( mstDeltaTimeStamp(31, 8), downRecParser.io.data.bits )
|
||||
} .elsewhen( syncCnt === 9.U ){
|
||||
mstDeltaTimeStamp := Cat( mstDeltaTimeStamp(31,16), downRecParser.io.data.bits, mstDeltaTimeStamp(7,0) )
|
||||
} .elsewhen( syncCnt === 10.U ){
|
||||
mstDeltaTimeStamp := Cat( mstDeltaTimeStamp(31,24), downRecParser.io.data.bits, mstDeltaTimeStamp(15,0) )
|
||||
} .elsewhen( syncCnt === 11.U ){
|
||||
mstDeltaTimeStamp := Cat( downRecParser.io.data.bits, mstDeltaTimeStamp(23, 0) )
|
||||
} .otherwise{
|
||||
assert(false.B, "Wrong Sync SubMsg!\n")
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user