Closed yipengsun closed 3 years ago
Warning: Altium's "copy as text" function does not preserve the order of a group of Signal texts. This could lead to assigning wrong pins.
[x] n P_LV_RETURN
get tied together on JPU/JPL, resulting in 1 signal name chosen as net name and (n-1) signal names inconsistent with net name. 404 out of 1085 warnings seem to be of this type.
:%s/_LV_RETURN\; node//n
[x] Some naming inconsistencies for unconnected pins, expected since to be tied to GND.
Using vim command :%s/Tom\: GND\; node\: DCB\: None//n
, 514 out of 1085 warnings seem to be of this type.
Excluding above, "only" 167 errors left, using vim command :g/_RETURN\; node\|Tom\: GND\; node\: DCB\: None/d
.
Possible solution to check the 1-to-n nets: use function readnets
that puts all nodes of such net in a dict (per net), and check against this dict when signal IDs do not match.
[Reference: FullBP_Notes_TomO_07Feb2019.pdf]
[x] ALL FRO (never-used) elink inputs must be connected to 1.5V / ground bias connections:
JD#_FRO_DC#_ELK_CH#_P
-> JD#_FRO_ELK_P
and JD#_FRO_DC#_ELK_CH#_N
-> JD#_FRO_ELK_N
in JD pin assignmentsEC_SEC_CLK_ELK
? To verify that these should be input ELKs too. - ZSYJD#_FRO_ELK_
P/N to R(100Ohm) (to JD#_..._1V5
/GND
not done)JD0_FRO_EC_SEC_CLK_ELK_N
, JD#_FRO_MC_SEC_DIN_ELK
and JD#_FRO_EC_SEC_DIN_ELK
:
need to treat separately and designate FRO_SEC
, i.e. JD0_FRO_SEC_ELK_N
.[x] For each JD, add ADC connections for the ground sense associated with the three most remote hybrid ~power group~s P3, P2_EAST, P1_WEST. Example:
LV_SENSE_GND
in the aux list for identifying the depopulated.[x] Add remote reset signal line for each DCB master DCB slot:
JD# H43
to JD#_REMOTE_RESETB
. (See PDF above for routing details. Note that the routing to JT connectors will require updating the Telemetry Control Board design for final system.)
This is done by updating Signal IDs for all H43
s in input/backplane_mapping_DCB.yml, and adding a NetlistGen rule for JD#_REMOTE_RESETB
. - ZSY[x] Check usage of the following ref designators in component naming to address depopulation and part type swaps to facilitate BP inner, middle, and outer variants (see ‘Backplane Variants and DCB Slot Depopulation’ diagram below)
RB_
: Installed for beta (B) variant (and 'B special' aka gamma variant)RBSP_
: Installed for ‘B special’ (aka gamma aka UTa-plane outer backplane...) variantCxRB_
: Is capacitor, except for beta variant where a resistor is needed instead. JD#_1V5
is from two LVR channels (master, slave) that are tied together on both ends, the NetlistGen DCB rule should no longer include _M
/_S
at the end, i.e. JD0_JPL0_1V5
.For EC_ADC_REF13
, on the DCB yaml file, no JD
connector is specified. How do we know that JD0
should connect to JP0
's sense ground?
OK, it seems that we should assume JD#_EC_ADC_REFXX
should be connected to JP#
's sense ground.
The following inputs are associated with the unused secondary slow control connections. These are tied to a common bias set separate from the other FRO inputs. The separate components are required to accommodate the 100 terminations already installed on the DCB. Dual parallel 100 ohm resistors are used for each leg to ensure there is at least a 350 to 400 mV differential voltage present. The redundant 100 ohm components are used to simplify the assembly logistics by negating the need to add another component value to the assembly.
So the pin assignments should be updated for each JD such that: JD0_FRO_MC_SEC_DIN_ELK_N --> JD0_FRO_SEC_ELK_N JD0_FRO_MC_SEC_DIN_ELK_P --> JD0_FRO_SEC_ELK_P JD0_FRO_EC_SEC_DIN_ELK_N --> JD0_FRO_SEC_ELK_P JD0_FRO_EC_SEC_DIN_ELK_P --> JD0_FRO_SEC_ELK_N JD0_FRO_EC_SEC_CLK_ELK_N --> JD0_FRO_SEC_ELK_P JD0_FRO_EC_SEC_CLK_ELK_P --> JD0_FRO_SEC_ELK_N
For each JD, add ADC connections for the ground sense associated with the three most remote hybrid power groups P3, P2_EAST, P1_WEST.
These are not power groups, these are hybrids. This rule in general seems ambiguous because a DCB is not uniquely associated with a pigtail. Please clarify.
As described in [Reference: FullBP_Notes_TomO_07Feb2019.pdf] by @tobannon , this is added input to ADC for measuring hybrids that are physically present in all variants (ie P1_WEST, P2_EAST, & P3). He wanted each DCB to associate with a PT, i.e. JD0-JP0 etc. This raises a good point: if JD2-JP2, then on beta JP2 won't have JD2 to connect to.
Discussed with Tom. He accepts the outcome and gave the go-ahead. In addition, we have some redundancy in these measurements, due to the horizontal power groupings. -ZSY
[x]
SDA
andSCL
are flipped. (need to change in both pigtail and dcb mapping Excel docs). Edit: I have updated the trueType mapping Excel to v5.2, and pushed the changes. - ZSY[x]
input/BrkOutBrd_Pin_Assignments_..._.xls
needs to be completely updated, because Tom has changed almost everything related on the schematic. Tom did not update the Excel file, so we need to copy and paste from Altium. Not surprisingly, Altium'scopy as text
function does not preserve the order, so anticipate some hours wasted here. To check if telemetry JT pins changed. Edit: This has been updated by me and double-checked by Tom. (Did not find JT change, although Tom mentioned he'd add GND there are. But GND on JT should be transparent to mapping.) - ZSY[x]
THERMISTOR_N
in Tom's list is connected toAGND
(need to change our source code/change manually). This single DCB pin is connected to multiple PigTail pins (becauseAGND
is on DCB). Edit: Tom agreed to leave this case for manual editing.[x] A few cases of shortening
THERMISTOR
toTHERM
.[x] naming inconsistency, Zishuo: JP0_UNUSED; Tom: GND; e.g. JP pins
B29, C29, D29, E29, E34, I10
This means adding a rule that assignGND
instead ofUNUSED
.[x] naming inconsistency: for single-ended signals HYB_i2C/EC_RESET/EC_ADC, Tom appended
_P
to the signal ID. _Edit: This is addressed by adding a new rule, RulePT_PTSingleToDiff. For ECADC, Tom also added prefixTHERM
to signal ID[x] Some naming inconsistencies for unconnected pins, expected since to be tied to GND. Using vim command
:%s/Tom\: GND\; node\: DCB\: None//n
, 514 out of 1085 warnings seem to be of this type. This is addressed by classifying Signal ID, and change their rules to giveGND
:_ASIC_
: if unconnected, always ground_CLK_
: if unconnected, always ground_TFC_
: if unconnected, always ground_THERMISTOR_
: if unconnected, always ground_I2C_
&_RESET_
: if _P unconnected, always ground; if _P connected, _N need to connect to ??GND
. So we generalize theUnused
rule to select Signal IDs with excelfont_color.tint != 0.0
, and make themGND
.[x] Tom has some
JD_JP
with no DCB pin, e.g.netlist name inconsistent: Zishuo: JP0_P1_EAST_I2C_SDA_N; Tom: JD2_JP0_EC_HYB_i2C_SDA_5_N; node: DCB: None, DCB_PIN: None, PT: JP0, PT_PIN: H9
[x]
netlist name inconsistent: Zishuo: JP0_P1_WEST_RESET_N; Tom: JD0_JP0_EC_RESET_GPIO_5_N; node: DCB: None, DCB_PIN: None, PT: JP0, PT_PIN: I22
[x]
Edit: This is also caused by telemetry connection as below.node in NET JD4_JP0_EC_ADC_5 not present in Tom's net: DCB: JD4, DCB_PIN: H42, PT: JP0, PT_PIN: C24
. This is probably due to component entering between the nodes.THERMISTOR_P
assigned as e.g.JP0_JT0_P1_EAST_THERM_P
by Tom, but asJD2H46_JP0J12_EC_ADC_7
by Zishuo This is due to the change of rule for some P_THERMISTOR: for 8-ASIC hybrids, theEAST
of two thermistors is rerouted to JT telemetry board, e.g.JP1_JT0_P1_EAST_THERM_P
,JP1_JT0_P1_EAST_THERM_P
,JP0_JT0_P1_EAST_THERM_P
. Specifically, for the originalJD2H46-JP0J12
connection, becauseJP0J12=JP0_P1_EAST_THERM_P
, now it'sJP0J12-JT0XX
andJD2H46_FRO
. Proposed solution: change of rule to overwrite original connection, by matching JP + SigID on table JT in BrkOutBrd_Pin_Assignments.xlsx, and giveForReferenceOnly
attribute toJD_EC_ADC
pin. Edit: Tom agree to do this by hand.error log after excluding understood types:
Not implemented telemetry: