* Disclaimer: This software code and all associated documentation, comments
*             or other information (collectively "Software") is provided
*             "AS IS" without warranty of any kind. MICRON TECHNOLOGY, INC.
*             ("MTI") EXPRESSLY DISCLAIMS ALL WARRANTIES EXPRESS OR IMPLIED,
*             INCLUDING BUT NOT LIMITED TO, NONINFRINGEMENT OF THIRD PARTY
*             RIGHTS, AND ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS
*             FOR ANY PARTICULAR PURPOSE. MTI DOES NOT WARRANT THAT THE
*             SOFTWARE WILL MEET YOUR REQUIREMENTS, OR THAT THE OPERATION OF
*             THE SOFTWARE WILL BE UNINTERRUPTED OR ERROR-FREE. FURTHERMORE,
*             MTI DOES NOT MAKE ANY REPRESENTATIONS REGARDING THE USE OR THE
*             RESULTS OF THE USE OF THE SOFTWARE IN TERMS OF ITS CORRECTNESS,
*             ACCURACY, RELIABILITY, OR OTHERWISE. THE ENTIRE RISK ARISING OUT
*             OF USE OR PERFORMANCE OF THE SOFTWARE REMAINS WITH YOU. IN NO
*             EVENT SHALL MTI, ITS AFFILIATED COMPANIES OR THEIR SUPPLIERS BE
*             LIABLE FOR ANY DIRECT, INDIRECT, CONSEQUENTIAL, INCIDENTAL, OR
*             SPECIAL DAMAGES (INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS
*             OF PROFITS, BUSINESS INTERRUPTION, OR LOSS OF INFORMATION)
*             ARISING OUT OF YOUR USE OF OR INABILITY TO USE THE SOFTWARE,
*             EVEN IF MTI HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
*             Because some jurisdictions prohibit the exclusion or limitation
*             of liability for consequential or incidental damages, the above
*             limitation may not apply to you.
*             Copyright 2019 Micron Technology, Inc. All rights reserved.

* Node Naming Convention:
* XX_DIE-XX is at the die pad side
* XX_BUFFER is at the buffer side

.subckt z11b_x8_ondie_PDN
+ DM#_DIE-41
+ DQ0_DIE-51
+ DQ1_DIE-44
+ DQ2_DIE-53
+ DQ3_DIE-46
+ DQ4_DIE-61
+ DQ5_DIE-56
+ DQ6_DIE-63
+ DQ7_DIE-58
+ DQS-C_DIE-37
+ DQS-T_DIE-39
+ VDDQ_DIE-4
+ VDDQ_DIE-8
+ VDDQ_DIE-13
+ VDDQ_DIE-16
+ VDDQ_DIE-20
+ VDDQ_DIE-25
+ VDDQ_DIE-36
+ VDDQ_DIE-48
+ VDDQ_DIE-52
+ VDDQ_DIE-62
+ VDDQ_DIE-40
+ VDDQ_DIE-45
+ VDDQ_DIE-57
+ VSS_DIE-2
+ VSS_DIE-6
+ VSS_DIE-10
+ VSS_DIE-11
+ VSS_DIE-15
+ VSS_DIE-18
+ VSS_DIE-22
+ VSS_DIE-23
+ VSS_DIE-27
+ VSS_DIE-28
+ VSS_DIE-32
+ VSS_DIE-34
+ VSS_DIE-38
+ VSS_DIE-42
+ VSS_DIE-43
+ VSS_DIE-47
+ VSS_DIE-50
+ VSS_DIE-54
+ VSS_DIE-55
+ VSS_DIE-59
+ VSS_DIE-60
+ VSS_DIE-64
+ VSS_DIE-66
+ VSS_DIE-69
+ VSS_DIE-72
+ VSS_DIE-93
+ VSS_DIE-109
+ VSS_DIE-117
+ DM#_BUFFER     DM#_VSS_BUFFER     DM#_VDDQ_BUFFER
+ DQ0_BUFFER     DQ0_VSS_BUFFER     DQ0_VDDQ_BUFFER
+ DQ1_BUFFER     DQ1_VSS_BUFFER     DQ1_VDDQ_BUFFER
+ DQ2_BUFFER     DQ2_VSS_BUFFER     DQ2_VDDQ_BUFFER
+ DQ3_BUFFER     DQ3_VSS_BUFFER     DQ3_VDDQ_BUFFER
+ DQ4_BUFFER     DQ4_VSS_BUFFER     DQ4_VDDQ_BUFFER
+ DQ5_BUFFER     DQ5_VSS_BUFFER     DQ5_VDDQ_BUFFER
+ DQ6_BUFFER     DQ6_VSS_BUFFER     DQ6_VDDQ_BUFFER
+ DQ7_BUFFER     DQ7_VSS_BUFFER     DQ7_VDDQ_BUFFER
+ DQS-C_BUFFER   DQS-C_VSS_BUFFER   DQS-C_VDDQ_BUFFER
+ DQS-T_BUFFER   DQS-T_VSS_BUFFER   DQS-T_VDDQ_BUFFER

.inc 'z11b_ondie_decoupling_perdq.iss'

********************************************************************************
**** Signal DIE to BUFFER
********************************************************************************
r_DM    DM#_DIE-41    DM#_BUFFER     r='rdie2buffer'
r_DQ0   DQ0_DIE-51    DQ0_BUFFER     r='rdie2buffer'
r_DQ1   DQ1_DIE-44    DQ1_BUFFER     r='rdie2buffer' 
r_DQ2   DQ2_DIE-53    DQ2_BUFFER     r='rdie2buffer'
r_DQ3   DQ3_DIE-46    DQ3_BUFFER     r='rdie2buffer'
r_DQ4   DQ4_DIE-61    DQ4_BUFFER     r='rdie2buffer'
r_DQ5   DQ5_DIE-56    DQ5_BUFFER     r='rdie2buffer'
r_DQ6   DQ6_DIE-63    DQ6_BUFFER     r='rdie2buffer'
r_DQ7   DQ7_DIE-58    DQ7_BUFFER     r='rdie2buffer'
r_DQSC  DQS-C_DIE-37  DQS-C_BUFFER   r='rdie2buffer' 
r_DQST  DQS-T_DIE-39  DQS-T_BUFFER   r='rdie2buffer' 

.param rdie2buffer = 0.01

********************************************************************************
**** VDDQ Rail
********************************************************************************

rVDDQ1   VDDQ_DIE-4         VDDQ_DIE-8         r='4*rvddq_per_drop'
rVDDQ2   VDDQ_DIE-8         VDDQ_DIE-13        r='5*rvddq_per_drop'
rVDDQ3   VDDQ_DIE-13        VDDQ_DIE-16        r='3*rvddq_per_drop'
rVDDQ4   VDDQ_DIE-16        VDDQ_DIE-20        r='4*rvddq_per_drop'
rVDDQ5   VDDQ_DIE-20        VDDQ_DIE-25        r='5*rvddq_per_drop'
rVDDQ6   VDDQ_DIE-25        VDDQ_DIE-36        r='11*rvddq_per_drop'
rVDDQ7   VDDQ_DIE-36        DQS-C_VDDQ_BUFFER  r='1*rvddq_per_drop'
rVDDQ8   DQS-C_VDDQ_BUFFER  DQS-T_VDDQ_BUFFER  r='2*rvddq_per_drop'
rVDDQ9   DQS-T_VDDQ_BUFFER  VDDQ_DIE-40        r='1*rvddq_per_drop'
rVDDQ10  VDDQ_DIE-40        DM#_VDDQ_BUFFER    r='1*rvddq_per_drop'
rVDDQ11  DM#_VDDQ_BUFFER    DQ1_VDDQ_BUFFER    r='3*rvddq_per_drop'
rVDDQ12  DQ1_VDDQ_BUFFER    VDDQ_DIE-45        r='1*rvddq_per_drop'
rVDDQ13  VDDQ_DIE-45        DQ3_VDDQ_BUFFER    r='1*rvddq_per_drop'
rVDDQ14  DQ3_VDDQ_BUFFER    VDDQ_DIE-48        r='1*rvddq_per_drop'
rVDDQ15  VDDQ_DIE-48        DQ0_VDDQ_BUFFER    r='2*rvddq_per_drop'
rVDDQ16  DQ0_VDDQ_BUFFER    VDDQ_DIE-52        r='3*rvddq_per_drop'
rVDDQ17  VDDQ_DIE-52        DQ2_VDDQ_BUFFER    r='1*rvddq_per_drop'
rVDDQ18  DQ2_VDDQ_BUFFER    DQ5_VDDQ_BUFFER    r='3*rvddq_per_drop'
rVDDQ19  DQ5_VDDQ_BUFFER    VDDQ_DIE-57        r='1*rvddq_per_drop'
rVDDQ20  VDDQ_DIE-57        DQ7_VDDQ_BUFFER    r='1*rvddq_per_drop'
rVDDQ21  DQ7_VDDQ_BUFFER    DQ4_VDDQ_BUFFER    r='3*rvddq_per_drop'
rVDDQ22  DQ4_VDDQ_BUFFER    VDDQ_DIE-62        r='1*rvddq_per_drop'
rVDDQ23  VDDQ_DIE-62        DQ6_VDDQ_BUFFER    r='1*rvddq_per_drop'

