2012年12月14日 星期五

[Assura&QRC] Using QRC instead of Old Assura RCX

When the writer having fun with UMC 65nm Design Kit in ICFB614 and Assura to perform Physical Designs, we found out that UMC only provide DRC and LVS Ruledeck for Assura but not the most essential RCX/LPE Deck. This smashed the writer in dark abyss.

Luckily, the writer found out UMC has provide RCX/LPE Rules for new Cadence tool which is the QRC.


Before you play with QRC Rule files, please make sure you have install one of the following package:
  1. EXT8
  2. EXT9
  3. EXT10
Or else you can install the PVS instead of EXT
  1. PVS 9
  2. PVS 10
  3. PVE 11
Ah, PVE is the newest version that merge both PVS and EXT, so there will be no EXT11 but PVE11 will just fine.

Make sure you have define the "QRC_HOME" to the installation directory and also those "PATH" and "LD_LIBRARY_PATH"

To play with:
  1. Perform LVS as usual. Hold your hand right there.
  2. Open a new terminal and go to the Design Kit Directory
  3. > qrcui & , it will open a Virtuoso Like Console
  4. Assura->QRC, Have fun.

2012年12月10日 星期一

[Ubuntu] setup VNC with GUI desktop

After install gnome-core and vnc4server, there is the script for xstartup


#!/bin/sh

# Uncomment the following two lines for normal desktop:
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
#. /etc/X11/xinit/xinitrc
/usr/bin/gnome-session --session=gnome-classic

