FPGA integer aritmetička IP jezgra

Korisnički priručnik za Intel FPGA integer aritmetičke IP jezgre
Ažurirano za Intel® Quartus® Prime Design Suite: 20.3

Online verzija Pošalji povratne informacije

UG-01063

ID: 683490 Verzija: 2020.10.05

Sadržaj
Sadržaj
1. Intel FPGA integer aritmetička IP jezgra…………………………………………………………………………….. 5
2. LPM_COUNTER (Counter) IP Core……………………………………………………………………….. 7 2.1. Karakteristike…………………………………………………………………………………………………………………7 2.2. Verilog HDL prototip……………………………………………………………………………….. 8 2.3. Deklaracija VHDL komponente…………………………………………………………………………………….8 2.4. VHDL LIBRARY_USE Deklaracija……………………………………………………………………… 9 2.5. Priključci…………………………………………………………………………………………………………………………..9 2.6. Parametri………………………………………………………………………………………………………… 10
3. LPM_DIVIDE (Divider) Intel FPGA IP Core……………………………………………………………………….. 12 3.1. Karakteristike……………………………………………………………………………………………………………. 12 3.2. Verilog HDL prototip………………………………………………………………………………… 12 3.3. Deklaracija VHDL komponente………………………………………………………………………………….. 13 3.4. VHDL LIBRARY_USE deklaracija…………………………………………………………………. 13 3.5. Priključci………………………………………………………………………………………………………………………… 13 3.6. Parametri………………………………………………………………………………………………………… 14
4. LPM_MULT (multiplikator) IP jezgra………………………………………………………………………………………. 16 4.1. Karakteristike……………………………………………………………………………………………………………. 16 4.2. Verilog HDL prototip………………………………………………………………………………… 17 4.3. Deklaracija VHDL komponente………………………………………………………………………………….. 17 4.4. VHDL LIBRARY_USE deklaracija…………………………………………………………………. 17 4.5. Signali……………………………………………………………………………………………………………… 18 4.6. Parametri za Stratix V, Arria V, Cyclone V i Intel Cyclone 10 LP uređaje…………… 18 4.6.1. Kartica Općenito……………………………………………………………………………………18 4.6.2. Kartica Općenito 2…………………………………………………………………………………………… 19 4.6.3. Kartica cjevovoda………………………………………………………………………………… 19 4.7. Parametri za Intel Stratix 10, Intel Arria 10 i Intel Cyclone 10 GX uređaje……….. 20 4.7.1. Kartica Općenito……………………………………………………………………………………20 4.7.2. Općenito 2 Tab…………………………………………………………………………………………… 20 4.7.3. Cjevovod…………………………………………………………………………………………………21
5. LPM_ADD_SUB (Sabirač/Oduzimanje)…………………………………………………………………… 22 5.1. Karakteristike……………………………………………………………………………………………………………. 22 5.2. Verilog HDL prototip………………………………………………………………………………… 23 5.3. Deklaracija VHDL komponente………………………………………………………………………………….. 23 5.4. VHDL LIBRARY_USE deklaracija…………………………………………………………………. 23 5.5. Priključci………………………………………………………………………………………………………………………… 23 5.6. Parametri………………………………………………………………………………………………………… 24
6. LPM_COMPARE (komparator)………………………………………………………………………………………… 26 6.1. Karakteristike……………………………………………………………………………………………………………. 26 6.2. Verilog HDL prototip………………………………………………………………………………… 27 6.3. Deklaracija VHDL komponente………………………………………………………………………………….. 27 6.4. VHDL LIBRARY_USE deklaracija…………………………………………………………………. 27 6.5. Priključci………………………………………………………………………………………………………………………… 27 6.6. Parametri………………………………………………………………………………………………………… 28

Korisnički vodič za Intel FPGA integer aritmetičke IP jezgre 2

Pošalji povratne informacije

Sadržaj

7. ALTECC (kod za ispravljanje grešaka: koder/dekoder) IP jezgro…………………………………… 30
7.1. Karakteristike ALTECC enkodera………………………………………………………………………………………..31 7.2. Verilog HDL prototip (ALTECC_ENCODER)……………………………………………………. 32 7.3. Verilog HDL prototip (ALTECC_DECODER)……………………………………………………. 32 7.4. Deklaracija VHDL komponente (ALTECC_ENCODER)……………………………………………33 7.5. Deklaracija VHDL komponente (ALTECC_DECODER)……………………………………………33 7.6. VHDL LIBRARY_USE deklaracija…………………………………………………………………. 33 7.7. Portovi kodera………………………………………………………………………………………………………………… 33 7.8. Portovi dekodera………………………………………………………………………………………………………34 7.9. Parametri kodera …………………………………………………………………………………… 34 7.10. Parametri dekodera ……………………………………………………………………………… 35
8. Intel FPGA Multiply Adder IP Core……………………………………………………………………. 36
8.1. Karakteristike……………………………………………………………………………………………………………. 37 8.1.1. Predsabirač……………………………………………………………………………………………….. 38 8.1.2. Registar sistoličkog kašnjenja………………………………………………………………….. 40 8.1.3. Konstanta predopterećenja…………………………………………………………………………………… 43 8.1.4. Dvostruki akumulator…………………………………………………………………………………… 43
8.2. Verilog HDL prototip………………………………………………………………………………… 44 8.3. Deklaracija VHDL komponente………………………………………………………………………………….. 44 8.4. VHDL LIBRARY_USE deklaracija…………………………………………………………………. 44 8.5. Signali……………………………………………………………………………………………………………… 44 8.6. Parametri………………………………………………………………………………………………………… 47
8.6.1. Kartica Općenito……………………………………………………………………………………47 8.6.2. Kartica Extra Modes ……………………………………………………………………………………….. 47 8.6.3. Kartica množitelja…………………………………………………………………………………………………….. 49 8.6.4. Kartica Predavač……………………………………………………………………………………………. 51 8.6.5. Kartica akumulatora………………………………………………………………………………………………….. 53 8.6.6. Tab Sistolic/Chainout……………………………………………………………………. 55 8.6.7. Kartica cjevovoda…………………………………………………………………………………………… 56
9. ALTMEMMULT (Množitelj konstantnog koeficijenta zasnovan na memoriji) IP jezgra…………………………… 57
9.1. Karakteristike……………………………………………………………………………………………………………. 57 9.2. Verilog HDL prototip………………………………………………………………………………… 58 9.3. Deklaracija VHDL komponente………………………………………………………………………………….. 58 9.4. Priključci……………………………………………………………………………………………………………………… 59 9.5. Parametri………………………………………………………………………………………………………… 59
10. ALTMULT_ACCUM (Množenje-akumuliraj) IP jezgro…………………………………………………………………… 61
10.1. Karakteristike………………………………………………………………………………………………………….. 62 10.2. Verilog HDL prototip………………………………………………………………………………………..62 10.3. Deklaracija VHDL komponente……………………………………………………………………… 63 10.4. VHDL LIBRARY_USE Deklaracija……………………………………………………………………63 10.5. Priključci………………………………………………………………………………………………………………. 63 10.6. Parametri…………………………………………………………………………………………. 64
11. ALTMULT_ADD (Multi-Adder) IP jezgra………………………………………………………………………..69
11.1. Karakteristike………………………………………………………………………………………………………….. 71 11.2. Verilog HDL prototip………………………………………………………………………………………..72 11.3. Deklaracija VHDL komponente……………………………………………………………………… 72 11.4. VHDL LIBRARY_USE deklaracija……………………………………………………………………72

Pošalji povratne informacije

Korisnički vodič za Intel FPGA integer aritmetičke IP jezgre 3

Sadržaj
11.5. Priključci………………………………………………………………………………………………………………. 72 11.6. Parametri…………………………………………………………………………………………. 73
12. ALTMULT_COMPLEX (kompleksni množitelj) IP jezgra………………………………………………………… 86 12.1. Kompleksno množenje………………………………………………………………………………………. 86 12.2. Kanonsko predstavljanje…………………………………………………………………………………… 87 12.3. Konvencionalno predstavljanje………………………………………………………………………………. 87 12.4. Karakteristike………………………………………………………………………………………………………….. 88 12.5. Verilog HDL prototip………………………………………………………………………………………..88 12.6. Deklaracija VHDL komponente…………………………………………………………………… 89 12.7. VHDL LIBRARY_USE deklaracija……………………………………………………………………89 12.8. Signali……………………………………………………………………………………………………………. 89 12.9. Parametri…………………………………………………………………………………………. 90
13. ALTSQRT (Cjelobrojni kvadratni korijen) IP jezgro……………………………………………………………92 13.1. Karakteristike………………………………………………………………………………………………………….. 92 13.2. Verilog HDL prototip………………………………………………………………………………………..92 13.3. Deklaracija VHDL komponente…………………………………………………………………… 93 13.4. VHDL LIBRARY_USE deklaracija……………………………………………………………………93 13.5. Priključci………………………………………………………………………………………………………………. 93 13.6. Parametri…………………………………………………………………………………………. 94
14. PARALLEL_ADD (paralelni sabirač) IP jezgro……………………………………………………………………….. 95 14.1. Karakteristika…………………………………………………………………………………………………………….95 14.2. Verilog HDL prototip………………………………………………………………………………………..95 14.3. Deklaracija VHDL komponente…………………………………………………………………… 96 14.4. VHDL LIBRARY_USE deklaracija……………………………………………………………………96 14.5. Priključci………………………………………………………………………………………………………………. 96 14.6. Parametri…………………………………………………………………………………………. 97
15. Korisnički vodič za integer aritmetička IP jezgra Arhiva dokumenata………………………………… 98
16. Istorija revizija dokumenta za Intel FPGA Integer Aritmetička IP jezgra Korisničko uputstvo…. 99

Korisnički vodič za Intel FPGA integer aritmetičke IP jezgre 4

Pošalji povratne informacije

683490 | 2020.10.05. Pošalji povratnu informaciju

1. Intel FPGA integer aritmetička IP jezgra

Možete koristiti Intel® FPGA cjelobrojna IP jezgra za obavljanje matematičkih operacija u vašem dizajnu.

Ove funkcije nude efikasniju sintezu logike i implementaciju uređaja od kodiranja vlastitih funkcija. Možete prilagoditi IP jezgre kako bi se prilagodili vašim zahtjevima dizajna.

Intelova integer aritmetička IP jezgra podijeljena su u sljedeće dvije kategorije: · Biblioteka parametariziranih modula (LPM) IP jezgra · Intel-specifična (ALT) IP jezgra

U sljedećoj tabeli su navedene cjelobrojne aritmetičke IP jezgre.

Tabela 1.

Lista IP jezgri

IP jezgra

LPM IP jezgra

LPM_COUNTER

LPM_DIVIDE

LPM_MULT

LPM_ADD_SUB
LPM_COMPARE
Intel-specifična (ALT) IP jezgra ALTECC

Funkcija je završenaview Counter Divider Multiplier
Komparator za zbrajanje ili oduzimanje
ECC enkoder/dekoder

Podržani uređaj
Arria® II GX, Arria II GZ, Arria V, Intel Arria 10, Cyclone® IV E, Cyclone IV GX, Cyclone V, Intel Cyclone 10 LP,
Intel Cyclone 10 GX, MAX® II, MAX V, MAX 10, Stratix® IV, Stratix V
Arria II GX, Arria II GZ, Arria V, Intel Arria 10, Cyclone IV E, Cyclone IV GX,
Cyclone V, Intel Cyclone 10 LP, Intel Cyclone 10 GX, MAX II, MAX V, MAX 10, Stratix IV, Stratix V, Intel Stratix 10
Arria II GX, Arria II GZ, Arria V, Intel Arria 10, Cyclone IV E, Cyclone IV GX,
Cyclone V, Intel Cyclone 10 LP, Intel Cyclone 10 GX, MAX II, MAX V, MAX 10, Stratix IV, Stratix V, Intel Stratix 10
Arria II GX, Arria II GZ, Arria V, Cyclone IV E, Cyclone IV GX, Cyclone V, Intel Cyclone 10 LP, MAX 10, MAX
II, MAX V, Stratix IV, Stratix V
Arria II GX, Arria II GZ, Arria V, Cyclone IV E, Cyclone IV GX, Cyclone V, Intel Cyclone 10 LP, MAX 10, MAX
II, MAX V, Stratix IV, Stratix V
Arria II GX, Arria II GZ, Arria V, Intel Arria 10, Cyclone IV E, Cyclone IV GX,
Cyclone V, Intel Cyclone 10 LP, Intel Cyclone 10 GX, MAX II, MAX V, MAX
10, Stratix IV, Stratix V nastavak…

Intel Corporation. Sva prava zadržana. Intel, Intel logo i druge Intel oznake su zaštitni znaci Intel Corporation ili njenih podružnica. Intel garantuje performanse svojih FPGA i poluprovodničkih proizvoda u skladu sa trenutnim specifikacijama u skladu sa Intelovom standardnom garancijom, ali zadržava pravo da izvrši izmene bilo kojeg proizvoda i usluge u bilo koje vreme bez prethodne najave. Intel ne preuzima nikakvu odgovornost ili odgovornost koja proizilazi iz primene ili korišćenja bilo koje informacije, proizvoda ili usluge opisane ovde, osim ako je Intel izričito pristao u pisanoj formi. Intelovim kupcima se savjetuje da nabave najnoviju verziju specifikacija uređaja prije nego što se oslone na bilo koju objavljenu informaciju i prije naručivanja proizvoda ili usluga. *Druga imena i robne marke mogu se smatrati vlasništvom drugih.

ISO 9001:2015 Registrovan

1. Intel FPGA Integer Aritmetic IP Cores 683490 | 2020.10.05

IP jezgre Intel FPGA Multiply Adder ili ALTERA_MULT_ADD ALTMEMMULT
ALTMULT_ACCUM ALTMULT_ADD ALTMULT_COMPLEX
ALTSQRT
PARALLEL_ADD

Funkcija je završenaview Multiplier-Adder
Multiplikator konstantnog koeficijenta zasnovan na memoriji
Multiplier-Akumulator Multiplier-Adder
Kompleksni množitelj
Integer Square-Root
Parallel Adder

Podržani uređaj
Arria V, Stratix V, Cyclone V, Intel Stratix 10, Intel Arria 10, Intel Cyclone
10 GX
Arria II GX, Arria II GZ, Arria V, Intel Arria 10 (Intel Quartus® Prime Standard Edition), Cyclone IV E, Cyclone IV GX, Cyclone V, Intel
Cyclone 10 LP, MAX II, MAX V, MAX 10, Stratix IV, Stratix V
Arria II GX, Arria II GZ, Cyclone IV E, Cyclone IV GX, Intel Cyclone 10 LP, MAX 10, MAX II, MAX V, Stratix IV
Arria II GX, Arria II GZ, Cyclone IV E, Cyclone IV GX,Intel Cyclone 10 LP, MAX 10, MAX II, MAX V, Stratix IV
Arria II GX, Arria II GZ, Intel Arria 10, Arria V, Arria V GZ, Cyclone IV E, Cyclone IV GX, Cyclone V, Intel
Cyclone 10 GX, Intel Cyclone 10 LP, MAX 10, Stratix V, Intel Stratix 10
Arria II GX, Arria II GZ, Arria V, Intel Arria 10, Cyclone IV E, Cyclone IV GX,
Cyclone V, Intel Cyclone 10 LP, Intel Cyclone 10 GX, MAX II, MAX V, MAX
10, Stratiks IV, Stratiks V
Arria II GX, Arria II GZ, Arria V, Intel Arria 10, Cyclone IV E, Cyclone IV GX,
Cyclone V, Intel Cyclone 10 LP, Intel Cyclone 10 GX, MAX II, MAX V, MAX
10, Stratiks IV, Stratiks V

Povezane informacije
· Napomene o izdanju Intel FPGA i programabilnih uređaja
· Uvod u Intel FPGA IP jezgra Pruža više informacija o Intel FPGA IP jezgrima.
· Korisnički vodič za IP jezgre s pomičnim zarezom Pruža više informacija o Intel FPGA IP jezgrama s pomičnim zarezom.
· Uvod u Intel FPGA IP jezgra Pruža opšte informacije o svim Intel FPGA IP jezgrama, uključujući parametriranje, generisanje, nadogradnju i simulaciju IP jezgara.
· Kreiranje skripti za IP i Qsys simulaciju neovisne o verziji Kreirajte simulacijske skripte koje ne zahtijevaju ručno ažuriranje softvera ili nadogradnje verzije IP-a.
· Smjernice najbolje prakse za upravljanje projektima za efikasno upravljanje i prenosivost vašeg projekta i IP-a files.
· Korisnički vodič za Integer Arithmetic IP Cores Arhive dokumenata na stranici 98 Pruža listu korisničkih vodiča za prethodne verzije jezgri Integer Arithmetic IP.

Korisnički vodič za Intel FPGA integer aritmetičke IP jezgre 6

Pošalji povratne informacije

683490 | 2020.10.05. Pošalji povratnu informaciju

2. LPM_COUNTER (Counter) IP Core

Slika 1.

LPM_COUNTER IP jezgro je binarni brojač koji kreira brojače naviše, brojače nadole i brojače nagore ili nadole sa izlazima širine do 256 bita.

Sljedeća slika prikazuje portove za LPM_COUNTER IP jezgro.

LPM_COUNTER Portovi

LPM_COUNTER

ssclr sload sset podaci[]

q[]

gore dolje

cout

aclr aload aset

clk_en cnt_en cin
inst

2.1. Karakteristike
LPM_COUNTER IP jezgro nudi sljedeće karakteristike: · Generiše brojače gore, dolje i gore/dolje · Generiše sljedeće tipove brojača:
— Običan binarni – brojač se povećava počevši od nule ili smanjuje počevši od 255
— Modul – brojač povećava ili smanjuje vrijednost modula koju je odredio korisnik i ponavlja se
· Podržava opcionalne sinhrone ulazne portove za brisanje, učitavanje i postavljanje · Podržava opcionalne asinhrone ulazne portove za brisanje, učitavanje i postavljanje · Podržava opcionalne ulazne portove za omogućavanje brojanja i omogućavanje sata · Podržava opcionalne portove za unos i iznošenje

Intel Corporation. Sva prava zadržana. Intel, Intel logo i druge Intel oznake su zaštitni znaci Intel Corporation ili njenih podružnica. Intel garantuje performanse svojih FPGA i poluprovodničkih proizvoda u skladu sa trenutnim specifikacijama u skladu sa Intelovom standardnom garancijom, ali zadržava pravo da izvrši izmene bilo kojeg proizvoda i usluge u bilo koje vreme bez prethodne najave. Intel ne preuzima nikakvu odgovornost ili odgovornost koja proizilazi iz primene ili korišćenja bilo koje informacije, proizvoda ili usluge opisane ovde, osim ako je Intel izričito pristao u pisanoj formi. Intelovim kupcima se savjetuje da nabave najnoviju verziju specifikacija uređaja prije nego što se oslone na bilo koju objavljenu informaciju i prije naručivanja proizvoda ili usluga. *Druga imena i robne marke mogu se smatrati vlasništvom drugih.

ISO 9001:2015 Registrovan

