0hmX/am3352

This code suite comprises TypeScript scripts that analyze, verify, and assemble complex DDR memory interface hardware, focusing on physical routing, via and pad placement, electrical clearance, and physical constraints, often involving precise geometric calculations and consistent provenance tracking.

Version
1.0.5
License
unset
Stars
0

src/generated/ddr_top.metrics.json

PCBPCB preview for src/generated/ddr_top.metrics.json
SchematicSchematic preview for src/generated/ddr_top.metrics.json
{
  "profile": "ddr_top",
  "routeAngles": {
    "saved": {
      "valid": true,
      "segmentCount": 1261,
      "bendCount": 800,
      "maximumTurnDegrees": 45.00000000000068,
      "violations": []
    },
    "fixed": {
      "valid": true,
      "segmentCount": 314,
      "bendCount": 140,
      "maximumTurnDegrees": 45.00000000000023,
      "violations": []
    }
  },
  "bounds": {
    "minX": -15.01,
    "maxX": 8.47,
    "minY": -8.38,
    "maxY": 9.56
  },
  "widthMm": 23.48,
  "heightMm": 17.94,
  "paddingMm": {
    "left": 7.51,
    "right": 0.9700000000000006,
    "top": 2.0600000000000005,
    "bottom": 0.8800000000000008
  },
  "tightEnclosureVerified": true,
  "enclosureMarginMm": 0.1016,
  "enclosureGridMm": 0.01,
  "savedPathCount": 313,
  "fixedTraceCount": 173,
  "ddrRelatedSignalCount": 52,
  "allCopperDrc": {
    "valid": true,
    "checkedTraceCount": 486,
    "checkedSegmentCount": 1575,
    "checkedViaCount": 256,
    "issues": []
  },
  "ddrCopperDrc": {
    "valid": true,
    "checkedTraceCount": 486,
    "checkedSegmentCount": 1575,
    "checkedViaCount": 256,
    "issues": [],
    "scope": "DDR against all saved and fixed copper",
    "clearanceMm": 0.1016,
    "ddrTraceCount": 52
  },
  "sourceOrientationPreserved": true,
  "requestedDdrExitSide": "top",
  "requirements": {
    "source": "https://www.ti.com/lit/ds/sprs717l/sprs717l.pdf",
    "minimumTraceWidthMm": 0.1016,
    "referenceEscapeViaPadMm": [
      0.4572,
      0.508
    ],
    "referenceEscapeViaHoleMm": 0.254,
    "singleEndedImpedanceOhms": [
      50,
      75
    ],
    "impedanceToleranceOhms": 5,
    "differentialImpedanceMultiplier": 2,
    "dqWithinByteSkewMm": 0.635,
    "dqsToDqSkewMm": 0.635,
    "dqsPairSkewMm": 0.127,
    "ckStubPairSkewMm": 0.127,
    "clockAddressA1A2MaxMm": 63.5,
    "clockAddressA1A2SkewMm": 0.635,
    "nominalSameClassSpacingWidths": 3,
    "nominalOtherClassSpacingWidths": 4,
    "reducedSpacingMaximumLengthMm": 31.75,
    "requiredReferenceNets": [
      "GND",
      "VCC_DDR_1V5"
    ],
    "requiredReferencePlaneCuts": 0,
    "interveningLayersToReference": 0,
    "interfaceWidthBits": 16,
    "supportedDeviceArrangements": [
      "one x16",
      "two x8"
    ],
    "targetMemoryPart": "MT41K512M8DA-107 IT:P",
    "targetMemoryCount": 2,
    "maximumControllerClockMHz": 400,
    "selectedClockMHz": null
  },
  "scope": "AM3352 cached fanout only",
  "compliant": false,
  "localGeometryChecksPass": true,
  "failures": [],
  "unverified": [
    "Complete processor-to-two-x8-memory connectivity, placement and selected clock",
    "Full CK/ADDR_CTRL segment timing and each DQ/DQS byte lane timing including memory escapes",
    "Rendered continuous reference copper, DDR keepout and reference transition return paths",
    "Fabricator stackup, dielectric thickness and material, controlled impedance and differential coupling",
    "DDR spacing including reduced-spacing length budget and physical barrel copper clearance",
    "Via vertical flight time and stubs; reported lengths are planar only",
    "Host DDR termination, VREF/VTT, ZQ, memory decoupling and controller configuration"
  ],
  "pairs": [
    {
      "signals": [
        "DDR_CK",
        "DDR_CKn"
      ],
      "localPlanarSkewMm": 0.060303,
      "allocationMm": 0.127
    },
    {
      "signals": [
        "DDR_DQS0",
        "DDR_DQSn0"
      ],
      "localPlanarSkewMm": 0.060303,
      "allocationMm": 0.127
    },
    {
      "signals": [
        "DDR_DQS1",
        "DDR_DQSn1"
      ],
      "localPlanarSkewMm": 0.060303,
      "allocationMm": 0.127
    }
  ],
  "byteLanes": [
    {
      "byte": 0,
      "localPlanarSpreadMm": 5.162243,
      "signals": [
        {
          "signal": "DDR_DQM0",
          "localPlanarLengthMm": 18.608011,
          "localEqualizationContributionMm": 4.0128
        },
        {
          "signal": "DDR_D0",
          "localPlanarLengthMm": 19.001611,
          "localEqualizationContributionMm": 3.6192
        },
        {
          "signal": "DDR_D1",
          "localPlanarLengthMm": 19.393337,
          "localEqualizationContributionMm": 3.227474
        },
        {
          "signal": "DDR_D2",
          "localPlanarLengthMm": 17.458568,
          "localEqualizationContributionMm": 5.162243
        },
        {
          "signal": "DDR_D3",
          "localPlanarLengthMm": 19.408011,
          "localEqualizationContributionMm": 3.2128
        },
        {
          "signal": "DDR_D4",
          "localPlanarLengthMm": 20.614411,
          "localEqualizationContributionMm": 2.0064
        },
        {
          "signal": "DDR_D5",
          "localPlanarLengthMm": 22.620811,
          "localEqualizationContributionMm": 0
        },
        {
          "signal": "DDR_DQS0",
          "localPlanarLengthMm": 20.888906,
          "localEqualizationContributionMm": 1.731905
        },
        {
          "signal": "DDR_DQSn0",
          "localPlanarLengthMm": 20.949209,
          "localEqualizationContributionMm": 1.671602
        },
        {
          "signal": "DDR_D6",
          "localPlanarLengthMm": 21.820811,
          "localEqualizationContributionMm": 0.8
        },
        {
          "signal": "DDR_D7",
          "localPlanarLengthMm": 22.212537,
          "localEqualizationContributionMm": 0.408274
        }
      ],
      "fullRouteMatchingVerified": false
    },
    {
      "byte": 1,
      "localPlanarSpreadMm": 5.162243,
      "signals": [
        {
          "signal": "DDR_D8",
          "localPlanarLengthMm": 13.039368,
          "localEqualizationContributionMm": 5.162243
        },
        {
          "signal": "DDR_DQM1",
          "localPlanarLengthMm": 14.582411,
          "localEqualizationContributionMm": 3.6192
        },
        {
          "signal": "DDR_D9",
          "localPlanarLengthMm": 14.245768,
          "localEqualizationContributionMm": 3.955843
        },
        {
          "signal": "DDR_D10",
          "localPlanarLengthMm": 16.195211,
          "localEqualizationContributionMm": 2.0064
        },
        {
          "signal": "DDR_D11",
          "localPlanarLengthMm": 18.201611,
          "localEqualizationContributionMm": 0
        },
        {
          "signal": "DDR_D12",
          "localPlanarLengthMm": 17.386937,
          "localEqualizationContributionMm": 0.814674
        },
        {
          "signal": "DDR_DQS1",
          "localPlanarLengthMm": 17.269706,
          "localEqualizationContributionMm": 0.931905
        },
        {
          "signal": "DDR_DQSn1",
          "localPlanarLengthMm": 17.330009,
          "localEqualizationContributionMm": 0.871602
        },
        {
          "signal": "DDR_D13",
          "localPlanarLengthMm": 17.386937,
          "localEqualizationContributionMm": 0.814674
        },
        {
          "signal": "DDR_D14",
          "localPlanarLengthMm": 17.780537,
          "localEqualizationContributionMm": 0.421074
        },
        {
          "signal": "DDR_D15",
          "localPlanarLengthMm": 16.252168,
          "localEqualizationContributionMm": 1.949443
        }
      ],
      "fullRouteMatchingVerified": false
    }
  ],
  "signals": [
    {
      "signal": "DDR_A5",
      "ball": "B1",
      "netClass": "ADDR_CTRL",
      "planarLengthMm": 5.000968,
      "lengthByLayerMm": {
        "top": 5.000968
      },
      "layers": [
        "top"
      ],
      "vias": []
    },
    {
      "signal": "DDR_WEn",
      "ball": "B2",
      "netClass": "ADDR_CTRL",
      "planarLengthMm": 6.544011,
      "lengthByLayerMm": {
        "top": 0.565685,
        "inner2": 5.978326
      },
      "layers": [
        "top",
        "inner2"
      ],
      "vias": [
        {
          "x": -6.4,
          "y": 5.6,
          "entryLayer": "top",
          "exitLayer": "inner2",
          "physicalSpan": [
            "top",
            "bottom"
          ],
          "padDiameterMm": 0.4572,
          "holeDiameterMm": 0.254
        }
      ]
    },
    {
      "signal": "DDR_BA2",
      "ball": "B3",
      "netClass": "ADDR_CTRL",
      "planarLengthMm": 6.137611,
      "lengthByLayerMm": {
        "top": 0.565685,
        "inner4": 5.571926
      },
      "layers": [
        "top",
        "inner4"
      ],
      "vias": [
        {
          "x": -5.6,
          "y": 6.4,
          "entryLayer": "top",
          "exitLayer": "inner4",
          "physicalSpan": [
            "top",
            "bottom"
          ],
          "padDiameterMm": 0.4572,
          "holeDiameterMm": 0.254
        }
      ]
    },
    {
      "signal": "DDR_A9",
      "ball": "C1",
      "netClass": "ADDR_CTRL",
      "planarLengthMm": 6.207368,
      "lengthByLayerMm": {
        "top": 6.207368
      },
      "layers": [
        "top"
      ],
      "vias": []
    },
    {
      "signal": "DDR_A4",
      "ball": "C2",
      "netClass": "ADDR_CTRL",
      "planarLengthMm": 7.344011,
      "lengthByLayerMm": {
        "top": 0.565685,
        "inner6": 6.778326
      },
      "layers": [
        "top",
        "inner6"
      ],
      "vias": [
        {
          "x": -6.4,
          "y": 4.800000000000001,
          "entryLayer": "top",
          "exitLayer": "inner6",
          "physicalSpan": [
            "top",
            "bottom"
          ],
          "padDiameterMm": 0.4572,
          "holeDiameterMm": 0.254
        }
      ]
    },
    {
      "signal": "DDR_A3",
      "ball": "C3",
      "netClass": "ADDR_CTRL",
      "planarLengthMm": 8.550411,
      "lengthByLayerMm": {
        "top": 0.565685,
        "inner2": 7.984726
      },
      "layers": [
        "top",
        "inner2"
      ],
      "vias": [
        {
          "x": -5.6,
          "y": 4.800000000000001,
          "entryLayer": "top",
          "exitLayer": "inner2",
          "physicalSpan": [
            "top",
            "bottom"
          ],
          "padDiameterMm": 0.4572,
          "holeDiameterMm": 0.254
        }
      ]
    },
    {
      "signal": "DDR_BA0",
      "ball": "C4",
      "netClass": "ADDR_CTRL",
      "planarLengthMm": 7.735737,
      "lengthByLayerMm": {
        "top": 0.565685,
        "inner2": 7.170051
      },
      "layers": [
        "top",
        "inner2"
      ],
      "vias": [
        {
          "x": -4.800000000000001,
          "y": 5.6,
          "entryLayer": "top",
          "exitLayer": "inner2",
          "physicalSpan": [
            "top",
            "bottom"
          ],
          "padDiameterMm": 0.4572,
          "holeDiameterMm": 0.254
        }
      ]
    },
    {
      "signal": "DDR_CKn",
      "ball": "D1",
      "netClass": "CK",
      "planarLengthMm": 8.824906,
      "lengthByLayerMm": {
        "top": 0.565685,
        "inner6": 8.259221
      },
      "layers": [
        "top",
        "inner6"
      ],
      "vias": [
        {
          "x": -7.199999999999999,
          "y": 4,
          "entryLayer": "top",
          "exitLayer": "inner6",
          "physicalSpan": [
            "top",
            "bottom"
          ],
          "padDiameterMm": 0.4572,
          "holeDiameterMm": 0.254
        }
      ]
    },
    {
      "signal": "DDR_CK",
      "ball": "D2",
      "netClass": "CK",
      "planarLengthMm": 8.885209,
      "lengthByLayerMm": {
        "top": 0.565685,
        "inner6": 8.319524
      },
      "layers": [
        "top",
        "inner6"
      ],
      "vias": [
        {
          "x": -6.4,
          "y": 4,
          "entryLayer": "top",
          "exitLayer": "inner6",
          "physicalSpan": [
            "top",
            "bottom"
          ],
          "padDiameterMm": 0.4572,
          "holeDiameterMm": 0.254
        }
      ]
    },
    {
      "signal": "DDR_A15",
      "ball": "D3",
      "netClass": "ADDR_CTRL",
      "planarLengthMm": 10.963211,
      "lengthByLayerMm": {
        "top": 0.565685,
        "inner6": 10.397526
      },
      "layers": [
        "top",
        "inner6"
      ],
      "vias": [
        {
          "x": -5.6,
          "y": 4,
          "entryLayer": "top",
          "exitLayer": "inner6",
          "physicalSpan": [
            "top",
            "bottom"
          ],
          "padDiameterMm": 0.4572,
          "holeDiameterMm": 0.254
        }
      ]
    },
    {
      "signal": "DDR_A8",
      "ball": "D4",
      "netClass": "ADDR_CTRL",
      "planarLengthMm": 9.14402,
      "lengthByLayerMm": {
        "top": 0.565685,
        "inner6": 8.578335
      },
      "layers": [
        "top",
        "inner6"
      ],
      "vias": [
        {
          "x": -4.8,
          "y": 4.8,
          "entryLayer": "top",
          "exitLayer": "inner6",
          "physicalSpan": [
            "top",
            "bottom"
          ],
          "padDiameterMm": 0.4572,
          "holeDiameterMm": 0.254
        }
      ]
    },
    {
      "signal": "DDR_A6",
      "ball": "D5",
      "netClass": "ADDR_CTRL",
      "planarLengthMm": 27.406137,
      "lengthByLayerMm": {
        "top": 0.565685,
        "inner6": 26.840451
      },
      "layers": [
        "top",
        "inner6"
      ],
      "vias": [
        {
          "x": -4,
          "y": 4.800000000000001,
          "entryLayer": "top",
          "exitLayer": "inner6",
          "physicalSpan": [
            "top",
            "bottom"
          ],
          "padDiameterMm": 0.4572,
          "holeDiameterMm": 0.254
        }
      ]
    },
    {
      "signal": "DDR_BA1",
      "ball": "E1",
      "netClass": "ADDR_CTRL",
      "planarLengthMm": 8.213768,
      "lengthByLayerMm": {
        "top": 8.213768
      },
      "layers": [
        "top"
      ],
      "vias": []
    },
    {
      "signal": "DDR_A7",
      "ball": "E2",
      "netClass": "ADDR_CTRL",
      "planarLengthMm": 9.756811,
      "lengthByLayerMm": {
        "top": 0.565685,
        "inner4": 9.191126
      },
      "layers": [
        "top",
        "inner4"
      ],
      "vias": [
        {
          "x": -6.4,
          "y": 3.2,
          "entryLayer": "top",
          "exitLayer": "inner4",
          "physicalSpan": [
            "top",
            "bottom"
          ],
          "padDiameterMm": 0.4572,
          "holeDiameterMm": 0.254
        }
      ]
    },
    {
      "signal": "DDR_A12",
      "ball": "E3",
      "netClass": "ADDR_CTRL",
      "planarLengthMm": 10.148537,
      "lengthByLayerMm": {
        "top": 0.565685,
        "inner4": 9.582851
      },
      "layers": [
        "top",
        "inner4"
      ],
      "vias": [
        {
          "x": -5.6,
          "y": 3.2,
          "entryLayer": "top",
          "exitLayer": "inner4",
          "physicalSpan": [
            "top",
            "bottom"
          ],
          "padDiameterMm": 0.4572,
          "holeDiameterMm": 0.254
        }
      ]
    },
    {
      "signal": "DDR_A2",
      "ball": "E4",
      "netClass": "ADDR_CTRL",
      "planarLengthMm": 10.542137,
      "lengthByLayerMm": {
        "top": 0.565685,
        "inner4": 9.976451
      },
      "layers": [
        "top",
        "inner4"
      ],
      "vias": [
        {
          "x": -4.800000000000001,
          "y": 3.2,
          "entryLayer": "top",
          "exitLayer": "inner4",
          "physicalSpan": [
            "top",
            "bottom"
          ],
          "padDiameterMm": 0.4572,
          "holeDiameterMm": 0.254
        }
      ]
    },
    {
      "signal": "DDR_CASn",
      "ball": "F1",
      "netClass": "ADDR_CTRL",
      "planarLengthMm": 9.420168,
      "lengthByLayerMm": {
        "top": 9.420168
      },
      "layers": [
        "top"
      ],
      "vias": []
    },
    {
      "signal": "DDR_A11",
      "ball": "F2",
      "netClass": "ADDR_CTRL",
      "planarLengthMm": 10.963211,
      "lengthByLayerMm": {
        "top": 0.565685,
        "inner2": 10.397526
      },
      "layers": [
        "top",
        "inner2"
      ],
      "vias": [
        {
          "x": -6.4,
          "y": 2.4,
          "entryLayer": "top",
          "exitLayer": "inner2",
          "physicalSpan": [
            "top",
            "bottom"
          ],
          "padDiameterMm": 0.4572,
          "holeDiameterMm": 0.254
        }
      ]
    },
    {
      "signal": "DDR_A0",
      "ball": "F3",
      "netClass": "ADDR_CTRL",
      "planarLengthMm": 11.354937,
      "lengthByLayerMm": {
        "top": 0.565685,
        "inner2": 10.789251
      },
      "layers": [
        "top",
        "inner2"
      ],
      "vias": [
        {
          "x": -5.6,
          "y": 2.4,
          "entryLayer": "top",
          "exitLayer": "inner2",
          "physicalSpan": [
            "top",
            "bottom"
          ],
          "padDiameterMm": 0.4572,
          "holeDiameterMm": 0.254
        }
      ]
    },
    {
      "signal": "DDR_A10",
      "ball": "F4",
      "netClass": "ADDR_CTRL",
      "planarLengthMm": 13.769611,
      "lengthByLayerMm": {
        "top": 0.565685,
        "inner2": 13.203926
      },
      "layers": [
        "top",
        "inner2"
      ],
      "vias": [
        {
          "x": -4.800000000000001,
          "y": 2.4,
          "entryLayer": "top",
          "exitLayer": "inner2",
          "physicalSpan": [
            "top",
            "bottom"
          ],
          "padDiameterMm": 0.4572,
          "holeDiameterMm": 0.254
        }
      ]
    },
    {
      "signal": "DDR_ODT",
      "ball": "G1",
      "netClass": "ADDR_CTRL",
      "planarLengthMm": 10.626568,
      "lengthByLayerMm": {
        "top": 10.626568
      },
      "layers": [
        "top"
      ],
      "vias": []
    },
    {
      "signal": "DDR_CKE",
      "ball": "G3",
      "netClass": "ADDR_CTRL",
      "planarLengthMm": 12.967737,
      "lengthByLayerMm": {
        "top": 0.565685,
        "inner6": 12.402051
      },
      "layers": [
        "top",
        "inner6"
      ],
      "vias": [
        {
          "x": -5.6,
          "y": 1.6,
          "entryLayer": "top",
          "exitLayer": "inner6",
          "physicalSpan": [
            "top",
            "bottom"
          ],
          "padDiameterMm": 0.4572,
          "holeDiameterMm": 0.254
        }
      ]
    },
    {
      "signal": "DDR_RASn",
      "ball": "G4",
      "netClass": "ADDR_CTRL",
      "planarLengthMm": 15.382411,
      "lengthByLayerMm": {
        "top": 0.565685,
        "inner6": 14.816726
      },
      "layers": [
        "top",
        "inner6"
      ],
      "vias": [
        {
          "x": -4.800000000000001,
          "y": 1.6,
          "entryLayer": "top",
          "exitLayer": "inner6",
          "physicalSpan": [
            "top",
            "bottom"
          ],
          "padDiameterMm": 0.4572,
          "holeDiameterMm": 0.254
        }
      ]
    },
    {
      "signal": "DDR_A1",
      "ball": "H1",
      "netClass": "ADDR_CTRL",
      "planarLengthMm": 11.832968,
      "lengthByLayerMm": {
        "top": 11.832968
      },
      "layers": [
        "top"
      ],
      "vias": []
    },
    {
      "signal": "DDR_CSn0",
      "ball": "H2",
      "netClass": "ADDR_CTRL",
      "planarLengthMm": 13.376011,
      "lengthByLayerMm": {
        "top": 0.565685,
        "inner4": 12.810326
      },
      "layers": [
        "top",
        "inner4"
      ],
      "vias": [
        {
          "x": -6.4,
          "y": 0.8,
          "entryLayer": "top",
          "exitLayer": "inner4",
          "physicalSpan": [
            "top",
            "bottom"
          ],
          "padDiameterMm": 0.4572,
          "holeDiameterMm": 0.254
        }
      ]
    },
    {
      "signal": "DDR_A13",
      "ball": "H3",
      "netClass": "ADDR_CTRL",
      "planarLengthMm": 13.767737,
      "lengthByLayerMm": {
        "top": 0.565685,
        "inner4": 13.202051
      },
      "layers": [
        "top",
        "inner4"
      ],
      "vias": [
        {
          "x": -5.6,
          "y": 0.8,
          "entryLayer": "top",
          "exitLayer": "inner4",
          "physicalSpan": [
            "top",
            "bottom"
          ],
          "padDiameterMm": 0.4572,
          "holeDiameterMm": 0.254
        }
      ]
    },
    {
      "signal": "DDR_A14",
      "ball": "H4",
      "netClass": "ADDR_CTRL",
      "planarLengthMm": 14.161337,
      "lengthByLayerMm": {
        "top": 0.565685,
        "inner4": 13.595651
      },
      "layers": [
        "top",
        "inner4"
      ],
      "vias": [
        {
          "x": -4.800000000000001,
          "y": 0.8,
          "entryLayer": "top",
          "exitLayer": "inner4",
          "physicalSpan": [
            "top",
            "bottom"
          ],
          "padDiameterMm": 0.4572,
          "holeDiameterMm": 0.254
        }
      ]
    },
    {
      "signal": "DDR_D8",
      "ball": "J1",
      "netClass": "DQ1",
      "planarLengthMm": 13.039368,
      "lengthByLayerMm": {
        "top": 13.039368
      },
      "layers": [
        "top"
      ],
      "vias": []
    },
    {
      "signal": "DDR_DQM1",
      "ball": "J2",
      "netClass": "DQ1",
      "planarLengthMm": 14.582411,
      "lengthByLayerMm": {
        "top": 0.565685,
        "inner2": 14.016726
      },
      "layers": [
        "top",
        "inner2"
      ],
      "vias": [
        {
          "x": -6.4,
          "y": 1.1102230246251565e-16,
          "entryLayer": "top",
          "exitLayer": "inner2",
          "physicalSpan": [
            "top",
            "bottom"
          ],
          "padDiameterMm": 0.4572,
          "holeDiameterMm": 0.254
        }
      ]
    },
    {
      "signal": "DDR_D9",
      "ball": "K1",
      "netClass": "DQ1",
      "planarLengthMm": 14.245768,
      "lengthByLayerMm": {
        "top": 14.245768
      },
      "layers": [
        "top"
      ],
      "vias": []
    },
    {
      "signal": "DDR_D10",
      "ball": "K2",
      "netClass": "DQ1",
      "planarLengthMm": 16.195211,
      "lengthByLayerMm": {
        "top": 0.565685,
        "inner6": 15.629526
      },
      "layers": [
        "top",
        "inner6"
      ],
      "vias": [
        {
          "x": -6.4,
          "y": -0.7999999999999999,
          "entryLayer": "top",
          "exitLayer": "inner6",
          "physicalSpan": [
            "top",
            "bottom"
          ],
          "padDiameterMm": 0.4572,
          "holeDiameterMm": 0.254
        }
      ]
    },
    {
      "signal": "DDR_D11",
      "ball": "K3",
      "netClass": "DQ1",
      "planarLengthMm": 18.201611,
      "lengthByLayerMm": {
        "top": 0.565685,
        "inner6": 17.635926
      },
      "layers": [
        "top",
        "inner6"
      ],
      "vias": [
        {
          "x": -5.6,
          "y": -0.7999999999999999,
          "entryLayer": "top",
          "exitLayer": "inner6",
          "physicalSpan": [
            "top",
            "bottom"
          ],
          "padDiameterMm": 0.4572,
          "holeDiameterMm": 0.254
        }
      ]
    },
    {
      "signal": "DDR_D12",
      "ball": "K4",
      "netClass": "DQ1",
      "planarLengthMm": 17.386937,
      "lengthByLayerMm": {
        "top": 0.565685,
        "inner6": 16.821251
      },
      "layers": [
        "top",
        "inner6"
      ],
      "vias": [
        {
          "x": -4.800000000000001,
          "y": -0.7999999999999999,
          "entryLayer": "top",
          "exitLayer": "inner6",
          "physicalSpan": [
            "top",
            "bottom"
          ],
          "padDiameterMm": 0.4572,
          "holeDiameterMm": 0.254
        }
      ]
    },
    {
      "signal": "DDR_DQS1",
      "ball": "L1",
      "netClass": "DQS1",
      "planarLengthMm": 17.269706,
      "lengthByLayerMm": {
        "top": 0.565685,
        "inner4": 16.704021
      },
      "layers": [
        "top",
        "inner4"
      ],
      "vias": [
        {
          "x": -7.199999999999999,
          "y": -1.5999999999999999,
          "entryLayer": "top",
          "exitLayer": "inner4",
          "physicalSpan": [
            "top",
            "bottom"
          ],
          "padDiameterMm": 0.4572,
          "holeDiameterMm": 0.254
        }
      ]
    },
    {
      "signal": "DDR_DQSn1",
      "ball": "L2",
      "netClass": "DQS1",
      "planarLengthMm": 17.330009,
      "lengthByLayerMm": {
        "top": 0.565685,
        "inner4": 16.764324
      },
      "layers": [
        "top",
        "inner4"
      ],
      "vias": [
        {
          "x": -6.4,
          "y": -1.5999999999999999,
          "entryLayer": "top",
          "exitLayer": "inner4",
          "physicalSpan": [
            "top",
            "bottom"
          ],
          "padDiameterMm": 0.4572,
          "holeDiameterMm": 0.254
        }
      ]
    },
    {
      "signal": "DDR_D13",
      "ball": "L3",
      "netClass": "DQ1",
      "planarLengthMm": 17.386937,
      "lengthByLayerMm": {
        "top": 0.565685,
        "inner4": 16.821251
      },
      "layers": [
        "top",
        "inner4"
      ],
      "vias": [
        {
          "x": -5.6,
          "y": -1.5999999999999999,
          "entryLayer": "top",
          "exitLayer": "inner4",
          "physicalSpan": [
            "top",
            "bottom"
          ],
          "padDiameterMm": 0.4572,
          "holeDiameterMm": 0.254
        }
      ]
    },
    {
      "signal": "DDR_D14",
      "ball": "L4",
      "netClass": "DQ1",
      "planarLengthMm": 17.780537,
      "lengthByLayerMm": {
        "top": 0.565685,
        "inner4": 17.214851
      },
      "layers": [
        "top",
        "inner4"
      ],
      "vias": [
        {
          "x": -4.800000000000001,
          "y": -1.5999999999999999,
          "entryLayer": "top",
          "exitLayer": "inner4",
          "physicalSpan": [
            "top",
            "bottom"
          ],
          "padDiameterMm": 0.4572,
          "holeDiameterMm": 0.254
        }
      ]
    },
    {
      "signal": "DDR_D15",
      "ball": "M1",
      "netClass": "DQ1",
      "planarLengthMm": 16.252168,
      "lengthByLayerMm": {
        "top": 16.252168
      },
      "layers": [
        "top"
      ],
      "vias": []
    },
    {
      "signal": "DDR_DQM0",
      "ball": "M2",
      "netClass": "DQ0",
      "planarLengthMm": 18.608011,
      "lengthByLayerMm": {
        "top": 0.565685,
        "inner4": 18.042326
      },
      "layers": [
        "top",
        "inner4"
      ],
      "vias": [
        {
          "x": -6.4,
          "y": -2.4,
          "entryLayer": "top",
          "exitLayer": "inner4",
          "physicalSpan": [
            "top",
            "bottom"
          ],
          "padDiameterMm": 0.4572,
          "holeDiameterMm": 0.254
        }
      ]
    },
    {
      "signal": "DDR_D0",
      "ball": "M3",
      "netClass": "DQ0",
      "planarLengthMm": 19.001611,
      "lengthByLayerMm": {
        "top": 0.565685,
        "inner2": 18.435926
      },
      "layers": [
        "top",
        "inner2"
      ],
      "vias": [
        {
          "x": -5.6,
          "y": -2.4,
          "entryLayer": "top",
          "exitLayer": "inner2",
          "physicalSpan": [
            "top",
            "bottom"
          ],
          "padDiameterMm": 0.4572,
          "holeDiameterMm": 0.254
        }
      ]
    },
    {
      "signal": "DDR_D1",
      "ball": "M4",
      "netClass": "DQ0",
      "planarLengthMm": 19.393337,
      "lengthByLayerMm": {
        "top": 0.565685,
        "inner2": 18.827651
      },
      "layers": [
        "top",
        "inner2"
      ],
      "vias": [
        {
          "x": -4.800000000000001,
          "y": -2.4,
          "entryLayer": "top",
          "exitLayer": "inner2",
          "physicalSpan": [
            "top",
            "bottom"
          ],
          "padDiameterMm": 0.4572,
          "holeDiameterMm": 0.254
        }
      ]
    },
    {
      "signal": "DDR_D2",
      "ball": "N1",
      "netClass": "DQ0",
      "planarLengthMm": 17.458568,
      "lengthByLayerMm": {
        "top": 17.458568
      },
      "layers": [
        "top"
      ],
      "vias": []
    },
    {
      "signal": "DDR_D3",
      "ball": "N2",
      "netClass": "DQ0",
      "planarLengthMm": 19.408011,
      "lengthByLayerMm": {
        "top": 0.565685,
        "inner2": 18.842326
      },
      "layers": [
        "top",
        "inner2"
      ],
      "vias": [
        {
          "x": -6.4,
          "y": -3.1999999999999997,
          "entryLayer": "top",
          "exitLayer": "inner2",
          "physicalSpan": [
            "top",
            "bottom"
          ],
          "padDiameterMm": 0.4572,
          "holeDiameterMm": 0.254
        }
      ]
    },
    {
      "signal": "DDR_D4",
      "ball": "N3",
      "netClass": "DQ0",
      "planarLengthMm": 20.614411,
      "lengthByLayerMm": {
        "top": 0.565685,
        "inner6": 20.048726
      },
      "layers": [
        "top",
        "inner6"
      ],
      "vias": [
        {
          "x": -5.6,
          "y": -3.1999999999999997,
          "entryLayer": "top",
          "exitLayer": "inner6",
          "physicalSpan": [
            "top",
            "bottom"
          ],
          "padDiameterMm": 0.4572,
          "holeDiameterMm": 0.254
        }
      ]
    },
    {
      "signal": "DDR_D5",
      "ball": "N4",
      "netClass": "DQ0",
      "planarLengthMm": 22.620811,
      "lengthByLayerMm": {
        "top": 0.565685,
        "inner6": 22.055126
      },
      "layers": [
        "top",
        "inner6"
      ],
      "vias": [
        {
          "x": -4.800000000000001,
          "y": -3.1999999999999997,
          "entryLayer": "top",
          "exitLayer": "inner6",
          "physicalSpan": [
            "top",
            "bottom"
          ],
          "padDiameterMm": 0.4572,
          "holeDiameterMm": 0.254
        }
      ]
    },
    {
      "signal": "DDR_DQS0",
      "ball": "P1",
      "netClass": "DQS0",
      "planarLengthMm": 20.888906,
      "lengthByLayerMm": {
        "top": 0.565685,
        "inner2": 20.323221
      },
      "layers": [
        "top",
        "inner2"
      ],
      "vias": [
        {
          "x": -7.199999999999999,
          "y": -4,
          "entryLayer": "top",
          "exitLayer": "inner2",
          "physicalSpan": [
            "top",
            "bottom"
          ],
          "padDiameterMm": 0.4572,
          "holeDiameterMm": 0.254
        }
      ]
    },
    {
      "signal": "DDR_DQSn0",
      "ball": "P2",
      "netClass": "DQS0",
      "planarLengthMm": 20.949209,
      "lengthByLayerMm": {
        "top": 0.565685,
        "inner2": 20.383524
      },
      "layers": [
        "top",
        "inner2"
      ],
      "vias": [
        {
          "x": -6.4,
          "y": -4,
          "entryLayer": "top",
          "exitLayer": "inner2",
          "physicalSpan": [
            "top",
            "bottom"
          ],
          "padDiameterMm": 0.4572,
          "holeDiameterMm": 0.254
        }
      ]
    },
    {
      "signal": "DDR_D6",
      "ball": "P3",
      "netClass": "DQ0",
      "planarLengthMm": 21.820811,
      "lengthByLayerMm": {
        "top": 0.565685,
        "inner4": 21.255126
      },
      "layers": [
        "top",
        "inner4"
      ],
      "vias": [
        {
          "x": -5.6,
          "y": -4,
          "entryLayer": "top",
          "exitLayer": "inner4",
          "physicalSpan": [
            "top",
            "bottom"
          ],
          "padDiameterMm": 0.4572,
          "holeDiameterMm": 0.254
        }
      ]
    },
    {
      "signal": "DDR_D7",
      "ball": "P4",
      "netClass": "DQ0",
      "planarLengthMm": 22.212537,
      "lengthByLayerMm": {
        "top": 0.565685,
        "inner4": 21.646851
      },
      "layers": [
        "top",
        "inner4"
      ],
      "vias": [
        {
          "x": -4.800000000000001,
          "y": -4,
          "entryLayer": "top",
          "exitLayer": "inner4",
          "physicalSpan": [
            "top",
            "bottom"
          ],
          "padDiameterMm": 0.4572,
          "holeDiameterMm": 0.254
        }
      ]
    }
  ]
}