其实这里的Timing和T2000中的Timing定义是很像的。
我们继续解释。
Timing basic {
WaveformTable one { #定义一个timing,这种pattern中会使用到
Period ’500ns’; #定义了周期,这里是执行一行pattern所需要的时间
Waveforms {
DIR { 01 { ’0ns’ ForceDown/ForceUp; }} #对DIR这个pin的01两个WFC,定义了这什么时间做什么
OE_ { 01 { ’0ns’ ForceUp; ’200ns’ ForceDown/ForceUp; ’300ns’ ForceUp; }}
ABUS { 01 { ’10ns’ ForceDown/ForceUp; }
LHZX{ ’0ns’ ForceOff; #先把driver关闭
’0ns’ CompareUnknown;
’260ns’ CompareLowWindow/CompareHighWindow/CompareOffWindow/CompareUnknown;
’280ns’ CompareUnknown;}
}
BBUS { 01 { ’10ns’ ForceDown/ForceUp; }
LHZX { ’0ns’ ForceOff;
’0ns’ CompareUnknown;
’260ns’ CompareLowWindow/CompareHighWindow/CompareOffWindow/CompareUnknown;
’280ns’ CompareUnknown;}
}
} // end Waveforms
} // end WaveformTable one
} // end Timing basic
具体的来说,例如
OE_ { 01 { ’0ns’ ForceUp; ’200ns’ ForceDown/ForceUp; ’300ns’ ForceUp; }}
分解开来就是:
OE_ { 0 { ’0ns’ ForceUp; ’200ns’ ForceDown; ’300ns’ ForceUp; }}
OE_ { 1 { ’0ns’ ForceUp; ’200ns’ ForceUp; ’300ns’ ForceUp; }}
画出来的波形如下: