FPGA Integer Arithmetic IP Nukleoak

Intel FPGA Integer Arithmetic IP Nukleoen erabiltzailearen gida
Intel® Quartus® Prime Design Suite-rako eguneratua: 20.3

Lineako bertsioa Bidali iritzia

UG-01063

ID: 683490 Bertsioa: 2020.10.05

Edukiak
Edukiak
1. Intel FPGA Integer Arithmetic IP Nukleoak…………………………………………………………………………….. 5
2. LPM_COUNTER (Kontagailua) IP Nukleoa……………………………………………………………………………….. 7 2.1. Ezaugarriak…………………………………………………………………………………………………7 2.2. Verilog HDL prototipoa…………………………………………………………………………………………….. 8 2.3. VHDL Osagaien Adierazpena……………………………………………………………………………….8 2.4. VHDL LIBRARY_USE Adierazpena………………………………………………………………… 9 2.5. Portuak………………………………………………………………………………………………………………..9 2.6. Parametroak………………………………………………………………………………………………… 10
3. LPM_DIVIDE (zatitzailea) Intel FPGA IP Core………………………………………………………….. 12 3.1. Ezaugarriak………………………………………………………………………………………………. 12 3.2. Verilog HDL prototipoa……………………………………………………………………………… 12 3.3. VHDL Osagaien Adierazpena…………………………………………………………………….. 13 3.4. VHDL LIBRARY_USE Adierazpena…………………………………………………………………. 13 3.5. Portuak……………………………………………………………………………………………………………… 13 3.6. Parametroak………………………………………………………………………………………………… 14
4. LPM_MULT (biderkatzailea) IP Nukleoa………………………………………………………………………………………. 16 4.1. Ezaugarriak………………………………………………………………………………………………. 16 4.2. Verilog HDL prototipoa……………………………………………………………………………… 17 4.3. VHDL Osagaien Adierazpena……………………………………………………………………………….. 17 4.4. VHDL LIBRARY_USE Adierazpena…………………………………………………………………. 17 4.5. Seinaleak………………………………………………………………………………………………………… 18 4.6. Stratix V, Arria V, Cyclone V eta Intel Cyclone 10 LP gailuen parametroak…………… 18 4.6.1. Fitxa Orokorra…………………………………………………………………………………18 4.6.2. Orokorra 2 fitxa……………………………………………………………………………… 19 4.6.3. Pipelinen fitxa……………………………………………………………………………… 19 4.7. Intel Stratix 10, Intel Arria 10 eta Intel Cyclone 10 GX gailuen parametroak……….. 20 4.7.1. Fitxa Orokorra…………………………………………………………………………………20 4.7.2. Orokorra 2 fitxa……………………………………………………………………………… 20 4.7.3. Kanalizazioa ………………………………………………………………………………………………21
5. LPM_ADD_SUB (Bagatzailea/Kenkaria)……………………………………………………………………………… 22 5.1. Ezaugarriak………………………………………………………………………………………………. 22 5.2. Verilog HDL prototipoa……………………………………………………………………………… 23 5.3. VHDL Osagaien Adierazpena……………………………………………………………………………….. 23 5.4. VHDL LIBRARY_USE Adierazpena…………………………………………………………………. 23 5.5. Portuak………………………………………………………………………………………………… 23 5.6. Parametroak…………………………………………………………………………………………… 24
6. LPM_COMPARE (Konparatzailea)……………………………………………………………………………………… 26 6.1. Ezaugarriak………………………………………………………………………………………………. 26 6.2. Verilog HDL prototipoa……………………………………………………………………………… 27 6.3. VHDL Osagaien Adierazpena…………………………………………………………………….. 27 6.4. VHDL LIBRARY_USE Adierazpena…………………………………………………………………. 27 6.5. Portuak…………………………………………………………………………………………………………… 27 6.6. Parametroak…………………………………………………………………………………………… 28

Intel FPGA Integer Arithmetic IP Cores Erabiltzailearen Gida 2

Bidali Iritzia

Edukiak

7. ALTEC (Erroreak zuzentzeko kodea: kodetzailea/deskodetzailea) IP Nukleoa………………………………………………… 30
7.1. ALTEC kodetzailearen Ezaugarriak…………………………………………………………………………………..31 7.2. Verilog HDL prototipoa (ALTECC_ENCODER)……………………………………………………. 32 7.3. Verilog HDL prototipoa (ALTECC_DECODER)……………………………………………………. 32 7.4. VHDL Osagaien Adierazpena (ALTECC_ENCODER)………………………………………………33 7.5. VHDL Osagaien Adierazpena (ALTECC_DECODER)………………………………………………33 7.6. VHDL LIBRARY_USE Adierazpena…………………………………………………………………. 33 7.7. Kodetzailearen atakak………………………………………………………………………………………………… 33 7.8. Deskodetzaileen atakak……………………………………………………………………………………………………34 7.9. Kodegailuaren parametroak……………………………………………………………………………… 34 7.10. Deskodetzailearen parametroak ……………………………………………………………………………… 35
8. Intel FPGA Multiply Adder IP Core ……………………………………………………………………. 36
8.1. Ezaugarriak………………………………………………………………………………………………. 37 8.1.1. Aurre-bagatzailea………………………………………………………………………………….. 38 8.1.2. Atzerapen Sistolikoaren Erregistroa………………………………………………………………….. 40 8.1.3. Aurre-karga-konstantea……………………………………………………………………………… 43 8.1.4. Metagailu bikoitza……………………………………………………………………………… 43
8.2. Verilog HDL prototipoa……………………………………………………………………………… 44 8.3. VHDL Osagaien Adierazpena……………………………………………………………………………….. 44 8.4. VHDL LIBRARY_USE Adierazpena…………………………………………………………………. 44 8.5. Seinaleak………………………………………………………………………………………………………… 44 8.6. Parametroak……………………………………………………………………………………………… 47
8.6.1. Fitxa Orokorra……………………………………………………………………………………47 8.6.2. Modu gehigarriak fitxa………………………………………………………………………………….. 47 8.6.3. Biderkatzaileak fitxa…………………………………………………………………………………….. 49 8.6.4. Iragarkiaren fitxa………………………………………………………………………………. 51 8.6.5. Metagailuen fitxa………………………………………………………………………………….. 53 8.6.6. Sistolikoa/Chainout fitxa………………………………………………………………………………. 55 8.6.7. Pipelinen fitxa……………………………………………………………………………… 56
9. ALTMEMMULT (Memorian oinarritutako koefiziente konstanteen biderkatzailea) IP Core………… 57
9.1. Ezaugarriak………………………………………………………………………………………………. 57 9.2. Verilog HDL prototipoa……………………………………………………………………………… 58 9.3. VHDL Osagaien Adierazpena…………………………………………………………………….. 58 9.4. Portuak………………………………………………………………………………………………… 59 9.5. Parametroak……………………………………………………………………………………………… 59
10. ALTMULT_ACCUM (Aniztu-Metatzea) IP Nukleoa………………………………………………… 61
10.1. Ezaugarriak……………………………………………………………………………………………….. 62 10.2. Verilog HDL prototipoa……………………………………………………………………………………..62 10.3. VHDL Osagaien Adierazpena………………………………………………………………… 63 10.4. VHDL LIBRARY_USE Adierazpena…………………………………………………………………63 10.5. Portuak………………………………………………………………………………………………………………. 63 10.6. Parametroak…………………………………………………………………………………………………. 64
11. ALTMULT_ADD (Bikoiztu-gehitzailea) IP Nukleoa…………………………………………………………..69
11.1. Ezaugarriak……………………………………………………………………………………………….. 71 11.2. Verilog HDL prototipoa……………………………………………………………………………………..72 11.3. VHDL Osagaien Adierazpena………………………………………………………………… 72 11.4. VHDL LIBRARY_USE Adierazpena…………………………………………………………………72

Bidali Iritzia

Intel FPGA Integer Arithmetic IP Cores Erabiltzailearen Gida 3

Edukiak
11.5. Portuak………………………………………………………………………………………………………………. 72 11.6. Parametroak…………………………………………………………………………………………………. 73
12. ALTMULT_COMPLEX (biderkatzaile konplexua) IP nukleoa……………………………………………… 86 12.1. Biderketa konplexua……………………………………………………………………………………. 86 12.2. Adierazpen Kanonikoa……………………………………………………………………………… 87 12.3. Ordezkaritza konbentzionala………………………………………………………………………. 87 12.4. Ezaugarriak…………………………………………………………………………………………….. 88 12.5. Verilog HDL prototipoa……………………………………………………………………………………………..88 12.6. VHDL Osagaien Adierazpena………………………………………………………………… 89 12.7. VHDL LIBRARY_USE Adierazpena………………………………………………………………… 89 12.8. Seinaleak…………………………………………………………………………………………………………. 89 12.9. Parametroak…………………………………………………………………………………………………. 90
13. ALTSQRT (Erro Karratu Osoa) IP Nukleoa………………………………………………………………92 13.1. Ezaugarriak……………………………………………………………………………………………….. 92 13.2. Verilog HDL prototipoa……………………………………………………………………………………………..92 13.3. VHDL Osagaien Adierazpena………………………………………………………………… 93 13.4. VHDL LIBRARY_USE Adierazpena…………………………………………………………………93 13.5. Portuak………………………………………………………………………………………………………………. 93 13.6. Parametroak…………………………………………………………………………………………………. 94
14. PARALLEL_ADD (Gehitzaile paraleloa) IP Nukleoa………………………………………………………….. 95 14.1. Ezaugarria………………………………………………………………………………………………………….95 14.2. Verilog HDL prototipoa……………………………………………………………………………………………..95 14.3. VHDL Osagaien Adierazpena………………………………………………………………… 96 14.4. VHDL LIBRARY_USE Adierazpena…………………………………………………………………96 14.5. Portuak………………………………………………………………………………………………………………. 96 14.6. Parametroak…………………………………………………………………………………………………. 97
15. Integer Arithmetic IP Cores Erabiltzailearen Gida Dokumentuen Artxiboak………………………………… 98
16. Intel FPGA Integer Arithmetic IP Nukleoen Dokumentuen Berrikuspen Historiaren Erabiltzailearen Gida... 99

Intel FPGA Integer Arithmetic IP Cores Erabiltzailearen Gida 4

Bidali Iritzia

683490 | 2020.10.05/XNUMX/XNUMX Bidali iritzia

1. Intel FPGA Integer Arithmetic IP Nukleoak

Intel® FPGA zenbaki osoko IP nukleoak erabil ditzakezu zure diseinuan eragiketa matematikoak egiteko.

Funtzio hauek sintesi logiko eta gailuaren ezarpen eraginkorragoak eskaintzen dituzte zure funtzioak kodetzea baino. IP nukleoak pertsonaliza ditzakezu zure diseinu eskakizunetara egokitzeko.

Intel aritmetiko osoko IP nukleoak bi kategoria hauetan banatzen dira: · Parameterized modules of library (LPM) IP nukleoak · Intel-eko espezifikoak (ALT) IP nukleoak

Ondorengo taulan zenbaki osoko IP nukleoak zerrendatzen dira.

1. taula.

IP Nukleoen zerrenda

IP Nukleoak

LPM IP nukleoak

LPM_COUNTER

LPM_DIVIDE

LPM_MULT

LPM_ADD_SUB
LPM_COMPARE
Intel-en espezifikoak (ALT) IP nukleoak ALTEC

Funtzioa amaitu daview Counter Divider biderkatzailea
Batutzailea edo kentzailea Konparatzailea
ECC kodetzailea/deskodetzailea

Onartutako gailua
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 jarraitu...

Intel Corporation. Eskubide guztiak erreserbatuak. Intel, Intel logotipoa eta beste Intel marka Intel Corporation edo bere filialen marka komertzialak dira. Intel-ek bere FPGA eta erdieroaleen produktuen errendimendua bermatzen du uneko zehaztapenekin, Intel-en berme estandarraren arabera, baina edozein unetan edozein produktu eta zerbitzutan aldaketak egiteko eskubidea gordetzen du jakinarazi gabe. Intel-ek ez du bere gain hartzen hemen deskribatutako edozein informazio, produktu edo zerbitzuren aplikazio edo erabileratik eratorritako erantzukizunik edo erantzukizunik, Intel-ek idatziz berariaz hitzartutakoa izan ezik. Intel-eko bezeroei gomendatzen zaie gailuaren zehaztapenen azken bertsioa eskuratzea argitaratutako edozein informaziotan oinarritu aurretik eta produktu edo zerbitzuen eskaerak egin aurretik. *Beste izen eta markak beste batzuen jabetza direla erreklamatu daitezke.

ISO 9001:2015 Erregistratua

1. Intel FPGA Integer Arithmetic IP Nukleoak 683490 | 2020.10.05/XNUMX/XNUMX

IP nukleoak Intel FPGA Multiply Adder edo ALTERA_MULT_ADD ALTMEMMULT
ALTMULT_ACCUM ALTMULT_ADD ALTMULT_COMPLEX
ALTSQRT
PARALLEL_GEHITU

Funtzioa amaitu daview Biderkatzailea-Baitzailea
Memorian oinarritutako koefiziente konstanteen biderkatzailea
Biderkatzailea-Metagailua Biderkatzailea-Bagatzailea
Biderkatzaile konplexua
Osoko karratu-erroa
Gehigarri paraleloa

Onartutako gailua
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, 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

Lotutako informazioa
· Intel FPGA eta gailu programagarrien bertsio-oharrak
· Intel FPGA IP nukleoei buruzko sarrera Intel FPGA IP nukleoei buruzko informazio gehiago eskaintzen du.
· Floating-Point IP Nukleoen Erabiltzailearen Gida Intel FPGA Floating-Point IP Nukleoei buruzko informazio gehiago eskaintzen du.
· Intel FPGA IP nukleoei buruzko sarrera Intel FPGA IP nukleo guztiei buruzko informazio orokorra eskaintzen du, IP nukleoak parametrizatzea, sortzea, berritzea eta simulatzea barne.
· Bertsioz ​​independenteak diren IP eta Qsys simulazio-scriptak sortzea Sortu simulazio-scriptak software edo IP bertsioen eguneratzeetarako eskuzko eguneraketak behar ez dituztenak.
· Proiektuak Kudeatzeko Jardunbide Egokien Gidalerroak, zure proiektuaren eta IParen kudeaketa eraginkorra eta eramangarritasuna lortzeko files.
· Integer Arithmetic IP Cores Erabiltzailearen gida Dokumentuen artxiboak 98. orrialdean Integer Arithmetic IP nukleoen aurreko bertsioetarako erabiltzailearen giden zerrenda eskaintzen du.

Intel FPGA Integer Arithmetic IP Cores Erabiltzailearen Gida 6

Bidali Iritzia

683490 | 2020.10.05/XNUMX/XNUMX Bidali iritzia

2. LPM_COUNTER (Kontagailua) IP Nukleoa

1. irudia.

LPM_COUNTER IP nukleoa 256 biteko zabalera duten irteerak dituzten goranzko, beherako kontagailuak eta gora edo beherako kontagailuak sortzen dituen kontagailu bitar bat da.

Hurrengo irudiak LPM_COUNTER IP nukleoaren atakak erakusten ditu.

LPM_COUNTER atakak

LPM_COUNTER

ssclr sload sset datuak[]

q[]

gora behera

cout

aclr kargatu aset

clk_en cnt_en cin
inst

2.1. Ezaugarriak
LPM_COUNTER IP nukleoak ezaugarri hauek eskaintzen ditu: · Kontagailuak gora, behera eta gora/behera sortzen ditu · Kontadore mota hauek sortzen ditu:
— Binario arrunta: zerotik hasten den kontagailua handitzen da edo 255etik hasita gutxitzen da
— Modulua: kontagailuak erabiltzaileak zehaztutako moduluaren balioarekin handitzen edo txikitzen du eta errepikatzen du
· Garbitu, kargatu eta ezarri sarrerako ataka sinkronoak aukeran onartzen ditu · Garbitu, kargatu eta ezarri sarrerako ataka asinkrono aukeran onartzen ditu · Zenbaketa eta erlojua gaitzeko aukerako sarrerak onartzen ditu

Intel Corporation. Eskubide guztiak erreserbatuak. Intel, Intel logotipoa eta beste Intel marka Intel Corporation edo bere filialen marka komertzialak dira. Intel-ek bere FPGA eta erdieroaleen produktuen errendimendua bermatzen du uneko zehaztapenekin, Intel-en berme estandarraren arabera, baina edozein unetan edozein produktu eta zerbitzutan aldaketak egiteko eskubidea gordetzen du jakinarazi gabe. Intel-ek ez du bere gain hartzen hemen deskribatutako edozein informazio, produktu edo zerbitzuren aplikazio edo erabileratik eratorritako erantzukizunik edo erantzukizunik, Intel-ek idatziz berariaz hitzartutakoa izan ezik. Intel-eko bezeroei gomendatzen zaie gailuaren zehaztapenen azken bertsioa eskuratzea argitaratutako edozein informaziotan oinarritu aurretik eta produktu edo zerbitzuen eskaerak egin aurretik. *Beste izen eta markak beste batzuen jabetza direla erreklamatu daitezke.

ISO 9001:2015 Erregistratua

2. LPM_COUNTER (Kontagailua) IP Nukleoa
683490 | 2020.10.05
2.2. Verilog HDL prototipoa
Hurrengo Verilog HDL prototipoa Verilog Design-en dago File (.v) lpm.v-en edasynthesis direktorioa.
lpm_counter modulua ( q, data, clock, cin, cout, clk_en, cnt_en, updown, aset, aclr, aload, sset, sclr, sload, eq ); lpm_type parametroa = "lpm_counter"; lpm_width parametroa = 1; lpm_modulus parametroa = 0; lpm_direction parametroa = "ERABILTZEN EZ"; lpm_avalue parametroa = "ERABILTZEN EZ"; lpm_svalue parametroa = "ERABILTZEN EZ"; lpm_pvalue parametroa = "ERABILTZEN EZ"; lpm_port_updown parametroa = "PORT_CONNECTIVITY"; lpm_hint parametroa = "ERABILTZEN EZ"; irteera [lpm_width-1:0] q; irteera cout; irteera [15:0] eq; sarrera cin; sarrera [lpm_width-1:0] datuak; sarrerako erlojua, clk_en, cnt_en, gora behera; input aset, aclr, aload; sarrera sset, sclr, sload; amaierako modulua
2.3. VHDL osagaien adierazpena
VHDL osagaien adierazpena VHDL diseinuan dago File (.vhd) LPM_PACK.vhd atalean librariesvhdllpm direktorioa.
osagaia LPM_COUNTER generikoa ( LPM_WIDTH : naturala; LPM_MODULUS : naturala := 0; LPM_DIRECTION : katea := “UNUSED”; LPM_AVALUE : katea := “UNUSED”; LPM_SVALUE : string := “UNUSED”; LPM_PORT_UPDOWN: “string:” string :_CONNECTIVITY ; LPM_PVALUE : katea := “UNUSED”; LPM_TYPE : string := L_COUNTER; LPM_HINT : katea := “UNUSED”); ataka (DATUAK: std_logic_vector-en (LPM_WIDTH-1 behera 0):= (BESTEAK =>
'0'); CLOCK: std_logic-en; CLK_EN : in std_logic := '1'; CNT_EN : std_logic := '1'; IGOERA : std_logic := '1'; SLOAD : std_logic := '0'; SSET : std_logic := '0'; SCLR : std_logic := '0'; ALOAD : std_logic := '0'; ASET : std_logic := '0'; ACLR : std_logic := '0'; CIN : std_logic := '1'; COUT : out std_logic := '0'; Q: out std_logic_vector (LPM_WIDTH-1 behera 0); EQ: out std_logic_vector (15 behera 0));
amaierako osagaia;

Intel FPGA Integer Arithmetic IP Cores Erabiltzailearen Gida 8

Bidali Iritzia

2. LPM_COUNTER (Kontagailua) IP Core 683490 | 2020.10.05/XNUMX/XNUMX

2.4. VHDL LIBRARY_USE Adierazpena
VHDL LIBRARY-USE adierazpena ez da beharrezkoa VHDL osagaien adierazpena erabiltzen baduzu.
LIBURUTEGIA lpm; ERABILI lpm.lpm_components.all;

2.5. Portuak

Ondorengo tauletan LPM_COUNTER IP nukleoaren sarrera eta irteera atakak zerrendatzen dira.

2. taula.

LPM_COUNTER Sarrera atakak

Portuaren izena

Beharrezkoa

Deskribapena

datuak[]

Ez

Kontagailuan datuen sarrera paraleloa. Sarrerako atakaren tamaina LPM_WIDTH parametroaren balioaren araberakoa da.

erlojua

Bai

Ertz positiboak abiarazitako erlojuaren sarrera.

clk_eu

Ez

Erlojua gaitu sarrera jarduera sinkrono guztiak gaitzeko. Baztertzen bada, balio lehenetsia 1 da.

cnt_eu

Ez

Count enable input zenbaketa desgaitzeko baxua baieztatzen denean sload, sset edo sclr eragin gabe. Baztertzen bada, balio lehenetsia 1 da.

