-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add ARINC818 protocol #56
base: main
Are you sure you want to change the base?
Conversation
@@ -0,0 +1,47 @@ | |||
#use-added-syntax(jitx) | |||
defpackage jsl/examples/protocols/sata/SATA-main: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Package name is SATA instead of ARINC818
public pcb-bundle ARINC818 (type:ARINC818Type) : | ||
name = "ARINC818" | ||
description = "ARINC 818 AVDB protocol" | ||
switch(type) : | ||
TX : make-port(`TX, diff-pair) | ||
RX : make-port(`RX, diff-pair) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
For other unidirectional standards like DisplayPort, we don't differentiate between transmit and receive.
It feels like this attempting to implement a Cardinality style implementation. Ie - this is a output, this is an input, kind of thing.
Side note - is the ARINC818 really just a diff-pair ? Do we have a copy of the spec ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The standard is just a uni-directional diff-pair modeled on FiberChannel but the physical layer implementation is pretty well unspecified. I was trying to force an ordering by the type of bundle (TX -> RX) only.
@param p-tx The TX pin | ||
@param p-rx The RX pin | ||
<DOC> | ||
public defn check-correct-pins (p-tx:JITXObject p-rx:JITXObject): |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We have a check-single-pin
already:
jsl/src/pin-assignment/checks.stanza
Line 9 in 6c9232f
public defn check-single-pin (p-set:JITXObject ...): |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yep, tried to use that first. But the error message would not make sense in the context that you did not connect the TX to RX but instead connected RX to TX. The reason to make this directional is that some implementations are optical and in that case, you need some more directionality?
No description provided.