Xilinx Embedded Development Kit Incorporated oder EDK für MicroBlaze oder PowerPC Mikroprozessoren können Sie Anwendungen erstellen, für Embedded-Geräte mit Standard- C -Library-Funktionen . Erfahrene C- Sprache -System-Entwickler schreiben können Embedded-Code mit Hilfe der Open-Source- gcc oder Gnu Compiler Collection und ihre Lieblings-Programmierung -Editor. Darüber hinaus sind Xilinx C-Funktionen kompatibel mit POSIX oder Portable Operating System Interface . Dies macht die Anpassung Anwendungen für andere POSIX-Systemen geschrieben einfacher. Standard-C -Bibliothek
Die Xilinx EDK verwendet das ANSI oder American National Standards Institute C Bibliothek als libc.a. zusammengestellt Die EDK Standard- C-Header- Dateien enthalten ctype.h , math.h , stdio.h und stdlib.h . Darüber hinaus enthält die Xilinx optional , nicht- ANSI -Mathematik-Bibliothek libm.a , die zusätzliche Fließkommamathematik Funktionen bietet . Xilinx fügt auch eine alternative Input-Output- Funktion aufgerufen xil_printf . Xil_printf hat die meisten der Funktionalität von printf , aber verbraucht weniger Arbeitsspeicher.
Xilinx C Library
Die Xilinx C -Funktionsbibliothek libxil.a bietet Ihre Bewerbung mit Interrupt- und Exception-Handling -Funktionen. Interrupts sind Ereignisse oder Signale Ihres Systems auf , die erwartet werden , aber unberechenbar reagieren können . Zum Beispiel kann ein Eingabegerät wie ein Sensor oder eine Fehlfunktion Drucker einen Interrupt auslösen , dass Ihre Anwendung jederzeit reagieren muss. Ausnahmen sind jedoch Warnungen, wenn etwas schief geht auftreten . Zum Beispiel, wenn eine Funktion sucht nach bestimmten Informationen auf einen Speicher -Adresse oder versucht, eine Datei, die nicht dort zu laden , wird eine Ausnahme ausgelöst wird, das gibt dem System eine Chance , die Dinge anmutig beheben und vermeiden einen Absturz.
Rechenoperationen Funktionen
Xilinx beinhaltet die libgcc.a Laufzeitbibliothek zur Benutzung mit eingebetteten Prozessoren, haben begrenzte oder keine Hardware-Unterstützung für mathematische Operationen . Libgcc.a bietet C-Funktionen für Integer , Gleitkomma- sowie Mathematik -bezogenen Exception Handling -Routinen . Xilinx libgcc unterstützt sowohl PowerPC -Prozessoren und MicroBlaze . Libcss.a bietet keine Integer-Arithmetik Dienstleistungen für PowerPC-Prozessoren , jedoch hat es Ganzzahlenarithmetik Hardware-Unterstützung in.
Memory Management und Themen
Xilinx Speicherverwaltung gebaut und Themen behandelt werden mit ANSI C Standard-Funktionen . Es ist keine zusätzliche Unterstützung oder dem Schutz jedoch für alle C-Funktionen , die Dir vielleicht in multi-threaded Umgebungen auszuführen. Die Xilinx Kernel-API oder Application Programming Interface , auf der anderen Seite , bietet Betriebssystem - wie C-Funktionen, diese Einschränkungen zu überwinden . Der Kernel -API enthält Alternativen zu malloc , calloc und frei, die eine bessere dynamische Speicher-Funktionen bieten und sind Thread- sicher auch.