gora behera

Ez

Zenbaketaren norabidea kontrolatzen du. Altua (1) baieztatzen denean, zenbaketaren norabidea gora egiten da, eta baxua (0) baieztatzen denean, zenbaketaren norabidea behera egiten da. LPM_DIRECTION parametroa erabiltzen bada, goranzko ataka ezin da konektatu. LPM_DIRECTION erabiltzen ez bada, goranzko ataka hautazkoa da. Baztertzen bada, balio lehenetsia gora da (1).

cin

Ez

Eraman ezazu eskaera txikiko bitra. Gora-kontagailuetarako, cin sarreraren portaera da

cnt_en sarreraren portaeraren berdina. Baztertzen bada, balio lehenetsia 1 da

(VCC).

aklr

Ez

Sarrera garbi asinkronoa. Aset eta aclr biak erabiltzen eta baieztatzen badira, aclr-k aset gainidazten du. Baztertzen bada, balio lehenetsia 0 da (desgaituta).

aset

Ez

Multzo asinkronoaren sarrera. q[] irteerak 1 guztiak bezala zehazten ditu, edo LPM_AVALUE parametroak zehaztutako balioarekin. Aset eta aclr atakak erabiltzen eta baieztatzen badira, aclr atakaren balioak aset atakaren balioa gainidazten du. Baztertzen bada, balio lehenetsia 0 da, desgaituta.

kargatu

Ez

Karga-sarrera asinkronoa, kontagailua modu asinkronoan kargatzen duena datu-sarrerako balioarekin. Aload ataka erabiltzen denean, datu[] ataka konektatuta egon behar da. Baztertzen bada, balio lehenetsia 0 da, desgaituta.

sclr

Ez

Sarrera garbi sinkronikoa, hurrengo erloju aktiboaren ertzean kontagailua garbitzen duena. Sset eta sclr atakak erabiltzen eta baieztatzen badira, sclr atakaren balioak sset atakaren balioa gainidazten du. Baztertzen bada, balio lehenetsia 0 da, desgaituta.

multzoa

Ez

Kontagailua hurrengo erloju aktiboaren ertzean ezartzen duen sarrera sinkronikoa. q irteeren balioa 1 guztiak bezala zehazten du, edo LPM_SVALUE parametroak zehaztutako balioarekin. Sset eta sclr atakak erabiltzen eta baieztatzen badira,
sclr atakaren balioak sset atakaren balioa gainidazten du. Baztertzen bada, balio lehenetsia 0 da (desgaituta).

kargatu

Ez

Karga-sarrera sinkronikoa, kontadorea datuekin kargatzen duena hurrengo erloju aktiboaren ertzean. Sload ataka erabiltzen denean, data[] ataka konektatuta egon behar da. Baztertzen bada, balio lehenetsia 0 da (desgaituta).

Bidali Iritzia

Intel FPGA Integer Arithmetic IP Cores Erabiltzailearen Gida 9

2. LPM_COUNTER (Kontagailua) IP Core 683490 | 2020.10.05/XNUMX/XNUMX

3. taula.

LPM_COUNTER Irteerako atakak

Portuaren izena

Beharrezkoa

Deskribapena

q[]

Ez

Kontadoretik datuak ateratzea. Irteerako atakaren tamainaren araberakoa da

LPM_WIDTH parametroaren balioa. Edo q[] edo gutxienez eq[15..0] ataka bat

konektatuta egon behar da.

eq[15..0]

Ez

Kontagailua deskodetzeko irteera. eq[15..0] ataka ez dago eskuragarri parametroen editorean, parametroak AHDL soilik onartzen duelako.
q[] ataka edo eq[] ataka konektatuta egon behar da. Gehienez c eq atakak erabil daitezke (0 <= c <= 15). 16 zenbaki txikieneko balioak bakarrik deskodetzen dira. Zenbaketa-balioa c denean, eqc irteera altua adierazten da (1). Adibidezample, zenbaketa 0 denean, eq0 = 1, zenbaketa 1 denean, eq1 = 1, eta zenbaketa 15 denean, eq 15 = 1. 16 edo gehiagoko zenbaketa-balioetarako deskodetutako irteerak kanpoko deskodeketa eskatzen du. eq[15..0] irteerak q[] irteerarekin asinkronoak dira.

cout

Ez

Kontagailuaren MSB bitaren exekuzio ataka. Beste kontagailu batera konektatzeko erabil daiteke kontagailu handiago bat sortzeko.

2.6. parametroak

Hurrengo taulan LPM_COUNTER IP nukleoaren parametroak zerrendatzen dira.

4. taula.

LPM_COUNTER parametroak

Parametroaren izena

Mota

LPM_WIDTH

Zenbaki osoa

LPM_DIRECTION

Katea

LPM_MODULUS LPM_AVALUE

Zenbaki osoa
Zenbaki osoa/ Katea

LPM_SVALUE LPM_HINT

Zenbaki osoa/ Katea
Katea

LPM_TYPE

Katea

Beharrezkoa Bai Ez Ez Ez
Ez Ez
Ez

Deskribapena
Datu[] eta q[] ataken zabalerak zehazten ditu, erabiltzen badira.
Balioak GORA, BEHERA eta ERABILTZEN EZ dira. LPM_DIRECTION parametroa erabiltzen bada, goranzko ataka ezin da konektatu. Gora beherako ataka konektatuta ez dagoenean, LPM_DIRECTION parametroaren balio lehenetsia GORA da.
Gehienezko kopurua, gehi bat. Kontagailuaren zikloko egoera bakarrak. Karga-balioa LPM_MODULUS parametroa baino handiagoa bada, kontagailuaren portaera ez da zehazten.
Aktiboa altua baieztatzen denean kargatzen den balio konstantea. Zehaztutako balioa baino handiagoa edo berdina bada , kontagailuaren portaera definitu gabeko (X) maila logiko bat da, non LPM_MODULUS da, badago, edo 2 ^ LPM_WIDTH. Intelek gomendatzen du balio hori zehaztea zenbaki hamartar gisa AHDL diseinuetarako.
Erlojuaren atakaren goranzko ertzean kargatzen den balio konstantea sset ataka altua aldarrikatzen denean. Intelek gomendatzen du balio hori zehaztea zenbaki hamartar gisa AHDL diseinuetarako.
Modulu parametrizatuen liburutegia (LPM) funtzioa VHDL Diseinu batean instantziatzean File (.vhd), LPM_HINT parametroa erabili behar duzu Intel-en berariazko parametro bat zehazteko. Adibidezample: LPM_HINT = "CHAIN_SIZE = 8, ONE_INPUT_IS_CONSTANT = YES"
Balio lehenetsia ERABILTZEN da.
Parameterized modules (LPM) entitatearen izena VHDL diseinuan identifikatzen du files.
jarraitu…

Intel FPGA Integer Arithmetic IP Cores Erabiltzailearen Gida 10

Bidali Iritzia

2. LPM_COUNTER (Kontagailua) IP Core 683490 | 2020.10.05/XNUMX/XNUMX

Parametroaren izena INTENDED_DEVICE_FAMILY CARRY_CNT_EN
LABWIDE_SCLR
LPM_PORT_UPDOWN

Idatzi String String
Katea
Katea

Beharrezkoa Ez Ez
Ez
Ez

Deskribapena
Parametro hau modelizazio eta portaera simulaziorako erabiltzen da. Parametro hau modelizazio eta portaera simulaziorako erabiltzen da. Parametro-editoreak parametro honen balioa kalkulatzen du.
Intel-en parametro espezifikoa. LPM_HINT parametroa erabili behar duzu VHDL diseinuan CARRY_CNT_EN parametroa zehazteko files. Balioak SMART, ON, OFF eta ERABILTZEN dira. LPM_COUNTER funtzioak cnt_en seinalea garraio-katean zehar hedatzeko gaitzen du. Zenbait kasutan, CARRY_CNT_EN parametroaren ezarpenak abiaduran eragin txikia izan dezake, beraz, desaktibatu nahi duzu. Balio lehenetsia SMART da, tamainaren eta abiaduraren arteko truke-off onena eskaintzen duena.
Intel-en parametro espezifikoa. LPM_HINT parametroa erabili behar duzu VHDL diseinuan LABWIDE_SCLR parametroa zehazteko files. Balioak ON, OFF edo ERABILTZEN EZ dira. Balio lehenetsia ON da. Zaharkitutako gailu familietan aurkitzen den LABwide sclr funtzioaren erabilera desgaitzeko aukera ematen du. Aukera hau desaktibatuz gero, partzialki betetako LABak guztiz erabiltzeko aukerak areagotzen dira, eta, beraz, dentsitate logiko handiagoa ahalbidetu dezake SCLR LAB oso bati aplikatzen ez zaionean. Parametro hau atzerako bateragarritasunerako eskuragarri dago, eta Intel-ek gomendatzen dizu parametro hau ez erabiltzea.
Goran beherako sarrerako atakaren erabilera zehazten du. Baztertzen bada, balio lehenetsia PORT_CONNECTIVITY da. Portuaren balioa PORT_USED gisa ezartzen denean, ataka erabiltzen da. Portuaren balioa PORT_UNUSED gisa ezartzen denean, ataka erabili gabeko gisa hartzen da. Portuaren balioa PORT_CONNECTIVITY gisa ezartzen denean, ataka-konektibitatea egiaztatuz zehazten da portuaren erabilera.

Bidali Iritzia

Intel FPGA Integer Arithmetic IP Cores Erabiltzailearen Gida 11

683490 | 2020.10.05/XNUMX/XNUMX Bidali iritzia

3. LPM_DIVIDE (zatitzailea) Intel FPGA IP Core

2. irudia.

LPM_DIVIDE Intel FPGA IP nukleoak zatitzaile bat inplementatzen du zenbakitzailea sarrerako balioa izendatzailearen sarrerako balio batekin zatitzeko zatidura eta hondarra sortzeko.

Hurrengo irudian LPM_DIVIDE IP nukleoaren atakak erakusten dira.

LPM_DIVIDE Portuak

LPM_DIVIDE

zenbaki[] denom[] erloju

zatidura[] geratzen[]

clken aclr

inst

3.1. Ezaugarriak
LPM_DIVIDE IP nukleoak ezaugarri hauek eskaintzen ditu: · Zenbakitzailearen sarrera-balioa izendatzaile-sarrera batekin banatzen duen zatitzailea sortzen du.
balioa zatidura eta hondarra sortzeko. · 1 biteko datu-zabalera onartzen du. · Sinatutako eta sinatu gabeko datuen irudikapen formatua onartzen du zenbatzailearentzat
eta izendatzailearen balioak. · Eremuaren edo abiaduraren optimizazioa onartzen du. · Hondarren irteera positiboa zehazteko aukera eskaintzen du. · Irteera konfiguragarriaren latentzia kanalizatzea onartzen du. · Garbiketa asinkronoa eta erlojua gaitzeko aukerako atakak onartzen ditu.

3.2. Verilog HDL prototipoa
Hurrengo Verilog HDL prototipoa Verilog Design-en dago File (.v) lpm.v-en edasynthesis direktorioa.
modulua lpm_divide ( zatidura, geratzen, zenbakia, izendapena, erlojua, clken, aclr); lpm_type parametroa = "lpm_divide"; lpm_widthn parametroa = 1; lpm_widthd parametroa = 1; lpm_nrepresentation parametroa = "SINATU GABE"; lpm_drepresentation parametroa = “SINATU GABE”; lpm_remainderpositive parametroa = “EGIA”; lpm_pipeline parametroa = 0;

Intel Corporation. Eskubide guztiak erreserbatuak. Intel, Intel logotipoa eta beste Intel marka Intel Corporation edo bere filialen marka komertzialak dira. Intel-ek bere FPGA eta erdieroaleen produktuen errendimendua bermatzen du uneko zehaztapenekin, Intel-en berme estandarraren arabera, baina edozein unetan edozein produktu eta zerbitzutan aldaketak egiteko eskubidea gordetzen du jakinarazi gabe. Intel-ek ez du bere gain hartzen hemen deskribatutako edozein informazio, produktu edo zerbitzuren aplikazio edo erabileratik eratorritako erantzukizunik edo erantzukizunik, Intel-ek idatziz berariaz hitzartutakoa izan ezik. Intel-eko bezeroei gomendatzen zaie gailuaren zehaztapenen azken bertsioa eskuratzea argitaratutako edozein informaziotan oinarritu aurretik eta produktu edo zerbitzuen eskaerak egin aurretik. *Beste izen eta markak beste batzuen jabetza direla erreklamatu daitezke.

ISO 9001:2015 Erregistratua

3. LPM_DIVIDE (zatitzailea) Intel FPGA IP Core 683490 | 2020.10.05/XNUMX/XNUMX

lpm_hint parametroa = "ERABILTZEN EZ"; sarrerako erlojua; sarrera clken; sarrera aklr; sarrera [lpm_widthn-1:0] zenbakia; sarrera [lpm_widthd-1:0] denom; irteera [lpm_widthn-1:0] zatidura; irteera [lpm_widthd-1:0] geratzen da; amaierako modulua

3.3. VHDL osagaien adierazpena
VHDL osagaien adierazpena VHDL diseinuan dago File (.vhd) LPM_PACK.vhd atalean librariesvhdllpm direktorioa.
osagaia LPM_DIVIDE generikoa (LPM_WIDTHN : naturala; LPM_WIDTHD : naturala;
LPM_NREPRESENTATION : string := “SINATU GABE”; LPM_DREPRESENTATION : katea := “SINATU GABE”; LPM_PIPELINE : naturala := 0; LPM_TYPE : katea := L_DIVIDE; LPM_HINT : katea := “ERABILTZEN EZ”); ataka (ZENBAKIA: std_logic_vector-n (LPM_WIDTHN-1 behera 0); DENOM: std_logic_vector (LPM_WIDTHD-1 behera 0); ACLR: std_logic := '0'; CLOCK : std_logic := '0'; CLKEN : std_logic-en := '1'; KOTIENTUA: out std_logic_vector (LPM_WIDTHN-1 behera 0); REMAIN: out std_logic_vector (LPM_WIDTHD-1 behera 0)); amaierako osagaia;

3.4. VHDL LIBRARY_USE Adierazpena
VHDL LIBRARY-USE adierazpena ez da beharrezkoa VHDL osagaien adierazpena erabiltzen baduzu.
LIBURUTEGIA lpm; ERABILI lpm.lpm_components.all;

3.5. Portuak

Ondoko tauletan LPM_DIVIDE IP nukleoaren sarrera eta irteera atakak zerrendatzen dira.

5. taula.

LPM_DIVIDE Sarrerako atakak

Portuaren izena

Beharrezkoa

zenbakia[]

Bai

izendapena[]

Bai

Deskribapena
Zenbakitzailearen datuen sarrera. Sarrerako atakaren tamaina LPM_WIDTHN parametroaren balioaren araberakoa da.
Izendatzailea datuen sarrera. Sarrerako atakaren tamaina LPM_WIDTHD parametroaren balioaren araberakoa da.
jarraitu…

Bidali Iritzia

Intel FPGA Integer Arithmetic IP Cores Erabiltzailearen Gida 13

3. LPM_DIVIDE (zatitzailea) Intel FPGA IP Core 683490 | 2020.10.05/XNUMX/XNUMX

Portuaren izena erlojua clken
aklr

Beharrezkoa Ez Ez
Ez

Deskribapena
Erlojuaren sarrera kanalizatutako erabilerarako. 0 ez den LPM_PIPELINE balioetarako (lehenetsia), erloju-ataka gaituta egon behar da.
Erlojuak kanalizatutako erabilera gaitu. Clken ataka altua aldarrikatzen denean, zatiketa eragiketa gertatzen da. Seinalea baxua denean, ez da eragiketarik gertatzen. Baztertzen bada, balio lehenetsia 1 da.
Garbi-portu asinkronoa edozein unetan erabiltzen da kanalizazioa "0" guztietara berrezartzeko erlojuaren sarrerarekin modu asinkronoan.

6. taula.

LPM_DIVIDE Irteerako atakak

Portuaren izena

Beharrezkoa

Deskribapena

zatidura[]

Bai

Datuen irteera. Irteerako atakaren tamaina LPM_WIDTHN-ren araberakoa da

parametroaren balioa.

geratu[]

Bai

Datuen irteera. Irteerako atakaren tamaina LPM_WIDTHD-ren araberakoa da

parametroaren balioa.

3.6. parametroak

Hurrengo taulan LPM_DIVIDE Intel FPGA IP nukleoaren parametroak zerrendatzen dira.

Parametroaren izena

Mota

Beharrezkoa

Deskribapena

LPM_WIDTHN

Zenbaki osoa

Bai

Zenbakiaren [] eta zabalerak zehazten ditu

zatidura[] atakak. Balioak 1etik 64ra bitartekoak dira.

LPM_WIDTHD

Zenbaki osoa

Bai

Denom[] eta zabalerak zehazten ditu

geratzen [] portuak. Balioak 1etik 64ra bitartekoak dira.

LPM_NREPRESENTATION LPM_DREPRESENTATION

Katea Katea

Ez

Zenbatzailearen sarreraren zeinu-irudikapena.

Balioak SIGNED eta SIGNED dira. Hau denean

parametroa SIGNED gisa ezartzen da, zatitzailea

zenbaki[] sarrera bi sinatu gisa interpretatzen du

osagarri.

Ez

Izendatzailearen sarreraren zeinu-irudikapena.

Balioak SIGNED eta SIGNED dira. Hau denean

parametroa SIGNED gisa ezartzen da, zatitzailea

denom[] sarrera bi sinatu gisa interpretatzen du

osagarri.

LPM_TYPE

Katea

Ez

Parametrizatuen liburutegia identifikatzen du

moduluak (LPM) entitatearen izena VHDL diseinuan

files (.vhd).

LPM_HINT

Katea

Ez

Liburutegi bat instantziatzean

modulu parametrizatuak (LPM) funtzionatzen du a

VHDL Diseinua File (.vhd), erabili behar duzu

LPM_HINT parametroa Intel- bat zehazteko

parametro zehatza. Adibidezample: LPM_HINT

= "CHAIN_SIZE = 8,

ONE_INPUT_IS_CONSTANT = YES” The

balio lehenetsia ERABILTZEN DA.

LPM_REMAINDERPOSITIVE

Katea

Ez

Intel-en parametro espezifikoa. Erabili behar duzu

LPM_HINT parametroa zehazteko

LPM_REMAINDERPOSITIVE parametroan

VHDL diseinua files. Balioak EGIA edo GEZURRA dira.

Parametro hau TRUE gisa ezartzen bada, orduan

gainerako[] atakaren balioa handiagoa izan behar da

jarraitu…

Intel FPGA Integer Arithmetic IP Cores Erabiltzailearen Gida 14

Bidali Iritzia

3. LPM_DIVIDE (zatitzailea) Intel FPGA IP Core 683490 | 2020.10.05/XNUMX/XNUMX

Parametroaren izena

Mota

MAXIMIZA_Abiadura

Zenbaki osoa

LPM_PIPELINE

Zenbaki osoa

INTENDED_DEVICE_FAMILY SKIP_BITS

Katea Zenbaki osoa

Beharrezko zenbakia
Ez Ez Ez

Deskribapena
zero baino edo berdina. Parametro hau TRUE gisa ezartzen bada, geratzen [] atakaren balioa zero da, edo balioa zenbaki atakaren balioaren zeinu bera da, positiboa edo negatiboa. Eremua murrizteko eta abiadura hobetzeko, Intelek parametro hau TRUE gisa ezartzea gomendatzen du gainerakoak positiboa izan behar duen edo gainerakoak garrantzirik ez duen eragiketetan.
Intel-en parametro espezifikoa. LPM_HINT parametroa erabili behar duzu VHDL diseinuan MAXIMIZE_SPEED parametroa zehazteko files. Balioak [0..9] dira. Erabiltzen bada, Intel Quartus Prime softwarea LPM_DIVIDE funtzioaren instantzia zehatz bat optimizatzen saiatzen da bideragarritasunerako baino abiadurarako, eta Optimizazio Teknikaren aukera logikoaren ezarpena gainidazten du. MAXIMIZE_SPEED erabiltzen ez bada, Optimizazio Teknika aukeraren balioa erabiliko da horren ordez. MAXIMIZE_SPEED-ren balioa 6 edo handiagoa bada, Konpilatzaileak LPM_DIVIDE IP nukleoa optimizatzen du abiadura handiagoa lortzeko, garraio-kateak erabiliz; balioa 5 edo txikiagoa bada, konpilatzaileak diseinua inplementatzen du garraio-katerik gabe.
[] eta geratzen[] irteerarekin erlazionatutako latentzia-ziklo kopurua zehazten du. Zero (0) balio batek latentziarik ez dagoela adierazten du, eta funtzio konbinazio hutsa instantziatzen dela. Baztertzen bada, balio lehenetsia 0 da (tubiderik gabekoa). Ezin duzu zehaztu LPM_PIPELINE parametrorako LPM_WIDTHN baino handiagoa den baliorik.
Parametro hau modelizazio eta portaera simulaziorako erabiltzen da. Parametro-editoreak parametro honen balioa kalkulatzen du.
Biten zatikako zatiketa eraginkorragoa ahalbidetzen du, bit nagusien logika optimizatzeko, LPM_DIVIDE IP nukleoari GND nagusiaren kopurua emanez. Zehaztu parametro honen irteerako zatiduraren lehen GND kopurua.

Bidali Iritzia

Intel FPGA Integer Arithmetic IP Cores Erabiltzailearen Gida 15

683490 | 2020.10.05/XNUMX/XNUMX Bidali iritzia

4. LPM_MULT (biderkatzailea) IP nukleoa

3. irudia.

LPM_MULT IP nukleoak biderkatzaile bat ezartzen du sarrerako bi datu-balio biderkatzeko produktu bat irteera gisa ekoizteko.

Hurrengo irudian LPM_MULT IP nukleoaren atakak erakusten dira.

LPM_Mult Ports

LPM_MULT erloju-datuaka[] emaitza[] datuakb[] aclr/sclr clken
inst

Lotutako informazioa Ezaugarriak 71. orrialdean

4.1. Ezaugarriak
LPM_MULT IP nukleoak ezaugarri hauek eskaintzen ditu: · Sarrerako bi datu-balio biderkatzen dituen biderkatzailea sortzen du · 1 biteko datu-zabalera onartzen du · Sinatutako eta sinatu gabeko datuen irudikapen formatua onartzen du · Eremuaren edo abiaduraren optimizazioa onartzen du. Seinale digitaleko prozesamendu dedikatuan (DSP) ezartzeko aukera
bloke-zirkuitua edo elementu logikoak (LE) Oharra: natiboki onartzen den tamaina baino biderkagaiak eraikitzean, baliteke/
DSP blokeen kaskadaren ondoriozko errendimendu-eragina izango da. · Garbiketa asinkronoa eta erlojua gaitzeko aukerako sarrera-atatuak onartzen ditu · Garbiketa sinkronoa aukerakoa onartzen du Intel Stratix 10, Intel Arria 10 eta Intel Cyclone 10 GX gailuetarako

Intel Corporation. Eskubide guztiak erreserbatuak. Intel, Intel logotipoa eta beste Intel marka Intel Corporation edo bere filialen marka komertzialak dira. Intel-ek bere FPGA eta erdieroaleen produktuen errendimendua bermatzen du uneko zehaztapenekin, Intel-en berme estandarraren arabera, baina edozein unetan edozein produktu eta zerbitzutan aldaketak egiteko eskubidea gordetzen du jakinarazi gabe. Intel-ek ez du bere gain hartzen hemen deskribatutako edozein informazio, produktu edo zerbitzuren aplikazio edo erabileratik eratorritako erantzukizunik edo erantzukizunik, Intel-ek idatziz berariaz hitzartutakoa izan ezik. Intel-eko bezeroei gomendatzen zaie gailuaren zehaztapenen azken bertsioa eskuratzea argitaratutako edozein informaziotan oinarritu aurretik eta produktu edo zerbitzuen eskaerak egin aurretik. *Beste izen eta markak beste batzuen jabetza direla erreklamatu daitezke.

ISO 9001:2015 Erregistratua

4. LPM_MULT (biderkatzailea) IP Core 683490 | 2020.10.05/XNUMX/XNUMX
4.2. Verilog HDL prototipoa
Hurrengo Verilog HDL prototipoa Verilog Design-en dago File (.v) lpm.v-en edasynthesis direktorioa.
modulu lpm_mult ( emaitza, dataa, datab, sum, clock, clken, aclr ) parametroa lpm_type = "lpm_mult"; lpm_widtha parametroa = 1; lpm_widthb parametroa = 1; lpm_widths parametroa = 1; lpm_widthp parametroa = 1; lpm_representation parametroa = “SINATU GABE”; lpm_pipeline parametroa = 0; lpm_hint parametroa = "ERABILTZEN EZ"; sarrerako erlojua; sarrera clken; sarrera aklr; sarrera [lpm_widtha-1:0] datuaka; sarrera [lpm_widthb-1:0] datab; sarrera [lpm_widths-1:0] batura; irteera [lpm_widthp-1:0] emaitza; amaierako modulua
4.3. VHDL osagaien adierazpena
VHDL osagaien adierazpena VHDL diseinuan dago File (.vhd) LPM_PACK.vhd atalean librariesvhdllpm direktorioa.
osagaia LPM_MULT generikoa ( LPM_WIDTHA : naturala; LPM_WIDTHB : naturala; LPM_WIDTHS : naturala := 1; LPM_WIDTHP : naturala;
LPM_REPRESENTATION : katea := “SINATU GABE”; LPM_PIPELINE : naturala := 0; LPM_TYPE: katea := L_MULT; LPM_HINT : katea := “ERABILTZEN EZ”); ataka (DATAA: std_logic_vector(LPM_WIDTHA-1 behera 0); DATAB: std_logic_vector(LPM_WIDTHB-1 downto 0); ACLR: std_logic := '0'; CLOCK: std_logic := '0'; CLKEN: std_logic := '1'; SUM : std_logic_vector(LPM_WIDTHS-1 behera 0ra) := (BESTEAK => '0'); EMAITZA : out std_logic_vector(LPM_WIDTHP-1 behera 0)); amaierako osagaia;
4.4. VHDL LIBRARY_USE Adierazpena
VHDL LIBRARY-USE adierazpena ez da beharrezkoa VHDL osagaien adierazpena erabiltzen baduzu.
LIBURUTEGIA lpm; ERABILI lpm.lpm_components.all;

Bidali Iritzia

Intel FPGA Integer Arithmetic IP Cores Erabiltzailearen Gida 17

4. LPM_MULT (biderkatzailea) IP Core 683490 | 2020.10.05/XNUMX/XNUMX

4.5. Seinaleak

7. taula.

LPM_MULT Sarrera-seinaleak

Seinalearen izena

Beharrezkoa

Deskribapena

datuaka[]

Bai

Datuen sarrera.

Intel Stratix 10, Intel Arria 10 eta Intel Cyclone 10 GX gailuetarako, sarrerako seinalearen tamaina Dataa zabalera parametroaren balioaren araberakoa da.

Zaharragoak diren eta Intel Cyclone 10 LP gailuetarako, sarrerako seinalearen tamaina LPM_WIDTHA parametroaren balioaren araberakoa da.

datuak[]

Bai

Datuen sarrera.

Intel Stratix 10, Intel Arria 10 eta Intel Cyclone 10 GX gailuetarako, sarrerako seinalearen tamaina Datab zabalera parametroaren balioaren araberakoa da.

Zaharragoak diren eta Intel Cyclone 10 LP gailuetarako, sarrerako seinalearen tamainaren araberakoa da

LPM_WIDTHB parametroaren balioan.

erlojua

Ez

Erlojuaren sarrera kanalizatutako erabilerarako.

Zaharragoak diren eta Intel Cyclone 10 LP gailuetarako, erloju-seinalea gaituta egon behar da 0 ez den LPM_PIPELINE balioetarako (lehenetsia).

Intel Stratix 10, Intel Arria 10 eta Intel Cyclone 10 GX gailuetarako, erloju-seinalea gaituta egon behar da Latentziaren balioa 1 baino ez bada (lehenetsia).

clken

Ez

Erlojua gaitzea kanalizatutako erabilerarako. Clken seinalea altua aldarrikatzen denean,

batutzaile/kentzaile eragiketa gertatzen da. Seinalea baxua denean, ez dago eragiketarik

gertatzen da. Baztertzen bada, balio lehenetsia 1 da.

aclr sclr

Ez

Seinale argi asinkronoa edozein unetan erabiltzen da kanalizazioa 0-etara berrezartzeko,

erlojuaren seinalearekin modu asinkronoan. Kanalizazioa zehaztu gabeko (X) batera hasten da

maila logikoa. Irteerak balio koherenteak dira, baina ez-zero.

Ez

Seinale argi sinkronikoa edozein unetan erabiltzen da kanalizazioa 0 guztietara berrezartzeko,

sinkronoki erlojuaren seinalearekin. Kanalizazioa zehaztu gabeko (X) batera hasten da

maila logikoa. Irteerak balio koherenteak dira, baina ez-zero.

8. taula.

LPM_MULT Irteerako seinaleak

seinale Izena

Beharrezkoa

Deskribapena

emaitza[]

Bai

Datuen irteera.

Zaharragoak diren eta Intel Cyclone 10 LP gailuetarako, irteerako seinalearen tamaina LPM_WIDTHP parametroaren balioaren araberakoa da. LPM_WIDTHP < gehienez (LPM_WIDTHA + LPM_WIDTHB, LPM_WIDTHS) edo (LPM_WIDTHA + LPM_WIDTHS), LPM_WIDTHP MSBak bakarrik egongo dira.

Intel Stratix 10, Intel Arria 10 eta Intel Cyclone 10 GX-rako, irteerako seinaleen tamaina Emaitza zabalera parametroaren araberakoa da.

4.6. Stratix V, Arria V, Cyclone V eta Intel Cyclone 10 LP gailuen parametroak

4.6.1. Orokorra fitxa

9. taula.

Orokorra fitxa

Parametroa

Balioa

Biderkatzailearen konfigurazioa

Biderkatu 'dataa' sarrera 'datab' sarrerarekin

Balio lehenetsia

Deskribapena

Biderkatu 'dataa' sarrera 'datab' sarrerarekin

Aukeratu biderkatzailearen nahi duzun konfigurazioa.
jarraitu…

Intel FPGA Integer Arithmetic IP Cores Erabiltzailearen Gida 18

Bidali Iritzia

4. LPM_MULT (biderkatzailea) IP Core 683490 | 2020.10.05/XNUMX/XNUMX

Parametroa
Zenbaterainokoa izan behar du 'dataa' sarrerak? Zenbaterainokoa izan behar du 'datab' sarrerak? Nola zehaztu behar da 'emaitza' irteeraren zabalera? Zabalera mugatu

Balioa
Biderkatu 'dataa' sarrera berez (karratu eragiketa)
1-256 bit

Balio lehenetsia

Deskribapena

8 bit

Zehaztu datua[] atakaren zabalera.

1-256 bit

8 bit

Zehaztu datub[] atakaren zabalera.

Kalkulatu automatikoki zabalera. Murriztu zabalera
1-512 bit

Kalkulatu automatikoki zabalera

Hautatu nahi duzun metodoa emaitza[] atakaren zabalera zehazteko.

16 bit

Zehaztu emaitza[] atakaren zabalera.
Balio hau Mota parametroan Zabalera mugatu hautatzen baduzu bakarrik izango da eraginkorra.

4.6.2. Orokorra 2 fitxa

10. taula Orokorra 2 fitxa

Parametroa

Balioa

Datu-sarrera

'datab' sarrera-busak balio konstanterik al du?

Ez Bai

Biderketa Mota

Zein motatakoa

Sinatu gabe

biderketa nahi duzu? Sinatuta

Ezarpena

Zein inplementazio biderkatzaile erabili behar da?

Erabili ezarpen lehenetsia
Erabili biderkadura-zirkuitu dedikatua (Ez dago erabilgarri familia guztientzat)
Elementu logikoak erabiltzea

Balio lehenetsia

Deskribapena

Ez

Hautatu Bai balio konstantea zehazteko

`datab' sarrera-busa, halakorik badago.

Sinatu gabe

Zehaztu datua[] zein datab[] sarreretarako irudikapen formatua.

Erabili inplementazio lehenetsia

Hautatu nahi duzun metodoa emaitza[] atakaren zabalera zehazteko.

4.6.3. Pipelinen fitxa

11. taula. Pipelinen fitxa

Parametroa

No

funtzioa?

Bai

Balioa

Sortu 'aclr' bat

ataka garbi asinkronoa

Balio lehenetsia

Deskribapena

Ez

Hautatu Bai kanalizazio-erregistroa gaitzeko

biderkatzailearen irteera eta zehaztu nahi duzuna

irteerako latentzia erlojuaren zikloan. Gaitzen

kanalizazio erregistroak latentzia gehigarria gehitzen dio

irteera.

Desmarkatuta

Hautatu aukera hau aklr ataka gaitzeko garbiketa asinkronoa erabiltzeko kanalizazio-erregistrorako.
jarraitu…

Bidali Iritzia

Intel FPGA Integer Arithmetic IP Cores Erabiltzailearen Gida 19

4. LPM_MULT (biderkatzailea) IP Core 683490 | 2020.10.05/XNUMX/XNUMX

Parametroa
Sortu 'clken' erlojua gaitu erlojua
Optimizazioa
Zein optimizazio mota nahi duzu?

Balioa —
Abiadura Eremu lehenetsia

Balio lehenetsia

Deskribapena

Desmarkatuta

Erloju handiko gaikuntza aktiboa zehazten du kanalizazio-erregistroko erloju atakarako

Lehenetsia

Zehaztu IP nukleorako nahi duzun optimizazioa.
Hautatu Lehenetsia Intel Quartus Prime softwareari IP nukleorako optimizazio onena zehazteko.

4.7. Intel Stratix 10, Intel Arria 10 eta Intel Cyclone 10 GX gailuen parametroak

4.7.1. Orokorra fitxa

12. taula Orokorra fitxa

Parametroa

Balioa

Balio lehenetsia

Deskribapena

Biderkatzailearen konfigurazio mota
Datu portuen zabalerak

Biderkatu 'dataa' sarrera 'datab' sarrerarekin
Biderkatu 'dataa' sarrera berez (karratu eragiketa)

Biderkatu 'dataa' sarrera 'datab' sarrerarekin

Aukeratu biderkatzailearen nahi duzun konfigurazioa.

Datuen zabalera

1-256 bit

8 bit

Zehaztu datua[] atakaren zabalera.

Datuen zabalera

1-256 bit

8 bit

Zehaztu datub[] atakaren zabalera.

Nola zehaztu behar da 'emaitza' irteeraren zabalera?

Mota

Kalkulatu automatikoki zabalera
Zabalera mugatu

Kalkulatu automatikoki zabalera

Hautatu nahi duzun metodoa emaitza[] atakaren zabalera zehazteko.

Balioa

1-512 bit

16 bit

Zehaztu emaitza[] atakaren zabalera.
Balio hau Mota parametroan Zabalera mugatu hautatzen baduzu bakarrik izango da eraginkorra.

Emaitza zabalera

1-512 bit

Emaitza[] atakaren zabalera eraginkorra bistaratzen du.

4.7.2. Orokorra 2 fitxa

13. taula Orokorra 2 fitxa

Parametroa

Datu-sarrera

'datab' sarrera-busak balio konstanterik al du?

Ez Bai

Balioa

Balio lehenetsia

Deskribapena

Ez

Hautatu Bai balio konstantea zehazteko

`datab' sarrera-busa, halakorik badago.

jarraitu…

Intel FPGA Integer Arithmetic IP Cores Erabiltzailearen Gida 20

Bidali Iritzia

4. LPM_MULT (biderkatzailea) IP Core 683490 | 2020.10.05/XNUMX/XNUMX

Parametroa

Balioa

Balioa

0 baino handiagoa den edozein balio

Biderketa Mota

Zein motatakoa

Sinatu gabe

biderketa nahi duzu? Sinatuta

Ezarpen-estiloa

Zein inplementazio biderkatzaile erabili behar da?

Erabili ezarpen lehenetsia
Erabili zirkuitu biderkatzaile dedikatua
Elementu logikoak erabiltzea

Balio lehenetsia

Deskribapena

0

Zehaztu datab[] atakaren balio konstantea.

Sinatu gabe

Zehaztu datua[] zein datab[] sarreretarako irudikapen formatua.

Erabili inplementazio lehenetsia

Hautatu nahi duzun metodoa emaitza[] atakaren zabalera zehazteko.

4.7.3. Kanalizazioa

14. taula. Pipelinen fitxa

Parametroa

Balioa

Funtzioa kanalizatu nahi duzu?

Hodibidea

Ez Bai

Latentzia Garbitu Seinale Mota

0 baino handiagoa den edozein balio.
EZ DA ACLR SCLR

Sortu 'clken' erloju bat

gaitu erlojua

Zein optimizazio mota nahi duzu?

Mota

Abiadura Eremu lehenetsia

Balio lehenetsia

Deskribapena

EZ 1 EZ

Hautatu Bai kanalizazio-erregistroa biderkatzailearen irteeran gaitzeko. Kanalizazio-erregistroa gaitzeak latentzia gehigarria gehitzen dio irteerari.
Zehaztu nahi duzun irteerako latentzia erlojuaren zikloan.
Zehaztu kanalizazio-erregistrorako berrezartze mota. Hautatu EZER inongo kanalizazio erregistrorik erabiltzen ez baduzu. Hautatu ACLR garbiketa asinkronoa erabiltzeko kanalizazio-erregistrorako. Honek ACLR ataka sortuko du. Hautatu SCLR garbiketa sinkronikoa erabiltzeko kanalizazio-erregistrorako. Honek SCLR ataka sortuko du.
Erloju handiko gaikuntza aktiboa zehazten du kanalizazio-erregistroko erloju atakarako

Lehenetsia

Zehaztu IP nukleorako nahi duzun optimizazioa.
Hautatu Lehenetsia Intel Quartus Prime softwareari IP nukleorako optimizazio onena zehazteko.

Bidali Iritzia

Intel FPGA Integer Arithmetic IP Cores Erabiltzailearen Gida 21

683490 | 2020.10.05/XNUMX/XNUMX Bidali iritzia

5. LPM_ADD_SUB (batzailea/kentzailea)

4. irudia.

LPM_ADD_SUB IP nukleoak gehigarri edo kentzaile bat inplementatzeko aukera ematen dizu datu multzoak gehitzeko edo kentzeko, sarrerako balioen batura edo aldea duen irteera bat sortzeko.

Hurrengo irudian LPM_ADD_SUB IP nukleoaren atakak erakusten dira.

LPM_ADD_SUB Portuak

LPM_ADD_SUB add_sub cin

datuaka[]

erloju clken datab[] aclr

emaitza[] gainezka-cout

inst

5.1. Ezaugarriak
LPM_ADD_SUB IP nukleoak ezaugarri hauek eskaintzen ditu: · Batutzaileak, kentzaileak eta dinamikoki konfigura daitezkeen batutzaileak/kentzaileak sortzen ditu.
funtzioak. · 1 biteko datu-zabalera onartzen du. · Datuak irudikatzeko formatuak onartzen ditu, hala nola sinatuta eta sinatu gabe. · Aukerako eramatea (mailegutik ateratzea), garbiketa asinkronoa eta erlojua gaitzea onartzen du
sarrerako atakak. · Hautazko out-out (mailegu-sarrera) eta gainezka irteera atakak onartzen ditu. · Sarrerako datu-busetako bat konstante bati esleitzen dio. · Irteerako latentzia konfiguragarria duen kanalizazioa onartzen du.

Intel Corporation. Eskubide guztiak erreserbatuak. Intel, Intel logotipoa eta beste Intel marka Intel Corporation edo bere filialen marka komertzialak dira. Intel-ek bere FPGA eta erdieroaleen produktuen errendimendua bermatzen du uneko zehaztapenekin, Intel-en berme estandarraren arabera, baina edozein unetan edozein produktu eta zerbitzutan aldaketak egiteko eskubidea gordetzen du jakinarazi gabe. Intel-ek ez du bere gain hartzen hemen deskribatutako edozein informazio, produktu edo zerbitzuren aplikazio edo erabileratik eratorritako erantzukizunik edo erantzukizunik, Intel-ek idatziz berariaz hitzartutakoa izan ezik. Intel-eko bezeroei gomendatzen zaie gailuaren zehaztapenen azken bertsioa eskuratzea argitaratutako edozein informaziotan oinarritu aurretik eta produktu edo zerbitzuen eskaerak egin aurretik. *Beste izen eta markak beste batzuen jabetza direla erreklamatu daitezke.

ISO 9001:2015 Erregistratua

