use the following sample .simrc (placed in project directory) for netlist net name remapping:
vlogifVicSVTextCellViewList = (list "systemVerilogText" "text.v" "VerilogAMSText")
hnlVerilogNetlistBehavioralExplicit = 't
simVerilogNetlistExplicit = 't
;envSetVal("asimenv" "mappingMode" 'string "nmp") ;default
envSetVal("asimenv" "mappingMode" 'string "oss")
hnlSpectreMapNetInName='("." "\.")
hnlSpectreMapNetInName='((">" "\\>") ("<" "\\<") )
Sunday, April 15, 2018
Sunday, April 1, 2018
clone HDD - Compressed File Method
(This is copied from https://superuser.com/questions/1097210/clone-only-space-in-use-from-hard-disk)
Compressed file method
To generate the image:
## dd probably needs sudo here.
dd if=/dev/sdb bs=32M | gzip -c > /foo/bar/my_image.dd.gz
To write the image back:
## dd probably needs sudo here.
gzip -cd < /foo/bar/my_image.dd.gz | dd of=/dev/sdb bs=32M
These commands might be built without dd, with gzip only. I used dd to ensure 32 MiB buffer.
Advantages:
The resulting file is non-sparse, it needs no special treatment.
The image size will be reduced even more if the files on your source disk are prone to compression.
Disadvantages:
It is hard to access the files within the compressed image without full decompression (some FUSE may be useful, although I'm not sure, never tried; consider a squashfs approach).
-----------------------
The easiest way, if you use Windows, is to use Paragon Backup & Recovery Free.
1. Backup your original SD card to VM (virtual disk).
2. Restore it to another card, could be a smaller one. The application will ask if the partitions should be shrinked proportionally.
Compressed file method
To generate the image:
## dd probably needs sudo here.
dd if=/dev/sdb bs=32M | gzip -c > /foo/bar/my_image.dd.gz
To write the image back:
## dd probably needs sudo here.
gzip -cd < /foo/bar/my_image.dd.gz | dd of=/dev/sdb bs=32M
These commands might be built without dd, with gzip only. I used dd to ensure 32 MiB buffer.
Advantages:
The resulting file is non-sparse, it needs no special treatment.
The image size will be reduced even more if the files on your source disk are prone to compression.
Disadvantages:
It is hard to access the files within the compressed image without full decompression (some FUSE may be useful, although I'm not sure, never tried; consider a squashfs approach).
-----------------------
The easiest way, if you use Windows, is to use Paragon Backup & Recovery Free.
1. Backup your original SD card to VM (virtual disk).
2. Restore it to another card, could be a smaller one. The application will ask if the partitions should be shrinked proportionally.
Thursday, February 1, 2018
Cadence Schematic/Layout Probe Nets
Ø
Probe nets in both schematic and layout: From
schematic window ->Create->Probe -> Add Net (9)
Ø
Save the probed nets in a file: From schematic
window ->Create->Probe ->Save
Ø
To recover the probed nets in schematic: From
schematic window ->Create->Probe ->Load
Ø
To load the probed nets in layout: Select
the layout window and type command below in CIW:
geLoadProbe(getCurrentWindow()
infile("./probe.out"))
Ø
To delete all the
probes in schematic window: Create->Probe->Remove All
Ø
To delete all the probes in layout window:
geDeleteAllProbe(getCurrentWindow())
Thursday, August 10, 2017
How to Run Cadence QRC with Parasitic Cell Blocking
If you are using the parasitic cell blocking use mode, ie,
using the extraction_setup -parasitic_blocking_device_cells_file “hcell_qci”
CCL in QRC, please simultaneously make sure that the hierarchy of the cfmom
device is preserved during LVS stage. So, if using PVS LVS flow, you need to
ensure to run LVS with layout_cell_list and preserve_cell_list. For eg:
layout_cell_list hcell_qci “cfmom*” “cmom*” ind*”
preserve_cell_list hcell_qci
Sunday, July 16, 2017
Determine USB Port in Ubuntu
Method 1:
ls /dev > notplugged
# plug in device
ls /dev > plugged
diff notplugged plugged
Method 2:
Run dmesg | grep tty after plugging in your device. The device file should be apparent in one of the lines.
ls /dev > notplugged
# plug in device
ls /dev > plugged
diff notplugged plugged
Method 2:
Run dmesg | grep tty after plugging in your device. The device file should be apparent in one of the lines.
Wednesday, March 1, 2017
Use this option if the there are floating pins in the schematic that gets dropped in the Extraction
simCheckTermMismatchAction =
"ignore"
Wednesday, November 23, 2016
Monday, July 4, 2016
Install TA-LIB for Python in Ubuntu
Step 1. Install pip:
a. sudo apt-get update
a. sudo apt-get update
b. curl "https://bootstrap.pypa.io/get-pip.py" -o "get-pip.py"
c. sudo python get-pip.py
d. rehash
Step 2. Install talib for linux:
a. Download ta-lib-0.4.0-src.tar.gz
b. untar and cd to the untared directory
c. ./configure --prefix=/usr
d. make
e. sudo make install
Step 3. install necessary python modules:
a. sudo apt-get install python-dev libxml2-dev libxslt-dev
Step 4. Install TA_LIB Python Wrapper:
a. sudo pip install TA-Lib
Monday, May 23, 2016
Spectre Save Statement
save I1.I2.I3 //--- save all I3 I/O currents
save I1.I2.I3.* // --- save all hierarchical voltages inside I3
two ways to use the save statement, suppose the two lines above are in a file save.scs:
1. use include in input.scs
include "/try/save.scs"
2. in ocean:
definitionFile(
"/doc/ocean/sim/save.scs"
)
save I1.I2.I3.* // --- save all hierarchical voltages inside I3
two ways to use the save statement, suppose the two lines above are in a file save.scs:
1. use include in input.scs
include "/try/save.scs"
2. in ocean:
definitionFile(
"/doc/ocean/sim/save.scs"
)
Wednesday, May 18, 2016
VerilogIn creates a schematic which has shorted nets
Problem:
When importing a verilog netlist in Virtuoso to create schematic using File->Import->Verilog. The netlist seems to import successfully, however in schematic, the power nets are shorted
Solution:
On the Verilog In form, in the "Schematic Generation Options" tab enable the option "Minimize Crossovers". This will relax some of the placement constraints that verilogIn uses to create a schematic. This will give you the correct schematic.
Thursday, May 12, 2016
Cadence doesn't show Cell Name in Symbol
Problem: New Cadence version doesn't create cell name by any reason as shown below(2nd symbol)
Solution:
Monday, May 9, 2016
Plotting temperature when it is changed as a dynamic transient parameter
The simulation temperature is changed during a transient analysis, by making
it a
dynamic parameter.
For example:
tran tran stop=20n errpreset=conservative
write="spectre.ic" \
writefinal="spectre.fc" annotate=status maxiters=5 \
param=temp param_vec=[0 120 1u
170] param_step=1m
This will change
the simulation temperature from 120 degrees at time=0, to 170
degrees at
time=1us.
How can the
temperature be plotted as a function of time?
|
Add this line to a file which is included in the netlist:
save temp
When using ADE,
type "save temp" in a new file with .scs extension such as
"include.scs". Then add the file in Setup - Model Libraries. The
"temp" variable
will then be available for plotting in the Results
Browser.
|
Wednesday, March 30, 2016
Cadence Automatically Adds Quotation to String Variables in Verilog-A
Problem:
In Cadence Virtuoso 6.1.6-64b, verilog-A instance with string parameters will be quoted in the netlist, this prevents the verilog-A parameters from being treated as variables.
Fig.1 Schematic
Fig.2 Netlist
I97 shows all string parameters are quoted, where I98 is preferred.
Solution:
Change
the Base Cell CDF of the Verilog-A cell as shown in Fig.3. Only change those to be used as variables.
Fig. 3 Change CDF Base
After the change of CDF, the parameters can now be used as variables.
Fig.4
Monday, February 15, 2016
Which one is faster, eSATA, USB or SD?
I am always curious on the speed map of the same media using different interfaces. Finally I did a test with the results shown. Surprisingly, HDD shows better overall speed, even when used as USB2 device, and SD doesn't show better speed over USB.
Tuesday, January 19, 2016
Monday, November 17, 2014
SSH With GUI
open a GUI application over ssh by simply using the -X flag:
ssh -X user@server
It's also typically a good idea to use compression on the ssh as well when you allow X11 forwarding. Makes it play nicer with your internet:
ssh -X -C user@server
command used to log in into my Raspberry pi:
ssh -X -C -l pi 192.168.0.124
ssh -X user@server
It's also typically a good idea to use compression on the ssh as well when you allow X11 forwarding. Makes it play nicer with your internet:
ssh -X -C user@server
command used to log in into my Raspberry pi:
ssh -X -C -l pi 192.168.0.124
Monday, October 27, 2014
Install PyUSB 1.0.0
Use the following steps:
sudo apt-get update
sudo apt-get install python-pip
sudo pip install pyusb==1.0.0b1
sudo apt-get update
sudo apt-get install python-pip
sudo pip install pyusb==1.0.0b1
Thursday, October 2, 2014
How to set a Static IP in Ubuntu
(from:http://www.sudo-juice.com/how-to-set-a-static-ip-in-ubuntu-the-proper-way/)
Setting a static IP in Ubuntu is useful for a lot of things. You may want to forward ports from your router to serve web pages, use SSH from outside your local network or set up some sort of media server.
For whatever reason, Ubuntu is trying to make our lives easier by introducing graphical tools to be used by default but kind of making our terminal life a bit harder!
The quick answer to setting up a static IP in Ubuntu the proper way is:
auto eth0
Setting a static IP in Ubuntu is useful for a lot of things. You may want to forward ports from your router to serve web pages, use SSH from outside your local network or set up some sort of media server.
For whatever reason, Ubuntu is trying to make our lives easier by introducing graphical tools to be used by default but kind of making our terminal life a bit harder!
The quick answer to setting up a static IP in Ubuntu the proper way is:
- Disable the graphical management of your network connection in /etc/NetworkManager/NetworkManager.conf
- Gather the information for the static IP (interface, IP to be used, default gateway, subnet, DNS)
- Modify /etc/network/interfaces to include the information above.
- Restart networking and network-manager services
gksudo gedit /etc/NetworkManager/NetworkManager.conf
So our NetworkManager.conf now looks like this….
[main]
plugins=ifupdown,keyfile
#dns=dnsmasq
[ifupdown]
managed=true
gksudo gedit /etc/network/interfaces
/etc/network/interfaces file now looks like this:
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
address 192.168.0.101
gateway 192.168.0.1
netmask 255.255.255.0
dns-nameservers 8.8.8.8 8.8.4.4
Restart your networking services
sudo service network-manager restart
sudo service networking restart
sudo service resolvconf restart
Sunday, September 21, 2014
How to use an External Text Editor from Cadence IC6.1.6ISR7 onward
Problem
Cadence unable to generate netlist from schematic which contains verilog/systemverilog/verilogAMS.Solution
add the following in the .simrc under the project directory:
How to Reset MFC-7345N Toner End of Life Message
Provided there is enough toner in a transferred cartridge that does not activate the low toner sensor, then you can clear the end of life message as follows manually.
1. open front cover where toner inserts
2. press the "clear/back" button. It may display "replace drum?". Do not respond to this.
3. press *00. A message "accepted" will be displayed
The toner warning should then be cleared.
1. open front cover where toner inserts
2. press the "clear/back" button. It may display "replace drum?". Do not respond to this.
3. press *00. A message "accepted" will be displayed
The toner warning should then be cleared.
Subscribe to:
Posts (Atom)






