make lookup of logic attributes faster in symbol examples
This commit is contained in:
parent
880286bdb9
commit
921885d654
|
|
@ -861,8 +861,8 @@ void propagate_hilights(int set, int clear, int mode)
|
|||
#define LOGIC_X -1
|
||||
#define LOGIC_0 -12
|
||||
#define LOGIC_1 -5
|
||||
#define STACKMAX 200
|
||||
|
||||
#define STACKMAX 100
|
||||
int get_logic_value(int inst, int n)
|
||||
{
|
||||
int /* mult, */ val;
|
||||
|
|
@ -954,6 +954,7 @@ int eval_logic_expr(int inst, int output)
|
|||
}
|
||||
} else if(isdigit(arg[0])) {
|
||||
if(sp < STACKMAX) stack[sp++] = get_logic_value(inst, atoi(arg));
|
||||
else dbg(0, "eval_logic_expr(): stack overflow!\n");
|
||||
}
|
||||
}
|
||||
my_free(827, &saveptr);
|
||||
|
|
@ -967,7 +968,7 @@ void propagate_logic()
|
|||
int found /* , mult */;
|
||||
xSymbol *symbol;
|
||||
xRect *rct;
|
||||
int i, j, npin, nloops=0;
|
||||
int i, j, npin;
|
||||
char *propagate_str = NULL;
|
||||
int propagate;
|
||||
struct hilight_hashentry *entry;
|
||||
|
|
|
|||
|
|
@ -1,12 +1,13 @@
|
|||
v {xschem version=2.9.9 file_version=1.2 }
|
||||
G {}
|
||||
K {type=primitive
|
||||
function2="0 1 &"
|
||||
format="@name @@A @@B @VGND @VNB @VPB @VPWR @@X @prefix\\\\and2_1"
|
||||
template="name=x1 VGND=VGND VNB=VNB VPB=VPB VPWR=VPWR prefix=sky130_fd_sc_hd__ "
|
||||
extra="VGND VNB VPB VPWR prefix"
|
||||
highlight=true
|
||||
|
||||
function2="0 1 &"}
|
||||
}
|
||||
V {}
|
||||
S {}
|
||||
E {}
|
||||
|
|
|
|||
|
|
@ -1,11 +1,12 @@
|
|||
v {xschem version=2.9.9 file_version=1.2 }
|
||||
G {}
|
||||
K {type=primitive
|
||||
function3="0 1 2 & &"
|
||||
format="@name @@A @@B @@C @VGND @VNB @VPB @VPWR @@X @prefix\\\\and3_1"
|
||||
template="name=x1 VGND=VGND VNB=VNB VPB=VPB VPWR=VPWR prefix=sky130_fd_sc_hd__ "
|
||||
extra="VGND VNB VPB VPWR prefix"
|
||||
highlight=true
|
||||
function3="0 1 2 & &"}
|
||||
}
|
||||
V {}
|
||||
S {}
|
||||
E {}
|
||||
|
|
|
|||
|
|
@ -1,11 +1,12 @@
|
|||
v {xschem version=2.9.9 file_version=1.2 }
|
||||
G {}
|
||||
K {type=primitive
|
||||
function4="0 1 2 3 & & &"
|
||||
format="@name @@A @@B @@C @@D @VGND @VNB @VPB @VPWR @@X @prefix\\\\and4_1"
|
||||
template="name=x1 VGND=VGND VNB=VNB VPB=VPB VPWR=VPWR prefix=sky130_fd_sc_hd__ "
|
||||
extra="VGND VNB VPB VPWR prefix"
|
||||
highlight=true
|
||||
function4="0 1 2 3 & & &"
|
||||
|
||||
}
|
||||
V {}
|
||||
S {}
|
||||
|
|
|
|||
|
|
@ -1,11 +1,12 @@
|
|||
v {xschem version=2.9.9 file_version=1.2 }
|
||||
G {}
|
||||
K {type=stdcell
|
||||
function3="1 0 2 & & 0 ~ 2 3 & & |"
|
||||
format="@name @@CLK @@D @@RESET_B @VGND @VNB @VPB @VPWR @@Q @prefix\\\\dfrtp_1"
|
||||
template="name=x1 VGND=VGND VNB=VNB VPB=VPB VPWR=VPWR prefix=sky130_fd_sc_hd__ "
|
||||
extra="VGND VNB VPB VPWR prefix"
|
||||
highlight=true
|
||||
function3="1 0 2 & & 0 ~ 2 3 & & |"}
|
||||
}
|
||||
V {}
|
||||
S {}
|
||||
E {}
|
||||
|
|
|
|||
|
|
@ -1,12 +1,14 @@
|
|||
v {xschem version=2.9.9 file_version=1.2 }
|
||||
G {}
|
||||
K {type=primitive
|
||||
function3="0 1 ^ 2 & 0 1 & |"
|
||||
function4="0 1 2 ^ ^"
|
||||
format="@name @@A @@B @@CIN @VGND @VNB @VPB @VPWR @@COUT @@SUM @prefix\\\\fa_1"
|
||||
template="name=x1 VGND=VGND VNB=VNB VPB=VPB VPWR=VPWR prefix=sky130_fd_sc_hd__ "
|
||||
extra="VGND VNB VPB VPWR prefix"
|
||||
highlight=true
|
||||
function4="0 1 2 ^ ^"
|
||||
function3="0 1 ^ 2 & 0 1 & |"
|
||||
|
||||
|
||||
|
||||
}
|
||||
V {}
|
||||
|
|
|
|||
|
|
@ -1,12 +1,13 @@
|
|||
v {xschem version=2.9.9 file_version=1.2 }
|
||||
G {}
|
||||
K {type=primitive
|
||||
function1="0 ~"
|
||||
format="@name @@A @VGND @VNB @VPB @VPWR @@Y @prefix\\\\inv_1"
|
||||
template="name=x1 VGND=VGND VNB=VNB VPB=VPB VPWR=VPWR prefix=sky130_fd_sc_hd__ "
|
||||
extra="VGND VNB VPB VPWR prefix"
|
||||
highlight=true
|
||||
|
||||
function1="0 ~"}
|
||||
}
|
||||
V {}
|
||||
S {}
|
||||
E {}
|
||||
|
|
|
|||
|
|
@ -1,11 +1,12 @@
|
|||
v {xschem version=2.9.9 file_version=1.2 }
|
||||
G {}
|
||||
K {type=primitive
|
||||
function4="0 1 2 3 & & & ~"
|
||||
format="@name @@A @@B @@C @@D @VGND @VNB @VPB @VPWR @@Y @prefix\\\\nand4_1"
|
||||
template="name=x1 VGND=VGND VNB=VNB VPB=VPB VPWR=VPWR prefix=sky130_fd_sc_hd__ "
|
||||
extra="VGND VNB VPB VPWR prefix"
|
||||
highlight=true
|
||||
function4="0 1 2 3 & & & ~"}
|
||||
}
|
||||
V {}
|
||||
S {}
|
||||
E {}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,39 @@
|
|||
v {xschem version=2.9.9 file_version=1.2 }
|
||||
G {}
|
||||
K {type=primitive
|
||||
function3="0 1 | 2 & ~"
|
||||
format="@name @@A1 @@A2 @@B1 @VGND @VNB @VPB @VPWR @@Y @prefix\\\\o21ai_1"
|
||||
template="name=x1 VGND=VGND VNB=VNB VPB=VPB VPWR=VPWR prefix=sky130_fd_sc_hd__ "
|
||||
extra="VGND VNB VPB VPWR prefix"
|
||||
highlight=true
|
||||
}
|
||||
V {}
|
||||
S {}
|
||||
E {}
|
||||
L 4 -80 -40 -52.5 -40 {}
|
||||
L 4 -80 0 -52.5 0 {}
|
||||
L 4 -57.5 -50 -50 -50 {}
|
||||
L 4 -57.5 10 -50 10 {}
|
||||
L 4 10 -30 27.5 -30 {}
|
||||
L 4 10 -30 10 30 {}
|
||||
L 4 10 30 27.5 30 {}
|
||||
L 4 -5 -20 10 -20 {}
|
||||
L 4 -17.5 20 10 20 {}
|
||||
L 4 -17.5 20 -17.5 40 {}
|
||||
L 4 -80 40 -17.5 40 {}
|
||||
L 4 67.5 0 80 0 {}
|
||||
B 5 -82.5 -42.5 -77.5 -37.5 {name=A1 dir=in propagate_to=3 }
|
||||
B 5 -82.5 -2.5 -77.5 2.5 {name=A2 dir=in propagate_to=3 }
|
||||
B 5 -82.5 37.5 -77.5 42.5 {name=B1 dir=in propagate_to=3 }
|
||||
B 5 77.5 -2.5 82.5 2.5 {name=Y dir=out }
|
||||
A 4 -105 -20 56.18051263561058 327.7243556854224 64.55128862915524 {}
|
||||
A 4 27.5 0 30 270 180 {}
|
||||
A 4 -54.64285714285714 5.714285714285722 55.90740340153566 27.38350663876661 57.85285167050722 {}
|
||||
A 4 -54.64285714285714 -45.71428571428572 55.90740340153566 274.7636416907262 57.85285167050722 {}
|
||||
A 4 62.5 0 5 0 360 {}
|
||||
T {A1} -75 -54 0 0 0.2 0.2 {}
|
||||
T {A2} -75 -14 0 0 0.2 0.2 {}
|
||||
T {B1} -75 26 0 0 0.2 0.2 {}
|
||||
T {Y} 75 -14 0 1 0.2 0.2 {}
|
||||
T {@name} 15 -5 0 0 0.2 0.2 {}
|
||||
T {@symname} -11.25 -55 0 0 0.2 0.2 {}
|
||||
|
|
@ -1,11 +1,12 @@
|
|||
v {xschem version=2.9.9 file_version=1.2 }
|
||||
G {}
|
||||
K {type=primitive
|
||||
function4="0 1 2 3 | | |"
|
||||
format="@name @@A @@B @@C @@D @VGND @VNB @VPB @VPWR @@X @prefix\\\\or4_1"
|
||||
template="name=x1 VGND=VGND VNB=VNB VPB=VPB VPWR=VPWR prefix=sky130_fd_sc_hd__ "
|
||||
extra="VGND VNB VPB VPWR prefix"
|
||||
highlight=true
|
||||
function4="0 1 2 3 | | |"
|
||||
|
||||
}
|
||||
V {}
|
||||
S {}
|
||||
|
|
|
|||
|
|
@ -341,7 +341,7 @@ tclcommand=" set count 0
|
|||
"
|
||||
}
|
||||
C {inv_2.sym} 2620 -1960 0 0 {name=x1 VGND=VGND VNB=VNB VPB=VPB VPWR=VPWR prefix=sky130_fd_sc_hd__ }
|
||||
C {giant_label.sym} 2040 -1430 0 1 {name=l1 sig_type=std_logic lab=CLK text=CLK}
|
||||
C {giant_label.sym} 1910 -1430 0 1 {name=l1 sig_type=std_logic lab=CLK text=CLK}
|
||||
C {giant_label.sym} 2660 -1960 0 1 {name=l3 sig_type=std_logic lab=R text="RESET
|
||||
COUNTER"}
|
||||
C {giant_label.sym} 1900 -1180 0 1 {name=l4 sig_type=std_logic lab=CLEAR_ text="CLEAR (active low)"}
|
||||
|
|
|
|||
Loading…
Reference in New Issue