问个oscillator仿真的问题# EE - 电子工程s*32008-08-04 07:081 楼招聘家教,辅导四年级小学课程,辅导时间周一、三、四、五的18:00-20:00(价格面议)地址:海淀区圆明园花园别墅电话:13801253461 刘女士
f*o2008-08-04 07:083 楼在做一个LC-OSC发现layout以后提取的网表怎么也不起振我把extraction的设置设成只提取电路元件不提寄生RC然后手动把寄生二极管删了也跑不起来因为layout后出现几千个transistor并联手动查很麻烦, 不过LVS是正常的这样extracted netlist应该和schematic一样吧, 因为没有任何寄生元件是不是并联的transistor和在schematic里面设置成finger有很大差别?从schematic的仿真来看tuning range蛮大的不知道这些变化是不是有问题?实在想不明白, 请高手指教多谢
w*i2008-08-04 07:084 楼function k_largest(array, k){arrayk=sorted(array[1:k])for x in array[k+1:end]{if x>arrayk[end]: insert(arrayk, x) //~O(log(k))}}not the best way~O((k+n)log(k)), good for small k
a*i2008-08-04 07:085 楼有寄生RC应该更容易起振,post-layout比pre-layout更容易起振,除非你的post-layout本来就是振不了的。在LC-tank的某个输入端上加个脉冲电流源。在t=0的时候给振荡器一个短脉冲。如果你的振荡器能起振的话,脉冲消失后振荡就能维持下去;如果振荡逐渐衰减至0,就是你的振荡器本来就不能起振。通常layout的时候会增加大量的寄生电容,导致晶体管的负载太大而很难起振;如果schemetic里晶体管的驱动能力没有很大的裕量的话,layout后很有可能振荡器就不能振了。【在 f********o 的大作中提到】: 在做一个LC-OSC: 发现layout以后提取的网表怎么也不起振: 我把extraction的设置设成只提取电路元件不提寄生RC: 然后手动把寄生二极管删了也跑不起来: 因为layout后出现几千个transistor并联: 手动查很麻烦, 不过LVS是正常的: 这样extracted netlist应该和schematic一样吧, 因为没有任何寄生元件: 是不是并联的transistor和在schematic里面设置成finger有很大差别?: 从schematic的仿真来看tuning range蛮大的: 不知道这些变化是不是有问题?
w*g2008-08-04 07:086 楼用heap保存topk, 复杂度O(NlogK)【在 c**m 的大作中提到】: 可能出现过N遍了,没看过的凑凑热闹:: Given N integers, find the first K largest.
f*o2008-08-04 07:087 楼谢谢回复我加了脉冲电流, 但是振荡自己衰减下去了其实我一开始设计过一个version, post-layout simulation没问题然后做了些optimization, 加大了驱动电流和晶体管的面积, 改了floor planning就不行了实在想不到会有什么问题 :(【在 a**i 的大作中提到】: 有寄生RC应该更容易起振,post-layout比pre-layout更容易起振,除非你的post-: layout本来就是振不了的。: 在LC-tank的某个输入端上加个脉冲电流源。在t=0的时候给振荡器一个短脉冲。如果: 你的振荡器能起振的话,脉冲消失后振荡就能维持下去;如果振荡逐渐衰减至0,就: 是你的振荡器本来就不能起振。: 通常layout的时候会增加大量的寄生电容,导致晶体管的负载太大而很难起振;如果: schemetic里晶体管的驱动能力没有很大的裕量的话,layout后很有可能振荡器就不能: 振了。
w*i2008-08-04 07:088 楼刚才G了一下heap=build_heap(array) //O(N)for i=1:k{largestk[i]=root(heap)delete_root(heap) //O(log(N))}O(N+Klog(N))