Skip to content

Commit

Permalink
Fix the simple_por to (logically) isolate the 1.8V and 3.3V grounds. (#…
Browse files Browse the repository at this point in the history
…90)

* Fix the simple_por to (logically) isolate the 1.8V and 3.3V grounds.
This commit does the following:
(1) Corrects the xschem simple_por schematic to separate the 1.8V and 3.3V grounds.
(2) Corrects the xschem simple_por symbol to separate the 1.8V and 3.3V grounds.
(3) Corrects the xschem testbench to connect to both grounds of simple_por.
(4) Corrects the simple_por layout to remove the 1.8V logic from the
    3.3V ground and connect it instead to the 1.8V ground.
(5) Extends the top-level power routing of caravel and caravan to
    make a better connection to the simple_por 1.8V ground.
(6) Adds an LVS script to properly check the simple_por layout against the
    xschem-generated schematic netlist.

NOTE: None of these modifications change the function of any circuit.  The
1.8V and 3.3V ground nets are only logically separated in the netlists but
share the substrate.  This fix cleanly defines the 1.8V and 3.3V grounds
within the simple_por, where they were previously mingled.  It also ensures
that the full LVS for caravel and caravan can now include the simple_por at
the transistor level and still pass.

* Updated the GDS of simple_por (previously did not remove GDS_FILE
from the .mag file and so it just overwrote the original GDS file
with itself).

* Corrected a route to simple_por in the top level of both caravel
and caravan that was shorting to the extra metals put on top of
the substrate contact across the top (bottom, in the top level)
of the simple_por layout.
  • Loading branch information
