在做ad7274的spi接口仿真时,因为要模拟实际的板间延迟,所以给sdata添加了延迟语句
assign #30 sdata = sdata_temp
然后仿真出来的结果却发现,结果与预期不对,仔细对比后发现当延迟量#delay小于数据变化的时钟周期时,可以正常延迟传递,当#delay大于数据变化的时钟周期后,就会存在丢失延迟时间内数据变化的问题。
而用always@* a<= #delay b;则可以解决这个问题。
或者将#delay拆成多个小于时钟周期的延迟,也可以做到数据的正确传递。