2. LPM_COUNTER (Counter) IP Core
683490 | 2020.10.05
2.2. Verilog HDL prototip
Sljedeći Verilog HDL prototip se nalazi u Verilog Designu File (.v) lpm.v u edasynthesis directory.
modul lpm_counter (q, data, clock, cin, cout, clk_en, cnt_en, updown, aset, aclr, aload, sset, sclr, sload, eq); parametar lpm_type = “lpm_counter”; parametar lpm_width = 1; parametar lpm_modulus = 0; parametar lpm_direction = “NEKORIŠĆENO”; parametar lpm_value = “NEKORIŠĆENO”; parametar lpm_svalue = “NEKORIŠTEN”; parametar lpm_pvalue = “NEKORIŠTEN”; parametar lpm_port_updown = “PORT_CONNECTIVITY”; parametar lpm_hint = “NEKORIŠĆENO”; izlaz [lpm_width-1:0] q; output cout; izlaz [15:0] ekv; input cin; ulazni [lpm_width-1:0] podaci; ulazni sat, clk_en, cnt_en, updown; ulaz aset, aclr, aload; ulaz sset, sclr, sload; endmodule
2.3. Deklaracija VHDL komponente
Deklaracija VHDL komponente nalazi se u VHDL dizajnu File (.vhd) LPM_PACK.vhd u librariesvhdllpm direktorij.
komponenta LPM_COUNTER generička ( LPM_WIDTH : prirodno; LPM_MODULUS : prirodno := 0; LPM_DIRECTION : string := “NEKORIŠĆENO”; LPM_AVALUE : string := “NEKORIŠĆENO”; LPM_SVALUE : niz := “NEKORIŠĆENO”; “LPM_PORT: CONTIVITY”; LPM_PVALUE : string := “NEKORIŠĆENO”; LPM_TYPE : string := L_COUNTER; LPM_HINT : string := “NEKORIŠĆENO”); port (Podaci: u std_logic_vector(LPM_WIDTH-1 do 0):= (OSTALI =>
'0'); CLOCK: u std_logic; CLK_EN : u std_logic := '1'; CNT_EN : u std_logic := '1'; GORE : u std_logic := '1'; SLOAD : u std_logic := '0'; SSET : u std_logic := '0'; SCLR : u std_logic := '0'; ALOAD : u std_logic := '0'; ASET : u std_logic := '0'; ACLR : u std_logic := '0'; CIN : u std_logic := '1'; COUT : out std_logic := '0'; Q: out std_logic_vector(LPM_WIDTH-1 downto 0); EQ: out std_logic_vector(15 downto 0));
krajnja komponenta;

Korisnički vodič za Intel FPGA integer aritmetičke IP jezgre 8

Pošalji povratne informacije

2. LPM_COUNTER (Counter) IP Core 683490 | 2020.10.05

2.4. VHDL LIBRARY_USE deklaracija
Deklaracija VHDL LIBRARY-USE nije potrebna ako koristite deklaraciju komponente VHDL.
BIBLIOTEKA lpm; USE lpm.lpm_components.all;

2.5. Portovi

Sljedeće tablice navode ulazne i izlazne portove za LPM_COUNTER IP jezgro.

Tabela 2.

LPM_COUNTER ulazni portovi

Port Name

Obavezno

Opis

podaci[]

br

Paralelni unos podataka u brojač. Veličina ulaznog porta ovisi o vrijednosti parametra LPM_WIDTH.

sat

Da

Ulaz sata sa okidanjem pozitivne ivice.

clk_en

br

Sat omogućava ulaz da omogući sve sinhrone aktivnosti. Ako se izostavi, zadana vrijednost je 1.

cnt_en

br

Broj omogućava unos za onemogućavanje brojanja kada se tvrdi da je nizak bez utjecaja na sload, sset ili sclr. Ako se izostavi, zadana vrijednost je 1.

gore dolje

br

Kontrolira smjer brojanja. Kada je potvrđeno visoko (1), smjer brojanja je gore, a kada je potvrđeno nisko (0), smjer brojanja je dolje. Ako se koristi parametar LPM_DIRECTION, port prema gore ne može se povezati. Ako se LPM_DIRECTION ne koristi, port prema dolje nije obavezan. Ako se izostavi, zadana vrijednost je gore (1).

cin

br

Prijenos na bit nižeg reda. Za up brojače, ponašanje cin ulaza je

identično ponašanju cnt_en ulaza. Ako se izostavi, zadana vrijednost je 1

(VCC).

aclr

br

Asinhroni čisti unos. Ako se i aset i aclr koriste i potvrđuju, aclr nadjačava aset. Ako se izostavi, zadana vrijednost je 0 (onemogućeno).

aset

br

Asinhroni set ulaz. Određuje q[] izlaze kao sve 1, ili na vrijednost specificiranu parametrom LPM_AVALUE. Ako se koriste i potvrđuju i aset i aclr portovi, vrijednost porta aclr nadjačava vrijednost porta aseta. Ako se izostavi, zadana vrijednost je 0, onemogućeno.

aload

br

Asinhroni ulaz za učitavanje koji asinkrono učitava brojač sa vrijednošću na ulazu podataka. Kada se koristi port za učitavanje, port podataka[] mora biti povezan. Ako se izostavi, zadana vrijednost je 0, onemogućeno.

sclr

br

Sinhroni brisanje ulaza koji briše brojač na sljedećem aktivnom rubu sata. Ako se koriste i potvrđuju i sset i sclr port, vrijednost sclr porta nadjačava vrijednost sset porta. Ako se izostavi, zadana vrijednost je 0, onemogućeno.

sset

br

Sinhroni set ulaz koji postavlja brojač na sljedeću aktivnu ivicu sata. Određuje vrijednost izlaza q kao sve 1, ili na vrijednost specificiranu parametrom LPM_SVALUE. Ako se koriste i potvrđuju i sset i sclr portovi,
vrijednost sclr porta nadjačava vrijednost sset porta. Ako se izostavi, zadana vrijednost je 0 (onemogućeno).

sload

br

Sinhroni ulaz za učitavanje koji učitava brojač sa podacima [] na sljedećoj aktivnoj ivici takta. Kada se koristi sload port, port podataka[] mora biti povezan. Ako se izostavi, zadana vrijednost je 0 (onemogućeno).

Pošalji povratne informacije

Korisnički vodič za Intel FPGA integer aritmetičke IP jezgre 9

2. LPM_COUNTER (Counter) IP Core 683490 | 2020.10.05

Tabela 3.

LPM_COUNTER izlazni portovi

Port Name

Obavezno

Opis

q[]

br

Izlaz podataka sa brojača. Veličina izlaznog porta ovisi o

Vrijednost parametra LPM_WIDTH. Ili q[] ili barem jedan od eq[15..0] portova

mora biti povezan.

eq[15..0]

br

Izlaz dekodiranja brojača. eq[15..0] port nije dostupan u uređivaču parametara jer parametar podržava samo AHDL.
Moraju biti povezani ili q[] port ili eq[] port. Može se koristiti do c eq portova (0 <= c <= 15). Samo 16 najnižih vrijednosti brojanja se dekodira. Kada je vrijednost brojanja c, eqc izlaz se smatra visokim (1). Za nprample, kada je broj 0, eq0 = 1, kada je broj 1, eq1 = 1, a kada je broj 15, eq 15 = 1. Dekodirani izlaz za vrijednosti brojanja od 16 ili veće zahtijeva eksterno dekodiranje. Izlazi eq[15..0] su asinhroni sa q[] izlazom.

cout

br

Port za izvođenje MSB bita brojača. Može se koristiti za spajanje na drugi brojač za stvaranje većeg brojača.

2.6. Parametri

Sljedeća tabela navodi parametre za LPM_COUNTER IP jezgro.

Tabela 4.

LPM_COUNTER parametri

Naziv parametra

Tip

LPM_WIDTH

Integer

LPM_DIRECTION

String

LPM_MODULUS LPM_AVALUE

Integer
Integer/String

LPM_SVALUE LPM_HINT

Integer/String
String

LPM_TYPE

String

Obavezno Da Ne Ne Ne
Ne Ne
br

Opis
Određuje širine portova podataka[] i q[], ako se koriste.
Vrijednosti su GORE, DOLJE i NEKORIŠĆENO. Ako se koristi parametar LPM_DIRECTION, port prema gore ne može se povezati. Kada gornji port nije povezan, zadana vrijednost parametra LPM_DIRECTION je UP.
Maksimalni broj plus jedan. Broj jedinstvenih stanja u ciklusu brojača. Ako je vrijednost opterećenja veća od parametra LPM_MODULUS, ponašanje brojača nije specificirano.
Konstantna vrijednost koja se učitava kada je sredstvo potvrđeno visoko. Ako je navedena vrijednost veća ili jednaka , ponašanje brojača je nedefinisani (X) logički nivo, gde je LPM_MODULUS, ako postoji, ili 2 ^ LPM_WIDTH. Intel preporučuje da navedete ovu vrijednost kao decimalni broj za AHDL dizajn.
Konstantna vrijednost koja se učitava na rastućoj ivici porta takta kada je sset port postavljen na visoku vrijednost. Intel preporučuje da navedete ovu vrijednost kao decimalni broj za AHDL dizajn.
Kada instancirate funkciju biblioteke parametriziranih modula (LPM) u VHDL dizajnu File (.vhd), morate koristiti parametar LPM_HINT da navedete parametar specifičan za Intel. Za nprample: LPM_HINT = “CHAIN_SIZE = 8, ONE_INPUT_IS_CONSTANT = DA”
Podrazumevana vrijednost je NEKORIŠĆENO.
Identificira naziv entiteta biblioteke parametriziranih modula (LPM) u VHDL dizajnu files.
nastavak…

Korisnički vodič za Intel FPGA integer aritmetičke IP jezgre 10

Pošalji povratne informacije

2. LPM_COUNTER (Counter) IP Core 683490 | 2020.10.05

Naziv parametra INTENDED_DEVICE_FAMILY CARRY_CNT_EN
LABWIDE_SCLR
LPM_PORT_UPDOWN

Tip String String
String
String

Obavezno Ne br
br
br

Opis
Ovaj parametar se koristi za potrebe modeliranja i simulacije ponašanja. Ovaj parametar se koristi za potrebe modeliranja i simulacije ponašanja. Editor parametara izračunava vrijednost za ovaj parametar.
Parametar specifičan za Intel. Morate koristiti LPM_HINT parametar da specificirate parametar CARRY_CNT_EN u VHDL dizajnu files. Vrijednosti su SMART, ON, OFF i UNUSED. Omogućuje funkciju LPM_COUNTER za propagiranje cnt_en signala kroz lanac prijenosa. U nekim slučajevima, postavka parametra CARRY_CNT_EN može imati blagi utjecaj na brzinu, pa biste je možda željeli isključiti. Zadana vrijednost je SMART, što pruža najbolji kompromis između veličine i brzine.
Parametar specifičan za Intel. Morate koristiti LPM_HINT parametar da navedete LABWIDE_SCLR parametar u VHDL dizajnu files. Vrijednosti su ON, OFF ili UNUSED. Zadana vrijednost je ON. Omogućava vam da onemogućite upotrebu funkcije LABwide sclr koja se nalazi u zastarjelim porodicama uređaja. Isključivanje ove opcije povećava šanse za potpuno korištenje djelomično popunjenih LAB-ova i stoga može omogućiti veću logičku gustoću kada se SCLR ne primjenjuje na potpuni LAB. Ovaj parametar je dostupan za kompatibilnost unatrag, a Intel vam preporučuje da ne koristite ovaj parametar.
Određuje upotrebu ulaznog porta nagore. Ako se izostavi, zadana vrijednost je PORT_CONNECTIVITY. Kada je vrijednost porta postavljena na PORT_USED, port se tretira kao korišten. Kada je vrijednost porta postavljena na PORT_UNUSED, port se tretira kao neiskorišten. Kada je vrijednost porta postavljena na PORT_CONNECTIVITY, korištenje porta se utvrđuje provjerom povezanosti porta.

Pošalji povratne informacije

Korisnički vodič za Intel FPGA integer aritmetičke IP jezgre 11

683490 | 2020.10.05. Pošalji povratnu informaciju

3. LPM_DIVIDE (Divider) Intel FPGA IP Core

Slika 2.

LPM_DIVIDE Intel FPGA IP jezgro implementira djelitelj za dijeljenje ulazne vrijednosti brojila sa ulaznom vrijednošću imenitelja kako bi se proizveo kvocijent i ostatak.

Sljedeća slika prikazuje portove za LPM_DIVIDE IP jezgro.

LPM_DIVIDE Portovi

LPM_DIVIDE

broj[] denom[] sat

količnik[] ostaje[]

clken aclr

inst

3.1. Karakteristike
LPM_DIVIDE IP jezgro nudi sljedeće karakteristike: · Generira djelitelj koji dijeli ulaznu vrijednost brojila sa unosom nazivnika
vrijednost za proizvodnju količnika i ostatka. · Podržava širinu podataka od 1 bita. · Podržava potpisani i nepotpisani format predstavljanja podataka za oba brojioca
i vrijednosti nazivnika. · Podržava optimizaciju područja ili brzine. · Pruža opciju za specificiranje pozitivnog izlaza ostatka. · Podržava konfiguraciju izlazne latencije za konfigurisanje. · Podržava opcione asinhrone portove za brisanje i omogućavanje takta.

3.2. Verilog HDL prototip
Sljedeći Verilog HDL prototip se nalazi u Verilog Designu File (.v) lpm.v u edasynthesis directory.
modul lpm_divide ( količnik, ostatak, broj, denom, sat, clken, aclr); parametar lpm_type = “lpm_divide”; parametar lpm_widthn = 1; parametar lpm_widthd = 1; parametar lpm_nrepresentation = “NEPOTPISAN”; parametar lpm_drepresentation = “NEPOTPISAN”; parametar lpm_remainderpositive = “TRUE”; parametar lpm_pipeline = 0;

Intel Corporation. Sva prava zadržana. Intel, Intel logo i druge Intel oznake su zaštitni znaci Intel Corporation ili njenih podružnica. Intel garantuje performanse svojih FPGA i poluprovodničkih proizvoda u skladu sa trenutnim specifikacijama u skladu sa Intelovom standardnom garancijom, ali zadržava pravo da izvrši izmene bilo kojeg proizvoda i usluge u bilo koje vreme bez prethodne najave. Intel ne preuzima nikakvu odgovornost ili odgovornost koja proizilazi iz primene ili korišćenja bilo koje informacije, proizvoda ili usluge opisane ovde, osim ako je Intel izričito pristao u pisanoj formi. Intelovim kupcima se savjetuje da nabave najnoviju verziju specifikacija uređaja prije nego što se oslone na bilo koju objavljenu informaciju i prije naručivanja proizvoda ili usluga. *Druga imena i robne marke mogu se smatrati vlasništvom drugih.

ISO 9001:2015 Registrovan

3. LPM_DIVIDE (Divider) Intel FPGA IP Core 683490 | 2020.10.05

parametar lpm_hint = “NEKORIŠĆENO”; ulazni sat; input clken; input aclr; ulaz [lpm_widthn-1:0] broj; ulaz [lpm_widthd-1:0] denom; izlazni [lpm_widthn-1:0] kvocijent; izlaz [lpm_widthd-1:0] ostaje; endmodule

3.3. Deklaracija VHDL komponente
Deklaracija VHDL komponente nalazi se u VHDL dizajnu File (.vhd) LPM_PACK.vhd u librariesvhdllpm direktorij.
komponenta LPM_DIVIDE generičko (LPM_WIDTHN : prirodno; LPM_WIDTHD : prirodno;
LPM_NREPRESENTATION : string := “UNSIGNED”; LPM_DREPRESENTATION : string := “UNSIGNED”; LPM_PIPELINE : prirodno := 0; LPM_TYPE : string := L_DIVIDE; LPM_HINT : string := “NEKORIŠĆENO”); port (NUMER: u std_logic_vector(LPM_WIDTHN-1 do 0); DENOM: u std_logic_vector(LPM_WIDTHD-1 do 0); ACLR: u std_logic := '0'; CLOCK: u std_logic':= inCLst' := '0';QUOTIENT : izlaz std_logic_vector(LPM_WIDTHN-1 do 1);REMAIN: izlaz std_logic_vector(LPM_WIDTHD-0 do 1)); krajnja komponenta;

3.4. VHDL LIBRARY_USE deklaracija
Deklaracija VHDL LIBRARY-USE nije potrebna ako koristite deklaraciju komponente VHDL.
BIBLIOTEKA lpm; USE lpm.lpm_components.all;

3.5. Portovi

Sljedeće tablice navode ulazne i izlazne portove za LPM_DIVIDE IP jezgro.

Tabela 5.

LPM_DIVIDE ulazni portovi

Port Name

Obavezno

broj[]

Da

denom[]

Da

Opis
Unos podataka numeratora. Veličina ulaznog porta ovisi o vrijednosti parametra LPM_WIDTHN.
Unos podataka o nazivniku. Veličina ulaznog porta ovisi o vrijednosti parametra LPM_WIDTHD.
nastavak…

Pošalji povratne informacije

Korisnički vodič za Intel FPGA integer aritmetičke IP jezgre 13

3. LPM_DIVIDE (Divider) Intel FPGA IP Core 683490 | 2020.10.05

Naziv porta clock clken
aclr

Obavezno Ne br
br

Opis
Ulaz sata za cevovodnu upotrebu. Za LPM_PIPELINE vrijednosti različite od 0 (podrazumevano), port sata mora biti omogućen.
Sat omogućava cevovodnu upotrebu. Kada je port clken visok, odvija se operacija podjele. Kada je signal nizak, nema operacije. Ako se izostavi, zadana vrijednost je 1.
Asinhroni čisti port koji se koristi u bilo koje vrijeme za resetiranje cjevovoda na sve '0' asinhrono na ulaz sata.

Tabela 6.

LPM_DIVIDE Izlazni portovi

Port Name

Obavezno

Opis

količnik[]

Da

Izlaz podataka. Veličina izlaznog porta ovisi o LPM_WIDTHN

vrijednost parametra.

ostati[]

Da

Izlaz podataka. Veličina izlaznog porta ovisi o LPM_WIDTHD

vrijednost parametra.

3.6. Parametri

Sljedeća tabela navodi parametre za LPM_DIVIDE Intel FPGA IP jezgro.

Naziv parametra

Tip

Obavezno

Opis

LPM_WIDTHN

Integer

Da

Određuje širinu broja [] i

kvocijent[] portovi. Vrijednosti su od 1 do 64.

LPM_WIDTHD

Integer

Da

Određuje širine denom[] i

preostali[] portovi. Vrijednosti su od 1 do 64.

LPM_NREPRESENTATION LPM_DREPRESENTATION

String String

br

Predznak ulaznog brojača.

Vrijednosti su SIGNED i UNSIGNED. Kada ovo

parametar je postavljen na SIGNED, razdjelnik

interpretira unos broj[] kao dva predznaka

dopuna.

br

Predznak unosa nazivnika.

Vrijednosti su SIGNED i UNSIGNED. Kada ovo

parametar je postavljen na SIGNED, razdjelnik

tumači denom[] ulaz kao dva predznaka

dopuna.

LPM_TYPE

String

br

Identificira biblioteku parametriziranih

module (LPM) naziv entiteta u VHDL dizajnu

files (.vhd).

LPM_HINT

String

br

Kada instancirate biblioteku od

funkcija parametriziranih modula (LPM) u a

