Logiciels Libres et Systèmes Embarqués

Mise en oeuvre

Le but de ce projet n'est pas de créer un tutoriel sur LwIP (la documentation officielle est très bien faite, voir rawapi.txt), mais plutôt de fournir un exercice pour montrer que l'on (SMP) peut facilement créer une application réseau tournant sur un PPC du Virtex II Pro.

Voici les étapes que nous avons suivi pour mettre en oeuvre ce projet :

  1. faire son design avec une IP emac, par exemple grâce au "Base System Builder" pour aller plus vite.
  2. ajouter un projet "logiciel", faire attention qu'il ne soit pas utilisé pour initialiser la BRAM. En effet, le code sera trop gros, nous devrons donc le télécharger dans la SDRAM après le démarrage.
  3. ajouter les fichiers sources à ce projet.
  4. dans la boite de dialogue "Set Compiler settings", à l'onglet "Environment", remplir le champ "Program Start Address" avec l'adresse de début de la SDRAM (0x02000000, dans notre cas).
  5. dans la boite de dialogue "Set Compiler settings", à l'onglet "Directories", remplir le champ "Libs to link" avec "-llwip4"
  6. dans la boite de dialogue "Software Platform Setting", à l'onglet "Software Platform", cocher "lwip 2.00.a".
  7. dans la boite de dialogue "Software Platform Setting", à l'onglet "Library/OS Parameters", remplir le champ "emac_instances" ((Ethernet_MAC,0x00,0x01,0x02,0x03,0x04,0x05), dans notre cas)
  8. compiler le projet "logiciel", synthétiser le projet "matériel", et configurer le FPGA avec ce dernier.
  9. lancer XMD.
  10. aller dans le répertoire où ce situe le code exécutable de notre projet.
  11. lancer les commandes "dow executable.elf" et "run".
aller à la section suivante