5. LPM_ADD_SUB (Bagatzailea/Kenkaria) 683490 | 2020.10.05/XNUMX/XNUMX
5.2. Verilog HDL prototipoa
Hurrengo Verilog HDL prototipoa Verilog Design-en dago File (.v) lpm.v-en edasynthesis direktorioa.
lpm_add_sub modulua (emaitza, cout, gainezkatzea,add_sub, cin, dataa, datab, clock, clken, aclr ); lpm_type parametroa = "lpm_add_sub"; lpm_width parametroa = 1; lpm_direction parametroa = "ERABILTZEN EZ"; lpm_representation parametroa = "SINATUA"; lpm_pipeline parametroa = 0; lpm_hint parametroa = "ERABILTZEN EZ"; sarrera [lpm_width-1:0] dataa, datab; sarrera gehi_sub, cin; sarrerako erlojua; sarrera clken; sarrera aklr; irteera [lpm_width-1:0] emaitza; irteera cout, gainezka; amaierako modulua
5.3. VHDL osagaien adierazpena
VHDL osagaien adierazpena VHDL diseinuan dago File (.vhd) LPM_PACK.vhd atalean librariesvhdllpm direktorioa.
osagaia LPM_ADD_SUB generikoa (LPM_WIDTH: naturala;
LPM_DIRECTION : katea := “ERABILTZEN EZ”; LPM_ERREPRESENTAZIOA: katea := "SINATUA"; LPM_PIPELINE : naturala := 0; LPM_TYPE : katea := L_ADD_SUB; LPM_HINT : katea := “ERABILTZEN EZ”); ataka (DATAA: std_logic_vector-en (LPM_WIDTH-1 behera 0); DATAB: std_logic_vector-en (LPM_WIDTH-1 behera 0); ACLR: std_logic-en:= '0'; CLOCK: std_logic-en:= '0'; CLKEN: std_logic-en := '1'; CIN : std_logic := 'Z'; ADD_SUB : std_logic := '1'; EMAITZA : out std_logic_vector (LPM_WIDTH-1 behera 0); COUT : out std_logic; OVERFLOW : out std_logic); amaierako osagaia;
5.4. VHDL LIBRARY_USE Adierazpena
VHDL LIBRARY-USE adierazpena ez da beharrezkoa VHDL osagaien adierazpena erabiltzen baduzu.
LIBURUTEGIA lpm; ERABILI lpm.lpm_components.all;
5.5. Portuak
Ondorengo tauletan LPM_ADD_SUB IP nukleoaren sarrera- eta irteera-portuak zerrendatzen dira.

Bidali Iritzia

Intel FPGA Integer Arithmetic IP Cores Erabiltzailearen Gida 23

5. LPM_ADD_SUB (Bagatzailea/Kenkaria) 683490 | 2020.10.05/XNUMX/XNUMX

15. taula. LPM_ADD_SUB IP Core Sarrerako Portuak

Portuaren izena

Beharrezkoa

Deskribapena

cin

Ez

Eraman ezazu eskaera txikiko bitra. Gehitze-eragiketetarako, balio lehenetsia 0 da

kenketa eragiketak, balio lehenetsia 1 da.

datuaka[]

Bai

Datuen sarrera. Sarrerako atakaren tamaina LPM_WIDTH parametroaren balioaren araberakoa da.

datuak[]

Bai

Datuen sarrera. Sarrerako atakaren tamaina LPM_WIDTH parametroaren balioaren araberakoa da.

gehitu_azpi

Ez

Aukerako sarrerako ataka batutzailearen eta kentzailearen arteko aldaketa dinamikoa ahalbidetzeko

funtzioak. LPM_DIRECTION parametroa erabiltzen bada, ezin da add_sub erabili. Bada

kenduta, balio lehenetsia ADD da. Intel-ek gomendatzen du erabiltzea

LPM_DIRECTION parametroa LPM_ADD_SUB funtzioaren funtzionamendua zehazteko,

add_sub atakari konstante bat esleitu beharrean.

erlojua

Ez

Pipelined erabilerarako sarrera. Erlojuaren atakak erlojuaren sarrera eskaintzen du kanalizatutako batentzat

operazioa. 0 ez den LPM_PIPELINE balioetarako (lehenetsia), erlojuaren atakak izan behar du

gaituta.

clken

Ez

Erlojua gaitzea kanalizatutako erabilerarako. Clken ataka altua adierazten denean, gehitzailea/

kengailuaren eragiketa gertatzen da. Seinalea baxua denean, ez da eragiketarik gertatzen. Bada

kenduta, balio lehenetsia 1 da.

aklr

Ez

Garbiketa asinkronoa kanalizatutako erabilerarako. Kanalizazioa zehaztu gabeko (X) batera hasten da

maila logikoa. Aclr ataka edozein unetan erabil daiteke kanalizazioa 0 guztietara berrezartzeko,

erlojuaren seinalearekin modu asinkronoan.

16. taula. LPM_ADD_SUB IP Nukleoaren irteerako atakak

Portuaren izena

Beharrezkoa

Deskribapena

emaitza[]

Bai

Datuen irteera. Irteerako atakaren tamaina LPM_WIDTH parametroaren araberakoa da

balioa.

cout

Ez

Bit esanguratsuenaren (MSB) gauzatzea (mailegatzea). Cout portuak fisikoa du

MSBren gauzatze (mailegu-sartzea) gisa interpretatzea. Cout ataka detektatzen du

SINATU GABEKO eragiketetan gainezkatzea. Cout portuak era berean funtzionatzen du

SINATU eta SINATU GABE eragiketak.

gainezka

Ez

Gainerako salbuespenaren aukerako irteera. Gainezka-atatuak interpretazio fisikoa du

MSBra eramatearen XOR MSBren eramatearekin. Gainezka-ataka

emaitzak eskuragarri dagoen zehaztasuna gainditzen duenean baieztatzen du, eta soilik erabiltzen da

LPM_REPRESENTATION parametroaren balioa SIGNED dago.

5.6. parametroak

Hurrengo taulan LPM_ADD_SUB IP oinarrizko parametroak zerrendatzen dira.

17. taula. LPM_ADD_SUB IP oinarrizko parametroak

Parametroaren izena LPM_WIDTH

Idatzi Integer

Beharrezkoa Bai

Deskribapena
Datua[], datab[] eta emaitza[] ataken zabalerak zehazten ditu.

LPM_DIRECTION

Katea

Ez

Balioak ADD, SUB eta UNUSED dira. Baztertzen bada, balio lehenetsia DEFAULT da, eta horrek parametroari bere balioa gehi_sub atakatik har dezan zuzentzen du. Add_sub ataka ezin da erabili LPM_DIRECTION erabiltzen bada. Intelek gomendatzen du LPM_DIRECTION parametroa erabiltzea LPM_ADD_SUB funtzioaren funtzionamendua zehazteko, gehi_sub atakari konstante bat esleitu beharrean.
jarraitu…

Intel FPGA Integer Arithmetic IP Cores Erabiltzailearen Gida 24

Bidali Iritzia

5. LPM_ADD_SUB (Bagatzailea/Kenkaria) 683490 | 2020.10.05/XNUMX/XNUMX

Parametroaren izena LPM_REPRESENTATION LPM_PIPELINE LPM_HINT LPM_TYPE ONE_INPUT_IS_CONSTANT MAXIMIZE_SPEED
INTENDED_DEVICE_FAMILY

Idatzi String Integer String String String Integer
Katea

Beharrezkoa Ez Ez Ez Ez Ez Ez
Ez

Deskribapena
Egindako batuketa mota zehazten du. Balioak SIGNED eta SIGNED dira. Baztertzen bada, balio lehenetsia SIGNED da. Parametro hau SIGNED gisa ezartzen denean, batutzaileak/kentzaileak datuak sarrera biko osagarri gisa interpretatzen du.
Emaitza[] irteerarekin lotutako latentzia-erloju-ziklo kopurua zehazten du. Zero (0) balio batek latentziarik ez dagoela adierazten du, eta funtzio konbinazio hutsa instantziatuko dela. Baztertzen bada, balio lehenetsia 0 da (tubiderik gabekoa).
VHDL diseinuan Intel-en berariazko parametroak zehazteko aukera ematen du files (.vhd). Balio lehenetsia ERABILTZEN da.
Parameterized modules (LPM) entitatearen izena VHDL diseinuan identifikatzen du files.
Intel-en parametro espezifikoa. LPM_HINT parametroa erabili behar duzu VHDL diseinuan ONE_INPUT_IS_CONSTANT parametroa zehazteko files. Balioak BAI, EZ eta ERABILTZEN EZ dira. Optimizazio handiagoa ematen du sarrera bat konstantea bada. Baztertzen bada, balio lehenetsia EZ da.
Intel-en parametro espezifikoa. LPM_HINT parametroa erabili behar duzu VHDL diseinuan MAXIMIZE_SPEED parametroa zehazteko files. 0 eta 10 arteko balio bat zehaztu dezakezu. Erabiltzen bada, Intel Quartus Prime softwarea LPM_ADD_SUB funtzioaren instantzia zehatz bat optimizatzen saiatzen da bideragarritasunerako baino abiadurarako, eta Optimizazio Teknikaren aukera logikoaren ezarpena gainditzen du. MAXIMIZE_SPEED erabiltzen ez bada, Optimizazio Teknika aukeraren balioa erabiliko da horren ordez. MAXIMIZE_SPEED-en ezarpena 6 edo handiagoa bada, Konpilatzaileak LPM_ADD_SUB IP nukleoa optimizatzen du abiadura handiagorako garraio-kateak erabiliz; ezarpena 5 edo gutxiago bada, Konpilatzaileak diseinua inplementatzen du katerik gabe. Parametro hau Cyclone, Stratix eta Stratix GX gailuetarako zehaztu behar da add_sub ataka erabiltzen ez denean soilik.
Parametro hau modelizazio eta portaera simulaziorako erabiltzen da. Parametro-editoreak parametro honen balioa kalkulatzen du.

Bidali Iritzia

Intel FPGA Integer Arithmetic IP Cores Erabiltzailearen Gida 25

683490 | 2020.10.05/XNUMX/XNUMX Bidali iritzia

6. LPM_COMPARE (Konparatzailea)

5. irudia.

LPM_COMPARE IP nukleoak bi datu-multzoren balioa konparatzen du haien arteko erlazioa zehazteko. Bere forma sinpleenean, OR esklusiboko ate bat erabil dezakezu bi datu-bit berdinak diren zehazteko.

Hurrengo irudian LPM_COMPARE IP nukleoaren atakak erakusten dira.

LPM_COMPARE Portuak

LPM_COMPARE

clken

alb

aeb

datuaka[]

agb

datuak[]

adinb

erlojua

aneb

aklr

aleb

inst

6.1. Ezaugarriak
LPM_COMPARE IP nukleoak ezaugarri hauek eskaintzen ditu: · Konparazio-funtzioa sortzen du bi datu-multzo alderatzeko · 1 biteko datuen zabalera onartzen du · Datuen irudikapen formatua onartzen du, hala nola sinatua eta sinatu gabea. · Irteera mota hauek sortzen ditu:
— alb (A sarrera B sarrera baino txikiagoa da) — aeb (A sarrera B sarreraren berdina da) — agb (A sarrera B sarrera baino handiagoa da) — ageb (A sarrera B sarrera baino handiagoa edo berdina da) — aneb ( A sarrera ez da B sarreraren berdina) — aleb (A sarrera B sarreraren berdina edo txikiagoa da) · Garbiketa asinkronoa eta erlojua gaitzeko aukerako sarrera-atatuak onartzen ditu · Datab[] sarrera konstante bati esleitzen dio · Irteerako latentzia konfiguragarria duen kanalizazioa onartzen du

Intel Corporation. Eskubide guztiak erreserbatuak. Intel, Intel logotipoa eta beste Intel marka Intel Corporation edo bere filialen marka komertzialak dira. Intel-ek bere FPGA eta erdieroaleen produktuen errendimendua bermatzen du uneko zehaztapenekin, Intel-en berme estandarraren arabera, baina edozein unetan edozein produktu eta zerbitzutan aldaketak egiteko eskubidea gordetzen du jakinarazi gabe. Intel-ek ez du bere gain hartzen hemen deskribatutako edozein informazio, produktu edo zerbitzuren aplikazio edo erabileratik eratorritako erantzukizunik edo erantzukizunik, Intel-ek idatziz berariaz hitzartutakoa izan ezik. Intel-eko bezeroei gomendatzen zaie gailuaren zehaztapenen azken bertsioa eskuratzea argitaratutako edozein informaziotan oinarritu aurretik eta produktu edo zerbitzuen eskaerak egin aurretik. *Beste izen eta markak beste batzuen jabetza direla erreklamatu daitezke.

ISO 9001:2015 Erregistratua

6. LPM_COMPARE (Konparatzailea) 683490 | 2020.10.05/XNUMX/XNUMX
6.2. Verilog HDL prototipoa
Hurrengo Verilog HDL prototipoa Verilog Design-en dago File (.v) lpm.v-en edasynthesis direktorioa.
lpm_compare modulua ( alb, aeb, agb, aleb, aneb, ageb, dataa, datab, clock, clken, aclr ); lpm_type parametroa = "lpm_compare"; lpm_width parametroa = 1; lpm_representation parametroa = “SINATU GABE”; lpm_pipeline parametroa = 0; lpm_hint parametroa = "ERABILTZEN EZ"; sarrera [lpm_width-1:0] dataa, datab; sarrerako erlojua; sarrera clken; sarrera aklr; irteera alb, aeb, agb, aleb, aneb, ageb; amaierako modulua
6.3. VHDL osagaien adierazpena
VHDL osagaien adierazpena VHDL diseinuan dago File (.vhd) LPM_PACK.vhd atalean librariesvhdllpm direktorioa.
osagaia LPM_COMPARE generikoa (LPM_WIDTH: naturala;
LPM_REPRESENTATION : katea := “SINATU GABE”; LPM_PIPELINE : naturala := 0; LPM_TYPE: katea := L_COMPARE; LPM_HINT : katea := “ERABILTZEN EZ”); ataka (DATAA: std_logic_vector-en (LPM_WIDTH-1 behera 0); DATAB: std_logic_vector-en (LPM_WIDTH-1 behera 0); ACLR: std_logic-en:= '0'; CLOCK: std_logic-en:= '0'; CLKEN: std_logic-en := '1'; AGB: out std_logic; AGEB: out std_logic; AEB: out std_logic; ANEB: out std_logic; ALB: out std_logic; ALEB: out std_logic); amaierako osagaia;
6.4. VHDL LIBRARY_USE Adierazpena
VHDL LIBRARY-USE adierazpena ez da beharrezkoa VHDL osagaien adierazpena erabiltzen baduzu.
LIBURUTEGIA lpm; ERABILI lpm.lpm_components.all;
6.5. Portuak
Ondorengo tauletan LMP_COMPARE IP nukleoaren sarrera- eta irteera-portuak zerrendatzen dira.

Bidali Iritzia

Intel FPGA Integer Arithmetic IP Cores Erabiltzailearen Gida 27

6. LPM_COMPARE (Konparatzailea) 683490 | 2020.10.05/XNUMX/XNUMX

18. Taula. LPM_COMPARE IP core Sarrera Portuak

Portuaren izena

Beharrezkoa

Deskribapena

datuaka[]

Bai

Datuen sarrera. Sarrerako atakaren tamaina LPM_WIDTH parametroaren balioaren araberakoa da.

datuak[]

Bai

Datuen sarrera. Sarrerako atakaren tamaina LPM_WIDTH parametroaren balioaren araberakoa da.

erlojua

Ez

Erlojuaren sarrera kanalizatutako erabilerarako. Erlojuaren atakak erlojuaren sarrera eskaintzen du kanalizatutako batentzat

operazioa. 0 ez den LPM_PIPELINE balioetarako (lehenetsia), erlojuaren atakak izan behar du

gaituta.

clken

Ez

Erlojua gaitzea kanalizatutako erabilerarako. Clken ataka altua aldarrikatzen denean,

konparazio eragiketa egiten da. Seinalea baxua denean, ez da eragiketarik gertatzen. Bada

kenduta, balio lehenetsia 1 da.

aklr

Ez

Garbiketa asinkronoa kanalizatutako erabilerarako. Kanalizazioa definitu gabeko (X) logika batera hasten da

maila. Aclr ataka edozein unetan erabil daiteke kanalizazioa 0 guztietara berrezartzeko,

erlojuaren seinalearekin modu asinkronoan.

19. taula. LPM_COMPARE IP core Irteera Portuak

Portuaren izena

Beharrezkoa

Deskribapena

alb

Ez

Konparagailurako irteerako ataka. A sarrera B sarrera baino txikiagoa bada baieztatzen da.

aeb

Ez

Konparagailurako irteerako ataka. A sarrera B sarreraren berdina bada baieztatzen da.

agb

Ez

Konparagailurako irteerako ataka. A sarrera B sarrera baino handiagoa bada baieztatzen da.

adinb

Ez

Konparagailurako irteerako ataka. A sarrera sarrera baino handiagoa edo berdina bada baieztatzen da

B.

aneb

Ez

Konparagailurako irteerako ataka. A sarrera B sarreraren berdina ez bada baieztatzen da.

aleb

Ez

Konparagailurako irteerako ataka. A sarrera B sarrera baino txikiagoa edo berdina bada baieztatzen da.

6.6. parametroak

Hurrengo taulan LPM_COMPARE IP nukleoaren parametroak zerrendatzen dira.

20. taula. LPM_COMPARE IP core parametroak

Parametroaren izena

Mota

Beharrezkoa

LPM_WIDTH

Zenbaki osoa Bai

LPM_ERREPRESENTAZIOA

Katea

Ez

LPM_PIPELINE

Zenbaki osoa

LPM_HINT

Katea

Ez

Deskribapena
Dataa[] eta datab[] ataken zabalerak zehazten ditu.
Egindako konparazio mota zehazten du. Balioak SIGNED eta SIGNED dira. Baztertzen bada, balio lehenetsia SINATU GABE da. Parametro-balio hau SIGNED gisa ezartzen denean, konparatzaileak datu-sarrera biko osagarri gisa interpretatzen du.
Alb, aeb, agb, ageb, aleb edo aneb irteerarekin lotutako latentzia-ziklo kopurua zehazten du. Zero (0) balio batek latentziarik ez dagoela adierazten du, eta funtzio konbinazio hutsa instantziatuko dela. Baztertzen bada, balio lehenetsia 0 da (tubiderik gabekoa).
VHDL diseinuan Intel-en berariazko parametroak zehazteko aukera ematen du files (.vhd). Balio lehenetsia ERABILTZEN da.
jarraitu…

Intel FPGA Integer Arithmetic IP Cores Erabiltzailearen Gida 28

Bidali Iritzia

6. LPM_COMPARE (Konparatzailea) 683490 | 2020.10.05/XNUMX/XNUMX
Parametroaren izena LPM_TYPE INTENDED_DEVICE_FAMILY
ONE_INPUT_IS_CONSTANT

Idatzi String String
Katea

Beharrezkoa Ez Ez
Ez

Deskribapena
Parameterized modules (LPM) entitatearen izena VHDL diseinuan identifikatzen du files.
Parametro hau modelizazio eta portaera simulaziorako erabiltzen da. Parametro-editoreak parametro honen balioa kalkulatzen du.
Intel-en parametro espezifikoa. LPM_HINT parametroa erabili behar duzu VHDL diseinuan ONE_INPUT_IS_CONSTANT parametroa zehazteko files. Balioak BAI, EZ edo ERABILTZEN EZ dira. Optimizazio handiagoa ematen du sarrera bat konstantea bada. Baztertzen bada, balio lehenetsia EZ da.

Bidali Iritzia

Intel FPGA Integer Arithmetic IP Cores Erabiltzailearen Gida 29

683490 | 2020.10.05/XNUMX/XNUMX Bidali iritzia

7. ALTEC (Erroreak zuzentzeko kodea: kodetzailea/deskodetzailea) IP Nukleoa

6. irudia.

Intel-ek ALTEC IP nukleoa eskaintzen du ECC funtzionaltasuna ezartzeko. ECC-k datu-transmisioan hartzailearen aldean gertatzen diren datu hondatuak hautematen ditu. Erroreak zuzentzeko metodo hau egokiena da akatsak ausaz gertatzen diren egoeretarako.

ECCk akatsak hautematen ditu datuen kodeketa eta deskodetze prozesuaren bidez. AdibidezampECC transmisio-aplikazio batean aplikatzen denean, iturritik irakurritako datuak kodetzen dira hargailura bidali aurretik. Kodegailuaren irteera (kode-hitza) paritate-bit kopuruarekin erantsitako datu gordinak osatzen dute. Erantsitako parekotasun-bit kopuru zehatza sarrerako datuen bit-kopuruaren araberakoa da. Ondoren, sortutako kode-hitza helmugara igortzen da.

Hartzaileak kode-hitza jasotzen du eta deskodetzen du. Deskodetzaileak lortutako informazioak akatsen bat detektatzen den zehazten du. Deskodetzaileak bit bakarreko eta bikoko erroreak hautematen ditu, baina hondatutako datuetan bit bakarreko akatsak soilik konpondu ditzake. ECC mota hau errore bakarreko zuzenketa akats bikoitzeko detekzioa (SECDED) da.

ALTECC IP nukleoaren kodetzaile eta deskodetzaile funtzioak konfigura ditzakezu. Kodetzaileari sarrerako datuak kodetzen dira, datu-sarreraren eta sortutako parekotasun-biten konbinazioa den kode-hitza sortzeko. Sortutako kode-hitza deskodetzaile-modulura igortzen da, helmuga-blokea iritsi baino lehen deskodetzeko. Deskodetzaileak sindrome-bektore bat sortzen du jasotako kode-hitzean errorerik dagoen zehazteko. Deskodetzaileak datuak zuzentzen ditu bit bakarreko errorea datu-bitetakoa bada. Ez da seinalerik markatuko bit bakarreko errorea paritate-bitetakoa bada. Deskodetzaileak bandera-seinaleak ere baditu jasotako datuen egoera eta deskodetzaileak egindako ekintza, halakorik balego, erakusteko.

Hurrengo irudiek ALTECC IP nukleoaren atakak erakusten dituzte.

ALTEC kodetzailearen atakak

ALTEC_ENCODER

datuak[]

