simulink输入信号处理

#我有一个脉冲电流输入信号,有正数,负数还有0,我想通过一些simulink的block使得输出的信号中电流为0的数取值替换为它前面第一个非0的值。有办法实现吗?
img

使用Matlab Function或S Function编程来实现,将当前值和上一步长值作为输入,如果当前值为非0,则输出当前值,否则输出上一步长值。