[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &
x-terminal-emulator -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
x-window-manager &



solution from: http://ubuntuforums.org/showthread.php?t=1480094

2012年12月8日 星期六

[Hspice] Using Calculator in Hspice

Step 1. change the calculator into rpn mode

Step 2. To paste a waveform onto the Entry field:


  1. Select the waveform in the Signal Manager or from a graph region.


  2. Place the mouse cursor in the Entry field, and single click the middle mouse button.
Step 3.  Click 'Graph X' icon to plot the result


From :

Synopsys, Inc.
CosmosScope™ Tools Reference > Using the Waveform Calculator

2012年11月26日 星期一

[Analog] TI Experiment Kits Manual

If you are new to analog circuits design, this manual may helps you a lot.
The Document is prepared by TI which act as a part of educations.
Different Circuit Tech and Structures are included.

http://www.mikroe.com/downloads/get/1741/analog_system_lab_pro_manual.pdf

2012年11月21日 星期三

[Hspice] Import Hspice simulation result into Matlab

In order to import thoseHspice simulation result into Matlab, HspiceToolbox can be used. details can be found from the links below:

http://www.edaboard.com/thread115394.html


n short, enter command "addpath ('C:\Users\Davison Mui\Documents\MATLAB\HspiceToolbox')" to include the Toolbox.

Second, enter command " x = loadsig('C:\Hspice\Circuit\Study\Charge pump\Simple Charge pump\simple charge pump.tr0')" to import the data.

That's all~~

Sample Matlab Code:

clear all
close all
clc;

addpath ('C:\Users\Davison Mui\Documents\MATLAB\HspiceToolbox')
x = loadsig('C:\Hspice\Circuit\Study\Charge pump\Simple Charge pump\simple charge pump.tr0')
% plot(x(10,1).data,'DisplayName','x(10,1).data','YDataSource','x(10,1).data');figure(gcf)
lssig(x)
figure;
plotsig(x, 'i_mp4');
hold on;

% % combin the value to a sum of vector
% http://www.mathworks.com/help/matlab/ref/timeseries.resample.html
i_mp4 = timeseries(evalsig(x, 'i_mp4'),evalsig(x, 'TIME'),'Name','sec');
i_mp4.time
i_mp4.data
i_mp4.getinterpmethod

% res_mp4=resample(i_mp4,[1:1e-6:max(evalsig(x, 'TIME'))]);
res_mp4=resample(i_mp4,[0:1e-9:max(evalsig(x, 'TIME'))]);
% figure;
plot(res_mp4, 'green');

2012年11月17日 星期六

[Cadence] Virtuoso/ICFB 615 Simultaion and working with Assura

Previously we have transported the UMC 65nm Design Kit from ICFB 514 to ICFB 615 and performed simulations successfully. The writer continued to explore different usage of Virtuoso.

A. Simulation with ADE GXL other than using Traditional ADE L
Traditional ADE L environment provide basic simulation function and parametric sweeping analysis.
While consider a pile of simulations as a single job, ADE GXL provide job managing to archive parallel simulation and systematic performance simulation including Monte Carl and Yield Analysis.
In simple wordings, it can simulate 8 parametric settings at the same time instead of doing them 1 by 1 to provide 8 times performance improvement.

However, this process involves VNC and Cadence provided VNC may crash and keep pending the jobs.

Solution:
Make sure you have your Xvnc and vncserver installed on your workstation.

1. Switch to the IC615 tools bin folder
$ cd $CDSHOME/tools/bin

2. Backup cdsXvnc and cdsXvncd
$ mv cdsXvnc cdsXvnc.bak
$ mv cdsXvncd cdsXvncd.bak

3. Make a symbolic link to Xvnc and vncserver
$ ln -s /usr/bin/Xvnc cdsXvnc
$ ln -s /usr/bin/vncserver cdsXvncd

Enjoy your ADE GXL with advanced simulation process

TO BE CONTINUED...

2012年10月23日 星期二

[Xwin32] Using Xming to replace Xwin32

Xming is a freeware to replace Xwin32. However, there is a fonts problem. To solve it, please follow the flash video. The password is "CUHK"

Upload 唔到file, 需要就直接問我攞

[Cadence] 令Cadence認出以下files是librart

This is the solution by Marco. But I forgot already= =

It should be related to creat an empty file with a special file name to let Cadence understood that is Library.

I would modify it after asking Marco again

ANSWER:

file name is ".tech"

[Linux] 在linux下用上RAR防止在Window出現中文亂碼

请到http://www.rarlab.com/download.htm下载RAR 4.xx for Linux,

操作:

解压缩,运行终端,进入解压缩的目录命令行运行:sudo make install

建立软链接:sudo ln -s /usr/local/bin/rar /usr/bin

完成

使用方法:
rar a name.rar /location

Detail:
install: http://forum.ubuntu.org.cn/viewtopic.php?t=388114&p=2852436
rar manual: http://blog.csdn.net/guoguo1980/article/details/2310258

2012年10月3日 星期三

[Cadence] ICFB 5 -> 615

As ICFB 5 and ICFB 6 use different Library Format (From CDBA to OA), you may use the command cdb2oa to translate the Library.

SOLUTION

1. Copy the old library into a temp directory in new library with it's cds.lib
Make sure you maintain a good path in cds.lib

/newCDS/cds.lib -> Don't Touch! The tool will handle it.

/oldCDS/myIC/ -> /newCDS/tmp/myIC/
/oldCDS/cds.lib -> /newCDS/tmp/cds.lib

2. Run the command in the director of new lib
/newCDS/ > cdb2oa -lib myIC -cdslibpath tmp/

or you can run this directly in the new library (but I tend to make a copy and make it save.)

/newCDS/ > cdb2oa -lib myIC -cdslibpath /oldCDS/

Successful Analog Simulation Run of UMC 65nm Process with ICFB514 Kit in ICFB615

2012年8月22日 星期三

[Linux] 當進入linux OS recovery mode請注意

Under recovery mode時, 有某些電腦只會allow PS/2 keyboard operate. USB keyboard會沒有反應.

2012年7月3日 星期二

[Linux] Kernel Module with no symbol version

Situation:
Compiling Kernel Module with hierarchy / cross module dependency (say there are EXPORT_SYMBOL in the kernel)
when you insert the child-module, it may cause you following error:
.... Unknown Symbol

You may call the following for further information
$ dmesg
...

[19729.170980] xrawdata0: no symbol version for DmaRegister
[19729.170984] xrawdata0: Unknown symbol DmaRegister

This may occur for all kernel module with kernel version >= 2.6.26

Solution:
1. Divide the Makefile according to the Hierarchy.
2. Make the Base first and let it generate the "Module.symvers".
3. Copy the "Module.symvers" to the directory of the child modules
4.Continue your Compilation and keep renewl the Module.Symvers.

OR
You can make a link of "Module.Symvers" to your kernel source Directory at all your modules source directory to keep your Module.Sysmvers being updated.

Make sure you have run "make vmlinux" before any kernel module compilation. 

[Xilinx] ISE & Impact

Simply, DONT USE UBUNTU over 10.10 if you want your impact function well.

2012年7月1日 星期日

[Linux] Xilinx Cable Driver Can't be Compiled


Situation:

When you compile Xilinx Cable Drier with Linux Kernel >= 2.6.36
(when you run: $Xilinx/14.1/ISE_DS/common/bin/lin/install_script/install_drivers/install_drivers)

This may cause the following problem:

/vlsi/Xilinx/14.1/ISE_DS/common/bin/lin/install_script/install_drivers/linux_drivers/xpc4drvr2_6/xpc4drvr/xpc4.c:241:2: error: unknown field ‘ioctl’ specified in initializer

Solution:

Open:
$Xilinx/14.1/ISE_DS/common/bin/lin/install_script/install_drivers/linux_drivers/xpc4drvr2_6/xpc4drvr/xpc4.c

Add @ top:
#include <linux/slab.h>

@Line 163:
- int xpc4_ioctl (struct inode *inode, struct file *filp,
+ int xpc4_ioctl (struct file *filp,

@Line 240:
- .ioctl = xpc4_ioctl,
+ .unlocked_ioctl = xpc4_ioctl,



========

This may be useful while you try to install Xilinx Cable Driver.
The Kernel Module Driver is not compile-able after 2.6.36

Hacking Material

http://lwn.net/Articles/119652/
http://hi.baidu.com/kkernel/item/ea0ae8f4abb46929743c4c96

2012年6月24日 星期日

Reset linux Root Password

My boot loader is GRUB (see LILO boot loader below)

)Following is the procedure to reset root password if you are using GRUB as a boot loader:
  1. Select the kernel
  2. Press the e key to edit the entry
  3. Select second line (the line starting with the word kernel)
  4. Press the e key to edit kernel entry so that you can append single user mode
  5. Append the word Single (or letter S) to the end of the (kernel) line *need space bar to separate the word single with original command*
  6. Press ENTER key
  7. Now press the b key to boot the Linux kernel into single user mode
  8. type "passwd" command to reset password:

My boot loader is LILO

At LILO boot loader type linux single and press [ENTER] key:
Boot: linux single
When you get the # prompt you will need to type passwd root to reset password:
# passwd
Reboot system:
# sync
# reboot



Reference: http://www.cyberciti.biz/faq/linux-reset-forgotten-root-password/

2012年6月19日 星期二

[Cadence] ICFB Installation Script Template

http://gvitalie.blogspot.hk/2009/10/setting-cadence-environment-variables.html
https://intranet.ece.cornell.edu/computing/kb_articles/kba_detail.cfm?article_id=53

Cadence內Virtuso的Hotkey list




[Cadence] "cds_alias" can't be resolved

Issues:
While using AMS with verilog, it may involve component "basic:cds_alias".
You may not find "basic" library during Simulation and cause error like:
"... cds_alias ... can't be resolved..." or " ... basic ... illegal"

Solution:
First of all, make a soft link to "basic" library in your icfb directory


ln -s /vlsi/cadence/IC5141USR5/tools/dfII/etc/cdslib/basic .

lrwxrwxrwx  1 khwong khwong   52 2012-06-18 15:16 basic -> /vlsi/cadence/IC5141USR5/tools/dfII/etc/cdslib/basic

and modify your cds.lib as follow:

#   DEFINE basic $CDS_INST_DIR/tools/dfII/etc/cdslib/basic
define basic /your_icfb_dir/basic #soft link to "basic"

[UMC130] AMS Simulation Error with umc130mmrf after Extraction

Issue:
After Layout and RCX with "UMC 130nm MMRF", they will use the cell: "pcapacitor" & "presistor" to represent parasitic components.
By default, they will be represented by "umc13mmrf:presistor" & "sample:pcapacitor"
(As CDS sample library also got "pcapacitor)

They are alright with Spectre Simulation (Pure Analog)
Unfortunately, these components don't have AMS (Mixed-Signal) Simulation Source and report:
... presistor ... can't be resolved


Solution:

Use default resistors and capacitor model provided by "analogLib". This can be done according to the setting below:
Corrected Setting
Make sure you don't have components called "res/cap" in other library. (Although I don't suppose someone will do so.)

[Cadence] Library error on 64-bit System

Cadence Tools default you are using 32-bit system.
They can't allocate 64-bit library and cause creepy Errors.
Usually they Generate Error with

" ELF64 " or " * ELF *"

You can force Cadence to Use 64-Bit Library object by adding follow to
~/.cshrc or ~/.bashrc

csh: setenv CDS_AUTO_64BIT ALL
bash: export CDS_AUTO_64BIT=ALL