q[]

erlojua

erlojua

aklr

inst

Intel Corporation. Eskubide guztiak erreserbatuak. Intel, Intel logotipoa eta beste Intel marka Intel Corporation edo bere filialen marka komertzialak dira. Intel-ek bere FPGA eta erdieroaleen produktuen errendimendua bermatzen du uneko zehaztapenekin, Intel-en berme estandarraren arabera, baina edozein unetan edozein produktu eta zerbitzutan aldaketak egiteko eskubidea gordetzen du jakinarazi gabe. Intel-ek ez du bere gain hartzen hemen deskribatutako edozein informazio, produktu edo zerbitzuren aplikazio edo erabileratik eratorritako erantzukizunik edo erantzukizunik, Intel-ek idatziz berariaz hitzartutakoa izan ezik. Intel-eko bezeroei gomendatzen zaie gailuaren zehaztapenen azken bertsioa eskuratzea argitaratutako edozein informaziotan oinarritu aurretik eta produktu edo zerbitzuen eskaerak egin aurretik. *Beste izen eta markak beste batzuen jabetza direla erreklamatu daitezke.

ISO 9001:2015 Erregistratua

7. ALTEC (Erroreak zuzentzeko kodea: kodetzailea/deskodetzailea) IP Core 683490 | 2020.10.05/XNUMX/XNUMX

7. Irudia. ALTEC Deskodetzailearen atakak

ALTEC_DECODER

datu[] erloju erloju

q[] err_detected err_corrected
err_fatal

aklr

inst

7.1. ALTEC kodetzailearen Ezaugarriak

ALTECC kodetzailearen IP nukleoak ezaugarri hauek eskaintzen ditu: · Datuen kodeketa egiten du Hamming Kodeketa eskema erabiliz · 2 biteko datuen zabalera onartzen du · Sinatutako eta sinatu gabeko datuen irudikapen formatua onartzen du · Pipelineing onartzen du erloju-ziklo bateko edo biko irteerako latentziarekin · Aukerako onartzen du Garbiketa asinkronoa eta erlojua gaitzeko atakak

ALTEC kodetzailearen IP nukleoak datuak hartzen eta kodetzen ditu Hamming Kodeketa eskema erabiliz. Hamming Coding eskemak parekotasun bitak ateratzen ditu eta jatorrizko datuei eransten die irteerako kode hitza sortzeko. Erantsitako parekotasun-bit kopurua datuen zabaleraren araberakoa da.

Hurrengo taulak datu-zabalera desberdinetarako erantsitako parekotasun-bit kopurua zerrendatzen du. Bit totalak zutabeak sarrerako datu-bit eta erantsitako paritate-bit kopuru osoa adierazten du.

21. taula.

Parekidetasun-bit kopurua eta kode-hitzaren datu-zabaleraren arabera

Datuen zabalera

Parekidetasun-bit kopurua

Bit guztira (kode-hitza)

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

Paritate-biten eratorpenak parekotasun-egiaztapena erabiltzen du. 1 bit gehigarria (taulan +1 gisa ageri dena) parekidetasun-bitei eransten zaie kode hitzaren MSB gisa. Honek kode-hitzak 1eko zenbaki bikoitia duela ziurtatzen du. Adibidezample, datuen zabalera 4 bit bada, 4 parekotasun bit eransten zaizkie datuei, guztira 8 bit dituen kode-hitz bihurtzeko. 7 biteko kode-hitzaren LSBko 8 bitek 1eko zenbaki bakoitia badute, kode-hitzaren 8. bit-a (MSB) 1 izango da, kode-hitzaren 1-kopurua bikoitia bihurtuz.
Hurrengo irudian sortutako kode-hitza eta parekotasun-biten eta datu-biten antolamendua erakusten da 8 biteko datu-sarrera batean.

Bidali Iritzia

Intel FPGA Integer Arithmetic IP Cores Erabiltzailearen Gida 31

7. ALTEC (Erroreak zuzentzeko kodea: kodetzailea/deskodetzailea) IP Core 683490 | 2020.10.05/XNUMX/XNUMX

8. irudia.

Parekidetasun-bitak eta datu-biten antolamendua 8 biteko sortutako kode-hitz batean

MSB

LSB

4 parekidetasun bit

4 datu-bit

8

1

ALTEC kodetzailearen IP nukleoak 2 eta 64 bit arteko sarrera-zabalerak soilik onartzen ditu aldi berean. 12 biteko, 29 biteko eta 64 biteko sarrera-zabalerek, Intel gailuetarako oso egokiak direnak, 18 biteko, 36 biteko eta 72 biteko irteerak sortzen dituzte hurrenez hurren. Bit-hautaketaren muga kontrola dezakezu parametroen editorean.

7.2. Verilog HDL prototipoa (ALTECC_ENCODER)
Hurrengo Verilog HDL prototipoa Verilog Design-en dago File (.v) lpm.v-en edasynthesis direktorioa.
module altecc_encoder #( parametroa target_device_family = "ez erabilia", parametroa lpm_pipeline = 0, parametroa width_codeword = 8, parametroa width_dataword = 8, parametroa lpm_type = "altecc_encoder", parametroa lpm_hint = "ez dago erabilita") (sarrerako kablearen aclr, sarrerako hariaren clock wire clocken, sarrerako hari [width_dataword-1:0] datuak, irteerako haria [width_codeword-1:0] q); amaierako modulua

7.3. Verilog HDL prototipoa (ALTECC_DECODER)
Hurrengo Verilog HDL prototipoa Verilog Design-en dago File (.v) lpm.v-en edasynthesis direktorioa.
module altecc_decoder #( parametroa target_device_family = "ez erabilia", parametroa lpm_pipeline = 0, parametroa width_codeword = 8, parametroa width_dataword = 8, parametroa lpm_type = "altecc_decoder", parametroa lpm_hint = "ez da erabili") (sarrera hari-clock, sarrerako hari-clock, sarrera alanbre erlojua, sarrerako haria [width_codeword-1:0] datuak, irteerako haria err_corrected, irteerako haria err_detected, outut haria err_fatal, irteerako haria [width_dataword-1:0] q); amaierako modulua

Intel FPGA Integer Arithmetic IP Cores Erabiltzailearen Gida 32

Bidali Iritzia

7. ALTEC (Erroreak zuzentzeko kodea: kodetzailea/deskodetzailea) IP Core 683490 | 2020.10.05/XNUMX/XNUMX
7.4. VHDL osagaien adierazpena (ALTECC_ENCODER)
VHDL osagaien adierazpena VHDL diseinuan dago File (.vhd) altera_mf_components.vhd atalean librariesvhdlaltera_mf direktorioa.
osagaia altecc_encoder generic ( intentsed_device_family:string := “ez erabilia”; lpm_pipeline:natural := 0; width_codeword:natural := 8; width_dataword:natural := 8; lpm_hint:string := “EZ ERABILI”; lpm_type:string := “altecc_encoder ”); portua (aclr: std_logic := '0'; erlojua: std_logic := '0'; clocken: std_logic := '1'; datuak: std_logic_vector (width_dataword-1 down to 0); q: out std_logic_vector (width_codeword -1 behera 0)); amaierako osagaia;
7.5. VHDL osagaien adierazpena (ALTECC_DECODER)
VHDL osagaien adierazpena VHDL diseinuan dago File (.vhd) altera_mf_components.vhd atalean librariesvhdlaltera_mf direktorioa.
osagaia altecc_decoder generic ( intentsed_device_family:string := “ez erabilia”; lpm_pipeline:natural := 0; width_codeword:natural := 8; width_dataword:natural := 8; lpm_hint:string := “ERABILTZEN”; lpm_type:string := “altecc_decoder ”); portua (aclr: std_logic-en:= '0'; erlojua: std_logic-en:= '0'; erlojua: std_logic-en:= '1'; datuak: std_logic_vector-en (width_codeword-1 0raino); err_corrected: out std_logic; err_detected : out std_logic; q: out std_logic_vector (width_dataword-1 down to 0); syn_e : out std_logic); amaierako osagaia;
7.6. VHDL LIBRARY_USE Adierazpena
VHDL LIBRARY-USE adierazpena ez da beharrezkoa VHDL osagaien adierazpena erabiltzen baduzu.
LIBURUTEGIA altera_mf; ERABILI altera_mf.altera_mf_components.all;
7.7. Kodetzailearen atakak
Ondorengo tauletan ALTECC kodegailuaren IP nukleoaren sarrera eta irteera atakak zerrendatzen dira.

Bidali Iritzia

Intel FPGA Integer Arithmetic IP Cores Erabiltzailearen Gida 33

7. ALTEC (Erroreak zuzentzeko kodea: kodetzailea/deskodetzailea) IP Core 683490 | 2020.10.05/XNUMX/XNUMX

22. taula. ALTEC kodetzailearen sarrera-atatuak

Portuaren izena

Beharrezkoa

Deskribapena

datuak[]

Bai

Datuak sartzeko ataka. Sarrerako atakaren tamaina WIDTH_DATAWORD-ren araberakoa da

parametroaren balioa. Data[] atakak kodetu beharreko datu gordinak ditu.

erlojua

Bai

Erlojuaren sarrerako ataka, kodetze-eragiketa sinkronizatzeko erlojuaren seinalea ematen duena.

Erlojuaren ataka behar da LPM_PIPELINE balioa 0 baino handiagoa denean.

erlojua

Ez

Erlojua gaitu. Baztertzen bada, balio lehenetsia 1 da.

aklr

Ez

Sarrera garbi asinkronoa. Aclr handiko seinale aktiboa edozein unetan erabil daiteke

garbitu erregistroak modu asinkronoan.

23. taula. ALTEC kodetzailearen irteerako atakak

Portuaren izena q[]

Beharrezkoa Bai

Deskribapena
Kodetutako datuen irteerako ataka. Irteerako atakaren tamaina WIDTH_CODEWORD parametroaren balioaren araberakoa da.

7.8. Deskodetzaileen atakak

Ondorengo tauletan ALTEC deskodetzailearen IP nukleoaren sarrera- eta irteera-portuak zerrendatzen dira.

24. Taula. ALTEC Deskodetzailearen Sarrera Portuak

Portuaren izena

Beharrezkoa

Deskribapena

datuak[]

Bai

Datuak sartzeko ataka. Sarrerako atakaren tamaina WIDTH_CODEWORD parametroaren balioaren araberakoa da.

erlojua

Bai

Erlojuaren sarrerako ataka, kodetze-eragiketa sinkronizatzeko erlojuaren seinalea ematen duena. Erlojuaren ataka behar da LPM_PIPELINE balioa 0 baino handiagoa denean.

erlojua

Ez

Erlojua gaitu. Baztertzen bada, balio lehenetsia 1 da.

aklr

Ez

Sarrera garbi asinkronoa. Aclr handiko seinale aktiboa edozein unetan erabil daiteke erregistroak modu asinkronoan garbitzeko.

25. Taula. ALTEC Deskodetzailearen irteerako atakak

Portuaren izena q[]

Beharrezkoa Bai

Deskribapena
Deskodetutako datuen irteerako ataka. Irteerako atakaren tamaina WIDTH_DATAWORD parametroaren balioaren araberakoa da.

err_detekted Bai

Markatu seinalea jasotako datuen egoera islatzeko eta aurkitutako akatsak zehazten ditu.

err_correct Bai d

Markatu seinalea jasotako datuen egoera islatzeko. Aurkitutako eta zuzendutako bit bakarreko errorea adierazten du. Datuak erabil ditzakezu dagoeneko zuzenduta dagoelako.

err_fatal

Bai

Markatu seinalea jasotako datuen egoera islatzeko. Bit bikoitzeko errorea aurkitutako, baina zuzendu ez den adierazten du. Ez dituzu datuak erabili behar seinale hori baieztatzen bada.

sin_e

Ez

Paritatean bit bakarreko errore bat hautematen den bakoitzean altua izango den irteera-seinalea

bitsak.

7.9. Kodetzailearen parametroak
Ondorengo taulan ALTEC kodetzailearen IP nukleoaren parametroak zerrendatzen dira.

Intel FPGA Integer Arithmetic IP Cores Erabiltzailearen Gida 34

Bidali Iritzia

7. ALTEC (Erroreak zuzentzeko kodea: kodetzailea/deskodetzailea) IP Core 683490 | 2020.10.05/XNUMX/XNUMX

26. taula. ALTEC kodetzailearen parametroak

Parametroaren izena

Mota

Beharrezkoa

Deskribapena

WIDTH_DATAWORD

Zenbaki osoa Bai

Datu gordinaren zabalera zehazten du. Balioak 2tik 64ra bitartekoak dira. Baztertzen badira, balio lehenetsia 8 da.

WIDTH_CODEWORD

Zenbaki osoa Bai

Dagokion kode hitzaren zabalera zehazten du. Baliozko balioak 6tik 72ra bitartekoak dira, 9, 17, 33 eta 65 izan ezik. Baztertzen badira, balio lehenetsia 13 da.

LPM_PIPELINE

Zenbaki osoa

Zirkuituaren kanalizazioa zehazten du. Balioak 0tik 2ra dira. Balioa 0 bada, atakak ez dira erregistratzen. Balioa 1 bada, irteerako atakak erregistratzen dira. Balioa 2 bada, sarrerako eta irteerako atakak erregistratzen dira. Baztertzen bada, balio lehenetsia 0 da.

7.10. Deskodetzailearen parametroak

Hurrengo taulan ALTEC deskodetzailearen IP oinarrizko parametroak zerrendatzen dira.

27. taula. ALTEC deskodetzailearen parametroak

WIDTH_DATAWORD parametroaren izena

Idatzi Integer

Beharrezkoa

Deskribapena

Bai

Datu gordinaren zabalera zehazten du. Balioak 2 eta 64 bitartekoak dira

balio lehenetsia 8 da.

WIDTH_CODEWORD

Zenbaki osoa

Bai

Dagokion kode hitzaren zabalera zehazten du. Balioak 6 dira

72ra, 9, 17, 33 eta 65 izan ezik. Salbatuz gero, balio lehenetsia

13 da.

LPM_PIPELINE

Zenbaki osoa

Ez

Zirkuituaren erregistroa zehazten du. Balioak 0tik 2ra dira. Bada

balioa 0 da, ez da erregistrorik ezartzen. Balioa 1 bada,

irteera erregistratuta dago. Balioa 2 bada, bai sarrera eta bai

irteera erregistratuta daude. Balioa 2 baino handiagoa bada, gehigarria

erregistroak gehigarriaren irteeran inplementatzen dira

latentzia. Baztertzen bada, balio lehenetsia 0 da.

Sortu 'syn_e' ataka

Zenbaki osoa

Ez

Aktibatu parametro hau syn_e ataka bat sortzeko.

Bidali Iritzia

Intel FPGA Integer Arithmetic IP Cores Erabiltzailearen Gida 35

683490 | 2020.10.05/XNUMX/XNUMX Bidali iritzia

8. Intel FPGA Multiply Adder IP Core

9. irudia.

Intel FPGA Multiply Adder (Intel Stratix 10, Intel Arria 10 eta Intel Cyclone 10 GX gailuak) edo ALTERA_MULT_ADD (Arria V, Stratix V eta Cyclone V gailuak) IP nukleoak biderkatzaile-batzailea ezartzeko aukera ematen du.

Hurrengo irudian Intel FPGA Multiply Adder edo ALTERA_MULT_ADD IP nukleoaren atakak erakusten dira.

Intel FPGA Multiply Adder edo ALTERA_MULT_ADD Portuak

Intel FPGA Multiply Adder edo 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 katea[]

scanouta[] emaitza[]

aclr0 aclr1

inst
Biderkatzaile-batzaile batek sarrera bikoteak onartzen ditu, balioak elkarrekin biderkatzen ditu eta, ondoren, beste bikote guztien produktuak gehitzen edo kentzen ditu.
Sarrerako datu-zabalera guztiak 9 biteko zabalera edo txikiagoak badira, funtzioak 9 x 9 biteko sarrerako biderkatzailearen konfigurazioa erabiltzen du DSP blokean 9 x 9 konfigurazioa onartzen duten gailuetarako. Hala ez bada, DSP blokeak 18 × 18 biteko sarrerako biderkatzaileak erabiltzen ditu 10 bit eta 18 bit arteko zabalerak dituzten datuak prozesatzeko. Diseinu batean Intel FPGA Multiply Adder edo ALTERA_MULT_ADD IP nukleo anitz gertatzen badira, funtzioak honela banatuko dira.

Intel Corporation. Eskubide guztiak erreserbatuak. Intel, Intel logotipoa eta beste Intel marka Intel Corporation edo bere filialen marka komertzialak dira. Intel-ek bere FPGA eta erdieroaleen produktuen errendimendua bermatzen du uneko zehaztapenekin, Intel-en berme estandarraren arabera, baina edozein unetan edozein produktu eta zerbitzutan aldaketak egiteko eskubidea gordetzen du jakinarazi gabe. Intel-ek ez du bere gain hartzen hemen deskribatutako edozein informazio, produktu edo zerbitzuren aplikazio edo erabileratik eratorritako erantzukizunik edo erantzukizunik, Intel-ek idatziz berariaz hitzartutakoa izan ezik. Intel-eko bezeroei gomendatzen zaie gailuaren zehaztapenen azken bertsioa eskuratzea argitaratutako edozein informaziotan oinarritu aurretik eta produktu edo zerbitzuen eskaerak egin aurretik. *Beste izen eta markak beste batzuen jabetza direla erreklamatu daitezke.

ISO 9001:2015 Erregistratua

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05/XNUMX/XNUMX
Ahalik eta DSP bloke ezberdin asko bloke horietara bideratzea malguagoa izan dadin. DSP bloke bakoitzeko biderkatzaile gutxiagok blokean bideratze-aukera gehiago ahalbidetzen ditu gailurako gainerako bideak gutxituz.
Seinale hauetarako erregistroak eta kanalizazio-erregistro gehigarriak ere jartzen dira DSP blokearen barruan: · Datuen sarrera · Hautaketa sinatuta edo sinatu gabe · Hautaketa gehitu edo kendu · Biderkatzaileen produktuak
Irteerako emaitzaren kasuan, lehen erregistroa DSP blokean jartzen da. Hala ere, latentzia gehigarriko erregistroak bloketik kanpoko elementu logikoetan jartzen dira. DSP blokearen periferikoek, biderkagailurako datu-sarrerak, kontrol-seinalearen sarrerak eta gehigailuaren irteerak barne, bideratze arrunta erabiltzen dute gainerako gailuarekin komunikatzeko. Funtzioko konexio guztiek bideratze dedikatua erabiltzen dute DSP blokearen barruan. Bideratze dedikatu honek aldaketa-erregistro-kateak barne hartzen ditu biderkatzaile baten erregistratutako sarrerako datuak biderkatzaile batetik aldameneko biderkatzaile batera aldatzeko aukera hautatzen duzunean.
Stratix V eta Arria V gailu serieetako edozein DSP blokeei buruzko informazio gehiago lortzeko, ikusi dagozkien eskuliburuetako DSP blokeen kapitulua Literatura eta Dokumentazio Teknikoa orrian.
Lotutako informazioa AN 306: FPGA gailuetan biderkatzaileak ezartzea
Intel FPGA gailuetan DSP eta memoria blokeak erabiliz biderkatzaileak ezartzeari buruzko informazio gehiago eskaintzen du.
8.1. Ezaugarriak
Intel FPGA Multiply Adder edo ALTERA_MULT_ADD IP nukleoak ezaugarri hauek eskaintzen ditu: · Biderkatzaile bat sortzen du bi konplexuen biderketa eragiketak egiteko.
zenbakiak Oharra: jatorriz onartzen den tamaina baino biderkagaiak eraikitzean baliteke/
DSP blokeen kaskadaren ondoriozko errendimendu-eragina izango da. · 1 biteko datu-zabalerak onartzen ditu · Sinatutako eta sinatu gabeko datuen irudikapen formatua onartzen du · Sarrerako latentzia konfiguragarriarekin pipelining onartzen du · Sinatutako eta sinatu gabeko datuen euskarria dinamikoki aldatzeko aukera eskaintzen du. aukerako garbiketa asinkronoa eta sinkronoa eta erlojua gaitzeko sarrerako atakak · Atzerapen sistolikoaren erregistro modua onartzen du · Aurre-bagatzailea onartzen du biderkatzaile bakoitzeko 256 aurrekarga koefizienteekin · Aurre-karga konstantea onartzen du metagailuaren feedbacka osatzeko

Bidali Iritzia

Intel FPGA Integer Arithmetic IP Cores Erabiltzailearen Gida 37

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05/XNUMX/XNUMX

8.1.1. Aurre-bagatzailea
Aurre-bagatzailearekin, batuketak edo kenketak biderkatzailea elikatu aurretik egiten dira.
Aurrez gehitzeko bost modu daude: · Modu sinplea · Koefiziente modua · Sarrera modua · Karratu modua · Konstante modua

Oharra:

Aurre-bagatzailea erabiltzen denean (aurre-bagatzailea koefizientea/sarrera/karratu modua), biderkatzailearen datu-sarrera guztiek erloju-ezarpen bera izan behar dute.

