All, Two issues brought up in today's meeting - Test Points and Bus switches. The following shows how these would be implemented in EMD. Walter Test Points Consider the following emd file consisting of a backplane and one connection between pin 1 of two connectors (J1 and J2). Also assume there is a test point on the net (DATA). The test points get exposed as external pins, and can be optionally used in views that support the test point node. Typically s-parameter models would normally not expose these test points. [Module] Simple_Backplane [mPin] J1.1 TP.1 J2.2 [Extended Nets] DATA J1.1 J2.1 TP1.1 [View] wline Hspice 3GHz DATA J1.1 J2.1 TP1.1 file= DATA_wline.mod subckt=DATA [View] sparam Hspice 20GHz DATA J1.1 J2.1 file= DATA_sparam.mod subckt=DATA The wline view exposes TP1.1 in addition to J1.1 and J2.1 The sparam view is a single Touchstone file between J1.1 and J2.1, it does not expose TP1.1 Bus switches This can be done in two different ways. Tx.1 is an output pin that goes to the input of a bus (or mux) switch (BUS.1) The outputs of BUS are BUS.2 and BUS.3. First way is to create two extended nets, and include the bus switch model as a subckt inside the interconnect [Module] Bus_switch [mPin] Tx.1 Rx1.1 Rx2.1 [Extended Nets] DATA1 Tx.1 Rx1.1 DATA2 Tx.1 Rx2.1 [View] wline Hspice 3GHz DATA1 Tx.1 Rx1.1 file= DATA.mod subckt=DATA1 DATA2 Tx.1 Rx2.1 file= DATA.mod subckt=DATA2 DATA.mod .subckt DATA1 Tx Rx w1 Tx 0 bus_1 0 N=1 RLGCmodel=wline L=.1 xbus bus_in bus_out bus .include bus.mod w2 bus_out 0 Rx bus 0 RLGCmodel=wline L=.2 .ends DATA1 * .subckt DATA2 Tx Rx w1 Tx 0 bus_1 0 N=1 RLGCmodel=wline L=.1 xbus bus_in bus_out bus .include bus.mod w2 bus_out 0 Rx bus 0 RLGCmodel=wline L=.3 .ends DATA2 Second way is to create three extended (electrical) nets, and use an IBIS bus switch model (not supported today in IBIS). The EDA tool would determine that BUS1 is a bus or mux (either by using an enhanced IBIS file, or a EDA private library that understood bus switches). The EDA tool would generate the two electrical/extended nets, inserting the appropriate bus model. [Module] Bus_switch [mPin] Tx.1 Rx1.1 Rx2.1 [Components] BUS1 bus.ibs component=bus [Extended Nets] Tx Tx.1 BUS1.1 DATA1 BUS1.2 Rx1.1 DATA2 BUS1.3 Rx2.1 [View] wline Hspice 3GHz Tx Tx.1 BUS1.1 file= DATA.mod subckt=Tx DATA1 BUS1.2 Rx1.1 file= DATA.mod subckt=DATA1 DATA2 BUS1.3 Rx2.1 file= DATA.mod subckt=DATA2 DATA.mod .subckt Tx Tx Bus w1 Tx 0 Bus 0 RLGCmodel=wline L=.1 .ends Tx * .subckt DATA1 Bus Rx w2 Bus 0 Rx 0 RLGCmodel=wline L=.2 .ends DATA1 * .subckt DATA2 Bus Rx w2 Bus 0 Rx 0 RLGCmodel=wline L=.3 .ends DATA2