.param rvddq_per_drop = 43m

********************************************************************************
**** VSS Rail
********************************************************************************

rVSS1    VSS_DIE-2          VSS_DIE-6          r='4*rvss_per_drop'
rVSS2    VSS_DIE-6          VSS_DIE-10         r='4*rvss_per_drop'
rVSS3    VSS_DIE-10         VSS_DIE-11         r='1*rvss_per_drop'
rVSS4    VSS_DIE-11         VSS_DIE-15         r='4*rvss_per_drop'
rVSS5    VSS_DIE-15         VSS_DIE-18         r='3*rvss_per_drop'
rVSS6    VSS_DIE-18         VSS_DIE-22         r='4*rvss_per_drop'
rVSS7    VSS_DIE-22         VSS_DIE-23         r='1*rvss_per_drop'
rVSS8    VSS_DIE-23         VSS_DIE-27         r='4*rvss_per_drop'
rVSS9    VSS_DIE-27         VSS_DIE-28         r='1*rvss_per_drop'
rVSS10   VSS_DIE-28         VSS_DIE-32         r='4*rvss_per_drop'
rVSS11   VSS_DIE-32         VSS_DIE-34         r='2*rvss_per_drop'
rVSS12   VSS_DIE-34         DQS-C_VSS_BUFFER   r='3*rvss_per_drop'
rVSS13   DQS-C_VSS_BUFFER   VSS_DIE-38         r='1*rvss_per_drop'
rVSS14   VSS_DIE-38         DQS-T_VSS_BUFFER   r='1*rvss_per_drop'
rVSS15   DQS-T_VSS_BUFFER   DM#_VSS_BUFFER     r='2*rvss_per_drop'
rVSS16   DM#_VSS_BUFFER     VSS_DIE-42         r='1*rvss_per_drop'
rVSS17   VSS_DIE-42         VSS_DIE-43         r='1*rvss_per_drop'
rVSS18   VSS_DIE-43         DQ1_VSS_BUFFER     r='1*rvss_per_drop'
rVSS19   DQ1_VSS_BUFFER     DQ3_VSS_BUFFER     r='2*rvss_per_drop'
rVSS20   DQ3_VSS_BUFFER     VSS_DIE-47         r='1*rvss_per_drop'
rVSS21   VSS_DIE-47         VSS_DIE-50         r='3*rvss_per_drop'
rVSS22   VSS_DIE-50         DQ0_VSS_BUFFER     r='1*rvss_per_drop'
rVSS23   DQ0_VSS_BUFFER     DQ2_VSS_BUFFER     r='2*rvss_per_drop'
rVSS24   DQ2_VSS_BUFFER     VSS_DIE-54         r='1*rvss_per_drop'
rVSS25   VSS_DIE-54         VSS_DIE-55         r='1*rvss_per_drop'
rVSS26   VSS_DIE-55         DQ5_VSS_BUFFER     r='1*rvss_per_drop'
rVSS27   DQ5_VSS_BUFFER     DQ7_VSS_BUFFER     r='2*rvss_per_drop'
rVSS28   DQ7_VSS_BUFFER     VSS_DIE-59         r='1*rvss_per_drop'
rVSS29   VSS_DIE-59         VSS_DIE-60         r='1*rvss_per_drop'
rVSS30   VSS_DIE-60         DQ4_VSS_BUFFER     r='1*rvss_per_drop'
rVSS31   DQ4_VSS_BUFFER     DQ6_VSS_BUFFER     r='2*rvss_per_drop'
rVSS32   DQ6_VSS_BUFFER     VSS_DIE-64         r='1*rvss_per_drop'

