Artikel-ID: 000075459 Inhaltstyp: Fehlerbehebung Letzte Überprüfung: 11.09.2012

Werden Gleitkommakonstanten als einzelne Präzision oder doppelte Präzision kompiliert, wenn die benutzerdefinierte Fließkommaanweisung verwendet wird?

Umgebung

  • Fließkomma
  • BUILT IN - ARTICLE INTRO SECOND COMPONENT
    Beschreibung

    Standardmäßig werden Gleitkommakonstanten, wenn die benutzerdefinierte Anweisung verwendet wird, als einzelne Präzision kompiliert und Gleitkommaoperationen mit einzeler Präzision in der Hardware implementiert. Die folgenden Problemumgehungen führen dazu, dass Gleitkommakonstanten kompiliert werden, während Doppelpräzisions-Fließkommaoperationen in der Software implementiert werden.

    Sie können eine der folgenden Problemumgehungen verwenden:

    Option 1 - Ändern Sie Ihre Software durch Hinzufügen des Postfix "L" zur Doppelpräzisions-Fließkommakonstanten, um sicherzustellen, dass die Konstanten nicht in einzelne Präzision konvertiert werden.

    Die folgende Tabelle zeigt Beispielcode und Gleitkomma-benutzerdefinierte Befehls-Hardwarenutzung, Präzision und ob sich die Implementierung in Hardware oder Software befindet.

    Beispielcode  FP CI Nutzung   Präzision  Umsetzung  
    b= a * 4,67JaEinzelnen Hardware
    b = a * 4,67NeinDoppel Software
    b = a * 4,67fJaEinzelnen Hardware
    b = a * 4,67fNeinEinzelnen Software
    b = a * 4,67List es egal*Doppel Software
    * FP CI-Hardware wird für den Doppelpräzisionsbetrieb nicht verwendet

    Option 2 - Entfernen Sie in public.mk manuell die Flag -mcustom-fpu-config und ersetzen Sie sie durch die einzelnen Compiler-Flags, verzichten Sie aber auf die Flag -fsingle-precision-constant.

    "-mcustom-fpu-config=60-1" zu "-mcustom-fmuls=252 –mcustom-fadds=253 –mcustom-fsubs=254" oder

    "-mcustom-fpu-config=60-2" zu "-mcustom-fmuls=252 –mcustom-fadds=253 –mcustom-fsubs=254 –mcustom-divs=255"

    Bitte beachten Sie, dass der Unterschied zwischen 60-1 und 60-2 darin besteht, dass 60-1 die Flag –mcustom-divs nicht hat.

    Weitere Einzelheiten finden Sie in Anhang D in http://www.altera.com/literature/ug/ug_nios2_custom_instruction.pdf

    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.