Skip to content

Commit

Permalink
pc spacing to diffusion accessor methods
Browse files Browse the repository at this point in the history
  • Loading branch information
rmanohar committed Sep 3, 2021
1 parent 927496b commit 9ec4773
Show file tree
Hide file tree
Showing 2 changed files with 26 additions and 0 deletions.
14 changes: 14 additions & 0 deletions act/tech.h
Original file line number Diff line number Diff line change
Expand Up @@ -201,6 +201,20 @@ class PolyMat : public RoutingMat {
int getNotchOverhang (int w) { return (*notch_overhang)[w]; }
Contact *getUpC() { return viaup; }

int getViaNSpacing (int type) {
if (!via_n) {
return 1;
}
return via_n[type];
}

int getViaPSpacing (int type) {
if (!via_p) {
return 1;
}
return via_p[type];
}


protected:
RangeTable *overhang; /* poly overhang beyond diffusion */
Expand Down
12 changes: 12 additions & 0 deletions tech/techgen.cc
Original file line number Diff line number Diff line change
Expand Up @@ -643,6 +643,15 @@ void emit_drc (pp_t *pp)
}
emit_width_spacing (pp, Technology::T->diff[j][i], buf);

/* emit poly contact to diff spacing */
emit_spacing (pp, Technology::T->poly->getUpC()->getName(),
buf,
(j == 0 ?
Technology::T->poly->getViaNSpacing (i) :
Technology::T->poly->getViaPSpacing (i)));



if (diff && diffc) {
snprintf (buf2, 1024, "%s,%s", diff->getName(),
diffc->getName());
Expand Down Expand Up @@ -738,6 +747,9 @@ void emit_drc (pp_t *pp)
emit_overhang (pp, Technology::T->poly, "allpolynonfet", "allfet",
Technology::T->poly->getOverhang (0));




int pspacing = 0;
for (int i=0; i < Technology::T->num_devs; i++) {
for (int j=0; j < 2; j++) {
Expand Down

0 comments on commit 9ec4773

Please sign in to comment.