RTimothyEdwards authored May 9, 2022
1 parent a2ccbd9 commit d882f42
Show file tree
Hide file tree
Showing 12 changed files with 536 additions and 598 deletions.
Binary file modified gds/simple_por.gds.gz
Binary file not shown.
78 changes: 40 additions & 38 deletions mag/caravan.mag
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
magic
tech sky130A
magscale 1 2
timestamp 1650895425
timestamp 1651019166
<< viali >>
rect 658360 47209 658394 47243
<< metal1 >>
Expand Down Expand Up @@ -18486,11 +18486,11 @@ rect 575658 43120 575664 43132
rect 575716 43120 575722 43172
rect 223574 43052 223580 43104
rect 223632 43092 223638 43104
rect 661034 43092 661040 43104
rect 223632 43064 661040 43092
rect 661454 43092 661460 43104
rect 223632 43064 661460 43092
rect 223632 43052 223638 43064
rect 661034 43052 661040 43064
rect 661092 43052 661098 43104
rect 661454 43052 661460 43064
rect 661512 43052 661518 43104
rect 475470 42616 475476 42628
rect 474490 42588 475476 42616
rect 475470 42576 475476 42588
Expand Down Expand Up @@ -23772,7 +23772,7 @@ rect 365168 44072 365220 44124
rect 390192 43120 390244 43172
rect 575664 43120 575716 43172
rect 223580 43052 223632 43104
rect 661040 43052 661092 43104
rect 661460 43052 661512 43104
rect 475476 42576 475528 42628
rect 513288 41964 513340 42016
rect 518532 41964 518584 42016
Expand Down Expand Up @@ -44442,11 +44442,13 @@ rect 661040 47388 661092 47394
rect 661040 47330 661092 47336
rect 650000 46980 650052 46986
rect 650000 46922 650052 46928
rect 661052 46912 661080 47330
rect 661052 46884 661500 46912
rect 610348 45824 610400 45830
rect 610348 45766 610400 45772
rect 661052 43110 661080 47330
rect 661040 43104 661092 43110
rect 661040 43046 661092 43052
rect 661472 43110 661500 46884
rect 661460 43104 661512 43110
rect 661460 43046 661512 43052
rect 610256 41404 610308 41410
rect 610256 41346 610308 41352
rect 575756 41336 575808 41342
Expand Down Expand Up @@ -58907,7 +58909,7 @@ timestamp 1637698689
transform 1 0 -53810 0 1 -20
box 367960 10204 399802 14768
use caravan_power_routing caravan_power_routing_0
timestamp 1638483672
timestamp 1650915033
transform 1 0 0 0 1 0
box 0 0 717600 1037600
use caravan_signal_routing caravan_signal_routing_0
Expand All @@ -58923,111 +58925,111 @@ timestamp 1649951985
transform 1 0 149318 0 1 16066
box -262 -10162 35048 2764
use gpio_control_block gpio_control_bidir_1\[0\]
timestamp 1650313688
timestamp 1650900217
transform -1 0 710203 0 1 121000
box 882 416 34000 13000
use gpio_control_block gpio_control_bidir_1\[1\]
timestamp 1650313688
timestamp 1650900217
transform -1 0 710203 0 1 166200
box 882 416 34000 13000
use gpio_control_block gpio_control_bidir_2\[0\]
timestamp 1650313688
timestamp 1650900217
transform 1 0 7631 0 1 289000
box 882 416 34000 13000
use gpio_control_block gpio_control_bidir_2\[1\]
timestamp 1650313688
timestamp 1650900217
transform 1 0 7631 0 1 245800
box 882 416 34000 13000
use gpio_control_block gpio_control_bidir_2\[2\]
timestamp 1650313688
timestamp 1650900217
transform 1 0 7631 0 1 202600
box 882 416 34000 13000
use gpio_control_block gpio_control_in_1\[0\]
timestamp 1650313688
timestamp 1650900217
transform -1 0 710203 0 1 523800
box 882 416 34000 13000
use gpio_control_block gpio_control_in_1\[1\]
timestamp 1650313688
timestamp 1650900217
transform -1 0 710203 0 1 568800
box 882 416 34000 13000
use gpio_control_block gpio_control_in_1\[2\]
timestamp 1650313688
timestamp 1650900217
transform -1 0 710203 0 1 614000
box 882 416 34000 13000
use gpio_control_block gpio_control_in_1\[3\]
timestamp 1650313688
timestamp 1650900217
transform -1 0 710203 0 1 659000
box 882 416 34000 13000
use gpio_control_block gpio_control_in_1\[4\]
timestamp 1650313688
timestamp 1650900217
transform -1 0 710203 0 1 704200
box 882 416 34000 13000
use gpio_control_block gpio_control_in_1\[5\]
timestamp 1650313688
timestamp 1650900217
transform -1 0 710203 0 1 884800
box 882 416 34000 13000
use gpio_control_block gpio_control_in_1a\[0\]
timestamp 1650313688
timestamp 1650900217
transform -1 0 710203 0 1 211200
box 882 416 34000 13000
use gpio_control_block gpio_control_in_1a\[1\]
timestamp 1650313688
timestamp 1650900217
transform -1 0 710203 0 1 256400
box 882 416 34000 13000
use gpio_control_block gpio_control_in_1a\[2\]
timestamp 1650313688
timestamp 1650900217
transform -1 0 710203 0 1 301400
box 882 416 34000 13000
use gpio_control_block gpio_control_in_1a\[3\]
timestamp 1650313688
timestamp 1650900217
transform -1 0 710203 0 1 346400
box 882 416 34000 13000
use gpio_control_block gpio_control_in_1a\[4\]
timestamp 1650313688
timestamp 1650900217
transform -1 0 710203 0 1 391600
box 882 416 34000 13000
use gpio_control_block gpio_control_in_1a\[5\]
timestamp 1650313688
timestamp 1650900217
transform -1 0 710203 0 1 479800
box 882 416 34000 13000
use gpio_control_block gpio_control_in_2\[0\]
timestamp 1650313688
timestamp 1650900217
transform 1 0 7631 0 1 805400
box 882 416 34000 13000
use gpio_control_block gpio_control_in_2\[1\]
timestamp 1650313688
timestamp 1650900217
transform 1 0 7631 0 1 762200
box 882 416 34000 13000
use gpio_control_block gpio_control_in_2\[2\]
timestamp 1650313688
timestamp 1650900217
transform 1 0 7631 0 1 719000
box 882 416 34000 13000
use gpio_control_block gpio_control_in_2\[3\]
timestamp 1650313688
timestamp 1650900217
transform 1 0 7631 0 1 675800
box 882 416 34000 13000
use gpio_control_block gpio_control_in_2\[4\]
timestamp 1650313688
timestamp 1650900217
transform 1 0 7631 0 1 632600
box 882 416 34000 13000
use gpio_control_block gpio_control_in_2\[5\]
timestamp 1650313688
timestamp 1650900217
transform 1 0 7631 0 1 589400
box 882 416 34000 13000
use gpio_control_block gpio_control_in_2\[6\]
timestamp 1650313688
timestamp 1650900217
transform 1 0 7631 0 1 546200
box 882 416 34000 13000
use gpio_control_block gpio_control_in_2\[7\]
timestamp 1650313688
timestamp 1650900217
transform 1 0 7631 0 1 418600
box 882 416 34000 13000
use gpio_control_block gpio_control_in_2\[8\]
timestamp 1650313688
timestamp 1650900217
transform 1 0 7631 0 1 375400
box 882 416 34000 13000
use gpio_control_block gpio_control_in_2\[9\]
timestamp 1650313688
timestamp 1650900217
transform 1 0 7631 0 1 332200
box 882 416 34000 13000
use gpio_defaults_block_1803 gpio_defaults_block_0\[0\]
Expand Down Expand Up @@ -59163,7 +59165,7 @@ timestamp 1638875307
transform 1 0 628146 0 1 80944
box 0 0 15000 15000
use simple_por por
timestamp 1638031832
timestamp 1650914729
transform 1 0 650146 0 -1 55282
box -52 -62 11344 8684
use xres_buf rstb_level
Expand Down
Loading

0 comments on commit d882f42

Please sign in to comment.