generation of a hspice netlist!!!!

E

elhaj khawla

Guest
Hello,

I want to generate a hspice netlist.
In this netlist I use the command “.data …. .enddata”
Exp:

..data par tmp ww ll
+ 25 0.3 0.4
+ 25 0.3 0.8
..enddata
I need to use an expression in this command line??? As following:


..data ttt tmp ww ll
+ 25 0.3 ‘2*0.2’
..enddata

Can you tell me how???
Thanks a lot,
Khawla.
 
Hi Khawla,

Would you mind to make your question a bit clearer ?
What do you mean by 'generate' ? Are you having a schematic in cadence
and want to generate a netlist through ADE ?
a more detailed description of your problem and what you want to
achieve is very likely to help.
As far as I understand, you want to change the 0.4 by 2*0.2. What
about 0.6 ? changed by 2*0.3 or 3*0.2 ? What is the purpose of doing
this anyway ?

Cheers,
Riad.
 
On 7 aoűt, 13:12, Riad KACED <riad.ka...@gmail.com> wrote:
Hi Khawla,

Would you mind to make your question a bit clearer ?
What do you mean by 'generate' ? Are you having a schematic in cadence
and want to generate a netlist through ADE ?
a more detailed description of your problem and what you want to
achieve is very likely to help.
As far as I understand, you want to change the 0.4 by 2*0.2. What
about 0.6 ? changed by 2*0.3 or 3*0.2 ? What is the purpose of doing
this anyway ?

Cheers,
Riad.
well,
I want to create a netlist manually (without using cadence). that is
an example, I just want to use an expression in the command
".data ... .enddata"
..data ttt tmp ww ll
+ 25 0.3 ‘expression’
..enddata

the purpose is to sweep some parameters using some rules. (ww= ww 2*ww
3*ww).
I try to use other solutions but in the command ".dc" we can't use
more than three sweeps.

thanks a lot ;))
Khawla
 
Hi Khawla,

I'm not sure I fully understood your question but these are my
comments anyway.
You can make this with Skill although I recommend a Shell, Perl or
whatever scripting/programming language you are comfortable with.
This is my attempt using Perl, it may serve as a starting point for
what you are looking for.

############################
#!/usr/bin/perl -w

use strict;

my $max=10;
my $temp=25;
my $w=0.3;

for( my $i=1; $i<=$max; $i++ )
{
my $newW=$i*$w;
print "+ $temp $w $newW\n";
}
############################

Hope this help you evolving in your task.

Cheers,
Riad.
 

Welcome to EDABoard.com

Sponsor

Back
Top