FPGA Integer Arithmetic IP Cores
Intel FPGA Integer Arithmetic IP Cores Pituduh Pamaké
Diropéa pikeun Intel® Quartus® Prime Design Suite: 20.3
Vérsi Online Kirim Eupan Balik
UG-01063
ID: 683490 Vérsi: 2020.10.05
eusi
eusi
1. Intel FPGA Integer Arithmetic IP Cores……………………………………………………………….. 5
2. LPM_COUNTER (Counter) IP Core………………………………………………………………………….. 7 2.1. Keunggulan ………………………………………………………………………………………7 2.2. Prototipe Verilog HDL…………………………………………………………………………………….. 8 2.3. Déklarasi komponén VHDL…………………………………………………………………….8 2.4. VHDL LIBRARY_USE Deklarasi……………………………………………………………… 9 2.5. Palabuhan……………………………………………………………………………………..9 2.6. Parameter……………………………………………………………………………… 10
3. LPM_DIVIDE (Divider) Intel FPGA IP Core……………………………………………………………….. 12 3.1. Fitur………………………………………………………………………………………………. 12 3.2. Prototipe Verilog HDL………………………………………………………………………… 12 3.3. Déklarasi Komponén VHDL………………………………………………………………………….. 13 3.4. VHDL LIBRARY_USE Deklarasi………………………………………………………………. 13 3.5. Palabuhan…………………………………………………………………………………… 13 3.6. Parameter……………………………………………………………………………… 14
4. LPM_MULT (Multiplier) IP Core………………………………………………………………. 16 4.1. Fitur………………………………………………………………………………………………. 16 4.2. Prototipe Verilog HDL………………………………………………………………………… 17 4.3. Déklarasi Komponén VHDL………………………………………………………………………….. 17 4.4. VHDL LIBRARY_USE Deklarasi………………………………………………………………. 17 4.5. Sinyal…………………………………………………………………………………… 18 4.6. Parameter pikeun Stratix V, Arria V, Siklon V, jeung Alat Intel Cyclone 10 LP……………… 18 4.6.1. Tab Umum………………………………………………………………………………18 4.6.2. Umum 2 Tab…………………………………………………………………… 19 4.6.3. Tab Pipelining…………………………………………………………………… 19 4.7. Parameter pikeun Intel Stratix 10, Intel Arria 10, sareng Alat Intel Cyclone 10 GX……….. 20 4.7.1. Tab Umum………………………………………………………………………………20 4.7.2. Umum 2 Tab…………………………………………………………………… 20 4.7.3. Pipeling …………………………………………………………………………… 21
5. LPM_ADD_SUB (Adder/Subtractor)………………………………………………………………………… 22 5.1. Fitur………………………………………………………………………………………………. 22 5.2. Prototipe Verilog HDL………………………………………………………………………… 23 5.3. Déklarasi Komponén VHDL……………………………………………………………….. 23 5.4. VHDL LIBRARY_USE Deklarasi………………………………………………………………. 23 5.5. Palabuhan…………………………………………………………………………………… 23 5.6. Parameter……………………………………………………………………………… 24
6. LPM_BANDINGAN (Pambanding)………………………………………………………………………… 26 6.1. Fitur………………………………………………………………………………………………. 26 6.2. Prototipe Verilog HDL………………………………………………………………………… 27 6.3. Déklarasi Komponén VHDL………………………………………………………………………….. 27 6.4. VHDL LIBRARY_USE Deklarasi………………………………………………………………. 27 6.5. Palabuhan…………………………………………………………………………………… 27 6.6. Parameter……………………………………………………………………………… 28
Pituduh Pamaké Intel FPGA Integer Arithmetic IP Cores 2
Kirim Eupan Balik
eusi
7. ALTECC (Kode Koréksi Kasalahan: Encoder/Decoder) IP Core………………………………………… 30
7.1. Fitur ALTECC Encoder…………………………………………………………………………..31 7.2. Prototipe Verilog HDL (ALTECC_ENCODER)……………………………………………………. 32 7.3. Prototipe Verilog HDL (ALTECC_DECODER)……………………………………………………. 32 7.4. Déklarasi komponén VHDL (ALTECC_ENCODER)…………………………………………33 7.5. Déklarasi komponén VHDL (ALTECC_DECODER)…………………………………………33 7.6. VHDL LIBRARY_USE Deklarasi………………………………………………………………. 33 7.7. Palabuhan Encoder…………………………………………………………………………………… 33 7.8. Palabuhan Dékoder………………………………………………………………………………34 7.9. Parameter Enkoder…………………………………………………………………………………… 34 7.10. Parameter Dékoder …………………………………………………………………………… 35
8. Intel FPGA Multiply Adder IP Core………………………………………………………………. 36
8.1. Fitur………………………………………………………………………………………………. 37 8.1.1. Saméméhna panambah…………………………………………………………………… 38 8.1.2. Ngadaptar Tunda Sistolik……………………………………………………………… 40 8.1.3. Konstanta Pra-beban……………………………………………………………… 43 8.1.4. Akumulator Ganda…………………………………………………………………… 43
8.2. Prototipe Verilog HDL………………………………………………………………………… 44 8.3. Déklarasi Komponén VHDL………………………………………………………………………….. 44 8.4. VHDL LIBRARY_USE Deklarasi………………………………………………………………. 44 8.5. Sinyal…………………………………………………………………………………… 44 8.6. Parameter……………………………………………………………………………… 47
8.6.1. Tab Umum…………………………………………………………………………47 8.6.2. Tab Modeu Tambahan………………………………………………………………………… 47 8.6.3. Tab Pangganda………………………………………………………………………… 49 8.6.4. Tab Preader …………………………………………………………………. 51 8.6.5. Tab Akumulator………………………………………………………………………….. 53 8.6.6. Tab Sistolik/Chainout ………………………………………………………………. 55 8.6.7. Tab Pipelining…………………………………………………………………… 56
9. ALTMEMMULT (Pengganda Koéfisién Konstan Berbasis Mémori) Inti IP…………………… 57
9.1. Fitur………………………………………………………………………………………………. 57 9.2. Prototipe Verilog HDL………………………………………………………………………… 58 9.3. Déklarasi komponén VHDL……………………………………………………………….. 58 9.4. Palabuhan…………………………………………………………………………………… 59 9.5. Parameter……………………………………………………………………………… 59
10. ALTMULT_ACCUM (Multiply-Accumulate) IP Core…………………………………………………… 61
10.1. Ciri-ciri …………………………………………………………………………….. 62 10.2. Prototipe Verilog HDL…………………………………………………………………………..62 10.3. Déklarasi Komponén VHDL……………………………………………………………… 63 10.4. VHDL LIBRARY_USE Déklarasi………………………………………………………………63 10.5. Palabuhan ……………………………………………………………………………. 63 10.6. Parameter ………………………………………………………………………………. 64
11. ALTMULT_ADD (Multiply-Adder) IP Core………………………………………………………………..69
11.1. Ciri-ciri……………………………………………………………………………….. 71 11.2. Prototipe Verilog HDL…………………………………………………………………………..72 11.3. Déklarasi Komponén VHDL……………………………………………………………… 72 11.4. VHDL LIBRARY_USE Deklarasi………………………………………………………………72
Kirim Eupan Balik
Pituduh Pamaké Intel FPGA Integer Arithmetic IP Cores 3
eusi
11.5. Palabuhan ……………………………………………………………………………. 72 11.6. Parameter ………………………………………………………………………………. 73
12. ALTMULT_COMPLEX (Pengganda Kompleks) IP Core…………………………………………………… 86 12.1. Perkalian Kompleks ……………………………………………………………… 86 12.2. Répréséntasi Kanonik……………………………………………………………… 87 12.3. Répréséntasi Konvénsional …………………………………………………………. 87 12.4. Ciri-ciri……………………………………………………………………………….. 88 12.5. Prototipe Verilog HDL…………………………………………………………………………..88 12.6. Déklarasi komponén VHDL……………………………………………………………… 89 12.7. VHDL LIBRARY_USE Déklarasi………………………………………………………………89 12.8. Sinyal ……………………………………………………………………………. 89 12.9. Parameter ………………………………………………………………………………. 90
13. ALTSQRT (Integer Square Root) IP Core………………………………………………………………92 13.1. Ciri-ciri……………………………………………………………………………….. 92 13.2. Prototipe Verilog HDL…………………………………………………………………………..92 13.3. Déklarasi komponén VHDL……………………………………………………………… 93 13.4. VHDL LIBRARY_USE Déklarasi………………………………………………………………93 13.5. Palabuhan ……………………………………………………………………………. 93 13.6. Parameter ……………………………………………………………………………. 94
14. PARALLEL_ADD (Parallel Adder) IP Core……………………………………………………………….. 95 14.1. Pitur………………………………………………………………………….95 14.2. Prototipe Verilog HDL…………………………………………………………………………..95 14.3. Déklarasi komponén VHDL……………………………………………………………… 96 14.4. VHDL LIBRARY_USE Déklarasi………………………………………………………………96 14.5. Palabuhan ……………………………………………………………………………. 96 14.6. Parameter ………………………………………………………………………………. 97
15. Integer Arithmetic IP Cores Guide Pamaké Dokumén Arsip ………………………………… 98
16. Riwayat Révisi Dokumén pikeun Pituduh Pamaké Intel FPGA Integer Arithmetic IP Cores…. 99
Pituduh Pamaké Intel FPGA Integer Arithmetic IP Cores 4
Kirim Eupan Balik
683490 | 2020.10.05 Kirim Eupan Balik
1. Intel FPGA Integer Arithmetic IP Cores
Anjeun tiasa nganggo inti IP integer Intel® FPGA pikeun ngalakukeun operasi matematik dina desain anjeun.
Pungsi ieu nawiskeun sintésis logika sareng palaksanaan alat anu langkung éfisién tibatan ngodekeun fungsi anjeun nyalira. Anjeun tiasa ngaluyukeun inti IP pikeun nampung syarat desain anjeun.
Intel integer arithmetic IP cores dibagi kana dua kategori ieu: · Perpustakaan modul parameterized (LPM) IP cores · Intel-spésifik (ALT) IP cores
Tabel di handap ieu daptar integer arithmetic IP cores.
Tabél 1.
Daptar IP Cores
IP Cores
LPM IP cores
LPM_COUNTER
LPM_DIVIDE
LPM_MULT
LPM_ADD_SUB
LPM_COMPARE
Intel-spésifik (ALT) IP cores ALTECC
Fungsi Langkungview Counter divider multiplier
Panambah atanapi subtractor Comparator
ECC Encoder / Decoder
Alat anu dirojong
Arria® II GX, Arria II GZ, Arria V, Intel Arria 10, Siklon® IV E, Siklon IV GX, Siklon V, Intel Siklon 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, Siklon IV E, Siklon IV GX,
Siklon V, Intel Siklon 10 LP, Intel Siklon 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, Siklon IV E, Siklon IV GX,
Siklon V, Intel Siklon 10 LP, Intel Siklon 10 GX, MAX II, MAX V, MAX 10, Stratix IV, Stratix V, Intel Stratix 10
Arria II GX, Arria II GZ, Arria V, Siklon IV E, Siklon IV GX, Siklon V, Intel Siklon 10 LP, MAX 10, MAX
II, MAX V, Stratix IV, Stratix V
Arria II GX, Arria II GZ, Arria V, Siklon IV E, Siklon IV GX, Siklon V, Intel Siklon 10 LP, MAX 10, MAX
II, MAX V, Stratix IV, Stratix V
Arria II GX, Arria II GZ, Arria V, Intel Arria 10, Siklon IV E, Siklon IV GX,
Siklon V, Intel Siklon 10 LP, Intel Siklon 10 GX, MAX II, MAX V, MAX
10, Stratix IV, Stratix V dituluykeun…
Intel Corporation. Sadaya hak disimpen. Intel, logo Intel, sareng merek Intel sanés mangrupikeun mérek dagang Intel Corporation atanapi anak perusahaanna. Intel ngajamin kinerja produk FPGA sareng semikonduktor na kana spésifikasi ayeuna saluyu sareng garansi standar Intel, tapi ngagaduhan hak pikeun ngarobih naon waé produk sareng jasa iraha waé tanpa aya bewara. Intel henteu nanggung tanggung jawab atanapi tanggung jawab anu timbul tina aplikasi atanapi pamakean inpormasi, produk, atanapi jasa anu dijelaskeun di dieu iwal ti dinyatakeun sapuk sacara tinulis ku Intel. Konsumén Intel disarankan pikeun ménta versi panganyarna tina spésifikasi alat sateuacan ngandelkeun inpormasi anu diterbitkeun sareng sateuacan nempatkeun pesenan produk atanapi jasa. *Ngaran sareng merek sanésna tiasa diklaim salaku hak milik batur.
ISO 9001: 2015 didaptarkeun
1. Intel FPGA integer arithmetic IP Cores 683490 | 2020.10.05
IP Cores Intel FPGA Multiply Adder atanapi ALTERA_MULT_ADD ALTMEMMULT
ALTMULT_ACCUM ALTMULT_ADD ALTMULT_COMPLEX
ALTSQRT
PARALLEL_ADD
Fungsi Langkungview Multiplier-Adder
Mémori basis Koefisien Multiplier konstan
Multiplier-Accumulator Multiplier-Adder
Multiplier kompléks
Integer Square-Akar
Panambah Paralel
Alat anu dirojong
Arria V, Stratix V, Siklon V, Intel Stratix 10, Intel Arria 10, Intel Siklon
10 GX
Arria II GX, Arria II GZ, Arria V, Intel Arria 10 (Intel Quartus® Prime Standard Edition), Siklon IV E, Siklon IV GX, Siklon V, Intel
Siklon 10 LP, MAX II, MAX V, MAX 10, Stratix IV, Stratix V
Arria II GX, Arria II GZ, Siklon IV E, Siklon IV GX, Intel Siklon 10 LP, MAX 10, MAX II, MAX V, Stratix IV
Arria II GX, Arria II GZ, Siklon IV E, Siklon IV GX, Intel Siklon 10 LP, MAX 10, MAX II, MAX V, Stratix IV
Arria II GX, Arria II GZ, Intel Arria 10, Arria V, Arria V GZ, Siklon IV E, Siklon IV GX, Siklon V, Intel
Siklon 10 GX, Intel Siklon 10 LP, MAX 10, Stratix V, Intel Stratix 10
Arria II GX, Arria II GZ, Arria V, Intel Arria 10, Siklon IV E, Siklon IV GX,
Siklon V, Intel Siklon 10 LP, Intel Siklon 10 GX, MAX II, MAX V, MAX
10, Stratix IV, Stratix V
Arria II GX, Arria II GZ, Arria V, Intel Arria 10, Siklon IV E, Siklon IV GX,
Siklon V, Intel Siklon 10 LP, Intel Siklon 10 GX, MAX II, MAX V, MAX
10, Stratix IV, Stratix V
Émbaran patali
· Intel FPGAs jeung Alat Programmable Release Catetan
· Bubuka Intel FPGA IP Cores Nyadiakeun inpo nu langkung lengkep ihwal Intel FPGA IP Cores.
· Floating-Point IP Cores Pituduh Pamaké Nyadiakeun émbaran leuwih lengkep ngeunaan Intel FPGA Floating-Point IP cores.
· Bubuka Intel FPGA IP Cores Nyadiakeun informasi umum ngeunaan sakabéh Intel FPGA IP cores, kaasup parameterizing, generating, Ngaronjatkeun, sarta simulating IP cores.
· Nyieun Vérsi-Independent IP na Qsys Simulasi Aksara Jieun Aksara simulasi nu teu merlukeun apdet manual pikeun software atawa versi IP upgrades.
· Pedoman Praktek Pangalusna Manajemén Proyék pikeun manajemén efisien sareng portabilitas proyék sareng IP anjeun files.
· Integer Arithmetic IP Cores Guide Pamaké Arsip Dokumén dina kaca 98 Nyadiakeun daptar pituduh pamaké pikeun vérsi saméméhna tina Integer Arithmetic IP cores.
Pituduh Pamaké Intel FPGA Integer Arithmetic IP Cores 6
Kirim Eupan Balik
683490 | 2020.10.05 Kirim Eupan Balik
2. LPM_COUNTER (Counter) IP Core
Gambar 1.
LPM_COUNTER IP inti mangrupakeun counter binér nu nyieun up counters, handap counters na luhur atawa handap counters kalawan kaluaran nepi ka 256 bit lega.
Gambar di handap ieu nunjukkeun palabuhan pikeun inti IP LPM_COUNTER.
LPM_COUNTER Palabuhan
LPM_COUNTER
ssclr sload sset data []
q[]
naek turun
cout
aclr muatan aset
clk_en cnt_en cin
inst
2.1. Fitur
Inti IP LPM_COUNTER nawiskeun fitur-fitur ieu: · Ngahasilkeun counter kaluhur, ka handap, sareng ka luhur/handap · Ngahasilkeun jinis counter di handap ieu:
— Biner polos– naékna counter mimitian ti enol atawa decrements mimitian ti 255
- Modulus - counter increments kana atawa decrements tina nilai modulus dieusian ku pamaké sarta repeats
· Ngarojong palabuhan input anu jelas, beban, sareng set sinkron opsional · Ngadukung port input anu jelas, beban, sareng set input asinkron opsional · Ngarojong aktipkeun count opsional sareng port input jam ngaktifkeun · Ngarojong palabuhan mawa-in sareng port-out.
Intel Corporation. Sadaya hak disimpen. Intel, logo Intel, sareng merek Intel sanés mangrupikeun mérek dagang Intel Corporation atanapi anak perusahaanna. Intel ngajamin kinerja produk FPGA sareng semikonduktor na kana spésifikasi ayeuna saluyu sareng garansi standar Intel, tapi ngagaduhan hak pikeun ngarobih naon waé produk sareng jasa iraha waé tanpa aya bewara. Intel henteu nanggung tanggung jawab atanapi tanggung jawab anu timbul tina aplikasi atanapi pamakean inpormasi, produk, atanapi jasa anu dijelaskeun di dieu iwal ti dinyatakeun sapuk sacara tinulis ku Intel. Konsumén Intel disarankan pikeun ménta versi panganyarna tina spésifikasi alat sateuacan ngandelkeun inpormasi anu diterbitkeun sareng sateuacan nempatkeun pesenan produk atanapi jasa. *Ngaran sareng merek sanésna tiasa diklaim salaku hak milik batur.
ISO 9001: 2015 didaptarkeun
2. LPM_COUNTER (Counter) IP Core
683490 | 2020.10.05
2.2. Prototipe Verilog HDL
Prototipe Verilog HDL di handap ieu aya dina Desain Verilog File (.v) lpm.v dina diréktori édasintesis.
modul lpm_counter (q, data, jam, cin, cout, clk_en, cnt_en, updown, aset, aclr, aload, sset, sclr, sload, eq); parameter lpm_type = "lpm_counter"; parameter lpm_width = 1; parameter lpm_modulus = 0; parameter lpm_direction = "TEU DIGUNA"; parameter lpm_value = "TEU DIGUNA"; parameter lpm_svalue = "TEU DIGUNA"; parameter lpm_pvalue = "TEU DIGUNA"; parameter lpm_port_updown = "PORT_CONNECTIVITY"; parameter lpm_hint = "TEU DIGUNA"; kaluaran [lpm_width-1: 0] q; kaluaran kaluaran; kaluaran [15:0] eq; input cin; input [lpm_width-1: 0] data; jam input, clk_en, cnt_en, updown; input aset, aclr, muatan; input sset, sclr, sload; modul tungtung
2.3. Déklarasi komponén VHDL
Déklarasi komponén VHDL aya dina Desain VHDL File (.vhd) LPM_PACK.vhd dina diréktori perpustakaanvhdllpm.
komponén LPM_COUNTER generik (LPM_WIDTH: natural; LPM_MODULUS: natural: = 0; LPM_DIRECTION: string: = "TEU DIGUNA"; LPM_AVALUE: string: = "TEU DIGUNA"; LPM_SVALUE: string: = "TEU DIGUNA"; LPM_PORT_UPDOWN: string: = "PORT_CONNECT" ; LPM_PVALUE: string: = "TEU DIGUNA"; LPM_TYPE: string: = L_COUNTER; LPM_HINT: string: = "TEU DIGUNA"); port (DATA: dina std_logic_vector (LPM_WIDTH-1 turun ka 0): = (LAIN =>
'0'); JAM: dina std_logic; CLK_EN: dina std_logic: = '1'; CNT_EN: dina std_logic: = '1'; UPDOWN: dina std_logic: = '1'; SLOAD: dina std_logic: = '0'; SSET: dina std_logic: = '0'; SCLR: dina std_logic: = '0'; ALOAD: dina std_logic: = '0'; ASET: dina std_logic: = '0'; ACLR: dina std_logic: = '0'; CIN: dina std_logic: = '1'; COUT: kaluar std_logic: = '0'; Q: kaluar std_logic_vector (LPM_WIDTH-1 downto 0); EQ: kaluar std_logic_vector (15 turun ka 0));
komponén tungtung;
Pituduh Pamaké Intel FPGA Integer Arithmetic IP Cores 8
Kirim Eupan Balik
2. LPM_COUNTER (counter) IP Core 683490 | 2020.10.05
2.4. VHDL LIBRARY_USE Déklarasi
Déklarasi VHDL LIBRARY-USE henteu diperyogikeun upami anjeun nganggo Déklarasi Komponen VHDL.
PUSTAKA lpm; USE lpm.lpm_components.all;
2.5. Palabuhan
Tabel di handap ieu daptar palabuhan input sareng kaluaran pikeun inti IP LPM_COUNTER.
Tabél 2.
LPM_COUNTER Palabuhan Input
Ngaran Port
Dibutuhkeun
Katerangan
data[]
No
Input data paralel ka loket. Ukuran port input gumantung kana nilai parameter LPM_WIDTH.
jam
Sumuhun
Positip-ujung-dipicu input jam.
clk_en
No
Jam ngaktifkeun input pikeun ngaktipkeun sadaya kagiatan sinkron. Upami dileungitkeun, nilai standarna nyaéta 1.
cnt_en
No
Count ngaktifkeun input pikeun nganonaktipkeun count nalika negeskeun low tanpa mangaruhan sload, sset, atanapi sclr. Upami dileungitkeun, nilai standarna nyaéta 1.
naek turun
No
Ngadalikeun arah cacah. Lamun negeskeun tinggi (1), arah count na luhur, sarta lamun negeskeun low (0), arah count handap. Lamun parameter LPM_DIRECTION dipaké, port updown teu bisa disambungkeun. Upami LPM_DIRECTION henteu dianggo, port updown mangrupikeun pilihan. Upami dileungitkeun, nilai standar naék (1).
cin
No
Mawa-asup ka bit-urutan handap. Pikeun up counters, paripolah input cin nyaeta
idéntik jeung paripolah input cnt_en. Upami dileungitkeun, nilai standarna nyaéta 1
(VCC).
aclr
No
Input jelas Asynchronous. Upami duanana aset sareng aclr dianggo sareng ditegeskeun, aclr nimpa aset. Upami disingkahkeun, nilai standarna nyaéta 0 (ditumpurkeun).
aset
No
Input set Asynchronous. Nangtukeun q [] outputs salaku sakabeh 1s, atawa kana nilai dieusian ku parameter LPM_AVALUE. Lamun duanana port aset jeung aclr dipaké tur negeskeun, nilai port aclr overrides nilai port aset. Lamun disingkahkeun, nilai standar 0, ditumpurkeun.
muatan
No
Input beban Asynchronous nu asynchronously beban counter kalawan nilai dina input data. Nalika port muatan dipaké, data[] port kudu disambungkeun. Lamun disingkahkeun, nilai standar 0, ditumpurkeun.
sclr
No
Input jelas sinkron anu mupus counter dina ujung jam aktip salajengna. Lamun duanana port sset jeung sclr dipaké tur negeskeun, nilai port sclr overrides nilai port sset. Lamun disingkahkeun, nilai standar 0, ditumpurkeun.
sset
No
Input set sinkron anu nyetél counter dina ujung jam aktip salajengna. Nangtukeun nilai kaluaran q salaku sakabeh 1s, atawa kana nilai dieusian ku parameter LPM_SVALUE. Upami duanana port sset sareng sclr dianggo sareng ditegeskeun,
nilai port sclr overrides nilai port sset. Upami disingkahkeun, nilai standarna nyaéta 0 (ditumpurkeun).
sload
No
Input beban sinkron anu ngamuat counter sareng data [] dina ujung jam aktip salajengna. Nalika port sload dipaké, data[] port kudu disambungkeun. Upami disingkahkeun, nilai standarna nyaéta 0 (ditumpurkeun).
Kirim Eupan Balik
Pituduh Pamaké Intel FPGA Integer Arithmetic IP Cores 9
2. LPM_COUNTER (counter) IP Core 683490 | 2020.10.05
Tabél 3.
LPM_COUNTER Palabuhan Kaluaran
Ngaran Port
Dibutuhkeun
Katerangan
q[]
No
Kaluaran data tina loket. Ukuran port kaluaran gumantung kana
Nilai parameter LPM_WIDTH. Boh q [] atawa sahanteuna salah sahiji eq [15..0] palabuhan
kedah sambung.
eq[15..0]
No
Counter decode kaluaran. Port eq [15..0] henteu tiasa diaksés dina pangropéa parameter sabab parameter ngan ukur ngadukung AHDL.
Boh port q [] atanapi port eq [] kedah disambungkeun. Nepi ka port c eq tiasa dianggo (0 <= c <= 15). Ngan 16 nilai count panghandapna nu decoded. Lamun nilai count nyaeta c, kaluaran eqc ieu negeskeun tinggi (1). Pikeun example, lamun count nyaeta 0, eq0 = 1, lamun count nyaeta 1, eq1 = 1, sarta lamun count nyaeta 15, eq 15 = 1. Decoded kaluaran pikeun nilai count 16 atawa saluhureuna merlukeun decoding éksternal. Kaluaran eq [15..0] henteu sinkron sareng kaluaran q [].
cout
No
port mawa-kaluar tina bit MSB counter urang. Ieu bisa dipaké pikeun nyambung ka counter sejen pikeun nyieun hiji counter badag.
2.6. Parameter
Tabel di handap ieu daptar parameter pikeun inti LPM_COUNTER IP.
Tabél 4.
LPM_COUNTER Parameter
Ngaran Parameter
Tipe
LPM_WIDTH
Integer
LPM_DIRECTION
Senar
LPM_MODULUS LPM_AVALUE
Integer
Integer / String
LPM_SVALUE LPM_HINT
Integer / String
Senar
LPM_TYPE
Senar
Dibutuhkeun Sumuhun Henteu Henteu
Henteu henteu
No
Katerangan
Nangtukeun rubak data [] sarta q [] palabuhan, lamun maranéhna dipaké.
Nilaina nyaéta UP, DOWN, sareng UNUSED. Lamun parameter LPM_DIRECTION dipaké, port updown teu bisa disambungkeun. Lamun port updown teu disambungkeun, nilai standar parameter LPM_DIRECTION nyaeta UP.
Jumlah maksimum, tambah hiji. Jumlah kaayaan unik dina siklus counter urang. Lamun nilai beban leuwih badag batan parameter LPM_MODULUS, paripolah counter teu dieusian.
Nilai konstan anu dimuat nalika aset ditegeskeun luhur. Lamun nilai dieusian leuwih badag batan atawa sarua jeung , paripolah counter mangrupa undefined (X) tingkat logika, dimana nyaéta LPM_MODULUS, upami aya, atanapi 2 ^ LPM_WIDTH. Intel nyarankeun yén anjeun nangtukeun nilai ieu salaku angka decimal pikeun desain AHDL.
Nilai konstan anu dimuat dina ujung rising tina port jam nalika port sset ieu negeskeun tinggi. Intel nyarankeun yén anjeun nangtukeun nilai ieu salaku angka decimal pikeun desain AHDL.
Lamun anjeun instantiate perpustakaan fungsi modul parameterized (LPM) dina Desain VHDL File (.vhd), anjeun kudu make parameter LPM_HINT pikeun nangtukeun hiji parameter Intel-spésifik. Pikeun example: LPM_HINT = "CHAIN_SIZE = 8, ONE_INPUT_IS_CONSTANT = YES"
Nilai standar nyaéta UNUSED.
Nangtukeun perpustakaan nami éntitas modul parameterized (LPM) dina desain VHDL files.
dituluykeun…
Pituduh Pamaké Intel FPGA Integer Arithmetic IP Cores 10
Kirim Eupan Balik
2. LPM_COUNTER (counter) IP Core 683490 | 2020.10.05
Ngaran Parameter INTENDED_DEVICE_FAMILY CARRY_CNT_EN
LAWIDE_SCLR
LPM_PORT_UPDOWN
Ketik String String
Senar
Senar
Dibutuhkeun No
No
No
Katerangan
Parameter ieu dianggo pikeun modél sareng tujuan simulasi paripolah. Parameter ieu dianggo pikeun modél sareng tujuan simulasi paripolah. Editor parameter ngitung nilai pikeun parameter ieu.
Parameter husus Intel. Anjeun kedah nganggo parameter LPM_HINT pikeun nangtukeun parameter CARRY_CNT_EN dina desain VHDL files. Nilaina nyaéta SMART, ON, OFF, sareng UNUSED. Aktipkeun fungsi LPM_COUNTER pikeun nyebarkeun sinyal cnt_en ngaliwatan ranté mawa. Dina sababaraha kasus, setelan parameter CARRY_CNT_EN bisa boga pangaruh saeutik kana speed, jadi Anjeun meureun hoyong mareuman. Nilai standar nyaéta SMART, anu nyayogikeun perdagangan pangsaéna antara ukuran sareng laju.
Parameter husus Intel. Anjeun kedah nganggo parameter LPM_HINT pikeun nangtukeun parameter LAWIDE_SCLR dina desain VHDL files. Nileyna ON, OFF, atanapi UNUSED. Nilai standar nyaéta ON. Ngidinan anjeun nganonaktipkeun pamakean fitur sclr LABwide anu aya dina kulawarga alat anu luntur. Mareuman pilihan ieu ngaronjatkeun kasempetan pikeun pinuh ngagunakeun LABs sawaréh dieusian, sahingga bisa ngidinan dénsitas logika luhur lamun SCLR teu dilarapkeun ka LAB lengkep. Parameter ieu sayogi pikeun kasaluyuan mundur, sareng Intel nyarankeun anjeun henteu nganggo parameter ieu.
Nangtukeun pamakean port input updown. Upami disingkahkeun nilai standar nyaéta PORT_CONNECTIVITY. Lamun nilai port disetel ka PORT_USED, port ieu diperlakukeun salaku dipaké. Lamun nilai port disetel ka PORT_UNUSED, port nu dianggap salaku henteu kapake. Lamun nilai port disetel ka PORT_CONNECTIVITY, pamakéan port ditangtukeun ku pariksa konektipitas port.
Kirim Eupan Balik
Pituduh Pamaké Intel FPGA Integer Arithmetic IP Cores 11
683490 | 2020.10.05 Kirim Eupan Balik
3. LPM_DIVIDE (Divider) Intel FPGA IP Core
Gambar 2.
Inti LPM_DIVIDE Intel FPGA IP ngalaksanakeun divider pikeun ngabagi nilai input numerator ku nilai input denominator pikeun ngahasilkeun hasil sareng sésana.
Gambar di handap ieu nunjukkeun palabuhan pikeun inti IP LPM_DIVIDE.
LPM_DIVIDE Palabuhan
LPM_DIVIDE
angka [] denom [] jam
hasil bagi [] tetep []
clken aclr
inst
3.1. Fitur
Inti IP LPM_DIVIDE nawiskeun fitur-fitur di handap ieu: · Ngahasilkeun divider anu ngabagi nilai input numerator sareng input denominator.
nilai pikeun ngahasilkeun hasil bagi jeung sésana. · Ngarojong lebar data 1 bit. · Ngarojong format representasi data anu ditandatanganan sareng henteu ditandatanganan pikeun numerator
jeung nilai pangbagi. · Ngarojong optimasi daérah atanapi kacepetan. · Nyadiakeun pilihan pikeun nangtukeun kaluaran sésa positif. · Ngarojong pipelining configurable kaluaran latency. · Ngarojong pilihan asynchronous jelas tur jam ngaktifkeun palabuhan.
3.2. Prototipe Verilog HDL
Prototipe Verilog HDL di handap ieu aya dina Desain Verilog File (.v) lpm.v dina diréktori édasintesis.
modul lpm_divide ( quotient, tetep, numer, denom, jam, clken, aclr); parameter lpm_type = "lpm_divide"; parameter lpm_widthn = 1; parameter lpm_widthd = 1; parameter lpm_nrepresentation = "UNSIGNED"; parameter lpm_drepresentation = "UNSIGNED"; parameter lpm_remainderpositive = "BENER"; parameter lpm_pipeline = 0;
Intel Corporation. Sadaya hak disimpen. Intel, logo Intel, sareng merek Intel sanés mangrupikeun mérek dagang Intel Corporation atanapi anak perusahaanna. Intel ngajamin kinerja produk FPGA sareng semikonduktor na kana spésifikasi ayeuna saluyu sareng garansi standar Intel, tapi ngagaduhan hak pikeun ngarobih naon waé produk sareng jasa iraha waé tanpa aya bewara. Intel henteu nanggung tanggung jawab atanapi tanggung jawab anu timbul tina aplikasi atanapi pamakean inpormasi, produk, atanapi jasa anu dijelaskeun di dieu iwal ti dinyatakeun sapuk sacara tinulis ku Intel. Konsumén Intel disarankan pikeun ménta versi panganyarna tina spésifikasi alat sateuacan ngandelkeun inpormasi anu diterbitkeun sareng sateuacan nempatkeun pesenan produk atanapi jasa. *Ngaran sareng merek sanésna tiasa diklaim salaku hak milik batur.
ISO 9001: 2015 didaptarkeun
3. LPM_DIVIDE (divider) Intel FPGA IP Core 683490 | 2020.10.05
parameter lpm_hint = "TEU DIGUNA"; jam input; input clken; input aclr; input [lpm_widthn-1: 0] angka; input [lpm_widthd-1: 0] denom; kaluaran [lpm_widthn-1: 0] hasil bagi; kaluaran [lpm_widthd-1: 0] tetep; modul tungtung
3.3. Déklarasi komponén VHDL
Déklarasi komponén VHDL aya dina Desain VHDL File (.vhd) LPM_PACK.vhd dina diréktori perpustakaanvhdllpm.
komponén LPM_DIVIDE generik (LPM_WIDTHN: alam; LPM_WIDTHD: alam;
LPM_NREPRESENTATION: string: = "UNSIGNED"; LPM_DREPRESENTATION: string: = "UNSIGNED"; LPM_PIPELINE : natural := 0; LPM_TYPE: string: = L_DIVIDE; LPM_HINT: string: = "TEU DIGUNA"); port (NUMER: dina std_logic_vector (LPM_WIDTHN-1 turun ka 0); DENOM: dina std_logic_vector (LPM_WIDTHD-1 turun ka 0); ACLR: dina std_logic: = '0'; JAM: dina std_logic: = '0'; CLKEN: dina std_logic : = '1';QUOTIENT: kaluar std_logic_vector(LPM_WIDTHN-1 turun jadi 0);TINGGAL: kaluar std_logic_vector(LPM_WIDTHD-1 turun jadi 0)); komponén tungtung;
3.4. VHDL LIBRARY_USE Déklarasi
Déklarasi VHDL LIBRARY-USE henteu diperyogikeun upami anjeun nganggo Déklarasi Komponen VHDL.
PUSTAKA lpm; USE lpm.lpm_components.all;
3.5. Palabuhan
Tabel di handap ieu daptar palabuhan input sareng kaluaran pikeun inti IP LPM_DIVIDE.
Tabél 5.
LPM_DIVIDE palabuhan Input
Ngaran Port
Dibutuhkeun
angka []
Sumuhun
denom []
Sumuhun
Katerangan
Input data numerator. Ukuran port input gumantung kana nilai parameter LPM_WIDTHN.
Input data pangbagi. Ukuran port input gumantung kana nilai parameter LPM_WIDTHD.
dituluykeun…
Kirim Eupan Balik
Pituduh Pamaké Intel FPGA Integer Arithmetic IP Cores 13
3. LPM_DIVIDE (divider) Intel FPGA IP Core 683490 | 2020.10.05
Port Ngaran jam clken
aclr
Dibutuhkeun No
No
Katerangan
Input jam pikeun pamakéan pipelined. Pikeun nilai LPM_PIPELINE lian ti 0 (standar), port jam kudu diaktipkeun.
Jam ngaktifkeun pamakéan pipelined. Nalika port clken negeskeun tinggi, operasi division lumangsung. Nalika sinyal low, euweuh operasi lumangsung. Upami dileungitkeun, nilai standarna nyaéta 1.
Port jelas Asynchronous dipaké iraha wae pikeun ngareset pipeline ka sadaya '0 urang asynchronously kana input jam.
Tabél 6.
LPM_DIVIDE Ports Kaluaran
Ngaran Port
Dibutuhkeun
Katerangan
hasil bagi []
Sumuhun
Kaluaran data. Ukuran port kaluaran gumantung kana LPM_WIDTHN
nilai parameter.
tetep []
Sumuhun
Kaluaran data. Ukuran port kaluaran gumantung kana LPM_WIDTHD
nilai parameter.
3.6. Parameter
Tabel di handap ieu daptar parameter pikeun inti LPM_DIVIDE Intel FPGA IP.
Ngaran Parameter
Tipe
Dibutuhkeun
Katerangan
LPM_WIDTHN
Integer
Sumuhun
Nangtukeun rubak numer [] jeung
quotient [] palabuhan. Nilaina 1 dugi ka 64.
LPM_WIDTHD
Integer
Sumuhun
Nangtukeun rubak denom [] jeung
tetep [] palabuhan. Nilaina 1 dugi ka 64.
LPM_NREPRESENTATION LPM_DREPRESENTATION
String String
No
Répréséntasi tanda tina input numerator.
Nilai anu ditandatanganan sareng UNSIGNED. Nalika ieu
parameter disetel ka SIGNED, divider
interprets angka [] input sakumaha ditandatanganan dua urang
pelengkap.
No
Répréséntasi tanda tina input pangbagi.
Nilai anu ditandatanganan sareng UNSIGNED. Nalika ieu
parameter disetel ka SIGNED, divider
interprets denom [] input sakumaha ditandatanganan dua urang
pelengkap.
LPM_TYPE
Senar
No
Nangtukeun perpustakaan parameterized
modul (LPM) ngaran éntitas dina desain VHDL
files (.vhd).
LPM_HINT
Senar
No
Lamun anjeun instantiate perpustakaan tina
modul parameterized (LPM) fungsi dina a
Desain VHDL File (.vhd), anjeun kedah nganggo
LPM_HINT parameter pikeun nangtukeun hiji Intel-
parameter husus. Pikeun example: LPM_HINT
= "UKURAN_RANTA = 8,
ONE_INPUT_IS_CONSTANT = YES” The
nilai standar nyaeta UNUSED.
LPM_REMAINDERPOSITIVE
Senar
No
Parameter husus Intel. Anjeun kedah nganggo
LPM_HINT parameter pikeun nangtukeun
Parameter LPM_REMAINDERPOSITIVE di
Desain VHDL files. Nilai BENER atanapi SALAH.
Upami parameter ieu disetel ka BENER, teras
nilai tetep [] port kudu leuwih gede
dituluykeun…
Pituduh Pamaké Intel FPGA Integer Arithmetic IP Cores 14
Kirim Eupan Balik
3. LPM_DIVIDE (divider) Intel FPGA IP Core 683490 | 2020.10.05
Ngaran Parameter
Tipe
MAXIMIZE_SPEED
Integer
LPM_PIPELINE
Integer
INTENDED_DEVICE_FAMILY SKIP_BITS
Integer string
Dibutuhkeun No
Henteu Henteu
Katerangan
ti atawa sarua jeung nol. Lamun parameter ieu disetel ka BENER, mangka nilai tetep [] port boh enol, atawa nilai nu tanda sarua, boh positif atawa négatif, salaku nilai port numer. Pikeun ngirangan aréa sareng ningkatkeun kagancangan, Intel nyarankeun netepkeun parameter ieu ka BENER dina operasi dimana sésana kedah positip atanapi anu sésana henteu penting.
Parameter husus Intel. Anjeun kedah nganggo parameter LPM_HINT pikeun netepkeun parameter MAXIMIZE_SPEED dina desain VHDL files. Nilaina nyaéta [0..9]. Lamun dipake, nyoba software Intel Quartus Prime ngaoptimalkeun hiji conto husus tina fungsi LPM_DIVIDE pikeun speed tinimbang routability, sarta overrides setelan pilihan logika Téhnik Optimasi. Lamun MAXIMIZE_SPEED henteu kapake, nilai pilihan Téhnik Optimasi dipaké gantina. Lamun nilai MAXIMIZE_SPEED nyaeta 6 atawa saluhureuna, kompiler ngaoptimalkeun inti LPM_DIVIDE IP pikeun speed luhur ku ngagunakeun ranté mawa; lamun nilaina 5 atanapi kirang, compiler implements desain tanpa ranté mawa.
Nangtukeun jumlah siklus jam latency pakait sareng hasil bagi [] sarta tetep[] kaluaran. Nilai nol (0) nunjukkeun yén euweuh latency aya, sarta yén fungsi murni kombinasional ieu instantiated. Upami dileungitkeun, nilai standarna nyaéta 0 (nonpipelined). Anjeun teu bisa nangtukeun nilai pikeun parameter LPM_PIPELINE nu leuwih luhur ti LPM_WIDTHN.
Parameter ieu dianggo pikeun modél sareng tujuan simulasi paripolah. Editor parameter ngitung nilai pikeun parameter ieu.
Ngamungkinkeun division bit fractional leuwih efisien ngaoptimalkeun logika dina bit ngarah ku nyadiakeun jumlah ngarah GND ka LPM_DIVIDE IP inti. Sebutkeun jumlah GND ngarah dina kaluaran quotient kana parameter ieu.
Kirim Eupan Balik
Pituduh Pamaké Intel FPGA Integer Arithmetic IP Cores 15
683490 | 2020.10.05 Kirim Eupan Balik
4. LPM_MULT (Multiplier) IP Core
Gambar 3.
Inti LPM_MULT IP ngalaksanakeun multiplier pikeun ngalikeun dua nilai data input pikeun ngahasilkeun produk salaku kaluaran.
Gambar di handap ieu nunjukkeun palabuhan pikeun inti LPM_MULT IP.
LPM_Mult Ports
LPM_MULT jam dataa[] hasil[] datab[] aclr/sclr clken
inst
Fitur Inpormasi Patali dina kaca 71
4.1. Fitur
Inti IP LPM_MULT nawiskeun fitur-fitur ieu: · Ngahasilkeun multiplier anu ngalikeun dua nilai data input · Ngarojong lebar data 1 bit · Ngarojong format perwakilan data anu ditandatanganan sareng teu ditandatanganan · Ngarojong optimasi area atanapi speed · Ngarojong pipelining sareng latency kaluaran anu tiasa dikonfigurasi · Nyadiakeun pilihan pikeun palaksanaan di dedicated digital signal processing (DSP)
blok circuitry atawa elemen logika (LEs) Catetan: Nalika ngawangun multipliers leuwih badag batan ukuran natively dirojong meureun aya /
bakal dampak kinerja hasilna tina cascading tina blok DSP. · Ngarojong opsional asynchronous clear and clock aktipkeun port input · Ngarojong pilihan sinkron clear kanggo Intel Stratix 10, Intel Arria 10 sareng Intel Cyclone 10 GX alat
Intel Corporation. Sadaya hak disimpen. Intel, logo Intel, sareng merek Intel sanés mangrupikeun mérek dagang Intel Corporation atanapi anak perusahaanna. Intel ngajamin kinerja produk FPGA sareng semikonduktor na kana spésifikasi ayeuna saluyu sareng garansi standar Intel, tapi ngagaduhan hak pikeun ngarobih naon waé produk sareng jasa iraha waé tanpa aya bewara. Intel henteu nanggung tanggung jawab atanapi tanggung jawab anu timbul tina aplikasi atanapi pamakean inpormasi, produk, atanapi jasa anu dijelaskeun di dieu iwal ti dinyatakeun sapuk sacara tinulis ku Intel. Konsumén Intel disarankan pikeun ménta versi panganyarna tina spésifikasi alat sateuacan ngandelkeun inpormasi anu diterbitkeun sareng sateuacan nempatkeun pesenan produk atanapi jasa. *Ngaran sareng merek sanésna tiasa diklaim salaku hak milik batur.
ISO 9001: 2015 didaptarkeun
4. LPM_MULT (Multiplier) IP Core 683490 | 2020.10.05
4.2. Prototipe Verilog HDL
Prototipe Verilog HDL di handap ieu aya dina Desain Verilog File (.v) lpm.v dina diréktori édasintesis.
modul lpm_mult (hasil, dataa, datab, jumlah, jam, clken, aclr) parameter lpm_type = "lpm_mult"; parameter lpm_widtha = 1; parameter lpm_widthb = 1; parameter lpm_widths = 1; parameter lpm_widthp = 1; parameter lpm_representation = "UNSIGNED"; parameter lpm_pipeline = 0; parameter lpm_hint = "TEU DIGUNA"; jam input; input clken; input aclr; input [lpm_widtha-1: 0] dataa; input [lpm_widthb-1: 0] datab; input [lpm_widths-1: 0] jumlahna; kaluaran [lpm_widthp-1: 0] hasilna; modul tungtung
4.3. Déklarasi komponén VHDL
Déklarasi komponén VHDL aya dina Desain VHDL File (.vhd) LPM_PACK.vhd dina diréktori perpustakaanvhdllpm.
komponén LPM_MULT generik ( LPM_WIDTHA : natural; LPM_WIDTHB : natural; LPM_WIDTHS : natural := 1; LPM_WIDTHP : natural;
LPM_REPRESENTATION: string: = "UNSIGNED"; LPM_PIPELINE : natural := 0; LPM_TYPE: string: = L_MULT; LPM_HINT: string: = "TEU DIGUNA"); port (DATAA: dina std_logic_vector (LPM_WIDTHA-1 turun ka 0); DATAB: dina std_logic_vector (LPM_WIDTHB-1 turun ka 0); ACLR: dina std_logic: = '0'; JAM: dina std_logic: = '0'; CLKEN: dina std_logic : = '1';SUM: dina std_logic_vector(LPM_WIDTHS-1 turun ka 0):= (LAIN => '0');RESULT: kaluar std_logic_vector(LPM_WIDTHP-1 turun ka 0)); komponén tungtung;
4.4. VHDL LIBRARY_USE Déklarasi
Déklarasi VHDL LIBRARY-USE henteu diperyogikeun upami anjeun nganggo Déklarasi Komponen VHDL.
PUSTAKA lpm; USE lpm.lpm_components.all;
Kirim Eupan Balik
Pituduh Pamaké Intel FPGA Integer Arithmetic IP Cores 17
4. LPM_MULT (Multiplier) IP Core 683490 | 2020.10.05
4.5. Sinyal
Tabél 7.
LPM_MULT Sinyal Input
Ngaran Sinyal
Dibutuhkeun
Katerangan
datana []
Sumuhun
Input data.
Pikeun alat Intel Stratix 10, Intel Arria 10, sareng Intel Cyclone 10 GX, ukuran sinyal input gumantung kana nilai parameter lebar Dataa.
Pikeun alat LP anu langkung lami sareng Intel Cyclone 10, ukuran sinyal input gumantung kana nilai parameter LPM_WIDTHA.
datab []
Sumuhun
Input data.
Pikeun alat Intel Stratix 10, Intel Arria 10, sareng Intel Cyclone 10 GX, ukuran sinyal input gumantung kana nilai parameter lebar Datab.
Pikeun alat LP anu langkung lami sareng Intel Cyclone 10, ukuran sinyal input gumantung
dina nilai parameter LPM_WIDTHB.
jam
No
Input jam pikeun pamakéan pipelined.
Pikeun alat LP heubeul jeung Intel Cyclone 10, sinyal jam kudu diaktipkeun pikeun nilai LPM_PIPELINE lian ti 0 (standar).
Pikeun alat Intel Stratix 10, Intel Arria 10, sareng Intel Cyclone 10 GX, sinyal jam kedah diaktipkeun upami nilai Latency sanés ti 1 (standar).
clken
No
Aktipkeun jam pikeun pamakéan pipelined. Nalika sinyal clken negeskeun tinggi, éta
operasi panambah / subtractor lumangsung. Nalika sinyal low, euweuh operasi
lumangsung. Upami dileungitkeun, nilai standarna nyaéta 1.
aclr sclr
No
Sinyal jelas Asynchronous dipaké iraha wae pikeun ngareset pipa ka sadaya 0s,
asynchronously kana sinyal jam. Pipa inisialisasi kana undefined (X)
tingkat logika. Kaluaran mangrupikeun nilai anu konsisten, tapi henteu nol.
No
Sinyal jelas sinkron dipaké iraha wae pikeun ngareset pipa ka sadaya 0s,
sinkron kana sinyal jam. Pipa inisialisasi kana undefined (X)
tingkat logika. Kaluaran mangrupikeun nilai anu konsisten, tapi henteu nol.
Tabél 8.
LPM_MULT sinyal Kaluaran
sinyal Ngaran
Dibutuhkeun
Katerangan
hasilna []
Sumuhun
Kaluaran data.
Pikeun alat LP heubeul jeung Intel Cyclone 10, ukuran sinyal kaluaran gumantung kana nilai parameter LPM_WIDTHP. Upami LPM_WIDTHP < max (LPM_WIDTHA + LPM_WIDTHB, LPM_WIDTHS) atanapi (LPM_WIDTHA + LPM_WIDTHS), ngan ukur LPM_WIDTHP MSB anu aya.
Pikeun Intel Stratix 10, Intel Arria 10 sareng Intel Cyclone 10 GX, ukuran sinyal kaluaran gumantung kana parameter lebar Hasil.
4.6. Parameter pikeun Stratix V, Arria V, Cyclone V, sareng Alat Intel Cyclone 10 LP
4.6.1. Tab Umum
Tabél 9.
Tab Umum
Parameter
Nilai
Konfigurasi multiplier
Kalikeun input 'dataa' ku input 'datab'
Nilai standar
Katerangan
Kalikeun input 'dataa' ku input 'datab'
Pilih konfigurasi nu dipikahoyong pikeun multiplier nu.
dituluykeun…
Pituduh Pamaké Intel FPGA Integer Arithmetic IP Cores 18
Kirim Eupan Balik
4. LPM_MULT (Multiplier) IP Core 683490 | 2020.10.05
Parameter
Sakumaha lebar input 'dataa'? Sabaraha lega input 'datab'? Kumaha kedah lebar kaluaran 'hasil' ditangtukeun? Watesan lebar
Nilai
Kalikeun input 'dataa' ku sorangan (operasi kuadrat)
1-256 bit
Nilai standar
Katerangan
8 bitu
Sebutkeun lebar port dataa [].
1-256 bit
8 bitu
Sebutkeun lebar port datab [].
Otomatis ngitung lebar Watesan lebar
1-512 bit
Sauran otomatis y ngitung lebar
Pilih metodeu nu dipikahoyong pikeun nangtukeun lebar hasil[] port.
16 bitu
Sebutkeun lebar hasil [] port.
Nilai ieu ngan bakal efektif upami anjeun milih Watesan lebar dina parameter Tipe.
4.6.2. Umum 2 Tab
meja 10. Umum 2 Tab
Parameter
Nilai
Input Datab
Naha beus input 'datab' gaduh nilai konstan?
Henteu Enya
Jinis multiplikasi
Jenis naon
Teu ditandatanganan
multiplication rék? Ditandatanganan
Palaksanaan
Palaksanaan multiplier mana anu kedah dianggo?
Paké palaksanaan standar
Anggo sirkuit multiplier khusus (Teu sayogi pikeun sadaya kulawarga)
Paké elemen logika
Nilai standar
Katerangan
No
Pilih Sumuhun pikeun nangtukeun nilai konstanta
beus input `datab', upami aya.
Teu ditandatanganan
Sebutkeun format representasi pikeun input dataa [] sareng datab [].
Paké ion implementat standar
Pilih metodeu nu dipikahoyong pikeun nangtukeun lebar hasil[] port.
4.6.3. Tab Pipelin
meja 11. Pipelining Tab
Parameter
Naha anjeun hoyong pipa No
fungsi?
Sumuhun
Nilai
Jieun 'aclr'
—
port jelas Asynchronous
Nilai standar
Katerangan
No
Pilih Sumuhun pikeun ngaktipkeun pipeline register ka
kaluaran multiplier sarta nangtukeun dipikahoyong
latency kaluaran dina siklus jam. Ngaktifkeun
register pipa nambihan latency tambahan kana
kaluaran.
Teu dipariksa
Pilih pilihan ieu pikeun ngaktifkeun port aclr nganggo asynchronous clear pikeun pendaptaran pipa.
dituluykeun…
Kirim Eupan Balik
Pituduh Pamaké Intel FPGA Integer Arithmetic IP Cores 19
4. LPM_MULT (Multiplier) IP Core 683490 | 2020.10.05
Parameter
Jieun jam 'clken' ngaktifkeun jam
Optimasi
Naon jinis optimasi anu anjeun pikahoyong?
Nilai -
Daérah Speed Default
Nilai standar
Katerangan
Teu dipariksa
Nangtukeun aktip jam tinggi aktip pikeun port jam tina register pipa
Default
Sebutkeun optimasi anu dipikahoyong pikeun inti IP.
Pilih Default pikeun ngidinan software Intel Quartus Prime pikeun nangtukeun optimasi pangalusna pikeun inti IP.
4.7. Parameter pikeun Intel Stratix 10, Intel Arria 10, sareng Alat Intel Cyclone 10 GX
4.7.1. Tab Umum
meja 12. Tab Umum
Parameter
Nilai
Nilai standar
Katerangan
Jinis Konfigurasi multiplier
Data Port Widths
Kalikeun input 'dataa' ku input 'datab'
Kalikeun input 'dataa' ku sorangan (operasi kuadrat)
Kalikeun input 'dataa' ku input 'datab'
Pilih konfigurasi nu dipikahoyong pikeun multiplier nu.
Lebar datana
1-256 bit
8 bitu
Sebutkeun lebar port dataa [].
Lebar datab
1-256 bit
8 bitu
Sebutkeun lebar port datab [].
Kumaha kedah lebar kaluaran 'hasil' ditangtukeun?
Tipe
Otomatis ngitung lebar
Watesan lebar
Sauran otomatis y ngitung lebar
Pilih metodeu nu dipikahoyong pikeun nangtukeun lebar hasil[] port.
Nilai
1-512 bit
16 bitu
Sebutkeun lebar hasil [] port.
Nilai ieu ngan bakal efektif upami anjeun milih Watesan lebar dina parameter Tipe.
lebar hasilna
1-512 bit
—
Nembongkeun lebar éféktif hasil [] port.
4.7.2. Umum 2 Tab
meja 13. Umum 2 Tab
Parameter
Input Datab
Naha beus input 'datab' gaduh nilai konstan?
Henteu Enya
Nilai
Nilai standar
Katerangan
No
Pilih Sumuhun pikeun nangtukeun nilai konstanta
beus input `datab', upami aya.
dituluykeun…
Pituduh Pamaké Intel FPGA Integer Arithmetic IP Cores 20
Kirim Eupan Balik
4. LPM_MULT (Multiplier) IP Core 683490 | 2020.10.05
Parameter
Nilai
Nilai
Nilai naon waé anu langkung ageung tibatan 0
Jinis multiplikasi
Jenis naon
Teu ditandatanganan
multiplication rék? Ditandatanganan
Gaya Palaksanaan
Palaksanaan multiplier mana anu kedah dianggo?
Paké palaksanaan standar
Paké circuitry multiplier dedicated
Paké elemen logika
Nilai standar
Katerangan
0
Sebutkeun nilai konstanta port datab [].
Teu ditandatanganan
Sebutkeun format representasi pikeun input dataa [] sareng datab [].
Paké ion implementat standar
Pilih metodeu nu dipikahoyong pikeun nangtukeun lebar hasil[] port.
4.7.3. Pipelining
meja 14. Pipelining Tab
Parameter
Nilai
Naha anjeun badé ngahubungkeun fungsina?
Pipa
Henteu Enya
Latency Hapus Tipe Sinyal
Nilai naon waé anu langkung ageung tibatan 0.
Euweuh ACLR SCLR
Jieun jam 'clken'
—
ngaktipkeun jam
Naon jinis optimasi anu anjeun pikahoyong?
Tipe
Daérah Speed Default
Nilai standar
Katerangan
No 1 Euweuh
—
Pilih Sumuhun pikeun ngaktipkeun register pipa ka kaluaran multiplier urang. Aktipkeun register pipa nambihan latency tambahan kana kaluaran.
Sebutkeun latency kaluaran anu dipikahoyong dina siklus jam.
Sebutkeun jinis reset pikeun register pipa. Pilih NONE upami anjeun henteu nganggo register pipa. Pilih ACLR pikeun ngagunakeun jelas Asynchronous pikeun register pipa. Ieu bakal ngahasilkeun port ACLR. Pilih SCLR ngagunakeun jelas sinkron pikeun register pipa. Ieu bakal ngahasilkeun port SCLR.
Nangtukeun aktip jam tinggi aktip pikeun port jam tina register pipa
Default
Sebutkeun optimasi anu dipikahoyong pikeun inti IP.
Pilih Default pikeun ngidinan software Intel Quartus Prime pikeun nangtukeun optimization pangalusna pikeun inti IP.
Kirim Eupan Balik
Pituduh Pamaké Intel FPGA Integer Arithmetic IP Cores 21
683490 | 2020.10.05 Kirim Eupan Balik
5. LPM_ADD_SUB (Adder/Subtractor)
Gambar 4.
Inti IP LPM_ADD_SUB ngamungkinkeun anjeun nerapkeun panambah atanapi pangurangan pikeun nambihan atanapi ngirangan set data pikeun ngahasilkeun kaluaran anu ngandung jumlah atanapi bédana nilai input.
Gambar di handap ieu nunjukkeun palabuhan pikeun inti IP LPM_ADD_SUB.
LPM_ADD_SUB Palabuhan
LPM_ADD_SUB add_sub cin
datana []
jam clken datab [] aclr
hasil [] ngabahekeun cout
inst
5.1. Fitur
Inti IP LPM_ADD_SUB nawiskeun fitur-fitur ieu: · Ngahasilkeun panambah, pangurangan, sareng panambah / pangurangan anu tiasa dikonfigurasi sacara dinamis
fungsi. · Ngarojong lebar data 1 bit. · Ngarojong format representasi data sapertos ditandatanganan sareng teu ditandatanganan. · Ngarojong pilihan mawa-in (nginjeum-kaluar), asynchronous jelas, jeung jam aktip
palabuhan input. · Ngarojong pilihan mawa-kaluar (nginjeum-in) jeung port output overflow. · Assigns boh salah sahiji beus data input ka konstanta. · Ngarojong pipelining kalawan latency kaluaran configurable.
Intel Corporation. Sadaya hak disimpen. Intel, logo Intel, sareng merek Intel sanés mangrupikeun mérek dagang Intel Corporation atanapi anak perusahaanna. Intel ngajamin kinerja produk FPGA sareng semikonduktor na kana spésifikasi ayeuna saluyu sareng garansi standar Intel, tapi ngagaduhan hak pikeun ngarobih naon waé produk sareng jasa iraha waé tanpa aya bewara. Intel henteu nanggung tanggung jawab atanapi tanggung jawab anu timbul tina aplikasi atanapi pamakean inpormasi, produk, atanapi jasa anu dijelaskeun di dieu iwal ti dinyatakeun sapuk sacara tinulis ku Intel. Konsumén Intel disarankan pikeun ménta versi panganyarna tina spésifikasi alat sateuacan ngandelkeun inpormasi anu diterbitkeun sareng sateuacan nempatkeun pesenan produk atanapi jasa. *Ngaran sareng merek sanésna tiasa diklaim salaku hak milik batur.
ISO 9001: 2015 didaptarkeun
5. LPM_ADD_SUB (Adder / Subtractor) 683490 | 2020.10.05
5.2. Prototipe Verilog HDL
Prototipe Verilog HDL di handap ieu aya dina Desain Verilog File (.v) lpm.v dina diréktori édasintesis.
modul lpm_add_sub (hasil, cout, ngabahekeun,add_sub, cin, dataa, datab, jam, clken, aclr); parameter lpm_type = "lpm_add_sub"; parameter lpm_width = 1; parameter lpm_direction = "TEU DIGUNA"; parameter lpm_representation = "SIGNED"; parameter lpm_pipeline = 0; parameter lpm_hint = "TEU DIGUNA"; input [lpm_width-1: 0] dataa, datab; input add_sub, cin; jam input; input clken; input aclr; kaluaran [lpm_width-1: 0] hasilna; kaluaran cout, ngabahekeun; modul tungtung
5.3. Déklarasi komponén VHDL
Déklarasi komponén VHDL aya dina Desain VHDL File (.vhd) LPM_PACK.vhd dina diréktori perpustakaanvhdllpm.
komponén LPM_ADD_SUB generik (LPM_WIDTH: alam;
LPM_DIRECTION: string: = "TEU DIGUNA"; LPM_REPRESENTATION: string: = "Signed"; LPM_PIPELINE : natural := 0; LPM_TYPE : string : = L_ADD_SUB; LPM_HINT: string: = "TEU DIGUNA"); port (DATAA: dina std_logic_vector (LPM_WIDTH-1 turun ka 0); DATAB: dina std_logic_vector (LPM_WIDTH-1 handap ka 0); ACLR: dina std_logic: = '0'; JAM: dina std_logic: = '0'; CLKEN: dina std_logic : = '1'; CIN: dina std_logic: = 'Z'; ADD_SUB: dina std_logic: = '1'; HASIL: kaluar std_logic_vector (LPM_WIDTH-1 turun ka 0); COUT: kaluar std_logic; OVERFLOW: kaluar std_logic); komponén tungtung;
5.4. VHDL LIBRARY_USE Déklarasi
Déklarasi VHDL LIBRARY-USE henteu diperyogikeun upami anjeun nganggo Déklarasi Komponen VHDL.
PUSTAKA lpm; USE lpm.lpm_components.all;
5.5. Palabuhan
Tabel di handap ieu daptar palabuhan input sareng kaluaran pikeun inti IP LPM_ADD_SUB.
Kirim Eupan Balik
Pituduh Pamaké Intel FPGA Integer Arithmetic IP Cores 23
5. LPM_ADD_SUB (Adder / Subtractor) 683490 | 2020.10.05
meja 15. LPM_ADD_SUB IP Core Input Ports
Ngaran Port
Dibutuhkeun
Katerangan
cin
No
Mawa-asup ka bit-urutan handap. Pikeun operasi tambahan, nilai standar 0. Pikeun
operasi pangurangan, nilai standar nyaéta 1.
datana []
Sumuhun
Input data. Ukuran port input gumantung kana nilai parameter LPM_WIDTH.
datab []
Sumuhun
Input data. Ukuran port input gumantung kana nilai parameter LPM_WIDTH.
add_sub
No
Port input pilihan pikeun ngaktipkeun switching dinamis antara panambah jeung subtractor
fungsi. Lamun parameter LPM_DIRECTION dipaké, add_sub teu bisa dipaké. Lamun
disingkahkeun, nilai standar nyaéta ADD. Intel nyarankeun yén anjeun ngagunakeun éta
Parameter LPM_DIRECTION pikeun nangtukeun operasi fungsi LPM_ADD_SUB,
tinimbang assigning konstanta ka port add_sub.
jam
No
Input pikeun pamakéan pipelined. Port jam nyadiakeun input jam pikeun pipelined a
operasi. Pikeun nilai LPM_PIPELINE lian ti 0 (standar), port jam kudu
diaktipkeun.
clken
No
Aktipkeun jam pikeun pamakéan pipelined. Nalika port clken ditegeskeun luhur, panambah /
operasi subtractor lumangsung. Nalika sinyal low, euweuh operasi lumangsung. Lamun
dileungitkeun, nilai standar nyaéta 1.
aclr
No
Asynchronous jelas pikeun pamakéan pipelined. Pipa inisialisasi kana undefined (X)
tingkat logika. Port aclr tiasa dianggo iraha waé pikeun ngareset pipa ka sadaya 0s,
asynchronously kana sinyal jam.
meja 16. LPM_ADD_SUB IP Core Kaluaran palabuhan
Ngaran Port
Dibutuhkeun
Katerangan
hasilna []
Sumuhun
Kaluaran data. Ukuran port kaluaran gumantung kana parameter LPM_WIDTH
peunteun.
cout
No
Carry-out (injeuman-in) tina bit paling signifikan (MSB). port cout ngabogaan fisik
interpretasi salaku ngalaksanakeun (injeuman) tina MSB. port cout ngadeteksi
ngabahekeun dina operasi UNSIGNED. port cout ngoperasikeun dina ragam sarua pikeun
Operasi SIGNED sareng UNSIGNED.
ngabahekeun
No
Output iwal overflow pilihan. Port mudal boga interpretasi fisik salaku
XOR tina carry-in ka MSB kalawan mawa-out tina MSB. The port ngabahekeun
negeskeun lamun hasilna ngaleuwihan precision sadia, sarta dipaké ngan lamun éta
Nilai parameter LPM_REPRESENTATION geus SIGNED.
5.6. Parameter
Tabel di handap ieu daptar parameter LPM_ADD_SUB IP inti.
meja 17. LPM_ADD_SUB IP Parameter Inti
Ngaran parameter LPM_WIDTH
Tipe Integer
Dibutuhkeun Sumuhun
Katerangan
Nangtukeun lebar port dataa [], datab [], sareng hasil [].
LPM_DIRECTION
Senar
No
Nilaina nyaéta ADD, SUB, sareng UNUSED. Upami disingkahkeun, nilai standar nyaéta DEFAULT, anu ngarahkeun parameter pikeun nyandak nilaina tina port add_sub. Port add_sub teu tiasa dianggo upami LPM_DIRECTION dianggo. Intel nyarankeun yén anjeun nganggo parameter LPM_DIRECTION pikeun nangtukeun operasi fungsi LPM_ADD_SUB, tinimbang napelkeun konstanta ka port add_sub.
dituluykeun…
Pituduh Pamaké Intel FPGA Integer Arithmetic IP Cores 24
Kirim Eupan Balik
5. LPM_ADD_SUB (Adder / Subtractor) 683490 | 2020.10.05
Ngaran Parameter LPM_REPRESENTATION LPM_PIPELINE LPM_HINT LPM_TYPE ONE_INPUT_IS_CONSTANT MAXIMIZE_SPEED
INTENDED_DEVICE_FAMILY
Ketik String Integer String String String Integer
Senar
Diperlukeun Henteu Henteu Henteu Henteu Henteu Henteu
No
Katerangan
Nangtukeun jinis tambihan anu dilakukeun. Nilai anu ditandatanganan sareng UNSIGNED. Upami disingkahkeun, nilai standar nyaéta SIGNED. Nalika parameter ieu disetel ka SIGNED, panambah / subtractor interprets input data salaku ditandatanganan dua urang pelengkap.
Nangtukeun jumlah siklus jam latency pakait sareng hasil[] kaluaran. A nilai nol (0) nunjukkeun yén euweuh latency aya, sarta yén fungsi murni kombinasional bakal instantiated. Upami dileungitkeun, nilai standarna nyaéta 0 (non-pipelined).
Ngidinan Anjeun pikeun nangtukeun parameter Intel-spésifik dina desain VHDL files (.vhd). Nilai standar nyaéta UNUSED.
Nangtukeun perpustakaan nami éntitas modul parameterized (LPM) dina desain VHDL files.
Parameter husus Intel. Anjeun kedah nganggo parameter LPM_HINT pikeun nangtukeun parameter ONE_INPUT_IS_CONSTANT dina desain VHDL files. Nilaina nyaéta YES, NO, sareng UNUSED. Nyadiakeun optimasi gede lamun hiji input konstan. Upami disingkahkeun, nilai standar nyaéta NO.
Parameter husus Intel. Anjeun kedah nganggo parameter LPM_HINT pikeun netepkeun parameter MAXIMIZE_SPEED dina desain VHDL files. Anjeun tiasa nangtukeun nilai antara 0 jeung 10. Lamun dipaké, software Intel Quartus Prime usaha ngaoptimalkeun hiji conto husus tina fungsi LPM_ADD_SUB pikeun speed tinimbang routability, sarta overrides setelan pilihan logika Téhnik Optimasi. Lamun MAXIMIZE_SPEED henteu kapake, nilai pilihan Téhnik Optimasi dipaké gantina. Lamun setelan pikeun MAXIMIZE_SPEED nyaeta 6 atawa saluhureuna, kompiler ngaoptimalkeun inti LPM_ADD_SUB IP pikeun speed luhur ngagunakeun ranté mawa; lamun setelan 5 atanapi kirang, compiler implements desain tanpa ranté mawa. Parameter ieu kudu dieusian pikeun alat Cyclone, Stratix, jeung Stratix GX ngan lamun port add_sub teu dipaké.
Parameter ieu dianggo pikeun modél sareng tujuan simulasi paripolah. Editor parameter ngitung nilai pikeun parameter ieu.
Kirim Eupan Balik
Pituduh Pamaké Intel FPGA Integer Arithmetic IP Cores 25
683490 | 2020.10.05 Kirim Eupan Balik
6. LPM_COMPARE (Komparator)
Gambar 5.
LPM_COMPARE IP inti ngabandingkeun nilai dua sét data pikeun nangtukeun hubungan antara aranjeunna. Dina bentuk pangbasajanna, anjeun tiasa nganggo gerbang OR éksklusif pikeun nangtukeun naha dua bit data sarua.
Gambar di handap ieu nunjukkeun palabuhan pikeun inti IP LPM_COMPARE.
LPM_COMPARE Palabuhan
LPM_COMPARE
clken
alb
aeb
datana []
agb
datab []
umur b
jam
aneb
aclr
aleb
inst
6.1. Fitur
Inti IP LPM_COMPARE nawiskeun fitur-fitur ieu: · Ngahasilkeun fungsi komparator pikeun ngabandingkeun dua sét data · Ngarojong lebar data 1 bit · Ngarojong format perwakilan data sapertos ditandatanganan sareng teu ditandatanganan · Ngahasilkeun jinis kaluaran ieu:
— alb (input A kirang ti input B) — aeb (input A sami sareng input B) — agb (input A langkung ageung tibatan input B) — ageb (input A langkung ageung atanapi sami sareng input B) — aneb ( input A teu sarua jeung input B) — aleb (input A kurang atawa sarua jeung input B) · Ngarojong pilihan Asynchronous jelas tur jam ngaktifkeun port input · Napelkeun datab [] input ka konstanta · Ngarojong pipelining kalawan latency kaluaran configurable
Intel Corporation. Sadaya hak disimpen. Intel, logo Intel, sareng merek Intel sanés mangrupikeun mérek dagang Intel Corporation atanapi anak perusahaanna. Intel ngajamin kinerja produk FPGA sareng semikonduktor na kana spésifikasi ayeuna saluyu sareng garansi standar Intel, tapi ngagaduhan hak pikeun ngarobih naon waé produk sareng jasa iraha waé tanpa aya bewara. Intel henteu nanggung tanggung jawab atanapi tanggung jawab anu timbul tina aplikasi atanapi pamakean inpormasi, produk, atanapi jasa anu dijelaskeun di dieu iwal ti dinyatakeun sapuk sacara tinulis ku Intel. Konsumén Intel disarankan pikeun ménta versi panganyarna tina spésifikasi alat sateuacan ngandelkeun inpormasi anu diterbitkeun sareng sateuacan nempatkeun pesenan produk atanapi jasa. *Ngaran sareng merek sanésna tiasa diklaim salaku hak milik batur.
ISO 9001: 2015 didaptarkeun
6. LPM_COMPARE (Comparator) 683490 | 2020.10.05
6.2. Prototipe Verilog HDL
Prototipe Verilog HDL di handap ieu aya dina Desain Verilog File (.v) lpm.v dina diréktori édasintesis.
modul lpm_compare (alb, aeb, agb, aleb, aneb, ageb, dataa, datab, jam, clken, aclr ); parameter lpm_type = "lpm_compare"; parameter lpm_width = 1; parameter lpm_representation = "UNSIGNED"; parameter lpm_pipeline = 0; parameter lpm_hint = "TEU DIGUNA"; input [lpm_width-1: 0] dataa, datab; jam input; input clken; input aclr; kaluaran alb, aeb, agb, aleb, aneb, ageb; modul tungtung
6.3. Déklarasi komponén VHDL
Déklarasi komponén VHDL aya dina Desain VHDL File (.vhd) LPM_PACK.vhd dina diréktori perpustakaanvhdllpm.
komponén LPM_COMPARE generik (LPM_WIDTH: alam;
LPM_REPRESENTATION: string: = "UNSIGNED"; LPM_PIPELINE : natural := 0; LPM_TYPE: string: = L_COMPARE; LPM_HINT: string: = "TEU DIGUNA"); port (DATAA: dina std_logic_vector (LPM_WIDTH-1 turun ka 0); DATAB: dina std_logic_vector (LPM_WIDTH-1 turun ka 0); ACLR: dina std_logic: = '0'; JAM: dina std_logic: = '0'; CLKEN: dina std_logic : = '1'; AGB: kaluar std_logic; AGEB: kaluar std_logic; AEB: kaluar std_logic; ANEB: kaluar std_logic; ALB: kaluar std_logic; ALEB: kaluar std_logic); komponén tungtung;
6.4. VHDL LIBRARY_USE Déklarasi
Déklarasi VHDL LIBRARY-USE henteu diperyogikeun upami anjeun nganggo Déklarasi Komponen VHDL.
PUSTAKA lpm; USE lpm.lpm_components.all;
6.5. Palabuhan
Tabel di handap ieu daptar palabuhan input sareng kaluaran pikeun inti IP LMP_COMPARE.
Kirim Eupan Balik
Pituduh Pamaké Intel FPGA Integer Arithmetic IP Cores 27
6. LPM_COMPARE (Comparator) 683490 | 2020.10.05
meja 18. LPM_COMPARE IP core palabuhan Input
Ngaran Port
Dibutuhkeun
Katerangan
datana []
Sumuhun
Input data. Ukuran port input gumantung kana nilai parameter LPM_WIDTH.
datab []
Sumuhun
Input data. Ukuran port input gumantung kana nilai parameter LPM_WIDTH.
jam
No
Input jam pikeun panggunaan pipa. Port jam nyadiakeun input jam pikeun pipelined a
operasi. Pikeun nilai LPM_PIPELINE lian ti 0 (standar), port jam kudu
diaktipkeun.
clken
No
Aktipkeun jam pikeun pamakéan pipelined. Nalika port clken negeskeun tinggi, éta
operasi ngabandingkeun lumangsung. Nalika sinyal low, euweuh operasi lumangsung. Lamun
dileungitkeun, nilai standar nyaéta 1.
aclr
No
Asynchronous jelas pikeun pamakéan pipelined. The pipeline initializes ka undefined (X) logika
tingkat. Port aclr tiasa dianggo iraha waé pikeun ngareset pipa ka sadaya 0s,
asynchronously kana sinyal jam.
meja 19. LPM_COMPARE IP inti Kaluaran palabuhan
Ngaran Port
Dibutuhkeun
Katerangan
alb
No
port Kaluaran pikeun comparator nu. Ditegeskeun upami input A langkung handap tina input B.
aeb
No
port Kaluaran pikeun comparator nu. Ditegeskeun lamun input A sarua jeung input B.
agb
No
port Kaluaran pikeun comparator nu. Ditegeskeun upami input A langkung ageung tibatan input B.
umur b
No
port Kaluaran pikeun comparator nu. Negeskeun lamun input A leuwih gede atawa sarua jeung input
B.
aneb
No
port Kaluaran pikeun comparator nu. Ditegeskeun lamun input A teu sarua jeung input B.
aleb
No
port Kaluaran pikeun comparator nu. Ditegeskeun lamun input A kurang atawa sarua jeung input B.
6.6. Parameter
Tabel di handap ieu daptar parameter pikeun inti LPM_COMPARE IP.
meja 20. Parameter inti LPM_COMPARE IP
Ngaran Parameter
Tipe
Dibutuhkeun
LPM_WIDTH
Integer Sumuhun
LPM_REPRESENTATION
Senar
No
LPM_PIPELINE
Integer No
LPM_HINT
Senar
No
Katerangan
Nangtukeun lebar dataa [] jeung datab [] palabuhan.
Nangtukeun jinis ngabandingkeun anu dilakukeun. Nilai anu ditandatanganan sareng UNSIGNED. Upami dileungitkeun, nilai standarna UNSIGNED. Nalika nilai parameter ieu disetel ka SIGNED, komparator napsirkeun input data salaku pelengkap dua anu ditandatanganan.
Nangtukeun jumlah siklus jam latensi pakait sareng kaluaran alb, aeb, agb, ageb, aleb, atanapi aneb. A nilai nol (0) nunjukkeun yén euweuh latency aya, sarta yén fungsi murni kombinasional bakal instantiated. Upami dileungitkeun, nilai standarna nyaéta 0 (nonpipelined).
Ngidinan Anjeun pikeun nangtukeun parameter Intel-spésifik dina desain VHDL files (.vhd). Nilai standar nyaéta UNUSED.
dituluykeun…
Pituduh Pamaké Intel FPGA Integer Arithmetic IP Cores 28
Kirim Eupan Balik
6. LPM_COMPARE (Comparator) 683490 | 2020.10.05
Ngaran Parameter LPM_TYPE INTENDED_DEVICE_FAMILY
ONE_INPUT_IS_CONSTANT
Ketik String String
Senar
Dibutuhkeun No
No
Katerangan
Nangtukeun perpustakaan nami éntitas modul parameterized (LPM) dina desain VHDL files.
Parameter ieu dianggo pikeun modél sareng tujuan simulasi paripolah. Editor parameter ngitung nilai pikeun parameter ieu.
Parameter husus Intel. Anjeun kedah nganggo parameter LPM_HINT pikeun nangtukeun parameter ONE_INPUT_IS_CONSTANT dina desain VHDL files. Nileyna nyaéta YES, NO, atawa UNUSED. Nyadiakeun optimasi gede lamun hiji input konstan. Upami disingkahkeun, nilai standar nyaéta NO.
Kirim Eupan Balik
Pituduh Pamaké Intel FPGA Integer Arithmetic IP Cores 29
683490 | 2020.10.05 Kirim Eupan Balik
7. ALTECC (Koreksi Kasalahan Code: Encoder / Decoder) IP Core
Gambar 6.
Intel nyadiakeun inti ALTECC IP pikeun nerapkeun fungsionalitas ECC. ECC ngadeteksi data ruksak anu lumangsung di sisi panarima salila pangiriman data. Metoda koréksi kasalahan ieu paling cocog pikeun situasi dimana kasalahan lumangsung sacara acak tinimbang bursts.
ECC ngadeteksi kasalahan ngaliwatan prosés encoding jeung decoding data. Pikeun example, nalika ECC diterapkeun dina aplikasi transmisi, data dibaca tina sumber disandi saméméh dikirim ka panarima. Kaluaran (kecap kode) tina encoder diwangun ku data atah ditambahan kalawan jumlah bit parity. Jumlah pasti bit parity appended gumantung kana jumlah bit dina data input. Kecap kode anu dihasilkeun lajeng dikirimkeun ka tujuan.
Panarima narima kecap kode jeung decodes eta. Inpormasi anu dicandak ku dekoder nangtukeun naha aya kasalahan. decoder nu ngadeteksi single-bit jeung double-bit kasalahan, tapi ngan bisa ngalereskeun kasalahan single-bit dina data ruksak. Jenis ECC ieu mangrupikeun koreksi kasalahan tunggal deteksi kasalahan ganda (SECDED).
Anjeun tiasa ngonpigurasikeun encoder sareng decoder fungsi inti ALTECC IP. Input data ka encoder dikodekeun pikeun ngahasilkeun kecap kode anu mangrupakeun kombinasi antara input data sareng bit paritas anu dihasilkeun. Kecap kode nu dihasilkeun dikirimkeun ka modul decoder pikeun decoding ngan saméméh ngahontal blok tujuan. Dekoder ngahasilkeun véktor sindrom pikeun nangtukeun naha aya kasalahan dina kecap kode anu ditampi. decoder nu corrects data ngan lamun kasalahan single-bit ti bit data. Taya sinyal anu flagged lamun kasalahan single-bit ti bit parity. Decoder ogé gaduh sinyal bandéra pikeun nunjukkeun status data anu ditampi sareng tindakan anu dilakukeun ku decoder, upami aya.
Angka di handap ieu nunjukkeun palabuhan pikeun inti ALTECC IP.
Palabuhan Encoder ALTECC
ALTECC_ENCODER
data[]
q[]
jam
jam
aclr
inst
Intel Corporation. Sadaya hak disimpen. Intel, logo Intel, sareng merek Intel sanés mangrupikeun mérek dagang Intel Corporation atanapi anak perusahaanna. Intel ngajamin kinerja produk FPGA sareng semikonduktor na kana spésifikasi ayeuna saluyu sareng garansi standar Intel, tapi ngagaduhan hak pikeun ngarobih naon waé produk sareng jasa iraha waé tanpa aya bewara. Intel henteu nanggung tanggung jawab atanapi tanggung jawab anu timbul tina aplikasi atanapi pamakean inpormasi, produk, atanapi jasa anu dijelaskeun di dieu iwal ti dinyatakeun sapuk sacara tinulis ku Intel. Konsumén Intel disarankan pikeun ménta versi panganyarna tina spésifikasi alat sateuacan ngandelkeun inpormasi anu diterbitkeun sareng sateuacan nempatkeun pesenan produk atanapi jasa. *Ngaran sareng merek sanésna tiasa diklaim salaku hak milik batur.
ISO 9001: 2015 didaptarkeun
7. ALTECC (Koreksi Kasalahan Code: encoder / Decoder) IP Core 683490 | 2020.10.05
angka 7. Palabuhan decoder ALTECC
ALTECC_DECODER
data[] jam clock
q [] err_detected err_corrected
err_fatal
aclr
inst
7.1. Fitur ALTECC Encoder
Inti IP encoder ALTECC nawiskeun fitur-fitur ieu: · Ngalaksanakeun encoding data nganggo skéma Hamming Coding · Ngarojong lebar data 2 bit · Ngarojong format representasi data anu ditandatanganan sareng teu ditandatanganan · Ngarojong pipelining sareng latency kaluaran tina hiji atanapi dua siklus jam · Ngarojong opsional Asynchronous jelas tur jam ngaktifkeun palabuhan
Inti IP encoder ALTECC nyandak sareng ngodekeun data nganggo skéma Hamming Coding. Skéma Hamming Coding diturunkeun bit parity sarta appends kana data aslina pikeun ngahasilkeun kecap kode kaluaran. Jumlah bit parity appended gumantung kana lebar data.
Tabel di handap mangrupa daptar jumlah bit parity napel pikeun rentang béda tina lebar data. Kolom Total Bits ngagambarkeun jumlah total bit data input jeung bit parity appended.
Tabél 21.
Jumlah Parity Bit jeung Kode Kecap Numutkeun Lebar Data
Lebar Data
Jumlah Parity Bit
Total Bit (Kode Kecap)
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
Derivasi bit parity ngagunakeun pamariksaan paritas genap. 1 bit tambahan (ditémbongkeun dina tabél salaku +1) ieu appended kana bit parity salaku MSB kecap kode. Ieu ensures yén kecap kode boga angka genap 1 urang. Pikeun exampLe, lamun lebar data 4 bit, 4 parity bit ditambahkeun kana data pikeun jadi kecap kode kalawan jumlahna aya 8 bit. Lamun 7 bit tina LSB kecap kode 8-bit boga angka ganjil 1 urang, bit ka-8 (MSB) kecap kode nyaeta 1 sahingga jumlah total 1 dina kecap kode genap.
Gambar di handap ieu nunjukkeun kecap kode anu dihasilkeun sareng susunan bit parity sareng bit data dina input data 8-bit.
Kirim Eupan Balik
Pituduh Pamaké Intel FPGA Integer Arithmetic IP Cores 31
7. ALTECC (Koreksi Kasalahan Code: encoder / Decoder) IP Core 683490 | 2020.10.05
Gambar 8.
Parity Bits jeung Data Bits Susunan dina 8-Bit Generated Code Word
MSB
LSB
4 bit paritas
4 bit data
8
1
Inti IP encoder ALTECC ngan ukur nampi lebar input 2 dugi ka 64 bit dina hiji waktos. Lebar input 12 bit, 29 bit, sareng 64 bit, anu cocog pikeun alat Intel, ngahasilkeun kaluaran masing-masing 18 bit, 36 bit, sareng 72 bit. Anjeun tiasa ngadalikeun watesan bitselection dina editor parameter.
7.2. Prototipe Verilog HDL (ALTECC_ENCODER)
Prototipe Verilog HDL di handap ieu aya dina Desain Verilog File (.v) lpm.v dina diréktori édasintesis.
modul altecc_encoder #(parameter intended_device_family = "teu kapake", parameter lpm_pipeline = 0, parameter width_codeword = 8, parameter width_dataword = 8, parameter lpm_type = "altecc_encoder", parameter lpm_hint = "teu kapake") ( input kawat aclr, input kawat jam, input kawat jam kawat clocken, kawat input [width_dataword-1: 0] data, kawat kaluaran [width_codeword-1: 0] q); modul tungtung
7.3. Prototipe Verilog HDL (ALTECC_DECODER)
Prototipe Verilog HDL di handap ieu aya dina Desain Verilog File (.v) lpm.v dina diréktori édasintesis.
modul altecc_decoder #(parameter intended_device_family = "teu kapake", parameter lpm_pipeline = 0, parameter width_codeword = 8, parameter width_dataword = 8, parameter lpm_type = "altecc_decoder", parameter lpm_hint = "teu kapake") (kawat input aclr, jam kawat input, jam kawat input, kawat clocken, kawat input [width_codeword-1: 0] data, kawat kaluaran err_corrected, kaluaran kawat err_detected, kaluaran kawat err_fatal, kaluaran kawat [width_dataword-1:0] q); modul tungtung
Pituduh Pamaké Intel FPGA Integer Arithmetic IP Cores 32
Kirim Eupan Balik
7. ALTECC (Koreksi Kasalahan Code: encoder / Decoder) IP Core 683490 | 2020.10.05
7.4. Déklarasi komponén VHDL (ALTECC_ENCODER)
Déklarasi komponén VHDL aya dina Desain VHDL File (.vhd) altera_mf_components.vhd dina librariesvhdlaltera_mf diréktori.
komponén altecc_encoder generik ( intended_device_family: string: = "teu kapake"; lpm_pipeline: natural: = 0; width_codeword: natural: = 8; width_dataword: natural: = 8; lpm_hint: string: = "UNUSED"; lpm_type: string: = "altecc_encoder ”); port (aclr: dina std_logic: = '0'; jam: dina std_logic: = '0'; clocken: dina std_logic: = '1'; data: dina std_logic_vector (width_dataword-1 turun ka 0); q: kaluar std_logic_vector (width_codeword -1 dugi ka 0)); komponén tungtung;
7.5. Déklarasi komponén VHDL (ALTECC_DECODER)
Déklarasi komponén VHDL aya dina Desain VHDL File (.vhd) altera_mf_components.vhd dina librariesvhdlaltera_mf diréktori.
komponén altecc_decoder generik ( intended_device_family: string: = "teu kapake"; lpm_pipeline: natural: = 0; width_codeword: natural: = 8; width_dataword: natural:= 8; lpm_hint: string: = "UNUSED"; lpm_type: string: = "altecc_decoder ”); port (aclr: dina std_logic: = '0'; jam: dina std_logic: = '0'; clocken: dina std_logic: = '1'; data: dina std_logic_vector (width_codeword-1 turun ka 0); err_corrected: kaluar std_logic; err_detected : kaluar std_logic;q: kaluar std_logic_vector (width_dataword-1 turun ka 0);syn_e: kaluar std_logic); komponén tungtung;
7.6. VHDL LIBRARY_USE Déklarasi
Déklarasi VHDL LIBRARY-USE henteu diperyogikeun upami anjeun nganggo Déklarasi Komponen VHDL.
PUSTAKA altera_mf; USE altera_mf.altera_mf_components.all;
7.7. Palabuhan Encoder
Tabel di handap ieu daptar palabuhan input sareng kaluaran pikeun inti IP encoder ALTECC.
Kirim Eupan Balik
Pituduh Pamaké Intel FPGA Integer Arithmetic IP Cores 33
7. ALTECC (Koreksi Kasalahan Code: encoder / Decoder) IP Core 683490 | 2020.10.05
meja 22. ALTECC Encoder palabuhan Input
Ngaran Port
Dibutuhkeun
Katerangan
data[]
Sumuhun
port input data. Ukuran port input gumantung kana WIDTH_DATAWORD
nilai parameter. Port data[] ngandung data atah pikeun disandi.
jam
Sumuhun
Port input jam nu nyadiakeun sinyal jam pikeun nyingkronkeun operasi encoding.
Port jam diperyogikeun nalika nilai LPM_PIPELINE langkung ageung tibatan 0.
jam
No
Aktipkeun jam. Upami dileungitkeun, nilai standarna nyaéta 1.
aclr
No
Input jelas Asynchronous. Sinyal aclr tinggi anu aktip tiasa dianggo iraha waé pikeun
asynchronously mupus registers.
meja 23. Palabuhan Kaluaran Encoder ALTECC
Ngaran Port q[]
Dibutuhkeun Sumuhun
Katerangan
Port kaluaran data disandikeun. Ukuran port kaluaran gumantung kana nilai parameter WIDTH_CODEWORD.
7.8. Palabuhan decoder
Tabel di handap ieu daptar palabuhan input sareng kaluaran pikeun inti IP decoder ALTECC.
meja 24. ALTECC Decoder Input Ports
Ngaran Port
Dibutuhkeun
Katerangan
data[]
Sumuhun
port input data. Ukuran port input gumantung kana nilai parameter WIDTH_CODEWORD.
jam
Sumuhun
Port input jam nu nyadiakeun sinyal jam pikeun nyingkronkeun operasi encoding. Port jam diperyogikeun nalika nilai LPM_PIPELINE langkung ageung tibatan 0.
jam
No
Aktipkeun jam. Upami dileungitkeun, nilai standarna nyaéta 1.
aclr
No
Input jelas Asynchronous. Sinyal aclr tinggi anu aktip tiasa dianggo iraha waé pikeun ngahapus pendaptaran sacara asynchronously.
meja 25. ALTECC Decoder Output Ports
Ngaran Port q[]
Dibutuhkeun Sumuhun
Katerangan
port kaluaran data decoded. Ukuran port kaluaran gumantung kana nilai parameter WIDTH_DATAWORD.
err_detected Sumuhun
Sinyal bandéra pikeun ngagambarkeun status data anu ditampi sareng nangtukeun kasalahan anu aya.
err_correcte Sumuhun d
Sinyal bandéra pikeun ngagambarkeun status data anu ditampi. Ngalambangkeun kasalahan bit tunggal kapanggih jeung dilereskeun. Anjeun tiasa nganggo data sabab parantos dilereskeun.
err_fatal
Sumuhun
Sinyal bandéra pikeun ngagambarkeun status data anu ditampi. Ngalambangkeun kasalahan double-bit kapanggih, tapi teu dilereskeun. Anjeun teu kedah nganggo data upami sinyal ieu negeskeun.
syn_e
No
Sinyal kaluaran anu bakal ningkat nalika kasalahan bit tunggal dideteksi dina paritas
bit.
7.9. Parameter encoder
Tabel di handap ieu daptar parameter pikeun inti IP encoder ALTECC.
Pituduh Pamaké Intel FPGA Integer Arithmetic IP Cores 34
Kirim Eupan Balik
7. ALTECC (Koreksi Kasalahan Code: encoder / Decoder) IP Core 683490 | 2020.10.05
meja 26. Parameter Encoder ALTECC
Ngaran Parameter
Tipe
Dibutuhkeun
Katerangan
WIDTH_DATAWORD
Integer Sumuhun
Nangtukeun lebar data atah. Nilaina ti 2 dugi ka 64. Upami dileungitkeun, nilai standarna nyaéta 8.
WIDTH_CODEWORD
Integer Sumuhun
Nangtukeun lebar kecap kode pakait. Nilai anu valid nyaéta ti 6 dugi ka 72, teu kalebet 9, 17, 33, sareng 65. Upami dileungitkeun, nilai standarna nyaéta 13.
LPM_PIPELINE
Integer No
Nangtukeun pipa pikeun sirkuit. Nilai tina 0 ka 2. Lamun nilai 0, palabuhan teu didaptarkeun. Upami nilaina 1, palabuhan kaluaran didaptarkeun. Upami nilaina 2, palabuhan input sareng kaluaran didaptarkeun. Upami dileungitkeun, nilai standarna nyaéta 0.
7.10. Parameter decoder
Tabel di handap ieu daptar parameter inti IP decoder ALTECC.
meja 27. Parameter decoder ALTECC
Ngaran parameter WIDTH_DATAWORD
Tipe Integer
Dibutuhkeun
Katerangan
Sumuhun
Nangtukeun lebar data atah. Nilai anu 2 ka 64. The
nilai standar nyaéta 8.
WIDTH_CODEWORD
Integer
Sumuhun
Nangtukeun lebar kecap kode pakait. Nilaina aya 6
ka 72, teu kaasup 9, 17, 33, jeung 65. Lamun disingkahkeun, nilai standar
éta 13 €.
LPM_PIPELINE
Integer
No
Nangtukeun register tina sirkuit. Nilai anu ti 0 ka 2. Lamun dina
nilai 0, euweuh register dilaksanakeun. Upami nilaina 1, éta
kaluaran didaptarkeun. Upami nilaina 2, duanana input sareng
kaluaran didaptarkeun. Lamun nilai leuwih gede ti 2, tambahan
registers dilaksanakeun dina kaluaran pikeun tambahan
latén. Upami dileungitkeun, nilai standarna nyaéta 0.
Jieun port 'syn_e'
Integer
No
Hurungkeun parameter ieu pikeun nyieun port syn_e.
Kirim Eupan Balik
Pituduh Pamaké Intel FPGA Integer Arithmetic IP Cores 35
683490 | 2020.10.05 Kirim Eupan Balik
8. Intel FPGA Multiply panambah IP Core
Gambar 9.
Intel FPGA Multiply Adder (Intel Stratix 10, Intel Arria 10, sareng Intel Cyclone 10 GX device) atanapi ALTERA_MULT_ADD (Arria V, Stratix V, sareng Cyclone V) inti IP ngidinan Anjeun pikeun nerapkeun multiplier-adder.
Gambar di handap ieu nunjukkeun palabuhan pikeun Intel FPGA Multiply Adder atanapi ALTERA_MULT_ADD IP inti.
Intel FPGA Multiply Adder atanapi ALTERA_MULT_ADD Ports
Intel FPGA Multiply Adder atanapi ALTERA_MULT_ADD
dataa[] signa datab[] signb datac[] coefsel0[] coefsel1[] coefsel2[] coefsel3[] addnsub1 addnsub3 aclr/sclr[] scanina[] clock0 clock1 clock2 ena0 ena1 ena2 sload_accum
accum_sload chainin[]
hasil scanouta[]
aclr0 aclr1
inst
A multiplier-adder narima pasangan inputs, multiplies nilai babarengan lajeng nambahkeun atawa subtracts tina produk sadaya pasangan séjén.
Lamun sakabéh lebar data input lega 9-bit atawa leuwih leutik, fungsi ngagunakeun 9 x 9 bit konfigurasi multiplier input dina blok DSP pikeun alat nu ngarojong 9 x 9 konfigurasi. Lamun henteu, blok DSP ngagunakeun 18 × 18-bit multipliers input pikeun ngolah data kalayan rubak antara 10 bit jeung 18 bit. Lamun sababaraha Intel FPGA Multiply Adder atawa ALTERA_MULT_ADD IP cores lumangsung dina desain, fungsi disebarkeun ka salaku
Intel Corporation. Sadaya hak disimpen. Intel, logo Intel, sareng merek Intel sanés mangrupikeun mérek dagang Intel Corporation atanapi anak perusahaanna. Intel ngajamin kinerja produk FPGA sareng semikonduktor na kana spésifikasi ayeuna saluyu sareng garansi standar Intel, tapi ngagaduhan hak pikeun ngarobih naon waé produk sareng jasa iraha waé tanpa aya bewara. Intel henteu nanggung tanggung jawab atanapi tanggung jawab anu timbul tina aplikasi atanapi pamakean inpormasi, produk, atanapi jasa anu dijelaskeun di dieu iwal ti dinyatakeun sapuk sacara tinulis ku Intel. Konsumén Intel disarankan pikeun ménta versi panganyarna tina spésifikasi alat sateuacan ngandelkeun inpormasi anu diterbitkeun sareng sateuacan nempatkeun pesenan produk atanapi jasa. *Ngaran sareng merek sanésna tiasa diklaim salaku hak milik batur.
ISO 9001: 2015 didaptarkeun
8. Intel FPGA kalikeun panambah IP Core 683490 | 2020.10.05
loba blok DSP béda sabisa ku kituna routing ka blok ieu leuwih fleksibel. Pangganda pangsaeutikna per blok DSP ngamungkinkeun langkung seueur pilihan routing kana blok ku ngaminimalkeun jalur ka sesa alat.
Registers sareng register pipa tambahan pikeun sinyal-sinyal di handap ieu ogé ditempatkeun di jero blok DSP: · Input data · Pilih ditandatanganan atawa teu ditandatanganan · Tambah atawa ngurangan pilih · Produk tina multipliers
Dina hal hasil kaluaran, register kahiji disimpen dina blok DSP. Sanajan kitu, registers latency tambahan disimpen dina elemen logika luar blok. Periferal ka blok DSP, kaasup inputs data kana multiplier nu, inputs sinyal kontrol, sarta outputs tina panambah, make routing biasa pikeun komunikasi sareng sesa alat. Sadaya sambungan dina fungsi ngagunakeun routing dedicated jero blok DSP. routing dedicated Ieu ngawengku ranté shift register mun anjeun milih pilihan pikeun mindahkeun data input didaptarkeun multiplier urang ti hiji multiplier ka multiplier meungkeut.
Kanggo inpo nu langkung lengkep ihwal blok DSP dina séri alat Stratix V, sareng Arria V, tingal bab DSP Blok tina buku panduan masing-masing dina halaman Sastra sareng Dokumén Téknis.
Émbaran patali AN 306: Ngalaksanakeun Multipliers dina Alat FPGA
Nyadiakeun inpo nu langkung lengkep ihwal nerapkeun multipliers maké DSP jeung blok memori dina alat Intel FPGA.
8.1. Fitur
Intel FPGA Multiply Adder atanapi ALTERA_MULT_ADD IP inti nawiskeun fitur-fitur ieu: · Ngahasilkeun multiplier pikeun ngalakukeun operasi multiplikasi dua kompleks.
angka Catetan: Nalika ngawangun multipliers leuwih badag batan ukuran natively dirojong meureun aya /
bakal dampak kinerja hasilna tina cascading tina blok DSP. · Ngarojong lebar data 1 256 bit · Ngarojong format representasi data anu ditandatanganan sareng teu ditandatanganan · Ngarojong pipelining sareng latency input anu tiasa dikonfigurasi · Nyayogikeun pilihan pikeun pindah dinamis antara dukungan data anu ditandatanganan sareng anu henteu ditandatanganan · Nyayogikeun pilihan pikeun pindah dinamis antara operasi tambah sareng ngirangan · Ngarojong pilihan Asynchronous tur sinkron jelas tur jam ngaktifkeun port input · Ngarojong mode register tunda systolic · Ngarojong pre-adder kalawan 8 koefisien pre-beban per multiplier · Ngarojong pre-beban konstan pikeun ngalengkepan eupan balik accumulator
Kirim Eupan Balik
Pituduh Pamaké Intel FPGA Integer Arithmetic IP Cores 37
8. Intel FPGA kalikeun panambah IP Core 683490 | 2020.10.05
8.1.1. Pra-adder
Kalayan pre-adder, tambihan atanapi pangurangan dilakukeun sateuacan tuang multiplier.
Aya lima modeu pra-adder: · Modeu basajan · Modeu koefisien · Modeu input · Modeu pasagi · Modeu konstan
Catetan:
Nalika pre-adder dipaké (koefisien pre-adder / input / mode kuadrat), sadaya inputs data ka multiplier kudu boga setelan jam sarua.
8.1.1.1. Pra-adder Mode basajan
Dina modeu ieu, duanana operan diturunkeun tina palabuhan input sareng pre-adder henteu dianggo atanapi dilewati. Ieu mode standar.
angka 10. Pra-adder Mode basajan
a0 b0
Mult0
hasilna
8.1.1.2. Pre-adder Koefisien Mode
Dina mode ieu, hiji operan multiplier asalna tina pre-adder, sarta operan séjén asalna tina panyimpenan koefisien internal. Panyimpenan koefisien ngamungkinkeun nepi ka 8 konstanta prasetél. Sinyal pilihan koefisien nyaéta coefsel [0..3].
Modeu ieu dinyatakeun dina persamaan di handap ieu.
Di handap ieu nembongkeun mode koefisien pre-adder of multiplier a.
angka 11. Pre-adder Koefisien Mode
Preader
a0
Mult0
+/-
hasilna
b0
coefsel0 coef
Pituduh Pamaké Intel FPGA Integer Arithmetic IP Cores 38
Kirim Eupan Balik
8. Intel FPGA kalikeun panambah IP Core 683490 | 2020.10.05
8.1.1.3. Mode Input Pra-adder Dina mode ieu, hiji operan multiplier asalna tina pre-adder, sarta operan séjén asalna tina port input datac []. Modeu ieu dinyatakeun dina persamaan di handap ieu.
Di handap ieu nembongkeun mode input pre-adder of multiplier a.
angka 12. Pre-adder Input Mode
a0 b0
Mult0
+/-
hasilna
c0
8.1.1.4. Pre-adder Mode Square Mode ieu dinyatakeun dina persamaan di handap ieu.
Di handap ieu nembongkeun mode pasagi pre-adder dua multipliers.
angka 13. Pra-adder Mode Square
a0 b0
Mult0
+/-
hasilna
8.1.1.5. Pra-adder Mode Konstan
Dina modeu ieu, hiji operan multiplier asalna tina port input, sarta operan séjén asalna tina panyimpenan koefisien internal. Panyimpenan koefisien ngamungkinkeun nepi ka 8 konstanta prasetél. Sinyal pilihan koefisien nyaéta coefsel [0..3].
Modeu ieu dinyatakeun dina persamaan di handap ieu.
Kirim Eupan Balik
Pituduh Pamaké Intel FPGA Integer Arithmetic IP Cores 39
8. Intel FPGA kalikeun panambah IP Core 683490 | 2020.10.05
Gambar di handap ieu nembongkeun mode konstanta pre-adder of multiplier a.
angka 14. Pra-adder Mode Konstan
a0
Mult0
hasilna
coefsel0
coef
8.1.2. Systolic Reureuh ngadaptar
Dina arsitéktur sistolik, data input diasupkeun kana kaskade tina register anu bertindak salaku panyangga data. Unggal register delivers hiji input sample ka multiplier dimana eta dikali koefisien masing-masing. Ranté panambah nyimpen hasil laun digabungkeun tina multiplier jeung hasil didaptarkeun saméméhna ti chainin [] port input pikeun ngabentuk hasil ahir. Unggal elemen multiply-nambahkeun kudu ditunda ku siklus tunggal ambéh hasil nyingkronkeun appropriately lamun ditambahkeun babarengan. Unggal reureuh berturut-turut dipaké pikeun alamat duanana memori koefisien jeung panyangga data masing-masing elemen multiply-nambahkeun. Pikeun example, reureuh tunggal pikeun kalikeun kadua nambahkeun elemen, dua reureuh pikeun unsur kalikeun-nambahkeun katilu, jeung saterusna.
angka 15. registers Systolic
registers Systolic
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) ngagambarkeun hasil tina aliran kontinyu input samples jeung y(t)
ngagambarkeun penjumlahan sakumpulan input samples, sarta dina jangka waktu, dikali maranéhna
koefisien masing-masing. Hasil input sareng output ngalir ti kénca ka katuhu. C(0) nepi ka c(N-1) nuduhkeun koefisien. Register tunda systolic dilambangkeun ku S-1, sedengkeun 1 ngagambarkeun tunda jam tunggal. registers reureuh systolic ditambahkeun dina
nu inputs na outputs pikeun pipelining dina cara nu ensures hasil tina
operan multiplier jeung jumlah akumulasi tetep sinkron. Unsur pangolahan ieu
ieu replicated pikeun ngabentuk sirkuit nu ngitung fungsi nyaring. fungsi ieu
ditepikeun dina persamaan di handap ieu.
Pituduh Pamaké Intel FPGA Integer Arithmetic IP Cores 40
Kirim Eupan Balik
8. Intel FPGA kalikeun panambah IP Core 683490 | 2020.10.05
N ngagambarkeun jumlah siklus data nu geus diasupkeun kana accumulator, y (t) ngagambarkeun kaluaran dina waktu t, A (t) ngagambarkeun input dina waktu t, sarta B (i) mangrupakeun koefisien. The t jeung i dina persamaan pakait jeung instan tinangtu dina waktu, jadi keur ngitung kaluaran sample y(t) dina waktu t, grup input samples dina N titik béda dina waktu, atawa A(n), A(n-1), A(n-2), … A(n-N+1) diperlukeun. Golongan input N samples dikalikeun ku koefisien N sarta dijumlahkeun babarengan pikeun ngabentuk hasil ahir y.
Arsitéktur register systolic ngan sadia pikeun modus sum-of-2 jeung sum-of-4. Pikeun duanana mode arsitéktur register systolic, sinyal chainin munggaran perlu dihijikeun ka 0.
Gambar di handap nembongkeun palaksanaan register tunda systolic 2 multipliers.
angka 16. Systolic tunda ngadaptar palaksanaan 2 Multipliers
ranté
a0
Mult0
+/-
b0
a1
Mult1
+/-
b1
hasilna
Jumlah dua multipliers dinyatakeun dina persamaan di handap ieu.
Gambar di handap nembongkeun palaksanaan register tunda systolic 4 multipliers.
Kirim Eupan Balik
Pituduh Pamaké Intel FPGA Integer Arithmetic IP Cores 41
8. Intel FPGA kalikeun panambah IP Core 683490 | 2020.10.05
angka 17. Systolic tunda ngadaptar palaksanaan 4 Multipliers
ranté
a0
Mult0
+/-
b0
a1
Mult1
+/-
b1
a2
Mult2
+/-
b2
a3
Mult3
+/-
b3
hasilna
Jumlah opat multipliers dinyatakeun dina persamaan di handap ieu. angka 18. Jumlah 4 Multipliers
Di handap ieu daptar advantages palaksanaan register systolic: · Ngurangan pamakean sumberdaya DSP · Aktipkeun pemetaan efisien dina blok DSP ngagunakeun struktur ranté panambah.
Pituduh Pamaké Intel FPGA Integer Arithmetic IP Cores 42
Kirim Eupan Balik
8. Intel FPGA kalikeun panambah IP Core 683490 | 2020.10.05
8.1.3. Pra-beban Konstan
Konstanta pre-beban ngadalikeun operan accumulator sarta ngalengkepan eupan balik accumulator. LOADCONST_VALUE valid rentang ti 0. Nilai konstanta sarua jeung 64N, dimana N = LOADCONST_VALUE. Nalika LOADCONST_VALUE disetel ka 2, nilai konstanta sarua jeung 64. Pungsi ieu bisa dipaké salaku rounding bias.
Gambar di handap ieu nembongkeun palaksanaan konstan pre-beban.
angka 19. Pra-beban Constant
eupan balik accumulator
angger
a0
Mult0
+/-
b0
a1
Mult1
+/b1
hasilna
accum_sload sload_accum
Tingal inti IP di handap ieu pikeun palaksanaan multiplier séjén: · ALTMULT_ACCUM · ALTMEMMULT · LPM_MULT
8.1.4. Ganda Accumulator
Fitur accumulator ganda nambahkeun hiji register tambahan dina jalur eupan balik accumulator. Register accumulator ganda nuturkeun register kaluaran, nu ngawengku jam, jam aktip, sarta aclr. The accumulator register tambahan mulih hasil kalawan reureuh hiji-siklus. Fitur ieu ngamungkinkeun anjeun gaduh dua saluran akumulator kalayan jumlah sumberdaya anu sami.
Gambar di handap ieu nunjukkeun palaksanaan accumulator ganda.
Kirim Eupan Balik
Pituduh Pamaké Intel FPGA Integer Arithmetic IP Cores 43
8. Intel FPGA kalikeun panambah IP Core 683490 | 2020.10.05
angka 20. Double Accumulator
Dou ble Accu mulator ngadaptar
Accu mulator eupan balik ck
a0
Mult0
+/-
b0
a1
Mult1
+/b1
Hasil Kaluaran Kaluaran ngadaptar
8.2. Prototipe Verilog HDL
Anjeun tiasa mendakan Intel FPGA Multiply Adder atanapi ALTERA_MULT_ADD Verilog HDL prototipe file (altera_mult_add_rtl.v) dina perpustakaan diréktori megafunctions.
8.3. Déklarasi komponén VHDL
Déklarasi komponén VHDL lokasina di altera_lnsim_components.vhd di librariesvhdl altera_lnsim diréktori.
8.4. VHDL LIBRARY_USE Déklarasi
Déklarasi VHDL LIBRARY-USE henteu diperyogikeun upami anjeun nganggo Déklarasi Komponen VHDL.
PUSTAKA altera_mf; USE altera_mf.altera_mf_components.all;
8.5. Sinyal
Tabel di handap ieu daptar sinyal input sareng kaluaran tina inti Multiply Adder Intel FPGA IPor ALTERA_MULT_ADD IP.
Méja 28. Multiply Adder Intel FPGA IPor ALTERA_MULT_ADD Input Sinyal
Sinyal
Dibutuhkeun
Katerangan
dataa_0[]/dataa_1[]/
Sumuhun
dataa_2[]/dataa_3[]
Input data kana multiplier. Port input [NUMBER_OF_MULTIPLIERS * WIDTH_A – 1 … 0] lebar
dituluykeun…
Pituduh Pamaké Intel FPGA Integer Arithmetic IP Cores 44
Kirim Eupan Balik
8. Intel FPGA kalikeun panambah IP Core 683490 | 2020.10.05
Sinyal datab_0[]/datab_1[]/ datab_2[]/datab_3[] datac_0[] /datac_1[]/ datac_2[]/datac_3[] jam[1:0] aclr[1:0] sclr[1:0] ena [1:0] tanda
tanda b
scanina [] accum_sload
Dibutuhkeun Sumuhun No
Henteu henteu henteu henteu henteu
No
Henteu henteu
Katerangan
Model simulasi pikeun IP ieu ngadukung nilai input anu teu ditangtukeun (X) kana sinyal ieu. Lamun anjeun nyadiakeun nilai X kana sinyal ieu, nilai X ieu propagated dina sinyal kaluaran.
Input data kana multiplier. Sinyal input [NUMBER_OF_MULTIPLIERS * WIDTH_B – 1 … 0] lebar Modél simulasi pikeun IP ieu ngarojong nilai input anu teu ditangtukeun (X) kana sinyal ieu. Lamun anjeun nyadiakeun nilai X kana sinyal ieu, nilai X propagated dina sinyal kaluaran.
Input data kana multiplier. Sinyal input [NUMBER_OF_MULTIPLIERS * WIDTH_C – 1, … 0] lebar Pilih INPUT pikeun Pilih parameter mode preadder pikeun ngaktipkeun sinyal ieu. Model simulasi pikeun IP ieu ngadukung nilai input anu teu ditangtukeun (X) kana sinyal ieu. Lamun anjeun nyadiakeun nilai X kana sinyal ieu, nilai X propagated dina sinyal kaluaran.
port input jam ka register pakait. Sinyal ieu tiasa dianggo ku sagala register dina inti IP. Model simulasi pikeun IP ieu ngadukung nilai input anu teu ditangtukeun (X) kana sinyal ieu. Lamun anjeun nyadiakeun nilai X kana sinyal ieu, nilai X propagated dina sinyal kaluaran.
Input jelas Asynchronous kana register pakait. Model simulasi pikeun IP ieu ngadukung nilai input anu teu ditangtukeun (X) kana sinyal ieu. Lamun anjeun nyadiakeun nilai X kana sinyal ieu, nilai X propagated dina sinyal kaluaran.
Input jelas sinkron ka register pakait. Modél simulasi pikeun IP ieu ngarojong nilai input X anu teu ditangtukeun pikeun sinyal ieu. Lamun anjeun nyadiakeun nilai X kana sinyal ieu, nilai X propagated dina sinyal kaluaran
Aktipkeun input sinyal ka register pakait. Model simulasi pikeun IP ieu ngadukung nilai input anu teu ditangtukeun (X) kana sinyal ieu. Lamun anjeun nyadiakeun nilai X kana sinyal ieu, nilai X propagated dina sinyal kaluaran.
Nangtukeun representasi numeris input multiplier A. Lamun sinyal signa luhur, multiplier Ngaruwat input multiplier sinyal A salaku angka ditandatanganan. Lamun sinyal signa low, multiplier nu Ngaruwat input multiplier sinyal A salaku angka unsigned. Pilih VARIABLE pikeun Naon format representasi pikeun Multipliers A parameter inputs pikeun ngaktipkeun sinyal ieu. Modél simulasi pikeun IP ieu ngarojong nilai input undetermined (X) kana sinyal ieu. Lamun anjeun nyadiakeun nilai X kana input ieu, nilai X propagated dina sinyal kaluaran.
Nangtukeun representasi numeris sinyal B input multiplier. Lamun sinyal signb luhur, multiplier nu Ngaruwat multiplier input sinyal B salaku angka pelengkap dua ditandatanganan. Lamun sinyal signb low, Ngaruwat multiplier sinyal B input multiplier salaku angka unsigned. Modél simulasi pikeun IP ieu ngarojong nilai input undetermined (X) kana sinyal ieu. Lamun anjeun nyadiakeun nilai X kana input ieu, nilai X propagated dina sinyal kaluaran.
Input pikeun ranté scan A. Sinyal input [WIDTH_A – 1, … 0] lebar. Lamun parameter INPUT_SOURCE_A boga nilai SCANA, sinyal scanina [] diperlukeun.
Dinamis nangtukeun naha nilai accumulator konstan. Lamun sinyal accum_sload low, lajeng kaluaran multiplier dimuat kana accumulator nu. Ulah make accum_sload na sload_accum sakaligus.
dituluykeun…
Kirim Eupan Balik
Pituduh Pamaké Intel FPGA Integer Arithmetic IP Cores 45
8. Intel FPGA kalikeun panambah IP Core 683490 | 2020.10.05
Sinyal sload_accum
chainin [] addnsub1
addnsub3
coefsel0[] coefsel1[] coefsel2[] coefsel3[]
Dibutuhkeun No
Henteu henteu
No
Henteu henteu henteu henteu
Katerangan
Modél simulasi pikeun IP ieu ngarojong nilai input undetermined (X) kana sinyal ieu. Lamun anjeun nyadiakeun nilai X kana input ieu, nilai X propagated dina sinyal kaluaran.
Dinamis nangtukeun naha nilai accumulator konstan. Lamun sinyal sload_accum luhur, lajeng kaluaran multiplier dimuat kana accumulator nu. Ulah make accum_sload na sload_accum sakaligus. Modél simulasi pikeun IP ieu ngarojong nilai input undetermined (X) kana sinyal ieu. Lamun anjeun nyadiakeun nilai X kana input ieu, nilai X propagated dina sinyal kaluaran.
Hasil panambah beus input ti s saméméhnatage. Sinyal input [WIDTH_CHAININ – 1, … 0] lebar.
Nedunan tambahan atawa pangurangan kana outputs ti pasangan mimiti multipliers. Input 1 mun addnsub1 sinyal pikeun nambahkeun outputs ti pasangan mimiti multipliers. Input 0 kana sinyal addnsub1 pikeun ngirangan kaluaran tina pasangan multipliers munggaran. Modél simulasi pikeun IP ieu ngarojong nilai input undetermined (X) kana sinyal ieu. Lamun anjeun nyadiakeun nilai X kana input ieu, nilai X propagated dina sinyal kaluaran.
Nedunan tambahan atawa pangurangan kana outputs ti pasangan mimiti multipliers. Input 1 ka addnsub3 sinyal pikeun nambahkeun outputs ti pasangan kadua multipliers. Input 0 kana sinyal addnsub3 pikeun ngirangan kaluaran tina pasangan multipliers munggaran. Modél simulasi pikeun IP ieu ngarojong nilai input undetermined (X) kana sinyal ieu. Lamun anjeun nyadiakeun nilai X kana input ieu, nilai X propagated dina sinyal kaluaran.
Sinyal input koefisien [0:3] kana multiplier munggaran. Modél simulasi pikeun IP ieu ngarojong nilai input undetermined (X) kana sinyal ieu. Lamun anjeun nyadiakeun nilai X kana input ieu, nilai X propagated dina sinyal kaluaran.
Sinyal input koefisien[0:3]ka multiplier kadua. Modél simulasi pikeun IP ieu ngarojong nilai input undetermined (X) kana sinyal ieu. Lamun anjeun nyadiakeun nilai X kana input ieu, nilai X propagated dina sinyal kaluaran.
Sinyal input koefisien[0:3]ka multiplier katilu. Modél simulasi pikeun IP ieu ngarojong nilai input undetermined (X) kana sinyal ieu. Lamun anjeun nyadiakeun nilai X kana input ieu, nilai X propagated dina sinyal kaluaran.
Sinyal input koefisien [0:3] kana multiplier kaopat. Modél simulasi pikeun IP ieu ngarojong nilai input undetermined (X) kana sinyal ieu. Lamun anjeun nyadiakeun nilai X kana input ieu, nilai X propagated dina sinyal kaluaran.
meja 29. kalikeun panambah Intel FPGA IP sinyal Kaluaran
Sinyal
Dibutuhkeun
Katerangan
hasilna []
Sumuhun
sinyal kaluaran multiplier. Sinyal kaluaran [WIDTH_RESULT – 1 … 0] lebar
Model simulasi pikeun IP ieu ngadukung nilai kaluaran anu teu ditangtukeun (X). Lamun anjeun nyadiakeun nilai X salaku input, nilai X propagated on sinyal ieu.
scanouta []
No
Kaluaran ranté scan A. Sinyal kaluaran [WIDTH_A - 1..0] lebar.
Pilih leuwih ti 2 pikeun jumlah multipliers tur pilih input ranté Scan pikeun Naon input A tina multiplier disambungkeun ka parameter pikeun ngaktipkeun sinyal ieu.
Pituduh Pamaké Intel FPGA Integer Arithmetic IP Cores 46
Kirim Eupan Balik
8. Intel FPGA kalikeun panambah IP Core 683490 | 2020.10.05
8.6. Parameter
8.6.1. Tab Umum
meja 30. Tab Umum
Parameter
Parameter Dihasilkeun IP
Nilai
Naon jumlah multipliers?
number_of_m 1 - 4 ultipliers
Sabaraha lega beus input A width_a?
1 – 256
Sabaraha lega beus input B width_b?
1 – 256
Sakumaha lebar bus kaluaran 'hasil'?
width_hasil
1 – 256
Jieun hiji jam pakait aktip pikeun tiap jam
gui_associate Hurung d_clock_enabl Pareum e
8.6.2. Tab Modeu Tambahan
meja 31. Tambahan Modeu Tab
Parameter
Parameter Dihasilkeun IP
Nilai
Konfigurasi Kaluaran
Ngadaptarkeun kaluaran unit panambah
gui_output_re Hurung
gister
Pareum
Naon sumber input jam?
gui_output_re gister_clock
Jam0 Jam1 Jam2
Naon sumber pikeun input jelas Asynchronous?
gui_output_re gister_aclr
Euweuh ACLR0 ACLR1
Naon sumber pikeun input jelas sinkron?
gui_output_re gister_sclr
Euweuh SCLR0 SCLR1
Operasi panambah
Operasi naon kudu dipigawé dina outputs tina pasangan mimiti multipliers?
gui_multiplier 1_direction
ADD, SUB, VARIABLE
Nilai standar 1
16
Katerangan
Jumlah multipliers pikeun ditambahkeun babarengan. nilai anu 1 nepi ka 4. Sebutkeun lebar dataa [] port.
16
Sebutkeun lebar port datab [].
32
Sebutkeun lebar hasil [] port.
Pareum
Pilih pilihan ieu pikeun nyieun jam aktip
pikeun unggal jam.
Nilai standar
Katerangan
Pareum Jam0
Euweuh Euweuh
Pilih pilihan ieu pikeun ngaktipkeun register kaluaran tina modul panambah.
Pilih Clock0 , Clock1 or Clock2 pikeun ngaktipkeun tur nangtukeun sumber jam pikeun registers kaluaran. Anjeun kedah milih ngadaptar kaluaran unit panambah pikeun ngaktipkeun parameter ieu.
Nangtukeun sumber jelas Asynchronous pikeun register kaluaran panambah. Anjeun kedah milih ngadaptar kaluaran unit panambah pikeun ngaktipkeun parameter ieu.
Nangtukeun sumber jelas sinkron pikeun register kaluaran panambah. Anjeun kedah milih ngadaptar kaluaran unit panambah pikeun ngaktipkeun parameter ieu.
TAMBAHAN
Pilih operasi tambahan atawa pangurangan pikeun ngalakukeun pikeun kaluaran antara multipliers kahiji jeung kadua.
· Pilih ADD pikeun ngalakukeun operasi tambahan.
· Pilih SUB pikeun ngalakukeun operasi pangurangan.
· Pilih VARIABLE ngagunakeun port addnsub1 pikeun tambahan dinamis / kontrol pangurangan.
dituluykeun…
Kirim Eupan Balik
Pituduh Pamaké Intel FPGA Integer Arithmetic IP Cores 47
8. Intel FPGA kalikeun panambah IP Core 683490 | 2020.10.05
Parameter
Parameter Dihasilkeun IP
Nilai
Ngadaptar input 'addnsub1'
gui_addnsub_ Dina multiplier_reg Pareum ister1
Naon sumber input jam?
gui_addnsub_ multiplier_reg ister1_clock
Jam0 Jam1 Jam2
Naon sumber pikeun input jelas Asynchronous?
gui_addnsub_ multiplier_aclr 1
Euweuh ACLR0 ACLR1
Naon sumber pikeun input jelas sinkron?
gui_addnsub_ multiplier_sclr 1
Euweuh SCLR0 SCLR1
Operasi naon kudu dipigawé dina outputs tina pasangan kadua multipliers?
gui_multiplier 3_direction
ADD, SUB, VARIABLE
Ngadaptar input 'addnsub3'
gui_addnsub_ Dina multiplier_reg Pareum ister3
Naon sumber input jam?
gui_addnsub_ multiplier_reg ister3_clock
Jam0 Jam1 Jam2
Nilai standar
Pareum Jam0 Euweuh Euweuh ADD
Pareum Jam0
Katerangan
Lamun nilai VARIABLE dipilih: · Ngajalankeun sinyal addnsub1 ka luhur pikeun
operasi tambahan. · Ngajalankeun sinyal addnsub1 ka low pikeun
operasi pangurangan. Anjeun kudu milih leuwih ti dua multipliers pikeun ngaktipkeun parameter ieu.
Pilih pilihan ieu pikeun ngaktipkeun register input pikeun port addnsub1. Anjeun kudu milih VARIABLE pikeun operasi Naon kudu dipigawé dina outputs tina pasangan mimiti multipliers pikeun ngaktipkeun parameter ieu.
Pilih Clock0 , Clock1 or Clock2 pikeun nangtukeun sinyal jam input pikeun addnsub1 register. Anjeun kedah milih ngadaptar input 'addnsub1' pikeun ngaktipkeun parameter ieu.
Nangtukeun sumber jelas Asynchronous pikeun addnsub1 register. Anjeun kedah milih ngadaptar input 'addnsub1' pikeun ngaktipkeun parameter ieu.
Nangtukeun sumber jelas sinkron pikeun addnsub1 register. Anjeun kedah milih ngadaptar input 'addnsub1' pikeun ngaktipkeun parameter ieu.
Pilih operasi tambahan atawa pangurangan pikeun ngalakukeun pikeun kaluaran antara multipliers katilu jeung kaopat. · Pilih ADD pikeun ngalakukeun panambahan
operasi. · Pilih SUB pikeun ngalakukeun pangurangan
operasi. · Pilih VARIABLE pikeun ngagunakeun addnsub1
port pikeun tambahan dinamis / kontrol pangurangan. Lamun nilai VARIABLE dipilih: · Ngajalankeun sinyal addnsub1 ka luhur pikeun operasi tambahan. · Ngadorong sinyal addnsub1 ka handap pikeun operasi pangurangan. Anjeun kudu milih nilai 4 pikeun Naon jumlah multipliers? pikeun ngaktipkeun parameter ieu.
Pilih pilihan ieu pikeun ngaktipkeun register input pikeun sinyal addnsub3. Anjeun kudu milih VARIABLE pikeun operasi Naon kudu dipigawé dina outputs tina pasangan kadua multipliers pikeun ngaktipkeun parameter ieu.
Pilih Clock0 , Clock1 or Clock2 pikeun nangtukeun sinyal jam input pikeun addnsub3 register. Anjeun kudu milih ngadaptar 'addnsub3' input pikeun ngaktipkeun parameter ieu.
dituluykeun…
Pituduh Pamaké Intel FPGA Integer Arithmetic IP Cores 48
Kirim Eupan Balik
8. Intel FPGA kalikeun panambah IP Core 683490 | 2020.10.05
Parameter
Naon sumber pikeun input jelas Asynchronous?
Parameter Dihasilkeun IP
Nilai
gui_addnsub_ multiplier_aclr 3
Euweuh ACLR0 ACLR1
Naon sumber pikeun input jelas sinkron?
gui_addnsub_ multiplier_sclr 3
Euweuh SCLR0 SCLR1
Polaritas Aktipkeun `use_subadd'
gui_use_subn Hurung
nambahan
Pareum
8.6.3. Multipliers Tab
meja 32. Multipliers Tab
Parameter
Parameter Dihasilkeun IP
Nilai
Naon anu
gui_represent
format ngagambarkeun ation_a
pikeun Multipliers A inputs?
SIGNED, UNSIGNED, VARIABLE
Ngadaptarkeun input `signa'
gui_register_s On
igna
Pareum
Naon sumber input jam?
gui_register_s igna_clock
Jam0 Jam1 Jam2
Naon sumber pikeun input jelas Asynchronous?
gui_register_s igna_aclr
Euweuh ACLR0 ACLR1
Naon sumber pikeun input jelas sinkron?
gui_register_s igna_sclr
Euweuh SCLR0 SCLR1
Naon anu
gui_represent
format ngagambarkeun ation_b
pikeun Multipliers B inputs?
SIGNED, UNSIGNED, VARIABLE
Ngadaptarkeun input `signb'
gui_register_s On
igb
Pareum
Niley standar NONE
Euweuh
Katerangan
Nangtukeun sumber jelas Asynchronous pikeun addnsub3 register. Anjeun kedah milih ngadaptar input 'addnsub3' pikeun ngaktipkeun parameter ieu.
Nangtukeun sumber jelas sinkron pikeun addnsub3 register. Anjeun kudu milih ngadaptar 'addnsub3' input pikeun ngaktipkeun parameter ieu.
Pareum
Pilih pilihan ieu pikeun ngabalikeun fungsi
tina port input addnsub.
Drive addnsub ka luhur pikeun operasi pangurangan.
Drive addnsub ka low pikeun operasi tambahan.
Nilai standar
Katerangan
UNSIGNED Sebutkeun format representasi pikeun input multiplier A.
Pareum
Pilih pilihan ieu pikeun ngaktipkeun signa
ngadaptar.
Anjeun kudu milih nilai VARIABLE pikeun Naon format ngagambarkeun pikeun Multipliers A inputs? parameter pikeun ngaktipkeun pilihan ieu.
Jam0
Pilih Clock0 , Clock1 or Clock2 pikeun ngaktipkeun jeung nangtukeun sinyal jam input pikeun signa register.
Anjeun kedah milih ngadaptar input `signa' pikeun ngaktipkeun parameter ieu.
Euweuh
Nangtukeun sumber jelas asynchronous pikeun signa register.
Anjeun kedah milih ngadaptar input `signa' pikeun ngaktipkeun parameter ieu.
Euweuh
Nangtukeun sumber jelas sinkron pikeun signa register.
Anjeun kedah milih ngadaptar input `signa' pikeun ngaktipkeun parameter ieu.
UNSIGNED Sebutkeun format representasi pikeun input multiplier B.
Pareum
Pilih pilihan ieu pikeun ngaktipkeun signb
ngadaptar.
dituluykeun…
Kirim Eupan Balik
Pituduh Pamaké Intel FPGA Integer Arithmetic IP Cores 49
8. Intel FPGA kalikeun panambah IP Core 683490 | 2020.10.05
Parameter
Parameter Dihasilkeun IP
Nilai
Nilai standar
Naon sumber input jam?
gui_register_s ignb_clock
Jam0 Jam1 Jam2
Jam0
Naon sumber pikeun input jelas Asynchronous?
gui_register_s ignb_aclr
Euweuh ACLR0 ACLR1
Naon sumber pikeun input jelas sinkron?
gui_register_s ignb_sclr
Euweuh SCLR0 SCLR1
Konfigurasi Input
Ngadaptar input A tina multiplier nu
Naon sumber input jam?
gui_input_reg Hurung
ister_a
Pareum
gui_input_reg ister_a_clock
Jam0 Jam1 Jam2
Euweuh Euweuh
Pareum Jam0
Naon sumber pikeun input jelas Asynchronous?
gui_input_reg ister_a_aclr
Euweuh ACLR0 ACLR1
Naon sumber pikeun input jelas sinkron?
gui_input_reg ister_a_sclr
Euweuh SCLR0 SCLR1
Ngadaptar input B tina multiplier
Naon sumber input jam?
gui_input_reg Hurung
ister_b
Pareum
gui_input_reg ister_b_clock
Jam0 Jam1 Jam2
Euweuh Euweuh Pareum Jam0
Naon sumber pikeun input jelas Asynchronous?
gui_input_reg ister_b_aclr
Euweuh ACLR0 ACLR1
Euweuh
Naon sumber pikeun input jelas sinkron?
gui_input_reg ister_b_sclr
Euweuh SCLR0 SCLR1
Euweuh
Naon input A tina multiplier disambungkeun ka?
gui_multiplier Multiplier input Multiplier
_a_input
Input input ranté scan
Katerangan
Anjeun kudu milih nilai VARIABLE pikeun Naon format ngagambarkeun pikeun multipliers B inputs? parameter pikeun ngaktipkeun pilihan ieu.
Pilih Clock0, Clock1 atanapi Clock2 pikeun ngaktipkeun tur nangtukeun sinyal jam input pikeun signb register. Anjeun kedah milih ngadaptar input `signb' pikeun ngaktipkeun parameter ieu.
Nangtukeun sumber jelas Asynchronous pikeun signb register. Anjeun kedah milih ngadaptar input `signb' pikeun ngaktipkeun parameter ieu.
Nangtukeun sumber jelas sinkron pikeun signb register. Anjeun kedah milih ngadaptar input `signb' pikeun ngaktipkeun parameter ieu.
Pilih pilihan ieu pikeun ngaktipkeun register input pikeun beus input data.
Pilih Clock0 , Clock1 or Clock2 pikeun ngaktipkeun jeung nangtukeun sinyal jam input register pikeun beus input data. Anjeun kedah milih ngadaptar input A tina multiplier pikeun ngaktipkeun parameter ieu.
Nangtukeun register sumber jelas Asynchronous pikeun beus input dataa. Anjeun kedah milih ngadaptar input A tina multiplier pikeun ngaktipkeun parameter ieu.
Nangtukeun register sumber jelas sinkron pikeun beus input dataa. Anjeun kedah milih ngadaptar input A tina multiplier pikeun ngaktipkeun parameter ieu.
Pilih pilihan ieu pikeun ngaktipkeun register input pikeun beus input datab.
Pilih Clock0 , Clock1 or Clock2 pikeun ngaktipkeun jeung nangtukeun sinyal jam input register pikeun beus input datab. Anjeun kudu milih ngadaptar input B tina multiplier pikeun ngaktipkeun parameter ieu.
Nangtukeun register sumber jelas Asynchronous pikeun beus input datab. Anjeun kudu milih ngadaptar input B tina multiplier pikeun ngaktipkeun parameter ieu.
Nangtukeun register sumber jelas sinkron pikeun beus input datab. Anjeun kudu milih ngadaptar input B tina multiplier pikeun ngaktipkeun parameter ieu.
Pilih sumber input pikeun input A tina multiplier nu.
dituluykeun…
Pituduh Pamaké Intel FPGA Integer Arithmetic IP Cores 50
Kirim Eupan Balik
8. Intel FPGA kalikeun panambah IP Core 683490 | 2020.10.05
Parameter
Parameter Dihasilkeun IP
Nilai
Scanout A ngadaptar Konfigurasi
Ngadaptar kaluaran ranté scan
gui_scanouta Hurung
_ngadaptar
Pareum
Naon sumber input jam?
gui_scanouta _register_clock k
Jam0 Jam1 Jam2
Naon sumber pikeun input jelas Asynchronous?
gui_scanouta _register_aclr
Euweuh ACLR0 ACLR1
Naon sumber pikeun input jelas sinkron?
gui_scanouta _register_sclr
Euweuh SCLR0 SCLR1
8.6.4. Tab Preadder
Méja 33. Tab Preadder
Parameter
Parameter Dihasilkeun IP
Nilai
Pilih mode preadder
preadder_mo de
SEDERHANA, COEF, INPUT, KUAT, KOSTANT
Nilai standar
Katerangan
Pilih input Multiplier pikeun ngagunakeun beus input data salaku sumber pikeun multiplier. Pilih input ranté Scan pikeun ngagunakeun beus input scanin salaku sumber pikeun multiplier tur ngaktipkeun beus kaluaran scanout. Parameter ieu sadia mun anjeun milih 2, 3 atawa 4 pikeun Naon jumlah multipliers? parameter.
Pareum Jam 0 Euweuh Euweuh
Pilih pilihan ieu pikeun ngaktipkeun register kaluaran pikeun beus kaluaran scanouta.
Anjeun kudu milih input ranté Scan pikeun Naon input A tina multiplier disambungkeun ka? parameter pikeun ngaktipkeun pilihan ieu.
Pilih Clock0 , Clock1 atanapi Clock2 pikeun ngaktipkeun sareng nangtukeun sinyal jam input register pikeun beus kaluaran scanouta.
Anjeun kudu ngaktipkeun Ngadaptar kaluaran parameter ranté scan pikeun ngaktipkeun pilihan ieu.
Nangtukeun sumber jelas Asynchronous register pikeun beus kaluaran scanouta.
Anjeun kudu ngaktipkeun Ngadaptar kaluaran parameter ranté scan pikeun ngaktipkeun pilihan ieu.
Nangtukeun sumber jelas sinkron register pikeun beus kaluaran scanouta.
Anjeun kudu milih ngadaptar kaluaran parameter ranté scan pikeun ngaktipkeun pilihan ieu.
Nilai standar
SIMPLE
Katerangan
Nangtukeun mode operasi pikeun modul preadder. SIMPLE: mode ieu bypass preadder. Ieu mode standar. COEF: Modeu ieu nganggo kaluaran beus input preadder sareng coefsel salaku input pikeun multiplier. INPUT: Modeu ieu nganggo kaluaran preadder sareng beus input datac salaku input pikeun multiplier. SQUARE: Modeu ieu ngagunakeun kaluaran preadder salaku input pikeun multiplier.
dituluykeun…
Kirim Eupan Balik
Pituduh Pamaké Intel FPGA Integer Arithmetic IP Cores 51
8. Intel FPGA kalikeun panambah IP Core 683490 | 2020.10.05
Parameter
Parameter Dihasilkeun IP
Nilai
Pilih arah preadder
gui_preadder ADD,
_arah
SUB
Sabaraha lega beus input C width_c?
1 – 256
Data C Input ngadaptar Konfigurasi
Ngadaptar input datac
gui_datac_inp Hurung
ut_register
Pareum
Naon sumber input jam?
gui_datac_inp ut_register_cl ock
Jam0 Jam1 Jam2
Naon sumber pikeun input jelas Asynchronous?
gui_datac_inp ut_register_a clr
Euweuh ACLR0 ACLR1
Naon sumber pikeun input jelas sinkron?
gui_datac_inp ut_register_sc lr
Euweuh SCLR0 SCLR1
Koéfisién
Sabaraha lega kedah lebar coef?
width_coef
1 – 27
Coef ngadaptar Konfigurasi
Ngadaptar input coefsel
gui_coef_regi Dina
ster
Pareum
Naon sumber input jam?
gui_coef_regi ster_clock
Jam0 Jam1 Jam2
Nilai standar
TAMBAHAN
16
Katerangan
CONSTANT: modeu ieu ngagunakeun dataa beus input kalawan preadder bypassed na coefsel input beus salaku inputs kana multiplier nu.
Nangtukeun operasi preadder. Pikeun ngaktipkeun parameter ieu, pilih ieu di handap pikeun Pilih mode preadder: · COEF · INPUT · KOTAK atawa · CONSTANT
Nangtukeun jumlah bit pikeun beus input C. Anjeun kudu milih INPUT pikeun Pilih mode preadder pikeun ngaktipkeun parameter ieu.
Dina Jam 0 Euweuh Euweuh
Pilih pilihan ieu pikeun ngaktipkeun register input pikeun beus input datac. Anjeun kedah nyetél INPUT ka Pilih parameter mode preadder pikeun ngaktipkeun pilihan ieu.
Pilih Clock0 , Clock1 or Clock2 pikeun nangtukeun sinyal jam input pikeun register input datac. Anjeun kedah milih ngadaptar input datac pikeun ngaktipkeun parameter ieu.
Nangtukeun sumber jelas Asynchronous pikeun register input datac. Anjeun kedah milih ngadaptar input datac pikeun ngaktipkeun parameter ieu.
Nangtukeun sumber jelas sinkron pikeun register input datac. Anjeun kedah milih ngadaptar input datac pikeun ngaktipkeun parameter ieu.
18
Nangtukeun jumlah bit pikeun
beus input coefsel.
Anjeun kedah milih COEF atanapi CONSTANT pikeun mode preadder pikeun ngaktipkeun parameter ieu.
Dina Jam 0
Pilih pilihan ieu pikeun ngaktipkeun register input pikeun beus input coefsel. Anjeun kedah milih COEF atanapi CONSTANT pikeun mode preadder pikeun ngaktipkeun parameter ieu.
Pilih Clock0 , Clock1 or Clock2 pikeun nangtukeun sinyal jam input pikeun register input coefsel. Anjeun kedah milih ngadaptar input coefsel pikeun ngaktipkeun parameter ieu.
dituluykeun…
Pituduh Pamaké Intel FPGA Integer Arithmetic IP Cores 52
Kirim Eupan Balik
8. Intel FPGA kalikeun panambah IP Core 683490 | 2020.10.05
Parameter
Naon sumber pikeun input jelas Asynchronous?
Parameter Dihasilkeun IP
Nilai
gui_coef_regi ster_aclr
Euweuh ACLR0 ACLR1
Naon sumber pikeun input jelas sinkron
gui_coef_regi ster_sclr
Euweuh SCLR0 SCLR1
Koéfisién_0 Konfigurasi
coef0_0 mun coef0_7
0x00000 0xFFFFFFFF
Koéfisién_1 Konfigurasi
coef1_0 mun coef1_7
0x00000 0xFFFFFFFF
Koéfisién_2 Konfigurasi
coef2_0 mun coef2_7
0x00000 0xFFFFFFFF
Koéfisién_3 Konfigurasi
coef3_0 mun coef3_7
0x00000 0xFFFFFFFF
8.6.5. Tab Akumulator
meja 34. Tab Accumulator
Parameter
Parameter Dihasilkeun IP
Nilai
Aktipkeun accumulator?
accumulator
ENYA, NO
Naon jinis operasi accumulator?
accum_directi ADD,
on
SUB
Niley standar NONE
Euweuh
0x0000000 0
0x0000000 0
0x0000000 0
0x0000000 0
Katerangan
Nangtukeun sumber jelas asinkron pikeun register input coefsel. Anjeun kedah milih ngadaptar input coefsel pikeun ngaktipkeun parameter ieu.
Nangtukeun sumber jelas sinkron pikeun register input coefsel. Anjeun kedah milih ngadaptar input coefsel pikeun ngaktipkeun parameter ieu.
Nangtukeun nilai koefisien pikeun multiplier munggaran ieu. Jumlah bit kudu sarua sakumaha dieusian dina Sabaraha lega kedah lebar coef? parameter. Anjeun kedah milih COEF atanapi CONSTANT pikeun mode preadder pikeun ngaktipkeun parameter ieu.
Nangtukeun nilai koefisien pikeun multiplier kadua ieu. Jumlah bit kudu sarua sakumaha dieusian dina Sabaraha lega kedah lebar coef? parameter. Anjeun kedah milih COEF atanapi CONSTANT pikeun mode preadder pikeun ngaktipkeun parameter ieu.
Nangtukeun nilai koefisien pikeun multiplier katilu ieu. Jumlah bit kudu sarua sakumaha dieusian dina Sabaraha lega kedah lebar coef? parameter. Anjeun kedah milih COEF atanapi CONSTANT pikeun mode preadder pikeun ngaktipkeun parameter ieu.
Nangtukeun nilai koefisien pikeun multiplier kaopat ieu. Jumlah bit kudu sarua sakumaha dieusian dina Sabaraha lega kedah lebar coef? parameter. Anjeun kedah milih COEF atanapi CONSTANT pikeun mode preadder pikeun ngaktipkeun parameter ieu.
Niley standar NO
TAMBAHAN
Katerangan
Pilih YES pikeun ngaktipkeun accumulator. Anjeun kedah milih ngadaptar kaluaran unit panambah nalika nganggo fitur accumulator.
Nangtukeun operasi accumulator nu: · ADD pikeun operasi tambahan · SUB pikeun operasi pangurangan. Anjeun kedah milih YES pikeun Aktipkeun accumulator? parameter pikeun ngaktipkeun pilihan ieu.
dituluykeun…
Kirim Eupan Balik
Pituduh Pamaké Intel FPGA Integer Arithmetic IP Cores 53
8. Intel FPGA kalikeun panambah IP Core 683490 | 2020.10.05
Parameter
Preload Constant Aktipkeun preload konstan
Parameter Dihasilkeun IP
Nilai
gui_ena_prelo Hurung
ad_const
Pareum
Naon input tina accumulate port disambungkeun ka?
gui_accumula ACCUM_SLOAD, te_port_select SLOAD_ACCUM
Pilih nilai pikeun preload loadconst_val 0 – 64
angger
ue
Naon sumber input jam?
gui_accum_sl oad_register_ jam
Jam0 Jam1 Jam2
Naon sumber pikeun input jelas Asynchronous?
gui_accum_sl oad_register_ aclr
Euweuh ACLR0 ACLR1
Naon sumber pikeun input jelas sinkron?
gui_accum_sl oad_register_ sclr
Euweuh SCLR0 SCLR1
Aktipkeun accumulator ganda
gui_double_a Hurung
ccum
Pareum
Nilai standar
Katerangan
Pareum
Aktipkeun accum_sload atawa
sinyal sload_accum tur ngadaptar input
pikeun dinamis milih input ka
akumulator.
Nalika accum_sload low atanapi sload_accum, kaluaran multiplier eupan kana accumulator nu.
Nalika accum_sload tinggi atawa sload_accum, a pamaké dieusian preload konstanta eupan kana accumulator nu.
Anjeun kedah milih YES pikeun Aktipkeun accumulator? parameter pikeun ngaktipkeun pilihan ieu.
ACCUM_SL OAD
Nangtukeun paripolah sinyal accum_sload / sload_accum.
ACCUM_SLOAD: Drive accum_sload low pikeun ngamuat kaluaran multiplier ka accumulator nu.
SLOAD_ACCUM: Ngajalankeun sload_accum tinggi pikeun ngamuat kaluaran multiplier kana accumulator nu.
Anjeun kudu milih Aktipkeun preload konstan pilihan pikeun ngaktipkeun parameter ieu.
64
Sebutkeun nilai konstanta prasetél.
Nilai ieu tiasa 2N dimana N nyaéta nilai konstanta prasetél.
Nalika N = 64, éta ngagambarkeun nol konstan.
Anjeun kudu milih Aktipkeun preload konstan pilihan pikeun ngaktipkeun parameter ieu.
Jam0
Pilih Clock0, Clock1 atanapi Clock2 pikeun nangtukeun sinyal jam input pikeun accum_sload/sload_accum register.
Anjeun kudu milih Aktipkeun preload konstan pilihan pikeun ngaktipkeun parameter ieu.
Euweuh
Nangtukeun sumber jelas Asynchronous pikeun accum_sload / sload_accum register.
Anjeun kudu milih Aktipkeun preload konstan pilihan pikeun ngaktipkeun parameter ieu.
Euweuh
Nangtukeun sumber jelas sinkron pikeun accum_sload / sload_accum register.
Anjeun kudu milih Aktipkeun preload konstan pilihan pikeun ngaktipkeun parameter ieu.
Pareum
Aktipkeun register accumulator ganda.
Pituduh Pamaké Intel FPGA Integer Arithmetic IP Cores 54
Kirim Eupan Balik
8. Intel FPGA kalikeun panambah IP Core 683490 | 2020.10.05
8.6.6. Systolic / Chainout Tab
meja 35. Systolic / Chainout panambah Tab
Parameter Aktipkeun chainout panambah
Parameter Dihasilkeun IP
Nilai
chainout_add YES,
er
NO
Naon jinis operasi panambah chainout?
chainout_add ADD,
er_direction
SUB
Aktipkeun input `negate' pikeun panambah chainout?
Port_negate
PORT_USED, PORT_UNUSED
Ngadaptarkeun input 'negate'? negate_regist er
Teu kadaptar, CLOCK0, CLOCK1, CLOCK2, CLOCK3
Naon sumber pikeun input jelas Asynchronous?
negate_aclr
Euweuh ACLR0 ACLR1
Naon sumber pikeun input jelas sinkron?
negate_sclr
Euweuh SCLR0 SCLR1
Tunda Systolic
Aktipkeun registers reureuh systolic
gui_systolic_d Hurung
elay
Pareum
Naon sumber input jam?
gui_systolic_d JAM0,
elay_clock
JAM 1,
Nilai standar
NO
Katerangan
Pilih YES pikeun ngaktipkeun modul panambah chainout.
TAMBAHAN
Nangtukeun operasi panambah chainout.
Pikeun operasi pangurangan, SIGNED kudu dipilih pikeun What is the representation format for Multipliers A inputs? sarta Naon format ngagambarkeun pikeun Multipliers B inputs? dina Tab Multipliers.
PORT_UN DIGUNA
Pilih PORT_USED pikeun ngaktipkeun sinyal input negate.
Parameter ieu teu valid nalika panambah chainout dinonaktipkeun.
UNREGIST ERED
Pikeun ngaktipkeun register input pikeun sinyal input negate sarta nangtukeun sinyal jam input pikeun negate register.
Pilih UNREGISTERED upami pendaptaran input negate henteu diperyogikeun
Parameter ieu teu valid nalika anjeun milih:
· NO pikeun Aktipkeun chainout panambah atawa
· PORT_UNUSED pikeun Aktipkeun 'negate' input pikeun chainout panambah? parameter atawa
Euweuh
Nangtukeun sumber jelas Asynchronous pikeun negate register.
Parameter ieu teu valid nalika anjeun milih:
· NO pikeun Aktipkeun chainout panambah atawa
· PORT_UNUSED pikeun Aktipkeun 'negate' input pikeun chainout panambah? parameter atawa
Euweuh
Nangtukeun sumber jelas sinkron pikeun negate register.
Parameter ieu teu valid nalika anjeun milih:
· NO pikeun Aktipkeun chainout panambah atawa
· PORT_UNUSED pikeun Aktipkeun 'negate' input pikeun chainout panambah? parameter atawa
Pareum JAM0
Pilih pilihan ieu pikeun ngaktipkeun mode systolic. Parameter ieu sadia mun anjeun milih 2, atawa 4 pikeun Naon jumlah multipliers? parameter. Anjeun kudu ngaktipkeun kaluaran ngadaptar tina Unit panambah ngagunakeun registers reureuh systolic.
Nangtukeun sinyal jam input pikeun register tunda systolic.
dituluykeun…
Kirim Eupan Balik
Pituduh Pamaké Intel FPGA Integer Arithmetic IP Cores 55
8. Intel FPGA kalikeun panambah IP Core 683490 | 2020.10.05
Parameter
Parameter Dihasilkeun IP
Nilai
JAM 2,
Naon sumber pikeun input jelas Asynchronous?
gui_systolic_d elay_aclr
Euweuh ACLR0 ACLR1
Naon sumber pikeun input jelas sinkron?
gui_systolic_d elay_sclr
Euweuh SCLR0 SCLR1
Nilai standar
Euweuh
Euweuh
Katerangan
Anjeun kedah milih aktipkeun register tunda systolic pikeun ngaktipkeun pilihan ieu.
Nangtukeun sumber jelas Asynchronous pikeun register reureuh systolic. Anjeun kedah milih aktipkeun register tunda systolic pikeun ngaktipkeun pilihan ieu.
Nangtukeun sumber jelas sinkron pikeun register tunda systolic. Anjeun kedah milih aktipkeun register tunda systolic pikeun ngaktipkeun pilihan ieu.
8.6.7. Tab Pipelin
meja 36. Pipelining Tab
Parameter Pipelining Konfigurasi
Parameter Dihasilkeun IP
Nilai
Naha anjeun badé nambihan daptar pipa kana input?
gui_pipelining No, Sumuhun
Nilai standar
No
Mangga tangtukeun nu
latén
jumlah jam latency
siklus
Nilai naon waé anu langkung ageung 0 tibatan 0
Naon sumber input jam?
gui_input_late ncy_clock
JAM0, JAM1, JAM2
Naon sumber pikeun input jelas Asynchronous?
gui_input_late ncy_aclr
Euweuh ACLR0 ACLR1
Naon sumber pikeun input jelas sinkron?
gui_input_late ncy_sclr
Euweuh SCLR0 SCLR1
JAM0 Euweuh Euweuh
Katerangan
Pilih Sumuhun pikeun ngaktipkeun tingkat tambahan tina register pipa ka sinyal input. Anjeun kudu nangtukeun nilai leuwih gede ti 0 pikeun Mangga tangtukeun jumlah parameter siklus jam latency.
Nangtukeun latency nu dipikahoyong dina siklus jam. Hiji tingkat register pipa = 1 latency dina siklus jam. Anjeun kedah milih YES pikeun Naha anjeun hoyong nambihan register pipa kana input? pikeun ngaktipkeun pilihan ieu.
Pilih Clock0 , Clock1 or Clock2 pikeun ngaktipkeun sareng nangtukeun sinyal jam input register pipa. Anjeun kedah milih YES pikeun Naha anjeun hoyong nambihan register pipa kana input? pikeun ngaktipkeun pilihan ieu.
Nangtukeun sumber jelas Asynchronous register pikeun register pipa tambahan. Anjeun kedah milih YES pikeun Naha anjeun hoyong nambihan register pipa kana input? pikeun ngaktipkeun pilihan ieu.
Nangtukeun sumber jelas sinkron register pikeun register pipa tambahan. Anjeun kedah milih YES pikeun Naha anjeun hoyong nambihan register pipa kana input? pikeun ngaktipkeun pilihan ieu.
Pituduh Pamaké Intel FPGA Integer Arithmetic IP Cores 56
Kirim Eupan Balik
683490 | 2020.10.05 Kirim Eupan Balik
9. ALTMEMMULT (dumasar Mémori Koefisien Multiplier konstan) IP Core
Perhatosan:
Intel parantos ngaleungitkeun dukungan IP ieu dina versi Intel Quartus Prime Pro Edition 20.3. Upami inti IP dina desain anjeun nargétkeun alat dina Intel Quartus Prime Pro Edition, anjeun tiasa ngagentos IP ku LPM_MULT Intel FPGA IP atanapi ngahasilkeun deui IP sareng nyusun desain anjeun nganggo parangkat lunak Intel Quartus Prime Standard Edition.
Inti IP ALTMEMMULT dipaké pikeun nyieun multipliers dumasar memori ngagunakeun blok memori onchip kapanggih dina Intel FPGAs (kalawan M512, M4K, M9K, jeung blok memori MLAB). IP inti Ieu mangpaat lamun teu boga sumberdaya cukup pikeun nerapkeun multipliers dina elemen logika (LEs) atawa sumberdaya multiplier dedicated.
Inti IP ALTMEMMULT mangrupikeun fungsi sinkron anu peryogi jam. Inti ALTMEMMULT IP ngalaksanakeun multiplier kalayan throughput pangleutikna sareng latency mungkin pikeun sakumpulan parameter sareng spésifikasi.
Gambar di handap ieu nunjukkeun palabuhan pikeun inti ALTMEMMULT IP.
Gambar 21. Palabuhan ALTMEMMULT
ALTMEMMULT
data_in[] sload_data coeff_in[]
hasil [] result_valid load_done
sload_coeff
jam sclr
inst
Fitur Inpormasi Patali dina kaca 71
9.1. Fitur
Inti IP ALTMEMMULT nawiskeun fitur-fitur ieu: · Nyiptakeun ukur multiplier dumasar-memori nganggo blok memori on-chip anu aya di
Intel FPGAs · Ngarojong lebar data 1 bit · Ngarojong ditandatanganan jeung unsigned format ngagambarkeun data · Ngarojong pipelining kalawan latency kaluaran tetep
Intel Corporation. Sadaya hak disimpen. Intel, logo Intel, sareng merek Intel sanés mangrupikeun mérek dagang Intel Corporation atanapi anak perusahaanna. Intel ngajamin kinerja produk FPGA sareng semikonduktor na kana spésifikasi ayeuna saluyu sareng garansi standar Intel, tapi ngagaduhan hak pikeun ngarobih naon waé produk sareng jasa iraha waé tanpa aya bewara. Intel henteu nanggung tanggung jawab atanapi tanggung jawab anu timbul tina aplikasi atanapi pamakean inpormasi, produk, atanapi jasa anu dijelaskeun di dieu iwal ti dinyatakeun sapuk sacara tinulis ku Intel. Konsumén Intel disarankan pikeun ménta versi panganyarna tina spésifikasi alat sateuacan ngandelkeun inpormasi anu diterbitkeun sareng sateuacan nempatkeun pesenan produk atanapi jasa. *Ngaran sareng merek sanésna tiasa diklaim salaku hak milik batur.
ISO 9001: 2015 didaptarkeun
9. ALTMEMMULT (dumasar mémori konstan koefisien multiplier) IP Core 683490 | 2020.10.05
· Nyimpen sababaraha konstanta dina mémori aksés acak (RAM)
· Nyadiakeun pilihan pikeun milih tipe blok RAM
· Ngarojong palabuhan input anu jelas sareng kontrol beban sinkron pilihan
9.2. Prototipe Verilog HDL
Prototipe Verilog HDL di handap ieu aya dina Desain Verilog File (.v) altera_mf.v dina diréktori sintésis eda.
modul altmemmult #( parameter coeff_representation = "SIGNED", koefisien parameter0 = "TEU DIGUNA", parameter data_representation = "SIGNED", parameter intended_device_family = "teu kapake", parameter max_clock_cycles_per_result = 1, parameter number_of_coefficients = 1, parameter ram_block_type total_latency = 1, parameter width_c = 1, parameter width_d = 1, parameter width_r = 1, parameter width_s = 1, parameter lpm_type = "altmemmult", parameter lpm_hint = "teu kapake") ( jam kawat input, kawat input [width_c-1: 0] coeff_in, kawat input [width_d-1:0] data_in, kawat kaluaran load_done, kawat kaluaran [width_r-1:0] hasilna, kawat output result_valid, kawat input sclr, kawat input [width_s-1:0] sel, input kawat sload_coeff, input kawat sload_data)/* sintésis syn_black_box=1 */; modul tungtung
9.3. Déklarasi komponén VHDL
Déklarasi komponén VHDL aya dina Desain VHDL File (.vhd) altera_mf_components.vhd dina librariesvhdlaltera_mf diréktori.
komponén altmemmult generik (coeff_representation: string: = "SIGNED"; coefficient0: string: = "UNUSED"; data_representation: string: = "SIGNED"; intended_device_family: string: = "teu kapake"; max_clock_cycles_per_result: natural:= 1; number_of_natural: coefficients := 1; ram_block_type: string: = "AUTO"; total_latency: natural; width_c: natural; width_d: natural; width_r: natural; width_s: natural: = 1; lpm_hint: string: = "TEU DIGUNA"; lpm_type: string:= "altmemult"); port (jam: dina std_logic; coeff_in: dina std_logic_vector (width_c-1 downto 0): = (batur => '0'); data_in: dina std_logic_vector (width_d-1 downto 0);
Pituduh Pamaké Intel FPGA Integer Arithmetic IP Cores 58
Kirim Eupan Balik
9. ALTMEMMULT (dumasar mémori konstan koefisien multiplier) IP Core 683490 | 2020.10.05
load_done: kaluar std_logic; hasilna: kaluar std_logic_vector (width_r-1 downto 0); result_valid:kaluar std_logic; sclr: dina std_logic: = '0'; sel: dina std_logic_vector (width_s-1 turun ka 0): = (batur => '0'); sload_coeff: dina std_logic: = '0'; sload_data: dina std_logic: = '0'); komponén tungtung;
9.4. Palabuhan
Tabel di handap ieu daptar palabuhan input sareng kaluaran pikeun inti IP ALTMEMMULT.
meja 37. ALTMEMMULT palabuhan Input
Ngaran Port
Dibutuhkeun
Katerangan
jam
Sumuhun
Input jam ka multiplier.
coeff_in[]
No
port input koefisien pikeun multiplier nu. Ukuran port input gumantung kana nilai parameter WIDTH_C.
data_in[]
Sumuhun
port input data ka multiplier nu. Ukuran port input gumantung kana nilai parameter WIDTH_D.
sclr
No
Input jelas sinkron. Upami teu dianggo, nilai standar aktip luhur.
sel []
No
Pilihan koefisien tetep. Ukuran port input gumantung kana WIDTH_S
nilai parameter.
sload_coeff
No
port input koefisien beban sinkron. Ngaganti nilai koefisien dipilih ayeuna jeung nilai dieusian dina input coeff_in.
sload_data
No
port input data beban sinkron. Sinyal nu nangtukeun operasi multiplication anyar jeung cancels sagala operasi multiplication aya. Lamun parameter MAX_CLOCK_CYCLES_PER_RESULT boga nilai 1, port input sload_data teu dipaliré.
meja 38. ALTMEMMULT palabuhan Kaluaran
Ngaran Port
Dibutuhkeun
Katerangan
hasilna []
Sumuhun
port kaluaran multiplier. Ukuran port input gumantung kana nilai parameter WIDTH_R.
hasilna_valid
Sumuhun
Nunjukkeun lamun kaluaran mangrupa hasil valid tina multiplication lengkep. Upami parameter MAX_CLOCK_CYCLES_PER_RESULT gaduh nilai 1, port kaluaran result_valid henteu dianggo.
load_done
No
Nunjukkeun lamun koefisien anyar geus réngsé loading. Sinyal load_done negeskeun nalika koefisien anyar parantos réngsé dimuat. Iwal sinyal load_done luhur, euweuh nilai koefisien séjén bisa dimuat kana mémori.
9.5. Parameter
Tabel di handap ieu daptar parameter pikeun inti ALTMEMMULT IP.
Tabél 39.
WIDTH_D WIDTH_C
Parameter ALTMEMMULT
Ngaran Parameter
Tipe Diperlukeun
Katerangan
Integer Sumuhun
Nangtukeun lebar port data_in [].
Integer Sumuhun
Nangtukeun lebar coeff_in [] port. dituluykeun…
Kirim Eupan Balik
Pituduh Pamaké Intel FPGA Integer Arithmetic IP Cores 59
9. ALTMEMMULT (dumasar mémori konstan koefisien multiplier) IP Core 683490 | 2020.10.05
Parameter Ngaran WIDTH_R WIDTH
Dokumén / Sumberdaya
![]() |
intel FPGA Integer Arithmetic IP Cores [pdf] Pituduh pamaké FPGA Integer Arithmetic IP Cores, Integer Arithmetic IP Cores, Arithmetic IP Cores, IP Cores |