Artikel-ID: 000079401 Inhaltstyp: Produktinformationen und Dokumente Letzte Überprüfung: 23.08.2014

Wie kann ich die Beispiele Nios II Simple Socket Server und Webserver-Software verwenden, wenn das TSE-Beispieldesign ein Qsys-Untersystem ist?

Umgebung

  • Intel® Quartus® II Anmeldungs-Edition
  • BUILT IN - ARTICLE INTRO SECOND COMPONENT
    Beschreibung

    Wenn das Nios® II-TSE-Beispieldesign (Triple Speed Ethernet) unter Verwendung von Subsystemen mit einer Qsys instanziert wird, sind manuelle Änderungen an der Beispielsoftware erforderlich, um den richtigen Pfad zu Peripheriegeräten zu definieren.


    Die Beispielsoftware verwendet den Instanznamen von Komponenten im TSE-Beispieldesign, diese sind jedoch mit einem zusätzlichen Namen vorgeformt, wenn das TSE-Design als Untersystem in Qsys instanziiert wird.    Dies führt zu ähnlichen Fehlern wie bei der Kompilierung in Nios II Software Build Tools (SBT):

    error: 'EXT_FLASH_NAME' undeclared here (not in a function)
    error: 'TSE_MAC_BASE' undeclared here (not in a function)
    error: 'TSE_MAC_BASE' undeclared here (not in a function)
    error: 'TSE_MAC_TRANSMIT_FIFO_DEPTH' undeclared here (not in a function)
    error: 'TSE_MAC_RECEIVE_FIFO_DEPTH' undeclared here (not in a function)
    error: 'TSE_MAC_USE_MDIO' undeclared here (not in a function)
    error: 'TSE_MAC_ENABLE_MACLITE' undeclared here (not in a function)
    error: 'TSE_MAC_MACLITE_GIGE' undeclared here (not in a function)
    error: 'TSE_MAC_IS_MULTICHANNEL_MAC' undeclared here (not in a function)
    error: 'TSE_MAC_NUMBER_OF_CHANNEL' undeclared here (not in a function)

    Lösung

    Um die Fehler zu beheben, folgen Sie den Schritten unten in Ihrem Anwendungsprojekt im Nios II SBT für Eclipse:

    1. Öffnen Sie network_utilities.c und führen Sie einen Such- und Ersatz für "EXT_FLASH" -> "_ EXT_FLASH" durch.
      • Beispiel: Wenn Ihr .qsys-System der obersten Ebene in Ihrer .qsys-Projektebene "QSYS_TOP" genannt wird, suchen Sie nach "EXT_FLASH" und ersetzen Sie es durch "QSYS_TOP_EXT_FLASH"
      • Bevor:
        #define EXT_FLASH_NAME "/dev/ext_flash"
      • Nach:
        #define QSYS_TOP_EXT_FLASH "/dev/ext_flash"
    2. Bearbeiten Sie tse_my_system.c: Zeile 10, um die #defines Makros zu aktualisieren, die beim Erstellen der TSE-Infostruktur verwendet werden:
      • Bevor:
        alt_tse_system_info tse_mac_device[MAXNETS] = { TSE_SYSTEM_EXT_MEM_NO_SHARED_FIFO(TSE_MAC, 0, SGDMA_TX, SGDMA_RX, TSE_PHY_AUTO_ADDRESS, 0, DESCRIPTOR_MEMORY) };
      • Nach:
        alt_tse_system_info tse_mac_device[MAXNETS] = { TSE_SYSTEM_EXT_MEM_NO_SHARED_FIFO(QSYS_TOP_TSE_MAC, 0, QSYS_TOP_SGDMA_TX, QSYS_TOP_SGDMA_RX, TSE_PHY_AUTO_ADDRESS, 0, QSYS_TOP_DESCRIPTOR_MEMORY) };
    3. Wiederherstellung des Softwareanwendungsprojekts

    Diese Informationen werden voraussichtlich in einer zukünftigen Version des Nios II- und TSE-Beispieldesigns enthalten sein.
    Dokumentation.

    Zugehörige Produkte

    Dieser Artikel bezieht sich auf 1 Produkte

    Intel® programmierbare Geräte

    Der Inhalt dieser Seite ist eine Kombination aus menschlicher und computerbasierter Übersetzung des originalen, englischsprachigen Inhalts. Dieser Inhalt wird zum besseren Verständnis und nur zur allgemeinen Information bereitgestellt und sollte nicht als vollständig oder fehlerfrei betrachtet werden. Sollte eine Diskrepanz zwischen der englischsprachigen Version dieser Seite und der Übersetzung auftreten, gilt die englische Version. Englische Version dieser Seite anzeigen.