jsl/si/signal-ends¶
Package name: jsl/si/signal-ends
Signal Ends
With signal integrity topologies, it is often necessary to expose the actual component signal endpoint of a topology without changing the design module hierarchy. The functions in this package are intended to help in this case.
TODO - Add a specific example here and a diagram. We should consider using the USB-C to A converter design and renders showing the shortcoming and how this helps us solve that issue.
Summary¶
NoSignalEndError¶
Constructors¶
Function | Description |
---|---|
NoSignalEndError | Constructor for defstruct NoSignalEndError |
Functions¶
Function | Description |
---|---|
NoSignalEndError |
General Definitions¶
Function | Description |
---|---|
set-signal-end | Set the Signal End Property for a Topology Port |
find-signal-end | Find the signal end associated with this module port |
get-signal-end | Get the Signal End Property of a Topology Port |
Definitions¶
NoSignalEndError¶
public defstruct NoSignalEndError <: Exception :
port-name: String
port-name: String
Constructors¶
NoSignalEndError¶
Constructor for defstruct NoSignalEndError
public defn NoSignalEndError (port-name:String)
Functions¶
NoSignalEndError¶
public defn NoSignalEndError (conn:JITXObject) -> NoSignalEndError
- Returns
NoSignalEndError
General Definitions¶
set-signal-end¶
Set the Signal End Property for a Topology Port
public defn set-signal-end (conn:JITXObject, sig-end:JITXObject)
conn: JITXObject
- A publicport
of apcb-module
for which we need to publish an endpoint.sig-end: JITXObject
- This is the component/module port or abstract port to expose as the signal end.
Many times, a module may not expose the end point of a topology on its port. We might have pull-up/down resistors, blocking caps, or other components in series.
This function allows us to publish the true endpoint of the topology
via a property
statement.
This function is typically only used inside the module that is providing the endpoint of the topology.
find-signal-end¶
Find the signal end associated with this module port
public defn find-signal-end (conn:JITXObject) -> JITXObject
- Returns
JITXObject
- The signal end port for this topology. In most applications, this is aPin
object from apcb-component
instance.
This function is recursive.
This function searches through a tree of pcb-module ports to find
the physical signal end port on a component. The first port found that
does not have a signal-end
property will be assumed to be the signal end.
get-signal-end¶
Get the Signal End Property of a Topology Port
public defn get-signal-end (conn:JITXObject) -> JITXObject
conn: JITXObject
-Pin
object from apcb-module
- Returns
JITXObject
- The signal end port for this topology. In most applications, this is aPin
object from apcb-component
instance. - Throws
NoSignalEndError
- When the passed port object does not have a definedsignal-end
.
This function returns the port that is the end of the signal topology we are attempting to inspect. This will typically be a port from an internal component or abstract port.
Related Packages¶
Forwarded by package: jsl/si