L’EMBARQUÉ / N°6 / 2014 / 41
Réseaux embarqués
A P P L I C A T I O N
Les SoC FPGA sadaptent
aux technologies Ethernet
spécifiques au smart grid
Cet article présente limplémentation des protocoles HSR et IEEE 1588 PTP sur une puce
SoC basée sur un FPGA Cyclone V d'Altera fonctionnant sous Linux. Cette puce
intègre une matrice FPGA associée à un cœur de processeur ARM. Une solution qui
convient aussi bien pour l’élaboration de nouvelles conceptions que pour la modernisation
de composants existants utilisés dans le cadre de solutions de gestion intelligente
des réseaux de distribution délectrici.
U
n smart grid est la version
moderne d'un réseau élec-
trique classique, mais
dotée dune « intelligence »
via l’utilisation de technologies s-
cifiques pour collecter de l'informa-
tion, la communiquer et in fine
contrôler le réseau. Les smart grids se
distinguent des approches tradition-
nelles par une amélioration notable
au niveau de l’efficacité et de la fia-
bilité. Ils permettent la production
décentralisée d'énergie, facilitant
ainsi la connexion au réseau de
sources d'énergies renouvelables
d'origines diverses comme lnergie
solaire ou l'énergie éolienne. Parmi
les nouvelles technologies déployées
dans les smart grids, on trouve
notamment le mécanisme de redon-
dance HSR (High-availability
Seamless Redundancy, voir enca-
dré I) et le protocole de synchronisa-
tion IEEE 1588 PTP (Precision Time
Protocol, voir encadré II) qui sont
utilis dans les sous-stations pour les
communications internes et la syn-
chronisation temporelle des mesures
électriques.
Pour implanter de manière concrète
ces protocoles, il est aujourd’hui
possible de faire appel à un FPGA.
Le montage proposé ici est constitué
de deux cartes, dont la plus grande
est une carte de développement pour
le Cyclone V SX d'Altera alors que le
plus petite est un module SFP-HSMC
de Terasic, qui se branche sur le
connecteur HSMC de la carte SoC
(voir photo ci-dessous). Ce module
dispose aussi d’emplacements SFP
(Small Form-factor Pluggable, émet-
teur-récepteur compact, insérable à
chaud utilisé dans les réseaux) pour
la connectivité Ethernet, soit à de la
fibre optique, soit à de la technologie
classique sur cuivre, selon le type de
module SFP choisi. Les deux cartes
sont disponibles à la commercialisa-
tion.
Le cœur de cette réalisation (voir
figure page 43) est le commutateur
HSR qui effectue l'envoi des trames
HSR/Ethernet d'un port vers un autre.
Cette mise en œuvre possède quatre
ports, dont l’un est connecté au pro-
cesseur matériel ARM pour lui per-
mettre d'envoyer et de recevoir les
trames Ethernet. Les autres ports
consistent en des ports HSR/Ethernet
connectés aux modules SFP et aux
autres composants via des blocs
adaptateurs (GMII-to-1000BASE-X ou
(G)MII-to-SGMII). Trois ports externes
suffisent en fait pour implémenter des
RedBox, autrement dit des « boîtiers
de redondance » (redundancy boxes)
dédiés. Toutefois, il est utile de dispo-
ser d'un port supplémentaire dans les
nœuds terminaux, par exemple un
port de maintenance pour réaliser
une fonctionnalité de RedBox-in-En-
dNode, éliminant ainsi la nécessité
des RedBox dédiées (voir figure de
l'encardé I).
Les blocs adaptateurs traduisent l'in-
terface native MII/GMII du commu-
tateur HSR aussi bien vers du
1000Base-X que du SGMII. La tech-
nologie 1000BASE-X est utilisée
quand un module gigabit de fibre
Jouni Kujala,
responsable
R&D chez
Flexibilis
(Finlande).
AUTEUR
L’ensemble
constitué
d’une carte de
développement
pour SoC FPGA
d’Altera et d’une
carte SFP de
Terasic permet
l’implémentation
des protocoles
HSR et
IEEE 1558.
42 / L’EMBARQUÉ / N°6 / 2014
A P P L I C A T I O N
Réseaux embarqués
optique est connecté à un emplace-
ment SFP. 1000BASE-X convient
aussi pour des modules SFP conven-
tionnels sur cuivre mais à des vitesses
plus faibles (10 Mbit/s et 100 Mbit/s)
qui sont uniquement supportées en
mode SGMII. Comme les modules
SFP sur cuivre sont conçus pour être
une solution directe de remplace-
ment pour des entités à fibre optique,
ils doivent être pilotés séparément
pour opérer en mode SGMII. La com-
mande pour basculer vers le mode
SGMII est envoyée à la puce PHY,
située au sein du module, en utilisant
un bus I2C contrôlé via le bloc d’en-
trées/sortie d’usage général GPIO
(General Purpose Input/Output).
Le bloc Horloge Temps Réel est le
gardien du temps et connaît la valeur
courante de l’horloge. Ce temps
I.- QU’EST-CE QUE LHSR
n HSR est un protocole destiné à fournir
de l'Ethernet redondant. Comme pour le protocole
de communication RSTP (Real Time Streaming
Protocol, ou protocole de streaming temps réel),
la redondance provient de liens supplémentaires
dans le réseau. Cependant, contrairement
à RSTP, HSR fonctionne sans neutraliser
ces liens supplémentaires. En fait, un réseau HSR
utilise tous les liens, tout le temps, et les nœuds
font des copies des trames pour utiliser simultané-
ment tous les chemins du réseau. Alors que RSTP
désactive certains liens pour obtenir un réseau
sans boucle, HSR sait gérer les boucles.
n Dans HSR, un en-tête spécique est ajouté
aux trames Ethernet (voir gure ci-contre).
Cet en-tête HSR comprend un numéro de sé-
quence qui, en combinaison avec l'adresse MAC
source, est capable de reconnaître des copies
de la même trame. Les nœuds du réseau HSR
détectent et mémorisent les trames qu'ils ont
reçues et transférées précédemment, pour être
capable d'enlever les copies redondantes
des trames sur le réseau. Ce procédé est impératif
pour éviter que les trames bouclent indéniment
et consomment ainsi toute la capacité réseau
disponible.
n Comme les liens du réseau ne sont pas
désactivés par le protocole de redondance, ils ne
nécessitent aucun délai de récupération dans le
cas d'une faute. Résultat : HSR est un choix privi-
légié pour des applications qui n’acceptent aucune
coupure pendant la communication ; cela inclut la
distribution d’électricité, l'avionique ou certaines
applications militaires.
n La topologie typique d'un réseau HSR est un
anneau ou plusieurs anneaux interconnectés,
mais HSR ne se limite pas à ces topologies. Au
contraire, HSR est capable de supporter n'importe
quelle topologie. Cependant, de très gros réseaux
HSR (à plusieurs milliers de nœuds) ne sont pas
très intéressants en pratique car tout le trac doit
transiter par chaque nœud du réseau ; à moins
d'en réduire la taille via, par exemple, des LAN
virtuels. Un réseau HSR typique est présenté sur la
gure. Les RedBox (boîtiers de redondance
– redundancy boxes) connectent au réseau HSR
les nœuds et segments ne comprenant pas l'HSR.
Des QuadBox (équipement à quatre ports) inter-
connectent les anneaux HSR. Les nœuds termi-
naux (appelés également DANH) sont les nœuds
de communication appartenant à celui pour lequel
le réseau a été construit. HSR supporte nativement
la connexion à des réseaux PRP en utilisant ce
qu'on appelle des RedBox HSR-PRP.
TOPOLOGIE D’UN RÉSEAU HSR
II.- QUEL CONTEXTE D’UTILISATION POUR L’IEEE 1588 ?
n Le protocole Precision Time Protocol (PTP)
déni par la norme IEEE 1558 permet la synchroni-
sation des horloges au travers du réseau Ethernet.
Les applications où le protocole permet d’éviter
l’appel à un réseau de synchronisation distinct sont
alors beaucoup plus économiques.
n Les mises en œuvre de l’IEEE 1588 PTP
sont très différentes selon la précision désirée.
La technologie de réseau sous-jacente a en
effet une énorme incidence sur la précision. Les
technologies DSL par exemple afchent une
précision très médiocre comparées à celle du Fast
Ethernet, et le Gigabit Ethernet est beaucoup plus
performant que le Fast Ethernet – plus de capacité
signiant généralement une meilleure précision. De
plus, la bre optique est plus efcace en synchro-
nisation que le cuivre. Les implémentations d’IEEE
1588 PTP peuvent être également réalisées par
logiciel seul, mais pour tirer tout le potentiel des
moyens disponibles, il est nécessaire d'utiliser des
circuits conçus spéciquement pour supporter
l'IEEE 1588 PTP. Ce qui signie qu'il faut enregis-
trer les temps exacts de réception et d’émission de
certaines des trames dans le silicium, et, dans cer-
tain cas (one-step clock), être capable de modier
les trames à la volée. Avec du matériel dédié, une
précision de l'ordre de la nanoseconde peut être
effectivement atteinte avec le protocole en faisant
fonctionner du Gigabit Ethernet sur un câble de
bre optique.
n La norme IEEE 1588 comprend un algorithme
de sélection de type Best Master Clock qui établit
l'horloge qui agira comme maître sur le réseau, les
autres horloges étant des esclaves. En d’autres
termes, ceci signie qu’on choisit quelle horloge
sera principale et donc quelles autres horloges
suivront. Ainsi, toutes les horloges du réseau
fonctionneront avec la même référence temporelle,
le système étant tolérant aussi bien pour les fautes
d'horloges que pour les défauts du réseau. Les
horloges dites transparentes améliorent encore
la précision de la synchronisation entre l’horloge
maître et celles qui sont esclaves en compensant
l'erreur causée par les nœuds du réseau. Au
sein d'Ethernet, des horloges transparentes sont
intégrées aux commutateurs Ethernet qui corrigent
les erreurs dues aux éventuels retards induits par
les piles du commutateur, en modiant à la volée
les messages PTP.
n HSR est généralement utilisé dans les mêmes
applications que celles qui font appel à IEEE 1588
PTP. C’est pourquoi, la spécication HSR dénit
comment IEEE 1588 PTP devrait être utilisé
conjointement avec HSR. Cependant, un traite-
ment spécial des trames IEEE 1588 est néces-
saire, parce que le réseau HSR dispose de un,
deux, ou plusieurs chemins fonctionnels entre les
horloges, alors que les réseaux Ethernet n'en ont
qu'un. Ce qui signie par exemple qu'on ne peut
utiliser des messages de suivi IEEE 1588 PTP
dans un réseau HSR, parce qu'il serait impossible
à un récepteur de savoir si le message de suivi
et le message de synchronisation correspondant
ont parcouru le même chemin au travers du
réseau. Un problème qui implique d’utiliser des
horloges appelées One-Step Clock (un message
de synchronisation sans message de suivi) au lieu
de deux étapes (message de synchronisation et
message de suivi).
L’EMBARQUÉ / N°6 / 2014 / 43
Réseaux embarqués
A P P L I C A T I O N
d'horloge est requis pour implémen-
ter la fonctionnalité IEEE 1588 PTP.
Le bloc d'horloge temps réel est dis-
tinct du commutateur HSR, car sa
réalisation dépend fortement de l'en-
vironnement. En effet, diverses sortes
de cartes disposent de différents
styles d'oscillateurs qui peuvent par
exemple être ajustables ou fixes, et
leur précision comme leur fréquence
sont très variables. Dans tous les cas,
le temps d'horloge est requis par le
bloc du commutateur HSR. Suivant
la réalisation, ce temps d'horloge
peut être fourni aux puces PHY avec
des fonctionnalités IEEE 1588, Ether-
net MAC(s), ou à d'autres blocs qui
nécessitent une connaissance précise
du temps, par exemple, pour horoda-
ter des échantillons de mesures.
Une matrice de commutation en
technologie Avalon connecte les
blocs au processeur ARM via un pont
AXI-to-Avalon. Avalon est un bon
choix pour réaliser l’accès au registre
interne du FPGA car il est largement
utilisé et qu’il s’agit d’un standard
ouvert. Le processeur surveille et
contrôle la fonctionnalité des blocs
connectés par Avalon par l'intermé-
diaire de l'accès au registre. Par
exemple, il observe continuellement
la vitesse de l'interface des modules
cuivre SFP en interrogeant la puce
PHY interne au module. Quand son
mode change, le processeur confi-
gure en conséquence la vitesse de
l'adaptateur (G)MII-to-SGMII et du
port du commutateur HSR.
Comment implémenter l'HSR
La topologie typique d'un HSR est un
anneau, ce qui induit beaucoup plus
de nœuds entre la source et la desti-
nation que dans les topologies tradi-
tionnelles d'Ethernet. De ce fait, le
temps de transfert exigée au niveau
des composants est si faible qu'il est
impossible de mettre en œuvre un
nœud HSR avec un moteur de trans-
fert basé sur du logiciel. L'HSR étant
une technologie nouvelle en
constante évolution, toutes les implé-
mentations sont à base de blocs d’IP
FPGA. Par ailleurs, en tant que tech-
nologie, HSR est fondamentalement
très proche d’Ethernet. C’est pour-
quoi les réseaux HSR utilisent beau-
coup de technologies qui sont fami-
lières dans les réseaux Ethernet
traditionnels, comme les LAN vir-
tuels et la priorisation. Il en résulte
que la réalisation interne d'un com-
mutateur HSR, avec son apprentis-
sage d'adresse, ses piles à sorties
multiples, etc. s’apparente à celle des
commutateurs Ethernet traditionnels.
Cependant, la réalisation d'un HSR
ne peut pas relever d’une implémen-
tation purement matérielle. Du fait
de la redondance, des fautes isolées
sur le réseau ne peuvent pas être
détectées sans un protocole spécial,
baptisé protocole de supervision
HSR. Ce protocole de supervision
HSR garde la trace des nœuds HSR,
des numéros de séquence de leurs
trames de supervision et du numéro
de port redondant sur lequel leurs
trames sont reçues. L’ensemble de
ces informations est stocké dans une
table spéciale appelée table de
nœuds. Elles peuvent ensuite être
utilisées pour localiser des liens
défectueux et autres problèmes du
réseau. Pour des raisons pratiques, ce
protocole complexe ne peut pas être
implémenté sur du matériel ; il faut
faire appel à du logiciel. Finalement,
l’implémentation HSR requiert à la
fois du logiciel et du matériel. Une
puce SoC est donc par nature le
choix idéal, permettant la réalisation
d’une solution HSR monopuce.
Comment implémenter
l'IEEE 1588 PTP
Comme dans le cas de l'HSR, l’im-
plémentation de l'IEEE 1588 s’avère
être à la fois logicielle et matérielle.
Les parties n'ayant pas d'exigences
temps réel sont mises en œuvre par
du logiciel. Il s’agit typiquement de
l’algorithme de sélection de la meil-
leure horloge maître, de la pile de
protocole ou encore de la génération
des trames Ethernet. Les tâches cri-
tiques au niveau temporel incluent
le timing exact en réception et en
émission des transferts de trames,
ainsi que la modification des mes-
sages Correction Field of Sync,
Delay_Req, Pdelay_Req et Pdelay_
Resp. Ces tâches doivent être réali-
sées dans le silicium afin d'atteindre
une précision de synchronisation
inférieure à la microseconde sur le
réseau Ethernet ; les solutions uni-
quement logicielles sont à peine
capables d'une précision en dessous
de la milliseconde alors que les
implémentations matérielles peuvent
atteindre la nanoseconde. Bien
que des puces IEEE 1588 PHY soient
disponibles sur le marché, elles sont
inutiles dans ce cas-ci ; la fonction-
nalité IEEE 1588 Transparent Clock
au sein du commutateur et les fonc-
tionnalités d'horodatage de la
connexion Switch-to-HPS Ethernet
éliminent la nécessité d’un support
de l'IEEE 1588 dans les puces PHY.
De ce fait, l'utilisation d’IEEE 1588
PTP est par exemple envisageable
dans le cas des modules SFP sur
cuivre qui n'ont pas de support
IEEE 1588 PTP. n
Avalon
Commutateur
HSR
Carte de développement Altéra
Carte HSMC Terasic
FPGA
Altera
SoC
Oscillateur
Modules SFP
LED
Mémoire
du programme
Processeur ARM
fonctionnant
sous Linux
Horloge
temps-réel Entrées/
sorties
d’usage
général
GMII vers
1000BASE-X &
(G)MII vers SGMII
AXI-vers
-Avalon
Avalon
Avalon
Avalon
Ethernet
3* Ethernet
I2C
Avalon
SCHÉMA FONCTIONNEL DU SoC FPGA CYCLONE V
On voit ici un exemple concret d’implémentation des technologies de réseau HSR
et IEEE 1558 PTP sur un FPGA
Logiciels & systèmes
Professionnels de l’embarqué
Découvrez le système d’information
le plus complet, 100% utile à votre métier !
Une newsletter quotidienne
Votre fi l d’actualité gratuit
Une newsletter hebdo
Tous les jeudis,
des infos exclusives à forte
valeur ajoutée
Un magazine
100% numérique, trimestriel,
pour une information fouillée,
analysée et développée
Un site Internet
Plus de 1 500 articles par an
exclusivement dédiés à l’embarqué
Abonnez-vous www.lembarque.com
•Pub 148x210.indd 1 20/03/13 12:52
1 / 4 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !