描述
我想在正常操作期间重置MicroBlaze。
当Reset_Mode = 01(休眠模式)输入信号设置休眠模式时,MicroBlaze是否会等待所有未完成访问的完成?
解
复位有效时,复位模式信号被采样。
在MicroBlaze上断言重置将导致MicroBlaze直接重置,并且将忽略任何未完成的事务。
正在进行的交易将突然停止。重置不会等待未完成访问的完成。
如果要在正常操作期间重置MicroBlaze并且要确保完成所有未完成的事务,则需要遵循此流程。
- 不要重置MicroBlaze,而是将中断设置为MicroBlaze
- 在此中断的中断例程中,执行睡眠指令。
可以使用汇编程序伪指令睡眠:
#definemb_sleep()({__ asm__ __ volatile {(“sleep \ t”);})
- 当MicroBlaze进入睡眠模式时,置位复位信号。
当MicroBlaze进入睡眠模式时,睡眠输出信号被置位。
没有回复内容