La prochaine fois que vous mettrez à niveau votre ordinateur de bureau ou ordinateur portable, jetez un œil à vos barrettes de RAM. Si besoin, prenez une loupe pour les observer de plus près. Toutes les pistes qui sont visibles sur la couche supérieure ne sont qu'une partie d'un réseau complexe de pistes entre le connecteur de bord et les puces RAM. Si, de près, le routage peut paraître assez compliqué, vu de loin, il fait apparaître une topologie relativement simple.
Cette topologie est qualifiée de « fly-by topology». Le schéma de routage dans ce type de topologie est préférable à une topologie à double T pour des raisons multiples liées à l'intégrité du signal. La fly-by topology entraîne un moindre niveau de bruit de commutation simultané, et les protocoles DDR sont toujours en mesure de gérer l'asymétrie entraînée par le routage fly-by, en prenant en charge le nivellement des opérations d'écriture. Cela fonctionne aussi bien avec les applications à haute fréquence, et permet de réduire le nombre et la longueur des métallisations de vias.
La fly-by topology permet ainsi bien d'obtenir la meilleure intégrité de signal pour les mémoires DDR3 et DDR4. Il sera donc utile d'examiner plus en détail l'effet de cette topologie sur les recommandations de routage de la DDR. Pour en savoir plus, consultez nos recommandations de routage pour les topologies fly-by de DDR3 et DDR4.
La fly-by topology dispose d'une structure en « daisy chain » qui contient soit des métallisations très courtes, soit aucune métallisation. En raison de ce type de structure, la fly-by topology fait apparaître moins de branches et de connexions de point à point. Lorsque vous travaillez sur un routage de DDR3 et DDR4, la fly-by topology démarre au niveau du contrôleur, en commençant par la puce 0, puis passe vers la puce N, ou le bit de données supérieur. Le routage a lieu dans l'ordre des numéros de groupes d'octets, et les groupes d'octets de données sont routés sur la même couche. Le routage peut être simplifié en échangeant les bits de données au sein d'un même groupe d'octets si besoin. Un exemple de fly-by topology est illustré ci-dessous.
La topologie à double T est une alternative pour la disposition et le routage de DDR. Dans ce type de topologie, les sortances différentielles de l'horloge, de la commande et de l'adresse du contrôleur de mémoire sont toutes raccordées à une section T, qui peut prendre en charge 2 puces. Chaque branche peut à nouveau être divisée afin de prendre en charge 2 puces chacune, soit un total de 4 puces par branche. En règle générale, les puces 2^N peuvent être connectées à une topologie à double T (N étant le nombre de branches). Chaque section est ensuite routée vers une puce RAM unique. Les lignes stroboscopiques et de données sont routées directement depuis le contrôleur de mémoire vers chacune des puces RAM. Ceci est illustré dans le schéma ci-dessous.
Les topologies en T étaient courantes dans le routage de DDR2, mais chaque branche créée accumulait des différences d'impédance au niveau des fréquences DDR2. La fly-by topology est donc préférable pour les générations DDR3 et au-delà, chaque dispositif ne disposant que d'une seule branche dans sa ligne Horloge/Commande/Adresse. Cette topologie est particulièrement adaptée pour les dispositifs RAM à puce unique, alors que les deux types de topologies peuvent être utilisés dans les dispositifs multi-puces. Si vous disposez d'une certaine marge de manœuvre dans le choix de ces topologies, il faut noter que les DDR3 et DDR4 sont plus faciles à router avec une fly-by topology, et vous gagnerez en intégrité de signal par la même occasion.
Vous souhaitez utiliser la fly-by topology ? Voici quelques recommandations de base à respecter pour router les pistes et vous assurer de conserver l'intégrité du signal. La première recommandation concerne la disposition de l'empilage des couches et l'orientation des puces. Si la conception de la carte a suffisamment de place, les lignes Adresse/Commande/Contrôle/Horloge doivent être routées sur la même couche. Pour gagner de la place, il est possible de les router sur des couches différentes. Le routage des lignes Adresse/Commande/Contrôle/Horloge passe de la puce de bits de données la plus basse à la puce de bits de données la plus élevée. L'espacement entre les puces de mémoire ne doit pas être inférieur à 200 millièmes de pouce. Enfin, placez une terminaison différentielle de 100 Ω dans le dernier dispositif SDRAM de la chaîne.
Au fur et à mesure que vous placez les composants, il est important de laisser de la place pour la sortance, les résistances de terminaison, ainsi que pour l'alimentation des terminaisons. Par ailleurs, votre schéma de routage doit éviter de passer par des vides de vias sur le plan. Les vias doivent être bien espacés les uns des autres afin de permettre à deux pistes ou plus d'être routées entre chaque via. Cet espacement des sortances augmentera le nombre de canaux de routage.
Il est important de noter que la fly-by topology ajoute volontairement de l'asymétrie entre chaque ligne. Cela minimise le bruit de commutation simultané lors de la commutation d'une puce. Les puces à proximité ne seront ainsi pas affectées puisqu'il y a un délai entre les événements de commutation dans les différentes puces. Outre ce gain d'intégrité du signal, d'autres éléments doivent être pris en compte lors du routage de dispositifs DDR3 et DDR4.
Dans le routage des couches internes, les lignes ruban simples ou doubles peuvent être utilisées pour les paires différentielles. Les pistes de surface doivent être routées en tant que microrubans. Afin de supprimer les réflexions le long des interconnexions et au niveau du récepteur, il faut contrôler l'impédance de toutes les lignes. Pour la plupart des interfaces, il est conseillé que les pistes disposent d'une impédance de 50 à 60 Ω à une seule extrémité (impédance différentielle de 100 à 120 Ω). Sachez que les spécifications JEDEC pour DDR3 établissent deux intensités d'entraînement, soit 34 et 40 Ω pour les E/S asymétriques. Toutefois, les dispositifs modernes utilisent une terminaison intégrée afin de respecter les valeurs d'impédance caractéristiques exigées. Assurez-vous de vérifier les impédances d'entrée et de sortie de vos composants et d'appliquer la terminaison si besoin.
L'une des façons d'obtenir une meilleure sensibilité du signal et une meilleure gestion des contraintes est de rassembler les groupes de bits de données. Cela simplifie votre processus de routage. Une mise en garde toutefois : surveillez l'espacement de piste à piste au sein des groupes afin d'éviter une diaphonie excessive au sein d'un même groupe. La longueur des signaux regroupés doit être soigneusement vérifiée afin de respecter les recommandations de la fiche technique de votre dispositif, mais en prenant garde, car ces fiches supposent généralement une valeur Dk de 4 pour le matériau de substrat. Si votre routage est effectué sur un matériau de substrat PCB non spécifié, vous devrez ajuster la valeur correspondante à la longueur afin de compenser le délai temporel prévu (ou délai de phase dans les paires différentielles).
Concernant l'espacement des pistes, de nombreuses recommandations préciseront des valeurs différentes, mais celles-ci peuvent facilement être prises hors contexte. Soyez attentifs lors de la sélection de l'espacement entre les pistes et les paires à partir des notes de l'application, celles-ci supposant généralement un certain empilage des couches. L'espacement exact entre chaque extrémité des paires différentielles doit être choisi de manière à maintenir l'impédance différentielle nécessaire. Des pistes plus larges peuvent intégrer des routages plus denses de par une inductance plus faible, qui est la principale source de diaphonie à des fréquences DDR pratiques. Il vaut mieux exécuter des simulations de diaphonie, qui permettront d'étudier les limites dont vous disposez dans l'espacement entre les pistes asymétriques et différentielles.
Compte tenu de la complexité de routages toujours plus nombreux, il est préférable d'utiliser votre schéma comme base de votre conception. En vous appuyant sur celui-ci, vous pouvez localiser les principaux composants et signaux. Cette technique vous permettra d'effectuer une sélection croisée et un recoupement des composants et des signaux du schéma afin de mettre en valeur le même élément sur la carte. Ces fonctionnalités, alliées à vos paramètres des règles de conception, vous aideront à identifier les paires différentielles devant être ajustées en longueur, à maintenir l'impédance requise et à préserver l'espacement nécessaire au cours du routage.
Pour en savoir plus sur le routage de DDR3/DDR4, vous pouvez consulter les articles suivants :
Les conceptions de circuits imprimés à haute vitesse sont complexes et nécessitent de planifier le placement des composants et le contrôle de l'impédance. Altium Designer vous offre un ensemble complet d'outils de routage interactifs basés sur des règles pour la mise en œuvre d'une fly-by topology dans votre routage de DDR3 et DDR4. Il s'agit, dans l'ensemble, de créer des routages qui constituent un chemin direct et une solution d'interconnexion pour chaque côté du bus. Les fonctionnalités de CAO de l'éditeur de circuits imprimés d'Altium Designer facilitent la création de votre routage de DDR3 ou DDR4 pour assurer l'intégrité du signal et la facilité de routage.
Pour en savoir plus sur le routage par topologie fly-by pour vos dispositifs de mémoire DDR3 et DDR4, contactez un expert Altium.