R2 底板改 4 层(D15):规则 / 几何 / 背面摆位 / 4 层布线与铺铜,已下发
- 规则:铜层 2→4,差分 0.28/0.18,间距 0.15,过孔 0.3/0.2(rules_base) - 几何:98×98 板框 + 4×M3,槽阵居中,L1 12V 大铜 + 指头(pcb_base) - 摆位:五插槽留 L1,其余 133 件翻到 L4;背面镜像规则实测;Hub 放走廊 2、 东移 2.5 mm;扇出圈 / 小件间距 1.5(去耦例外)/ 9 A 过孔阵禁区(place_base) - 叠层按用户决定改为 L1 槽面 / L2 整层 +3V3 / L3 整层 GND / L4 器件面 - 布线:D± 七对按构造布通(USB3 掉头、USB1/2 北去掉头、USB4/5 东绕、 J23 桥),+3V3 / GND / +12V 平面网每脚一孔,0.125 网格 + PathFinder 开关(route_base、remote_route.ps1);剩 37 个网待手工补 - 铺铜:4 层重写,入口链自南向北切段 + 断面校核(pour_base); 已下发布线 / 缝合孔 / 铜面轮廓,填铜未成功(待查) - 工具:plot_base / plot_routes / shot_base,board_check 通孔两层都算 Co-Authored-By: Claude Opus 5 <[email protected]> Claude-Session: https://claude.ai/code/session_0168Bu6SEx3cXXCJLkdnE6zB
这个提交包含在:
@@ -0,0 +1,56 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
u"""M6 手工补线清单(五个被自家邻脚封死的焊盘)。推导见方案 §26.6。"""
|
||||
W = 0.15
|
||||
# 要删的旧线 (layer, x0,y0,x1,y1, net) —— 按端点匹配
|
||||
DEL_SEGS = [
|
||||
(2, 88.331, 32.565, 88.75, 30.015, 'VO'), # 13 脚的斜线 -> 换成 12-13 短接
|
||||
(2, 89.25, 30.015, 89.25, 30.77, 'EFUSE_EN'),
|
||||
(2, 89.25, 30.77, 89.5, 31.0, 'EFUSE_EN'),
|
||||
(1, 89.5, 32.0, 89.5, 31.0, 'EFUSE_EN'),
|
||||
(1, 81.75, 32.0, 89.5, 32.0, 'EFUSE_EN'),
|
||||
(2, 91.75, 28.77, 92.0, 29.5, '$1N158'),
|
||||
]
|
||||
DEL_VIAS = [(89.5, 31.0, 'EFUSE_EN'), (92.0, 29.5, '$1N158')]
|
||||
S = [] # (layer, x0,y0,x1,y1, w, net)
|
||||
V = [] # (x,y,net)
|
||||
def seg(l, pts, w, net):
|
||||
for a, b in zip(pts, pts[1:]):
|
||||
S.append((l, a[0], a[1], b[0], b[1], w, net))
|
||||
# ── 让路:VO 12-13 短接、EFUSE_EN 改从 (89.05,32) 上顶层、$1N158 过孔改到 (92,28.77)
|
||||
seg(2, [(88.25, 30.015), (88.75, 30.015)], 0.3, 'VO')
|
||||
seg(2, [(89.25, 30.015), (89.25, 31.3), (89.05, 31.5), (89.05, 32.0)], 0.3, 'EFUSE_EN')
|
||||
V.append((89.05, 32.0, 'EFUSE_EN'))
|
||||
seg(1, [(89.05, 32.0), (81.75, 32.0)], 0.3, 'EFUSE_EN')
|
||||
seg(2, [(91.75, 28.77), (92.0, 28.77)], 0.15, '$1N158')
|
||||
V.append((92.0, 28.77, '$1N158'))
|
||||
seg(1, [(92.0, 28.77), (92.0, 29.5)], 0.15, '$1N158')
|
||||
# ── $1N147:U2.15 上逃 -> 顶层 y31.4 向西 -> x66.9 下来 -> y28.35 向东 -> 过孔落到 R9.2 上方
|
||||
seg(2, [(89.751, 30.015), (89.75, 31.1), (90.05, 31.4), (90.6, 31.4)], W, '$1N147')
|
||||
V.append((90.6, 31.4, '$1N147'))
|
||||
seg(1, [(90.6, 31.4), (66.9, 31.4), (66.9, 28.35), (77.0, 28.35)], W, '$1N147')
|
||||
V.append((77.0, 28.35, '$1N147'))
|
||||
seg(2, [(77.0, 28.35), (77.2, 27.62)], W, '$1N147')
|
||||
# ── $1N156:U2.17 东逃 -> 过孔 (92.65,29.27) -> 顶层下到 y26.6 -> 西到 84.6 -> y25.75 -> 过孔 (81.3,25.75) -> 底层进 R11.1
|
||||
seg(2, [(91.001, 29.266), (92.65, 29.27)], W, '$1N156')
|
||||
V.append((92.65, 29.27, '$1N156'))
|
||||
seg(1, [(92.65, 29.27), (92.65, 26.6), (84.6, 26.6), (84.6, 25.75), (81.3, 25.75)], W, '$1N156')
|
||||
V.append((81.3, 25.75, '$1N156'))
|
||||
seg(2, [(81.3, 25.75), (81.3, 26.9), (82.0, 27.35), (82.33, 27.35)], W, '$1N156')
|
||||
# ── EFUSE_PG:U2.2 下逃 -> 过孔 (90.25,25.4) -> 顶层 y25.4 西到 86.6 -> 过孔 -> 底层绕 +3V3 孔 -> x80.6 南下 -> U4.16
|
||||
seg(2, [(89.751, 27.015), (89.75, 26.55), (90.1, 26.2), (90.25, 26.05), (90.25, 25.4)], W, 'EFUSE_PG')
|
||||
V.append((90.25, 25.4, 'EFUSE_PG'))
|
||||
seg(1, [(90.25, 25.4), (86.6, 25.4)], W, 'EFUSE_PG')
|
||||
V.append((86.6, 25.4, 'EFUSE_PG'))
|
||||
seg(2, [(86.6, 25.4), (84.8, 25.4), (84.6, 25.55), (83.0, 25.55), (82.55, 25.1), (80.6, 25.1), (80.6, 20.2), (80.15, 20.2)], W, 'EFUSE_PG')
|
||||
# ── $1N165:R16.1 北侧过孔 (79.1,29.95) -> 顶层 y29.95 东到 93.3 -> 南到 24.6 -> 西到 88.9 -> 过孔 -> Rs1.2
|
||||
seg(2, [(79.33, 29.62), (79.1, 29.95)], W, '$1N165')
|
||||
V.append((79.1, 29.95, '$1N165'))
|
||||
seg(1, [(79.1, 29.95), (93.3, 29.95), (93.3, 24.6), (88.9, 24.6)], W, '$1N165')
|
||||
V.append((88.9, 24.6, '$1N165'))
|
||||
seg(2, [(88.9, 24.6), (88.5, 24.4)], W, '$1N165')
|
||||
# ── VDAC:金手指引出点 (49.5,11.75) 底层北上 -> 绕过尾插槽西侧 x46 -> 过孔 (46.3,29) -> 顶层北上 -> y45.55/45.8 东行 -> x96.6 南下 -> 过孔 (94.5,49.85) -> R8.2
|
||||
seg(2, [(49.5, 11.75), (49.5, 21.0), (46.3, 21.0), (46.3, 29.0)], W, 'VDAC')
|
||||
V.append((46.3, 29.0, 'VDAC'))
|
||||
seg(1, [(46.3, 29.0), (46.3, 45.55), (82.5, 45.55), (82.9, 45.8), (96.6, 45.8), (96.6, 49.85), (94.5, 49.85)], W, 'VDAC')
|
||||
V.append((94.5, 49.85, 'VDAC'))
|
||||
seg(2, [(94.5, 49.85), (93.785, 49.85)], W, 'VDAC')
|
||||
在新工单中引用
屏蔽一个用户