.param rvss_per_drop = 39m


********************************************************************************
**** Decoupling capacitor placements
********************************************************************************

x_decap1   VDDQ_DIE-4        0  VSS_DIE-2          0  z11b_ondie_decoupling_perdq
x_decap2   VDDQ_DIE-8        0  VSS_DIE-6          0  z11b_ondie_decoupling_perdq
x_decap3   VDDQ_DIE-8        0  VSS_DIE-10         0  z11b_ondie_decoupling_perdq
x_decap4   VDDQ_DIE-13       0  VSS_DIE-11         0  z11b_ondie_decoupling_perdq
x_decap5   VDDQ_DIE-16       0  VSS_DIE-15         0  z11b_ondie_decoupling_perdq
x_decap6   VDDQ_DIE-16       0  VSS_DIE-18         0  z11b_ondie_decoupling_perdq
x_decap7   VDDQ_DIE-20       0  VSS_DIE-22         0  z11b_ondie_decoupling_perdq
x_decap8   VDDQ_DIE-20       0  VSS_DIE-23         0  z11b_ondie_decoupling_perdq
x_decap9   VDDQ_DIE-25       0  VSS_DIE-27         0  z11b_ondie_decoupling_perdq
x_decap10  VDDQ_DIE-25       0  VSS_DIE-28         0  z11b_ondie_decoupling_perdq
x_decap11  VDDQ_DIE-36       0  VSS_DIE-32         0  z11b_ondie_decoupling_perdq
x_decap12  DM#_VSS_BUFFER    0  DM#_VDDQ_BUFFER    0  z11b_ondie_decoupling_perdq
x_decap13  DQ0_VSS_BUFFER    0  DQ0_VDDQ_BUFFER    0  z11b_ondie_decoupling_perdq
x_decap14  DQ1_VSS_BUFFER    0  DQ1_VDDQ_BUFFER    0  z11b_ondie_decoupling_perdq
x_decap15  DQ2_VSS_BUFFER    0  DQ2_VDDQ_BUFFER    0  z11b_ondie_decoupling_perdq
x_decap16  DQ3_VSS_BUFFER    0  DQ3_VDDQ_BUFFER    0  z11b_ondie_decoupling_perdq
x_decap17  DQ4_VSS_BUFFER    0  DQ4_VDDQ_BUFFER    0  z11b_ondie_decoupling_perdq
x_decap18  DQ5_VSS_BUFFER    0  DQ5_VDDQ_BUFFER    0  z11b_ondie_decoupling_perdq
x_decap19  DQ6_VSS_BUFFER    0  DQ6_VDDQ_BUFFER    0  z11b_ondie_decoupling_perdq
x_decap20  DQ7_VSS_BUFFER    0  DQ7_VDDQ_BUFFER    0  z11b_ondie_decoupling_perdq
x_decap21  DQS-C_VSS_BUFFER  0  DQS-C_VDDQ_BUFFER  0  z11b_ondie_decoupling_perdq
x_decap22  DQS-T_VSS_BUFFER  0  DQS-T_VDDQ_BUFFER  0  z11b_ondie_decoupling_perdq


.ends z11b_x8_ondie_PDN


