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

Rujukan

Ninggalkeun komentar

alamat surélék anjeun moal diterbitkeun. Widang diperlukeun ditandaan *