Pour un projet que je conçois, j'utilise une SDRAM IS42s32800 (TSOP) avec un microcontrôleur LPC1788 (QFP). Sur le PCB, j'ai 4 couches avec un plan de masse juste en dessous de la couche de signal supérieure et un plan VDD juste au-dessus de la couche de signal inférieure. Les traces moyennes entre le CPU et la RAM sont de 60 mm de long, la trace la plus longue étant de 97 mm, la ligne d'horloge de 53 mm de long et aucune ligne n'a de résistance de terminaison montée. Ce qui m'intéresse, c'est s'il est absolument nécessaire ou non d'avoir des résistances de terminaison sur les lignes DRAM. Cette conception fonctionnerait-elle sans eux ou ne devrais-je même pas prendre la peine de l'essayer sans les résistances?
20
Réponses:
Si la fréquence / le temps de montée et la distance sont suffisamment élevés pour causer des problèmes, alors oui, vous avez besoin d'une résiliation.
Modèle de ligne de transmission
À la trace la plus longue de 97 mm, je pense que vous vous en sortirez probablement sans eux (compte tenu des résultats des calculs ci-dessous). vous en avez besoin à partir des résultats.
Si vous ne disposez pas de cette fonctionnalité, vous pouvez effectuer des calculs approximatifs à l'aide de SPICE.
J'ai eu un petit problème avec LTSpice , voici les résultats (n'hésitez pas à corriger les choses si quelqu'un voit une erreur)
Si nous supposons:
Utilisation de wCalc (un outil de calculateur de ligne de transmission) réglé en mode microruban et en entrant les chiffres, nous obtenons:
Maintenant, si nous entrons ces valeurs dans LTSpice en utilisant l'élément de ligne de transmission avec perte et simulons, nous obtenons:
Voici la simulation du circuit ci-dessus:
De ce résultat, nous pouvons voir avec une impédance de sortie de 100 Ω que nous ne devrions pas nous attendre à des problèmes.
Juste pour l'intérêt, disons que nous avions un pilote avec une impédance de sortie de 20 Ω, le résultat serait assez différent (même à 50 Ω, il y a 0,7 V de dépassement / de sous-dépassement. Notez que cela est en partie dû à la capacité d'entrée de 5pF provoquant la sonnerie, le dépassement à 2 ns serait moindre sans capacité [~ 3,7 V], donc comme Kortuk le souligne, vérifiez également les paramètres localisés même s'il n'est pas traité comme une TLine - voir fin):
Une règle de base est que si le temps de retard (temps pour que le signal passe du conducteur à l'entrée) est supérieur à 1/6 du temps de montée, nous devons alors traiter la trace comme une ligne de transmission (notez que certains disent 1/8, certains disons 1 / 10ème, qui sont plus conservateurs) Avec un retard de 0,525 ns et un temps de montée de 2ns donnant 2 / 0,525 = 3,8 (<6), nous devons le traiter comme une TLine. Si nous augmentons le temps de montée à 4ns -> 4 / 0,525 = 7,61 et faisons à nouveau la même simulation de 20 Ω, nous obtenons:
Nous pouvons voir que la sonnerie est beaucoup moins importante, donc aucune action ne doit être prise.
Donc, pour répondre à la question, en supposant que je suis proche des paramètres, il est peu probable que les laisser de côté vous cause des problèmes - d'autant plus que j'ai choisi un temps de montée / descente de 2ns, ce qui est plus rapide que la fiche technique du LPC1788 (p.88 Tr min = 3 ns, Tfall min = 2,5 ns)
Pour être sûr, mettre une résistance série 50 Ω sur chaque ligne ne ferait probablement pas de mal.
Modèle à composants regroupés
Comme indiqué ci-dessus, même si la ligne n'est pas une ligne de transmission, nous pouvons toujours avoir une sonnerie causée par les paramètres localisés. La trace L et le récepteur C peuvent provoquer de nombreuses sonneries si le Q est suffisamment élevé.
En règle générale, en réponse à une entrée de pas parfaite , un Q de 0,5 ou moins ne sonnera pas, un Q de 1 aura un dépassement de 16% et un Q de 2 44% de dépassement.
En pratique, aucune entrée de pas n'est parfaite, mais si le pas de signal a une énergie significative au-dessus de la fréquence de résonance LC, alors il y aura une sonnerie.
Donc, pour notre exemple d'impédance de pilote de 20 Ω, si nous traitons simplement la ligne comme un circuit groupé, le Q sera:
(La capacité est une capacité d'entrée de 5pF + une capacité de ligne - la résistance de ligne est ignorée)
La réponse à une entrée de pas parfaite sera:
Ainsi, le pire pic de dépassement sera 3,3 V + 2,23 V = ~ 5,5 V
Pour un temps de montée de 2 ns, il faut calculer la fréquence de résonance LC et l'énergie spectrale supérieure à celle-ci en raison du temps de montée:
Fréquence de sonnerie = 1 / (2PI * sqrt (LC)) = 1 / (2PI * sqrt (62,36nH * 9,511pF)) = 206 MHz
Un temps de montée de 2 ns a une énergie significative en dessous de la (règle générale) fréquence "genou", qui est:
0,5 / Tr = 0,5 / 2 ns = 250 MHz, ce qui est supérieur à la fréquence de sonnerie calculée ci-dessus.
Avec une fréquence de genou exactement égale à la fréquence de sonnerie, le dépassement sera environ la moitié de celui de l'entrée de pas parfaite, donc à environ 1,2 fois la fréquence de genou, nous examinons probablement environ 0,7 de la réponse de pas parfaite:
Donc 0,7 * 2,23 V = ~ 1,6 V
Pic de dépassement estimé avec une durée de montée de 2 ns = 3,3 V + 1,6 V = 4,9 V
Avec la résistance du pilote de 100 Ω par le haut, cela signifierait une résistance de série de 60 Ω (d'où l'ajout d'une résistance de série de 50 Ω ne ferait pas de mal ci-dessus)
Simulations:
Perfect Step Simulation:
Simulation Risetime 2 ns:
Solution (avec 100 Ω Rdrv + résistance série 60 Ω = 160 Ω R1 total ajouté):
Nous pouvons voir que l'ajout de la résistance de 160 Ω produit le dépassement critique de 0 V attendu.
Les calculs ci-dessus sont basés sur des règles empiriques et ne sont pas tout à fait exacts, mais devraient se rapprocher suffisamment dans la plupart des cas. L'excellent livre "High Speed Digital Design" de Jonhson et Graham est une excellente référence pour ce genre de calculs et bien plus encore (lire le chapitre d'exemple NEWCO pour des informations similaires à celles ci-dessus, mais mieux - une grande partie de ce qui précède était basée sur les connaissances de ce livre)
la source
Altera recommande leur utilisation avec certains types de SDRAM dans ce document, mais dit qu'ils peuvent être évités en utilisant une terminaison interne pour le FPGA et la SDRAM, si elle est offerte. Aucune des cartes FPGA que j'ai avec SDRAM n'a de terminaison externe sur les connexions et les périphériques n'ont pas de terminaison interne. Il semble qu'ils devraient être utilisés, idéalement, mais dans la pratique, ils sont souvent laissés de côté. Vous devriez vous en tirer.
la source