RapidIO® : implémentation personnalisée à l’aide de Avalon® interface de transfert en continu

author-image

Par

Cet exemple de conception démontre l’utilisation de l’interface de transfert direct Avalon streaming (Avalon-ST) dans RapidIO comme plateforme pour mettre en œuvre de simples transactions personnalisées. En utilisant cette interface, les utilisateurs ont plus de flexibilité en termes d’écriture et d’organisation des formats de paquets, en dehors des autres fonctions régulières du module dans la couche logique.

Afin de simplifier cet exemple de conception, d’autres modules de couche logiques tels que le Maître/E/S et Esclave sont désactivés. Cette conception présente une liaison Serial RapidIO 1x 2,5 G graphisme, avec interface de transfert Avalon-ST activée à l’interface graphique.

La présentation de l’architecture de conception est indiquée dans la figure ci-dessous :

Le flux de processus

  1. Port initialisé (liaison RapidIO)
  2. Initialisation RapidIO
  3. Envoyer des paquets d’écriture (semblables aux transactions NWrite)
    • Le contrôleur système A commande générateur de paquets pour envoyer des paquets à RapidIO A
    • Les paquets sont envoyés sur le lien vers RapidIO B et stockés dans la RAM par le contrôleur système B
    • Le paquet d’écriture peut être réglable en fonction de la taille de la charge utile et du nombre de paquets.
  4. Envoyer des messages de sonnette
    • Le contrôleur système A commande générateur de paquets pour envoyer des messages sonnettes à RapidIO A
    • Les messages de sonnette sont envoyés sur le lien vers RapidIO B. Ils sont reçus et traités par le processeur sonnette dans le contrôleur système B
  5. Les messages portant la sonnette portent des instructions qui sont interprétées par le processeur pour sonnettes. Il existe deux exemples d’instructions : invertir les paquets et récupérer les données
    • Pour les paquets inverti, le processeur Doorbell lit les données de la RAM, l’inverse et le stocke dans la RAM (peut être à une adresse différente)
    • Pour récupérer les données, le processeur Doorbell lit les données de la RAM et les renvoie à RapidIO A
    • Ces deux instructions montrent que RapidIO A peut lancer des éléments d’action pour que RapidIO B s’exécute. Vous pouvez utiliser cela pour créer des paquets d’instructions spécifiques à vos propres implémentations

Cette implémentation de conception de bas niveau peut également être utilisée comme un exemple pour réaliser les personnalisations suivantes :

  1. Ajouter ou modifier les paramètres ou le format des paquets (par exemple, adresse-charge utile-adresse-charge utile) ou le streaming de données
  2. Gérer différentes séquences d’envoi de fonctionnalités dans un seul port au lieu de le faire à tour de gamme dans la couche de transport
  3. Prise en charge des fonctions personnalisées qui ne sont généralement pas incluses dans la fonction RapidIO MegaCore

Cependant, pour gérer les personnalisations indiquées ci-dessus, les utilisateurs doivent remplir manuellement les champs de la couche physique et de transport d’un en-tête de paquet. D’autres étapes, telles que le décodage du formatage des paquets et le contrôle du trafic des paquets, sont également nécessaires au fonctionnement fluide de cette interface Avalon-ST pass-Through.

Téléchargez le fichier .zip utilisé dans cet exemple de conception : avST_passthr_interface.zip

Remarque : cet exemple de conception a été testé dans une simulation.

Le contenu de cette page est une combinaison de traduction humaine et informatique du contenu original en anglais. Ce contenu vous est fourni pour votre commodité et à titre informatif seulement et ne saurait être totalement exact ou complet. En cas de contradiction entre la version anglaise de cette page et la traduction, c'est la version anglaise qui prévaut. Afficher la version anglaise de cette page.