0hmX/am3352-ddr-track-a-local-dfm-wip-20261007
Experimental RJ45-corrected board with isolated PG indication. 1005/1005 source joins pass; 15 expanded-guard physical errors, sourcing and qualification gates remain. Not fabrication-ready.
- Version
- 0.0.14
- License
- unset
- Stars
- 0
layout/CloudSysboot2And10Routes.tsx
/**
* SYSBOOT2 and SYSBOOT10 completion. Both trunks run on Inner6 (otherwise unused signal layer) so the
* bottom-side RN_HDMI_3 pad vias only span Bottom..Inner6 and stay clear of the Inner5 HDMI_D12 run under pad 2.
* The SYS6 pull-up Inner5 jog (data/cloud-sys6-real-terminal-routes.json pullToCpu) was moved off the R3 ball.
*/
const via = (name: string, x: number, y: number, from: string, to: string, connectsTo: string) =>
<via name={name} pcbX={x} pcbY={y} fromLayer={from as any} toLayer={to as any} holeDiameter={.15} outerDiameter={.30} connectsTo={connectsTo} />
const path = (pts: number[][], layer: string) => pts.map(([x, y]) => ({ x, y, layer }))
const REF = ".Processor > .U1 > .A1"
export function CloudSysboot2And10Routes() {
const sys2 = [[4.4, -5.2], [4.4, -10.2], [6, -11.8], [6, -12.475]]
const sys10 = [[6, -5.2], [6, -5.5], [7, -6.5], [7, -12.475]]
return <group name="Cloud_SYSBOOT2_10" pcbX={0} pcbY={0} pcbRelative>
{via("SYS2_CPU_VIP", 4.4, -5.2, "top", "inner6", ".Processor > .U1 > .R3")}
{via("SYS2_RN3_VIP", 6, -12.475, "bottom", "inner6", ".HDMI > .RN_HDMI_3 > .2")}
{via("SYS10_CPU_VIP", 6, -5.2, "top", "inner6", ".Processor > .U1 > .U3")}
{via("SYS10_RN3_VIP", 7, -12.475, "bottom", "inner6", ".HDMI > .RN_HDMI_3 > .4")}
{via("SYS10_PULL_VIP", 8.5, -7.6, "top", "inner6", "net.SYSBOOT10")}
<trace name="SYS2_CPU_ARRAY_I6" from="SYS2_CPU_VIP.inner6" to="SYS2_RN3_VIP.inner6" width={.1} pcbPathRelativeTo={REF}
pcbPaths={[["SYS2_CPU_VIP.inner6", ...path(sys2, "inner6"), "SYS2_RN3_VIP.inner6"]] as any} />
<trace name="SYS10_CPU_ARRAY_I6" from="SYS10_CPU_VIP.inner6" to="SYS10_RN3_VIP.inner6" width={.1} pcbPathRelativeTo={REF}
pcbPaths={[["SYS10_CPU_VIP.inner6", ...path(sys10, "inner6"), "SYS10_RN3_VIP.inner6"]] as any} />
<trace name="SYS10_PULL_I6" from="SYS10_PULL_VIP.inner6" to="net.SYSBOOT10" width={.1} pcbPathRelativeTo={REF}
pcbPaths={[["SYS10_PULL_VIP.inner6", ...path([[8.5, -7.6], [7, -7.6]], "inner6")]] as any} />
<trace name="SYS10_PULL_TOP" from=".Boot_and_clock > .R_BOOT10 > .pin1" to="SYS10_PULL_VIP.top" width={.1} pcbPathRelativeTo={REF}
pcbPaths={[[".Boot_and_clock > .R_BOOT10 > .pin1", ...path([[9.5, -7.61], [8.5, -7.6]], "top"), "SYS10_PULL_VIP.top"]] as any} />
</group>
}