VHDL Design File (.vhd), morate koristiti

LPM_HINT parametar za određivanje Intel-

specifičan parametar. Za nprample: LPM_HINT

= “CHAIN_SIZE = 8,

ONE_INPUT_IS_CONSTANT = DA” The

zadana vrijednost je NEKORIŠĆENO.

LPM_REMAINDERPOSITIVE

String

br

Parametar specifičan za Intel. Morate koristiti

LPM_HINT parametar za specificiranje

LPM_REMAINDERPOSITIVE parametar u

VHDL dizajn files. Vrijednosti su TRUE ili FALSE.

Ako je ovaj parametar postavljen na TRUE, onda

vrijednost porta rest[] mora biti veća

nastavak…

Korisnički vodič za Intel FPGA integer aritmetičke IP jezgre 14

Pošalji povratne informacije

3. LPM_DIVIDE (Divider) Intel FPGA IP Core 683490 | 2020.10.05

Naziv parametra

Tip

MAXIMIZE_SPEED

Integer

LPM_PIPELINE

Integer

INTENDED_DEVICE_FAMILY SKIP_BITS

String Integer

Obavezno br
Ne Ne Ne

Opis
veći ili jednak nuli. Ako je ovaj parametar postavljen na TRUE, tada je vrijednost porta rest[] ili nula, ili je vrijednost istog predznaka, bilo pozitivnog ili negativnog, kao i vrijednost porta numera. U cilju smanjenja površine i poboljšanja brzine, Intel preporučuje postavljanje ovog parametra na TRUE u operacijama u kojima ostatak mora biti pozitivan ili gdje je ostatak nebitan.
Parametar specifičan za Intel. Morate koristiti LPM_HINT parametar da specificirate parametar MAXIMIZE_SPEED u VHDL dizajnu files. Vrijednosti su [0..9]. Ako se koristi, softver Intel Quartus Prime pokušava da optimizuje određenu instancu funkcije LPM_DIVIDE za brzinu, a ne za rutabilnost, i poništava postavku logičke opcije Optimization Technique. Ako se MAXIMIZE_SPEED ne koristi, umjesto toga se koristi vrijednost opcije Optimization Technique. Ako je vrijednost MAXIMIZE_SPEED 6 ili veća, kompajler optimizira LPM_DIVIDE IP jezgro za veću brzinu korištenjem lanaca za nošenje; ako je vrijednost 5 ili manja, kompajler implementira dizajn bez prijenosnih lanaca.
Određuje broj ciklusa takta latencije povezanih s kvocijentom[] i preostalim[] izlazima. Vrijednost nula (0) ukazuje da ne postoji latencija i da je instancirana čisto kombinacijska funkcija. Ako se izostavi, zadana vrijednost je 0 (neprotočno). Ne možete specificirati vrijednost za parametar LPM_PIPELINE koja je viša od LPM_WIDTHN.
Ovaj parametar se koristi za potrebe modeliranja i simulacije ponašanja. Editor parametara izračunava vrijednost za ovaj parametar.
Omogućava efikasniju podjelu razlomaka bitova za optimizaciju logike na vodećim bitovima pružanjem broja vodećih GND za LPM_DIVIDE IP jezgro. Odredite broj vodećih GND na izlazu kvocijenta za ovaj parametar.

Pošalji povratne informacije

Korisnički vodič za Intel FPGA integer aritmetičke IP jezgre 15

683490 | 2020.10.05. Pošalji povratnu informaciju

4. LPM_MULT (multiplikator) IP jezgro

Slika 3.

LPM_MULT IP jezgro implementira množitelj za množenje dvije vrijednosti ulaznih podataka kako bi se proizveo proizvod kao izlaz.

Sljedeća slika prikazuje portove za LPM_MULT IP jezgro.

LPM_Mult Ports

LPM_MULT podaci sataa[] rezultat[] datab[] aclr/sclr clken
inst

Povezane informacije Funkcije na stranici 71

4.1. Karakteristike
LPM_MULT IP jezgro nudi sljedeće karakteristike: · Generiše množitelj koji množi dvije vrijednosti ulaznih podataka · Podržava širinu podataka od 1 bita · Podržava format predstavljanja potpisanih i nepotpisanih podataka · Podržava optimizaciju područja ili brzine · Podržava cjevovod sa konfigurabilnim izlaznim kašnjenjem · Pruža opcija za implementaciju u namjenskoj digitalnoj obradi signala (DSP)
blok kola ili logički elementi (LE) Napomena: Prilikom izrade množitelja većih od izvorno podržane veličine može se/
će biti uticaj na performanse koji je rezultat kaskadiranja DSP blokova. · Podržava opcionalne ulazne portove za asinkrono brisanje i omogućavanje takta · Podržava opcioni sinhroni clear za Intel Stratix 10, Intel Arria 10 i Intel Cyclone 10 GX uređaje

Intel Corporation. Sva prava zadržana. Intel, Intel logo i druge Intel oznake su zaštitni znaci Intel Corporation ili njenih podružnica. Intel garantuje performanse svojih FPGA i poluprovodničkih proizvoda u skladu sa trenutnim specifikacijama u skladu sa Intelovom standardnom garancijom, ali zadržava pravo da izvrši izmene bilo kojeg proizvoda i usluge u bilo koje vreme bez prethodne najave. Intel ne preuzima nikakvu odgovornost ili odgovornost koja proizilazi iz primene ili korišćenja bilo koje informacije, proizvoda ili usluge opisane ovde, osim ako je Intel izričito pristao u pisanoj formi. Intelovim kupcima se savjetuje da nabave najnoviju verziju specifikacija uređaja prije nego što se oslone na bilo koju objavljenu informaciju i prije naručivanja proizvoda ili usluga. *Druga imena i robne marke mogu se smatrati vlasništvom drugih.

ISO 9001:2015 Registrovan

