1. Anchor routing added with mutiport

This commit is contained in:
2026-05-30 12:04:02 +08:00
parent 2d9b2b0983
commit 5a3a80700f
23 changed files with 1226 additions and 234 deletions
+18
View File
@@ -85,6 +85,24 @@ assert(
'Build GDS should not silently fall back to unrouted gdstk when links are present'
);
const routerDir = path.resolve(root, '..', 'mxpic_router', 'mxpic_router');
if (fs.existsSync(routerDir)) {
const routerLoaderPy = fs.readFileSync(path.join(routerDir, 'eda_loader.py'), 'utf8');
const routerBuilderPy = fs.readFileSync(path.join(routerDir, 'builder.py'), 'utf8');
assert(
routerLoaderPy.includes('port_number: int = 1') &&
routerLoaderPy.includes('pitch: float = 10.0') &&
routerLoaderPy.includes('port_number=_int(element.get("port_number"'),
'mxpic_router loader should parse multi-port anchor metadata from exported elements'
);
assert(
routerBuilderPy.includes('for index in range(port_number):') &&
routerBuilderPy.includes('a{index + 1}') &&
routerBuilderPy.includes('b{index + 1}'),
'mxpic_router builder should register aN/bN pins for multi-port anchors'
);
}
assert(
serverPy.includes('def scoped_pdk_root_for_project') &&
serverPy.includes('read_project_meta(project_name).get("technology")') &&