8.1.1.1. Aurre-bagatzailea modu sinplea

Modu honetan, bi eragigaiak sarrerako ataketatik eratortzen dira eta aurre-bagatzailea ez da erabiltzen edo baztertzen. Hau da modu lehenetsia.

10. Irudia Batitzaile aurreko modu sinplea
a0 b0

Mult0

emaitza

8.1.1.2. Batitzaile aurreko koefiziente modua
Modu honetan, eragiketa biderkatzaile bat aurre-bagatzailetik eratortzen da, eta beste eragiketa barneko koefizienteen biltegiratzetik. Koefizienteen biltegiratzeak aurrez ezarritako 8 konstante ahalbidetzen ditu. Koefiziente hautatzeko seinaleak coefsel[0..3] dira.
Modu hau hurrengo ekuazioan adierazten da.

Jarraian, biderkatzaile baten aurreko batutzailearen koefizientearen modua erakusten da.

11. Irudia Batitzailearen aurreko koefizientearen modua

Iragarkia

a0

Mult0

+/-

emaitza

b0

coefsel0 koef

Intel FPGA Integer Arithmetic IP Cores Erabiltzailearen Gida 38

Bidali Iritzia

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05/XNUMX/XNUMX
8.1.1.3. Aurre-bagatzailea Sarrera-modua Modu honetan, biderkatzaile-eragigai bat aurre-bagatzailetik eratortzen da, eta beste eragigaia datac[] sarrerako atakatik. Modu hau hurrengo ekuazioan adierazten da.

Jarraian, biderkatzaile baten aurreko gehigarriaren sarrera modua erakusten da.

12. Irudia. Batatzailearen aurreko sarrera modua
a0 b0

Mult0

+/-

emaitza

c0

8.1.1.4. Batatzailearen aurreko karratu modua Modu hau hurrengo ekuazioan adierazten da.

Jarraian, bi biderkatzaileren aurreko batutzaile karratu modua erakusten da.

13. Irudia Batitzaile aurreko karratu modua
a0 b0

Mult0

+/-

emaitza

8.1.1.5. Aurre-bagatzailea modu konstantea
Modu honetan, eragigai biderkatzaile bat sarrerako atakatik eratortzen da, eta beste eragigaia barneko koefizienteen biltegiratzetik. Koefizienteen biltegiratzeak aurrez ezarritako 8 konstante ahalbidetzen ditu. Koefiziente hautatzeko seinaleak coefsel[0..3] dira.
Modu hau hurrengo ekuazioan adierazten da.

Bidali Iritzia

Intel FPGA Integer Arithmetic IP Cores Erabiltzailearen Gida 39

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05/XNUMX/XNUMX

Ondorengo irudiak biderkatzaile baten aurreko batutzailearen konstante modua erakusten du.

14. Irudia Batitzailearen aurreko modua
a0

Mult0

emaitza

koefsel0
koef
8.1.2. Atzerapen sistolikoaren erregistroa
Arkitektura sistolikoan, sarrerako datuak datu-buffer gisa jarduten duten erregistro-jauzi batean sartzen dira. Erregistro bakoitzak sarrera s bat ematen duample biderkatzaile bati dagokion koefizienteaz biderkatzen den. Kate batutzaileak biderkagailuaren pixkanaka konbinatutako emaitzak eta chainin[] sarrerako atakatik aurrez erregistratutako emaitza gordetzen ditu azken emaitza osatzeko. Biderkatze-gehiketa elementu bakoitza ziklo bakar batez atzeratu behar da, emaitzak elkarrengandik egokiro sinkroniza daitezen. Ondoz ondoko atzerapen bakoitza koefizienteen memoria eta dagozkien biderketa-gehiketa elementuen datu-bufferra zuzentzeko erabiltzen da. Adibidezample, atzerapen bakarra bigarren biderketa gehitu elementuarentzat, bi atzerapen hirugarren biderketa-gehiketa elementuarentzat, eta abar.
15. Irudia Erregistro Sistolikoak
Erregistro sistolikoak

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) s sarrerako korronte jarraitu baten emaitzak adierazten dituamples eta y(t)
sarrera s multzo baten batuketa adierazten duamples, eta denboran, haien bidez biderkatu
dagozkien koefizienteak. Sarrera eta irteerako emaitzak ezkerretik eskuinera doaz. c(0)tik c(N-1) koefizienteak adierazten ditu. Atzerapen sistolikoaren erregistroak S-1 bidez adierazten dira, eta 1ak erlojuaren atzerapen bakarra adierazten du. Atzerapen sistolikoaren erregistroak hemen gehitzen dira
kanalizaziorako sarrerak eta irteerak emaitzak bermatzen dituen moduan
eragiketa biderkatzailea eta metatutako batuketak sinkronizatuta geratzen dira. Prozesatzeko elementu hau
erreplikatzen da iragazketa-funtzioa kalkulatzen duen zirkuitu bat osatzeko. Funtzio hau da
hurrengo ekuazioan adierazita.

Intel FPGA Integer Arithmetic IP Cores Erabiltzailearen Gida 40

Bidali Iritzia

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05/XNUMX/XNUMX

N metagailuan sartu diren datu-ziklo kopurua adierazten du, y(t) t denboran irteera, A(t) t denboran sarrera eta B(i) koefizienteak. Ekuazioaren t eta i denbora-une jakin bati dagozkio, beraz, s irteera kalkulatzekoample y(t) t denboran, s sarrerako talde batampdenboran N puntu ezberdinetan, edo A(n), A(n-1), A(n-2), … A(n-N+1) behar dira. N sarrerako s taldeaampleak N koefizienteez biderkatu eta batzen dira y azken emaitza sortzeko.
Erregistro sistolikoaren arkitektura sum-of-2 eta sum-of-4 moduetarako soilik dago erabilgarri. Erregistro sistolikoaren arkitektura modu bietarako, lehen kate-seinalea 0-ra lotu behar da.
Hurrengo irudiak 2 biderkatzaileren atzerapen-erregistro sistolikoaren ezarpena erakusten du.
16. irudia. Atzerapen sistolikoaren erregistroa 2 biderkatzaileren ezarpena
katea

a0

Mult0

+/-

b0

a1

Mult1

+/-

b1

emaitza
Bi biderkatzaileen batura hurrengo ekuazioan adierazten da.
Hurrengo irudiak 4 biderkatzaileren atzerapen-erregistro sistolikoaren ezarpena erakusten du.

Bidali Iritzia

Intel FPGA Integer Arithmetic IP Cores Erabiltzailearen Gida 41

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05/XNUMX/XNUMX

17. irudia. Atzerapen sistolikoaren erregistroa 4 biderkatzaileren ezarpena
katea

a0

Mult0

+/-

b0

a1

Mult1

+/-

b1

a2

Mult2

+/-

b2

a3

Mult3

+/-

b3

emaitza
Lau biderkatzaileren batura hurrengo ekuazioan adierazten da. 18. irudia. 4 biderkatzaileen batura
Jarraian abantaila zerrendatzen datagErregistro sistolikoaren ezarpenak: · DSP baliabideen erabilera murrizten du · DSP blokean mapaketa eraginkorra ahalbidetzen du kate gehigarriaren egitura erabiliz.

Intel FPGA Integer Arithmetic IP Cores Erabiltzailearen Gida 42

Bidali Iritzia

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05/XNUMX/XNUMX

8.1.3. Aurre-karga konstantea
Aurrekargako konstanteak metagailuaren eragiketa kontrolatzen du eta metagailuaren feedbacka osatzen du. Baliozko LOADCONST_VALUE 0 bitartekoa da. Balio konstantea 64N berdina da, non N = LOADCONST_VALUE. LOADCONST_VALUE 2-n ezartzen denean, balio konstantea 64-ren berdina da. Funtzio hau alboratutako biribilketa gisa erabil daiteke.
Hurrengo irudian karga aurretiko konstantearen ezarpena erakusten da.
19. irudia. Karga aurreko konstantea

Metagailuaren iritzia

konstantea

a0

Mult0

+/-

b0

a1

Mult1

+/b1

emaitza

accum_sload sload_accum

Ikusi IP nukleo hauei beste biderkatzaileen inplementazioetarako: · ALTMULT_ACCUM · ALTMEMMULT · LPM_MULT
8.1.4. Metagailu bikoitza
Metagailu bikoitzeko funtzioak erregistro gehigarri bat gehitzen du metagailuaren feedback-bidean. Metagailu bikoitzeko erregistroak irteerako erregistroari jarraitzen dio, erlojua, erlojuaren gaitzea eta aclr barne. Metagailu-erregistro gehigarriak ziklo bateko atzerapenarekin emaitza itzultzen du. Ezaugarri honek bi metagailu-kanal edukitzea ahalbidetzen du baliabide-zenbaketa berdinarekin.
Hurrengo irudian metagailu bikoitzaren ezarpena erakusten da.

Bidali Iritzia

Intel FPGA Integer Arithmetic IP Cores Erabiltzailearen Gida 43

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05/XNUMX/XNUMX

20. Irudia Metagailu bikoitza

Metagailu bikoitzaren Erregistroa

Accumulator feedback-a

a0

Mult0

+/-

b0

a1

Mult1

+/b1

Irteera emaitza Irteera Erregistroa

8.2. Verilog HDL prototipoa
Intel FPGA Multiply Adder edo ALTERA_MULT_ADD Verilog HDL prototipoa aurki dezakezu file (altera_mult_add_rtl.v) atalean liburutegiakmegafuntzioen direktorioa.
8.3. VHDL osagaien adierazpena
VHDL osagaien deklarazioa altera_lnsim_components.vhd-en dago librariesvhdl altera_lnsim direktorioa.
8.4. VHDL LIBRARY_USE Adierazpena
VHDL LIBRARY-USE adierazpena ez da beharrezkoa VHDL osagaien adierazpena erabiltzen baduzu.
LIBURUTEGIA altera_mf; ERABILI altera_mf.altera_mf_components.all;

8.5. Seinaleak

Ondorengo tauletan Multiply Adder Intel FPGA IP edo ALTERA_MULT_ADD IP nukleoaren sarrera eta irteera seinaleak zerrendatzen dira.

28. taula. Biderkatu Adder Intel FPGA IPor ALTERA_MULT_ADD Sarrera-seinaleak

Seinalea

Beharrezkoa

Deskribapena

dataa_0[]/dataa_1[]/

Bai

dataa_2[]/dataa_3[]

Datuen sarrera biderkatzaileari. Sarrerako ataka [NUMBER_OF_MULTIPLIERS * WIDTH_A – 1 … 0] zabalera
jarraitu…

Intel FPGA Integer Arithmetic IP Cores Erabiltzailearen Gida 44

Bidali Iritzia

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05/XNUMX/XNUMX

Seinalearen datuakb_0[]/datab_1[]/ datab_2[]/datab_3[] datac_0[] /datac_1[]/ datac_2[]/datac_3[] clock[1:0] aclr[1:0] sclr[1:0] ena [1:0] signa
zeinu b
eskanina[] accum_sload

Beharrezkoa Bai Ez
Ez Ez Ez Ez Ez
Ez
Ez Ez

Deskribapena
IP honen simulazio-ereduak seinale hauetarako sarrera-balio zehaztugabea (X) onartzen du. Seinale horiei X balioa ematen diezunean, X balioa irteerako seinaleetan hedatzen da.
Datuen sarrera biderkatzaileari. Sarrerako seinalea [NUMBER_OF_MULTIPLIERS * WIDTH_B – 1 … 0] zabala IP honen simulazio-ereduak seinale hauetarako zehaztu gabeko sarrera-balioa (X) onartzen du. Seinale horiei X balioa ematen diezunean, X balioa irteerako seinaleetan hedatzen da.
Datuen sarrera biderkatzaileari. Sarrera-seinalea [NUMBER_OF_MULTIPLIERS * WIDTH_C – 1, … 0] zabala Hautatu INPUT Hautatu preadder modua parametrorako seinale hauek gaitzeko. IP honen simulazio-ereduak seinale hauetarako sarrera-balio zehaztugabea (X) onartzen du. Seinale horiei X balioa ematen diezunean, X balioa irteerako seinaleetan hedatzen da.
Erlojuaren sarrerako ataka dagokion erregistrora. Seinale hau IP nukleoko edozein erregistrok erabil dezake. IP honen simulazio-ereduak seinale hauetarako sarrera-balio zehaztugabea (X) onartzen du. Seinale horiei X balioa ematen diezunean, X balioa irteerako seinaleetan hedatzen da.
Sarrera garbi asinkronoa dagokion erregistroan. IP honen simulazio-ereduak seinale hauetarako sarrera-balio zehaztugabea (X) onartzen du. Seinale horiei X balioa ematen diezunean, X balioa irteerako seinaleetan hedatzen da.
Sarrera garbi sinkronikoa dagokion erregistroan. IP honen simulazio-ereduak X sarrera-balio zehaztugabea onartzen du seinale horietarako. Seinale horiei X balioa ematen diezunean, X balioa irteerako seinaleetan hedatzen da
Gaitu seinalea sarrera dagokion erregistroan. IP honen simulazio-ereduak seinale hauetarako sarrera-balio zehaztugabea (X) onartzen du. Seinale horiei X balioa ematen diezunean, X balioa irteerako seinaleetan hedatzen da.
A sarrera biderkatzailearen zenbakizko irudikapena zehazten du. Seinalearen seinalea altua bada, biderkatzaileak A sarrerako biderkatzailearen seinalea zenbaki sinatu gisa tratatzen du. Seinalearen seinalea baxua bada, biderkatzaileak A sarrerako seinalea sinatu gabeko zenbaki gisa tratatzen du. Hautatu ALDAGAIA Zein da Multipliers A sarrera-parametroaren irudikapen formatua seinale hau gaitzeko. IP honen simulazio-ereduak seinale honen sarrera-balio zehaztugabea (X) onartzen du. Sarrera honi X balioa ematen diozunean, X balioa irteerako seinaleetan hedatzen da.
Biderkatzailearen sarrerako B seinalearen zenbakizko irudikapena zehazten du. Signb seinalea altua bada, biderkatzaileak biderkatzailearen sarrerako B seinalea sinatutako bi osagarri-zenbaki gisa tratatzen du. Signb seinalea baxua bada, biderkatzaileak biderkatzailearen sarrerako B seinalea sinatu gabeko zenbaki gisa tratatzen du. IP honen simulazio-ereduak seinale honen sarrera-balio zehaztugabea (X) onartzen du. Sarrera honi X balioa ematen diozunean, X balioa irteerako seinaleetan hedatzen da.
A eskaneatzeko katearen sarrera. Sarrerako seinalea [WIDTH_A – 1, … 0] zabala. INPUT_SOURCE_A parametroak SCANA balioa duenean, scanina[] seinalea behar da.
Metagailuaren balioa konstantea den modu dinamikoan zehazten du. accum_sload seinalea baxua bada, orduan biderkatzailearen irteera metagailuan kargatzen da. Ez erabili accum_sload eta sload_accum aldi berean.
jarraitu…

Bidali Iritzia

Intel FPGA Integer Arithmetic IP Cores Erabiltzailearen Gida 45

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05/XNUMX/XNUMX

Seinalea sload_accum
katea[] addnsub1
gehigarri3
coefsel0[] coefsel1[] coefsel2[] coefsel3[]

Beharrezko zenbakia
Ez Ez
Ez
Ez Ez Ez Ez

Deskribapena
IP honen simulazio-ereduak seinale honen sarrera-balio zehaztugabea (X) onartzen du. Sarrera honi X balioa ematen diozunean, X balioa irteerako seinaleetan hedatzen da.
Metagailuaren balioa konstantea den modu dinamikoan zehazten du. Sload_accum seinalea altua bada, biderkatzailearen irteera metagailura kargatzen da. Ez erabili accum_sload eta sload_accum aldi berean. IP honen simulazio-ereduak seinale honen sarrera-balio zehaztugabea (X) onartzen du. Sarrera honi X balioa ematen diozunean, X balioa irteerako seinaleetan hedatzen da.
Batitzailearen emaitza sarrera-busa aurreko s-tiktage. Sarrerako seinalea [WIDTH_CHAININ – 1, … 0] zabala.
Egin batuketak edo kenketak lehen biderkatzaileen bikotearen irteerak. Sarrera 1 addnsub1 seinaleari lehen biderkatzaileen irteerak gehitzeko. Sartu 0 addnsub1 seinaleari irteerak kentzeko lehen biderkatzaileen bikoteari. IP honen simulazio-ereduak seinale honen sarrera-balio zehaztugabea (X) onartzen du. Sarrera honi X balioa ematen diozunean, X balioa irteerako seinaleetan hedatzen da.
Egin batuketak edo kenketak lehen biderkatzaileen bikotearen irteerak. Sarrera 1 addnsub3 seinalera bigarren biderkatzaile bikotearen irteerak gehitzeko. Sartu 0 addnsub3 seinaleari irteerak kentzeko lehen biderkatzaileen bikoteari. IP honen simulazio-ereduak seinale honen sarrera-balio zehaztugabea (X) onartzen du. Sarrera honi X balioa ematen diozunean, X balioa irteerako seinaleetan hedatzen da.
Koefizientearen sarrerako seinalea[0:3] lehen biderkatzaileari. IP honen simulazio-ereduak seinale honen sarrera-balio zehaztugabea (X) onartzen du. Sarrera honi X balioa ematen diozunean, X balioa irteerako seinaleetan hedatzen da.
Koefizientearen sarrerako seinalea[0:3]bigarren biderkatzaileari. IP honen simulazio-ereduak seinale honen sarrera-balio zehaztugabea (X) onartzen du. Sarrera honi X balioa ematen diozunean, X balioa irteerako seinaleetan hedatzen da.
Koefizientearen sarrerako seinalea[0:3]hirugarren biderkatzaileari. IP honen simulazio-ereduak seinale honen sarrera-balio zehaztugabea (X) onartzen du. Sarrera honi X balioa ematen diozunean, X balioa irteerako seinaleetan hedatzen da.
Koefizientearen sarrerako seinalea [0:3] laugarren biderkatzaileari. IP honen simulazio-ereduak seinale honen sarrera-balio zehaztugabea (X) onartzen du. Sarrera honi X balioa ematen diozunean, X balioa irteerako seinaleetan hedatzen da.

29. taula. Biderkatu Adder Intel FPGA IP Irteera Seinaleak

Seinalea

Beharrezkoa

Deskribapena

emaitza []

Bai

Biderkatzailearen irteerako seinalea. Irteerako seinalea [WIDTH_RESULT – 1 … 0] zabala

IP honen simulazio-ereduak irteera-balio zehaztugabea onartzen du (X). Sarrera gisa X balioa ematen duzunean, X balioa hedatzen da seinale honetan.

eskanuta []

Ez

Eskaneatu katearen irteera A. Irteerako seinalea [WIDTH_A – 1..0] zabal.

Aukeratu 2 baino gehiago biderkatzaile-kopuruetarako eta aukeratu Eskaneatu katearen sarrera-Zein da parametrora konektatutako biderkatzailearen A sarrera seinale hau gaitzeko.

Intel FPGA Integer Arithmetic IP Cores Erabiltzailearen Gida 46

Bidali Iritzia

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05/XNUMX/XNUMX

8.6. parametroak

8.6.1. Orokorra fitxa

30. taula Orokorra fitxa

Parametroa

Sortutako IP parametroa

Balioa

Zein da biderkatzaile kopurua?

m_kopurua 1 – 4 biderkatzaile

Zenbateko zabalera izan behar dute A width_a sarrera-busek?

1-256

Zenbateko zabalera izan behar dute B width_b sarrera-busek?

1-256

Zenbaterainokoa izan behar du 'emaitza' irteera-busak?

zabalera_emaitza

1-256

Sortu erlazionatutako erloju-gaikuntza bat erloju bakoitzeko

gui_associate On d_clock_enbl Off e

8.6.2. Modu gehigarriak fitxa

31. taula. Modu gehigarriak fitxa

Parametroa

Sortutako IP parametroa

Balioa

Irteeren konfigurazioa

Erregistratu gehigarri unitatearen irteera

gui_output_re Aktibatuta

gister

Desaktibatuta

Zein da erlojuaren sarrerarako iturria?

gui_output_re gister_clock

Erlojua0 Erlojua1 Erlojua2

Zein da sarrera argi asinkronoaren iturria?

gui_output_re gister_aclr

EZER ACLR0 ACLR1

Zein da sarrera argi sinkronoaren iturria?

gui_output_re gister_sclr

EZER SCLR0 SCLR1

Gehitzaileen Eragiketa

Zein eragiketa egin behar da lehen biderkatzaileen irteeretan?

gui_multiplicator 1_direction

GEHITU, AZPI, ALDAGAIA

Balio lehenetsia 1
16

Deskribapena
Batu beharreko biderkagai kopurua. Balioak 1 eta 4 artekoak dira. Zehaztu datua[] atakaren zabalera.

16

Zehaztu datub[] atakaren zabalera.

32

Zehaztu emaitza[] atakaren zabalera.

Desaktibatuta

Hautatu aukera hau erlojua gaitzeko

erloju bakoitzeko.

