开放lvds对smtrigLen寄存器的写权限
This commit is contained in:
@@ -537,12 +537,31 @@ trait InterfaceCheckSM{ this: InterfaceBase =>
|
||||
val dataw: UInt
|
||||
val isEnR: Bool
|
||||
|
||||
|
||||
val smTrigLen_H = for( i <- 0 until 8 ) yield { RegInit(0.U(8.W)) }
|
||||
val smTrigLen_L = for( i <- 0 until 8 ) yield { RegInit(0.U(8.W)) }
|
||||
|
||||
|
||||
for( i <- 0 until 8 ){
|
||||
cReg.smTrigLen(i) :=
|
||||
Cat(
|
||||
RegEnable( dataw, 0.U, isEnW & addrw === ("h303".U + (i*4).U) ),
|
||||
RegEnable( dataw, 0.U, isEnW & addrw === ("h302".U + (i*4).U) ),
|
||||
)
|
||||
cReg.smTrigLen(i) := Cat( smTrigLen_H(i), smTrigLen_L(i) )
|
||||
|
||||
when( isEnW & addrw === ("h303".U + (i*4).U) ){
|
||||
smTrigLen_H(i) := dataw
|
||||
} .elsewhen( io.lvds.isEnW & io.lvds.addrw === ("h303".U + (i*4).U)){
|
||||
smTrigLen_H(i) := io.lvds.dataw
|
||||
}
|
||||
|
||||
when( isEnW & addrw === ("h302".U + (i*4).U) ){
|
||||
smTrigLen_L(i) := dataw
|
||||
} .elsewhen( io.lvds.isEnW & io.lvds.addrw === ("h302".U + (i*4).U)){
|
||||
smTrigLen_L(i) := io.lvds.dataw
|
||||
}
|
||||
|
||||
|
||||
// Cat(
|
||||
// RegEnable( dataw, 0.U, isEnW & addrw === ("h303".U + (i*4).U) ),
|
||||
// RegEnable( dataw, 0.U, isEnW & addrw === ("h302".U + (i*4).U) ),
|
||||
// )
|
||||
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user