Xilinx Incorporated Embedded Development Kit eller EDK for MicroBlaze eller PowerPC mikroprocessorer kan du oprette applikationer til indlejrede enheder ved hjælp af standard C-biblioteket funktioner. Erfarne C -sprogede systemudviklere kan skrive indlejret kode ved hjælp af open source gcc eller Gnu Compiler Collection , og deres foretrukne programmering editor. Desuden er Xilinx C-funktioner kompatibel med POSIX eller bærbare operativsystemets grænseflade . Dette gør tilpasning applikationer skrevet for andre POSIX -systemer lettere . Standard C Library
Xilinx EDK bruger ANSI eller American National Standards Institute C-biblioteket opgjort som libc.a. Den EDK s standard C header filer omfatter ctype.h , math.h , stdio.h og stdlib.h . Derudover indeholder Xilinx den valgfrie , ikke- ANSI math library libm.a , som giver ekstra floating-point matematiske funktioner . Xilinx tilføjer også et alternativt input-output funktion kaldet xil_printf . Xil_printf har de fleste af funktionaliteten i printf , men bruger mindre systemhukommelse.
Xilinx C Library
Xilinx C funktionsbibliotek libxil.a giver din ansøgning med interrupt og undtagelse håndterer funktioner. Afbryder er hændelser eller signaler dit system kan reagere på , der forventes , men uforudsigelige. For eksempel kan en input-enhed som en sensor eller en dårligt fungerende printer udløse en interrupt , at din ansøgning skal reagere på til enhver tid. Undtagelser er dog advarsler, der opstår, når noget går galt. For eksempel hvis en funktion søger efter specifikke oplysninger på en hukommelse adresse eller forsøger at indlæse en fil, der ikke er der, en undtagelse udløses der giver dit system en chance for at rette ting yndefuldt og undgå et styrt.
< br >
regneoperationer Funktioner
Xilinx omfatter libgcc.a runtime bibliotek til brug med indlejrede processorer , der har begrænset eller ingen hardware support for matematiske operationer . Libgcc.a giver C- funktioner til heltal, floating point samt matematik -relaterede exception handling rutiner. Xilinx libgcc understøtter både PowerPC- og MicroBlaze processorer. Libcss.a yder ikke heltal aritmetiske tjenester til PowerPC-processorer , men det har heltal matematik hardware support bygget i.
Memory Management og Threads
Xilinx hukommelse ledelse og tråde håndteres med ANSI C standardfunktioner. Der er ingen ekstra støtte eller beskyttelse , men for enhver C-funktioner , du måske udføre i multi -threaded miljøer. Xilinx kerne API eller application programming interface , på den anden side, giver operativsystem -lignende C-funktioner , der kan overvinde disse begrænsninger. Selve kernen API indeholder alternativer til malloc , calloc og gratis , som giver bedre dynamisk hukommelse kapaciteter og er thread- safe så godt.