Balio lehenetsia

Deskribapena

Off Erlojua0
EZER EZ

Hautatu aukera hau gehigarri moduluaren irteera-erregistroa gaitzeko.
Hautatu Clock0 , Clock1 edo Clock2 irteera-erregistroetarako erloju-iturria gaitzeko eta zehazteko. Parametro hau gaitzeko, batutzailearen unitatearen Erregistratu irteera hautatu behar duzu.
Gehitzaileen irteera-erregistrorako iturri garbi asinkronoa zehazten du. Parametro hau gaitzeko, batutzailearen unitatearen Erregistratu irteera hautatu behar duzu.
Gehitzaileen irteera-erregistrorako iturri garbi sinkronoa zehazten du. Parametro hau gaitzeko, batutzailearen unitatearen Erregistratu irteera hautatu behar duzu.

GEHITU

Hautatu batuketa edo kenketa eragiketa lehenengo eta bigarren biderkatzaileen arteko irteeretarako egiteko.
· Hautatu GEHITU gehiketa eragiketa egiteko.
· Hautatu SUB kenketa eragiketa egiteko.
· Hautatu ALDAGAIA batuketa/kenketa kontrol dinamikorako addnsub1 ataka erabiltzeko.
jarraitu…

Bidali Iritzia

Intel FPGA Integer Arithmetic IP Cores Erabiltzailearen Gida 47

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05/XNUMX/XNUMX

Parametroa

Sortutako IP parametroa

Balioa

Erregistratu 'addnsub1' sarrera

gui_addnsub_ On multiplier_reg Off ister1

Zein da erlojuaren sarrerarako iturria?

gui_addnsub_ multiplier_reg ister1_clock

Erlojua0 Erlojua1 Erlojua2

Zein da sarrera argi asinkronoaren iturria?

gui_addnsub_ multiplier_aclr 1

EZER ACLR0 ACLR1

Zein da sarrera argi sinkronoaren iturria?

gui_addnsub_ multiplier_sclr 1

EZER SCLR0 SCLR1

Zein eragiketa egin behar da bigarren biderkatzaile bikotearen irteeretan?

gui_multiplicator 3_direction

GEHITU, AZPI, ALDAGAIA

Erregistratu 'addnsub3' sarrera

gui_addnsub_ On multiplier_reg Off ister3

Zein da erlojuaren sarrerarako iturria?

gui_addnsub_ multiplier_reg ister3_clock

Erlojua0 Erlojua1 Erlojua2

Balio lehenetsia
Desaktibatuta Erlojua0 EZER EZ GEHITU
Off Erlojua0

Deskribapena
ALDAGAIA balioa hautatzen denean: · Gidatu addnsub1 seinalea altuera
batuketa eragiketa. · Gidatu addnsub1 seinalea baxura
kenketa eragiketa. Bi biderkatzaile baino gehiago hautatu behar dituzu parametro hau gaitzeko.
Hautatu aukera hau addnsub1 atakarako sarrera-erregistroa gaitzeko. Parametro hau gaitzeko, ALDAGAIA hautatu behar duzu zer eragiketa egin behar den lehen biderkatzaileen irteeretan.
Hautatu Clock0 , Clock1 edo Clock2 addnsub1 erregistrorako sarrerako erlojuaren seinalea zehazteko. Parametro hau gaitzeko, Erregistratu 'addnsub1' sarrera hautatu behar duzu.
addnsub1 erregistrorako iturri garbi asinkronoa zehazten du. Parametro hau gaitzeko, Erregistratu 'addnsub1' sarrera hautatu behar duzu.
addnsub1 erregistrorako iturri garbi sinkronoa zehazten du. Parametro hau gaitzeko, Erregistratu 'addnsub1' sarrera hautatu behar duzu.
Hautatu batuketa edo kenketa eragiketa hirugarren eta laugarren biderkatzaileen arteko irteeran egiteko. · Hautatu GEHITU gehiketa egiteko
operazioa. · Hautatu SUB kenketa egiteko
operazioa. · Hautatu ALDAGAIA addnsub1 erabiltzeko
batuketa/kenketa kontrol dinamikorako ataka. ALDAGAIA balioa hautatzen denean: · Addnsub1 seinalea altuera eraman gehiketa funtzionatzeko. · Gidatu addnsub1 seinalea baxura kenketa funtzionatzeko. 4 balioa hautatu behar duzu Zein da biderkatzaile kopurua? parametro hau gaitzeko.
Hautatu aukera hau addnsub3 seinalerako sarrera-erregistroa gaitzeko. Parametro hau gaitzeko, ALDAGAIA hautatu behar duzu bigarren biderkagaien irteeretan zer eragiketa egin behar den.
Hautatu Clock0 , Clock1 edo Clock2 addnsub3 erregistrorako sarrerako erlojuaren seinalea zehazteko. Parametro hau gaitzeko Erregistratu 'addnsub3' sarrera hautatu behar duzu.
jarraitu…

Intel FPGA Integer Arithmetic IP Cores Erabiltzailearen Gida 48

Bidali Iritzia

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05/XNUMX/XNUMX

Parametroa
Zein da sarrera argi asinkronoaren iturria?

Sortutako IP parametroa

Balioa

gui_addnsub_ multiplier_aclr 3

EZER ACLR0 ACLR1

Zein da sarrera argi sinkronoaren iturria?

gui_addnsub_ multiplier_sclr 3

EZER SCLR0 SCLR1

Polaritatea gaitu `use_subadd'

gui_use_subn Aktibatuta

gehitu

Desaktibatuta

8.6.3. Biderkatzaileak fitxa

32. taula. Biderkatzaileak fitxa

Parametroa

Sortutako IP parametroa

Balioa

Zer da

gui_represent

irudikapen formatua ation_a

Multipliers A inputetarako?

SINATU, SINATU GABE, ALDAGAIA

Erregistratu `signa' sarrera

gui_register_s Aktibatuta

igna

Desaktibatuta

Zein da erlojuaren sarrerarako iturria?

gui_register_s igna_clock

Erlojua0 Erlojua1 Erlojua2

Zein da sarrera argi asinkronoaren iturria?

gui_register_s igna_aclr

EZER ACLR0 ACLR1

Zein da sarrera argi sinkronoaren iturria?

gui_register_s igna_sclr

EZER SCLR0 SCLR1

Zer da

gui_represent

irudikapen formatua ation_b

Multipliers B sarreretarako?

SINATU, SINATU GABE, ALDAGAIA

Erregistratu `signb' sarrera

gui_register_s Aktibatuta

ignb

Desaktibatuta

Balio lehenetsia EZER
EZER

Deskribapena
addnsub3 erregistrorako iturri garbi asinkronoa zehazten du. Parametro hau gaitzeko, Erregistratu 'addnsub3' sarrera hautatu behar duzu.
addnsub3 erregistrorako iturri garbi sinkronoa zehazten du. Parametro hau gaitzeko Erregistratu 'addnsub3' sarrera hautatu behar duzu.

Desaktibatuta

Hautatu aukera hau funtzioa alderantzikatzeko

addnsub sarrerako ataka.

Gidatu gehigarria altuera kenketa eragiketa egiteko.

Gidatu addnsub baxura gehitzeko eragiketa egiteko.

Balio lehenetsia

Deskribapena

UNSIGNED Zehaztu A sarrera biderkatzailearen irudikapen formatua.

Desaktibatuta

Hautatu aukera hau seinalea gaitzeko

erregistratu.

Aldagaiaren balioa hautatu behar duzu. Zein da Multipliers A sarreretarako irudikapen formatua? aukera hau gaitzeko parametroa.

Erlojua0

Hautatu Clock0 , Clock1 edo Clock2 seinale erregistrorako sarrerako erlojuaren seinalea gaitzeko eta zehazteko.
Parametro hau gaitzeko Erregistratu `signa' sarrera hautatu behar duzu.

EZER

Seina erregistrorako iturri garbi asinkronoa zehazten du.
Parametro hau gaitzeko Erregistratu `signa' sarrera hautatu behar duzu.

EZER

Seina erregistrorako iturri garbi sinkronoa zehazten du.
Parametro hau gaitzeko Erregistratu `signa' sarrera hautatu behar duzu.

SINATU GABE Zehaztu B biderkatzailearen sarrerarako irudikapen formatua.

Desaktibatuta

Hautatu aukera hau Signb gaitzeko

erregistratu.

jarraitu…

Bidali Iritzia

Intel FPGA Integer Arithmetic IP Cores Erabiltzailearen Gida 49

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05/XNUMX/XNUMX

Parametroa

Sortutako IP parametroa

Balioa

Balio lehenetsia

Zein da erlojuaren sarrerarako iturria?

gui_register_s ignb_clock

Erlojua0 Erlojua1 Erlojua2

Erlojua0

Zein da sarrera argi asinkronoaren iturria?

gui_register_s ignb_aclr

EZER ACLR0 ACLR1

Zein da sarrera argi sinkronoaren iturria?

gui_register_s ignb_sclr

EZER SCLR0 SCLR1

Sarreraren konfigurazioa
Erregistratu biderkatzailearen A sarrera
Zein da erlojuaren sarrerarako iturria?

gui_input_reg Aktibatuta

ister_a

Desaktibatuta

gui_input_reg ister_a_clock

Erlojua0 Erlojua1 Erlojua2

EZER EZ
Off Erlojua0

Zein da sarrera argi asinkronoaren iturria?

gui_input_reg ister_a_aclr

EZER ACLR0 ACLR1

Zein da sarrera argi sinkronoaren iturria?

gui_input_reg ister_a_sclr

EZER SCLR0 SCLR1

Erregistratu biderkatzailearen B sarrera
Zein da erlojuaren sarrerarako iturria?

gui_input_reg Aktibatuta

ister_b

Desaktibatuta

gui_input_reg ister_b_clock

Erlojua0 Erlojua1 Erlojua2

EZER EZER EZ Erlojua desaktibatuta

Zein da sarrera argi asinkronoaren iturria?

gui_input_reg ister_b_aclr

EZER ACLR0 ACLR1

EZER

Zein da sarrera argi sinkronoaren iturria?

gui_input_reg ister_b_sclr

EZER SCLR0 SCLR1

EZER

Zertara dago konektatuta biderkatzailearen A sarrera?

gui_multiplier Biderkatzailea sarrera Biderkatzailea

_a_sarrera

Eskaneatu katearen sarrerako sarrera

Deskribapena
Balio ALDAGAIA hautatu behar duzu. Zein da Multipliers B sarreretarako irudikapen formatua? aukera hau gaitzeko parametroa.
Hautatu Erlojua0 , Erlojua1 edo Erlojua2 seinalearen erregistrorako sarrerako erlojuaren seinalea gaitzeko eta zehazteko. Parametro hau gaitzeko Erregistratu `signb' sarrera hautatu behar duzu.
Signb erregistrorako iturri garbi asinkronoa zehazten du. Parametro hau gaitzeko Erregistratu `signb' sarrera hautatu behar duzu.
Signb erregistrorako iturri garbi sinkronoa zehazten du. Parametro hau gaitzeko Erregistratu `signb' sarrera hautatu behar duzu.
Hautatu aukera hau sarrera-erregistroa gaitzeko datuen sarrera-buserako.
Hautatu Clock0 , Clock1 edo Clock2 datuen sarrerako buserako erregistroko sarrerako erlojuaren seinalea gaitzeko eta zehazteko. Parametro hau gaitzeko, biderkatzailearen A erregistratu sarrera hautatu behar duzu.
Datuen sarrerako buserako erregistro asinkronoaren iturri garbia zehazten du. Parametro hau gaitzeko, biderkatzailearen A erregistratu sarrera hautatu behar duzu.
Datu-sarrerako buserako erregistro-iturburu garbi sinkronoa zehazten du. Parametro hau gaitzeko, biderkatzailearen A erregistratu sarrera hautatu behar duzu.
Hautatu aukera hau datu-sarrerako buserako sarrera-erregistroa gaitzeko.
Hautatu Erlojua0 , Erlojua1 edo Erlojua2 datu-sarrerako buserako erregistroko sarrerako erlojuaren seinalea gaitzeko eta zehazteko. Parametro hau gaitzeko, biderkatzailearen B sarrera erregistratu hautatu behar duzu.
Datu-sarrera-buserako erregistro asinkronoaren iturri garbia zehazten du. Parametro hau gaitzeko, biderkatzailearen B sarrera erregistratu hautatu behar duzu.
Datu-sarrera-busaren erregistro-iturburu garbi sinkronoa zehazten du. Parametro hau gaitzeko, biderkatzailearen B sarrera erregistratu hautatu behar duzu.
Aukeratu biderkatzailearen A sarrerarako sarrera-iturria.
jarraitu…

Intel FPGA Integer Arithmetic IP Cores Erabiltzailearen Gida 50

Bidali Iritzia

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05/XNUMX/XNUMX

Parametroa

Sortutako IP parametroa

Balioa

Eskaneatu A Erregistroaren konfigurazioa

Erregistratu eskaneatu katearen irteera

gui_scanouta On

_erregistratu

Desaktibatuta

Zein da erlojuaren sarrerarako iturria?

gui_scanouta _register_cloc k

Erlojua0 Erlojua1 Erlojua2

Zein da sarrera argi asinkronoaren iturria?

gui_scanouta _register_aclr

EZER ACLR0 ACLR1

Zein da sarrera argi sinkronoaren iturria?

gui_scanouta _register_sclr

EZER SCLR0 SCLR1

8.6.4. Iragarkia fitxa

33. taula. Preadder fitxa

Parametroa

Sortutako IP parametroa

Balioa

Hautatu preadder modua

predder_mo de

SIMPLE, KOEF, SARRERA, KARAUA, KONSTANTUA

Balio lehenetsia

Deskribapena
Hautatu Sarrera biderkatzailea datuen sarrera-busa biderkatzailearen iturri gisa erabiltzeko. Hautatu Eskaneatu katearen sarrera eskaneatzeko sarrera-busa biderkatzailearen iturri gisa erabiltzeko eta eskaneatzeko irteera-busa gaitzeko. Parametro hau erabilgarri dago 2, 3 edo 4 hautatzen duzunean. Zein da biderkagai kopurua? parametroa.

Erlojua desaktibatuta0 EZER EZ

Hautatu aukera hau scanouta irteera-buserako irteera-erregistroa gaitzeko.
Scan chain input hautatu behar duzu Zertara konektatuta dago biderkatzailearen A sarrera? aukera hau gaitzeko parametroa.
Hautatu Erlojua0 , Erlojua1 edo Erlojua2 eskanutako irteera-buserako erregistroko sarrerako erlojuaren seinalea gaitzeko eta zehazteko.
Eskaneatu katearen parametroaren Erregistratu irteera aktibatu behar duzu aukera hau gaitzeko.
Scanouta irteera-busaren erregistro asinkronoaren iturri garbia zehazten du.
Eskaneatu katearen parametroaren Erregistratu irteera aktibatu behar duzu aukera hau gaitzeko.
Scanouta irteera-busaren erregistro-iturburu garbi sinkronoa zehazten du.
Eskaneatu katearen parametroaren Erregistratu irteera hautatu behar duzu aukera hau gaitzeko.

Balio lehenetsia
SINPLEA

Deskribapena
Preadder moduluaren funtzionamendu modua zehazten du. SIMPLE: Modu honek iragarlea saihesten du. Hau da modu lehenetsia. COEF: Modu honek preadder eta coefsel sarrera-busaren irteera erabiltzen du biderkatzailearen sarrera gisa. INPUT: Modu honek preadder eta datac sarrerako busaren irteera erabiltzen du biderkatzailearen sarrera gisa. SQUARE: Modu honek predikatzailearen irteera erabiltzen du biderkatzailearen sarrera gisa.
jarraitu…

Bidali Iritzia

Intel FPGA Integer Arithmetic IP Cores Erabiltzailearen Gida 51

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05/XNUMX/XNUMX

Parametroa

Sortutako IP parametroa

Balioa

Hautatu iragarkiaren norabidea

gui_preadder ADD,

_norabidea

AZPI

Zenbateko zabalera izan behar dute C width_c sarrera-busek?

1-256

Datu C Sarrera Erregistroaren konfigurazioa

Erregistratu datuen sarrera

gui_datac_inp Aktibatuta

ut_erregistratu

Desaktibatuta

Zein da erlojuaren sarrerarako iturria?

gui_datac_inp ut_register_cl ock

Erlojua0 Erlojua1 Erlojua2

Zein da sarrera argi asinkronoaren iturria?

gui_datac_inp ut_register_a clr

EZER ACLR0 ACLR1

Zein da sarrera argi sinkronoaren iturria?

gui_datac_inp ut_register_sc lr

EZER SCLR0 SCLR1

Koefizienteak
Zenbateko zabalera izan behar du koefaren zabalerak?

zabalera_koef

1-27

Koef Erregistroaren konfigurazioa

Erregistratu koefselaren sarrera

gui_coef_regi On

ster

Desaktibatuta

Zein da erlojuaren sarrerarako iturria?

gui_coef_regi ster_clock

Erlojua0 Erlojua1 Erlojua2

Balio lehenetsia
GEHITU
16

Deskribapena
KONSTANTUA: Modu honek datu-sarrerako bus bat erabiltzen ditu, aitzindaria saihestuta eta koefsel sarrera-busa biderkatzailearen sarrera gisa.
Aurreragailuaren funtzionamendua zehazten du. Parametro hau gaitzeko, hautatu hauxe hautatu iragarlea modurako: · COEF · INPUT · SQUARE edo · CONSTANT
C sarrerako buserako bit kopurua zehazten du. Parametro hau gaitzeko, INPUT hautatu behar duzu Hautatu predikatzaile moduan.

Erlojuan0 EZER EZ

Hautatu aukera hau sarrera-erregistroa gaitzeko datac sarrera-buserako. Aukera hau gaitzeko INPUT ezarri behar duzu Hautatu preadder modua parametroa.
Hautatu Clock0 , Clock1 edo Clock2 datac sarrerako erregistrorako sarrerako erlojuaren seinalea zehazteko. Parametro hau gaitzeko, hautatu Registrar datac input.
Datac sarrerako erregistrorako iturri garbi asinkronoa zehazten du. Parametro hau gaitzeko, hautatu Registrar datac input.
Datac sarrerako erregistrorako iturri garbi sinkronoa zehazten du. Parametro hau gaitzeko, hautatu Registrar datac input.

18

Bit kopurua zehazten du

coefsel sarrera-busa.

Parametro hau gaitzeko, COEF edo CONSTANT hautatu behar duzu predader modurako.

Erlojuan0

Hautatu aukera hau sarrera-erregistroa gaitzeko koefsel sarrera-buserako. Parametro hau gaitzeko, COEF edo CONSTANT hautatu behar duzu predader modurako.
Hautatu Clock0 , Clock1 edo Clock2 sarrerako erlojuaren seinalea zehazteko koefsel sarrerako erregistrorako. Parametro hau gaitzeko Erregistratu koefsel sarrera hautatu behar duzu.
jarraitu…

Intel FPGA Integer Arithmetic IP Cores Erabiltzailearen Gida 52

Bidali Iritzia

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05/XNUMX/XNUMX

Parametroa
Zein da sarrera argi asinkronoaren iturria?

Sortutako IP parametroa

Balioa

gui_coef_regi ster_aclr

EZER ACLR0 ACLR1

Zein da sarrera argi sinkronoaren iturria

gui_coef_regi ster_sclr

EZER SCLR0 SCLR1

Koefizientea_0 Konfigurazioa

koef0_0 koef0_7

0x00000 0xFFFFFFF

Koefizientea_1 Konfigurazioa

koef1_0 koef1_7

0x00000 0xFFFFFFF

Koefizientea_2 Konfigurazioa

koef2_0 koef2_7

0x00000 0xFFFFFFF

Koefizientea_3 Konfigurazioa

koef3_0 koef3_7

0x00000 0xFFFFFFF

8.6.5. Metagailua fitxa

34. taula. Metagailuen fitxa

Parametroa

Sortutako IP parametroa

Balioa

Gaitu metagailua?

metagailu

BAI EZ

Zein da metagailuaren eragiketa mota?

accum_directi GEHITU,

on

AZPI

Balio lehenetsia EZER
EZER
0x0000000 0
0x0000000 0
0x0000000 0
0x0000000 0

Deskribapena
Coefsel sarrera-erregistrorako iturri garbi asinkronoa zehazten du. Parametro hau gaitzeko Erregistratu koefsel sarrera hautatu behar duzu.
Coefsel sarrera-erregistrorako iturri garbi sinkronoa zehazten du. Parametro hau gaitzeko Erregistratu koefsel sarrera hautatu behar duzu.
Lehen biderkatzaile honen koefizienteen balioak zehazten ditu. Bit-kopuruak zehazten denaren berdina izan behar du Zenbaterainoko zabalera izan behar du koefaren zabalerak? parametroa. Parametro hau gaitzeko, COEF edo CONSTANT hautatu behar duzu predader modurako.
Bigarren biderkatzaile honen koefizienteen balioak zehazten ditu. Bit-kopuruak zehazten denaren berdina izan behar du Zenbaterainoko zabalera izan behar du koefaren zabalerak? parametroa. Parametro hau gaitzeko, COEF edo CONSTANT hautatu behar duzu predader modurako.
Hirugarren biderkatzaile honen koefizienteen balioak zehazten ditu. Bit-kopuruak zehazten denaren berdina izan behar du Zenbaterainoko zabalera izan behar du koefaren zabalerak? parametroa. Parametro hau gaitzeko, COEF edo CONSTANT hautatu behar duzu predader modurako.
Laugarren biderkatzaile honen koefizienteen balioak zehazten ditu. Bit-kopuruak zehazten denaren berdina izan behar du Zenbaterainoko zabalera izan behar du koefaren zabalerak? parametroa. Parametro hau gaitzeko, COEF edo CONSTANT hautatu behar duzu predader modurako.

Balio lehenetsia NO
GEHITU

Deskribapena
Hautatu BAI metagailua gaitzeko. Metagailu-funtzioa erabiltzen duzunean, erregistratu batugailuaren irteera hautatu behar duzu.
Metagailuaren funtzionamendua zehazten du: · ADD batuketa eragiketa egiteko · SUB kenketa eragiketa egiteko. BAI hautatu behar duzu Gaitu metagailua? aukera hau gaitzeko parametroa.
jarraitu…

Bidali Iritzia

Intel FPGA Integer Arithmetic IP Cores Erabiltzailearen Gida 53

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05/XNUMX/XNUMX

Parametroa
Preload Constant Gaitu aurrekarga konstantea

Sortutako IP parametroa

Balioa

gui_ena_prelo On

ad_const

Desaktibatuta

Zertara dago konektatuta pilatutako atakaren sarrera?

gui_accumula ACCUM_SLOAD, te_port_select SLOAD_ACCUM

Hautatu aurrekargatzeko loadconst_val 0 - 64 balioa

konstantea

ue

Zein da erlojuaren sarrerarako iturria?

gui_accum_sl oad_register_ erlojua

Erlojua0 Erlojua1 Erlojua2

Zein da sarrera argi asinkronoaren iturria?

gui_accum_sl oad_register_ aclr

EZER ACLR0 ACLR1

Zein da sarrera argi sinkronoaren iturria?

gui_accum_sl oad_register_ sclr

EZER SCLR0 SCLR1

Gaitu metagailu bikoitza

gui_double_a On

ccum

Desaktibatuta

Balio lehenetsia

Deskribapena

Desaktibatuta

Gaitu accum_sload edo

sload_accum seinaleak eta erregistro sarrera

sarrera dinamikoki hautatzeko

metagailua.

accum_sload baxua edo sload_accum denean, biderkatzailearen irteera metagailura sartzen da.

accum_sload altua edo sload_accum denean, erabiltzaileak zehaztutako aurrekarga-konstante bat metagailura sartzen da.

BAI hautatu behar duzu Gaitu metagailua? aukera hau gaitzeko parametroa.

ACCUM_SL OAD

accum_sload/ sload_accum seinalearen portaera zehazten du.
ACCUM_SLOAD: Gidatu accum_sload baxuan irteera biderkatzailea metagailura kargatzeko.
SLOAD_ACCUM: Gidatu sload_accum altuera biderkatzailearen irteera metagailura kargatzeko.
Parametro hau gaitzeko Gaitu aurrekarga konstantea aukera hautatu behar duzu.

64

Zehaztu aurrez ezarritako balio konstantea.

Balio hau 2N izan daiteke, non N aurrez ezarritako balio konstantea den.

N=64 denean, zero konstantea adierazten du.

Parametro hau gaitzeko Gaitu aurrekarga konstantea aukera hautatu behar duzu.

Erlojua0

Hautatu Clock0 , Clock1 edo Clock2 accum_sload/sload_accum erregistrorako sarrerako erlojuaren seinalea zehazteko.
Parametro hau gaitzeko Gaitu aurrekarga konstantea aukera hautatu behar duzu.

EZER

accum_sload/sload_accum erregistrorako iturri garbi asinkronoa zehazten du.
Parametro hau gaitzeko Gaitu aurrekarga konstantea aukera hautatu behar duzu.

EZER

accum_sload/sload_accum erregistrorako iturri garbi sinkronoa zehazten du.
Parametro hau gaitzeko Gaitu aurrekarga konstantea aukera hautatu behar duzu.

Desaktibatuta

Metagailu bikoitzaren erregistroa gaitzen du.

Intel FPGA Integer Arithmetic IP Cores Erabiltzailearen Gida 54

Bidali Iritzia

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05/XNUMX/XNUMX

8.6.6. Sistolikoa/Chainout fitxa

35. taula. Sistoliko/Chainout Adder fitxa

Parametroa Gaitu kateatze gehigarria

Sortutako IP parametroa

Balioa

chainout_add BAI,

er

EZ

Zein da kateatze gehigarriaren eragiketa mota?

chainout_add ADD,

er_norabidea

AZPI

Gaitu `ezeztatu' sarrera katearen gehigarrirako?

