Fix JSON for muxes using udp_mux_4to2.
Fixes to the model for `udp_mux_4to2` cause the JSON layout output to now
include the cell.
Signed-off-by: Tim 'mithro' Ansell <tansell@google.com>
diff --git a/cells/mux2i/sky130_fd_sc_ls__mux2i.json b/cells/mux2i/sky130_fd_sc_ls__mux2i.json
index 2fe1983..b29c5a1 100644
--- a/cells/mux2i/sky130_fd_sc_ls__mux2i.json
+++ b/cells/mux2i/sky130_fd_sc_ls__mux2i.json
@@ -25,6 +25,28 @@
}
},
"cells": {
+ "mux_2to1_n0": {
+ "hide_name": 0,
+ "type": "udp_mux_2to1_N",
+ "parameters": {
+ },
+ "attributes": {
+ "module_not_derived": 1,
+ "src": "./cells/mux2i/sky130_fd_sc_ls__mux2i.functional.v:53.37-53.87"
+ },
+ "port_directions": {
+ "A0": "input",
+ "A1": "input",
+ "S": "input",
+ "Y": "output"
+ },
+ "connections": {
+ "A0": [ 3 ],
+ "A1": [ 4 ],
+ "S": [ 5 ],
+ "Y": [ 2 ]
+ }
+ }
},
"netnames": {
"A0": {
@@ -70,20 +92,20 @@
"src": "./cells/mux2i/../../models/udp_mux_2to1_n/./sky130_fd_sc_ls__udp_mux_2to1_n.blackbox.v:34.1-45.10"
},
"ports": {
- "A0": {
- "direction": "input",
+ "Y": {
+ "direction": "output",
"bits": [ 2 ]
},
- "A1": {
+ "A0": {
"direction": "input",
"bits": [ 3 ]
},
- "S": {
+ "A1": {
"direction": "input",
"bits": [ 4 ]
},
- "Y": {
- "direction": "output",
+ "S": {
+ "direction": "input",
"bits": [ 5 ]
}
},
@@ -92,31 +114,31 @@
"netnames": {
"A0": {
"hide_name": 0,
- "bits": [ 2 ],
- "attributes": {
- "src": "./cells/mux2i/../../models/udp_mux_2to1_n/./sky130_fd_sc_ls__udp_mux_2to1_n.blackbox.v:41.12-41.14"
- }
- },
- "A1": {
- "hide_name": 0,
"bits": [ 3 ],
"attributes": {
"src": "./cells/mux2i/../../models/udp_mux_2to1_n/./sky130_fd_sc_ls__udp_mux_2to1_n.blackbox.v:42.12-42.14"
}
},
- "S": {
+ "A1": {
"hide_name": 0,
"bits": [ 4 ],
"attributes": {
- "src": "./cells/mux2i/../../models/udp_mux_2to1_n/./sky130_fd_sc_ls__udp_mux_2to1_n.blackbox.v:43.12-43.13"
+ "src": "./cells/mux2i/../../models/udp_mux_2to1_n/./sky130_fd_sc_ls__udp_mux_2to1_n.blackbox.v:43.12-43.14"
}
},
- "Y": {
+ "S": {
"hide_name": 0,
"bits": [ 5 ],
"attributes": {
"src": "./cells/mux2i/../../models/udp_mux_2to1_n/./sky130_fd_sc_ls__udp_mux_2to1_n.blackbox.v:44.12-44.13"
}
+ },
+ "Y": {
+ "hide_name": 0,
+ "bits": [ 2 ],
+ "attributes": {
+ "src": "./cells/mux2i/../../models/udp_mux_2to1_n/./sky130_fd_sc_ls__udp_mux_2to1_n.blackbox.v:41.12-41.13"
+ }
}
}
}
diff --git a/cells/mux4/sky130_fd_sc_ls__mux4.json b/cells/mux4/sky130_fd_sc_ls__mux4.json
index 95fbb2f..8b61b5f 100644
--- a/cells/mux4/sky130_fd_sc_ls__mux4.json
+++ b/cells/mux4/sky130_fd_sc_ls__mux4.json
@@ -37,6 +37,34 @@
}
},
"cells": {
+ "mux_4to20": {
+ "hide_name": 0,
+ "type": "udp_mux_4to2",
+ "parameters": {
+ },
+ "attributes": {
+ "module_not_derived": 1,
+ "src": "./cells/mux4/sky130_fd_sc_ls__mux4.functional.v:59.35-59.86"
+ },
+ "port_directions": {
+ "A0": "input",
+ "A1": "input",
+ "A2": "input",
+ "A3": "input",
+ "S0": "input",
+ "S1": "input",
+ "X": "output"
+ },
+ "connections": {
+ "A0": [ 3 ],
+ "A1": [ 4 ],
+ "A2": [ 5 ],
+ "A3": [ 6 ],
+ "S0": [ 7 ],
+ "S1": [ 8 ],
+ "X": [ 2 ]
+ }
+ }
},
"netnames": {
"A0": {
@@ -103,32 +131,32 @@
"src": "./cells/mux4/../../models/udp_mux_4to2/./sky130_fd_sc_ls__udp_mux_4to2.blackbox.v:34.1-51.10"
},
"ports": {
- "A0": {
- "direction": "input",
+ "X": {
+ "direction": "output",
"bits": [ 2 ]
},
- "A1": {
+ "A0": {
"direction": "input",
"bits": [ 3 ]
},
- "A2": {
+ "A1": {
"direction": "input",
"bits": [ 4 ]
},
- "A3": {
+ "A2": {
"direction": "input",
"bits": [ 5 ]
},
- "S0": {
+ "A3": {
"direction": "input",
"bits": [ 6 ]
},
- "S1": {
+ "S0": {
"direction": "input",
"bits": [ 7 ]
},
- "X": {
- "direction": "output",
+ "S1": {
+ "direction": "input",
"bits": [ 8 ]
}
},
@@ -137,51 +165,51 @@
"netnames": {
"A0": {
"hide_name": 0,
- "bits": [ 2 ],
- "attributes": {
- "src": "./cells/mux4/../../models/udp_mux_4to2/./sky130_fd_sc_ls__udp_mux_4to2.blackbox.v:44.12-44.14"
- }
- },
- "A1": {
- "hide_name": 0,
"bits": [ 3 ],
"attributes": {
"src": "./cells/mux4/../../models/udp_mux_4to2/./sky130_fd_sc_ls__udp_mux_4to2.blackbox.v:45.12-45.14"
}
},
- "A2": {
+ "A1": {
"hide_name": 0,
"bits": [ 4 ],
"attributes": {
"src": "./cells/mux4/../../models/udp_mux_4to2/./sky130_fd_sc_ls__udp_mux_4to2.blackbox.v:46.12-46.14"
}
},
- "A3": {
+ "A2": {
"hide_name": 0,
"bits": [ 5 ],
"attributes": {
"src": "./cells/mux4/../../models/udp_mux_4to2/./sky130_fd_sc_ls__udp_mux_4to2.blackbox.v:47.12-47.14"
}
},
- "S0": {
+ "A3": {
"hide_name": 0,
"bits": [ 6 ],
"attributes": {
"src": "./cells/mux4/../../models/udp_mux_4to2/./sky130_fd_sc_ls__udp_mux_4to2.blackbox.v:48.12-48.14"
}
},
- "S1": {
+ "S0": {
"hide_name": 0,
"bits": [ 7 ],
"attributes": {
"src": "./cells/mux4/../../models/udp_mux_4to2/./sky130_fd_sc_ls__udp_mux_4to2.blackbox.v:49.12-49.14"
}
},
- "X": {
+ "S1": {
"hide_name": 0,
"bits": [ 8 ],
"attributes": {
- "src": "./cells/mux4/../../models/udp_mux_4to2/./sky130_fd_sc_ls__udp_mux_4to2.blackbox.v:50.12-50.13"
+ "src": "./cells/mux4/../../models/udp_mux_4to2/./sky130_fd_sc_ls__udp_mux_4to2.blackbox.v:50.12-50.14"
+ }
+ },
+ "X": {
+ "hide_name": 0,
+ "bits": [ 2 ],
+ "attributes": {
+ "src": "./cells/mux4/../../models/udp_mux_4to2/./sky130_fd_sc_ls__udp_mux_4to2.blackbox.v:44.12-44.13"
}
}
}