在ATE测试时的pattern x mode是如何来使pattern体积变小的

原因 :因为ATE上的每个pin的vector
memory都是固定的,当测试的使用使用的pattern太大的话,pattern是不能成功加载到ATE中去的,当然可以不同pin的vector
memory可以互相share,当时这个另外一个topic了。

为什么x mode可以work
:因为每一个wavetable在系统中其实就是一张表,这个表的索引范围是0~255(问题:如果wavetable太大的话,怎么办?),如果你的wavetable中只定义了两个wave,剩下的253的位置就浪费了,所以这就引入了x
mode的概念

什么是x mode
一般来说,一个period,我们一般放入一个测试cycle,
但是x mode就是在一个period中,放入更多的测试cycle,放入几个(x)就叫做 x mode( 1/2
mode相反,就是讲一个测试cycle放入多个period中去,这里不讨论)

使用x mode的时候需要改变的是timing, wavetable和pattern,下面以wavetable来示例。但是好的ATE会根据你的x
mode情况,自动计算这些,有的可能需要手动去修改。

以下只以wavetable来说明,假如有如下的wavetable
定义了两个波形:

0:  drive1:0 drive2:0
1: drive1:1 drive2:0

对应的pattern如下:

1
0
1
0
0
0
1
1

如果使用x2 mode的话,wavetable会变成如下:

0: drive1:0 drive2:0 drive3:0 drive4:0 #equals 00
1: drive1:1 drive2:0 drive3:1 drive4:0 #equals 11
2: drive1:0 drive2:0 drive3:1 drive4:0 #equals 01
3: drive1:0 drive2:0 drive3:1 drive4:0 #equals 10

对应的pattern会变成如下形式:

3 #equals 10
3 #equals 10
0 #equals 00
1 #equals 11

原先的pattern行数是8,使用x2 mode只用,pattern的行数变成了4,从而达到节省vector memory的目的。

当然在使用x mode的使用还是有一些讲究的地方,
比方说如果
原来的pattern的行数/x ~= integer
的时候怎么办?
如果原来wavetable的波形太多怎么办?
在实际的工作中都有意识到这些。

dB vs dBw vs dBm

dB 是一个纯计数单位:dB = 10logX
dB的意义其实再简单不过了,就是把一个很大(后面跟一长串0的)或者很小(前面有一长串0的)的数比较简短地表示出来。如:
X = 1000000000000000(多少个了?)= 10lgX = 150 dB
X = 0.000000000000001 = 10lgX = -150 dB

dBm 定义的是 miliwatt。 0 dBm = 10lg1 mw;
dBw 定义 watt。 0 dBw = 10lg1 W = 10lg1000 mw = 30 dBm。

ref:
baidu
https://en.wikipedia.org/wiki/DBm
http://stackoverflow.com/questions/14881265/fft-and-decibel-scales

后台执行scp命令

欢迎使用Markdown编辑器写博客

run scp in background in order to prevent ssh’s disconnet to break the scp;

nohup scp test.tar.gz test@host:~/
ctrl+z //break it
bg //后台执行
fg //前台执行
the nohup output is save to nohup.out