Portua_ezeztatu

PORT_USED, PORT_UNUSED

"Ezeztatu" sarrera erregistratu? ezeztatu_erregistroa er

ERREGISTRATU GABE, CLOCK0, CLOCK1, CLOCK2, CLOCK3

Zein da sarrera argi asinkronoaren iturria?

ezeztatu_aclr

EZER ACLR0 ACLR1

Zein da sarrera argi sinkronoaren iturria?

ezeztatu_sclr

EZER SCLR0 SCLR1

Atzerapen Sistolikoa
Gaitu atzerapen sistolikoaren erregistroak

gui_sistolic_d On

ELAY

Desaktibatuta

Zein da erlojuaren sarrerarako iturria?

gui_systolic_d CLOCK0,

elay_erlojua

ERLOIA1,

Balio lehenetsia
EZ

Deskribapena
Hautatu BAI chainout gehigarri modulua gaitzeko.

GEHITU

Chainout gehigarriaren eragiketa zehazten du.
Kenketa eragiketa egiteko, SIGNED hautatu behar da. Zein da Multipliers A sarreretarako irudikapen formatua? eta Zein da Multipliers B sarreretarako irudikapen formatua? Biderkatzaileak fitxan.

PORT_UN ERABILITA

Hautatu PORT_USED ezezko sarrera-seinalea gaitzeko.
Parametro hau baliogabea da kateatze gehigarria desgaituta dagoenean.

ERREGISTRATU ERED

Sarrera-erregistroa ezeztatze-sarrerako seinalea gaitzeko eta ezeztapen-erregistrorako sarrerako erloju-seinalea zehazten du.
Hautatu REGISTRATEGIA ezeztatzeko sarrera erregistroa behar ez bada
Parametro hau baliogabea da hautatzen duzunean:
· EZ Gaitu kateatze gehitzailea edo
· PORT_UNUSED Gaitu "ezeztatu" sarrera kate-sarrerako gehigarrirako? parametroa edo

EZER

Ezezko erregistrorako iturri garbi asinkronoa zehazten du.
Parametro hau baliogabea da hautatzen duzunean:
· EZ Gaitu kateatze gehitzailea edo
· PORT_UNUSED Gaitu "ezeztatu" sarrera kate-sarrerako gehigarrirako? parametroa edo

EZER

Ezezko erregistrorako iturri garbi sinkronoa zehazten du.
Parametro hau baliogabea da hautatzen duzunean:
· EZ Gaitu kateatze gehitzailea edo
· PORT_UNUSED Gaitu "ezeztatu" sarrera kate-sarrerako gehigarrirako? parametroa edo

Desaktibatuta CLOCK0

Hautatu aukera hau modu sistolikoa gaitzeko. Parametro hau erabilgarri dago 2 edo 4 hautatzen duzunean. Zein da biderkagai kopurua? parametroa. Atzerapen sistolikoaren erregistroak erabiltzeko batutzailearen unitatearen Erregistro irteera gaitu behar duzu.
Atzerapen sistolikoaren erregistrorako sarrerako erlojuaren seinalea zehazten du.
jarraitu…

Bidali Iritzia

Intel FPGA Integer Arithmetic IP Cores Erabiltzailearen Gida 55

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05/XNUMX/XNUMX

Parametroa

Sortutako IP parametroa

Balioa

ERLOIA2,

Zein da sarrera argi asinkronoaren iturria?

gui_systolic_d elay_aclr

EZER ACLR0 ACLR1

Zein da sarrera argi sinkronoaren iturria?

gui_systolic_d elay_sclr

EZER SCLR0 SCLR1

Balio lehenetsia
EZER
EZER

Deskribapena
Aukera hau gaitzeko gaitu behar duzu atzerapen sistolikoaren erregistroak gaitu.
Atzerapen sistolikoaren erregistrorako iturri garbi asinkronoa zehazten du. Aukera hau gaitzeko gaitu behar duzu atzerapen sistolikoaren erregistroak gaitu.
Atzerapen sistolikoaren erregistrorako iturri garbi sinkronoa zehazten du. Aukera hau gaitzeko gaitu behar duzu atzerapen sistolikoaren erregistroak gaitu.

8.6.7. Pipelinen fitxa

36. taula. Pipelinen fitxa

Parametro Pipelinen konfigurazioa

Sortutako IP parametroa

Balioa

Sarrerari kanalizazio erregistroa gehitu nahi al diozu?

gui_pipelining Ez, bai

Balio lehenetsia
Ez

Mesedez, zehaztu

latentzia

latentzia-erloju kopurua

zikloak

0 baino 0 handiagoa den edozein balio

Zein da erlojuaren sarrerarako iturria?

gui_input_late ncy_clock

CLOCK0, CLOCK1, CLOCK2

Zein da sarrera argi asinkronoaren iturria?

gui_input_late ncy_aclr

EZER ACLR0 ACLR1

Zein da sarrera argi sinkronoaren iturria?

gui_input_late ncy_sclr

EZER SCLR0 SCLR1

ERLOIA0 EZER EZ

Deskribapena
Hautatu Bai sarrerako seinaleetarako kanalizazio-erregistro maila gehigarri bat gaitzeko. 0 baino balio handiagoa zehaztu behar duzu Mesedez, zehaztu latentzia-erlojuaren ziklo-kopurua parametrorako.
Erloju-zikloetan nahi den latentzia zehazten du. Kanalizazio-erregistroaren maila bat = 1 latentzia erloju-zikloan. BAI hautatu behar duzu Sarrerari kanalizazio-erregistroa gehitu nahi al diozu? aukera hau gaitzeko.
Hautatu Clock0 , Clock1 edo Clock2 kanalizazio-erregistroaren sarrerako erlojuaren seinalea gaitzeko eta zehazteko. BAI hautatu behar duzu Sarrerari kanalizazio-erregistroa gehitu nahi al diozu? aukera hau gaitzeko.
Erregistro asinkronoaren iturri garbia zehazten du kanalizazio-erregistro gehigarrirako. BAI hautatu behar duzu Sarrerari kanalizazio-erregistroa gehitu nahi al diozu? aukera hau gaitzeko.
Erregistro sinkronoaren iturri garbia zehazten du kanalizazio-erregistro gehigarrirako. BAI hautatu behar duzu Sarrerari kanalizazio-erregistroa gehitu nahi al diozu? aukera hau gaitzeko.

Intel FPGA Integer Arithmetic IP Cores Erabiltzailearen Gida 56

Bidali Iritzia

683490 | 2020.10.05/XNUMX/XNUMX Bidali iritzia

9. ALTMEMMULT (Memorian oinarritutako koefiziente konstanteen biderkatzailea) IP Core

Arreta:

Intel-ek IP honen euskarria kendu du Intel Quartus Prime Pro Edition 20.3 bertsioan. Zure diseinuko IP nukleoak Intel Quartus Prime Pro Edition-ko gailuak bideratzen baditu, IP-a LPM_MULT Intel FPGA IP-rekin ordezkatu dezakezu edo IP-a birsortu eta zure diseinua Intel Quartus Prime Standard Edition softwarearekin konpilatu dezakezu.

ALTMEMMULT IP nukleoa memorian oinarritutako biderkatzaileak sortzeko erabiltzen da Intel FPGAetan aurkitzen diren onchip memoria blokeak erabiliz (M512, M4K, M9K eta MLAB memoria blokeekin). IP nukleo hau erabilgarria da baliabide nahikorik ez baduzu biderkatzaileak elementu logikoetan (LE) edo baliabide biderkatzaile dedikatuetan ezartzeko.
ALTMEMMULT IP nukleoa erloju bat behar duen funtzio sinkronoa da. ALTMEMMULT IP nukleoak parametro eta zehaztapen multzo jakin baterako errendimendu eta latentzia txikiena duen biderkatzailea ezartzen du.
Hurrengo irudian ALTMEMMULT IP nukleoaren atakak erakusten dira.

21. Irudia ALTMEMMULT Portuak

ALTMEMMULT

data_in[] sload_data koeff_in[]

emaitza[] emaitza_baliozko karga_eginda

sload_coeff

sclr erlojua
inst

Lotutako informazioa Ezaugarriak 71. orrialdean

9.1. Ezaugarriak
ALTMEMMULT IP nukleoak ezaugarri hauek eskaintzen ditu: · Memorian oinarritutako biderkagailuak soilik sortzen ditu txiparen memoria blokeak erabiliz.
Intel FPGAak · 1 biteko datu-zabalera onartzen du · Sinatutako eta sinatu gabeko datuen irudikapen formatua onartzen du · Irteerako latentzia finkoarekin kanalizazioa onartzen du

Intel Corporation. Eskubide guztiak erreserbatuak. Intel, Intel logotipoa eta beste Intel marka Intel Corporation edo bere filialen marka komertzialak dira. Intel-ek bere FPGA eta erdieroaleen produktuen errendimendua bermatzen du uneko zehaztapenekin, Intel-en berme estandarraren arabera, baina edozein unetan edozein produktu eta zerbitzutan aldaketak egiteko eskubidea gordetzen du jakinarazi gabe. Intel-ek ez du bere gain hartzen hemen deskribatutako edozein informazio, produktu edo zerbitzuren aplikazio edo erabileratik eratorritako erantzukizunik edo erantzukizunik, Intel-ek idatziz berariaz hitzartutakoa izan ezik. Intel-eko bezeroei gomendatzen zaie gailuaren zehaztapenen azken bertsioa eskuratzea argitaratutako edozein informaziotan oinarritu aurretik eta produktu edo zerbitzuen eskaerak egin aurretik. *Beste izen eta markak beste batzuen jabetza direla erreklamatu daitezke.

ISO 9001:2015 Erregistratua

9. ALTMEMMULT (Memorian oinarritutako koefiziente konstanteen biderkatzailea) IP Core 683490 | 2020.10.05/XNUMX/XNUMX
· Konstante anitz gordetzen ditu ausazko sarbideko memorian (RAM)
· RAM bloke mota hautatzeko aukera eskaintzen du
· Aukerako argi eta karga-kontroleko sarrera-portuak sinkronoak onartzen ditu
9.2. Verilog HDL prototipoa
Hurrengo Verilog HDL prototipoa Verilog Design-en dago File (.v) altera_mf.v in eda sintesi direktorioa.
modulua altmemmult #( parametroa coeff_representation = “SIGNED”, parametroa koefiziente0 = “UNUSED”, parametroa data_representation = “SIGNED”, parametroa target_device_family = “ezed”, parametroa max_clock_cycles_per_result = 1, parametroa_koefiziente_zenbakia, parametroa = “AUT_block”, parametroa = “AUT_1_ total_latency = 1, parametroa width_c = 1, parametroa width_d = 1, parametroa width_r = 1, parametroa width_s = 1, parametroa lpm_type = "altmemmult", parametroa lpm_hint = "ez da erabili") (sarrerako hari-erlojua, sarrerako hari bat [width_c-1): 0]coeff_in, sarrerako kablea [width_d-1:0] data_in, irteerako haria load_done, irteerako haria [width_r-1:0] emaitza, irteerako hariaren emaitza_valida, sarrerako haria sclr, sarrerako haria [width_s-1:0] sel, sarrera wire sload_coeff, input wire sload_data)/* sintesi syn_black_box=1 */; amaierako modulua
9.3. VHDL osagaien adierazpena
VHDL osagaien adierazpena VHDL diseinuan dago File (.vhd) altera_mf_components.vhd atalean librariesvhdlaltera_mf direktorioa.
component altmemmult generic ( koeff_representation:string := “SIGNED”; koefiziente0:string := “EZ ERABILI”; data_representation:string := “SIGNED”; asmoa_device_family:string := “ezed”; max_clock_cycles_per_result:natural := 1; := 1; ram_block_type:string := “AUTO”; latentzia_totala:naturala; width_c:natural; width_d:natural; width_r:naturala; width_s:natural := 1; lpm_hint:string := “UNUSED”; lpm_type:string := "altmemmult"); port (erlojua: std_logic-en; koeff_in: std_logic_vector-en (width_c-1 down to 0) := (besteak => '0'); data_in: in std_logic_vector (width_d-1 down to 0);

Intel FPGA Integer Arithmetic IP Cores Erabiltzailearen Gida 58

Bidali Iritzia

9. ALTMEMMULT (Memorian oinarritutako koefiziente konstanteen biderkatzailea) IP Core 683490 | 2020.10.05/XNUMX/XNUMX

load_done: out std_logic; emaitza: out std_logic_vector (zabalera_r-1 0raino); result_valid:out std_logic; sclr: in std_logic := '0'; sel:in std_logic_vector(width_s-1 down to 0) := (besteak => '0'); sload_coeff: in std_logic := '0'; sload_data: in std_logic := '0'); amaierako osagaia;

9.4. Portuak

Ondorengo tauletan ALTMEMMULT IP nukleoaren sarrera eta irteera atakak zerrendatzen dira.

37. Taula. ALTMEMMULT Sarrerako Portuak

Portuaren izena

Beharrezkoa

Deskribapena

erlojua

Bai

Erlojuaren sarrera biderkatzaileari.

koeff_in[]

Ez

Biderkatzailearen sarrerako koefizientea. Sarrerako atakaren tamaina WIDTH_C parametroaren balioaren araberakoa da.

datuak_in[]

Bai

Datuak sartzeko ataka biderkatzaileari. Sarrerako atakaren tamaina WIDTH_D parametroaren balioaren araberakoa da.

sclr

Ez

Sarrera garbi sinkronikoa. Erabiltzen ez bada, balio lehenetsia altua da.

sal[]

Ez

Koefiziente finkoa hautatzea. Sarrerako atakaren tamaina WIDTH_S-ren araberakoa da

parametroaren balioa.

sload_coeff

Ez

Karga-koefiziente sinkronoaren sarrerako ataka. Uneko hautatutako koefizientearen balioa coeff_in sarreran zehaztutako balioarekin ordezkatzen du.

sload_data

Ez

Karga sinkronikoko datuak sartzeko ataka. Biderketa eragiketa berria zehazten duen eta lehendik dagoen biderketa eragiketa guztiak bertan behera uzten dituen seinalea. MAX_CLOCK_CYCLES_PER_RESULT parametroak 1eko balioa badu, sload_data sarrerako ataka ez da aintzat hartuko.

38. Taula. ALTMEMMULT Irteera Portuak

Portuaren izena

Beharrezkoa

Deskribapena

emaitza[]

Bai

Biderkatzailearen irteerako ataka. Sarrerako atakaren tamaina WIDTH_R parametroaren balioaren araberakoa da.

emaitza_baliozkoa

Bai

Irteera biderketa oso baten baliozko emaitza noiz den adierazten du. MAX_CLOCK_CYCLES_PER_RESULT parametroak 1eko balioa badu, result_valid irteerako ataka ez da erabiltzen.

kargatu_eginda

Ez

Koefiziente berria kargatzen noiz amaitu den adierazten du. load_done seinaleak koefiziente berri bat kargatzen amaitzen denean baieztatzen du. load_done seinalea altua izan ezean, ezin da beste koefiziente-baliorik kargatu memorian.

9.5. parametroak

Hurrengo taulan ALTMEMMULT IP nukleoaren parametroak zerrendatzen dira.

39. taula.
WIDTH_D WIDTH_C

ALTMEMMULT Parametroak
Parametroaren izena

Mota Beharrezkoa

Deskribapena

Zenbaki osoa Bai

Data_in[] atakaren zabalera zehazten du.

Zenbaki osoa Bai

Coeff_in[] atakaren zabalera zehazten du. jarraitu…

Bidali Iritzia

Intel FPGA Integer Arithmetic IP Cores Erabiltzailearen Gida 59

9. ALTMEMMULT (Memorian oinarritutako koefiziente konstanteen biderkatzailea) IP Core 683490 | 2020.10.05/XNUMX/XNUMX

Parametroaren izena WIDTH_R WIDTH

Dokumentuak / Baliabideak

intel FPGA Integer Arithmetic IP Nukleoak [pdfErabiltzailearen gida
FPGA Osoko IP nukleoak aritmetikoak, IP nukleoak aritmetikoak osoak, IP nukleoak aritmetikoak, IP nukleoak

Erreferentziak

Utzi iruzkin bat

Zure helbide elektronikoa ez da argitaratuko. Beharrezko eremuak markatuta daude *