MICROCHIP CoreFPU Core enota s plavajočo vejico
Uvod
- Enota CoreFPU (CoreFPU) je zasnovana za aritmetiko s plavajočo vejico in pretvorbene operacije za števila s plavajočo vejico z enojno in dvojno natančnostjo. CoreFPU podpira pretvorbe iz fiksne vejice v plavajočo vejico in iz plavajoče vejice v fiksno vejico ter operacije seštevanja, odštevanja in množenja s plavajočo vejico. Standard IEEE® za aritmetiko s plavajočo vejico (IEEE 754) je tehnični standard za računanje s plavajočo vejico.
- Pomembno: CoreFPU podpira izračune samo z normaliziranimi števili in podprt je samo jezik Verilog; VHDL ni podprt.
Povzetek
Naslednja tabela prikazuje povzetek značilnosti CoreFPU.
Tabela 1. Značilnosti CoreFPU
Osnovna različica | Ta dokument velja za CoreFPU različice 3.0. |
Podprte družine naprav |
|
Podprt tok orodja | Zahteva Libero® SoC v12.6 ali novejše izdaje. |
Licenciranje | CoreFPU ni licenčno zaklenjen. |
Navodila za namestitev | CoreFPU je treba samodejno namestiti v IP katalog Libero SoC prek funkcije posodobitve IP kataloga. Lahko pa CoreFPU ročno prenesete iz kataloga. Ko je IP jedro nameščeno
Ko je nameščen, je konfiguriran, generiran in instanciran znotraj SmartDesigna za vključitev v projekt. |
Uporaba in zmogljivost naprave | Povzetek informacij o uporabi in zmogljivosti za CoreFPU je naveden v razdelku Uporaba in zmogljivost virov naprave. |
Informacije o dnevniku sprememb CoreFPU
Ta razdelek nudi celovit pregledview na novo vključenih funkcij, začenši z najnovejšo izdajo. Za več informacij o odpravljenih težavah glejte razdelek Odpravljene težave.
Različica | Kaj je novega |
v3.0 | Implementirane dodatne izhodne zastavice za izboljšanje natančnosti IP-ja |
v2.1 | Dodana je funkcija dvojne natančnosti |
v2.0 | Posodobljene časovne valovne oblike |
v1.0 | Prva produkcijska izdaja CoreFPU |
1. Lastnosti
CoreFPU ima naslednje ključne lastnosti:
- Podpira enojna in dvojna natančnost plavajočih števil v skladu s standardom IEEE-754
- Podpira naslednje konverzije:
- Pretvorba fiksne vejice v plavajočo vejico
- Pretvorba iz plavajoče vejice v fiksno vejico
- Podpira aritmetične operacije, kot je navedeno:
- Seštevanje s plavajočo vejico
- Odštevanje s plavajočo vejico
- Množenje s plavajočo vejico
- Zagotavlja shemo zaokroževanja (zaokrožitev na najbližje sodo število) samo za aritmetične operacije
- Zagotavlja zastavice za prelivanje, premajhno prelivanje, neskončnost (pozitivna neskončnost, negativna neskončnost), tiho NaN (QNaN) in signalizacijsko NaN (SNaN) za števila s plavajočo vejico.
- Podpira popolnoma cevovodno implementacijo aritmetičnih operacij
- Zagotavlja možnost konfiguracije jedra za zahteve oblikovanja
Funkcionalni opis
- Standard IEEE za aritmetiko s plavajočo vejico (IEEE 754) je tehnični standard za računanje s plavajočo vejico. Izraz plavajoča vejica se nanaša na osnovo števila (decimalno ali binarno vejico), ki je postavljena kjer koli glede na pomembne števke števila.
Število s plavajočo vejico je običajno izraženo v znanstvenem zapisu z ulomkom (F) in eksponentom (E) določene osnove (r) v obliki F × r^E. Decimalna števila uporabljajo osnovo 10 (F × 10^E), medtem ko dvojiška števila uporabljajo osnovo 2 (F × 2^E). - Predstavitev števila s plavajočo vejico ni enolična. Na primerampNa primer, število 55.66 je predstavljeno kot 5.566 × 10^1, 0.5566 × 10^2, 0.05566 × 10^3 in tako naprej. Decimalni del je normaliziran. V normalizirani obliki je pred korensko točko samo ena števka, ki ni nič. Na primerampdesetiško število 123.4567 je normalizirano kot 1.234567 × 10^2; binarno število 1010.1011B je normalizirano kot 1.0101011B × 2^3.
- Pomembno je omeniti, da števila s plavajočo vejico izgubijo natančnost, če so predstavljena s fiksnim številom bitov (npr.amp32-bitni ali 64-bitni). To je zato, ker obstaja neskončno število realnih števil (tudi znotraj majhnega območja od 0.0 do 0.1). Po drugi strani pa
n-bitni binarni vzorec predstavlja končnih 2^n različnih števil. Zato niso predstavljena vsa realna števila. Namesto tega se uporabi najbližji približek, kar povzroči izgubo natančnosti.
Število z enojno natančnostjo in plavajočo vejico je predstavljeno na naslednji način:
- Predznakovni bit: 1-bitni
- Širina eksponenta: 8 bitov
- Pomembna natančnost: 24 bitov (23 bitov je eksplicitno shranjenih)
Slika 2-1. 32-bitni okvir
Število z dvojno natančnostjo in plavajočo vejico je predstavljeno na naslednji način:
- Predznakovni bit: 1-bitni
- Širina eksponenta: 11 bitov
- Pomembna natančnost: 53 bitov (52 bitov je eksplicitno shranjenih)
Slika 2-2. 64-bitni okvir CoreFPU je vrhunska integracija dveh pretvorbenih modulov (Fixed to Float point in Float to Fixed point) in treh aritmetičnih operacij (FP ADD, FP SUB in FP MULT). Uporabnik lahko konfigurira katero koli od operacij glede na zahteve, tako da se viri uporabijo za izbrano operacijo.
Naslednja slika prikazuje blokovni diagram CoreFPU najvišje ravni z vrati.
Slika 2-3. Blokovni diagram vrat CoreFPU
V naslednji tabeli je navedena širina vhodnih in izhodnih vrat. Tabela 2-1. Širina vhodnih in izhodnih vrat
Signal | Širina enojne natančnosti | Dvojna natančna širina |
ain | [31:0] | [63:0] |
koš | [31:0] | [63:0] |
zunaj | [31:0] | [63:0] |
duriti se | [31:0] | [63:0] |
Pretvorba iz fiksne vejice v plavajočo vejico
CoreFPU, konfiguriran kot fiksno v plavajočo vejico, sklepa na modul za pretvorbo fiksne vejice v plavajočo vejico. Vhod (ain) v CoreFPU je poljubno število s fiksno vejico, ki vsebuje celoštevilčne in ulomkovne bite. Konfigurator CoreFPU ima možnosti izbire vhodne širine celih števil in ulomkov. Vhod je veljaven za signal di_valid, izhod pa je veljaven za signal do_valid. Izhod (aout) operacije fiksno v plavajočo vejico je v obliki enojnega ali dvojnega natančnosti s plavajočo vejico.
ExampOpis operacije pretvorbe iz fiksne vejice v plavajočo vejico je naveden v naslednji tabeli.
Tabela 2-2. nprample za pretvorbo fiksne vejice v plavajočo vejico
Število s fiksno vejico | Število s plavajočo vejico | |||||
ain | Celo število | Ulomek | zunaj | Podpis | Eksponent | Mantisa |
0x12153524 (32-bitni) | 00010010000101010 | 011010100100100 | 0x4610a9a9 | 0 | 10001100 | 00100001010100110101001 |
0x0000000000008CCC
(64-bitni) |
0000000000000000000000000000000000000000000000001 | 000110011001100 | 0x3FF199999999999A | 0 | 01111111111 | 0001100110011001100110011001100110011001100110011010 |
Pretvorba iz plavajoče vejice v fiksno vejico
CoreFPU, konfiguriran kot število s plavajočo v fiksno vejico, sklepa na modul za pretvorbo števila s plavajočo vejico v fiksno vejico. Vhod (ain) v CoreFPU je poljubno število s plavajočo vejico enojne ali dvojne natančnosti in ustvari izhod (aout) v formatu fiksne vejice, ki vsebuje celoštevilske in ulomkovne bite. Vhod je veljaven za signal di_valid, izhod pa je veljaven za signal do_valid. Konfigurator CoreFPU ima možnosti za izbiro izhodne širine celih števil in ulomkov.
ExampOpis operacije pretvorbe iz plavajoče vejice v fiksno vejico je naveden v naslednji tabeli.
Tabela 2-3. nprample za pretvorbo iz plavajoče vejice v fiksno vejico
Število s plavajočo vejico | Število s fiksno vejico | |||||
ain | Podpis | Eksponent | Mantisa | zunaj | Celo število | Ulomek |
0x41bd6783 (32-bitni) | 0 | 10000011 | 01111010110011110000011 | 0x000bd678 | 00000000000010111 | 101011001111000 |
0x4002094c447c30d3
(64-bitni) |
0 | 10000000000 | 0010000010010100110001000100011111000011000011010011 | 0x0000000000012095 | 0000000000000000000000000000000000000000000000010 | 010000010010101 |
Seštevanje s plavajočo vejico (aritmetična operacija)
CoreFPU, konfiguriran kot FP ADD, sklepa na modul za seštevanje števil s plavajočo vejico. Sešteje dve števili s plavajočo vejico (ain in bin) in zagotovi izhod (pout) v formatu s plavajočo vejico. Vhod in izhod sta števili s plavajočo vejico enojne ali dvojne natančnosti. Vhod je veljaven za signal di_valid, izhod pa je veljaven za signal do_valid. Jedro na podlagi operacije seštevanja ustvari zastavice ovfl_fg (prekoračitev), qnan_fg (tiho ni število), snan_fg (signalizacija ni število), pinf_fg (pozitivna neskončnost) in ninf_fg (negativna neskončnost).
ExampDatoteke za operacije seštevanja s plavajočo vejico so navedene v naslednjih tabelah.
Tabela 2-4. nprample za operacijo seštevanja s plavajočo vejico (32-bitno)
Vrednost s plavajočo vejico | Podpis | Eksponent | Mantisa |
Vhod s plavajočo vejico 1 ain (0x4e989680) | 0 | 10011101 | 00110001001011010000000 |
Vhod s plavajočo vejico 2, predal (0x4f191b40) | 0 | 10011110 | 00110010001101101000000 |
Izhod seštevanja s plavajočo vejico pout (0x4f656680) | 0 | 10011110 | 11001010110011010000000 |
Tabela 2-5. nprample za operacijo seštevanja s plavajočo vejico (64-bitno)
Vrednost s plavajočo vejico | Podpis | Eksponent | Mantisa |
Vhod s plavajočo vejico 1
ain (0x3ff4106ee30caa32) |
0 | 01111111111 | 0100000100000110111011100011000011001010101000110010 |
Vhod s plavajočo vejico 2
bin (0x40020b2a78798e61) |
0 | 10000000000 | 0010000010110010101001111000011110011000111001100001 |
Izhod seštevanja s plavajočo vejico pout (0x400c1361e9ffe37a) | 0 | 10000000000 | 1100000100110110000111101001111111111110001101111010 |
Odštevanje s plavajočo vejico (aritmetična operacija)
CoreFPU, konfiguriran kot FP SUB, sklepa na modul za odštevanje števil s plavajočo vejico. Odšteje dve števili s plavajočo vejico (ain in bin) in zagotovi izhod (pout) v formatu s plavajočo vejico. Vhod in izhod sta števili s plavajočo vejico enojne ali dvojne natančnosti. Vhod je veljaven za signal di_valid, izhod pa je veljaven za signal do_valid. Jedro na podlagi operacije odštevanja ustvari zastavice ovfl_fg (prelivanje), unfl_fg (podlivanje), qnan_fg (tiho ni število), snan_fg (signaliziranje ni število), pinf_fg (pozitivna neskončnost) in ninf_fg (negativna neskončnost).
ExampDatoteke za operacijo odštevanja s plavajočo vejico so navedene v naslednjih tabelah.
Tabela 2-6. nprample za operacijo odštevanja s plavajočo vejico (32-bitno)
Vrednost s plavajočo vejico | Podpis | Eksponent | Mantisa |
Vhod s plavajočo vejico 1 ain (0xac85465f) | 1 | 01011001 | 00001010100011001011111 |
Vhod s plavajočo vejico 2, predal (0x2f516779) | 0 | 01011110 | 10100010110011101111001 |
Izhod odštevanja s plavajočo vejico pout (0xaf5591ac) | 1 | 01011110 | 10101011001000110101011 |
Vrednost s plavajočo vejico | Podpis | Eksponent | Mantisa |
Vhod s plavajočo vejico 1
zadnji (0x405569764adff823) |
0 | 10000000101 | 0101011010010111011001001010110111111111100000100011 |
Vhod s plavajočo vejico 2
bin (0x4057d04e78dee3fc) |
0 | 10000000101 | 0111110100000100111001111000110111101110001111111100 |
Izhod odštevanja s plavajočo vejico pout (0xc02336c16ff75ec8) | 1 | 10000000010 | 0011001101101100000101101111111101110101111011001000 |
Množenje s plavajočo vejico (aritmetična operacija)
CoreFPU, konfiguriran kot FP MULT, sklepa na modul za množenje s plavajočo vejico. Pomnoži dve števili s plavajočo vejico (ain in bin) in zagotovi izhod (pout) v formatu s plavajočo vejico. Vhod in izhod sta števili s plavajočo vejico enojne ali dvojne natančnosti. Vhod je veljaven za signal di_valid, izhod pa je veljaven za signal do_valid. Jedro na podlagi operacije množenja ustvari zastavice ovfl_fg (prekoračitev), unfl_fg (podpovprečje), qnan_fg (tiho ni število), snan_fg (signalizacija ni število), pinf_fg (pozitivna neskončnost) in ninf_fg (negativna neskončnost).
ExampDatoteke za operacije množenja s plavajočo vejico so navedene v naslednjih tabelah.
Tabela 2-8. nprample za operacijo množenja s plavajočo vejico (32-bitno)
Vrednost s plavajočo vejico | Podpis | Eksponent | Mantisa |
Vhod s plavajočo vejico 1 ain (0x1ec7a735) | 0 | 00111101 | 10001111010011100110101 |
Vhod s plavajočo vejico 2, predal (0x6ecf15e8) | 0 | 11011101 | 10011110001010111101000 |
Izhod množenja s plavajočo vejico pout (0x4e21814a) | 0 | 10011100 | 01000011000000101001010 |
Vrednost s plavajočo vejico | Podpis | Eksponent | Mantisa |
Vhod s plavajočo vejico 1
ain (0x40c1f5a9930be0df) |
0 | 10000001100 | 0001111101011010100110010011000010111110000011011111 |
Vhod s plavajočo vejico 2
bin (0x400a0866c962b501) |
0 | 10000000000 | 1010000010000110011011001001011000101011010100000001 |
Izhod množenja s plavajočo vejico pout (0x40dd38a1c3e2cae9) | 0 | 10000001101 | 1101001110001010000111000011111000101100101011101001 |
Tabela resnice za seštevanje in odštevanje
Naslednje tabele resnice navajajo vrednosti za operaciji seštevanja in odštevanja. Tabela 2-10. Tabela resnice za seštevanje
Podatek A | Podatek B | Znak Bit | Rezultat | Preliv | Podtok | SNaN | QNaN | PINF | NINF |
QNaN/SNaN | x | 0 | POSQNaN | 0 | 0 | 0 | 1 | 0 | 0 |
x | QNaN/SNaN | 0 | POSQNaN | 0 | 0 | 0 | 1 | 0 | 0 |
nič | nič | 0 | POSZERO | 0 | 0 | 0 | 0 | 0 | 0 |
nič | posfinite(y) | 0 | posfinite(y) | 0 | 0 | 0 | 0 | 0 | 0 |
nič | negfinite(y) | 1 | negfinite(y) | 0 | 0 | 0 | 0 | 0 | 0 |
nič | pozinkončno | 0 | pozinkončno | 0 | 0 | 0 | 0 | 1 | 0 |
nič | neskončno | 1 | neskončno | 0 | 0 | 0 | 0 | 0 | 1 |
posfinite(y) | nič | 0 | posfinite(y) | 0 | 0 | 0 | 0 | 0 | 0 |
posfinitiven | pozinkončno | 0 | pozinkončno | 0 | 0 | 0 | 0 | 1 | 0 |
Tabela 2-10. Tabela resnice za seštevanje (nadaljevanje) | |||||||||
Podatek A | Podatek B | Znak Bit | Rezultat | Preliv | Podtok | SNaN | QNaN | PINF | NINF |
posfinitiven | neskončno | 1 | neskončno | 0 | 0 | 0 | 0 | 0 | 1 |
negfinite(y) | nič | 1 | negfinite(y) | 0 | 0 | 0 | 0 | 0 | 0 |
negfinite | pozinkončno | 0 | pozinkončno | 0 | 0 | 0 | 0 | 1 | 0 |
negfinite | neskončno | 1 | neskončno | 0 | 0 | 0 | 0 | 0 | 1 |
pozinkončno | nič | 0 | pozinkončno | 0 | 0 | 0 | 0 | 1 | 0 |
pozinkončno | posfinitiven | 0 | pozinkončno | 0 | 0 | 0 | 0 | 1 | 0 |
pozinkončno | negfinite | 0 | pozinkončno | 0 | 0 | 0 | 0 | 1 | 0 |
pozinkončno | pozinkončno | 0 | pozinkončno | 0 | 0 | 0 | 0 | 1 | 0 |
pozinkončno | neskončno | 0 | POSQNaN | 0 | 0 | 0 | 1 | 0 | 0 |
neskončno | nič | 1 | neskončno | 0 | 0 | 0 | 0 | 0 | 1 |
neskončno | posfinitiven | 1 | neskončno | 0 | 0 | 0 | 0 | 0 | 1 |
neskončno | negfinite | 1 | neskončno | 0 | 0 | 0 | 0 | 0 | 1 |
neskončno | pozinkončno | 0 | POSQNaN | 0 | 0 | 0 | 1 | 0 | 0 |
neskončno | neskončno | 1 | neskončno | 0 | 0 | 0 | 0 | 0 | 1 |
posfinitiven | posfinitiven | 0 | posfinitiven | 0 | 0 | 0 | 0 | 0 | 0 |
posfinitiven | posfinitiven | 0 | pozinkončno | 0 | 0 | 0 | 0 | 1 | 0 |
posfinitiven | posfinitiven | 0/1 | QNaN | 0 | 0 | 0 | 1 | 0 | 0 |
posfinitiven | posfinitiven | 0/1 | SNaN | 0 | 0 | 1 | 0 | 0 | 0 |
posfinitiven | posfinitiven | 0 | POSSNaN | 1 | 0 | 1 | 0 | 0 | 0 |
posfinitiven | negfinite | 0 | posfinitiven | 0 | 0 | 0 | 0 | 0 | 0 |
posfinitiven | negfinite | 1 | negfinite | 0 | 0 | 0 | 0 | 0 | 0 |
posfinitiven | negfinite | 0 | POSSNaN | 0 | 1 | 1 | 0 | 0 | 0 |
negfinite | posfinitiven | 0 | posfinitiven | 0 | 0 | 0 | 0 | 0 | 0 |
negfinite | posfinitiven | 1 | negfinite | 0 | 0 | 0 | 0 | 0 | 0 |
negfinite | posfinitiven | 0 | POSSNaN | 0 | 1 | 1 | 0 | 0 | 0 |
negfinite | negfinite | 1 | negfinite | 0 | 0 | 0 | 0 | 0 | 0 |
negfinite | negfinite | 1 | neskončno | 0 | 0 | 0 | 0 | 0 | 1 |
negfinite | negfinite | 0/1 | QNaN | 0 | 0 | 0 | 1 | 0 | 0 |
negfinite | negfinite | 0/1 | SNaN | 0 | 0 | 1 | 0 | 0 | 0 |
negfinite | negfinite | 0 | POSSNaN | 1 | 0 | 1 | 0 | 0 | 0 |
Podatek A | Podatek B | Znak Bit | Rezultat | Preliv | Podtok | SNaN | QNaN | PINF | NINF |
QNaN/SNaN | x | 0 | POSQNaN | 0 | 0 | 0 | 1 | 0 | 0 |
x | QNaN/SNaN | 0 | POSQNaN | 0 | 0 | 0 | 1 | 0 | 0 |
nič | nič | 0 | POSZERO | 0 | 0 | 0 | 0 | 0 | 0 |
nič | posfinite(y) | 1 | negfinite(y) | 0 | 0 | 0 | 0 | 0 | 0 |
nič | negfinite(y) | 0 | posfinite(y) | 0 | 0 | 0 | 0 | 0 | 0 |
nič | pozinkončno | 1 | neskončno | 0 | 0 | 0 | 0 | 0 | 1 |
nič | neskončno | 0 | pozinkončno | 0 | 0 | 0 | 0 | 1 | 0 |
posfinite(y) | nič | 0 | posfinite(y) | 0 | 0 | 0 | 0 | 0 | 0 |
posfinitiven | pozinkončno | 1 | neskončno | 0 | 0 | 0 | 0 | 0 | 1 |
posfinitiven | neskončno | 0 | pozinkončno | 0 | 0 | 0 | 0 | 1 | 0 |
negfinite(y) | nič | 1 | negfinite(y) | 0 | 0 | 0 | 0 | 0 | 0 |
negfinite | pozinkončno | 1 | neskončno | 0 | 0 | 0 | 0 | 0 | 1 |
Tabela 2-11. Tabela resnice za odštevanje (nadaljevanje) | |||||||||
Podatek A | Podatek B | Znak Bit | Rezultat | Preliv | Podtok | SNaN | QNaN | PINF | NINF |
negfinite | neskončno | 0 | pozinkončno | 0 | 0 | 0 | 0 | 1 | 0 |
pozinkončno | nič | 0 | pozinkončno | 0 | 0 | 0 | 0 | 1 | 0 |
pozinkončno | posfinitiven | 0 | pozinkončno | 0 | 0 | 0 | 0 | 1 | 0 |
pozinkončno | negfinite | 0 | pozinkončno | 0 | 0 | 0 | 0 | 1 | 0 |
pozinkončno | pozinkončno | 0 | POSQNaN | 0 | 0 | 0 | 1 | 0 | 0 |
pozinkončno | neskončno | 0 | pozinkončno | 0 | 0 | 0 | 0 | 1 | 0 |
neskončno | nič | 1 | neskončno | 0 | 0 | 0 | 0 | 0 | 1 |
neskončno | posfinitiven | 1 | neskončno | 0 | 0 | 0 | 0 | 0 | 1 |
neskončno | negfinite | 1 | neskončno | 0 | 0 | 0 | 0 | 0 | 1 |
neskončno | pozinkončno | 1 | neskončno | 0 | 0 | 0 | 0 | 0 | 1 |
neskončno | neskončno | 0 | POSQNaN | 0 | 0 | 0 | 1 | 0 | 0 |
posfinitiven | posfinitiven | 0 | posfinitiven | 0 | 0 | 0 | 0 | 0 | 0 |
posfinitiven | posfinitiven | 1 | negfinite | 0 | 0 | 0 | 0 | 0 | 0 |
posfinitiven | posfinitiven | 0 | POSSNaN | 0 | 1 | 1 | 0 | 0 | 0 |
posfinitiven | negfinite | 0 | posfinitiven | 0 | 0 | 0 | 0 | 0 | 0 |
posfinitiven | negfinite | 0 | pozinkončno | 0 | 0 | 0 | 0 | 1 | 0 |
posfinitiven | negfinite | 0/1 | QNaN | 0 | 0 | 0 | 1 | 0 | 0 |
posfinitiven | negfinite | 0/1 | SNaN | 0 | 0 | 1 | 0 | 0 | 0 |
posfinitiven | negfinite | 0 | POSSNaN | 1 | 0 | 1 | 0 | 0 | 0 |
negfinite | posfinitiven | 1 | negfinite | 0 | 0 | 0 | 0 | 0 | 0 |
negfinite | posfinitiven | 1 | neskončno | 0 | 0 | 0 | 0 | 0 | 1 |
negfinite | posfinitiven | 0/1 | QNaN | 0 | 0 | 0 | 1 | 0 | 0 |
negfinite | posfinitiven | 0/1 | SNaN | 0 | 0 | 1 | 0 | 0 | 0 |
negfinite | posfinitiven | 0 | POSSNaN | 1 | 0 | 1 | 0 | 0 | 0 |
negfinite | negfinite | 0 | posfinitiven | 0 | 0 | 0 | 0 | 0 | 0 |
negfinite | negfinite | 1 | negfinite | 0 | 0 | 0 | 0 | 0 | 0 |
negfinite | negfinite | 0 | POSSNaN | 0 | 1 | 1 | 0 | 0 | 0 |
Pomembno:
- V prejšnjih tabelah označujejo poljubno število.
- V prejšnjih tabelah označuje stanje, ko vam ni mar.
Tabela resnice za množenje
Naslednja tabela resnice navaja vrednosti za operacijo množenja.
Tabela 2-12. Tabela resnice za množenje
Podatek A | Podatek B | Znak Bit | Rezultat | Preliv | Podtok | SNaN | QNaN | PINF | NINF |
QNaN/SNaN | x | 0 | POSQNaN | 0 | 0 | 0 | 1 | 0 | 0 |
x | QNaN/SNaN | 0 | POSQNaN | 0 | 0 | 0 | 1 | 0 | 0 |
nič | nič | 0 | POSZERO | 0 | 0 | 0 | 0 | 0 | 0 |
nič | posfinitiven | 0 | POSZERO | 0 | 0 | 0 | 0 | 0 | 0 |
nič | negfinite | 0 | POSZERO | 0 | 0 | 0 | 0 | 0 | 0 |
nič | pozinkončno | 0 | POSQNaN | 0 | 0 | 0 | 1 | 0 | 0 |
nič | neskončno | 0 | POSQNaN | 0 | 0 | 0 | 1 | 0 | 0 |
Tabela 2-12. Tabela resnice za množenje (nadaljevanje) | |||||||||
Podatek A | Podatek B | Znak Bit | Rezultat | Preliv | Podtok | SNaN | QNaN | PINF | NINF |
posfinitiven | nič | 0 | POSZERO | 0 | 0 | 0 | 0 | 0 | 0 |
posfinitiven | pozinkončno | 0 | pozinkončno | 0 | 0 | 0 | 0 | 1 | 0 |
posfinitiven | neskončno | 1 | neskončno | 0 | 0 | 0 | 0 | 0 | 1 |
negfinite | nič | 0 | POSZERO | 0 | 0 | 0 | 0 | 0 | 0 |
negfinite | pozinkončno | 1 | neskončno | 0 | 0 | 0 | 0 | 0 | 1 |
negfinite | neskončno | 0 | pozinkončno | 0 | 0 | 0 | 0 | 1 | 0 |
pozinkončno | nič | 0 | POSQNaN | 0 | 0 | 0 | 1 | 0 | 0 |
pozinkončno | posfinitiven | 0 | pozinkončno | 0 | 0 | 0 | 0 | 1 | 0 |
pozinkončno | negfinite | 1 | neskončno | 0 | 0 | 0 | 0 | 0 | 1 |
pozinkončno | pozinkončno | 0 | pozinkončno | 0 | 0 | 0 | 0 | 1 | 0 |
pozinkončno | neskončno | 1 | neskončno | 0 | 0 | 0 | 0 | 0 | 1 |
neskončno | nič | 0 | POSQNaN | 0 | 0 | 0 | 1 | 0 | 0 |
neskončno | posfinitiven | 1 | neskončno | 0 | 0 | 0 | 0 | 0 | 1 |
neskončno | negfinite | 0 | pozinkončno | 0 | 0 | 0 | 0 | 1 | 0 |
neskončno | pozinkončno | 1 | neskončno | 0 | 0 | 0 | 0 | 0 | 1 |
neskončno | neskončno | 0 | pozinkončno | 0 | 0 | 0 | 0 | 1 | 0 |
posfinitiven | posfinitiven | 0 | posfinitiven | 0 | 0 | 0 | 0 | 0 | 0 |
posfinitiven | posfinitiven | 0 | pozinkončno | 0 | 0 | 0 | 0 | 1 | 0 |
posfinitiven | posfinitiven | 0 | POSQNaN | 0 | 0 | 0 | 1 | 0 | 0 |
posfinitiven | posfinitiven | 0 | POSSNaN | 0 | 0 | 1 | 0 | 0 | 0 |
posfinitiven | posfinitiven | 0 | POSSNaN | 1 | 0 | 1 | 0 | 0 | 0 |
posfinitiven | posfinitiven | 0 | POSSNaN | 0 | 1 | 1 | 0 | 0 | 0 |
posfinitiven | negfinite | 1 | negfinite | 0 | 0 | 0 | 0 | 0 | 0 |
posfinitiven | negfinite | 1 | neskončno | 0 | 0 | 0 | 0 | 0 | 1 |
posfinitiven | negfinite | 0 | POSQNaN | 0 | 0 | 0 | 1 | 0 | 0 |
posfinitiven | negfinite | 0 | POSSNaN | 0 | 0 | 1 | 0 | 0 | 0 |
posfinitiven | negfinite | 0 | POSSNaN | 1 | 0 | 1 | 0 | 0 | 0 |
posfinitiven | negfinite | 0 | POSSNaN | 0 | 1 | 1 | 0 | 0 | 0 |
negfinite | posfinitiven | 1 | negfinite | 0 | 0 | 0 | 0 | 0 | 0 |
negfinite | posfinitiven | 1 | neskončno | 0 | 0 | 0 | 0 | 0 | 1 |
negfinite | posfinitiven | 0 | POSQNaN | 0 | 0 | 0 | 1 | 0 | 0 |
negfinite | posfinitiven | 0 | POSSNaN | 0 | 0 | 1 | 0 | 0 | 0 |
negfinite | posfinitiven | 0 | POSSNaN | 1 | 0 | 1 | 0 | 0 | 0 |
negfinite | posfinitiven | 0 | POSSNaN | 0 | 1 | 1 | 0 | 0 | 0 |
negfinite | negfinite | 0 | posfinitiven | 0 | 0 | 0 | 0 | 0 | 0 |
negfinite | negfinite | 0 | pozinkončno | 0 | 0 | 0 | 0 | 1 | 0 |
negfinite | negfinite | 0 | POSQNaN | 0 | 0 | 0 | 1 | 0 | 0 |
negfinite | negfinite | 0 | POSQNaN | 0 | 0 | 1 | 0 | 0 | 0 |
negfinite | negfinite | 0 | POSQNaN | 1 | 0 | 1 | 0 | 0 | 0 |
negfinite | negfinite | 0 | POSQNaN | 0 | 1 | 1 | 0 | 0 | 0 |
Pomembno:
Predznakovni bit '0' definira pozitivni izhod, '1' pa negativni izhod.
Znak x v prejšnji tabeli označuje pogoj »ne zanima me«.
Parametri CoreFPU in vmesniški signali
V tem razdelku so obravnavani parametri v nastavitvah konfiguratorja CoreFPU in V/I signali.
Parametri GUI konfiguracije
Za enoto FPU je na voljo več nastavljivih možnosti, kot je prikazano v naslednji tabeli. Če je potrebna drugačna konfiguracija od privzete, se za izbiro ustreznih vrednosti za nastavljivo možnost uporabi pogovorno okno za konfiguracijo.
Tabela 3-1. Parametri grafičnega uporabniškega vmesnika za konfiguracijo CoreFPU
Ime parametra | Privzeto | Opis |
Natančnost | Samski | Izberite operacijo po potrebi:
Enojna natančnost |
Vrsta pretvorbe | Pretvorba fiksne vejice v plavajočo vejico | Izberite operacijo po potrebi:
|
Vnosna širina ulomka1 | 15 | Konfigurira delno točko v vhodnih signalih ain in bin
Veljavno območje je 31–1 |
Širina izhodne frakcije2 | 15 | Konfigurira delno točko v izhodnih signalih
Veljavno območje je 51–1 |
Pomembno:
- Ta parameter je mogoče konfigurirati samo med pretvorbo iz fiksne vejice v plavajočo vejico.
- Ta parameter je mogoče konfigurirati samo med pretvorbo iz plavajoče vejice v fiksno vejico.
Vhodni in izhodni signali (zastavite vprašanje)
V naslednji tabeli so navedeni vhodni in izhodni signali CoreFPU.
Tabela 3-2. Opis vrat
Ime signala | širina | Vrsta | Opis |
clk | 1 | Vnos | Glavna sistemska ura |
rstn | 1 | Vnos | Asinhrona ponastavitev z aktivno nizko napetostjo |
di_veljaven | 1 | Vnos | Veljaven aktiven visok vhod
Ta signal označuje, da so podatki, ki so prisotni na ain[31:0], ain[63:0] in bin[31:0], bin[63:0], veljavni. |
ain | 32/64 | Vnos | Vhodno vodilo (uporablja se za vse operacije) |
koš1 | 32/64 | Vnos | Vhodno vodilo B (uporablja se samo za aritmetične operacije) |
zunaj2 | 32/64 | Izhod | Izhodna vrednost, ko so izbrane operacije pretvorbe fiksne v plavajočo vejico ali plavajoče v fiksno vejico. |
duriti se1 | 32/64 | Izhod | Izhodna vrednost, ko so izbrane operacije seštevanja, odštevanja ali množenja. |
Tabela 3-2. Opis vrat (nadaljevanje) | |||
Ime signala | širina | Vrsta | Opis |
veljaven | 1 | Izhod | Aktivno-visok signal
Ta signal označuje, da so podatki na podatkovnem vodilu pout/aout veljavni. |
ovfl_fg3 | 1 | Izhod | Aktivno-visok signal
Ta signal označuje prekoračitev med operacijami s plavajočo vejico. |
unfl_fg | 1 | Izhod | Aktivno-visok signal
Ta signal označuje premajhno količino med operacijami s plavajočo vejico. |
qnan_fg3 | 1 | Izhod | Aktivno-visok signal
Ta signal označuje stanje Quiet Not a Number (QNaN) med operacijami s plavajočo vejico. |
snan_fg | 1 | Izhod | Aktivno-visok signal
Ta signal označuje signalizacijo »neštevilo« (SNaN) med operacijami s plavajočo vejico. |
pinf_fg3 | 1 | Izhod | Aktivno-visok signal
Ta signal označuje pozitivno neskončnost med operacijami s plavajočo vejico. |
ninf_fg | 1 | Izhod | Aktivno-visok signal
Ta signal označuje negativno neskončnost med operacijami s plavajočo vejico. |
Pomembno:
- Ta vrata so na voljo samo za operacije seštevanja, odštevanja ali množenja s plavajočo vejico.
- Ta vrata so na voljo samo za pretvorbo fiksne vejice v plavajočo vejico in plavajoče vejice v fiksno vejico.
- Ta vrata so na voljo za pretvorbo vrednosti iz plavajoče vejice v fiksno vejico, seštevanje s plavajočo vejico, odštevanje s plavajočo vejico in množenje s plavajočo vejico.
Implementacija CoreFPU v Libero Design Suite
V tem razdelku je opisana implementacija CoreFPU v paketu Libero Design Suite.
SmartDesign
CoreFPU je na voljo za prenos v katalogu Libero IP prek web repozitorij. Ko je jedro navedeno v katalogu, se instancira s potekom SmartDesign. Za informacije o uporabi SmartDesign za konfiguriranje, povezovanje in ustvarjanje jeder glejte spletno pomoč Libero SoC.
Po konfiguraciji in generiranju osrednjega primerka se osnovna funkcionalnost simulira z uporabo testne naprave, ki je priložena CoreFPU. Parametri testne naprave se samodejno prilagodijo konfiguraciji CoreFPU. CoreFPU je instanciran kot komponenta večje zasnove.
Slika 4-1. Primerek SmartDesign CoreFPU za aritmetične operacije
Slika 4-2. Primerek SmartDesign CoreFPU za operacijo pretvorbe
Pretvorba fiksne vejice v plavajočo vejico
Med pretvorbo iz fiksne vejice v plavajočo vejico je širina vhodnega ulomka nastavljiva. Izhodna širina je privzeto nastavljena na 32-bitno za pretvorbo z enojno natančnostjo in 64-bitno za pretvorbo z dvojno natančnostjo s plavajočo vejico.
Za pretvorbo iz fiksne vejice v plavajočo vejico izberite vrsto pretvorbe Iz fiksne v plavajočo vejico, kot je prikazano na naslednji sliki.
Plavajoča vejica v fiksno vejico
Med pretvorbo iz plavajoče vejice v fiksno vejico je izhodna ulomna širina nastavljiva, vhodna širina pa je privzeto nastavljena na 32-bitno za enojno natančnost in 64-bitno za dvojno natančnost plavajoče vejice.
Za pretvorbo iz plavajoče vejice v fiksno vejico izberite vrsto pretvorbe Iz plavajoče vejice v fiksno, kot je prikazano na naslednji sliki.
Slika 4-4. Konfigurator CoreFPU za pretvorbo iz plavajoče vejice v fiksno vejico Seštevanje/odštevanje/množenje s plavajočo vejico
Med seštevanjem, odštevanjem in množenjem s plavajočo vejico širine vhodnega ulomka in širine izhodnega ulomka ni mogoče konfigurirati, saj gre za aritmetične operacije s plavajočo vejico, širina vhodnega/izhodnega ulomka pa je privzeto nastavljena na 32-bitno enojno natančnost in 64-bitno za operacije s plavajočo vejico dvojne natančnosti.
Naslednja slika prikazuje konfigurator CoreFPU za operacijo odštevanja s plavajočo vejico.
Slika 4-5. Konfigurator CoreFPU za odštevanje s plavajočo vejicoSimulacija (postavite vprašanje)
Za zagon simulacij v oknu za konfiguracijo jedra izberite Uporabniško testno okolje. Po generiranju CoreFPU-ja se predsintetizirajoče testno okolje Hardware Description Language (HDL) fileso nameščeni v Liberu.
Simulacijske valovne oblike (Postavite vprašanje)
V tem razdelku so obravnavane simulacijske valovne oblike za CoreFPU.
Naslednje slike prikazujejo valovno obliko pretvorbe fiksne vejice v plavajočo vejico za 32-bitni in 64-bitni sistem.
Sistemska integracija
Naslednja slika prikazuje exampuporabo jedra. V tem primeruampNa primer, UART zasnove se uporablja kot komunikacijski kanal med zasnovo in gostiteljskim računalnikom. Signala ain in bin (vsak s 32-bitno ali 64-bitno širino) sta vhoda v zasnovo iz UART-a. Ko CoreFPU prejme signal di_valid, izračuna rezultat. Po izračunu rezultata signal do_valid preide v visok nivo in shrani rezultat (podatke aout/pout) v izhodni medpomnilnik. Isti postopek velja za pretvorbo in aritmetične operacije. Za pretvorbo zadostuje samo vhod ain, medtem ko sta za aritmetične operacije potrebna oba vhoda, ain in bin. Izhod aout je omogočen za pretvorbene operacije, vrata pout pa so omogočena za aritmetične operacije.
Slika 4-16. nprample sistema CoreFPU
- Sinteza (Postavite vprašanje)
Za zagon sinteze na CoreFPU nastavite koren zasnove na primerek komponente IP in v podoknu poteka oblikovanja Libero zaženite orodje Synthesis.
Kraj in pot (Postavite vprašanje)
Ko je zasnova sintetizirana, zaženite orodje Place-and-Route. CoreFPU ne zahteva posebnih nastavitev place-and-Route. - Uporabniški testni sistem (Postavite vprašanje)
Z izdajo CoreFPU IP je na voljo uporabniška testna naprava. Z uporabo te testne naprave lahko preverite funkcionalno delovanje CoreFPU.
Poenostavljen blokovni diagram uporabniške testne naprave je prikazan na naslednji sliki. Uporabniška testna naprava ustvari konfigurirano zasnovo CoreFPU (UUT) in vključuje generator podatkov za vedenjske teste, potreben takt in signale za ponastavitev.
Slika 4-17. Uporabniško preskusno okolje CoreFPU
Pomembno: Izhodne signale morate spremljati v simulatorju ModelSim, glejte razdelek Simulacija.
Dodatne reference (Postavite vprašanje)
V tem razdelku je seznam dodatnih informacij.
Za posodobitve in dodatne informacije o programski opremi, napravah in strojni opremi obiščite
Strani o intelektualni lastnini o mikročipovih FPGA in PLD webmesto.
- Znane težave in rešitve (Postavite vprašanje)
Za CoreFPU v3.0 ni znanih težav in rešitev. - Ukinjene funkcije in naprave (Postavite vprašanje)
V tej izdaji IP ni ukinjenih funkcij in naprav.
Glosar
Sledi seznam izrazov in definicij, uporabljenih v dokumentu.
Tabela 6-1. Izrazi in definicije
Izraz | Opredelitev |
FPU | Enota za plavajočo vejico |
FP DODAJ | Seštevanje s plavajočo vejico |
FP SUB | Odštevanje s plavajočo vejico |
FP VEČ | Množenje s plavajočo vejico |
Rešene težave
V naslednji tabeli so navedene vse odpravljene težave za različne izdaje CoreFPU.
Tabela 7-1. Rešene težave
Sprostitev | Opis |
3.0 | Sledi seznam vseh odpravljenih težav v izdaji v3.0:
Številka primera: 01420387 in 01422128 Dodana je logika sheme zaokroževanja (zaokroževanje na najbližje sodo število). |
2.1 | Sledi seznam vseh odpravljenih težav v izdaji v2.1: Zasnova naleti na težave zaradi prisotnosti podvojenih modulov, ko je ustvarjenih več jeder. Preimenovanje instance IP-ja CoreFPU povzroči napako »Nedoločen modul«. |
1.0 | Začetna izdaja |
Uporaba in zmogljivost virov naprave
Makro CoreFPU je implementiran v družinah, navedenih v naslednji tabeli.
Tabela 8-1. Izkoriščenost enote FPU PolarFire za 32-bitno različico
Viri FPGA | Uporaba | |||||||
Družina | 4LUT | DFF | Skupaj | Matematični blok | Naprava | procentovtage | Učinkovitost | Zakasnitev |
Iz fiksne vejice v plavajočo vejico | ||||||||
PolarFire® | 260 | 104 | 364 | 0 | MPF300T | 0.12 | 310 MHz | 3 |
Plavajoča vejica v fiksno vejico | ||||||||
PolarFire | 591 | 102 | 693 | 0 | MPF300T | 0.23 | 160 MHz | 3 |
Seštevanje s plavajočo vejico | ||||||||
PolarFire | 1575 | 1551 | 3126 | 0 | MPF300T | 1.06 | 340 MHz | 16 |
Odštevanje s plavajočo vejico | ||||||||
PolarFire | 1561 | 1549 | 3110 | 0 | MPF300T | 1.04 | 345 MHz | 16 |
Množenje s plavajočo vejico | ||||||||
PolarFire | 465 | 847 | 1312 | 4 | MPF300T | 0.44 | 385 MHz | 14 |
Viri FPGA | Uporaba | |||||||
Družina | 4LUT | DFF | Skupaj | Matematični blok | Naprava | procentovtage | Učinkovitost | Zakasnitev |
Iz fiksne vejice v plavajočo vejico | ||||||||
RTG4™ | 264 | 104 | 368 | 0 | RT4G150 | 0.24 | 160 MHz | 3 |
Plavajoča vejica v fiksno vejico | ||||||||
RTG4 | 439 | 112 | 551 | 0 | RT4G150 | 0.36 | 105 MHz | 3 |
Seštevanje s plavajočo vejico | ||||||||
RTG4 | 1733 | 1551 | 3284 | 0 | RT4G150 | 1.16 | 195 MHz | 16 |
Odštevanje s plavajočo vejico | ||||||||
RTG4 | 1729 | 1549 | 3258 | 0 | RT4G150 | 1.16 | 190 MHz | 16 |
Množenje s plavajočo vejico | ||||||||
RTG4 | 468 | 847 | 1315 | 4 | RT4G150 | 0.87 | 175 MHz | 14 |
Viri FPGA | Uporaba | |||||||
Družina | 4LUT | DFF | Skupaj | Matematični blok | Naprava | procentovtage | Učinkovitost | Zakasnitev |
Iz fiksne vejice v plavajočo vejico | ||||||||
PolarFire® | 638 | 201 | 849 | 0 | MPF300T | 0.28 | 305 MHz | 3 |
Plavajoča vejica v fiksno vejico | ||||||||
PolarFire | 2442 | 203 | 2645 | 0 | MPF300T | 0.89 | 110 MHz | 3 |
Seštevanje s plavajočo vejico | ||||||||
PolarFire | 5144 | 4028 | 9172 | 0 | MPF300T | 3.06 | 240 MHz | 16 |
Odštevanje s plavajočo vejico | ||||||||
PolarFire | 5153 | 4026 | 9179 | 0 | MPF300T | 3.06 | 250 MHz | 16 |
Množenje s plavajočo vejico | ||||||||
PolarFire | 1161 | 3818 | 4979 | 16 | MPF300T | 1.66 | 340 MHz | 27 |
Viri FPGA | Uporaba | |||||||
Družina | 4LUT | DFF | Skupaj | Matematični blok | Naprava | procentovtage | Učinkovitost | Zakasnitev |
Iz fiksne vejice v plavajočo vejico | ||||||||
RTG4™ | 621 | 201 | 822 | 0 | RT4G150 | 0.54 | 140 MHz | 3 |
Plavajoča vejica v fiksno vejico | ||||||||
RTG4 | 1114 | 203 | 1215 | 0 | RT4G150 | 0.86 | 75 MHz | 3 |
Seštevanje s plavajočo vejico | ||||||||
RTG4 | 4941 | 4028 | 8969 | 0 | RT4G150 | 5.9 | 140 MHz | 16 |
Odštevanje s plavajočo vejico | ||||||||
RTG4 | 5190 | 4026 | 9216 | 0 | RT4G150 | 6.07 | 130 MHz | 16 |
Množenje s plavajočo vejico | ||||||||
RTG4 | 1165 | 3818 | 4983 | 16 | RT4G150 | 3.28 | 170 MHz | 27 |
Pomembno: Za povečanje frekvence izberite možnost Omogoči ponovno časovno usklajevanje v nastavitvah sinteze.
Zgodovina revizij
Zgodovina revizij opisuje spremembe, ki so bile izvedene v dokumentu. Spremembe so navedene po reviziji, začenši z najnovejšo objavo.
Podpora za Microchip FPGA
Skupina izdelkov Microchip FPGA podpira svoje izdelke z različnimi podpornimi storitvami, vključno s storitvami za stranke, centrom za tehnično podporo strankam, webspletno mesto in prodajne pisarne po vsem svetu. Strankam priporočamo, da obiščejo Microchipove spletne vire, preden stopijo v stik s podporo, saj je zelo verjetno, da so na njihova vprašanja že odgovorili.
Obrnite se na center za tehnično podporo prek webspletno mesto na www.microchip.com/support. Navedite številko dela naprave FPGA, izberite ustrezno kategorijo ohišja in naložite načrt files med ustvarjanjem primera tehnične podpore.
Obrnite se na službo za stranke za netehnično podporo za izdelke, kot so cene izdelkov, nadgradnje izdelkov, informacije o posodobitvah, status naročila in avtorizacija.
- Iz Severne Amerike pokličite 800.262.1060
- Iz preostalega sveta pokličite 650.318.4460
- Faks, od koder koli na svetu, 650.318.8044
Informacije o mikročipu
Blagovne znamke
Ime in logotip »Microchip«, logotip »M« ter druga imena, logotipi in blagovne znamke so registrirane in neregistrirane blagovne znamke družbe Microchip Technology Incorporated ali njenih podružnic in/ali podružnic v Združenih državah in/ali drugih državah (»Microchip Blagovne znamke«). Informacije o blagovnih znamkah Microchip najdete na https://www.microchip.com/en-us/about/legal-information/microchip-trademarks
ISBN: 979-8-3371-0947-3
Pravno obvestilo
To publikacijo in informacije v njej lahko uporabljate samo z izdelki Microchip, vključno z načrtovanjem, testiranjem in integracijo izdelkov Microchip z vašo aplikacijo. Uporaba teh informacij na kakršen koli drug način krši te pogoje. Informacije o aplikacijah naprave so na voljo samo za vaše udobje in jih lahko nadomestijo posodobitve. Vaša odgovornost je zagotoviti, da vaša aplikacija ustreza vašim specifikacijam. Za dodatno podporo se obrnite na lokalno prodajno pisarno družbe Microchip ali pridobite dodatno podporo na www.microchip.com/en-us/support/design-help/client-support-services
TE INFORMACIJE ZAGOTAVLJA MICROCHIP "TAKŠNE, KOT SO". MICROCHIP NE DAJE NOBENIH IZJAV ALI JAMSTEV KAKRŠNE KOLI VRSTE, BODISI IZRECNIH ALI POSREDNIH, PISNIH ALI USTNIH, ZAKONSKIH ALI DRUGAČEH, POVEZANIH Z INFORMACIJAMI, VKLJUČNO, VENDAR NE OMEJENO NA KAKRŠNE KOLI POSREDNE JAMSTVA O NEKRŠITVI, PRIMERNOST ZA PRODAJO IN PRIMERNOST ZA DOLOČEN NAMEN ALI GARANCIJE, POVEZANE Z NJEGOVIM STANJEM, KAKOVOSTJO ALI ZMOGLJIVOSTJO.
MICROCHIP V NOBENEM PRIMERU NE BO ODGOVOREN ZA KAKRŠNO KOLI POSREDNO, POSEBNO, KAZNOVALNO, NAKLJUČNO ALI POSLEDIČNO IZGUBO, ŠKODO, STROŠKE ALI IZDATKE KAKRŠNEKOLI VRSTE, POVEZANE Z INFORMACIJAMI ALI NJIHOVO UPORABO, NE glede na to, KI SO POVZROČENI, TUDI ČE MICROCHIP JE BIL OBVEŠČEN O MOŽNOSTI ALI JE ŠKODA PREDVIDLJIVA. V NAJBOLJŠEM MERU, KI GA DOVOLJUJE ZAKON, SKUPNA ODGOVORNOST MICROCHIPA ZA VSE ZAHTEVKE, KAKRŠNOLI POVEZANE Z INFORMACIJO ALI NJENO UPORABO, NE BO PRESEGALA ZNESKA PRISTOJBIN, ČE OBSTAJAJO, KI STE GA PLAČALI NEPOSREDNO MICROCHIPU ZA INFORMACIJO.
Uporaba naprav Microchip v aplikacijah za vzdrževanje življenja in/ali varnost je v celoti na kupčevo tveganje in kupec se strinja, da bo branil, odškodoval in zaščitil Microchip pred kakršno koli škodo, zahtevki, tožbami ali stroški, ki so posledica takšne uporabe. Nobene licence se ne posredujejo, implicitno ali kako drugače, v okviru pravic intelektualne lastnine družbe Microchip, razen če je navedeno drugače.
Funkcija zaščite kode Microchip Devices
Upoštevajte naslednje podrobnosti funkcije zaščite kode na izdelkih Microchip:
- Izdelki Microchip izpolnjujejo specifikacije v njihovem posebnem podatkovnem listu Microchip.
- Microchip verjame, da je njegova družina izdelkov varna, če se uporablja na predviden način, v okviru operativnih specifikacij in v normalnih pogojih.
- Microchip ceni in agresivno ščiti svoje pravice intelektualne lastnine. Poskusi kršitve funkcij zaščite kode izdelkov Microchip so strogo prepovedani in lahko kršijo Zakon o avtorskih pravicah v digitalnem tisočletju.
- Niti Microchip niti kateri koli drug proizvajalec polprevodnikov ne more jamčiti za varnost svoje kode. Zaščita kode ne pomeni, da jamčimo, da je izdelek "nezlomljiv". Zaščita kode se nenehno razvija. Microchip je zavezan nenehnemu izboljševanju funkcij zaščite kode naših izdelkov.
Dokumenti / Viri
![]() |
MICROCHIP CoreFPU Core enota s plavajočo vejico [pdf] Uporabniški priročnik v3.0, v2.1, v2.0, v1.0, CoreFPU Core enota za plavajočo vejico, Core enota za plavajočo vejico, enota za plavajočo vejico, enota za točko |