| <?xml version="1.0"?> |
| <!-- Make sure existing interconnect values are preserved. --> |
| <xml> |
| <pb_type name="parent"> |
| <input name="ia1"/> |
| <input name="ia2"/> |
| <input name="ia3"/> |
| <output name="o0"/> |
| <output name="o1"/> |
| <pb_type name="childa"> |
| <input name="i1"/> |
| <input name="i2"/> |
| <output name="o"/> |
| </pb_type> |
| <pb_type name="childb"> |
| <input name="i"/> |
| <output name="o"/> |
| </pb_type> |
| <pb_type name="childc"> |
| <input name="i"/> |
| <output name="o"/> |
| </pb_type> |
| <interconnect> |
| <direct input="parent.ia1" name="childa-i1" output="childa.i1"/> |
| <mux name="childa-input-i2" input="parent.ia2 parent.ia3" output="childa.i2"> |
| <pack_pattern name="MUX1" in_port="parent.ia2" output="childa.i2" /> |
| <pack_pattern name="MUX2" in_port="parent.ia3" output="childa.i2" /> |
| </mux> |
| <direct input="childa.o" name="parent-o0" output="parent.o0"> |
| <pack_pattern name="CARRY" in_port="childa.o" output="parent.o0" /> |
| </direct> |
| <direct input="childa.o" name="childb-i" output="childb.i"/> |
| <mux name="childc-input" input="childa.o childb.o" output="childc.i"/> |
| <mux name="output" input="childa.o childb.o childc.o" output="parent.o1"/> |
| </interconnect> |
| </pb_type> |
| </xml> |