4. LPM_MULT (Multiplier) IP Core 683490 | 2020.10.05
4.2. Verilog HDL prototip
Sljedeći Verilog HDL prototip se nalazi u Verilog Designu File (.v) lpm.v u edasynthesis directory.
modul lpm_mult ( rezultat, dataa, datab, suma, sat, clken, aclr) parametar lpm_type = “lpm_mult”; parametar lpm_widtha = 1; parametar lpm_widthb = 1; parametar lpm_widths = 1; parametar lpm_widthp = 1; parametar lpm_representation = “NEPOTPISAN”; parametar lpm_pipeline = 0; parametar lpm_hint = “NEKORIŠĆENO”; ulazni sat; input clken; input aclr; ulaz [lpm_widtha-1:0] dataa; ulaz [lpm_widthb-1:0] datab; ulaz [lpm_widths-1:0] suma; izlaz [lpm_widthp-1:0] rezultat; endmodule
4.3. Deklaracija VHDL komponente
Deklaracija VHDL komponente nalazi se u VHDL dizajnu File (.vhd) LPM_PACK.vhd u librariesvhdllpm direktorij.
komponenta LPM_MULT generički ( LPM_WIDTHA : prirodno; LPM_WIDTHB : prirodno; LPM_WIDTHS : prirodno := 1; LPM_WIDTHP : prirodno;
LPM_REPRESENTATION : string := “UNSIGNED”; LPM_PIPELINE : prirodno := 0; LPM_TYPE: string := L_MULT; LPM_HINT : string := “NEKORIŠĆENO”); port ( DATAA: u std_logic_vector(LPM_WIDTHA-1 do 0); DATAB: u std_logic_vector(LPM_WIDTHB-1 do 0); ACLR: u std_logic := '0'; CLOCK : u std_logic' := CLKst_logic := := '0';SUM : u std_logic_vector(LPM_WIDTHS-1 do 1) := (OSTALI => '0');RESULT: van std_logic_vector(LPM_WIDTHP-0 do 1)); krajnja komponenta;
4.4. VHDL LIBRARY_USE deklaracija
Deklaracija VHDL LIBRARY-USE nije potrebna ako koristite deklaraciju komponente VHDL.
BIBLIOTEKA lpm; USE lpm.lpm_components.all;

Pošalji povratne informacije

Korisnički vodič za Intel FPGA integer aritmetičke IP jezgre 17

4. LPM_MULT (Multiplier) IP Core 683490 | 2020.10.05

4.5. Signali

Tabela 7.

LPM_MULT Ulazni signali

Naziv signala

Obavezno

Opis

podacia[]

Da

Unos podataka.

Za uređaje Intel Stratix 10, Intel Arria 10 i Intel Cyclone 10 GX, veličina ulaznog signala ovisi o vrijednosti parametra širine podataka.

Za starije i Intel Cyclone 10 LP uređaje, veličina ulaznog signala ovisi o vrijednosti parametra LPM_WIDTHA.

baza podataka[]

Da

Unos podataka.

Za uređaje Intel Stratix 10, Intel Arria 10 i Intel Cyclone 10 GX, veličina ulaznog signala ovisi o vrijednosti parametra širine podataka baze podataka.

Za starije i Intel Cyclone 10 LP uređaje, veličina ulaznog signala zavisi

na vrijednosti parametra LPM_WIDTHB.

sat

br

Ulaz sata za cevovodnu upotrebu.

Za starije i Intel Cyclone 10 LP uređaje, signal takta mora biti omogućen za LPM_PIPELINE vrijednosti koje nisu 0 (podrazumevano).

Za uređaje Intel Stratix 10, Intel Arria 10 i Intel Cyclone 10 GX, signal sata mora biti omogućen ako je vrijednost Latencije drugačija od 1 (podrazumevano).

clken

br

Omogućavanje sata za korištenje u cjevovodu. Kada je clken signal visok,

odvija se operacija sabirača/oduzimanja. Kada je signal slab, nema operacije

javlja. Ako se izostavi, zadana vrijednost je 1.

aclr sclr

br

Asinhroni čisti signal koji se koristi u bilo koje vrijeme za resetiranje cjevovoda na sve 0s,

asinhrono na signal sata. Cjevovod se inicijalizira na nedefinirano (X)

logički nivo. Izlazi su konzistentne, ali različite od nule vrijednosti.

br

Sinhroni čisti signal koji se koristi u bilo koje vrijeme za resetiranje cjevovoda na sve 0s,

sinhrono sa signalom sata. Cjevovod se inicijalizira na nedefinirano (X)

logički nivo. Izlazi su konzistentne, ali različite od nule vrijednosti.

Tabela 8.

LPM_MULT Izlazni signali

signal Name

Obavezno

Opis

rezultat[]

Da

Izlaz podataka.

Za starije i Intel Cyclone 10 LP uređaje, veličina izlaznog signala ovisi o vrijednosti parametra LPM_WIDTHP. Ako LPM_WIDTHP < max (LPM_WIDTHA + LPM_WIDTHB, LPM_WIDTHS) ili (LPM_WIDTHA + LPM_WIDTHS), prisutni su samo LPM_WIDTHP MSB-ovi.

Za Intel Stratix 10, Intel Arria 10 i Intel Cyclone 10 GX, veličina izlaznih signala zavisi od parametra širine rezultata.

4.6. Parametri za Stratix V, Arria V, Cyclone V i Intel Cyclone 10 LP uređaje

4.6.1. General Tab

Tabela 9.

General Tab

Parametar

Vrijednost

Konfiguracija množitelja

Pomnožite 'dataa' unos sa 'datab' unosom

Zadana vrijednost

Opis

Pomnožite 'dataa' unos sa 'datab' unosom

Odaberite željenu konfiguraciju za množitelj.
nastavak…

Korisnički vodič za Intel FPGA integer aritmetičke IP jezgre 18

Pošalji povratne informacije

4. LPM_MULT (Multiplier) IP Core 683490 | 2020.10.05

Parametar
Koliko širok treba da bude 'dataa' ulaz? Koliko širok bi trebao biti ulaz 'datab'? Kako treba odrediti širinu 'rezultata'? Ograničite širinu

Vrijednost
Pomnoži 'dataa' unos sam po sebi (operacija kvadriranja)
1 – 256 bita

Zadana vrijednost

Opis

8 bita

Odredite širinu porta dataa[].

1 – 256 bita

8 bita

Odredite širinu porta datab[].

Automatski izračunajte širinu Ograničite širinu
1 – 512 bita

Automatski izračunajte širinu

Odaberite željenu metodu da odredite širinu porta result[].

16 bita

Odredite širinu porta rezultata[].
Ova vrijednost će biti učinkovita samo ako odaberete Ograniči širinu u parametru Vrsta.

4.6.2. Općenito 2 Tab

Tabela 10. Općenito 2 Tab

Parametar

Vrijednost

Datab Input

Da li ulazna magistrala 'datab' ima konstantnu vrijednost?

Ne Da

Vrsta množenja

Koju vrstu

Unsigned

množenje želiš? Potpisano

Implementacija

Koju implementaciju množitelja treba koristiti?

Koristite zadanu implementaciju
Koristite namjensko kolo za množenje (nije dostupno za sve porodice)
Koristite logičke elemente

Zadana vrijednost

Opis

br

Odaberite Da da biste odredili konstantnu vrijednost

`datab' ulazna magistrala, ako postoji.

Unsigned

Navedite format predstavljanja i za dataa[] i datab[] ulaze.

Koristite zadanu implementaciju

Odaberite željenu metodu da odredite širinu porta result[].

4.6.3. Pipelining Tab

Tabela 11. Cjevovod Tab

Parametar

Da li želite da dovedete br

funkciju?

Da

Vrijednost

Kreirajte 'aclr'

asinhroni čisti port

Zadana vrijednost

Opis

br

Odaberite Da da biste omogućili registar cjevovoda za

izlaz množitelja i navedite željeni

izlazna latencija u taktu. Omogućavanje

pipeline register dodaje dodatno kašnjenje

izlaz.

Neoznačeno

Odaberite ovu opciju da omogućite aclr port da koristi asinkrono brisanje za registar cjevovoda.
nastavak…

Pošalji povratne informacije

Korisnički vodič za Intel FPGA integer aritmetičke IP jezgre 19

4. LPM_MULT (Multiplier) IP Core 683490 | 2020.10.05

Parametar
Kreirajte 'clken' sat za omogućavanje sata
Optimizacija
Koju vrstu optimizacije želite?

Vrijednost —
Podrazumevano područje brzine

Zadana vrijednost

Opis

Neoznačeno

Određuje aktivnu mogućnost visokog takta za port takta registra cjevovoda

Default

Odredite željenu optimizaciju za IP jezgro.
Odaberite Podrazumevano da dozvolite softveru Intel Quartus Prime da odredi najbolju optimizaciju za IP jezgro.

4.7. Parametri za Intel Stratix 10, Intel Arria 10 i Intel Cyclone 10 GX uređaje

4.7.1. General Tab

Tabela 12. Općenito Tab

Parametar

Vrijednost

Zadana vrijednost

Opis

Tip konfiguracije množitelja
Širina porta podataka

Pomnožite 'dataa' unos sa 'datab' unosom
Pomnoži 'dataa' unos sam po sebi (operacija kvadriranja)

Pomnožite 'dataa' unos sa 'datab' unosom

Odaberite željenu konfiguraciju za množitelj.

Dataa width

1 – 256 bita

8 bita

Odredite širinu porta dataa[].

Širina baze podataka

1 – 256 bita

8 bita

Odredite širinu porta datab[].

Kako treba odrediti širinu 'rezultata'?

Tip

Automatski izračunajte širinu
Ograničite širinu

Automatski izračunajte širinu

Odaberite željenu metodu da odredite širinu porta result[].

Vrijednost

1 – 512 bita

16 bita

Odredite širinu porta rezultata[].
Ova vrijednost će biti učinkovita samo ako odaberete Ograniči širinu u parametru Vrsta.

Širina rezultata

1 – 512 bita

Prikazuje efektivnu širinu porta rezultata [].

4.7.2. Općenito 2 Tab

Tabela 13. Općenito 2 Tab

Parametar

Datab Input

Da li ulazna magistrala 'datab' ima konstantnu vrijednost?

Ne Da

Vrijednost

Zadana vrijednost

Opis

br

Odaberite Da da biste odredili konstantnu vrijednost

`datab' ulazna magistrala, ako postoji.

nastavak…

Korisnički vodič za Intel FPGA integer aritmetičke IP jezgre 20

Pošalji povratne informacije

4. LPM_MULT (Multiplier) IP Core 683490 | 2020.10.05

Parametar

Vrijednost

Vrijednost

Bilo koja vrijednost veća od 0

Vrsta množenja

Koju vrstu

Unsigned

množenje želiš? Potpisano

Stil implementacije

Koju implementaciju množitelja treba koristiti?

Koristite zadanu implementaciju
Koristite namjensko kolo za množenje
Koristite logičke elemente

Zadana vrijednost

Opis

0

Odredite konstantnu vrijednost porta datab[].

Unsigned

Navedite format predstavljanja i za dataa[] i datab[] ulaze.

Koristite zadanu implementaciju

Odaberite željenu metodu da odredite širinu porta result[].

4.7.3. Cjevovod

Tabela 14. Cjevovod Tab

Parametar

Vrijednost

Da li želite da kanalizujete funkciju?

Pipeline

Ne Da

Latency Clear Signal Type

Bilo koja vrijednost veća od 0.
NONE ACLR SCLR

Kreirajte 'clken' sat

omogućiti sat

Koju vrstu optimizacije želite?

Tip

Podrazumevano područje brzine

Zadana vrijednost

Opis

Ne 1 NONE

Odaberite Da da biste omogućili registar cjevovoda za izlaz množitelja. Omogućavanje registra cjevovoda dodaje dodatno kašnjenje izlazu.
Odredite željeno kašnjenje izlaza u ciklusu takta.
Odredite tip resetiranja za registar cjevovoda. Odaberite NONE ako ne koristite nijedan registar cjevovoda. Odaberite ACLR da koristite asinkrono brisanje za registar cjevovoda. Ovo će generirati ACLR port. Odaberite SCLR za korištenje sinkronog brisanja za registar cjevovoda. Ovo će generirati SCLR port.
Određuje aktivnu mogućnost visokog takta za port takta registra cjevovoda

Default

Odredite željenu optimizaciju za IP jezgro.
Izaberite Podrazumevano da dozvolite softveru Intel Quartus Prime da odredi najbolju optimizaciju za IP jezgro.

Pošalji povratne informacije

Korisnički vodič za Intel FPGA integer aritmetičke IP jezgre 21

683490 | 2020.10.05. Pošalji povratnu informaciju

5. LPM_ADD_SUB (Sabirač/Oduzimanje)

Slika 4.

LPM_ADD_SUB IP jezgro vam omogućava da implementirate sabirač ili oduzimanje za dodavanje ili oduzimanje skupova podataka kako biste proizveli izlaz koji sadrži zbir ili razliku ulaznih vrijednosti.

Sljedeća slika prikazuje portove za LPM_ADD_SUB IP jezgro.

LPM_ADD_SUB Portovi

LPM_ADD_SUB add_sub cin

podacia[]

sat clken datab[] aclr

rezultat[] overflow cout

inst

5.1. Karakteristike
LPM_ADD_SUB IP jezgro nudi sljedeće karakteristike: · Generira sabirač, oduzimanje i dinamički konfigurabilni sabirač/oduzimanje
funkcije. · Podržava širinu podataka od 1 bita. · Podržava format predstavljanja podataka kao što su potpisani i nepotpisani. · Podržava opciono preuzimanje (posuđivanje), asinhrono brisanje i omogućavanje sata
ulazni portovi. · Podržava opcione izlazne portove za iznošenje (posuđivanje) i prelivanje. · Dodjeljuje jednu od ulaznih sabirnica podataka konstanti. · Podržava cjevovod sa konfigurabilnim izlaznim kašnjenjem.

Intel Corporation. Sva prava zadržana. Intel, Intel logo i druge Intel oznake su zaštitni znaci Intel Corporation ili njenih podružnica. Intel garantuje performanse svojih FPGA i poluprovodničkih proizvoda u skladu sa trenutnim specifikacijama u skladu sa Intelovom standardnom garancijom, ali zadržava pravo da izvrši izmene bilo kojeg proizvoda i usluge u bilo koje vreme bez prethodne najave. Intel ne preuzima nikakvu odgovornost ili odgovornost koja proizilazi iz primene ili korišćenja bilo koje informacije, proizvoda ili usluge opisane ovde, osim ako je Intel izričito pristao u pisanoj formi. Intelovim kupcima se savjetuje da nabave najnoviju verziju specifikacija uređaja prije nego što se oslone na bilo koju objavljenu informaciju i prije naručivanja proizvoda ili usluga. *Druga imena i robne marke mogu se smatrati vlasništvom drugih.

ISO 9001:2015 Registrovan

5. LPM_ADD_SUB (Sabirač/Oduzimanje) 683490 | 2020.10.05
5.2. Verilog HDL prototip
Sljedeći Verilog HDL prototip se nalazi u Verilog Designu File (.v) lpm.v u edasynthesis directory.
modul lpm_add_sub (rezultat, cout, overflow,add_sub, cin, dataa, datab, clock, clken, aclr); parametar lpm_type = “lpm_add_sub”; parametar lpm_width = 1; parametar lpm_direction = “NEKORIŠĆENO”; parametar lpm_representation = “POTPISAN”; parametar lpm_pipeline = 0; parametar lpm_hint = “NEKORIŠĆENO”; ulaz [lpm_width-1:0] dataa, datab; ulaz add_sub, cin; ulazni sat; input clken; input aclr; izlaz [lpm_width-1:0] rezultat; izlazni izlaz, preliv; endmodule
5.3. Deklaracija VHDL komponente
Deklaracija VHDL komponente nalazi se u VHDL dizajnu File (.vhd) LPM_PACK.vhd u librariesvhdllpm direktorij.
komponenta LPM_ADD_SUB generička (LPM_WIDTH : prirodno;
LPM_DIRECTION : string := “NEKORIŠĆENO”; LPM_REPRESENTATION: string := “POTPISAN”; LPM_PIPELINE : prirodno := 0; LPM_TYPE : string := L_ADD_SUB; LPM_HINT : string := “NEKORIŠĆENO”); port (DATAA: u std_logic_vector(LPM_WIDTH-1 do 0); DATAB: u std_logic_vector(LPM_WIDTH-1 do 0); ACLR: u std_logic := '0'; CLOCK : u std_logic' := in CLKEN_ := '0'; CIN : u std_logic := 'Z'; ADD_SUB : u std_logic := '1'; REZULTAT: izlaz std_logic_vector(LPM_WIDTH-1 do 1); COUT : izlaz std_logic; OVERFLOW_logic: izlaz); krajnja komponenta;
5.4. VHDL LIBRARY_USE deklaracija
Deklaracija VHDL LIBRARY-USE nije potrebna ako koristite deklaraciju komponente VHDL.
BIBLIOTEKA lpm; USE lpm.lpm_components.all;
5.5. Portovi
Sljedeće tablice navode ulazne i izlazne portove za LPM_ADD_SUB IP jezgro.

Pošalji povratne informacije

Korisnički vodič za Intel FPGA integer aritmetičke IP jezgre 23

5. LPM_ADD_SUB (Sabirač/Oduzimanje) 683490 | 2020.10.05

Tabela 15. LPM_ADD_SUB IP jezgra ulaznih portova

Port Name

Obavezno

Opis

cin

br

Prijenos na bit nižeg reda. Za operacije sabiranja, zadana vrijednost je 0. Za

operacije oduzimanja, zadana vrijednost je 1.

podacia[]

Da

Unos podataka. Veličina ulaznog porta ovisi o vrijednosti parametra LPM_WIDTH.

baza podataka[]

Da

Unos podataka. Veličina ulaznog porta ovisi o vrijednosti parametra LPM_WIDTH.

add_sub

br

Opcioni ulazni port za omogućavanje dinamičkog prebacivanja između sabirača i oduzimača

funkcije. Ako se koristi parametar LPM_DIRECTION, add_sub se ne može koristiti. Ako

izostavljeno, zadana vrijednost je ADD. Intel preporučuje da koristite

LPM_DIRECTION parametar za specificiranje rada funkcije LPM_ADD_SUB,

umjesto dodjeljivanja konstante add_sub portu.

sat

br

Ulaz za cevovodnu upotrebu. Port za takt obezbeđuje ulaz takta za cevovod

operacija. Za LPM_PIPELINE vrijednosti različite od 0 (podrazumevano), port sata mora biti

omogućeno.

clken

br

Omogućavanje sata za korištenje u cjevovodu. Kada je port clken visok, zbrajač/

odvija se rad oduzimača. Kada je signal nizak, nema operacije. Ako

izostavljeno, zadana vrijednost je 1.

aclr

br

Asinkrono brisanje za cevovodnu upotrebu. Cjevovod se inicijalizira na nedefinirano (X)

logički nivo. Aclr port se može koristiti u bilo koje vrijeme za resetiranje cjevovoda na sve 0s,

asinhrono na signal sata.

Tabela 16. LPM_ADD_SUB Izlazni portovi IP jezgra

Port Name

Obavezno

Opis

rezultat[]

Da

Izlaz podataka. Veličina izlaznog porta ovisi o parametru LPM_WIDTH

vrijednost.

cout

br

Izvođenje (posuđivanje) najznačajnijeg bita (MSB). Izlazni port ima fizički

tumačenje kao izvršenje (posuđivanje) MSB. Izlazni port detektuje

prelivanje u UNSIGNED operacijama. Cout port radi na isti način za

POTPISANE i NEPOTPISANE operacije.

overflow

br

Opcioni izlaz izuzetka prelivanja. Prelivni port ima fizičku interpretaciju kao

XOR prijenosa na MSB sa iznošenjem MSB-a. Prelivni priključak

potvrđuje kada rezultati premašuju dostupnu preciznost i koristi se samo kada je

Vrijednost parametra LPM_REPRESENTATION je SIGNED.

5.6. Parametri

Sljedeća tabela navodi parametre LPM_ADD_SUB IP jezgre.

Tablica 17. LPM_ADD_SUB IP jezgrini parametri

Naziv parametra LPM_WIDTH

Upišite cijeli broj

Obavezno Da

Opis
Određuje širinu portova dataa[], datab[] i result[].

LPM_DIRECTION

String

br

Vrijednosti su ADD, SUB i UNUSED. Ako se izostavi, zadana vrijednost je DEFAULT, koja usmjerava parametar da preuzme svoju vrijednost iz add_sub porta. add_sub port se ne može koristiti ako se koristi LPM_DIRECTION. Intel preporučuje da koristite parametar LPM_DIRECTION da specificirate rad funkcije LPM_ADD_SUB, umjesto da dodjeljujete konstantu add_sub portu.
nastavak…

Korisnički vodič za Intel FPGA integer aritmetičke IP jezgre 24

Pošalji povratne informacije

5. LPM_ADD_SUB (Sabirač/Oduzimanje) 683490 | 2020.10.05

Naziv parametra LPM_REPRESENTATION LPM_PIPELINE LPM_HINT LPM_TYPE ONE_INPUT_IS_CONSTANT MAXIMIZE_SPEED
INTENDED_DEVICE_FAMILY

Tip String Integer String String Integer
String

Obavezno Ne Ne Ne Ne Ne Ne Ne
br

Opis
Određuje tip izvršenog dodavanja. Vrijednosti su SIGNED i UNSIGNED. Ako se izostavi, zadana vrijednost je SIGNED. Kada je ovaj parametar postavljen na SIGNED, sabirač/oduzimanje tumači ulazne podatke kao komplementar dva predznaka.
Određuje broj ciklusa latencije pridruženih rezultatu [] izlazu. Vrijednost nula (0) ukazuje da ne postoji latencija i da će se instancirati čisto kombinacijska funkcija. Ako se izostavi, zadana vrijednost je 0 (bez cjevovoda).
Omogućava vam da specificirate parametre specifične za Intel u VHDL dizajnu files (.vhd). Podrazumevana vrijednost je NEKORIŠĆENO.
Identificira naziv entiteta biblioteke parametriziranih modula (LPM) u VHDL dizajnu files.
Parametar specifičan za Intel. Morate koristiti LPM_HINT parametar da specificirate parametar ONE_INPUT_IS_CONSTANT u VHDL dizajnu files. Vrijednosti su DA, NE i NEKORIŠĆENO. Pruža veću optimizaciju ako je jedan ulaz konstantan. Ako se izostavi, zadana vrijednost je NE.
Parametar specifičan za Intel. Morate koristiti LPM_HINT parametar da specificirate parametar MAXIMIZE_SPEED u VHDL dizajnu files. Možete navesti vrijednost između 0 i 10. Ako se koristi, softver Intel Quartus Prime pokušava optimizirati određenu instancu funkcije LPM_ADD_SUB radi brzine, a ne rutabilnosti, i poništava postavku logičke opcije Optimization Technique. Ako se MAXIMIZE_SPEED ne koristi, umjesto toga se koristi vrijednost opcije Optimization Technique. Ako je postavka za MAXIMIZE_SPEED 6 ili veća, kompajler optimizuje LPM_ADD_SUB IP jezgro za veću brzinu koristeći lance za nošenje; ako je postavka 5 ili manje, kompajler implementira dizajn bez lanaca za nošenje. Ovaj parametar mora biti specificiran za Cyclone, Stratix i Stratix GX uređaje samo kada se add_sub port ne koristi.
Ovaj parametar se koristi za potrebe modeliranja i simulacije ponašanja. Editor parametara izračunava vrijednost za ovaj parametar.

Pošalji povratne informacije

Korisnički vodič za Intel FPGA integer aritmetičke IP jezgre 25

683490 | 2020.10.05. Pošalji povratnu informaciju

6. LPM_COMPARE (komparator)

Slika 5.

LPM_COMPARE IP jezgro uspoređuje vrijednost dva skupa podataka kako bi odredila odnos između njih. U svom najjednostavnijem obliku, možete koristiti isključivu ILI kapiju da odredite da li su dva bita podataka jednaka.

Sljedeća slika prikazuje portove za LPM_COMPARE IP jezgro.

LPM_COMPARE Portovi

LPM_COMPARE

clken

alb

aeb

podacia[]

agb

baza podataka[]

ageb

sat

aneb

aclr

aleb

inst

6.1. Karakteristike
IP jezgro LPM_COMPARE nudi sljedeće karakteristike: · Generiše funkciju komparatora za upoređivanje dva skupa podataka · Podržava širinu podataka od 1 bita · Podržava format predstavljanja podataka kao što su potpisani i nepotpisani · Proizvodi sljedeće tipove izlaza:
— alb (ulaz A je manji od ulaza B) — aeb (ulaz A je jednak ulazu B) — agb (ulaz A je veći od ulaza B) — ageb (ulaz A je veći ili jednak ulazu B) — aneb ( ulaz A nije jednak ulazu B) — aleb (ulaz A je manji od ili jednak ulazu B) · Podržava opcionalne asinhrone ulazne portove za brisanje i omogućavanje takta · Dodjeljuje ulaz datab[] konstanti · Podržava cjevovod sa konfigurabilnom izlaznom latencijom

Intel Corporation. Sva prava zadržana. Intel, Intel logo i druge Intel oznake su zaštitni znaci Intel Corporation ili njenih podružnica. Intel garantuje performanse svojih FPGA i poluprovodničkih proizvoda u skladu sa trenutnim specifikacijama u skladu sa Intelovom standardnom garancijom, ali zadržava pravo da izvrši izmene bilo kojeg proizvoda i usluge u bilo koje vreme bez prethodne najave. Intel ne preuzima nikakvu odgovornost ili odgovornost koja proizilazi iz primene ili korišćenja bilo koje informacije, proizvoda ili usluge opisane ovde, osim ako je Intel izričito pristao u pisanoj formi. Intelovim kupcima se savjetuje da nabave najnoviju verziju specifikacija uređaja prije nego što se oslone na bilo koju objavljenu informaciju i prije naručivanja proizvoda ili usluga. *Druga imena i robne marke mogu se smatrati vlasništvom drugih.

ISO 9001:2015 Registrovan

6. LPM_COMPARE (komparator) 683490 | 2020.10.05
6.2. Verilog HDL prototip
Sljedeći Verilog HDL prototip se nalazi u Verilog Designu File (.v) lpm.v u edasynthesis directory.
modul lpm_compare (alb, aeb, agb, aleb, aneb, ageb, dataa, datab, clock, clken, aclr); parametar lpm_type = “lpm_compare”; parametar lpm_width = 1; parametar lpm_representation = “NEPOTPISAN”; parametar lpm_pipeline = 0; parametar lpm_hint = “NEKORIŠĆENO”; ulaz [lpm_width-1:0] dataa, datab; ulazni sat; input clken; input aclr; izlaz alb, aeb, agb, aleb, aneb, ageb; endmodule
6.3. Deklaracija VHDL komponente
Deklaracija VHDL komponente nalazi se u VHDL dizajnu File (.vhd) LPM_PACK.vhd u librariesvhdllpm direktorij.
komponenta LPM_COMPARE generičko (LPM_WIDTH : prirodno;
LPM_REPRESENTATION : string := “UNSIGNED”; LPM_PIPELINE : prirodno := 0; LPM_TYPE: string := L_COMPARE; LPM_HINT : string := “NEKORIŠĆENO”); port (DATAA: u std_logic_vector(LPM_WIDTH-1 do 0); DATAB: u std_logic_vector(LPM_WIDTH-1 do 0); ACLR: u std_logic := '0'; CLOCK : u std_logic' := in CLKEN_ := '0'; AGB : izlaz std_logic; AGEB : izlaz std_logic; AEB : izlaz std_logic; ANEB : izlaz std_logic; ALB : izlaz std_logic; ALEB : izlaz std_logic); krajnja komponenta;
6.4. VHDL LIBRARY_USE deklaracija
Deklaracija VHDL LIBRARY-USE nije potrebna ako koristite deklaraciju komponente VHDL.
BIBLIOTEKA lpm; USE lpm.lpm_components.all;
6.5. Portovi
Sljedeće tablice navode ulazne i izlazne portove za LMP_COMPARE IP jezgro.

Pošalji povratne informacije

Korisnički vodič za Intel FPGA integer aritmetičke IP jezgre 27

6. LPM_COMPARE (komparator) 683490 | 2020.10.05

Tablica 18. LPM_COMPARE IP jezgro ulaznih portova

Port Name

Obavezno

Opis

podacia[]

Da

Unos podataka. Veličina ulaznog porta ovisi o vrijednosti parametra LPM_WIDTH.

baza podataka[]

Da

Unos podataka. Veličina ulaznog porta ovisi o vrijednosti parametra LPM_WIDTH.

sat

br

Ulaz sata za cevovodnu upotrebu. Port za takt obezbeđuje ulaz takta za cevovod

operacija. Za LPM_PIPELINE vrijednosti različite od 0 (podrazumevano), port sata mora biti

omogućeno.

clken

br

Omogućavanje sata za korištenje u cjevovodu. Kada je port clken visok,

odvija se operacija poređenja. Kada je signal nizak, nema operacije. Ako

izostavljeno, zadana vrijednost je 1.

aclr

br

Asinkrono brisanje za cevovodnu upotrebu. Cjevovod se inicijalizira na nedefiniranu (X) logiku

nivo. Aclr port se može koristiti u bilo koje vrijeme za resetiranje cjevovoda na sve 0s,

asinhrono na signal sata.

Tablica 19. LPM_COMPARE Izlazni portovi IP jezgre

Port Name

Obavezno

Opis

alb

br

Izlazni port za komparator. Potvrđeno ako je ulaz A manji od ulaza B.

aeb

br

Izlazni port za komparator. Potvrđeno ako je ulaz A jednak ulazu B.

agb

br

Izlazni port za komparator. Potvrđeno ako je ulaz A veći od ulaza B.

ageb

br

Izlazni port za komparator. Potvrđeno ako je ulaz A veći ili jednak ulazu

B.

aneb

br

Izlazni port za komparator. Potvrđeno ako ulaz A nije jednak ulazu B.

aleb

br

Izlazni port za komparator. Potvrđeno ako je ulaz A manji ili jednak ulazu B.

6.6. Parametri

Sljedeća tabela navodi parametre za LPM_COMPARE IP jezgro.

Tablica 20. Parametri LPM_COMPARE IP jezgre

Naziv parametra

Tip

Obavezno

LPM_WIDTH

Integer Yes

LPM_REPRESENTATION

String

br

LPM_PIPELINE

Cijeli broj

LPM_HINT

String

br

Opis
Određuje širinu portova dataa[] i datab[].
Određuje tip izvršenog poređenja. Vrijednosti su SIGNED i UNSIGNED. Ako se izostavi, zadana vrijednost je UNSIGNED. Kada je ova vrijednost parametra postavljena na SIGNED, komparator tumači ulazne podatke kao komplement dva znaka.
Određuje broj ciklusa takta latencije povezanih sa izlazom alb, aeb, agb, ageb, aleb ili aneb. Vrijednost nula (0) ukazuje da ne postoji latencija i da će se instancirati čisto kombinacijska funkcija. Ako se izostavi, zadana vrijednost je 0 (neprotočno).
Omogućava vam da specificirate parametre specifične za Intel u VHDL dizajnu files (.vhd). Podrazumevana vrijednost je NEKORIŠĆENO.
nastavak…

Korisnički vodič za Intel FPGA integer aritmetičke IP jezgre 28

Pošalji povratne informacije

6. LPM_COMPARE (komparator) 683490 | 2020.10.05
Naziv parametra LPM_TYPE INTENDED_DEVICE_FAMILY
ONE_INPUT_IS_CONSTANT

Tip String String
String

Obavezno Ne br
br

Opis
Identificira naziv entiteta biblioteke parametriziranih modula (LPM) u VHDL dizajnu files.
Ovaj parametar se koristi za potrebe modeliranja i simulacije ponašanja. Editor parametara izračunava vrijednost za ovaj parametar.
Parametar specifičan za Intel. Morate koristiti LPM_HINT parametar da specificirate parametar ONE_INPUT_IS_CONSTANT u VHDL dizajnu files. Vrijednosti su DA, NE ili NEKORIŠĆENO. Pruža veću optimizaciju ako je ulaz konstantan. Ako se izostavi, zadana vrijednost je NE.

Pošalji povratne informacije

Korisnički vodič za Intel FPGA integer aritmetičke IP jezgre 29

683490 | 2020.10.05. Pošalji povratnu informaciju

7. ALTECC (kod za ispravljanje grešaka: koder/dekoder) IP jezgro

Slika 6.

Intel obezbeđuje ALTECC IP jezgro za implementaciju ECC funkcionalnosti. ECC otkriva oštećene podatke koji se javljaju na strani prijemnika tokom prijenosa podataka. Ova metoda ispravljanja grešaka je najprikladnija za situacije u kojima se greške javljaju nasumično, a ne u nizu.

ECC otkriva greške kroz proces kodiranja i dekodiranja podataka. Za nprampDakle, kada se ECC primjenjuje u aplikaciji za prijenos, podaci pročitani iz izvora se kodiraju prije nego što se pošalju prijemniku. Izlaz (kodna riječ) iz enkodera se sastoji od sirovih podataka pridodanih brojem bitova parnosti. Tačan broj dodanih bitova parnosti ovisi o broju bitova u ulaznim podacima. Generirana kodna riječ se zatim prenosi do odredišta.

Prijemnik prima kodnu riječ i dekodira je. Informacije koje dobije dekoder određuju da li je greška otkrivena. Dekoder otkriva jednobitne i dvobitne greške, ali može popraviti samo jednobitne greške u oštećenim podacima. Ovaj tip ECC-a je jednostruka ispravka greške, otkrivanje dvostruke greške (SECDED).

Možete konfigurirati funkcije kodera i dekodera ALTECC IP jezgre. Ulaz podataka u enkoder je kodiran za generiranje kodne riječi koja je kombinacija unosa podataka i generiranih bitova parnosti. Generirana kodna riječ se prenosi modulu dekodera za dekodiranje neposredno prije nego što stigne do odredišnog bloka. Dekoder generiše vektor sindroma kako bi utvrdio postoji li greška u primljenoj kodnoj riječi. Dekoder ispravlja podatke samo ako je jednobitna greška iz bitova podataka. Nema signala ako je jednobitna greška iz bitova parnosti. Dekoder takođe ima signale zastavice za prikaz statusa primljenih podataka i radnje koju je dekoder preduzeo, ako ih ima.

Sljedeće slike prikazuju portove za ALTECC IP jezgro.

ALTECC Encoder Portovi

ALTECC_ENCODER

podaci[]

q[]

sat

clocken

aclr

inst

Intel Corporation. Sva prava zadržana. Intel, Intel logo i druge Intel oznake su zaštitni znaci Intel Corporation ili njenih podružnica. Intel garantuje performanse svojih FPGA i poluprovodničkih proizvoda u skladu sa trenutnim specifikacijama u skladu sa Intelovom standardnom garancijom, ali zadržava pravo da izvrši izmene bilo kojeg proizvoda i usluge u bilo koje vreme bez prethodne najave. Intel ne preuzima nikakvu odgovornost ili odgovornost koja proizilazi iz primene ili korišćenja bilo koje informacije, proizvoda ili usluge opisane ovde, osim ako je Intel izričito pristao u pisanoj formi. Intelovim kupcima se savjetuje da nabave najnoviju verziju specifikacija uređaja prije nego što se oslone na bilo koju objavljenu informaciju i prije naručivanja proizvoda ili usluga. *Druga imena i robne marke mogu se smatrati vlasništvom drugih.

ISO 9001:2015 Registrovan

7. ALTECC (kod za ispravljanje grešaka: koder/dekoder) IP Core 683490 | 2020.10.05

Slika 7. Portovi ALTECC dekodera

ALTECC_DECODER

data[] clock clocken

q[] err_detected err_corrected
err_fatal

aclr

inst

7.1. Karakteristike ALTECC enkodera

IP jezgro ALTECC enkodera nudi sljedeće karakteristike: · Izvodi kodiranje podataka koristeći šemu Hammingovog kodiranja · Podržava širinu podataka od 2 bita · Podržava format predstavljanja potpisanih i nepotpisanih podataka · Podržava cevovod sa izlaznom latencijom od jednog ili dva ciklusa takta · Podržava opciono asinhroni portovi za brisanje i omogućavanje takta

IP jezgro ALTECC kodera preuzima i kodira podatke koristeći šemu Hamming kodiranja. Šema Hamingovog kodiranja izvodi paritetne bitove i dodaje ih originalnim podacima kako bi proizvela izlaznu kodnu riječ. Broj paritetnih bitova koji se dodaju ovisi o širini podataka.

Sljedeća tabela navodi broj bitova parnosti koji se dodaju za različite raspone širina podataka. Kolona Total Bits predstavlja ukupan broj bitova ulaznih podataka i pridodanih bitova parnosti.

Tabela 21.

Broj bitova parnosti i kodna riječ prema širini podataka

Širina podataka

Broj bitova parnosti

Ukupan broj bitova (kodna riječ)

2-4

3+1

6-8

5-11

4+1

10-16

12-26

5+1

18-32

27-57

6+1

34-64

58-64

7+1

66-72

Izvođenje bitova parnosti koristi provjeru parnosti. Dodatni 1 bit (prikazano u tabeli kao +1) se dodaje paritetnim bitovima kao MSB kodne riječi. Ovo osigurava da kodna riječ ima paran broj 1. Za nprampAko je širina podataka 4 bita, 4 bita parnosti se dodaju podacima kako bi postali kodna riječ sa ukupno 8 bita. Ako 7 bitova iz LSB-a 8-bitne kodne riječi imaju neparan broj 1, 8. bit (MSB) kodne riječi je 1, čime je ukupan broj 1 u kodnoj riječi paran.
Sljedeća slika prikazuje generiranu kodnu riječ i raspored bitova parnosti i bitova podataka u 8-bitnom ulazu podataka.

Pošalji povratne informacije

Korisnički vodič za Intel FPGA integer aritmetičke IP jezgre 31

7. ALTECC (kod za ispravljanje grešaka: koder/dekoder) IP Core 683490 | 2020.10.05

Slika 8.

Paritetni bitovi i raspored bitova podataka u 8-bitnoj generiranoj kodnoj riječi

MSB

LSB

4 paritetna bita

4 bitova podataka

8

1

IP jezgro ALTECC enkodera prihvata samo ulazne širine od 2 do 64 bita odjednom. Ulazne širine od 12 bita, 29 bita i 64 bita, koje su idealno prilagođene Intel uređajima, generišu izlaze od 18 bita, 36 bita, odnosno 72 bita. Možete kontrolirati ograničenje odabira bitova u uređivaču parametara.

7.2. Verilog HDL prototip (ALTECC_ENCODER)
Sljedeći Verilog HDL prototip se nalazi u Verilog Designu File (.v) lpm.v u edasynthesis directory.
modul altecc_encoder #( parametar namenjen_device_family = "neiskorišten", parametar lpm_pipeline = 0, parametar width_codeword = 8, parametar width_dataword = 8, parametar lpm_type = "altecc_encoder", parametar lpm_hint = "uneti žicu, ubaciti žicu") ( takt žice, ulazna žica [width_dataword-1:0] podaci, izlazna žica [width_codeword-1:0] q); endmodule

7.3. Verilog HDL prototip (ALTECC_DECODER)
Sljedeći Verilog HDL prototip se nalazi u Verilog Designu File (.v) lpm.v u edasynthesis directory.
modul altecc_decoder #( parametar namenjen_device_family = "neiskorišten", parametar lpm_pipeline = 0, parametar width_codeword = 8, parametar width_dataword = 8, parametar lpm_type = "altecc_decoder", parametar lpm_hint = "uneti žicu, ubaciti žicu") ( takt žice, ulazna žica [width_codeword-1:0] podaci, izlazna žica err_corrected, izlazna žica err_detected, izlazna žica err_fatal, izlazna žica [width_dataword-1:0] q); endmodule

Korisnički vodič za Intel FPGA integer aritmetičke IP jezgre 32

Pošalji povratne informacije

7. ALTECC (kod za ispravljanje grešaka: koder/dekoder) IP Core 683490 | 2020.10.05
7.4. Deklaracija VHDL komponente (ALTECC_ENCODER)
Deklaracija VHDL komponente nalazi se u VHDL dizajnu File (.vhd) altera_mf_components.vhd u librariesvhdlaltera_mf direktorij.
komponenta altecc_encoder generička ( namijenjena_family_device:string := “nekorišten”; lpm_pipeline:natural := 0; width_codeword:natural := 8; width_dataword:natural := 8; lpm_hint:string := “UNUSED”; lpm_type “UNUSED”; lpm_type_nco ”); port(aclr:u std_logic := '0'; sat:u std_logic := '0'; clocken:u std_logic := '1'; podaci:u std_logic_vector(width_dataword-1 do 0); q:out std_logic_ve -1 do 0)); krajnja komponenta;
7.5. Deklaracija VHDL komponente (ALTECC_DECODER)
Deklaracija VHDL komponente nalazi se u VHDL dizajnu File (.vhd) altera_mf_components.vhd u librariesvhdlaltera_mf direktorij.
komponenta altecc_decoder generički ( namijenjen_device_family:string := “nekorišten”; lpm_pipeline:natural := 0; width_codeword:natural := 8; width_dataword:natural := 8; lpm_hint:string := “UNUSED”; lpm_type:ostringdec_ ”); port(aclr:in std_logic := '0'; clock:in std_logic := '0'; clocken:in std_logic := '1'; data:in std_logic_vector(width_codeword-1 do 0); err_corrected: out; stder_ : out std_logic;q:out std_logic_vector(width_dataword-1 downto 0); syn_e: out std_logic); krajnja komponenta;
7.6. VHDL LIBRARY_USE deklaracija
Deklaracija VHDL LIBRARY-USE nije potrebna ako koristite deklaraciju komponente VHDL.
BIBLIOTEKA altera_mf; KORISTI altera_mf.altera_mf_components.all;
7.7. Portovi kodera
Sljedeće tablice navode ulazne i izlazne portove za IP jezgro ALTECC kodera.

Pošalji povratne informacije

Korisnički vodič za Intel FPGA integer aritmetičke IP jezgre 33

7. ALTECC (kod za ispravljanje grešaka: koder/dekoder) IP Core 683490 | 2020.10.05

Tablica 22. Ulazni portovi ALTECC enkodera

Port Name

Obavezno

Opis

podaci[]

Da

Port za unos podataka. Veličina ulaznog porta ovisi o WIDTH_DATAWORD

vrijednost parametra. Port podataka[] sadrži sirove podatke koji se kodiraju.

sat

Da

Ulazni port za sat koji daje signal sata za sinhronizaciju operacije kodiranja.

Port sata je potreban kada je vrijednost LPM_PIPELINE veća od 0.

clocken

br

Omogućavanje sata. Ako se izostavi, zadana vrijednost je 1.

aclr

br

Asinhroni čisti unos. Aktivni visoki aclr signal se može koristiti u bilo kojem trenutku za

asinhrono brisati registre.

Tablica 23. Izlazni portovi ALTECC enkodera

Naziv porta q[]

Obavezno Da

Opis
Port za izlaz kodiranih podataka. Veličina izlaznog porta ovisi o vrijednosti parametra WIDTH_CODEWORD.

7.8. Portovi dekodera

Sljedeće tablice navode ulazne i izlazne portove za IP jezgro ALTECC dekodera.

Tablica 24. Ulazni portovi ALTECC dekodera

Port Name

Obavezno

Opis

podaci[]

Da

Port za unos podataka. Veličina ulaznog porta ovisi o vrijednosti parametra WIDTH_CODEWORD.

sat

Da

Ulazni port za sat koji daje signal sata za sinhronizaciju operacije kodiranja. Port sata je potreban kada je vrijednost LPM_PIPELINE veća od 0.

clocken

br

Omogućavanje sata. Ako se izostavi, zadana vrijednost je 1.

aclr

br

Asinhroni čisti unos. Aktivni visoki aclr signal se može koristiti u bilo kojem trenutku za asinhrono brisanje registara.

Tablica 25. Izlazni portovi ALTECC dekodera

Naziv porta q[]

Obavezno Da

Opis
Izlazni port dekodiranih podataka. Veličina izlaznog porta ovisi o vrijednosti parametra WIDTH_DATAWORD.

err_detected Da

Signal zastavice koji odražava status primljenih podataka i specificira sve pronađene greške.

err_correcte Da d

Signal zastavice koji odražava status primljenih podataka. Označava jednobitnu grešku koja je pronađena i ispravljena. Možete koristiti podatke jer su već ispravljeni.

err_fatal

Da

Signal zastavice koji odražava status primljenih podataka. Označava dvobitnu grešku koja je pronađena, ali nije ispravljena. Ne smijete koristiti podatke ako je ovaj signal potvrđen.

syn_e

br

Izlazni signal koji će biti visok kad god se detektira jednobitna greška na paritetu

bits.

7.9. Parametri kodera
Sljedeća tablica navodi parametre za IP jezgru ALTECC kodera.

Korisnički vodič za Intel FPGA integer aritmetičke IP jezgre 34

Pošalji povratne informacije

7. ALTECC (kod za ispravljanje grešaka: koder/dekoder) IP Core 683490 | 2020.10.05

Tablica 26. Parametri ALTECC enkodera

Naziv parametra

Tip

Obavezno

Opis

WIDTH_DATAWORD

Integer Yes

Određuje širinu neobrađenih podataka. Vrijednosti su od 2 do 64. Ako se izostavi, zadana vrijednost je 8.

WIDTH_CODEWORD

Integer Yes

Određuje širinu odgovarajuće kodne riječi. Važeće vrijednosti su od 6 do 72, isključujući 9, 17, 33 i 65. Ako se izostavi, zadana vrijednost je 13.

LPM_PIPELINE

Cijeli broj

Određuje cjevovod za krug. Vrijednosti su od 0 do 2. Ako je vrijednost 0, portovi nisu registrirani. Ako je vrijednost 1, izlazni portovi se registriraju. Ako je vrijednost 2, ulazni i izlazni portovi su registrirani. Ako se izostavi, zadana vrijednost je 0.

7.10. Parametri dekodera

Sljedeća tabela navodi parametre jezgre ALTECC dekodera.

Tablica 27. Parametri ALTECC dekodera

Naziv parametra WIDTH_DATAWORD

Upišite cijeli broj

Obavezno

Opis

Da

Određuje širinu neobrađenih podataka. Vrijednosti su od 2 do 64. The

zadana vrijednost je 8.

WIDTH_CODEWORD

Integer

Da

Određuje širinu odgovarajuće kodne riječi. Vrijednosti su 6

do 72, isključujući 9, 17, 33 i 65. Ako se izostavi, zadana vrijednost

iznosi 13.

LPM_PIPELINE

Integer

br

Određuje registar kola. Vrijednosti su od 0 do 2. Ako je

vrijednost je 0, nijedan registar nije implementiran. Ako je vrijednost 1,

izlaz je registrovan. Ako je vrijednost 2, i ulaz i

izlaz je registrovan. Ako je vrijednost veća od 2, dodatno

registri se implementiraju na izlazu za dop

latencije. Ako se izostavi, zadana vrijednost je 0.

Kreirajte 'syn_e' port

Integer

br

Uključite ovaj parametar da kreirate syn_e port.

Pošalji povratne informacije

Korisnički vodič za Intel FPGA integer aritmetičke IP jezgre 35

683490 | 2020.10.05. Pošalji povratnu informaciju

8. Intel FPGA Multiply Adder IP Core

Slika 9.

Intel FPGA Multiply Adder (Intel Stratix 10, Intel Arria 10 i Intel Cyclone 10 GX uređaji) ili ALTERA_MULT_ADD (Arria V, Stratix V i Cyclone V uređaji) IP jezgro vam omogućava da implementirate sabirač množitelja.

Sljedeća slika prikazuje portove za Intel FPGA Multiply Adder ili ALTERA_MULT_ADD IP jezgro.

Intel FPGA višestruki sabirač ili ALTERA_MULT_ADD portovi

Intel FPGA Multiply Adder ili ALTERA_MULT_ADD

dataa[] signa datab[] signb datac[] coefsel0[] coefsel1[] coefsel2[] coefsel3[] addnsub1 addnsub3 aclr/sclr[] scanina[] clock0 clock1 clock2 ena0 ena1 ena2 sload_accum
accum_sload chainin[]

scanouta[] rezultat[]

aclr0 aclr1

inst
Multiplikator-sabirač prihvata parove ulaza, množi vrijednosti zajedno i zatim dodaje ili oduzima od proizvoda svih ostalih parova.
Ako su sve širine ulaznih podataka širine 9 bita ili manje, funkcija koristi konfiguraciju ulaznog množenja 9 x 9 bita u DSP bloku za uređaje koji podržavaju konfiguraciju 9 x 9. Ako ne, DSP blok koristi 18 × 18-bitne ulazne množitelje za obradu podataka širine između 10 i 18 bita. Ako se u dizajnu pojavljuje više Intel FPGA Multiply Adder ili ALTERA_MULT_ADD IP jezgara, funkcije se distribuiraju na

Intel Corporation. Sva prava zadržana. Intel, Intel logo i druge Intel oznake su zaštitni znaci Intel Corporation ili njenih podružnica. Intel garantuje performanse svojih FPGA i poluprovodničkih proizvoda u skladu sa trenutnim specifikacijama u skladu sa Intelovom standardnom garancijom, ali zadržava pravo da izvrši izmene bilo kojeg proizvoda i usluge u bilo koje vreme bez prethodne najave. Intel ne preuzima nikakvu odgovornost ili odgovornost koja proizilazi iz primene ili korišćenja bilo koje informacije, proizvoda ili usluge opisane ovde, osim ako je Intel izričito pristao u pisanoj formi. Intelovim kupcima se savjetuje da nabave najnoviju verziju specifikacija uređaja prije nego što se oslone na bilo koju objavljenu informaciju i prije naručivanja proizvoda ili usluga. *Druga imena i robne marke mogu se smatrati vlasništvom drugih.

ISO 9001:2015 Registrovan

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05
mnogo različitih DSP blokova što je moguće tako da je rutiranje do ovih blokova fleksibilnije. Manje množitelja po DSP bloku omogućava više izbora rutiranja u blok minimiziranjem putanja do ostatka uređaja.
Registri i dodatni registri cevovoda za sledeće signale su takođe smešteni unutar DSP bloka: · Unos podataka · Potpisani ili nepotpisani selekt · Dodaj ili oduzmi selekt · Proizvodi množitelja
U slučaju izlaznog rezultata, prvi registar se postavlja u DSP blok. Međutim, dodatni registri kašnjenja se postavljaju u logičke elemente izvan bloka. Periferni za DSP blok, uključujući ulaze podataka u množitelj, ulaze kontrolnih signala i izlaze sabirača, koriste redovno rutiranje za komunikaciju sa ostatkom uređaja. Sve veze u funkciji koriste namjensko rutiranje unutar DSP bloka. Ovo namjensko usmjeravanje uključuje lance registra pomaka kada odaberete opciju da pomaknete registrovane ulazne podatke množitelja iz jednog množitelja u susjedni množitelj.
Za više informacija o DSP blokovima u bilo kojoj od serija uređaja Stratix V i Arria V, pogledajte poglavlje DSP blokovi odgovarajućih priručnika na stranici Literatura i tehnička dokumentacija.
Povezane informacije AN 306: Implementacija množitelja u FPGA uređajima
Pruža više informacija o implementaciji množitelja koristeći DSP i memorijske blokove u Intel FPGA uređajima.
8.1. Karakteristike
Intel FPGA Multiply Adder ili ALTERA_MULT_ADD IP jezgro nudi sljedeće karakteristike: · Generiše množitelj za obavljanje operacija množenja dva kompleksa
brojevi Napomena: Prilikom izrade množitelja većih od izvorno podržane veličine može/
će biti uticaj na performanse koji je rezultat kaskadiranja DSP blokova. · Podržava širine podataka od 1 256 bita · Podržava format predstavljanja potpisanih i nepotpisanih podataka · Podržava cjevovod sa konfigurabilnim kašnjenjem unosa · Pruža opciju za dinamičko prebacivanje između potpore potpisanih i nepotpisanih podataka · Pruža opciju za dinamičko prebacivanje između operacije sabiranja i oduzimanja · Podržava opcioni asinhroni i sinhroni čisti i takt koji omogućavaju ulazne portove · Podržava režim registra sistoličkog kašnjenja · Podržava pred-sabirač sa 8 koeficijenata pred-opterećenja po množitelju · Podržava konstantu pred-opterećenja da dopuni povratne informacije akumulatora

Pošalji povratne informacije

Korisnički vodič za Intel FPGA integer aritmetičke IP jezgre 37

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05

8.1.1. Pred-sabirač
Sa predsabiračem, sabiranja ili oduzimanja se vrše prije unosa množitelja.
Postoji pet modova pred-sabirača: · Jednostavni način · Način rada koeficijenta · Način unosa · Kvadratni način · Konstantni način

Napomena:

Kada se koristi pred-sabirač (koeficijent pred-sabirača/ulaz/kvadrat mod), svi ulazi podataka u množitelj moraju imati istu postavku sata.

8.1.1.1. Jednostavni način rada za pred-sabirač

U ovom modu, oba operanda proizlaze iz ulaznih portova i pred-sabirač se ne koristi niti zaobilazi. Ovo je zadani način rada.

Slika 10. Jednostavni način rada pred-sabirača
a0 b0

Mult0

rezultat

8.1.1.2. Režim koeficijenta pred-sabirača
U ovom modu, jedan operand množenja izvodi se iz pred-sabirača, a drugi operand se izvodi iz interne memorije koeficijenata. Skladištenje koeficijenta omogućava do 8 unaprijed postavljenih konstanti. Signali za odabir koeficijenta su coefsel[0..3].
Ovaj mod je izražen u sljedećoj jednačini.

U nastavku je prikazan način koeficijenta pred-sabirača množitelja.

Slika 11. Režim koeficijenta pred-sabirača

Predader

a0

Mult0

+/-

rezultat

b0

coefsel0 coef

Korisnički vodič za Intel FPGA integer aritmetičke IP jezgre 38

Pošalji povratne informacije

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05
8.1.1.3. Režim unosa pred-sabirača U ovom režimu, jedan operand množenja izvodi se iz pred-sabirača, a drugi operand se izvodi iz ulaznog porta datac[]. Ovaj mod je izražen u sljedećoj jednačini.

U nastavku je prikazan način unosa pred-sabirača množitelja.

Slika 12. Režim unosa pred-sabirača
a0 b0

Mult0

+/-

rezultat

c0

8.1.1.4. Kvadratni mod pred-sabirača Ovaj mod je izražen u sljedećoj jednadžbi.

U nastavku je prikazan kvadratni mod pred-sabirača dva množitelja.

Slika 13. Kvadratni mod pred-sabirača
a0 b0

Mult0

+/-

rezultat

8.1.1.5. Konstantni način rada pred-sabirača
U ovom modu, jedan operand množenja izvodi se iz ulaznog porta, a drugi operand izvodi iz interne memorije koeficijenata. Skladištenje koeficijenta omogućava do 8 unaprijed postavljenih konstanti. Signali za odabir koeficijenta su coefsel[0..3].
Ovaj mod je izražen u sljedećoj jednačini.

Pošalji povratne informacije

Korisnički vodič za Intel FPGA integer aritmetičke IP jezgre 39

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05

Sljedeća slika prikazuje konstantni mod pred-sabirača množitelja.

Slika 14. Konstantni režim pred-sabirača
a0

Mult0

rezultat

coefsel0
koef
8.1.2. Registar sistoličkog kašnjenja
U sistoličkoj arhitekturi, ulazni podaci se unose u kaskadu registara koji djeluju kao bafer podataka. Svaki registar daje ulaz sample do množitelja gdje se množi sa odgovarajućim koeficijentom. Lanac sabirača pohranjuje postepeno kombinovane rezultate iz množitelja i prethodno registrovani rezultat iz ulaznog porta chainin[] kako bi formirao konačni rezultat. Svaki element pomnoži-dodaj mora biti odgođen za jedan ciklus kako bi se rezultati na odgovarajući način sinhronizirali kada se zbroje. Svako uzastopno kašnjenje se koristi za adresiranje i memorije koeficijenata i bafera podataka njihovih odgovarajućih elemenata za višestruko sabiranje. Za nprample, jedno kašnjenje za drugi element umnoženog dodavanja, dva kašnjenja za treći element pomnoženja i tako dalje.
Slika 15. Sistolni registri
Sistolni registri

x(t) c(0)

S -1

S -1

c(1)

S -1

S -1

c(2)

S -1

S -1

c(N-1)

S -1

S -1

S -1

S -1 y(t)

x(t) predstavlja rezultate iz kontinuiranog toka ulaza samples i y(t)
predstavlja zbir skupa ulaza samples, i vremenom, pomnožen njihovim
odgovarajućih koeficijenata. I ulazni i izlazni rezultati teku s lijeva na desno. C(0) do c(N-1) označava koeficijente. Registri sistoličkog kašnjenja su označeni sa S-1, dok 1 predstavlja jednostruko kašnjenje takta. Registri sistoličkog kašnjenja se dodaju na
ulaze i izlaze za cjevovode na način koji osigurava rezultate iz
operand množitelja i akumulirani sumi ostaju sinhronizirani. Ovaj element obrade
se replicira kako bi se formiralo kolo koje izračunava funkciju filtriranja. Ova funkcija je
izraženo u sljedećoj jednačini.

Korisnički vodič za Intel FPGA integer aritmetičke IP jezgre 40

Pošalji povratne informacije

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05

N predstavlja broj ciklusa podataka koji su ušli u akumulator, y(t) predstavlja izlaz u trenutku t, A(t) predstavlja ulaz u trenutku t, a B(i) su koeficijenti. T i i u jednadžbi odgovaraju određenom trenutku vremena, tako da se izračuna izlaz sample y(t) u trenutku t, grupa ulaza samples u N različitih tačaka u vremenu, ili je potrebno A(n), A(n-1), A(n-2), … A(n-N+1). Grupa od N ulaza samples se množe sa N koeficijenata i zbrajaju da bi se formirao konačni rezultat y.
Arhitektura sistoličkog registra dostupna je samo za modove sum-of-2 i sum-of-4. Za oba moda arhitekture sistoličkog registra, prvi signal lančanika mora biti vezan za 0.
Sljedeća slika prikazuje implementaciju registra sistoličkog kašnjenja od 2 množitelja.
Slika 16. Implementacija registra sistoličkog kašnjenja od 2 množitelja
chainin

a0

Mult0

+/-

b0

a1

Mult1

+/-

b1

rezultat
Zbir dvaju množitelja izražen je u sljedećoj jednačini.
Sljedeća slika prikazuje implementaciju registra sistoličkog kašnjenja od 4 množitelja.

Pošalji povratne informacije

Korisnički vodič za Intel FPGA integer aritmetičke IP jezgre 41

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05

Slika 17. Implementacija registra sistoličkog kašnjenja od 4 množitelja
chainin

a0

Mult0

+/-

b0

a1

Mult1

+/-

b1

a2

Mult2

+/-

b2

a3

Mult3

+/-

b3

rezultat
Zbir četiri množitelja izražen je u sljedećoj jednačini. Slika 18. Zbir 4 množitelja
U nastavku se navodi advantages implementacije sistoličkog registra: · Smanjuje upotrebu DSP resursa · Omogućava efikasno mapiranje u DSP bloku koristeći strukturu lančanog sabirača

Korisnički vodič za Intel FPGA integer aritmetičke IP jezgre 42

Pošalji povratne informacije

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05

8.1.3. Pre-load Constant
Konstanta predučitavanja kontrolira akumulatorski operand i dopunjuje povratnu informaciju akumulatora. Važeća vrijednost LOADCONST_VALUE kreće se od 0. Konstantna vrijednost je jednaka 64N, gdje je N = LOADCONST_VALUE. Kada je LOADCONST_VALUE postavljena na 2, konstantna vrijednost je jednaka 64. Ova funkcija se može koristiti kao pristrasno zaokruživanje.
Sljedeća slika prikazuje implementaciju konstante pred učitavanje.
Slika 19. Konstanta predopterećenja

Povratna informacija akumulatora

konstantan

a0

Mult0

+/-

b0

a1

Mult1

+/b1

rezultat

accum_sload sload_accum

Pogledajte sljedeća IP jezgra za druge implementacije množitelja: · ALTMULT_ACCUM · ALTMEMMULT · LPM_MULT
8.1.4. Double Accumulator
Funkcija dvostrukog akumulatora dodaje dodatni registar u putanju povratne informacije akumulatora. Registar dvostrukog akumulatora prati izlazni registar, koji uključuje sat, omogućavanje takta i aclr. Dodatni registar akumulatora vraća rezultat sa odgodom od jednog ciklusa. Ova funkcija vam omogućava da imate dva akumulatorska kanala sa istim brojem resursa.
Sljedeća slika prikazuje implementaciju dvostrukog akumulatora.

Pošalji povratne informacije

Korisnički vodič za Intel FPGA integer aritmetičke IP jezgre 43

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05

Slika 20. Dvostruki akumulator

Dvostruki registar akumulatora

Povratna informacija o akumulatoru

a0

Mult0

+/-

b0

a1

Mult1

+/b1

Izlazni rezultat Izlazni registar

8.2. Verilog HDL prototip
Možete pronaći Intel FPGA Multiply Adder ili ALTERA_MULT_ADD Verilog HDL prototip file (altera_mult_add_rtl.v) u direktorij librariesmegafunctions.
8.3. Deklaracija VHDL komponente
Deklaracija VHDL komponente nalazi se u altera_lnsim_components.vhd u librariesvhdl altera_lnsim direktorij.
8.4. VHDL LIBRARY_USE deklaracija
Deklaracija VHDL LIBRARY-USE nije potrebna ako koristite deklaraciju komponente VHDL.
BIBLIOTEKA altera_mf; KORISTI altera_mf.altera_mf_components.all;

8.5. Signali

Sljedeće tabele navode ulazne i izlazne signale Intel FPGA IP ili ALTERA_MULT_ADD IP jezgra Multiply Adder Intel.

Tabela 28. Multiplikator Intel FPGA IP ili ALTERA_MULT_ADD ulazni signali

Signal

Obavezno

Opis

dataa_0[]/dataa_1[]/

Da

dataa_2[]/dataa_3[]

Unos podataka u množitelj. Ulazni port [NUMBER_OF_MULTIPLIERS * WIDTH_A – 1 … 0] širok
nastavak…

Korisnički vodič za Intel FPGA integer aritmetičke IP jezgre 44

Pošalji povratne informacije

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05

Signal datab_0[]/datab_1[]/ datab_2[]/datab_3[] datac_0[] /datac_1[]/ datac_2[]/datac_3[] sat[1:0] aclr[1:0] sclr[1:0] ena [1:0] znak
signb
scanina[] accum_sload

Obavezno Da Ne
Ne Ne Ne Ne Ne
br
Ne Ne

Opis
Simulacijski model za ovaj IP podržava neodređenu ulaznu vrijednost (X) za ove signale. Kada date X vrijednost ovim signalima, vrijednost X se širi na izlazne signale.
Unos podataka u množitelj. Ulazni signal [NUMBER_OF_MULTIPLIERS * WIDTH_B – 1 … 0] širok Simulacijski model za ovaj IP podržava neodređenu ulaznu vrijednost (X) za ove signale. Kada ovim signalima date vrijednost X, vrijednost X se širi na izlaznim signalima.
Unos podataka u množitelj. Ulazni signal [NUMBER_OF_MULTIPLIERS * WIDTH_C – 1, … 0] širok Odaberite INPUT za Odaberi parametar načina rada preaddera da omogućite ove signale. Simulacijski model za ovaj IP podržava neodređenu ulaznu vrijednost (X) za ove signale. Kada ovim signalima date vrijednost X, vrijednost X se širi na izlaznim signalima.
Ulazni ulaz sata u odgovarajući registar. Ovaj signal može koristiti bilo koji registar u IP jezgru. Simulacijski model za ovaj IP podržava neodređenu ulaznu vrijednost (X) za ove signale. Kada ovim signalima date vrijednost X, vrijednost X se širi na izlaznim signalima.
Asinhroni čisti ulaz u odgovarajući registar. Simulacijski model za ovaj IP podržava neodređenu ulaznu vrijednost (X) za ove signale. Kada ovim signalima date vrijednost X, vrijednost X se širi na izlaznim signalima.
Sinhroni čisti ulaz u odgovarajući registar. Simulacijski model za ovaj IP podržava neodređenu ulaznu vrijednost X za ove signale. Kada ovim signalima date vrijednost X, vrijednost X se širi na izlaznim signalima
Omogućite ulaz signala u odgovarajući registar. Simulacijski model za ovaj IP podržava neodređenu ulaznu vrijednost (X) za ove signale. Kada ovim signalima date vrijednost X, vrijednost X se širi na izlaznim signalima.
Određuje numerički prikaz ulaza množitelja A. Ako je signal signala visok, množitelj tretira ulazni signal množitelja A kao predznačeni broj. Ako je signalni signal nizak, množitelj tretira ulazni signal množitelja A kao neoznačeni broj. Odaberite VARIABLE za Koji je format reprezentacije za množitelji A ulazni parametar da biste omogućili ovaj signal. Simulacijski model za ovaj IP podržava neodređenu ulaznu vrijednost (X) za ovaj signal. Kada date X vrijednost ovom ulazu, X vrijednost se širi na izlazne signale.
Određuje numerički prikaz ulaznog B signala množitelja. Ako je signal signb visok, množitelj tretira ulazni B signal množenja kao komplementarni broj dvojke s predznakom. Ako je signal signb nizak, množitelj tretira ulazni B signal množitelja kao neoznačeni broj. Simulacijski model za ovaj IP podržava neodređenu ulaznu vrijednost (X) za ovaj signal. Kada date X vrijednost ovom ulazu, X vrijednost se širi na izlazne signale.
Ulaz za lanac skeniranja A. Ulazni signal [WIDTH_A – 1, … 0] širok. Kada parametar INPUT_SOURCE_A ima vrijednost SCANA, potreban je signal scanina[].
Dinamički određuje da li je vrijednost akumulatora konstantna. Ako je signal accum_sload nizak, tada se izlaz množitelja učitava u akumulator. Nemojte koristiti accum_sload i sload_accum istovremeno.
nastavak…

Pošalji povratne informacije

Korisnički vodič za Intel FPGA integer aritmetičke IP jezgre 45

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05

Signal sload_accum
chainin[] addnsub1
addnsub3
coefsel0[] coefsel1[] coefsel2[] coefsel3[]

Obavezno br
Ne Ne
br
Ne Ne Ne Ne

Opis
Simulacijski model za ovaj IP podržava neodređenu ulaznu vrijednost (X) za ovaj signal. Kada date X vrijednost ovom ulazu, X vrijednost se širi na izlazne signale.
Dinamički određuje da li je vrijednost akumulatora konstantna. Ako je signal sload_accum visok, tada se izlaz množitelja učitava u akumulator. Nemojte koristiti accum_sload i sload_accum istovremeno. Simulacijski model za ovaj IP podržava neodređenu ulaznu vrijednost (X) za ovaj signal. Kada date X vrijednost ovom ulazu, X vrijednost se širi na izlazne signale.
Ulazna sabirnica rezultata sabirača iz prethodnih stage. Ulazni signal [WIDTH_CHAININ – 1, … 0] širok.
Izvršite sabiranje ili oduzimanje izlaza iz prvog para množitelja. Ulaz 1 u addnsub1 signal za dodavanje izlaza iz prvog para množitelja. Unesite 0 u addnsub1 signal da biste oduzeli izlaze iz prvog para množitelja. Simulacijski model za ovaj IP podržava neodređenu ulaznu vrijednost (X) za ovaj signal. Kada date X vrijednost ovom ulazu, X vrijednost se širi na izlazne signale.
Izvršite sabiranje ili oduzimanje izlaza iz prvog para množitelja. Ulaz 1 u addnsub3 signal za dodavanje izlaza iz drugog para množitelja. Unesite 0 u addnsub3 signal da biste oduzeli izlaze iz prvog para množitelja. Simulacijski model za ovaj IP podržava neodređenu ulaznu vrijednost (X) za ovaj signal. Kada date X vrijednost ovom ulazu, X vrijednost se širi na izlazne signale.
Koeficijent ulaznog signala [0:3] do prvog množitelja. Simulacijski model za ovaj IP podržava neodređenu ulaznu vrijednost (X) za ovaj signal. Kada date X vrijednost ovom ulazu, X vrijednost se širi na izlazne signale.
Koeficijent ulaznog signala [0:3] do drugog množitelja. Simulacijski model za ovaj IP podržava neodređenu ulaznu vrijednost (X) za ovaj signal. Kada date X vrijednost ovom ulazu, X vrijednost se širi na izlazne signale.
Koeficijent ulaznog signala [0:3] do trećeg množitelja. Simulacijski model za ovaj IP podržava neodređenu ulaznu vrijednost (X) za ovaj signal. Kada date X vrijednost ovom ulazu, X vrijednost se širi na izlazne signale.
Koeficijent ulaznog signala [0:3] do četvrtog množitelja. Simulacijski model za ovaj IP podržava neodređenu ulaznu vrijednost (X) za ovaj signal. Kada date X vrijednost ovom ulazu, X vrijednost se širi na izlazne signale.

Tabela 29. Intel FPGA IP izlazni signali za umnožavanje

Signal

Obavezno

Opis

rezultat []

Da

Izlazni signal množitelja. Izlazni signal [WIDTH_RESULT – 1 … 0] širok

Simulacijski model za ovaj IP podržava neodređenu izlaznu vrijednost (X). Kada date X vrijednost kao ulaz, X vrijednost se širi na ovaj signal.

scanuta []

br

Izlaz lanca skeniranja A. Izlazni signal [WIDTH_A – 1..0] širok.

Odaberite više od 2 za brojeve množitelja i odaberite Skeniraj ulaz lanca za Koji je ulaz A množitelja spojenog na parametar da biste omogućili ovaj signal.

Korisnički vodič za Intel FPGA integer aritmetičke IP jezgre 46

Pošalji povratne informacije

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05

8.6. Parametri

8.6.1. General Tab

Tabela 30. Općenito Tab

Parametar

IP generirani parametar

Vrijednost

Koliki je broj množitelja?

broj_m 1 – 4 umnožitelja

Koliko široke trebaju biti A width_a ulazne magistrale?

1 – 256

Koliko široke trebaju biti B width_b ulazne magistrale?

1 – 256

Kolika bi trebala biti izlazna sabirnica 'rezultata'?

width_result

1 – 256

Kreirajte pridruženo omogućavanje sata za svaki sat

gui_associate Uključeno d_clock_enabl Isključeno e

8.6.2. Dodatni režimi Tab

Tabela 31. Dodatni režimi Tab

Parametar

IP generirani parametar

Vrijednost

Konfiguracija izlaza

Registrirajte izlaz jedinice za sabiranje

gui_output_re On

gister

Isključeno

Koji je izvor za ulaz takta?

gui_output_re gister_clock

Sat0 Sat1 Sat2

Koji je izvor za asinhroni čisti unos?

gui_output_re gister_aclr

NIŠTA ACLR0 ACLR1

Koji je izvor za sinhroni čisti ulaz?

gui_output_re gister_sclr

NIŠTA SCLR0 SCLR1

Operacija zbrajanja

Koju operaciju treba izvesti na izlazima prvog para množitelja?

gui_multiplier 1_direction

DODAJ, SUB, VARIABLE

Zadana vrijednost 1
16

Opis
Broj množitelja koji se zbrajaju. Vrijednosti su od 1 do 4. Navedite širinu porta dataa[].

16

Odredite širinu porta datab[].

32

Odredite širinu porta rezultata[].

Isključeno

Odaberite ovu opciju da biste omogućili kreiranje sata

za svaki sat.

Zadana vrijednost

Opis

Isključen sat0
NONE NONE

Odaberite ovu opciju da omogućite izlazni registar modula za sabiranje.
Odaberite Clock0 , Clock1 ili Clock2 da omogućite i odredite izvor takta za izlazne registre. Morate odabrati Registriraj izlaz jedinice za sabiranje da biste omogućili ovaj parametar.
Određuje asinkroni čisti izvor za izlazni registar sabirača. Morate odabrati Registriraj izlaz jedinice za sabiranje da biste omogućili ovaj parametar.
Određuje sinhroni čisti izvor za izlazni registar sabirača. Morate odabrati Registriraj izlaz jedinice za sabiranje da biste omogućili ovaj parametar.

ADD

Odaberite operaciju sabiranja ili oduzimanja za izvođenje za izlaze između prvog i drugog množitelja.
· Odaberite DODAJ da izvršite operaciju sabiranja.
· Odaberite SUB da izvršite operaciju oduzimanja.
· Odaberite VARIABLE za korištenje addnsub1 porta za kontrolu dinamičkog sabiranja/oduzimanja.
nastavak…

Pošalji povratne informacije

Korisnički vodič za Intel FPGA integer aritmetičke IP jezgre 47

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05

Parametar

IP generirani parametar

Vrijednost

Registrirajte 'addnsub1' ulaz

gui_addnsub_ On multiplier_reg Isključen ister1

Koji je izvor za ulaz takta?

gui_addnsub_ multiplier_reg ister1_clock

Sat0 Sat1 Sat2

Koji je izvor za asinhroni čisti unos?

gui_addnsub_ multiplier_aclr 1

NIŠTA ACLR0 ACLR1

Koji je izvor za sinhroni čisti ulaz?

gui_addnsub_ multiplier_sclr 1

NIŠTA SCLR0 SCLR1

Koju operaciju treba izvesti na izlazima drugog para množitelja?

gui_multiplier 3_direction

DODAJ, SUB, VARIABLE

Registrirajte 'addnsub3' ulaz

gui_addnsub_ On multiplier_reg Isključen ister3

Koji je izvor za ulaz takta?

gui_addnsub_ multiplier_reg ister3_clock

Sat0 Sat1 Sat2

Zadana vrijednost
Off Sat0 NONE NONE DOD
Isključen sat0

Opis
Kada je odabrana vrijednost VARIABLE: · Pogoni addnsub1 signal na visoki za
operacija sabiranja. · Postavite addnsub1 signal na nisko za
operacija oduzimanja. Morate odabrati više od dva množitelja da biste omogućili ovaj parametar.
Odaberite ovu opciju da omogućite ulazni registar za addnsub1 port. Morate odabrati VARIABLE za Koju operaciju treba izvesti na izlazima prvog para množitelja da biste omogućili ovaj parametar.
Odaberite Clock0 , Clock1 ili Clock2 da odredite ulazni signal takta za addnsub1 registar. Morate odabrati Register 'addnsub1' ulaz da omogućite ovaj parametar.
Određuje asinhroni čisti izvor za addnsub1 registar. Morate odabrati Register 'addnsub1' ulaz da omogućite ovaj parametar.
Određuje sinhroni čisti izvor za addnsub1 registar. Morate odabrati Register 'addnsub1' ulaz da omogućite ovaj parametar.
Odaberite operaciju sabiranja ili oduzimanja koju ćete izvesti za izlaze između trećeg i četvrtog množitelja. · Odaberite DODAJ da izvršite sabiranje
operacija. · Odaberite SUB za oduzimanje
operacija. · Odaberite VARIABLE za korištenje addnsub1
port za kontrolu dinamičkog sabiranja/oduzimanja. Kada je odabrana vrijednost VARIABLE: · Postavite addnsub1 signal na visoku vrijednost za operaciju sabiranja. · Dovedite addnsub1 signal na nisko za operaciju oduzimanja. Morate odabrati vrijednost 4 za Koliki je broj množitelja? da omogućite ovaj parametar.
Odaberite ovu opciju da omogućite ulazni registar za addnsub3 signal. Morate odabrati VARIABLE za Koju operaciju treba izvesti na izlazima drugog para množitelja da biste omogućili ovaj parametar.
Odaberite Clock0 , Clock1 ili Clock2 da odredite ulazni signal sata za addnsub3 registar. Morate odabrati Register 'addnsub3' ulaz da omogućite ovaj parametar.
nastavak…

Korisnički vodič za Intel FPGA integer aritmetičke IP jezgre 48

Pošalji povratne informacije

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05

Parametar
Koji je izvor za asinhroni čisti unos?

IP generirani parametar

Vrijednost

gui_addnsub_ multiplier_aclr 3

NIŠTA ACLR0 ACLR1

Koji je izvor za sinhroni čisti ulaz?

gui_addnsub_ multiplier_sclr 3

NIŠTA SCLR0 SCLR1

Polaritet Omogući `use_subadd'

gui_use_subn Uključeno

add

Isključeno

8.6.3. Multipliers Tab

Tablica 32. Množitelji Tab

Parametar

IP generirani parametar

Vrijednost

Šta je

gui_represent

format reprezentacije ation_a

za ulaze množitelja A?

POTPISAN, NEPOTPISAN, PROMJELJIV

Registrirajte `signa' ulaz

gui_register_s On

igna

Isključeno

Koji je izvor za ulaz takta?

gui_register_s igna_clock

Sat0 Sat1 Sat2

Koji je izvor za asinhroni čisti unos?

gui_register_s igna_aclr

NIŠTA ACLR0 ACLR1

Koji je izvor za sinhroni čisti ulaz?

gui_register_s igna_sclr

NIŠTA SCLR0 SCLR1

Šta je

gui_represent

format reprezentacije ation_b

za ulaze množitelja B?

POTPISAN, NEPOTPISAN, PROMJELJIV

Registrirajte `signb' ulaz

gui_register_s On

ignb

Isključeno

Zadana vrijednost NONE
NONE

Opis
Određuje asinhroni čisti izvor za addnsub3 registar. Morate odabrati Register 'addnsub3' ulaz da omogućite ovaj parametar.
Određuje sinhroni čisti izvor za addnsub3 registar. Morate odabrati Register 'addnsub3' ulaz da omogućite ovaj parametar.

Isključeno

Odaberite ovu opciju da biste obrnuli funkciju

addnsub ulaznog porta.

Povežite addnsub na visoku vrijednost za operaciju oduzimanja.

Postavite addnsub na nisko za rad sa dodavanjem.

Zadana vrijednost

Opis

UNSIGNED Odredite format reprezentacije za ulaz množitelja A.

Isključeno

Odaberite ovu opciju da biste omogućili signal

registar.

Morate odabrati vrijednost VARIABLE za Koji je format reprezentacije za ulaze množitelja A? parametar za omogućavanje ove opcije.

Sat0

Odaberite Clock0 , Clock1 ili Clock2 da omogućite i odredite ulazni signal sata za registar signala.
Morate odabrati Registriraj `signa' ulaz da omogućite ovaj parametar.

NONE

Određuje asinhroni čisti izvor za registar znakova.
Morate odabrati Registriraj `signa' ulaz da omogućite ovaj parametar.

NONE

Određuje sinhroni čisti izvor za registar znakova.
Morate odabrati Registriraj `signa' ulaz da omogućite ovaj parametar.

UNSIGNED Odredite format reprezentacije za ulaz množitelja B.

Isključeno

Odaberite ovu opciju da biste omogućili signb

registar.

nastavak…

Pošalji povratne informacije

Korisnički vodič za Intel FPGA integer aritmetičke IP jezgre 49

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05

Parametar

IP generirani parametar

Vrijednost

Zadana vrijednost

Koji je izvor za ulaz takta?

gui_register_s ignb_clock

Sat0 Sat1 Sat2

Sat0

Koji je izvor za asinhroni čisti unos?

gui_register_s ignb_aclr

NIŠTA ACLR0 ACLR1

Koji je izvor za sinhroni čisti ulaz?

gui_register_s ignb_sclr

NIŠTA SCLR0 SCLR1

Konfiguracija ulaza
Registrirajte ulaz A množitelja
Koji je izvor za ulaz takta?

gui_input_reg On

ister_a

Isključeno

gui_input_reg ister_a_clock

Sat0 Sat1 Sat2

NONE NONE
Isključen sat0

Koji je izvor za asinhroni čisti unos?

gui_input_reg ister_a_aclr

NIŠTA ACLR0 ACLR1

Koji je izvor za sinhroni čisti ulaz?

gui_input_reg ister_a_sclr

NIŠTA SCLR0 SCLR1

Registrirajte ulaz B množitelja
Koji je izvor za ulaz takta?

gui_input_reg On

ister_b

Isključeno

gui_input_reg ister_b_clock

Sat0 Sat1 Sat2

NONE NONE Isključeno Sat0

Koji je izvor za asinhroni čisti unos?

gui_input_reg ister_b_aclr

NIŠTA ACLR0 ACLR1

NONE

Koji je izvor za sinhroni čisti ulaz?

gui_input_reg ister_b_sclr

NIŠTA SCLR0 SCLR1

NONE

Na koji je ulaz A množitelja spojen?

gui_multiplier Množilac ulaza Množilac

_a_input

Ulaz za skeniranje lanca

Opis
Morate odabrati vrijednost VARIABLE za Koji je format reprezentacije za ulaze množitelja B? parametar za omogućavanje ove opcije.
Odaberite Clock0 , Clock1 ili Clock2 da omogućite i odredite ulazni signal sata za signb registar. Morate odabrati Register `signb' ulaz da omogućite ovaj parametar.
Određuje asinhroni čisti izvor za signb registar. Morate odabrati Register `signb' ulaz da omogućite ovaj parametar.
Određuje sinhroni čisti izvor za signb registar. Morate odabrati Register `signb' ulaz da omogućite ovaj parametar.
Odaberite ovu opciju da omogućite ulazni registar za ulaznu sabirnicu podataka.
Odaberite Clock0 , Clock1 ili Clock2 da omogućite i odredite ulazni sat registra za ulaznu sabirnicu podataka. Morate odabrati Registriraj ulaz A množitelja da biste omogućili ovaj parametar.
Određuje asinkroni čisti izvor registra za ulaznu sabirnicu podataka. Morate odabrati Registriraj ulaz A množitelja da biste omogućili ovaj parametar.
Određuje sinhroni čisti izvor registra za ulaznu sabirnicu podataka. Morate odabrati Registriraj ulaz A množitelja da biste omogućili ovaj parametar.
Odaberite ovu opciju da biste omogućili ulazni registar za ulaznu sabirnicu podataka.
Odaberite Clock0 , Clock1 ili Clock2 da omogućite i odredite ulazni sat registra za ulaznu magistralu podataka. Morate odabrati Registriraj ulaz B množitelja da biste omogućili ovaj parametar.
Određuje asinhroni čisti izvor registra za ulaznu sabirnicu podataka. Morate odabrati Registriraj ulaz B množitelja da biste omogućili ovaj parametar.
Određuje sinhroni čisti izvor registra za ulaznu sabirnicu podataka. Morate odabrati Registriraj ulaz B množitelja da biste omogućili ovaj parametar.
Odaberite ulazni izvor za ulaz A množitelja.
nastavak…

Korisnički vodič za Intel FPGA integer aritmetičke IP jezgre 50

Pošalji povratne informacije

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05

Parametar

IP generirani parametar

Vrijednost

Skeniraj A konfiguraciju registra

Registrirajte izlaz lanca skeniranja

gui_scanouta On

_registar

Isključeno

Koji je izvor za ulaz takta?

gui_scanouta _register_cloc k

Sat0 Sat1 Sat2

Koji je izvor za asinhroni čisti unos?

gui_scanouta _register_aclr

NIŠTA ACLR0 ACLR1

Koji je izvor za sinhroni čisti ulaz?

gui_scanouta _register_sclr

NIŠTA SCLR0 SCLR1

8.6.4. Preadder Tab

Tabela 33. Tab

Parametar

IP generirani parametar

Vrijednost

Odaberite način rada za čitanje

preadder_mo de

SIMPLE, COEF, INPUT, SQUARE, CONSTANT

Zadana vrijednost

Opis
Odaberite Ulaz za množenje da biste koristili ulaznu sabirnicu podataka kao izvor množitelja. Odaberite Skeniraj lančani ulaz da biste koristili ulaznu sabirnicu skeniranja kao izvor za množenje i omogućili izlaznu sabirnicu skeniranja. Ovaj parametar je dostupan kada odaberete 2, 3 ili 4 za Koliki je broj množitelja? parametar.

Off Sat0 NONE NONE

Odaberite ovu opciju da omogućite izlazni registar za scanouta izlaznu sabirnicu.
Morate odabrati Skeniraj lanac ulaza za Na koji je ulaz A množitelja povezan? parametar za omogućavanje ove opcije.
Odaberite Clock0 , Clock1 ili Clock2 da omogućite i odredite ulazni sat registra za izlaznu sabirnicu scanouta.
Morate uključiti izlaz Registra parametra lanca skeniranja da biste omogućili ovu opciju.
Određuje asinkroni čisti izvor registra za izlaznu sabirnicu scanouta.
Morate uključiti izlaz Registra parametra lanca skeniranja da biste omogućili ovu opciju.
Određuje sinhroni čisti izvor registra za izlaznu sabirnicu scanouta.
Morate odabrati Registriraj izlaz parametra lanca skeniranja da biste omogućili ovu opciju.

Zadana vrijednost
JEDNOSTAVNO

Opis
Određuje način rada za modul preadder. JEDNOSTAVNO: Ovaj način rada zaobilazi čitač. Ovo je zadani način rada. COEF: Ovaj način rada koristi izlaz sabirnice za predadder i coefsel ulaznu sabirnicu kao ulaze za množitelj. INPUT: Ovaj način rada koristi izlaz predaddera i datac ulazne magistrale kao ulaze za množitelj. KVADRAT: Ovaj način rada koristi izlaz prebirača kao oba ulaza u množitelj.
nastavak…

Pošalji povratne informacije

Korisnički vodič za Intel FPGA integer aritmetičke IP jezgre 51

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05

Parametar

IP generirani parametar

Vrijednost

Odaberite smjer čitača

gui_preadder ADD,

_direction

SUB

Koliko široke treba da budu C width_c ulazne magistrale?

1 – 256

Konfiguracija registra unosa podataka C

Registrirajte unos podataka

gui_datac_inp On

ut_register

Isključeno

Koji je izvor za ulaz takta?

gui_datac_inp ut_register_cl ock

Sat0 Sat1 Sat2

Koji je izvor za asinhroni čisti unos?

gui_datac_inp ut_register_a clr

NIŠTA ACLR0 ACLR1

Koji je izvor za sinhroni čisti ulaz?

gui_datac_inp ut_register_sc lr

NIŠTA SCLR0 SCLR1

Koeficijenti
Kolika bi trebala biti širina koefa?

width_coef

1 – 27

Konfiguracija registra koef

Registrirajte unos koef

gui_coef_regi On

ster

Isključeno

Koji je izvor za ulaz takta?

gui_coef_regi ster_clock

Sat0 Sat1 Sat2

Zadana vrijednost
ADD
16

Opis
CONSTANT: Ovaj način rada koristi ulaznu sabirnicu podataka sa premošćivačem i koef. ulaznom sabirnicom kao ulaze za množitelj.
Određuje rad čitača. Da biste omogućili ovaj parametar, odaberite sljedeće za Select preadder mod: · COEF · INPUT · SQUARE ili · CONSTANT
Određuje broj bitova za C ulaznu magistralu. Morate odabrati INPUT za Select preadder mod da omogućite ovaj parametar.

Na Satu 0 NONE NONE

Odaberite ovu opciju da omogućite ulazni registar za ulaznu sabirnicu podataka. Morate postaviti INPUT na Odaberi parametar načina rada za čitanje da biste omogućili ovu opciju.
Odaberite Clock0 , Clock1 ili Clock2 da odredite ulazni signal sata za ulazni registar podataka. Morate odabrati Register datac input da biste omogućili ovaj parametar.
Određuje asinhroni čisti izvor za ulazni registar podataka. Morate odabrati Register datac input da biste omogućili ovaj parametar.
Određuje sinhroni čisti izvor za ulazni registar podataka. Morate odabrati Register datac input da biste omogućili ovaj parametar.

18

Određuje broj bitova za

coefsel ulazna magistrala.

Morate odabrati COEF ili CONSTANT za način rada za čitanje da biste omogućili ovaj parametar.

Na Satu0

Odaberite ovu opciju da biste omogućili ulazni registar za coefsel ulaznu sabirnicu. Morate odabrati COEF ili CONSTANT za način rada za čitanje da biste omogućili ovaj parametar.
Odaberite Clock0 , Clock1 ili Clock2 da odredite ulazni taktni signal za ulazni registar koef. Morate odabrati Register the coefsel input da biste omogućili ovaj parametar.
nastavak…

Korisnički vodič za Intel FPGA integer aritmetičke IP jezgre 52

Pošalji povratne informacije

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05

Parametar
Koji je izvor za asinhroni čisti unos?

IP generirani parametar

Vrijednost

gui_coef_regi ster_aclr

NIŠTA ACLR0 ACLR1

Koji je izvor za sinhroni čisti ulaz

gui_coef_regi ster_sclr

NIŠTA SCLR0 SCLR1

Koeficijent_0 Konfiguracija

coef0_0 do coef0_7

0x00000 0xFFFFFFF

Koeficijent_1 Konfiguracija

coef1_0 do coef1_7

0x00000 0xFFFFFFF

Koeficijent_2 Konfiguracija

coef2_0 do coef2_7

0x00000 0xFFFFFFF

Koeficijent_3 Konfiguracija

coef3_0 do coef3_7

0x00000 0xFFFFFFF

8.6.5. Akumulator Tab

Tabela 34. Akumulator Tab

Parametar

IP generirani parametar

Vrijednost

Omogućiti akumulator?

akumulator

DA NE

Koji je tip rada akumulatora?

accum_directi ADD,

on

SUB

Zadana vrijednost NONE
NONE
0x0000000 0
0x0000000 0
0x0000000 0
0x0000000 0

Opis
Određuje asinhroni čisti izvor za koefsel ulazni registar. Morate odabrati Register the coefsel input da biste omogućili ovaj parametar.
Određuje sinhroni čisti izvor za koefsel ulazni registar. Morate odabrati Register the coefsel input da biste omogućili ovaj parametar.
Određuje vrijednosti koeficijenta za ovaj prvi množitelj. Broj bitova mora biti isti kao što je navedeno u Koliko široka treba biti širina koefa? parametar. Morate odabrati COEF ili CONSTANT za način rada za čitanje da biste omogućili ovaj parametar.
Određuje vrijednosti koeficijenta za ovaj drugi množitelj. Broj bitova mora biti isti kao što je navedeno u Koliko široka treba biti širina koefa? parametar. Morate odabrati COEF ili CONSTANT za način rada za čitanje da biste omogućili ovaj parametar.
Određuje vrijednosti koeficijenta za ovaj treći množitelj. Broj bitova mora biti isti kao što je navedeno u Koliko široka treba biti širina koefa? parametar. Morate odabrati COEF ili CONSTANT za način rada za čitanje da biste omogućili ovaj parametar.
Određuje vrijednosti koeficijenta za ovaj četvrti množitelj. Broj bitova mora biti isti kao što je navedeno u Koliko široka treba biti širina koefa? parametar. Morate odabrati COEF ili CONSTANT za način rada za čitanje da biste omogućili ovaj parametar.

Zadana vrijednost NO
ADD

Opis
Odaberite DA da aktivirate akumulator. Morate odabrati Registriraj izlaz jedinice sabirača kada koristite funkciju akumulatora.
Određuje rad akumulatora: · ADD za operaciju sabiranja · SUB za operaciju oduzimanja. Morate odabrati DA za Omogući akumulator? parametar za omogućavanje ove opcije.
nastavak…

Pošalji povratne informacije

Korisnički vodič za Intel FPGA integer aritmetičke IP jezgre 53

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05

Parametar
Konstanta predopterećenja Omogući konstantu predopterećenja

IP generirani parametar

Vrijednost

gui_ena_prelo On

ad_const

Isključeno

Na koji je ulaz povezan port za akumuliranje?

gui_accumula ACCUM_SLOAD, te_port_select SLOAD_ACCUM

Odaberite vrijednost za predopterećenje loadconst_val 0 – 64

konstantan

ue

Koji je izvor za ulaz takta?

gui_accum_sl oad_register_ sat

Sat0 Sat1 Sat2

Koji je izvor za asinhroni čisti unos?

gui_accum_sl oad_register_ aclr

NIŠTA ACLR0 ACLR1

Koji je izvor za sinhroni čisti ulaz?

gui_accum_sl oad_register_ sclr

NIŠTA SCLR0 SCLR1

Omogući dvostruki akumulator

gui_double_a On

ccum

Isključeno

Zadana vrijednost

Opis

Isključeno

Omogućite accum_sload ili

sload_accum signale i ulaz registra

za dinamički odabir ulaza za

akumulator.

Kada je accum_sload niska ili sload_accum, izlaz množitelja se dovodi u akumulator.

Kada je accum_sload visoka ili sload_accum, korisnički specificirana konstanta predopterećenja se dovodi u akumulator.

Morate odabrati DA za Omogući akumulator? parametar za omogućavanje ove opcije.

ACCUM_SL OAD

Određuje ponašanje accum_sload/sload_accum signala.
ACCUM_SLOAD: Pokretanje accum_sload niske za učitavanje izlaza množenja u akumulator.
SLOAD_ACCUM: Pokreni sload_accum visoko za učitavanje izlaza množenja u akumulator.
Morate odabrati opciju Omogući konstantu predučitavanja da biste omogućili ovaj parametar.

64

Odredite unaprijed postavljenu konstantnu vrijednost.

Ova vrijednost može biti 2N gdje je N unaprijed postavljena konstantna vrijednost.

Kada je N=64, to predstavlja konstantnu nulu.

Morate odabrati opciju Omogući konstantu predučitavanja da biste omogućili ovaj parametar.

Sat0

Odaberite Clock0 , Clock1 ili Clock2 da odredite ulazni signal takta za accum_sload/sload_accum registar.
Morate odabrati opciju Omogući konstantu predučitavanja da biste omogućili ovaj parametar.

NONE

Određuje asinhroni čisti izvor za accum_sload/sload_accum registar.
Morate odabrati opciju Omogući konstantu predučitavanja da biste omogućili ovaj parametar.

NONE

Određuje sinhroni čisti izvor za accum_sload/sload_accum registar.
Morate odabrati opciju Omogući konstantu predučitavanja da biste omogućili ovaj parametar.

Isključeno

Omogućava registar dvostrukog akumulatora.

Korisnički vodič za Intel FPGA integer aritmetičke IP jezgre 54

Pošalji povratne informacije

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05

8.6.6. Systolic/Chainout Tab

Tablica 35. Tab

Parametar Omogući lančani sabirač

IP generirani parametar

Vrijednost

chainout_add DA,

er

NO

Koji je tip operacije lančanog sabirača?

chainout_add ADD,

er_direction

SUB

Omogućiti `negate' unos za sabirač lančanika?

Port_negate

PORT_USED, PORT_UNUSED

Registrirati `negate' unos? negate_regist er

NEREGISTROVAN, SAT0, SAT1, SAT2, SAT3

Koji je izvor za asinhroni čisti unos?

negate_aclr

NIŠTA ACLR0 ACLR1

Koji je izvor za sinhroni čisti ulaz?

negate_sclr

NIŠTA SCLR0 SCLR1

Systolic Delay
Omogući registre sistoličkog kašnjenja

gui_systolic_d On

elay

Isključeno

Koji je izvor za ulaz takta?

gui_systolic_d CLOCK0,

elay_clock

SAT 1,

Zadana vrijednost
NO

Opis
Odaberite DA da omogućite modul za sabiranje lančanika.

ADD

Određuje operaciju lančanog sabirača.
Za operaciju oduzimanja, SIGNED mora biti odabran za Koji je format reprezentacije za ulaze množitelja A? i Koji je format reprezentacije za ulaze množitelja B? na kartici Multipliers.

PORT_UN USED

Odaberite PORT_USED da omogućite negirajući ulazni signal.
Ovaj parametar je nevažeći kada je lančani sabirač onemogućen.

UNREGIST ERED

Za omogućavanje ulaznog registra za negirani ulazni signal i specificira ulazni takt signal za negirajući registar.
Odaberite UNREGISTERED ako nije potreban registar za unos nije potreban
Ovaj parametar je nevažeći kada odaberete:
· NE za Enable chainout adder ili
· PORT_UNUSED za Omogućavanje 'negate' ulaza za sabirač lančanika? parametar ili

NONE

Određuje asinhroni čisti izvor za negativni registar.
Ovaj parametar je nevažeći kada odaberete:
· NE za Enable chainout adder ili
· PORT_UNUSED za Omogućavanje 'negate' ulaza za sabirač lančanika? parametar ili

NONE

Određuje sinhroni čisti izvor za negativni registar.
Ovaj parametar je nevažeći kada odaberete:
· NE za Enable chainout adder ili
· PORT_UNUSED za Omogućavanje 'negate' ulaza za sabirač lančanika? parametar ili

Off CLOCK0

Odaberite ovu opciju da biste omogućili sistolni način rada. Ovaj parametar je dostupan kada odaberete 2 ili 4 za Koliki je broj množitelja? parametar. Morate omogućiti izlaz registra jedinice za sabiranje da biste koristili registre sistoličkog kašnjenja.
Određuje ulazni taktni signal za registar sistoličkog kašnjenja.
nastavak…

Pošalji povratne informacije

Korisnički vodič za Intel FPGA integer aritmetičke IP jezgre 55

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05

Parametar

IP generirani parametar

Vrijednost

SAT 2,

Koji je izvor za asinhroni čisti unos?

gui_systolic_d elay_aclr

NIŠTA ACLR0 ACLR1

Koji je izvor za sinhroni čisti ulaz?

gui_systolic_d elay_sclr

NIŠTA SCLR0 SCLR1

Zadana vrijednost
NONE
NONE

Opis
Morate odabrati Omogući registre sistoličkog kašnjenja da biste omogućili ovu opciju.
Određuje asinhroni čisti izvor za registar sistoličkog kašnjenja. Morate odabrati Omogući registre sistoličkog kašnjenja da biste omogućili ovu opciju.
Određuje sinhroni čisti izvor za registar sistoličkog kašnjenja. Morate odabrati Omogući registre sistoličkog kašnjenja da biste omogućili ovu opciju.

8.6.7. Pipelining Tab

Tabela 36. Cjevovod Tab

Konfiguracija cjevovoda parametara

IP generirani parametar

Vrijednost

Želite li dodati registar cjevovoda na ulaz?

gui_pipelining Ne, Da

Zadana vrijednost
br

Molimo navedite

latencija

broj sata latencije

ciklusa

Bilo koja vrijednost veća od 0

Koji je izvor za ulaz takta?

gui_input_late ncy_clock

SAT0, SAT1, SAT2

Koji je izvor za asinhroni čisti unos?

gui_input_late ncy_aclr

NIŠTA ACLR0 ACLR1

Koji je izvor za sinhroni čisti ulaz?

gui_input_late ncy_sclr

NIŠTA SCLR0 SCLR1

CLOCK0 NONE NONE

Opis
Odaberite Da da biste omogućili dodatni nivo registra cjevovoda za ulazne signale. Morate navesti vrijednost veću od 0 za parametar Molimo navedite broj ciklusa latencije takta.
Određuje željeno kašnjenje u taktovima. Jedan nivo registra cjevovoda = 1 latencija u ciklusu takta. Morate odabrati DA za Da li želite dodati registar cjevovoda na ulaz? da omogućite ovu opciju.
Odaberite Clock0 , Clock1 ili Clock2 da omogućite i odredite ulazni satni signal registra cjevovoda. Morate odabrati DA za Da li želite dodati registar cjevovoda na ulaz? da omogućite ovu opciju.
Određuje asinkroni čisti izvor registra za dodatni registar cjevovoda. Morate odabrati DA za Da li želite dodati registar cjevovoda na ulaz? da biste omogućili ovu opciju.
Određuje sinkroni čisti izvor registra za dodatni registar cjevovoda. Morate odabrati DA za Da li želite dodati registar cjevovoda na ulaz? da biste omogućili ovu opciju.

Korisnički vodič za Intel FPGA integer aritmetičke IP jezgre 56

Pošalji povratne informacije

683490 | 2020.10.05. Pošalji povratnu informaciju

9. ALTMEMMULT (Množitelj konstantnog koeficijenta zasnovan na memoriji) IP jezgro

pažnja:

Intel je uklonio podršku za ovu IP adresu u verziji 20.3 Intel Quartus Prime Pro Edition. Ako IP jezgro u vašem dizajnu cilja na uređaje u Intel Quartus Prime Pro izdanju, možete zamijeniti IP sa LPM_MULT Intel FPGA IP ili ponovo generisati IP i kompajlirati svoj dizajn pomoću softvera Intel Quartus Prime Standard Edition.

ALTMEMMULT IP jezgro se koristi za kreiranje množitelja zasnovanih na memoriji koristeći onchip memorijske blokove koji se nalaze u Intel FPGA (sa M512, M4K, M9K i MLAB memorijskim blokovima). Ovo IP jezgro je korisno ako nemate dovoljno resursa za implementaciju množitelja u logičke elemente (LE) ili namjenske resurse množenja.
ALTMEMMULT IP jezgro je sinhrona funkcija za koju je potreban sat. ALTMEMMULT IP jezgro implementira množitelj sa najmanjom mogućom propusnošću i kašnjenjem za dati skup parametara i specifikacija.
Sljedeća slika prikazuje portove za ALTMEMMULT IP jezgro.

Slika 21. ALTMEMMULT portovi

ALTMEMMULT

data_in[] sload_data coeff_in[]

result[] result_valid load_done

sload_coeff

sclr sat
inst

Povezane informacije Funkcije na stranici 71

9.1. Karakteristike
ALTMEMMULT IP jezgro nudi sljedeće karakteristike: · Stvara samo memorijske množitelje koristeći memorijske blokove na čipu koji se nalaze u
Intel FPGA · Podržava širinu podataka od 1 bita · Podržava format predstavljanja potpisanih i nepotpisanih podataka · Podržava cevovod sa fiksnim izlaznim kašnjenjem

Intel Corporation. Sva prava zadržana. Intel, Intel logo i druge Intel oznake su zaštitni znaci Intel Corporation ili njenih podružnica. Intel garantuje performanse svojih FPGA i poluprovodničkih proizvoda u skladu sa trenutnim specifikacijama u skladu sa Intelovom standardnom garancijom, ali zadržava pravo da izvrši izmene bilo kojeg proizvoda i usluge u bilo koje vreme bez prethodne najave. Intel ne preuzima nikakvu odgovornost ili odgovornost koja proizilazi iz primene ili korišćenja bilo koje informacije, proizvoda ili usluge opisane ovde, osim ako je Intel izričito pristao u pisanoj formi. Intelovim kupcima se savjetuje da nabave najnoviju verziju specifikacija uređaja prije nego što se oslone na bilo koju objavljenu informaciju i prije naručivanja proizvoda ili usluga. *Druga imena i robne marke mogu se smatrati vlasništvom drugih.

ISO 9001:2015 Registrovan

9. ALTMEMMULT (Množitelj konstantnog koeficijenta zasnovan na memoriji) IP Core 683490 | 2020.10.05
· Pohranjuje višestruke konstante u memoriju sa slučajnim pristupom (RAM)
· Pruža opciju za odabir tipa RAM bloka
· Podržava opcione sinhrone čiste i ulazne portove za kontrolu opterećenja
9.2. Verilog HDL prototip
Sljedeći Verilog HDL prototip se nalazi u Verilog Designu File (.v) altera_mf.v u eda synthesis directory.
modul altmemmult #( parametar coeff_representation = “POTPISAN”, parametar koeficijent 0 = “NEKORIŠĆEN”, parametar data_representation = “POTPISAN”, parametar namijenjen_device_family = “neiskorišten”, parametar max_clock_cycles_per_result = 1, parametar broj_koeficijenata_koeficijenata_koeficijenata parametara = AUb ram 1_, total_latency = 1, parametar width_c = 1, parametar width_d = 1, parametar width_r = 1, parametar width_s = 1, parametar lpm_type = "altmemmult", parametar lpm_hint = "unused") (takt ulazne žice, ulazna žica [width_c-1: 0]coeff_in, ulazna žica [width_d-1:0] data_in, izlazna žica load_done, izlazna žica [width_r-1:0] rezultat, izlazna žica result_valid, ulazna žica sclr, ulazna žica [width_s-1:0] sel, ulaz žica sload_coeff, ulazna žica sload_data)/* sinteza syn_black_box=1 */; endmodule
9.3. Deklaracija VHDL komponente
Deklaracija VHDL komponente nalazi se u VHDL dizajnu File (.vhd) altera_mf_components.vhd u librariesvhdlaltera_mf direktorij.
komponenta altmemmult generički ( coeff_representation:string := “POTPISAN”; coefficient0:string := “NEKORIŠTEN”; data_representation:string := “POTPISAN”; predviđena_familija_uređaja:string := “nekorišten”; max_clock_cycles_per_result:1. := 1; ram_block_type:string := "AUTO"; total_latency:prirodno; width_c:prirodno; width_d:prirodno; width_r:prirodno; width_s:prirodno := 1; lpm_hint:string := "NEKORIŠTEN"; lpm_type:string := “altmemmult”); port(clock:u std_logic; coeff_in:u std_logic_vector(width_c-1 do 0) := (ostali => '0'); data_in:u std_logic_vector(width_d-1 do 0);

Korisnički vodič za Intel FPGA integer aritmetičke IP jezgre 58

Pošalji povratne informacije

9. ALTMEMMULT (Množitelj konstantnog koeficijenta zasnovan na memoriji) IP Core 683490 | 2020.10.05

load_done:out std_logic; result:out std_logic_vector(width_r-1 do 0); result_valid:out std_logic; sclr:in std_logic := '0'; sel:in std_logic_vector(width_s-1 do 0) := (ostali => '0'); sload_coeff:u std_logic := '0'; sload_data:in std_logic := '0'); krajnja komponenta;

9.4. Portovi

Sljedeće tablice navode ulazne i izlazne portove za ALTMEMMULT IP jezgro.

Tablica 37. ALTMEMMULT ulazni portovi

Port Name

Obavezno

Opis

sat

Da

Ulaz sata u množitelj.

coeff_in[]

br

Koeficijent ulaznog porta za množitelj. Veličina ulaznog porta ovisi o vrijednosti parametra WIDTH_C.

data_in[]

Da

Port za unos podataka u multiplikator. Veličina ulaznog porta ovisi o vrijednosti parametra WIDTH_D.

sclr

br

Sinhroni čisti unos. Ako se ne koristi, zadana vrijednost je aktivna visoka.

sel[]

br

Odabir fiksnog koeficijenta. Veličina ulaznog porta ovisi o WIDTH_S

vrijednost parametra.

sload_coeff

br

Ulazni port za sinhroni koeficijent opterećenja. Zamjenjuje trenutnu odabranu vrijednost koeficijenta vrijednošću specificiranom u unosu coeff_in.

sload_data

br

Sinhroni ulazni port za učitavanje podataka. Signal koji specificira novu operaciju množenja i poništava sve postojeće operacije množenja. Ako parametar MAX_CLOCK_CYCLES_PER_RESULT ima vrijednost 1, ulazni port sload_data se zanemaruje.

Tablica 38. ALTMEMMULT izlazni portovi

Port Name

Obavezno

Opis

rezultat[]

Da

Izlazni port množitelja. Veličina ulaznog porta ovisi o vrijednosti parametra WIDTH_R.

result_valid

Da

Označava kada je izlaz valjan rezultat potpunog množenja. Ako parametar MAX_CLOCK_CYCLES_PER_RESULT ima vrijednost 1, izlazni port result_valid se ne koristi.

load_done

br

Označava kada je novi koeficijent završio učitavanje. Signal load_done potvrđuje kada je novi koeficijent završio učitavanje. Osim ako je signal load_done visok, nijedna druga vrijednost koeficijenta ne može se učitati u memoriju.

9.5. Parametri

Sljedeća tabela navodi parametre za ALTMEMMULT IP jezgro.

Tabela 39.
WIDTH_D WIDTH_C

ALTMEMMULT Parameters
Naziv parametra

Vrsta Obavezno

Opis

Integer Yes

Određuje širinu porta data_in[].

Integer Yes

Određuje širinu porta coeff_in[]. nastavak…

Pošalji povratne informacije

Korisnički vodič za Intel FPGA integer aritmetičke IP jezgre 59

9. ALTMEMMULT (Množitelj konstantnog koeficijenta zasnovan na memoriji) IP Core 683490 | 2020.10.05

Naziv parametra WIDTH_R WIDTH

Dokumenti / Resursi

intel FPGA Integer Aritmetic IP Cores [pdf] Korisnički priručnik
FPGA Integer Aritmetičke IP jezgre, Integer Aritmetičke IP jezgre, Aritmetičke IP jezgre, IP jezgre

Reference

Ostavite komentar

Vaša email adresa neće biti objavljena. Obavezna polja su označena *