FPGA butun sonli arifmetik IP yadrolari

Intel FPGA butun sonli arifmetik IP yadrolari foydalanuvchi qo'llanmasi
Intel® Quartus® Prime Design Suite uchun yangilangan: 20.3

Onlayn versiya fikr-mulohaza yuborish

UG-01063

ID: 683490 Versiya: 2020.10.05

Tarkib
Tarkib
1. Intel FPGA butun sonli arifmetik IP yadrolari…………………………………………………………….. 5
2. LPM_COUNTER (hisoblagich) IP yadrosi…………………………………………………………………….. 7 2.1. Xususiyatlari……………………………………………………………………………………………7 2.2. Verilog HDL prototipi…………………………………………………………………………….. 8 2.3. VHDL komponentlari deklaratsiyasi…………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………….8 2.4. VHDL LIBRARY_USE Deklaratsiyasi………………………………………………………………… 9 2.5. Portlar……………………………………………………………………………………………………..9 2.6. Parametrlar…………………………………………………………………………………………… 10
3. LPM_DIVIDE (Divider) Intel FPGA IP Core……………………………………………………….. 12 3.1. Xususiyatlari………………………………………………………………………………………………. 12 3.2. Verilog HDL prototipi…………………………………………………………………………… 12 3.3. VHDL komponentlari deklaratsiyasi…………………………………………………………………………………………………………….. 13 3.4. VHDL LIBRARY_USE Deklaratsiyasi………………………………………………………………. 13 3.5. Portlar………………………………………………………………………………………………… 13 3.6. Parametrlar……………………………………………………………………………………………… 14
4. LPM_MULT (Multiplikator) IP yadrosi………………………………………………………………………. 16 4.1. Xususiyatlari………………………………………………………………………………………………. 16 4.2. Verilog HDL prototipi…………………………………………………………………………… 17 4.3. VHDL komponentlari deklaratsiyasi………………………………………………………………………………………………………………………………………………………………………………………………………….. 17 4.4. VHDL LIBRARY_USE Deklaratsiyasi………………………………………………………………. 17 4.5. Signallar………………………………………………………………………………………………… 18 4.6. Stratix V, Arria V, Cyclone V va Intel Cyclone 10 LP qurilmalari parametrlari…………… 18 4.6.1. Umumiy yorliq…………………………………………………………………………………18 4.6.2. Umumiy 2 Yorliq………………………………………………………………………………… 19 4.6.3. Quvurlarni o'tkazish yorlig'i………………………………………………………………………………… 19 4.7. Intel Stratix 10, Intel Arria 10 va Intel Cyclone 10 GX qurilmalari parametrlari……….. 20 4.7.1. Umumiy yorliq…………………………………………………………………………………20 4.7.2. Umumiy 2 Yorliq………………………………………………………………………………… 20 4.7.3. Quvurlar …………………………………………………………………………………………………………………………………………………………………………………………………………………………21
5. LPM_ADD_SUB (Adder/Subtractor)…………………………………………………………………… 22 5.1. Xususiyatlari………………………………………………………………………………………………. 22 5.2. Verilog HDL prototipi…………………………………………………………………………… 23 5.3. VHDL komponentlari deklaratsiyasi……………………………………………………………………………………………………………….. 23 5.4. VHDL LIBRARY_USE Deklaratsiyasi………………………………………………………………. 23 5.5. Portlar………………………………………………………………………………………………… 23 5.6. Parametrlar…………………………………………………………………………………………… 24
6. LPM_SOLISH (taqqoslash)………………………………………………………………………… 26 6.1. Xususiyatlari………………………………………………………………………………………………. 26 6.2. Verilog HDL prototipi…………………………………………………………………………… 27 6.3. VHDL komponent deklaratsiyasi………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………….. 27 6.4. VHDL LIBRARY_USE Deklaratsiyasi………………………………………………………………. 27 6.5. Portlar…………………………………………………………………………………………………… 27 6.6. Parametrlar…………………………………………………………………………………………… 28

Intel FPGA butun sonli arifmetik IP yadrolari foydalanuvchi qo‘llanmasi 2

Fikr-mulohaza yuborish

Tarkib

7. ALTECC (xatoni tuzatish kodi: kodlovchi/dekoder) IP yadrosi…………………………………… 30
7.1. ALTECC kodlovchi xususiyatlari………………………………………………………………………..31 7.2. Verilog HDL prototipi (ALTECC_ENCODER)……………………………………………………. 32 7.3. Verilog HDL prototipi (ALTECC_DECODER)……………………………………………………. 32 7.4. VHDL komponent deklaratsiyasi (ALTECC_ENCODER)…………………………………………………………………………………………………………………………………………………………………………………………………33 7.5. VHDL komponent deklaratsiyasi (ALTECC_DECODER)……………………………………………………………………………………33 7.6. VHDL LIBRARY_USE Deklaratsiyasi………………………………………………………………. 33 7.7. Kodlovchi portlari……………………………………………………………………………………… 33 7.8. Dekoder portlari………………………………………………………………………………………34 7.9. Kodlovchi parametrlari………………………………………………………………………………… 34 7.10. Dekoder parametrlari …………………………………………………………………………… 35
8. Intel FPGA Multiply Adder IP Core……………………………………………………………………. 36
8.1. Xususiyatlari………………………………………………………………………………………………. 37 8.1.1. Old qo‘shimcha……………………………………………………………………………………………………………………….. 38 8.1.2. Sistolik kechikish registri………………………………………………………………….. 40 8.1.3. Oldindan yuklanish doimiysi…………………………………………………………………………… 43 8.1.4. Ikkita akkumulyator……………………………………………………………………… 43
8.2. Verilog HDL prototipi…………………………………………………………………………… 44 8.3. VHDL komponent deklaratsiyasi…………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………….. 44 8.4. VHDL LIBRARY_USE Deklaratsiyasi………………………………………………………………. 44 8.5. Signallar………………………………………………………………………………………………… 44 8.6. Parametrlar…………………………………………………………………………………………… 47
8.6.1. Umumiy yorliq……………………………………………………………………………………47 8.6.2. Qo‘shimcha rejimlar yorlig‘i………………………………………………………………………….. 47 8.6.3. Ko'paytirgichlar yorlig'i………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………….. 49 8.6.4. Preadder yorlig'i………………………………………………………………………………. 51 8.6.5. Akkumulyator yorlig'i…………………………………………………………………………….. 53 8.6.6. Sistolik/Zanjir yorlig‘i……………………………………………………………………. 55 8.6.7. Quvurlarni o'tkazish yorlig'i……………………………………………………………………………… 56
9. ALTMEMMULT (xotiraga asoslangan doimiy koeffitsient multiplikatori) IP yadrosi…………………… 57
9.1. Xususiyatlari………………………………………………………………………………………………. 57 9.2. Verilog HDL prototipi…………………………………………………………………………… 58 9.3. VHDL komponentlari deklaratsiyasi……………………………………………………………………………………………………………………………………………………………………………………………………….. 58 9.4. Portlar………………………………………………………………………………………………… 59 9.5. Parametrlar…………………………………………………………………………………………… 59
10. ALTMULT_ACCUM (Ko‘paytirish-to‘plash) IP yadrosi…………………………………………… 61
10.1. Xususiyatlari……………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………….. 62 10.2. Verilog HDL prototipi…………………………………………………………………………..62 10.3. VHDL komponentlari deklaratsiyasi…………………………………………………………………… 63 10.4. VHDL LIBRARY_USE Deklaratsiyasi……………………………………………………………63 10.5. Portlar…………………………………………………………………………………………………. 63 10.6. Parametrlar…………………………………………………………………………………………. 64
11. ALTMULT_ADD (Multiply-Adder) IP yadrosi………………………………………………………..69
11.1. Xususiyatlari…………………………………………………………………………………………….. 71 11.2. Verilog HDL prototipi…………………………………………………………………………..72 11.3. VHDL komponentlari deklaratsiyasi…………………………………………………………………… 72 11.4. VHDL LIBRARY_USE deklaratsiyasi……………………………………………………………72

Fikr-mulohaza yuborish

Intel FPGA butun sonli arifmetik IP yadrolari foydalanuvchi qo‘llanmasi 3

Tarkib
11.5. Portlar…………………………………………………………………………………………………. 72 11.6. Parametrlar…………………………………………………………………………………………. 73
12. ALTMULT_COMPLEX (Murakkab multiplikator) IP yadrosi…………………………………………… 86 12.1. Kompleks ko‘paytirish………………………………………………………………………… 86 12.2. Kanonik vakillik………………………………………………………………………… 87 12.3. An'anaviy vakillik…………………………………………………………………… 87 12.4. Xususiyatlari………………………………………………………………………………………………………………………………………………….. 88 12.5. Verilog HDL prototipi…………………………………………………………………………..88 12.6. VHDL komponentlari deklaratsiyasi…………………………………………………………………… 89 12.7. VHDL LIBRARY_USE Deklaratsiyasi……………………………………………………………89 12.8. Signallar………………………………………………………………………………………………. 89 12.9. Parametrlar…………………………………………………………………………………………. 90
13. ALTSQRT (Integer Square Root) IP yadrosi………………………………………………………92 13.1. Xususiyatlari………………………………………………………………………………………………………………………………………….. 92 13.2. Verilog HDL prototipi…………………………………………………………………………..92 13.3. VHDL komponentlari deklaratsiyasi……………………………………………………………………… 93 13.4. VHDL LIBRARY_USE Deklaratsiyasi………………………………………………………………93 13.5. Portlar…………………………………………………………………………………………………. 93 13.6. Parametrlar…………………………………………………………………………………………. 94
14. PARALLEL_ADD (Parallel qo‘shuvchi) IP yadrosi……………………………………………………….. 95 14.1. Xususiyat…………………………………………………………………………………………….95 14.2. Verilog HDL prototipi…………………………………………………………………………..95 14.3. VHDL komponentlari deklaratsiyasi…………………………………………………………………… 96 14.4. VHDL LIBRARY_USE Deklaratsiyasi………………………………………………………………96 14.5. Portlar…………………………………………………………………………………………………. 96 14.6. Parametrlar…………………………………………………………………………………………. 97
15. Arithmetik IP Croadrace foydalanuvchi qo'llanmasi Hujjatlar arxivi
16. Intel FPGA Integer arifmetik IP yadrolari uchun hujjatlarni qayta ko‘rib chiqish tarixi foydalanuvchi qo‘llanmasi…. 99

Intel FPGA butun sonli arifmetik IP yadrolari foydalanuvchi qo‘llanmasi 4

Fikr-mulohaza yuborish

683490 | 2020.10.05 Fikr-mulohaza yuborish

1. Intel FPGA butun sonli arifmetik IP yadrolari

Dizayningizda matematik operatsiyalarni bajarish uchun Intel® FPGA butun IP yadrolaridan foydalanishingiz mumkin.

Bu funktsiyalar o'z funktsiyalaringizni kodlashdan ko'ra samaraliroq mantiqiy sintez va qurilmani amalga oshirishni taklif qiladi. Dizayn talablaringizni qondirish uchun IP yadrolarini sozlashingiz mumkin.

Intel butun arifmetik IP yadrolari quyidagi ikkita toifaga bo'linadi: · Parametrlangan modullar kutubxonasi (LPM) IP yadrolari · Intelga xos (ALT) IP yadrolari

Quyidagi jadvalda butun sonli arifmetik IP yadrolari keltirilgan.

1-jadval.

IP yadrolari ro'yxati

IP yadrolari

LPM IP yadrolari

LPM_COUNTER

LPM_DIVIDE

LPM_MULT

LPM_ADD_SUB
LPM_SOLISH
Intel-maxsus (ALT) IP yadrolari ALTECC

Funktsiya tugadiview Hisoblagich bo'linuvchi ko'paytmasi
Qo'shimcha yoki ayiruvchi solishtiruvchi
ECC kodlovchi/dekoder

Qo'llab-quvvatlanadigan qurilma
Arria® II GX, Arria II GZ, Arria V, Intel Arria 10, Cyclone® IV E, Cyclone IV GX, Cyclone V, Intel Cyclone 10 LP,
Intel Cyclone 10 GX, MAX® II, MAX V, MAX 10, Stratix® IV, Stratix V
Arria II GX, Arria II GZ, Arria V, Intel Arria 10, Cyclone IV E, Cyclone IV GX,
Cyclone V, Intel Cyclone 10 LP, Intel Cyclone 10 GX, MAX II, MAX V, MAX 10, Stratix IV, Stratix V, Intel Stratix 10
Arria II GX, Arria II GZ, Arria V, Intel Arria 10, Cyclone IV E, Cyclone IV GX,
Cyclone V, Intel Cyclone 10 LP, Intel Cyclone 10 GX, MAX II, MAX V, MAX 10, Stratix IV, Stratix V, Intel Stratix 10
Arria II GX, Arria II GZ, Arria V, Cyclone IV E, Cyclone IV GX, Cyclone V, Intel Cyclone 10 LP, MAX 10, MAX
II, MAX V, Stratix IV, Stratix V
Arria II GX, Arria II GZ, Arria V, Cyclone IV E, Cyclone IV GX, Cyclone V, Intel Cyclone 10 LP, MAX 10, MAX
II, MAX V, Stratix IV, Stratix V
Arria II GX, Arria II GZ, Arria V, Intel Arria 10, Cyclone IV E, Cyclone IV GX,
Cyclone V, Intel Cyclone 10 LP, Intel Cyclone 10 GX, MAX II, MAX V, MAX
10, Stratix IV, Stratix V davom etdi…

Intel korporatsiyasi. Barcha huquqlar himoyalangan. Intel, Intel logotipi va boshqa Intel belgilari Intel korporatsiyasi yoki uning sho'ba korxonalarining savdo belgilaridir. Intel o'zining FPGA va yarimo'tkazgich mahsulotlarining Intel standart kafolatiga muvofiq joriy spetsifikatsiyalarga muvofiq ishlashini kafolatlaydi, lekin istalgan vaqtda ogohlantirmasdan istalgan mahsulot va xizmatlarga o'zgartirish kiritish huquqini o'zida saqlab qoladi. Intel tomonidan yozma ravishda kelishilgan hollar bundan mustasno, bu erda tasvirlangan har qanday ma'lumot, mahsulot yoki xizmatdan foydalanish yoki qo'llash natijasida kelib chiqadigan hech qanday javobgarlik yoki javobgarlikni o'z zimmasiga olmaydi. Intel mijozlariga har qanday nashr etilgan ma'lumotlarga tayanishdan va mahsulot yoki xizmatlarga buyurtma berishdan oldin qurilma texnik xususiyatlarining so'nggi versiyasini olish tavsiya etiladi. *Boshqa nomlar va brendlar boshqalarning mulki sifatida da'vo qilinishi mumkin.

ISO 9001: 2015 Ro'yxatdan o'tgan

1. Intel FPGA butun sonli arifmetik IP yadrolari 683490 | 2020.10.05

IP yadrolari Intel FPGA Multiply Adder yoki ALTERA_MULT_ADD ALTMEMMULT
ALTMULT_ACCUM ALTMULT_ADD ALTMULT_COMPLEX
ALTSQRT
PARALLEL_QO'SHIMCHI

Funktsiya tugadiview Ko'paytiruvchi - qo'shuvchi
Xotiraga asoslangan doimiy koeffitsient multiplikatori
Ko'paytiruvchi-akkumulyatorli ko'paytiruvchi-qo'shimcha
Kompleks multiplikator
Butun son kvadrat ildiz
Parallel qo'shuvchi

Qo'llab-quvvatlanadigan qurilma
Arria V, Stratix V, Cyclone V, Intel Stratix 10, Intel Arria 10, Intel Cyclone
10 GX
Arria II GX, Arria II GZ, Arria V, Intel Arria 10 (Intel Quartus® Prime Standard Edition), Cyclone IV E, Cyclone IV GX, Cyclone V, Intel
Cyclone 10 LP, MAX II, MAX V, MAX 10, Stratix IV, Stratix V
Arria II GX, Arria II GZ, Cyclone IV E, Cyclone IV GX, Intel Cyclone 10 LP, MAX 10, MAX II, MAX V, Stratix IV
Arria II GX, Arria II GZ, Cyclone IV E, Cyclone IV GX, Intel Cyclone 10 LP, MAX 10, MAX II, MAX V, Stratix IV
Arria II GX, Arria II GZ, Intel Arria 10, Arria V, Arria V GZ, Cyclone IV E, Cyclone IV GX, Cyclone V, Intel
Cyclone 10 GX, Intel Cyclone 10 LP, MAX 10, Stratix V, Intel Stratix 10
Arria II GX, Arria II GZ, Arria V, Intel Arria 10, Cyclone IV E, Cyclone IV GX,
Cyclone V, Intel Cyclone 10 LP, Intel Cyclone 10 GX, MAX II, MAX V, MAX
10, Stratix IV, Stratix V
Arria II GX, Arria II GZ, Arria V, Intel Arria 10, Cyclone IV E, Cyclone IV GX,
Cyclone V, Intel Cyclone 10 LP, Intel Cyclone 10 GX, MAX II, MAX V, MAX
10, Stratix IV, Stratix V

Tegishli ma'lumotlar
· Intel FPGA va dasturlashtiriladigan qurilmalar relizlar haqida eslatma
· Intel FPGA IP yadrolariga kirish Intel FPGA IP yadrolari haqida ko'proq ma'lumot beradi.
· Floating-Point IP Cores User Guide Intel FPGA Floating-Point IP yadrolari haqida ko'proq ma'lumot beradi.
· Intel FPGA IP yadrolariga kirish barcha Intel FPGA IP yadrolari, jumladan IP yadrolarini parametrlash, yaratish, yangilash va simulyatsiya qilish haqida umumiy ma'lumot beradi.
· Versiyadan mustaqil IP va Qsys simulyatsiya skriptlarini yaratish Dasturiy ta'minot yoki IP versiyasini yangilash uchun qo'lda yangilashni talab qilmaydigan simulyatsiya skriptlarini yarating.
· Loyihangiz va IP-ni samarali boshqarish va ko'chirish uchun loyihani boshqarish bo'yicha eng yaxshi amaliyotlar bo'yicha ko'rsatmalar files.
· Integer arifmetic IP yadrolari foydalanuvchi qo‘llanmasi Hujjat arxivlari 98-betda Integer arifmetik IP yadrolarining oldingi versiyalari uchun foydalanuvchi qo‘llanmalari ro‘yxatini taqdim etadi.

Intel FPGA butun sonli arifmetik IP yadrolari foydalanuvchi qo‘llanmasi 6

Fikr-mulohaza yuborish

683490 | 2020.10.05 Fikr-mulohaza yuborish

2. LPM_COUNTER (hisoblagich) IP yadrosi

1-rasm.

LPM_COUNTER IP yadrosi ikkilik hisoblagich bo'lib, 256 bitgacha kenglikdagi chiqishlar bilan yuqoriga, pastga va yuqoriga yoki pastga hisoblagichlarni yaratadi.

Quyidagi rasmda LPM_COUNTER IP yadrosi uchun portlar ko'rsatilgan.

LPM_COUNTER portlar

LPM_COUNTER

ssclr sload sset ma'lumotlari[]

q[]

yangilangan

cout

aclr yuklash aseti

clk_en cnt_en cin
inst

2.1. Xususiyatlari
LPM_COUNTER IP yadrosi quyidagi funksiyalarni taqdim etadi: · Yuqoriga, pastga va yuqoriga/pastga hisoblagichlarni yaratadi · Quyidagi hisoblagich turlarini yaratadi:
— Oddiy ikkilik – hisoblagichning o'sishi noldan boshlanadi yoki 255 dan boshlanadi.
— Modul – hisoblagich foydalanuvchi tomonidan belgilangan modul qiymatiga oshadi yoki undan kamayadi va takrorlanadi
· Ixtiyoriy sinxron tozalash, yuklash va sozlash kirish portlarini qo‘llab-quvvatlaydi · Ixtiyoriy asinxron tozalash, yuklash va sozlash kirish portlarini qo‘llab-quvvatlaydi · Ixtiyoriy hisoblashni yoqish va soatni yoqish kirish portlarini qo‘llab-quvvatlaydi · Ixtiyoriy tashish va olib chiqish portlarini qo‘llab-quvvatlaydi

Intel korporatsiyasi. Barcha huquqlar himoyalangan. Intel, Intel logotipi va boshqa Intel belgilari Intel korporatsiyasi yoki uning sho'ba korxonalarining savdo belgilaridir. Intel o'zining FPGA va yarimo'tkazgich mahsulotlarining Intel standart kafolatiga muvofiq joriy spetsifikatsiyalarga muvofiq ishlashini kafolatlaydi, lekin istalgan vaqtda ogohlantirmasdan istalgan mahsulot va xizmatlarga o'zgartirish kiritish huquqini o'zida saqlab qoladi. Intel tomonidan yozma ravishda kelishilgan hollar bundan mustasno, bu erda tasvirlangan har qanday ma'lumot, mahsulot yoki xizmatdan foydalanish yoki qo'llash natijasida kelib chiqadigan hech qanday javobgarlik yoki javobgarlikni o'z zimmasiga olmaydi. Intel mijozlariga har qanday nashr etilgan ma'lumotlarga tayanishdan va mahsulot yoki xizmatlarga buyurtma berishdan oldin qurilma texnik xususiyatlarining so'nggi versiyasini olish tavsiya etiladi. *Boshqa nomlar va brendlar boshqalarning mulki sifatida da'vo qilinishi mumkin.

ISO 9001: 2015 Ro'yxatdan o'tgan

2. LPM_COUNTER (hisoblagich) IP yadrosi
683490 | 2020.10.05
2.2. Verilog HDL prototipi
Quyidagi Verilog HDL prototipi Verilog Dizaynida joylashgan File (.v) lpm.v ichida edasintez katalogi.
lpm_counter moduli (q, ma'lumotlar, soat, cin, cout, clk_en, cnt_en, yuqoriga, aset, aclr, yuklash, sset, sclr, sload, eq); parametr lpm_type = "lpm_counter"; parametr lpm_width = 1; parametr lpm_modulus = 0; lpm_direction parametri = “FOYDALANILMAGAN”; parametr lpm_value = "FOYDALANILMAGAN"; lpm_svalue parametri = “FOYDALANILMAGAN”; parametr lpm_pvalue = “FOYDALANILMAGAN”; parametr lpm_port_updown = “PORT_CONNECTIVITY”; parametr lpm_hint = “FOYDALANILMAGAN”; chiqish [lpm_width-1:0] q; chiqish; chiqish [15:0] ekv; kirish cin; [lpm_width-1:0] ma'lumotlarini kiritish; kiritish soati, clk_en, cnt_en, yuqoriga; kiritish aseti, aclr, yuk; kiritish sset, sclr, sload; endmodul
2.3. VHDL komponent deklaratsiyasi
VHDL komponent deklaratsiyasi VHDL dizaynida joylashgan File (.vhd) ichida LPM_PACK.vhd librariesvhdllpm katalogi.
LPM_COUNTER umumiy komponenti ( LPM_WIDTH : tabiiy; LPM_MODULUS : tabiiy := 0; LPM_DIRECTION : string := “FOYDALANILMAGAN”; LPM_AVALUE : string := “FOYDALANILMAYDI”; LPM_SVALUE: string := “UNUSED_: natural; LPM_MODULUS: string: CONUSED”; DOWNPORTITY=string ; LPM_PVALUE : string := “FOYDALANILMAYDI”; LPM_TYPE: string := L_COUNTER; LPM_HINT: string := “FOYDALANILMAYDI”); port (DATA: std_logic_vectorda (LPM_WIDTH-1 dan 0 gacha):= (BOShQALAR =>
'0'); SOAT: std_logic da; CLK_EN : std_logic da := '1'; CNT_EN : std_logic da:= '1'; UPDOWN : std_logic da := '1'; SLOAD : std_logic da := '0'; SSET : std_logic da := '0'; SCLR : std_logic da := '0'; YUKLASH : std_logic da := '0'; ASET : std_logic da := '0'; ACLR : std_logic da := '0'; CIN : std_logic da:= '1'; COUT : out std_logic := '0'; Savol: std_logic_vector tashqari (LPM_WIDTH-1 dan 0 gacha); EQ: std_logic_vector tashqari (15 dan 0 gacha);
yakuniy komponent;

Intel FPGA butun sonli arifmetik IP yadrolari foydalanuvchi qo‘llanmasi 8

Fikr-mulohaza yuborish

2. LPM_COUNTER (hisoblagich) IP yadrosi 683490 | 2020.10.05

2.4. VHDL LIBRARY_USE deklaratsiyasi
Agar siz VHDL komponent deklaratsiyasidan foydalansangiz, VHDL LIBRARY-USE deklaratsiyasi talab qilinmaydi.
LIBRARY lpm; lpm.lpm_components.all dan foydalanish;

2.5. Portlar

Quyidagi jadvallarda LPM_COUNTER IP yadrosi uchun kirish va chiqish portlari keltirilgan.

2-jadval.

LPM_COUNTER kirish portlari

Port nomi

Majburiy

Tavsif

maʼlumotlar[]

Yo'q

Hisoblagichga parallel ravishda ma'lumotlarni kiritish. Kirish portining o'lchami LPM_WIDTH parametr qiymatiga bog'liq.

soat

Ha

Ijobiy chekka tetiklangan soat kiritish.

clk_en

Yo'q

Barcha sinxron harakatlarni yoqish uchun soat kiritishni yoqish. Agar o'tkazib yuborilsa, standart qiymat 1 bo'ladi.

cnt_en

Yo'q

Sload, sset yoki sclr-ga ta'sir qilmasdan, past bo'lsa, hisoblashni o'chirish uchun Count yoqish kiritish. Agar o'tkazib yuborilsa, standart qiymat 1 bo'ladi.

yangilangan

Yo'q

Hisoblash yo'nalishini nazorat qiladi. Yuqori (1) bo'lsa, hisoblash yo'nalishi yuqoriga ko'tariladi va past (0) bo'lsa, hisoblash yo'nalishi pastga tushadi. Agar LPM_DIRECTION parametri ishlatilsa, yuqoriga portni ulab bo'lmaydi. Agar LPM_DIRECTION ishlatilmasa, yuqoriga tushirish porti ixtiyoriy. Agar o'tkazib yuborilsa, standart qiymat yuqori bo'ladi (1).

cin

Yo'q

Past darajali bitga olib boring. Yuqori hisoblagichlar uchun cin kiritishning harakati

cnt_en kiritish harakati bilan bir xil. Agar o'tkazib yuborilsa, standart qiymat 1 bo'ladi

(VCC).

aclr

Yo'q

Asinxron aniq kiritish. Agar ikkala aset va aclr ishlatilsa va tasdiqlansa, aclr aktivni bekor qiladi. Agar o'tkazib yuborilsa, standart qiymat 0 (o'chirilgan).

aktiv

Yo'q

Asinxron to'plam kiritish. q[] chiqishlarini barcha 1lar sifatida yoki LPM_AVALUE parametri bilan belgilangan qiymatga belgilaydi. Agar ikkala aset va aclr portlari ishlatilsa va tasdiqlansa, aclr portining qiymati aset portining qiymatini bekor qiladi. Agar o'tkazib yuborilsa, standart qiymat 0, o'chirilgan.

yuk

Yo'q

Hisoblagichni ma'lumotlar kiritishidagi qiymat bilan asinxron ravishda yuklaydigan asinxron yuk kiritish. Yuklash portidan foydalanilganda, ma'lumotlar[] porti ulangan bo'lishi kerak. Agar o'tkazib yuborilsa, standart qiymat 0, o'chirilgan.

sclr

Yo'q

Keyingi faol soat chekkasidagi hisoblagichni tozalaydigan sinxron aniq kiritish. Agar ikkala sset va sclr portlari ishlatilsa va tasdiqlansa, sclr portining qiymati sset portining qiymatini bekor qiladi. Agar o'tkazib yuborilsa, standart qiymat 0, o'chirilgan.

sset

Yo'q

Hisoblagichni keyingi faol soat chetiga o'rnatadigan sinxron to'siq kiritish. q chiqishi qiymatini barcha 1lar sifatida yoki LPM_SVALUE parametri bilan belgilangan qiymatga belgilaydi. Agar ikkala sset va sclr portlari ishlatilsa va tasdiqlansa,
sclr portining qiymati sset portining qiymatini bekor qiladi. Agar o'tkazib yuborilsa, standart qiymat 0 (o'chirilgan).

yuk

Yo'q

Hisoblagichni keyingi faol soat chekkasidagi ma'lumotlar[] bilan yuklaydigan sinxron yuk kiritish. Sload portidan foydalanilganda, ma'lumotlar[] porti ulangan bo'lishi kerak. Agar o'tkazib yuborilsa, standart qiymat 0 (o'chirilgan).

Fikr-mulohaza yuborish

Intel FPGA butun sonli arifmetik IP yadrolari foydalanuvchi qo‘llanmasi 9

2. LPM_COUNTER (hisoblagich) IP yadrosi 683490 | 2020.10.05

3-jadval.

LPM_COUNTER chiqish portlari

Port nomi

Majburiy

Tavsif

q[]

Yo'q

Hisoblagichdan ma'lumotlar chiqishi. Chiqish portining o'lchami unga bog'liq

LPM_WIDTH parametr qiymati. q[] yoki eq[15..0] portlaridan kamida bittasi

ulangan bo'lishi kerak.

ekv[15..0]

Yo'q

Hisoblagich dekodlash chiqishi. Parametr muharririda eq[15..0] portiga kirish imkoni yo'q, chunki parametr faqat AHDL ni qo'llab-quvvatlaydi.
q[] porti yoki eq[] porti ulangan bo'lishi kerak. c eq portlarigacha foydalanish mumkin (0 <= c <= 15). Faqat 16 ta eng past hisoblash qiymati dekodlanadi. Hisoblash qiymati c bo'lsa, eqc chiqishi yuqori (1) deb tasdiqlanadi. Misol uchunample, hisoblash 0 bo'lsa, eq0 = 1, sanash 1 bo'lsa, eq1 = 1 va hisoblash 15 bo'lsa, eq 15 = 1. 16 yoki undan ortiq hisoblash qiymatlari uchun dekodlangan chiqish tashqi dekodlashni talab qiladi. eq[15..0] chiqishlari q[] chiqishiga asinxrondir.

cout

Yo'q

Hisoblagichning MSB bitining o'tkazish porti. U kattaroq hisoblagich yaratish uchun boshqa hisoblagichga ulanish uchun ishlatilishi mumkin.

2.6. Parametrlar

Quyidagi jadvalda LPM_COUNTER IP yadrosi parametrlari keltirilgan.

4-jadval.

LPM_COUNTER parametrlari

Parametr nomi

Turi

LPM_WIDTH

Butun son

LPM_DIRECTION

String

LPM_MODULUS LPM_AVALUE

Butun son
Integer/ String

LPM_SVALUE LPM_HINT

Integer/ String
String

LPM_TYPE

String

Majburiy Ha Yo'q Yo'q Yo'q
Yo'q Yo'q
Yo'q

Tavsif
Maʼlumotlar[] va q[] portlarining kengligini, agar ular ishlatilsa, belgilaydi.
Qiymatlar UP, DOWN va FOYDALANMAYDI. Agar LPM_DIRECTION parametri ishlatilsa, yuqoriga portni ulab bo'lmaydi. Yuqori port ulanmagan bo'lsa, LPM_DIRECTION parametrining standart qiymati UP bo'ladi.
Maksimal raqam, ortiqcha bitta. Hisoblagich siklidagi noyob holatlar soni. Agar yuk qiymati LPM_MODULUS parametridan kattaroq bo'lsa, hisoblagichning harakati ko'rsatilmaydi.
Obyekt yuqori deb tasdiqlanganda yuklanadigan doimiy qiymat. Belgilangan qiymat kattaroq yoki teng bo'lsa , hisoblagichning xatti-harakati aniqlanmagan (X) mantiqiy darajadir, bu erda Agar mavjud bo'lsa, LPM_MODULUS yoki 2 ^ LPM_WIDTH. Intel bu qiymatni AHDL dizaynlari uchun kasrli raqam sifatida ko'rsatishni tavsiya qiladi.
Sset porti yuqori bo'lganida soat portining ko'tarilgan chetiga yuklanadigan doimiy qiymat. Intel bu qiymatni AHDL dizaynlari uchun kasrli raqam sifatida ko'rsatishni tavsiya qiladi.
VHDL dizaynida parametrlangan modullar kutubxonasi (LPM) funksiyasini yaratganingizda File (.vhd), siz Intelga xos parametrni belgilash uchun LPM_HINT parametridan foydalanishingiz kerak. Misol uchunample: LPM_HINT = "CHAIN_SIZE = 8, ONE_INPUT_IS_CONSTANT = HA"
Standart qiymat UNUSED.
VHDL dizayndagi parametrlangan modullar kutubxonasini (LPM) ob'ekt nomini aniqlaydi files.
davom etdi…

Intel FPGA butun sonli arifmetik IP yadrolari foydalanuvchi qo‘llanmasi 10

Fikr-mulohaza yuborish

2. LPM_COUNTER (hisoblagich) IP yadrosi 683490 | 2020.10.05

Parametr nomi INTENDED_DEVICE_FAMILY CARRY_CNT_EN
LABWIDE_SCLR
LPM_PORT_UPDOWN

String String yozing
String
String

Majburiy No No
Yo'q
Yo'q

Tavsif
Ushbu parametr modellashtirish va xatti-harakatlarni simulyatsiya qilish uchun ishlatiladi. Ushbu parametr modellashtirish va xatti-harakatlarni simulyatsiya qilish uchun ishlatiladi. Parametr muharriri ushbu parametr uchun qiymatni hisoblab chiqadi.
Intel-ga xos parametr. VHDL dizaynida CARRY_CNT_EN parametrini belgilash uchun LPM_HINT parametridan foydalanishingiz kerak. files. Qiymatlar SMART, ON, OFF va FOYDALANMAYDI. Cnt_en signalini tashish zanjiri orqali tarqatish uchun LPM_COUNTER funksiyasini yoqadi. Ba'zi hollarda CARRY_CNT_EN parametr sozlamalari tezlikka ozgina ta'sir qilishi mumkin, shuning uchun uni o'chirib qo'yishingiz mumkin. Standart qiymat SMART bo'lib, u o'lcham va tezlik o'rtasidagi eng yaxshi kelishuvni ta'minlaydi.
Intel-ga xos parametr. VHDL dizaynida LABWIDE_SCLR parametrini belgilash uchun LPM_HINT parametridan foydalanishingiz kerak. files. Qiymatlar ON, OFF yoki FOYDALANMAYDI. Standart qiymat ON. Eskirgan qurilmalar oilalarida joylashgan LABwide sclr funksiyasidan foydalanishni o‘chirish imkonini beradi. Ushbu parametrni o'chirish qisman to'ldirilgan LAB'lardan to'liq foydalanish imkoniyatini oshiradi va shuning uchun SCLR to'liq LABga taalluqli bo'lmaganda yuqori mantiqiy zichlikka ruxsat berishi mumkin. Ushbu parametr orqaga qarab muvofiqlik uchun mavjud va Intel ushbu parametrdan foydalanmaslikni tavsiya qiladi.
Yuqoriga kirish portidan foydalanishni belgilaydi. Agar o'tkazib yuborilsa, standart qiymat PORT_CONNECTIVITY bo'ladi. Port qiymati PORT_USED ga o'rnatilgan bo'lsa, port ishlatilgandek hisoblanadi. Port qiymati PORT_UNUSED ga o‘rnatilgan bo‘lsa, port foydalanilmagan deb hisoblanadi. Port qiymati PORT_CONNECTIVITY ga o'rnatilgan bo'lsa, portdan foydalanish port ulanishini tekshirish orqali aniqlanadi.

Fikr-mulohaza yuborish

Intel FPGA butun sonli arifmetik IP yadrolari foydalanuvchi qo‘llanmasi 11

683490 | 2020.10.05 Fikr-mulohaza yuborish

3. LPM_DIVIDE (Divider) Intel FPGA IP Core

2-rasm.

LPM_DIVIDE Intel FPGA IP yadrosi qism va qoldiq hosil qilish uchun hisoblagichning kirish qiymatini maxrajning kirish qiymatiga bo'lish uchun ajratgichni amalga oshiradi.

Quyidagi rasmda LPM_DIVIDE IP yadrosi uchun portlar ko'rsatilgan.

LPM_DIVIDE portlari

LPM_DIVIDE

raqam[] denom[] soat

quotient[] qoldi[]

clken aclr

inst

3.1. Xususiyatlari
LPM_DIVIDE IP yadrosi quyidagi xususiyatlarni taqdim etadi: · Numerator kiritish qiymatini maxraj kiritish orqali ajratuvchi ajratgichni hosil qiladi.
qism va qoldiq hosil qilish uchun qiymat. · 1 bitli ma'lumotlar kengligini qo'llab-quvvatlaydi. · Numerator uchun imzolangan va imzolanmagan ma'lumotlarni ko'rsatish formatini qo'llab-quvvatlaydi
va maxraj qiymatlari. · Hudud yoki tezlikni optimallashtirishni qo'llab-quvvatlaydi. · Ijobiy qoldiq chiqishini belgilash imkoniyatini beradi. · Quvurlarni o'rnatishni sozlash mumkin bo'lgan chiqish kechikishini qo'llab-quvvatlaydi. · Ixtiyoriy asinxron aniq va soatni yoqish portlarini qo'llab-quvvatlaydi.

3.2. Verilog HDL prototipi
Quyidagi Verilog HDL prototipi Verilog Dizaynida joylashgan File (.v) lpm.v ichida edasintez katalogi.
modul lpm_divide ( quotient, qoladi, raqam, denom, soat, clken, aclr); parametr lpm_type = "lpm_divide"; lpm_widthn parametri = 1; parametr lpm_widthd = 1; lpm_nrepresentation parametri = “INSIGNED”; lpm_drepresentation parametri = “IMZO BERILMAGAN”; lpm_remainderpositive parametri = "TRUE"; lpm_pipeline parametri = 0;

Intel korporatsiyasi. Barcha huquqlar himoyalangan. Intel, Intel logotipi va boshqa Intel belgilari Intel korporatsiyasi yoki uning sho'ba korxonalarining savdo belgilaridir. Intel o'zining FPGA va yarimo'tkazgich mahsulotlarining Intel standart kafolatiga muvofiq joriy spetsifikatsiyalarga muvofiq ishlashini kafolatlaydi, lekin istalgan vaqtda ogohlantirmasdan istalgan mahsulot va xizmatlarga o'zgartirish kiritish huquqini o'zida saqlab qoladi. Intel tomonidan yozma ravishda kelishilgan hollar bundan mustasno, bu erda tasvirlangan har qanday ma'lumot, mahsulot yoki xizmatdan foydalanish yoki qo'llash natijasida kelib chiqadigan hech qanday javobgarlik yoki javobgarlikni o'z zimmasiga olmaydi. Intel mijozlariga har qanday nashr etilgan ma'lumotlarga tayanishdan va mahsulot yoki xizmatlarga buyurtma berishdan oldin qurilma texnik xususiyatlarining so'nggi versiyasini olish tavsiya etiladi. *Boshqa nomlar va brendlar boshqalarning mulki sifatida da'vo qilinishi mumkin.

ISO 9001: 2015 Ro'yxatdan o'tgan

3. LPM_DIVIDE (bo‘luvchi) Intel FPGA IP Core 683490 | 2020.10.05

parametr lpm_hint = “FOYDALANILMAGAN”; kiritish soati; kiritish clken; aclr kiritish; kiritish [lpm_widthn-1:0] raqami; kiritish [lpm_widthd-1:0] denom; chiqish [lpm_widthn-1:0] quotient; chiqish [lpm_widthd-1:0] qoladi; endmodul

3.3. VHDL komponent deklaratsiyasi
VHDL komponent deklaratsiyasi VHDL dizaynida joylashgan File (.vhd) ichida LPM_PACK.vhd librariesvhdllpm katalogi.
komponent LPM_DIVIDE umumiy (LPM_WIDTHN : tabiiy; LPM_WIDTHD : tabiiy;
LPM_NREPRESENTATION : string := “INSIGNED”; LPM_DREPRESENTATION : string := “UNSIGNED”; LPM_PIPELINE : natural := 0; LPM_TYPE : string := L_DIVIDE; LPM_HINT : string := “FOYDALANILMAYDI”); port (NUMER : in std_logic_vector(LPM_WIDTHN-1 dan 0 gacha); DENOM : in std_logic_vector(LPM_WIDTHD-1 dan 0 gacha); ACLR : std_logicda := '0'; CLOCK : std_logic-da :CL'0' =K logicda; := '1'; QUOTIENT : std_logic_vector (LPM_WIDTHN-1 dan 0 gacha); QOLISH : std_logic_vector tashqari (LPM_WIDTHD-1 dan 0 gacha)); yakuniy komponent;

3.4. VHDL LIBRARY_USE deklaratsiyasi
Agar siz VHDL komponent deklaratsiyasidan foydalansangiz, VHDL LIBRARY-USE deklaratsiyasi talab qilinmaydi.
LIBRARY lpm; lpm.lpm_components.all dan foydalanish;

3.5. Portlar

Quyidagi jadvallarda LPM_DIVIDE IP yadrosi uchun kirish va chiqish portlari keltirilgan.

5-jadval.

LPM_DIVIDE kirish portlari

Port nomi

Majburiy

raqam[]

Ha

nom[]

Ha

Tavsif
Numerator ma'lumotlarini kiritish. Kirish portining o'lchami LPM_WIDTHN parametr qiymatiga bog'liq.
Denominator ma'lumotlarini kiritish. Kirish portining o'lchami LPM_WIDTHD parametr qiymatiga bog'liq.
davom etdi…

Fikr-mulohaza yuborish

Intel FPGA butun sonli arifmetik IP yadrolari foydalanuvchi qo‘llanmasi 13

3. LPM_DIVIDE (bo‘luvchi) Intel FPGA IP Core 683490 | 2020.10.05

Port nomi soat clken
aclr

Majburiy No No
Yo'q

Tavsif
Quvurli foydalanish uchun soat kiritish. 0 dan (standart) boshqa LPM_PIPELINE qiymatlari uchun soat porti yoqilgan bo'lishi kerak.
Soat quvurli foydalanishni yoqadi. Clken porti baland bo'lsa, bo'linish jarayoni sodir bo'ladi. Signal past bo'lsa, hech qanday operatsiya sodir bo'lmaydi. Agar o'tkazib yuborilsa, standart qiymat 1 bo'ladi.
Asinxron tozalash porti istalgan vaqtda quvur liniyasini barcha 0 ga asinxron ravishda soat kiritishiga qaytarish uchun ishlatiladi.

6-jadval.

LPM_DIVIDE chiqish portlari

Port nomi

Majburiy

Tavsif

ko'rsatkich[]

Ha

Ma'lumotlar chiqishi. Chiqish portining o'lchami LPM_WIDTHN ga bog'liq

parametr qiymati.

qoladi[]

Ha

Ma'lumotlar chiqishi. Chiqish portining o'lchami LPM_WIDTHD ga bog'liq

parametr qiymati.

3.6. Parametrlar

Quyidagi jadvalda LPM_DIVIDE Intel FPGA IP yadrosi parametrlari keltirilgan.

Parametr nomi

Turi

Majburiy

Tavsif

LPM_WIDTHN

Butun son

Ha

[] va raqamning kengligini belgilaydi

quotient[] portlari. Qiymatlar 1 dan 64 gacha.

LPM_WIDTHD

Butun son

Ha

Denom [] va kengliklarini belgilaydi

[] portlar qoladi. Qiymatlar 1 dan 64 gacha.

LPM_NREPRESENTATION LPM_DREPRESENTATION

String String

Yo'q

Numerator kiritishning belgi ko'rinishi.

Qiymatlar Imzolangan va imzosiz. Bu qachon

parametr SIGNED, bo'luvchiga o'rnatiladi

raqam[] kiritilishini imzolangan ikkitasi sifatida izohlaydi

to‘ldiruvchi.

Yo'q

Maxraj kiritishning belgi ko'rinishi.

Qiymatlar Imzolangan va imzosiz. Bu qachon

parametr SIGNED, bo'luvchiga o'rnatiladi

denom[] kiritishni imzolangan ikkitasi sifatida izohlaydi

to‘ldiruvchi.

LPM_TYPE

String

Yo'q

Parametrlangan kutubxonani aniqlaydi

VHDL dizayndagi modullar (LPM) ob'ekt nomi

files (.vhd).

LPM_HINT

String

Yo'q

kutubxonasini yaratganingizda

parametrlangan modullar (LPM) funktsiyasi a

VHDL dizayni File (.vhd), siz foydalanishingiz kerak

Intel-ni belgilash uchun LPM_HINT parametri

maxsus parametr. Misol uchunample: LPM_HINT

= “CHAIN_SIZE = 8,

ONE_INPUT_IS_CONSTANT = HA” The

standart qiymat UNISED.

LPM_REMAINDERPOSITIVE

String

Yo'q

Intel-ga xos parametr. dan foydalanishingiz kerak

Belgilash uchun LPM_HINT parametri

LPM_REMAINDERPOSITIVE parametri

VHDL dizayni files. Qiymatlar TRUE yoki FALSE.

Agar ushbu parametr TRUE ga o'rnatilgan bo'lsa, u holda

qolgan[] portining qiymati kattaroq bo'lishi kerak

davom etdi…

Intel FPGA butun sonli arifmetik IP yadrolari foydalanuvchi qo‘llanmasi 14

Fikr-mulohaza yuborish

3. LPM_DIVIDE (bo‘luvchi) Intel FPGA IP Core 683490 | 2020.10.05

Parametr nomi

Turi

MAXIMIZE_SPEED

Butun son

LPM_PIPELINE

Butun son

INTENDED_DEVICE_FAMILY SKIP_BITS

String Integer

Majburiy raqam
Yo'q Yo'q Yo'q

Tavsif
nolga teng yoki nolga teng. Agar bu parametr TRUE ga o'rnatilgan bo'lsa, qolgan[] portining qiymati yoki nolga teng bo'ladi yoki qiymat raqam portining qiymati bilan bir xil, ijobiy yoki salbiy belgi bo'ladi. Hududni qisqartirish va tezlikni yaxshilash uchun Intel qolganlari ijobiy bo'lishi kerak bo'lgan yoki qolganlari ahamiyatsiz bo'lgan operatsiyalarda ushbu parametrni TRUE ga o'rnatishni tavsiya qiladi.
Intel-ga xos parametr. VHDL dizaynida MAXIMIZE_SPEED parametrini belgilash uchun LPM_HINT parametridan foydalanishingiz kerak. files. Qiymatlar [0..9]. Agar foydalanilsa, Intel Quartus Prime dasturi LPM_DIVIDE funksiyasining ma'lum bir nusxasini marshrutlashdan ko'ra tezlik uchun optimallashtirishga harakat qiladi va Optimallashtirish texnikasi mantiqi parametrini bekor qiladi. Agar MAXIMIZE_SPEED ishlatilmasa, uning o'rniga Optimallashtirish texnikasi parametri qiymati ishlatiladi. Agar MAXIMIZE_SPEED qiymati 6 yoki undan yuqori bo'lsa, kompilyator tashish zanjirlari yordamida LPM_DIVIDE IP yadrosini yuqori tezlikka optimallashtiradi; agar qiymat 5 yoki undan kam bo'lsa, kompilyator dizaynni tashish zanjirlarisiz amalga oshiradi.
quotient[] va qolgan[] chiqishlar bilan bog'liq kechikishning soat sikllari sonini belgilaydi. Nol (0) qiymati hech qanday kechikish mavjud emasligini va sof kombinatsiyalangan funktsiyaning yaratilganligini ko'rsatadi. Agar o'tkazib yuborilgan bo'lsa, standart qiymat 0 (bo'lmagan quvur liniyasi). LPM_PIPELINE parametri uchun LPM_WIDTHN dan yuqori qiymatni belgilay olmaysiz.
Ushbu parametr modellashtirish va xatti-harakatlarni simulyatsiya qilish uchun ishlatiladi. Parametr muharriri ushbu parametr uchun qiymatni hisoblab chiqadi.
LPM_DIVIDE IP yadrosiga yetakchi GND sonini taqdim etish orqali yetakchi bitlarda mantiqni optimallashtirish uchun yanada samarali fraksiyonel bit bo'linishiga imkon beradi. Ushbu parametrga ko'rsatkich bo'yicha etakchi GND sonini belgilang.

Fikr-mulohaza yuborish

Intel FPGA butun sonli arifmetik IP yadrolari foydalanuvchi qo‘llanmasi 15

683490 | 2020.10.05 Fikr-mulohaza yuborish

4. LPM_MULT (Multiplikator) IP yadrosi

3-rasm.

LPM_MULT IP yadrosi mahsulotni chiqish sifatida ishlab chiqarish uchun ikkita kirish ma'lumotlari qiymatini ko'paytirish uchun multiplikatorni amalga oshiradi.

Quyidagi rasmda LPM_MULT IP yadrosi uchun portlar ko'rsatilgan.

LPM_Mult portlari

LPM_MULT soat maʼlumotlari[] natija[] maʼlumotlar bazasi[] aclr/sclr clken
inst

Tegishli maʼlumotlar xususiyatlari 71-betda

4.1. Xususiyatlari
LPM_MULT IP yadrosi quyidagi funksiyalarni taqdim etadi: · Ikki kiritilgan maʼlumotlar qiymatini koʻpaytiruvchi multiplikator hosil qiladi · 1 bit maʼlumotlar kengligini qoʻllab-quvvatlaydi · Imzolangan va imzolanmagan maʼlumotlarni taqdim etish formatini qoʻllab-quvvatlaydi · Hudud yoki tezlikni optimallashtirishni qoʻllab-quvvatlaydi · Sozlanishi mumkin boʻlgan chiqish kechikishi bilan quvur liniyasini qoʻllab-quvvatlaydi. Maxsus raqamli signalni qayta ishlashda (DSP) amalga oshirish imkoniyati
blok sxemasi yoki mantiqiy elementlar (LE) Eslatma: Asl qo'llab-quvvatlanadigan o'lchamdan kattaroq ko'paytirgichlarni qurishda quyidagilar mumkin:
DSP bloklarining kaskadlanishi natijasida yuzaga keladigan ishlash ta'siri bo'ladi. · Ixtiyoriy asinxron tozalash va soatni yoqish portlarini qo'llab-quvvatlaydi · Intel Stratix 10, Intel Arria 10 va Intel Cyclone 10 GX qurilmalari uchun ixtiyoriy sinxron tozalashni qo'llab-quvvatlaydi

Intel korporatsiyasi. Barcha huquqlar himoyalangan. Intel, Intel logotipi va boshqa Intel belgilari Intel korporatsiyasi yoki uning sho'ba korxonalarining savdo belgilaridir. Intel o'zining FPGA va yarimo'tkazgich mahsulotlarining Intel standart kafolatiga muvofiq joriy spetsifikatsiyalarga muvofiq ishlashini kafolatlaydi, lekin istalgan vaqtda ogohlantirmasdan istalgan mahsulot va xizmatlarga o'zgartirish kiritish huquqini o'zida saqlab qoladi. Intel tomonidan yozma ravishda kelishilgan hollar bundan mustasno, bu erda tasvirlangan har qanday ma'lumot, mahsulot yoki xizmatdan foydalanish yoki qo'llash natijasida kelib chiqadigan hech qanday javobgarlik yoki javobgarlikni o'z zimmasiga olmaydi. Intel mijozlariga har qanday nashr etilgan ma'lumotlarga tayanishdan va mahsulot yoki xizmatlarga buyurtma berishdan oldin qurilma texnik xususiyatlarining so'nggi versiyasini olish tavsiya etiladi. *Boshqa nomlar va brendlar boshqalarning mulki sifatida da'vo qilinishi mumkin.

ISO 9001: 2015 Ro'yxatdan o'tgan

4. LPM_MULT (Multiplikator) IP yadrosi 683490 | 2020.10.05
4.2. Verilog HDL prototipi
Quyidagi Verilog HDL prototipi Verilog Dizaynida joylashgan File (.v) lpm.v ichida edasintez katalogi.
modul lpm_mult (natija, ma'lumotlar, ma'lumotlar bazasi, yig'indi, soat, clken, aclr ) parametr lpm_type = "lpm_mult"; lpm_widtha parametri = 1; lpm_widthb parametri = 1; parametr lpm_widths = 1; lpm_widthp parametri = 1; lpm_representation parametri = "ISHLAB CHIQISH"; lpm_pipeline parametri = 0; parametr lpm_hint = “FOYDALANILMAGAN”; kiritish soati; clken kiritish; aclr kiritish; kiritish [lpm_widtha-1:0] dataa; kiritish [lpm_widthb-1:0] ma'lumotlar bazasi; kiritish [lpm_widths-1:0] summasi; chiqish [lpm_widthp-1:0] natija; endmodul
4.3. VHDL komponent deklaratsiyasi
VHDL komponent deklaratsiyasi VHDL dizaynida joylashgan File (.vhd) ichida LPM_PACK.vhd librariesvhdllpm katalogi.
komponent LPM_MULT umumiy ( LPM_WIDTHA : tabiiy; LPM_WIDTHB : tabiiy; LPM_WIDTHS : tabiiy := 1; LPM_WIDTHP : tabiiy;
LPM_REPRESENTATION : string := “ISGNED”; LPM_PIPELINE : natural := 0; LPM_TYPE: string := L_MULT; LPM_HINT : string := “FOYDALANILMAYDI”); port ( DATAA : std_logic_vector da (LPM_WIDTHA-1 dan 0 gacha); DATAB : std_logic_vector da (LPM_WIDTHB-1 dan 0 gacha); ACLR : std_logicda := '0'; CLOCK : std_logicda: CL'EN'd:stda; := '0'; SUM : std_logic_vectorda (LPM_WIDTHS-1 dan 1 gacha) := (BOShQALAR => '0'); NATIJA: std_logic_vector (LPM_WIDTHP-0 dan 1 gacha)); yakuniy komponent;
4.4. VHDL LIBRARY_USE deklaratsiyasi
Agar siz VHDL komponent deklaratsiyasidan foydalansangiz, VHDL LIBRARY-USE deklaratsiyasi talab qilinmaydi.
LIBRARY lpm; lpm.lpm_components.all dan foydalanish;

Fikr-mulohaza yuborish

Intel FPGA butun sonli arifmetik IP yadrolari foydalanuvchi qo‘llanmasi 17

4. LPM_MULT (Multiplikator) IP yadrosi 683490 | 2020.10.05

4.5. Signallar

7-jadval.

LPM_MULT kirish signallari

Signal nomi

Majburiy

Tavsif

maʼlumotlar[]

Ha

Ma'lumotlarni kiritish.

Intel Stratix 10, Intel Arria 10 va Intel Cyclone 10 GX qurilmalari uchun kirish signalining o'lchami Dataa kengligi parametr qiymatiga bog'liq.

Eski va Intel Cyclone 10 LP qurilmalari uchun kirish signalining o'lchami LPM_WIDTHA parametr qiymatiga bog'liq.

maʼlumotlar bazasi[]

Ha

Ma'lumotlarni kiritish.

Intel Stratix 10, Intel Arria 10 va Intel Cyclone 10 GX qurilmalari uchun kirish signalining o'lchami Datab width parametr qiymatiga bog'liq.

Eski va Intel Cyclone 10 LP qurilmalari uchun kirish signalining o'lchami bog'liq

LPM_WIDTHB parametr qiymatida.

soat

Yo'q

Quvurli foydalanish uchun soat kiritish.

Eski va Intel Cyclone 10 LP qurilmalari uchun soat signali 0 dan boshqa LPM_PIPELINE qiymatlari uchun yoqilishi kerak (standart).

Intel Stratix 10, Intel Arria 10 va Intel Cyclone 10 GX qurilmalari uchun kechikish qiymati 1 dan (standart) boshqa bo'lsa, soat signali yoqilgan bo'lishi kerak.

clken

Yo'q

Quvurli foydalanish uchun soatni yoqish. Clken signali baland bo'lsa,

qo'shuvchi/ayirish operatsiyasi sodir bo'ladi. Signal past bo'lsa, ishlamaydi

yuzaga keladi. Agar o'tkazib yuborilsa, standart qiymat 1 bo'ladi.

aclr sclr

Yo'q

Quvurni barcha 0 larga qaytarish uchun istalgan vaqtda asinxron aniq signal ishlatiladi,

soat signaliga asinxron. Quvur liniyasi aniqlanmagan (X) ga ishga tushadi

mantiq darajasi. Chiqishlar izchil, ammo nolga teng bo'lmagan qiymatdir.

Yo'q

Quvurni barcha 0 larga qaytarish uchun istalgan vaqtda sinxron aniq signal ishlatiladi,

soat signaliga sinxron ravishda. Quvur liniyasi aniqlanmagan (X) ga ishga tushadi

mantiq darajasi. Chiqishlar izchil, ammo nolga teng bo'lmagan qiymatdir.

8-jadval.

LPM_MULT Chiqish signallari

signal nomi

Majburiy

Tavsif

natija[]

Ha

Ma'lumotlar chiqishi.

Eski va Intel Cyclone 10 LP qurilmalari uchun chiqish signalining o'lchami LPM_WIDTHP parametr qiymatiga bog'liq. Agar LPM_WIDTHP < maksimal (LPM_WIDTHA + LPM_WIDTHB, LPM_WIDTHS) yoki (LPM_WIDTHA + LPM_WIDTHS) bo'lsa, faqat LPM_WIDTHP MSB mavjud.

Intel Stratix 10, Intel Arria 10 va Intel Cyclone 10 GX uchun chiqish signallarining o'lchami Natija kengligi parametriga bog'liq.

4.6. Stratix V, Arria V, Cyclone V va Intel Cyclone 10 LP qurilmalari parametrlari

4.6.1. Umumiy yorliq

9-jadval.

Umumiy yorliq

Parametr

Qiymat

Multiplikator konfiguratsiyasi

"Dataa" kiritilishini "ma'lumotlar" kiritishiga ko'paytiring

Standart qiymat

Tavsif

"Dataa" kiritilishini "ma'lumotlar" kiritishiga ko'paytiring

Multiplikator uchun kerakli konfiguratsiyani tanlang.
davom etdi…

Intel FPGA butun sonli arifmetik IP yadrolari foydalanuvchi qo‘llanmasi 18

Fikr-mulohaza yuborish

4. LPM_MULT (Multiplikator) IP yadrosi 683490 | 2020.10.05

Parametr
"Dataa" kiritish qanchalik keng bo'lishi kerak? "Ma'lumotlar bazasi" kiritish qanchalik keng bo'lishi kerak? "Natija" chiqishining kengligi qanday aniqlanishi kerak? Kenglikni cheklang

Qiymat
"Dataa" kiritilishini o'zi bilan ko'paytiring (kvadrat operatsiya)
1-256 bit

Standart qiymat

Tavsif

8 bit

dataa[] portining kengligini belgilang.

1-256 bit

8 bit

Datab[] portining kengligini belgilang.

Kenglikni avtomatik hisoblash Kenglikni cheklash
1-512 bit

Avtomatik ravishda y kenglikni hisoblash

Natija[] portining kengligini aniqlash uchun kerakli usulni tanlang.

16 bit

Natija[] portining kengligini belgilang.
Bu qiymat faqat Type parametrida Kenglikni cheklash ni tanlaganingizda samarali bo'ladi.

4.6.2. Umumiy 2-tab

Jadval 10. Umumiy 2 Tab

Parametr

Qiymat

Ma'lumotlar bazasini kiritish

"Ma'lumotlar" kirish shinasi doimiy qiymatga egami?

Yo'q Ha

Ko'paytirish turi

Qaysi turdagi

Imzosiz

ko'paytirishni xohlaysizmi? Imzolangan

Amalga oshirish

Qaysi multiplikatorni qo'llash kerak?

Standart dasturdan foydalaning
Maxsus multiplikator sxemasidan foydalaning (barcha oilalar uchun mavjud emas)
Mantiqiy elementlardan foydalaning

Standart qiymat

Tavsif

Yo'q

ning doimiy qiymatini belgilash uchun Ha ni tanlang

"ma'lumotlar" kirish shinasi, agar mavjud bo'lsa.

Imzosiz

dataa[] va datab[] kirishlari uchun taqdim etish formatini belgilang.

Standart amalga oshirish ionidan foydalaning

Natija[] portining kengligini aniqlash uchun kerakli usulni tanlang.

4.6.3. Quvurlarni ulash yorlig'i

11-jadval. Quvurlarni o'tkazish yorlig'i

Parametr

No

funktsiya?

Ha

Qiymat

"aclr" yarating

asinxron toza port

Standart qiymat

Tavsif

Yo'q

Quvurlar registrini yoqish uchun Ha ni tanlang

multiplikatorning chiqishi va keraklini belgilang

soat siklidagi chiqish kechikishi. ni yoqish

quvur liniyasi registriga qo'shimcha kechikish qo'shiladi

chiqish.

Belgilanmagan

Quvur liniyasi registrida asinxron tozalashdan foydalanish uchun aclr portini yoqish uchun ushbu parametrni tanlang.
davom etdi…

Fikr-mulohaza yuborish

Intel FPGA butun sonli arifmetik IP yadrolari foydalanuvchi qo‘llanmasi 19

4. LPM_MULT (Multiplikator) IP yadrosi 683490 | 2020.10.05

Parametr
"CLken" soatni yoqish soatini yarating
Optimallashtirish
Qaysi turdagi optimallashtirishni xohlaysiz?

Qiymat -
Standart tezlik maydoni

Standart qiymat

Tavsif

Belgilanmagan

Quvur liniyasi registrining soat porti uchun faol yuqori soat faolligini belgilaydi

Standart

IP yadrosi uchun kerakli optimallashtirishni belgilang.
Intel Quartus Prime dasturiga IP yadrosi uchun eng yaxshi optimallashtirishni aniqlash imkonini berish uchun Standartni tanlang.

4.7. Intel Stratix 10, Intel Arria 10 va Intel Cyclone 10 GX qurilmalari parametrlari

4.7.1. Umumiy yorliq

12-jadval. Umumiy yorliq

Parametr

Qiymat

Standart qiymat

Tavsif

Multiplikator konfiguratsiyasi turi
Ma'lumotlar portining kengligi

"Dataa" kiritilishini "ma'lumotlar" kiritishiga ko'paytiring
"Dataa" kiritilishini o'zi bilan ko'paytiring (kvadrat operatsiya)

"Dataa" kiritilishini "ma'lumotlar" kiritishiga ko'paytiring

Multiplikator uchun kerakli konfiguratsiyani tanlang.

Ma'lumotlar kengligi

1-256 bit

8 bit

dataa[] portining kengligini belgilang.

Ma'lumotlar bazasi kengligi

1-256 bit

8 bit

Datab[] portining kengligini belgilang.

"Natija" chiqishining kengligi qanday aniqlanishi kerak?

Turi

Kenglikni avtomatik ravishda hisoblang
Kenglikni cheklang

Avtomatik ravishda y kenglikni hisoblash

Natija[] portining kengligini aniqlash uchun kerakli usulni tanlang.

Qiymat

1-512 bit

16 bit

Natija[] portining kengligini belgilang.
Bu qiymat faqat Type parametrida Kenglikni cheklash ni tanlaganingizda samarali bo'ladi.

Natija kengligi

1-512 bit

Natija[] portining samarali kengligini ko'rsatadi.

4.7.2. Umumiy 2-tab

Jadval 13. Umumiy 2 Tab

Parametr

Ma'lumotlar bazasini kiritish

"Ma'lumotlar" kirish shinasi doimiy qiymatga egami?

Yo'q Ha

Qiymat

Standart qiymat

Tavsif

Yo'q

ning doimiy qiymatini belgilash uchun Ha ni tanlang

"ma'lumotlar" kirish shinasi, agar mavjud bo'lsa.

davom etdi…

Intel FPGA butun sonli arifmetik IP yadrolari foydalanuvchi qo‘llanmasi 20

Fikr-mulohaza yuborish

4. LPM_MULT (Multiplikator) IP yadrosi 683490 | 2020.10.05

Parametr

Qiymat

Qiymat

0 dan katta har qanday qiymat

Ko'paytirish turi

Qaysi turdagi

Imzosiz

ko'paytirishni xohlaysizmi? Imzolangan

Amalga oshirish uslubi

Qaysi multiplikatorni qo'llash kerak?

Standart dasturdan foydalaning
Maxsus multiplikator sxemasidan foydalaning
Mantiqiy elementlardan foydalaning

Standart qiymat

Tavsif

0

datab[] portining doimiy qiymatini belgilang.

Imzosiz

dataa[] va datab[] kirishlari uchun taqdim etish formatini belgilang.

Standart amalga oshirish ionidan foydalaning

Natija[] portining kengligini aniqlash uchun kerakli usulni tanlang.

4.7.3. Quvurlarni o'tkazish

14-jadval. Quvurlarni o'tkazish yorlig'i

Parametr

Qiymat

Funktsiyani yo'naltirishni xohlaysizmi?

Quvur liniyasi

Yo'q Ha

Kechikishni tozalash signali turi

0 dan katta har qanday qiymat.
YO'Q ACLR SCLR

"CLken" soatini yarating

soatni yoqish

Qaysi turdagi optimallashtirishni xohlaysiz?

Turi

Standart tezlik maydoni

Standart qiymat

Tavsif

№ 1 YO'Q

Multiplikatorning chiqishiga quvur liniyasi registrini yoqish uchun Ha ni tanlang. Quvurlar registrini yoqish chiqishga qo'shimcha kechikishlarni qo'shadi.
Soat siklida kerakli chiqish kechikishini belgilang.
Quvurlar registrini tiklash turini belgilang. Hech qanday quvur liniyasi registridan foydalanmasangiz, NONE ni tanlang. Quvurlar registrida asinxron tozalashdan foydalanish uchun ACLR ni tanlang. Bu ACLR portini yaratadi. Quvurlar registrida sinxron tozalashdan foydalanish uchun SCLR ni tanlang. Bu SCLR portini yaratadi.
Quvur liniyasi registrining soat porti uchun faol yuqori soat faolligini belgilaydi

Standart

IP yadrosi uchun kerakli optimallashtirishni belgilang.
Intel Quartus Prime dasturiga IP yadrosi uchun eng yaxshi optimallashtirishni aniqlash imkonini berish uchun Standartni tanlang.

Fikr-mulohaza yuborish

Intel FPGA butun sonli arifmetik IP yadrolari foydalanuvchi qo‘llanmasi 21

683490 | 2020.10.05 Fikr-mulohaza yuborish

5. LPM_ADD_SUB (Qoʻshish/ayirish)

4-rasm.

LPM_ADD_SUB IP yadrosi kirish qiymatlarining yig'indisi yoki farqini o'z ichiga olgan chiqishni ishlab chiqarish uchun ma'lumotlar to'plamini qo'shish yoki ayirish uchun qo'shuvchi yoki ayiruvchini amalga oshirish imkonini beradi.

Quyidagi rasmda LPM_ADD_SUB IP yadrosi uchun portlar ko'rsatilgan.

LPM_ADD_SUB portlari

LPM_ADD_SUB add_sub cin

maʼlumotlar[]

soat clken datab[] aclr

natija[] toʻlib toshgan

inst

5.1. Xususiyatlari
LPM_ADD_SUB IP yadrosi quyidagi funksiyalarni taqdim etadi: · Topuvchi, ayiruvchi va dinamik ravishda sozlanishi mumkin boʻlgan qoʻshuvchi/ayiratuvchini yaratadi.
funktsiyalari. · 1 bitli ma'lumotlar kengligini qo'llab-quvvatlaydi. · Imzolangan va imzolanmagan kabi ma'lumotlarni taqdim etish formatini qo'llab-quvvatlaydi. · Ixtiyoriy tashish (qarz olish), asinxron tozalash va soatni yoqishni qo'llab-quvvatlaydi
kirish portlari. · Ixtiyoriy bajarish (qarz olish) va to'lib toshgan chiqish portlarini qo'llab-quvvatlaydi. · Kirish ma'lumotlar shinalaridan birini doimiyga tayinlaydi. · Sozlanishi mumkin bo'lgan chiqish kechikishi bilan quvur liniyasini qo'llab-quvvatlaydi.

Intel korporatsiyasi. Barcha huquqlar himoyalangan. Intel, Intel logotipi va boshqa Intel belgilari Intel korporatsiyasi yoki uning sho'ba korxonalarining savdo belgilaridir. Intel o'zining FPGA va yarimo'tkazgich mahsulotlarining Intel standart kafolatiga muvofiq joriy spetsifikatsiyalarga muvofiq ishlashini kafolatlaydi, lekin istalgan vaqtda ogohlantirmasdan istalgan mahsulot va xizmatlarga o'zgartirish kiritish huquqini o'zida saqlab qoladi. Intel tomonidan yozma ravishda kelishilgan hollar bundan mustasno, bu erda tasvirlangan har qanday ma'lumot, mahsulot yoki xizmatdan foydalanish yoki qo'llash natijasida kelib chiqadigan hech qanday javobgarlik yoki javobgarlikni o'z zimmasiga olmaydi. Intel mijozlariga har qanday nashr etilgan ma'lumotlarga tayanishdan va mahsulot yoki xizmatlarga buyurtma berishdan oldin qurilma texnik xususiyatlarining so'nggi versiyasini olish tavsiya etiladi. *Boshqa nomlar va brendlar boshqalarning mulki sifatida da'vo qilinishi mumkin.

ISO 9001: 2015 Ro'yxatdan o'tgan

5. LPM_ADD_SUB (Qo'shish/ayirish) 683490 | 2020.10.05
5.2. Verilog HDL prototipi
Quyidagi Verilog HDL prototipi Verilog Dizaynida joylashgan File (.v) lpm.v ichida edasintez katalogi.
modul lpm_add_sub (natija, cout, overflow, add_sub, cin, dataa, datab, clock, clken, aclr ); parametr lpm_type = “lpm_add_sub”; parametr lpm_width = 1; lpm_direction parametri = “FOYDALANILMAGAN”; lpm_representation parametri = "IMZO BO'LGAN"; lpm_pipeline parametri = 0; parametr lpm_hint = “FOYDALANILMAGAN”; kiritish [lpm_width-1:0] dataa, datab; kiritish add_sub, cin; kiritish soati; clken kiritish; aclr kiritish; chiqish [lpm_width-1:0] natija; chiqish, to‘lib-toshish; endmodul
5.3. VHDL komponent deklaratsiyasi
VHDL komponent deklaratsiyasi VHDL dizaynida joylashgan File (.vhd) ichida LPM_PACK.vhd librariesvhdllpm katalogi.
komponent LPM_ADD_SUB umumiy (LPM_WIDTH : tabiiy;
LPM_DIRECTION : string := “FOYDALANILMAYDI”; LPM_REPRESENTATION: string := “SIGNED”; LPM_PIPELINE : natural := 0; LPM_TYPE : string := L_ADD_SUB; LPM_HINT : string := “FOYDALANILMAYDI”); port (DATAA : std_logic_vector da (LPM_WIDTH-1 dan 0 gacha); DATAB : std_logic_vector da (LPM_WIDTH-1 dan 0 gacha); ACLR : std_logicda := '0'; CLOCK : std_logic'da: CLOCK'da :=K := '0'; CIN : std_logicda := 'Z'; ADD_SUB : std_logicda := '1'; NATIJA: std_logic_vector (LPM_WIDTH-1 dan 1 gacha); COUT : std_logic tashqari; OVERST_LOGic :); yakuniy komponent;
5.4. VHDL LIBRARY_USE deklaratsiyasi
Agar siz VHDL komponent deklaratsiyasidan foydalansangiz, VHDL LIBRARY-USE deklaratsiyasi talab qilinmaydi.
LIBRARY lpm; lpm.lpm_components.all dan foydalanish;
5.5. Portlar
Quyidagi jadvallarda LPM_ADD_SUB IP yadrosi uchun kirish va chiqish portlari keltirilgan.

Fikr-mulohaza yuborish

Intel FPGA butun sonli arifmetik IP yadrolari foydalanuvchi qo‘llanmasi 23

5. LPM_ADD_SUB (Qo'shish/ayirish) 683490 | 2020.10.05

15-jadval. LPM_ADD_SUB IP asosiy kirish portlari

Port nomi

Majburiy

Tavsif

cin

Yo'q

Past darajali bitga olib boring. Qo'shish operatsiyalari uchun standart qiymat 0. For

ayirish operatsiyalari uchun standart qiymat 1 ga teng.

maʼlumotlar[]

Ha

Ma'lumotlarni kiritish. Kirish portining o'lchami LPM_WIDTH parametr qiymatiga bog'liq.

maʼlumotlar bazasi[]

Ha

Ma'lumotlarni kiritish. Kirish portining o'lchami LPM_WIDTH parametr qiymatiga bog'liq.

add_sub

Yo'q

Topuvchi va ayiruvchi o'rtasida dinamik almashinuvni yoqish uchun ixtiyoriy kirish porti

funktsiyalari. Agar LPM_DIRECTION parametri ishlatilsa, add_sub-dan foydalanib bo'lmaydi. Agar

o'tkazib yuborilgan, standart qiymat ADD. Intel dan foydalanishni tavsiya qiladi

LPM_ADD_SUB funksiyasining ishlashini belgilash uchun LPM_DIRECTION parametri,

add_sub portiga doimiy belgilash o'rniga.

soat

Yo'q

Quvurli foydalanish uchun kiritish. Soat porti quvur liniyasi uchun soat kiritishni ta'minlaydi

operatsiya. 0 dan (standart) boshqa LPM_PIPELINE qiymatlari uchun soat porti bo'lishi kerak

yoqilgan.

clken

Yo'q

Quvurli foydalanish uchun soatni yoqish. Clken porti baland bo'lsa, adder/

ayiruvchi operatsiya amalga oshiriladi. Signal past bo'lsa, hech qanday operatsiya sodir bo'lmaydi. Agar

o'tkazib yuborilgan, standart qiymat 1.

aclr

Yo'q

Quvurli foydalanish uchun asinxron tozalash. Quvur liniyasi aniqlanmagan (X) ga ishga tushadi

mantiq darajasi. Aclr portidan istalgan vaqtda quvur liniyasini barcha 0 larga qaytarish uchun foydalanish mumkin,

soat signaliga asinxron.

16-jadval. LPM_ADD_SUB IP asosiy chiqish portlari

Port nomi

Majburiy

Tavsif

natija[]

Ha

Ma'lumotlar chiqishi. Chiqish portining o'lchami LPM_WIDTH parametriga bog'liq

qiymat.

cout

Yo'q

Eng muhim bitni (MSB) amalga oshirish (qarzga olish). Kout porti jismoniy xususiyatga ega

MSBni amalga oshirish (qarz olish) sifatida talqin qilish. Cout porti aniqlaydi

UNSIGNED operatsiyalarida to'lib ketish. Cout porti xuddi shu tarzda ishlaydi

Imzolangan va imzolanmagan operatsiyalar.

toshib ketish

Yo'q

Ixtiyoriy to'lib-toshgan istisno chiqishi. Overflow porti jismoniy talqinga ega

MSBni olib borish bilan MSBga olib o'tishning XOR. To'ldirish porti

Natijalar mavjud aniqlikdan oshib ketganda tasdiqlaydi va faqat

LPM_REPRESENTATION parametr qiymati SIGNED.

5.6. Parametrlar

Quyidagi jadvalda LPM_ADD_SUB IP asosiy parametrlari keltirilgan.

17-jadval. LPM_ADD_SUB IP asosiy parametrlari

Parametr nomi LPM_WIDTH

Butun sonni yozing

Majburiy Ha

Tavsif
dataa[], datab[] va natija[] portlarining kengligini belgilaydi.

LPM_DIRECTION

String

Yo'q

Qiymatlar: ADD, SUB va UNISED. Agar o'tkazib yuborilsa, standart qiymat DEFAULT bo'lib, parametrni add_sub portidan o'z qiymatini olishga yo'naltiradi. LPM_DIRECTION ishlatilsa, add_sub portidan foydalanib bo'lmaydi. Intel add_sub portiga konstanta belgilash o'rniga LPM_ADD_SUB funksiyasining ishlashini belgilash uchun LPM_DIRECTION parametridan foydalanishni tavsiya qiladi.
davom etdi…

Intel FPGA butun sonli arifmetik IP yadrolari foydalanuvchi qo‘llanmasi 24

Fikr-mulohaza yuborish

5. LPM_ADD_SUB (Qo'shish/ayirish) 683490 | 2020.10.05

Parametr nomi LPM_REPRESENTATION LPM_PIPELINE LPM_HINT LPM_TYPE ONE_INPUT_IS_CONSTANT MAXIMIZE_SPEED
INTENDED_DEVICE_FAMILY

String Integer String String String Integer yozing
String

Majburiy Yo'q Yo'q Yo'q Yo'q Yo'q Yo'q
Yo'q

Tavsif
Amalga oshirilgan qo'shish turini belgilaydi. Qiymatlar Imzolangan va imzosiz. Agar o'tkazib yuborilsa, standart qiymat SIGNED bo'ladi. Ushbu parametr SIGNED ga o'rnatilgan bo'lsa, to'ldiruvchi/ayirish vositasi kiritilgan ma'lumotlarni imzolangan ikkita to'ldiruvchi sifatida izohlaydi.
Natija[] chiqishi bilan bog'liq kechikish soatlari sonini belgilaydi. Nol (0) qiymati hech qanday kechikish mavjud emasligini va sof kombinatsiyalangan funktsiyaning boshlanishini ko'rsatadi. Agar o'tkazib yuborilgan bo'lsa, standart qiymat 0 dir (quvursiz).
VHDL dizaynida Intelga xos parametrlarni belgilash imkonini beradi files (.vhd). Standart qiymat UNUSED.
VHDL dizayndagi parametrlangan modullar kutubxonasini (LPM) ob'ekt nomini aniqlaydi files.
Intel-ga xos parametr. VHDL dizaynida ONE_INPUT_IS_CONSTANT parametrini belgilash uchun LPM_HINT parametridan foydalanishingiz kerak. files. Qiymatlar: YES, YOQ va FOYDALANILMAYDI. Agar bitta kirish doimiy bo'lsa, ko'proq optimallashtirishni ta'minlaydi. Agar o'tkazib yuborilsa, standart qiymat NO.
Intel-ga xos parametr. VHDL dizaynida MAXIMIZE_SPEED parametrini belgilash uchun LPM_HINT parametridan foydalanishingiz kerak. files. Siz 0 va 10 oralig'idagi qiymatni belgilashingiz mumkin. Agar foydalanilsa, Intel Quartus Prime dasturi LPM_ADD_SUB funksiyasining ma'lum bir nusxasini marshrutni emas, balki tezlikni optimallashtirishga harakat qiladi va Optimallashtirish texnikasi mantiqi parametrini bekor qiladi. Agar MAXIMIZE_SPEED ishlatilmasa, uning o'rniga Optimallashtirish texnikasi parametri qiymati ishlatiladi. Agar MAXIMIZE_SPEED sozlamasi 6 yoki undan yuqori bo'lsa, kompilyator LPM_ADD_SUB IP yadrosini tashish zanjirlari yordamida yuqori tezlikka optimallashtiradi; agar sozlama 5 yoki undan kam bo'lsa, Kompilyator dizaynni tashish zanjirlarisiz amalga oshiradi. Ushbu parametr Cyclone, Stratix va Stratix GX qurilmalari uchun faqat add_sub porti ishlatilmaganda ko'rsatilishi kerak.
Ushbu parametr modellashtirish va xatti-harakatlarni simulyatsiya qilish uchun ishlatiladi. Parametr muharriri ushbu parametr uchun qiymatni hisoblab chiqadi.

Fikr-mulohaza yuborish

Intel FPGA butun sonli arifmetik IP yadrolari foydalanuvchi qo‘llanmasi 25

683490 | 2020.10.05 Fikr-mulohaza yuborish

6. LPM_COMPARE (taqqoslovchi)

5-rasm.

LPM_COMPARE IP yadrosi ular orasidagi munosabatni aniqlash uchun ikkita ma'lumotlar to'plamining qiymatini solishtiradi. Eng oddiy shaklda siz ikkita bit ma'lumotlar teng yoki yo'qligini aniqlash uchun eksklyuziv-OR darvozasidan foydalanishingiz mumkin.

Quyidagi rasmda LPM_COMPARE IP yadrosi uchun portlar ko'rsatilgan.

LPM_COMPARE portlari

LPM_SOLISH

clken

alb

aeb

maʼlumotlar[]

agb

maʼlumotlar bazasi[]

ageb

soat

aneb

aclr

aleb

inst

6.1. Xususiyatlari
LPM_COMPARE IP yadrosi quyidagi funksiyalarni taqdim etadi: · Ikki maʼlumot toʻplamini solishtirish uchun taqqoslash funksiyasini yaratadi · 1 bitli maʼlumotlar kengligini qoʻllab-quvvatlaydi · Imzolangan va imzolanmagan kabi maʼlumotlarni taqdim etish formatini qoʻllab-quvvatlaydi · Quyidagi chiqish turlarini ishlab chiqaradi:
— alb (A kirish B kirishidan kichik) — aeb (A kirish B kirishiga teng) — agb (A kirish B kirishdan katta) — ageb (A kirish B kirishdan katta yoki teng) — aneb ( A kirish B kirishiga teng emas) — aleb (A kirish B kirishidan kichik yoki teng) · ixtiyoriy asinxron tozalash va soatni yoqish portlarini qo‘llab-quvvatlaydi · Ma’lumotlar bazasi[] kirishini doimiyga tayinlaydi · Sozlanishi mumkin bo‘lgan chiqish kechikishi bilan quvur liniyasini qo‘llab-quvvatlaydi

Intel korporatsiyasi. Barcha huquqlar himoyalangan. Intel, Intel logotipi va boshqa Intel belgilari Intel korporatsiyasi yoki uning sho'ba korxonalarining savdo belgilaridir. Intel o'zining FPGA va yarimo'tkazgich mahsulotlarining Intel standart kafolatiga muvofiq joriy spetsifikatsiyalarga muvofiq ishlashini kafolatlaydi, lekin istalgan vaqtda ogohlantirmasdan istalgan mahsulot va xizmatlarga o'zgartirish kiritish huquqini o'zida saqlab qoladi. Intel tomonidan yozma ravishda kelishilgan hollar bundan mustasno, bu erda tasvirlangan har qanday ma'lumot, mahsulot yoki xizmatdan foydalanish yoki qo'llash natijasida kelib chiqadigan hech qanday javobgarlik yoki javobgarlikni o'z zimmasiga olmaydi. Intel mijozlariga har qanday nashr etilgan ma'lumotlarga tayanishdan va mahsulot yoki xizmatlarga buyurtma berishdan oldin qurilma texnik xususiyatlarining so'nggi versiyasini olish tavsiya etiladi. *Boshqa nomlar va brendlar boshqalarning mulki sifatida da'vo qilinishi mumkin.

ISO 9001: 2015 Ro'yxatdan o'tgan

6. LPM_COMPARE (taqqoslovchi) 683490 | 2020.10.05
6.2. Verilog HDL prototipi
Quyidagi Verilog HDL prototipi Verilog Dizaynida joylashgan File (.v) lpm.v ichida edasintez katalogi.
lpm_compare moduli (alb, aeb, agb, aleb, aneb, ageb, dataa, datab, clock, clken, aclr); parametr lpm_type = "lpm_compare"; parametr lpm_width = 1; lpm_representation parametri = "ISHLAB CHIQISH"; lpm_pipeline parametri = 0; parametr lpm_hint = “FOYDALANILMAGAN”; kiritish [lpm_width-1:0] dataa, datab; kiritish soati; kiritish clken; aclr kiritish; chiqish alb, aeb, agb, aleb, aneb, ageb; endmodul
6.3. VHDL komponent deklaratsiyasi
VHDL komponent deklaratsiyasi VHDL dizaynida joylashgan File (.vhd) ichida LPM_PACK.vhd librariesvhdllpm katalogi.
LPM_COMPARE komponenti umumiy (LPM_WIDTH : tabiiy;
LPM_REPRESENTATION : string := “ISGNED”; LPM_PIPELINE : natural := 0; LPM_TYPE: string := L_COMPARE; LPM_HINT : string := “FOYDALANILMAYDI”); port (DATAA : std_logic_vector da (LPM_WIDTH-1 dan 0 gacha); DATAB : std_logic_vector da (LPM_WIDTH-1 dan 0 gacha); ACLR : std_logicda := '0'; CLOCK: std_logic'da: CLOCK'da :=K := '0'; AGB: std_logic tashqari; AGEB: std_logic tashqari; AEB: std_logic tashqari; ANEB: std_logic tashqari; ALB: std_logic tashqari; ALEB: std_logic tashqari); yakuniy komponent;
6.4. VHDL LIBRARY_USE deklaratsiyasi
Agar siz VHDL komponent deklaratsiyasidan foydalansangiz, VHDL LIBRARY-USE deklaratsiyasi talab qilinmaydi.
LIBRARY lpm; lpm.lpm_components.all dan foydalanish;
6.5. Portlar
Quyidagi jadvallarda LMP_COMPARE IP yadrosi uchun kirish va chiqish portlari keltirilgan.

Fikr-mulohaza yuborish

Intel FPGA butun sonli arifmetik IP yadrolari foydalanuvchi qo‘llanmasi 27

6. LPM_COMPARE (taqqoslovchi) 683490 | 2020.10.05

18-jadval. LPM_COMPARE IP asosiy kirish portlari

Port nomi

Majburiy

Tavsif

maʼlumotlar[]

Ha

Ma'lumotlarni kiritish. Kirish portining o'lchami LPM_WIDTH parametr qiymatiga bog'liq.

maʼlumotlar bazasi[]

Ha

Ma'lumotlarni kiritish. Kirish portining o'lchami LPM_WIDTH parametr qiymatiga bog'liq.

soat

Yo'q

Quvurli foydalanish uchun soat kiritish. Soat porti quvur liniyasi uchun soat kiritishni ta'minlaydi

operatsiya. 0 dan (standart) boshqa LPM_PIPELINE qiymatlari uchun soat porti bo'lishi kerak

yoqilgan.

clken

Yo'q

Quvurli foydalanish uchun soatni yoqish. Clken porti baland deb aytilsa,

solishtirish operatsiyasi amalga oshiriladi. Signal past bo'lsa, hech qanday operatsiya sodir bo'lmaydi. Agar

o'tkazib yuborilgan, standart qiymat 1.

aclr

Yo'q

Quvurli foydalanish uchun asinxron tozalash. Quvur liniyasi aniqlanmagan (X) mantiqqa ishga tushadi

Daraja. Aclr portidan istalgan vaqtda quvur liniyasini barcha 0 larga qaytarish uchun foydalanish mumkin,

soat signaliga asinxron.

19-jadval. LPM_COMPARE IP yadro chiqish portlari

Port nomi

Majburiy

Tavsif

alb

Yo'q

Komparator uchun chiqish porti. Agar A kirish B kirishidan kichik bo'lsa, tasdiqlanadi.

aeb

Yo'q

Komparator uchun chiqish porti. Agar A kirish B kirishiga teng bo'lsa, tasdiqlanadi.

agb

Yo'q

Komparator uchun chiqish porti. Agar A kirish B kirishidan katta bo'lsa, tasdiqlanadi.

ageb

Yo'q

Komparator uchun chiqish porti. Agar A kiritish kirishdan katta yoki teng bo'lsa, tasdiqlanadi

B.

aneb

Yo'q

Komparator uchun chiqish porti. Agar A kirish B kirishiga teng bo'lmasa, tasdiqlanadi.

aleb

Yo'q

Komparator uchun chiqish porti. Agar A kirish B kirishidan kichik yoki teng bo'lsa, tasdiqlanadi.

6.6. Parametrlar

Quyidagi jadvalda LPM_COMPARE IP yadrosi parametrlari keltirilgan.

20-jadval. LPM_COMPARE IP yadro parametrlari

Parametr nomi

Turi

Majburiy

LPM_WIDTH

Butun son Ha

LPM_REPRESENTATION

String

Yo'q

LPM_PIPELINE

Butun son raqami

LPM_HINT

String

Yo'q

Tavsif
dataa[] va datab[] portlarining kengligini belgilaydi.
Amalga oshirilgan taqqoslash turini belgilaydi. Qiymatlar Imzolangan va imzosiz. Agar o'tkazib yuborilsa, standart qiymat UNSIGNED hisoblanadi. Ushbu parametr qiymati SIGNED ga o'rnatilganda, solishtiruvchi ma'lumotlar kiritilishini imzolangan ikkita to'ldiruvchi sifatida izohlaydi.
Alb, aeb, agb, ageb, aleb yoki aneb chiqishi bilan bog'liq kechikish soat sikllari sonini belgilaydi. Nol (0) qiymati hech qanday kechikish mavjud emasligini va sof kombinatsiyalangan funktsiyaning boshlanishini ko'rsatadi. Agar o'tkazib yuborilgan bo'lsa, standart qiymat 0 (bo'lmagan quvur liniyasi).
VHDL dizaynida Intelga xos parametrlarni belgilash imkonini beradi files (.vhd). Standart qiymat UNUSED.
davom etdi…

Intel FPGA butun sonli arifmetik IP yadrolari foydalanuvchi qo‘llanmasi 28

Fikr-mulohaza yuborish

6. LPM_COMPARE (taqqoslovchi) 683490 | 2020.10.05
Parametr nomi LPM_TYPE INTENDED_DEVICE_FAMILY
ONE_INPUT_IS_CONSTANT

String String yozing
String

Majburiy No No
Yo'q

Tavsif
VHDL dizayndagi parametrlangan modullar kutubxonasini (LPM) ob'ekt nomini aniqlaydi files.
Ushbu parametr modellashtirish va xatti-harakatlarni simulyatsiya qilish uchun ishlatiladi. Parametr muharriri ushbu parametr uchun qiymatni hisoblab chiqadi.
Intel-ga xos parametr. VHDL dizaynida ONE_INPUT_IS_CONSTANT parametrini belgilash uchun LPM_HINT parametridan foydalanishingiz kerak. files. Qiymatlar: HA, YO‘Q yoki FOYDALANILMAYDI. Agar kirish doimiy bo'lsa, kattaroq optimallashtirishni ta'minlaydi. Agar o'tkazib yuborilsa, standart qiymat NO.

Fikr-mulohaza yuborish

Intel FPGA butun sonli arifmetik IP yadrolari foydalanuvchi qo‘llanmasi 29

683490 | 2020.10.05 Fikr-mulohaza yuborish

7. ALTECC (Xatoni tuzatish kodi: Enkoder/dekoder) IP yadrosi

6-rasm.

Intel ECC funksiyasini amalga oshirish uchun ALTECC IP yadrosini taqdim etadi. ECC ma'lumotlarni uzatish paytida qabul qiluvchi tomonda sodir bo'lgan buzilgan ma'lumotlarni aniqlaydi. Xatolarni tuzatishning ushbu usuli xatolar portlashlarda emas, balki tasodifiy sodir bo'lgan holatlar uchun eng mos keladi.

ECC ma'lumotlarni kodlash va dekodlash jarayoni orqali xatolarni aniqlaydi. Misol uchunample, ECC uzatish ilovasida qo'llanilganda, manbadan o'qilgan ma'lumotlar qabul qiluvchiga yuborilishidan oldin kodlanadi. Kodlovchining chiqishi (kod so'zi) paritet bitlari soniga qo'shilgan xom ma'lumotlardan iborat. Qo'shilgan paritet bitlarining aniq soni kirish ma'lumotlaridagi bitlar soniga bog'liq. Yaratilgan kod so'z keyin belgilangan joyga uzatiladi.

Qabul qiluvchi kod so'zini oladi va uni dekodlaydi. Dekoder tomonidan olingan ma'lumotlar xato aniqlanganligini aniqlaydi. Dekoder bir bitli va ikki bitli xatolarni aniqlaydi, lekin buzilgan ma'lumotlardagi faqat bitta bitli xatolarni tuzatishi mumkin. Ushbu turdagi ECC bitta xatoni tuzatish, ikki tomonlama xatolarni aniqlash (SECDED).

Siz ALTECC IP yadrosining kodlovchi va dekoder funksiyalarini sozlashingiz mumkin. Kodlovchiga kiritilgan ma'lumotlar ma'lumotlar kiritish va yaratilgan paritet bitlarining kombinatsiyasi bo'lgan kod so'zini yaratish uchun kodlangan. Yaratilgan kod so'zi maqsad blokiga yetib borishdan oldin dekodlash uchun dekoder moduliga uzatiladi. Dekoder qabul qilingan kod so'zida xatolik mavjudligini aniqlash uchun sindrom vektorini yaratadi. Dekoder faqat bitta bitli xato ma'lumotlar bitlaridan bo'lsa, ma'lumotlarni tuzatadi. Agar bitta bitli xato parite bitlaridan bo'lsa, hech qanday signal belgilanmaydi. Dekoder shuningdek, qabul qilingan ma'lumotlarning holatini va agar mavjud bo'lsa, dekoder tomonidan bajarilgan harakatni ko'rsatish uchun bayroq signallariga ega.

Quyidagi rasmlar ALTECC IP yadrosi uchun portlarni ko'rsatadi.

ALTECC kodlovchi portlari

ALTECC_ENCODER

maʼlumotlar[]

q[]

soat

soaten

aclr

inst

Intel korporatsiyasi. Barcha huquqlar himoyalangan. Intel, Intel logotipi va boshqa Intel belgilari Intel korporatsiyasi yoki uning sho'ba korxonalarining savdo belgilaridir. Intel o'zining FPGA va yarimo'tkazgich mahsulotlarining Intel standart kafolatiga muvofiq joriy spetsifikatsiyalarga muvofiq ishlashini kafolatlaydi, lekin istalgan vaqtda ogohlantirmasdan istalgan mahsulot va xizmatlarga o'zgartirish kiritish huquqini o'zida saqlab qoladi. Intel tomonidan yozma ravishda kelishilgan hollar bundan mustasno, bu erda tasvirlangan har qanday ma'lumot, mahsulot yoki xizmatdan foydalanish yoki qo'llash natijasida kelib chiqadigan hech qanday javobgarlik yoki javobgarlikni o'z zimmasiga olmaydi. Intel mijozlariga har qanday nashr etilgan ma'lumotlarga tayanishdan va mahsulot yoki xizmatlarga buyurtma berishdan oldin qurilma texnik xususiyatlarining so'nggi versiyasini olish tavsiya etiladi. *Boshqa nomlar va brendlar boshqalarning mulki sifatida da'vo qilinishi mumkin.

ISO 9001: 2015 Ro'yxatdan o'tgan

7. ALTECC (Xatoni tuzatish kodi: Enkoder/dekoder) IP yadrosi 683490 | 2020.10.05

7-rasm. ALTECC dekoder portlari

ALTECC_DECODER

ma'lumotlar[] soati

q[] err_detected err_corrected
err_fatal

aclr

inst

7.1. ALTECC kodlovchi xususiyatlari

ALTECC kodlovchi IP yadrosi quyidagi funksiyalarni taqdim etadi: · Hamming kodlash sxemasidan foydalangan holda ma'lumotlarni kodlashni amalga oshiradi · 2 bitli ma'lumotlar kengligini qo'llab-quvvatlaydi · Imzolangan va imzolanmagan ma'lumotlarni taqdim etish formatini qo'llab-quvvatlaydi · Bir yoki ikki soat siklining chiqish kechikishi bilan quvur liniyasini qo'llab-quvvatlaydi · ixtiyoriy qo'llab-quvvatlaydi asinxron aniq va soatni yoqish portlari

ALTECC kodlovchi IP yadrosi Hamming kodlash sxemasidan foydalangan holda ma'lumotlarni oladi va kodlaydi. Hamming kodlash sxemasi paritet bitlarini oladi va chiqish kod so'zini ishlab chiqarish uchun ularni asl ma'lumotlarga qo'shadi. Qo'shilgan paritet bitlari soni ma'lumotlarning kengligiga bog'liq.

Quyidagi jadvalda ma'lumotlar kengligining turli diapazonlari uchun qo'shilgan paritet bitlari soni ko'rsatilgan. Jami bitlar ustuni kirish ma'lumotlari bitlarining va qo'shilgan paritet bitlarining umumiy sonini ifodalaydi.

21-jadval.

Parite bitlari soni va kod so'zi ma'lumotlar kengligi bo'yicha

Ma'lumotlar kengligi

Parite bitlari soni

Jami bitlar (kod so'zi)

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

Paritet bit hosilasi juft paritet tekshiruvidan foydalanadi. Qo'shimcha 1 bit (jadvalda +1 sifatida ko'rsatilgan) kod so'zining MSBsi sifatida paritet bitlariga qo'shiladi. Bu kod so'zining juft soni 1 ga ega bo'lishini ta'minlaydi. Misol uchunample, agar ma'lumotlar kengligi 4 bit bo'lsa, jami 4 bitli kod so'z bo'lish uchun ma'lumotlarga 8 paritet bit qo'shiladi. Agar 7 bitli kod so'zining LSB dan 8 biti 1 ning toq soniga ega bo'lsa, kod so'zining 8 biti (MSB) 1 ga teng kod so'zdagi 1 ning umumiy sonini juft qiladi.
Quyidagi rasmda yaratilgan kod so'zi va 8 bitli ma'lumotlar kiritishda parite bitlari va ma'lumotlar bitlarining joylashuvi ko'rsatilgan.

Fikr-mulohaza yuborish

Intel FPGA butun sonli arifmetik IP yadrolari foydalanuvchi qo‘llanmasi 31

7. ALTECC (Xatoni tuzatish kodi: Enkoder/dekoder) IP yadrosi 683490 | 2020.10.05

8-rasm.

Parite bitlari va ma'lumotlar bitlarini 8-bitli yaratilgan kod so'zida tartibga solish

MSB

LSB

4 paritet bit

4 ma'lumot biti

8

1

ALTECC kodlovchi IP yadrosi bir vaqtning o'zida faqat 2 dan 64 bitgacha kirish kengligini qabul qiladi. Intel qurilmalariga juda mos keladigan 12 bit, 29 bit va 64 bitli kirish kengligi mos ravishda 18 bit, 36 bit va 72 bitli chiqishlarni hosil qiladi. Parametr muharririda bit tanlash cheklovini boshqarishingiz mumkin.

7.2. Verilog HDL prototipi (ALTECC_ENCODER)
Quyidagi Verilog HDL prototipi Verilog Dizaynida joylashgan File (.v) lpm.v ichida edasintez katalogi.
modul altecc_encoder #( intended_device_family parametri = “ishlatilmagan”, parametr lpm_pipeline = 0, parametr width_codeword = 8, parametr width_dataword = 8, lpm_type parametri = “altecc_encoder”, lpm_hintr parametri) ( lpm_hintr parametri, sim kiritildi, sim kiritildi” sim soati, kirish simi [kenglik_ma'lumot so'zi-1:0] ma'lumotlar, chiqish simi [kenglik_kod-1:0] q); endmodul

7.3. Verilog HDL prototipi (ALTECC_DECODER)
Quyidagi Verilog HDL prototipi Verilog Dizaynida joylashgan File (.v) lpm.v ichida edasintez katalogi.
modul altecc_decoder #( intended_device_family parametri = “foydalanilmayotgan”, lpm_pipeline parametri = 0, parametr width_codeword = 8, parametr width_dataword = 8, lpm_type parametri = “altecc_decoder”, parametr lpm_hintr) ( lpm_hintr parametri, sim kiritildi, sim kiritildi” sim soati, kirish simi [kenglik_kod-1:0] ma'lumotlari, chiqish simi xatosi_tuzatilgan, chiqish simi xatosi_aniqlangan, chiqish simi xatosi_faal, chiqish simi [kenglik_ma'lumot so'zi-1:0] q); endmodul

Intel FPGA butun sonli arifmetik IP yadrolari foydalanuvchi qo‘llanmasi 32

Fikr-mulohaza yuborish

7. ALTECC (Xatoni tuzatish kodi: Enkoder/dekoder) IP yadrosi 683490 | 2020.10.05
7.4. VHDL komponent deklaratsiyasi (ALTECC_ENCODER)
VHDL komponent deklaratsiyasi VHDL dizaynida joylashgan File (.vhd) ichida altera_mf_components.vhd librariesvhdlaltera_mf katalogi.
altecc_encoder generic komponenti (intended_device_family:string := “ishlatilmagan”; lpm_pipeline:natural := 0; width_codeword: natural := 8; width_dataword: natural := 8; lpm_hint:string := “UNUSED:string_te”:string_te: “UNUSED”=string_te; ”); port( aclr:in std_logic := '0'; clock:in std_logic := '0'; clocken:in std_logic := '1'; data:in std_logic_vector(width_dataword-1 dan 0 gacha); q:out std_logic_vector(widthcodeword) -1 dan 0 gacha)); yakuniy komponent;
7.5. VHDL komponent deklaratsiyasi (ALTECC_DECODER)
VHDL komponent deklaratsiyasi VHDL dizaynida joylashgan File (.vhd) ichida altera_mf_components.vhd librariesvhdlaltera_mf katalogi.
altecc_decoder generic komponenti (intended_device_family:string := “ishlatilmagan”; lpm_pipeline: natural := 0; width_codeword: natural := 8; width_dataword: natural := 8; lpm_hint:string := “UNUSED:string_de”:string_te:= “UNUSED”:string_deal; ”); port( aclr:in std_logic := '0'; clock:in std_logic := '0'; clocken:in std_logic := '1'; data:in std_logic_vector(width_codeword-1 dan 0 gacha); err_tuzatildi : out_detecterd : out std_logic; q:out std_logic_vector (width_dataword-1 dan 0 gacha); syn_e: out std_logic); yakuniy komponent;
7.6. VHDL LIBRARY_USE deklaratsiyasi
Agar siz VHDL komponent deklaratsiyasidan foydalansangiz, VHDL LIBRARY-USE deklaratsiyasi talab qilinmaydi.
KUTUBXONA altera_mf; FOYDALANISH altera_mf.altera_mf_components.all;
7.7. Kodlovchi portlari
Quyidagi jadvallarda ALTECC kodlovchi IP yadrosi uchun kirish va chiqish portlari keltirilgan.

Fikr-mulohaza yuborish

Intel FPGA butun sonli arifmetik IP yadrolari foydalanuvchi qo‘llanmasi 33

7. ALTECC (Xatoni tuzatish kodi: Enkoder/dekoder) IP yadrosi 683490 | 2020.10.05

22-jadval. ALTECC kodlovchi kirish portlari

Port nomi

Majburiy

Tavsif

maʼlumotlar[]

Ha

Ma'lumotlarni kiritish porti. Kirish portining o'lchami WIDTH_DATAWORD ga bog'liq

parametr qiymati. Data[] porti kodlanadigan xom maʼlumotlarni oʻz ichiga oladi.

soat

Ha

Kodlash jarayonini sinxronlashtirish uchun soat signalini ta'minlaydigan soat kiritish porti.

LPM_PIPELINE qiymati 0 dan katta bo'lsa, soat porti talab qilinadi.

soaten

Yo'q

Soatni yoqish. Agar o'tkazib yuborilsa, standart qiymat 1 bo'ladi.

aclr

Yo'q

Asinxron aniq kiritish. Faol yuqori aclr signalidan istalgan vaqtda foydalanish mumkin

registrlarni asinxron tarzda tozalash.

23-jadval. ALTECC Enkoderning chiqish portlari

Port nomi q[]

Majburiy Ha

Tavsif
Kodlangan ma'lumotlarni chiqarish porti. Chiqish portining o'lchami WIDTH_CODEWORD parametr qiymatiga bog'liq.

7.8. Dekoder portlari

Quyidagi jadvallarda ALTECC dekoder IP yadrosi uchun kirish va chiqish portlari keltirilgan.

24-jadval. ALTECC dekoderining kirish portlari

Port nomi

Majburiy

Tavsif

maʼlumotlar[]

Ha

Ma'lumotlarni kiritish porti. Kirish portining o'lchami WIDTH_CODEWORD parametr qiymatiga bog'liq.

soat

Ha

Kodlash jarayonini sinxronlashtirish uchun soat signalini ta'minlaydigan soat kiritish porti. LPM_PIPELINE qiymati 0 dan katta bo'lsa, soat porti talab qilinadi.

soaten

Yo'q

Soatni yoqish. Agar o'tkazib yuborilsa, standart qiymat 1 bo'ladi.

aclr

Yo'q

Asinxron aniq kiritish. Faol yuqori aclr signali istalgan vaqtda registrlarni asinxron ravishda tozalash uchun ishlatilishi mumkin.

25-jadval. ALTECC dekoderining chiqish portlari

Port nomi q[]

Majburiy Ha

Tavsif
Dekodlangan ma'lumotlar chiqish porti. Chiqish portining o'lchami WIDTH_DATAWORD parametr qiymatiga bog'liq.

err_detected Ha

Qabul qilingan ma'lumotlarning holatini aks ettirish va topilgan xatolarni ko'rsatish uchun bayroq signali.

err_correcte Ha d

Qabul qilingan ma'lumotlarning holatini aks ettirish uchun bayroq signali. Bir bitli xato topilgan va tuzatilganligini bildiradi. Ma'lumotlardan foydalanishingiz mumkin, chunki ular allaqachon tuzatilgan.

err_fatal

Ha

Qabul qilingan ma'lumotlarning holatini aks ettirish uchun bayroq signali. Ikki bitli xato topildi, lekin tuzatilmadi. Agar bu signal tasdiqlansa, siz ma'lumotlardan foydalanmasligingiz kerak.

syn_e

Yo'q

Paritetda bitta bitli xato aniqlanganda yuqori bo'ladigan chiqish signali

bitlar.

7.9. Kodlovchi parametrlari
Quyidagi jadvalda ALTECC kodlovchi IP yadrosi parametrlari keltirilgan.

Intel FPGA butun sonli arifmetik IP yadrolari foydalanuvchi qo‘llanmasi 34

Fikr-mulohaza yuborish

7. ALTECC (Xatoni tuzatish kodi: Enkoder/dekoder) IP yadrosi 683490 | 2020.10.05

26-jadval. ALTECC kodlovchi parametrlari

Parametr nomi

Turi

Majburiy

Tavsif

WIDTH_DATAWORD

Butun son Ha

Xom ma'lumotlarning kengligini belgilaydi. Qiymatlar 2 dan 64 gacha. Agar o'tkazib yuborilmasa, standart qiymat 8 ga teng.

WIDTH_CODEWORD

Butun son Ha

Tegishli kod so'zining kengligini belgilaydi. Yaroqli qiymatlar 6 dan 72 gacha, 9, 17, 33 va 65 dan tashqari. Agar oʻtkazib yuborilsa, standart qiymat 13 ga teng.

LPM_PIPELINE

Butun son raqami

Sxema uchun quvur liniyasini belgilaydi. Qiymatlar 0 dan 2 gacha. Agar qiymat 0 bo'lsa, portlar ro'yxatga olinmaydi. Agar qiymat 1 bo'lsa, chiqish portlari ro'yxatga olinadi. Agar qiymat 2 bo'lsa, kirish va chiqish portlari ro'yxatga olinadi. Agar o'tkazib yuborilsa, standart qiymat 0 bo'ladi.

7.10. Dekoder parametrlari

Quyidagi jadvalda ALTECC dekoderining IP asosiy parametrlari keltirilgan.

27-jadval. ALTECC dekoder parametrlari

Parametr nomi WIDTH_DATAWORD

Butun sonni yozing

Majburiy

Tavsif

Ha

Xom ma'lumotlarning kengligini belgilaydi. Qiymatlar 2 dan 64 gacha. The

standart qiymat 8.

WIDTH_CODEWORD

Butun son

Ha

Tegishli kod so'zining kengligini belgilaydi. Qiymatlar 6

72 ga, 9, 17, 33 va 65 dan tashqari. Agar oʻtkazib yuborilmasa, standart qiymat

13 ga teng.

LPM_PIPELINE

Butun son

Yo'q

Sxema registrini belgilaydi. Qiymatlar 0 dan 2 gacha. Agar

qiymat 0, registr amalga oshirilmaydi. Agar qiymat 1 bo'lsa,

chiqish qayd etilgan. Agar qiymat 2 bo'lsa, kirish va

chiqish ro'yxatga olinadi. Agar qiymat 2 dan katta bo'lsa, qo'shimcha

registrlar qo'shimcha uchun chiqishda amalga oshiriladi

kechikishlar. Agar o'tkazib yuborilsa, standart qiymat 0 bo'ladi.

"Syn_e" portini yarating

Butun son

Yo'q

Syn_e portini yaratish uchun ushbu parametrni yoqing.

Fikr-mulohaza yuborish

Intel FPGA butun sonli arifmetik IP yadrolari foydalanuvchi qo‘llanmasi 35

683490 | 2020.10.05 Fikr-mulohaza yuborish

8. Intel FPGA Multiply Adder IP Core

9-rasm.

Intel FPGA Multiply Adder (Intel Stratix 10, Intel Arria 10 va Intel Cyclone 10 GX qurilmalari) yoki ALTERA_MULT_ADD (Arria V, Stratix V va Cyclone V qurilmalari) IP yadrosi multiplikator-qo‘shimchani amalga oshirish imkonini beradi.

Quyidagi rasmda Intel FPGA Multiply Adder yoki ALTERA_MULT_ADD IP yadrosi uchun portlar ko'rsatilgan.

Intel FPGA Multiply Adder yoki ALTERA_MULT_ADD portlari

Intel FPGA Multiply Adder yoki ALTERA_MULT_ADD

dataa[] signa datab[] signb datac[] coefsel0[] coefsel1[] koefsel2[] koefsel3[] addnsub1 addnsub3 aclr/sclr[] scanina[] clock0 clock1 clock2 ena0 ena1 ena2 sload_accum
accum_sload zanjiri[]

scanouta[] natija[]

aclr0 aclr1

inst
Ko'paytiruvchi qo'shuvchi kirish juftlarini qabul qiladi, qiymatlarni bir-biriga ko'paytiradi, so'ngra barcha boshqa juftliklarning mahsulotiga qo'shadi yoki ayiradi.
Agar kirish ma'lumotlarining barcha kengligi 9 bitli yoki undan kichikroq bo'lsa, funktsiya 9 x 9 konfiguratsiyani qo'llab-quvvatlaydigan qurilmalar uchun DSP blokidagi 9 x 9 bitli kirish multiplikatori konfiguratsiyasidan foydalanadi. Agar yo'q bo'lsa, DSP bloki 18 bitdan 18 bitgacha kenglikdagi ma'lumotlarni qayta ishlash uchun 10 × 18 bitli kirish ko'paytirgichlaridan foydalanadi. Agar dizaynda bir nechta Intel FPGA Multiply Adder yoki ALTERA_MULT_ADD IP yadrolari mavjud bo'lsa, funktsiyalar quyidagilarga taqsimlanadi.

Intel korporatsiyasi. Barcha huquqlar himoyalangan. Intel, Intel logotipi va boshqa Intel belgilari Intel korporatsiyasi yoki uning sho'ba korxonalarining savdo belgilaridir. Intel o'zining FPGA va yarimo'tkazgich mahsulotlarining Intel standart kafolatiga muvofiq joriy spetsifikatsiyalarga muvofiq ishlashini kafolatlaydi, lekin istalgan vaqtda ogohlantirmasdan istalgan mahsulot va xizmatlarga o'zgartirish kiritish huquqini o'zida saqlab qoladi. Intel tomonidan yozma ravishda kelishilgan hollar bundan mustasno, bu erda tasvirlangan har qanday ma'lumot, mahsulot yoki xizmatdan foydalanish yoki qo'llash natijasida kelib chiqadigan hech qanday javobgarlik yoki javobgarlikni o'z zimmasiga olmaydi. Intel mijozlariga har qanday nashr etilgan ma'lumotlarga tayanishdan va mahsulot yoki xizmatlarga buyurtma berishdan oldin qurilma texnik xususiyatlarining so'nggi versiyasini olish tavsiya etiladi. *Boshqa nomlar va brendlar boshqalarning mulki sifatida da'vo qilinishi mumkin.

ISO 9001: 2015 Ro'yxatdan o'tgan

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05
Bu bloklarga yo'naltirish yanada moslashuvchan bo'lishi uchun imkon qadar ko'p turli DSP bloklari. Har bir DSP blokiga kamroq multiplikatorlar qurilmaning qolgan qismiga yo'llarni minimallashtirish orqali blokga ko'proq marshrut tanlash imkonini beradi.
Quyidagi signallar uchun registrlar va qo'shimcha quvur liniyasi registrlari ham DSP blokiga joylashtiriladi: · Ma'lumotlarni kiritish · Imzolangan yoki imzosiz tanlash · Qo'shish yoki ayirish tanlash · Ko'paytiruvchilar mahsuloti
Chiqish natijasi bo'lsa, birinchi registr DSP blokiga joylashtiriladi. Biroq, qo'shimcha kechikish registrlari blokdan tashqaridagi mantiqiy elementlarga joylashtiriladi. DSP blokining periferik qurilmalari, jumladan multiplikatorga ma'lumotlar kirishlari, boshqaruv signali kirishlari va yig'uvchining chiqishlari, qurilmaning qolgan qismi bilan aloqa qilish uchun muntazam marshrutlashdan foydalaning. Funktsiyadagi barcha ulanishlar DSP bloki ichida maxsus marshrutlashdan foydalanadi. Ushbu maxsus marshrutlash multiplikatorning ro'yxatdan o'tgan kirish ma'lumotlarini bitta multiplikatordan qo'shni multiplikatorga o'tkazish variantini tanlaganingizda siljish registrlari zanjirlarini o'z ichiga oladi.
Stratix V va Arria V qurilmalarining har qanday seriyasidagi DSP bloklari haqida qo‘shimcha ma’lumot olish uchun “Adabiyot va texnik hujjatlar” sahifasidagi tegishli qo‘llanmalarning DSP bloklari bo‘limiga qarang.
Tegishli ma'lumotlar AN 306: FPGA qurilmalarida multiplikatorlarni amalga oshirish
Intel FPGA qurilmalarida DSP va xotira bloklari yordamida multiplikatorlarni amalga oshirish haqida ko'proq ma'lumot beradi.
8.1. Xususiyatlari
Intel FPGA Multiply Adder yoki ALTERA_MULT_ADD IP yadrosi quyidagi xususiyatlarni taqdim etadi: · Ikki kompleksni ko'paytirish amallarini bajarish uchun multiplikator hosil qiladi.
raqamlar Eslatma: Mahalliy qo'llab-quvvatlanadigan o'lchamdan kattaroq ko'paytirgichlarni yaratishda quyidagilar mumkin:
DSP bloklarining kaskadlanishi natijasida yuzaga keladigan ishlash ta'siri bo'ladi. · 1 256 bitlik maʼlumotlar kengligini qoʻllab-quvvatlaydi · Imzolangan va imzolanmagan maʼlumotlarni taqdim etish formatini qoʻllab-quvvatlaydi · Sozlanishi mumkin boʻlgan kiritish kechikishi bilan quvur liniyasini qoʻllab-quvvatlaydi · Imzolangan va imzolanmagan maʼlumotlar qoʻllab-quvvatlashi oʻrtasida dinamik almashish imkoniyatini taqdim etadi. ixtiyoriy asinxron va sinxron tozalash va soatni yoqish portlari · Sistolik kechikish registrlari rejimini qo'llab-quvvatlaydi · Har bir multiplikator uchun 8 ta oldindan yuklash koeffitsienti bilan oldindan qo'shuvchini qo'llab-quvvatlaydi · Akkumulyatorning fikr-mulohazalarini to'ldirish uchun oldindan yuklanish sobitini qo'llab-quvvatlaydi

Fikr-mulohaza yuborish

Intel FPGA butun sonli arifmetik IP yadrolari foydalanuvchi qo‘llanmasi 37

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05

8.1.1. Oldindan qo'shuvchi
Oldindan qo'shimcha bilan, qo'shimchalar yoki ayirishlar ko'paytirgichni oziqlantirishdan oldin amalga oshiriladi.
Beshta oldindan qoʻshish rejimi mavjud: · Oddiy rejim · Koeffitsient rejimi · Kirish rejimi · Kvadrat rejimi · Doimiy rejim

Eslatma:

Oldindan qo'shuvchidan foydalanilganda (oldindan qo'shuvchi koeffitsient/kirish/kvadrat rejimi), multiplikatorga kiritilgan barcha ma'lumotlar bir xil soat sozlamalariga ega bo'lishi kerak.

8.1.1.1. Oldindan qo'shuvchi oddiy rejim

Ushbu rejimda ikkala operand ham kirish portlaridan kelib chiqadi va pre-adder ishlatilmaydi yoki chetlab o'tilmaydi. Bu standart rejim.

10-rasm. Pre-adder Simple Mode
a0 b0

Mult0

natija

8.1.1.2. Oldindan qo'shuvchi koeffitsient rejimi
Bu rejimda bir multiplikator operand oldindan qo'shuvchidan, ikkinchi operand esa ichki koeffitsientni saqlashdan kelib chiqadi. Koeffitsientni saqlash 8 tagacha oldindan o'rnatilgan konstantaga imkon beradi. Koeffitsientni tanlash signallari koefseldir[0..3].
Bu rejim quyidagi tenglamada ifodalanadi.

Quyida ko'paytirgichning oldingi qo'shimcha koeffitsienti rejimi ko'rsatilgan.

Shakl 11. Oldindan qo'shuvchi koeffitsient rejimi

Preadder

a0

Mult0

+/-

natija

b0

koefsel0 koef

Intel FPGA butun sonli arifmetik IP yadrolari foydalanuvchi qo‘llanmasi 38

Fikr-mulohaza yuborish

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05
8.1.1.3. Pre-adder Input Mode Ushbu rejimda bitta multiplikator operand oldindan qo'shuvchidan, ikkinchi operand esa datac[] kirish portidan kelib chiqadi. Bu rejim quyidagi tenglamada ifodalanadi.

Quyida multiplikatorning qo'shimchadan oldingi kiritish rejimi ko'rsatilgan.

12-rasm. Pre-adder kiritish rejimi
a0 b0

Mult0

+/-

natija

c0

8.1.1.4. Pre-adder kvadrat rejimi Bu rejim quyidagi tenglamada ifodalanadi.

Quyida ikkita ko'paytirgichning oldindan qo'shuvchi kvadrat rejimi ko'rsatilgan.

13-rasm. Oldindan qo'shuvchi kvadrat rejimi
a0 b0

Mult0

+/-

natija

8.1.1.5. Pre-adder doimiy rejimi
Ushbu rejimda bitta multiplikator operand kirish portidan, ikkinchi operand esa ichki koeffitsient xotirasidan kelib chiqadi. Koeffitsientni saqlash 8 tagacha oldindan o'rnatilgan konstantaga imkon beradi. Koeffitsientni tanlash signallari koefseldir[0..3].
Bu rejim quyidagi tenglamada ifodalanadi.

Fikr-mulohaza yuborish

Intel FPGA butun sonli arifmetik IP yadrolari foydalanuvchi qo‘llanmasi 39

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05

Quyidagi rasmda multiplikatorning qo'shimchadan oldingi doimiy rejimi ko'rsatilgan.

Shakl 14. Pre-adder Constant Mode
a0

Mult0

natija

koefsel0
koef
8.1.2. Sistolik kechikish registri
Sistolik arxitekturada kirish ma'lumotlari ma'lumotlar buferi vazifasini bajaradigan registrlar kaskadiga beriladi. Har bir registr s kiritishni beradiample ko'paytirgichga, bu erda u tegishli koeffitsientga ko'paytiriladi. Zanjir to'ldiruvchisi yakuniy natijani hosil qilish uchun multiplikatorning bosqichma-bosqich birlashtirilgan natijalarini va zanjirning[] kirish portidan ilgari ro'yxatga olingan natijani saqlaydi. Har bir ko'paytiriladigan qo'shish elementi bitta tsikl bilan kechiktirilishi kerak, shunda natijalar birgalikda qo'shilganda mos ravishda sinxronlanadi. Har bir ketma-ket kechikish koeffitsient xotirasi va ularning tegishli ko'paytirish-qo'shish elementlarining ma'lumotlar buferiga murojaat qilish uchun ishlatiladi. Misol uchunample, ikkinchi ko'paytirish elementi uchun bitta kechikish, uchinchi ko'paytirish-qo'shish elementi uchun ikkita kechikish va hokazo.
Shakl 15. Sistolik registrlar
Sistolik registrlar

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 yil(t)

x(t) s kiritishning uzluksiz oqimidan olingan natijalarni ifodalaydiamples va y(t)
kirish s to'plamining yig'indisini ifodalaydiamples va vaqt o'tishi bilan ularning soniga ko'paytiriladi
tegishli koeffitsientlar. Ham kirish, ham chiqish natijalari chapdan o'ngga oqadi. c(0) dan c(N-1) gacha koeffitsientlarni bildiradi. Sistolik kechikish registrlari S-1 bilan belgilanadi, 1 esa bitta soat kechikishini bildiradi. Sistolik kechikish registrlari qo'shiladi
natijalarini ta'minlaydigan tarzda quvurlarni o'tkazish uchun kirish va chiqishlar
multiplikator operandi va to'plangan summalar sinxron bo'lib qoladi. Ushbu qayta ishlash elementi
filtrlash funksiyasini hisoblaydigan sxema hosil qilish uchun takrorlanadi. Bu funksiya
quyidagi tenglamada ifodalanadi.

Intel FPGA butun sonli arifmetik IP yadrolari foydalanuvchi qo‘llanmasi 40

Fikr-mulohaza yuborish

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05

N - akkumulyatorga kiritilgan ma'lumotlar tsikllari sonini, y (t) - t vaqtidagi chiqishni, A (t) - t vaqtidagi kirishni, B (i) - koeffitsientlar. Tenglamadagi t va i vaqtning ma'lum bir lahzasiga to'g'ri keladi, shuning uchun chiqish s ni hisoblash uchunampt vaqtida le y(t), kirish s guruhiamples vaqtning N turli nuqtalarida yoki A(n), A(n-1), A(n-2), … A(n-N+1) talab qilinadi. N ta kirish guruhi samples N koeffitsientga ko'paytiriladi va yakuniy natija y ni hosil qilish uchun yig'iladi.
Sistolik registr arxitekturasi faqat yig'indisi 2 va yig'indisi 4 rejimlari uchun mavjud. Ikkala sistolik registr arxitekturasi rejimi uchun birinchi zanjir signali 0 ga bog'lanishi kerak.
Quyidagi rasmda 2 multiplikatorning sistolik kechikish registrini amalga oshirish ko'rsatilgan.
Shakl 16. 2 ta ko'paytirgichning sistolik kechikish registrini amalga oshirish
zanjir

a0

Mult0

+/-

b0

a1

Mult1

+/-

b1

natija
Ikki ko'paytuvchining yig'indisi quyidagi tenglamada ifodalanadi.
Quyidagi rasmda 4 multiplikatorning sistolik kechikish registrini amalga oshirish ko'rsatilgan.

Fikr-mulohaza yuborish

Intel FPGA butun sonli arifmetik IP yadrolari foydalanuvchi qo‘llanmasi 41

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05

Shakl 17. 4 ta ko'paytirgichning sistolik kechikish registrini amalga oshirish
zanjir

a0

Mult0

+/-

b0

a1

Mult1

+/-

b1

a2

Mult2

+/-

b2

a3

Mult3

+/-

b3

natija
To'rt ko'paytuvchining yig'indisi quyidagi tenglamada ifodalanadi. 18-rasm. 4 ta ko‘paytuvchining yig‘indisi
Quyida advan ro'yxati keltirilgantagSistolik registrni amalga oshirish usullari: · DSP resurslaridan foydalanishni kamaytiradi · Zanjir qo'shuvchi tuzilmasi yordamida DSP blokida samarali xaritalash imkonini beradi.

Intel FPGA butun sonli arifmetik IP yadrolari foydalanuvchi qo‘llanmasi 42

Fikr-mulohaza yuborish

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05

8.1.3. Oldindan yuklangan doimiy
Oldindan yuklanish konstantasi akkumulyator operandini boshqaradi va akkumulyatorning fikr-mulohazalarini to'ldiradi. Yaroqli LOADCONST_VALUE 0 oralig‘ida. Doimiy qiymat 64N ga teng, bu erda N = LOADCONST_VALUE. LOADCONST_VALUE 2 ga o'rnatilganda, doimiy qiymat 64 ga teng bo'ladi. Bu funksiyadan noaniq yaxlitlash sifatida foydalanish mumkin.
Quyidagi rasmda oldindan yuklanish doimiy amalga oshirilishi ko'rsatilgan.
Shakl 19. Oldindan yuklanish doimiysi

Akkumulyator haqida fikr-mulohaza

doimiy

a0

Mult0

+/-

b0

a1

Mult1

+/b1

natija

accum_sload sload_accum

Boshqa multiplikator ilovalari uchun quyidagi IP yadrolariga murojaat qiling: · ALTMULT_ACCUM · ALTMEMMULT · LPM_MULT
8.1.4. Ikki tomonlama akkumulyator
Ikkita akkumulyator xususiyati akkumulyatorning fikr-mulohazalari yo'liga qo'shimcha registrni qo'shadi. Ikkita akkumulyatorli registr soatni, soatni yoqish va aclrni o'z ichiga olgan chiqish registrini kuzatib boradi. Qo'shimcha akkumulyator registri natijani bir davrli kechikish bilan qaytaradi. Bu xususiyat sizga bir xil manbalar soniga ega ikkita akkumulyator kanaliga ega bo'lish imkonini beradi.
Quyidagi rasmda ikkita akkumulyatorni amalga oshirish ko'rsatilgan.

Fikr-mulohaza yuborish

Intel FPGA butun sonli arifmetik IP yadrolari foydalanuvchi qo‘llanmasi 43

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05

20-rasm. Ikki tomonlama akkumulyator

Ikkilangan akkumulyatorni ro'yxatdan o'tkazish

Akkumulyator haqida fikr-mulohaza

a0

Mult0

+/-

b0

a1

Mult1

+/b1

Chiqish natijasi Chiqish registri

8.2. Verilog HDL prototipi
Siz Intel FPGA Multiply Adder yoki ALTERA_MULT_ADD Verilog HDL prototipini topishingiz mumkin. file (altera_mult_add_rtl.v) ichida librariesmegafunctions katalogi.
8.3. VHDL komponent deklaratsiyasi
VHDL komponent deklaratsiyasi altera_lnsim_components.vhd faylida joylashgan. librariesvhdl altera_lnsim katalogi.
8.4. VHDL LIBRARY_USE deklaratsiyasi
Agar siz VHDL komponent deklaratsiyasidan foydalansangiz, VHDL LIBRARY-USE deklaratsiyasi talab qilinmaydi.
KUTUBXONA altera_mf; FOYDALANISH altera_mf.altera_mf_components.all;

8.5. Signallar

Quyidagi jadvallarda Multiply Adder Intel FPGA IP yoki ALTERA_MULT_ADD IP yadrosining kirish va chiqish signallari keltirilgan.

28-jadval. Intel FPGA IP yoki ALTERA_MULT_ADD kirish signallarini ko'paytirish

Signal

Majburiy

Tavsif

dataa_0[]/dataa_1[]/

Ha

dataa_2[]/dataa_3[]

Multiplikatorga ma'lumotlarni kiritish. Kirish porti [NUMBER_OF_MULTIPLIERS * WIDTH_A – 1 … 0] kengligi
davom etdi…

Intel FPGA butun sonli arifmetik IP yadrolari foydalanuvchi qo‘llanmasi 44

Fikr-mulohaza yuborish

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05

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

Majburiy Ha Yo'q
Yo'q Yo'q Yo'q Yo'q Yo'q
Yo'q
Yo'q Yo'q

Tavsif
Ushbu IP uchun simulyatsiya modeli ushbu signallarga aniqlanmagan kirish qiymatini (X) qo'llab-quvvatlaydi. Ushbu signallarga X qiymatini berganingizda, X qiymati chiqish signallarida tarqaladi.
Multiplikatorga ma'lumotlarni kiritish. Kirish signali [NUMBER_OF_MULTIPLIERS * WIDTH_B – 1 … 0] keng Ushbu IP uchun simulyatsiya modeli ushbu signallarga aniqlanmagan kirish qiymatini (X) qo'llab-quvvatlaydi. Ushbu signallarga X qiymatini berganingizda, X qiymati chiqish signallarida tarqaladi.
Multiplikatorga ma'lumotlarni kiritish. Kirish signali [NUMBER_OF_MULTIPLIERS * WIDTH_C – 1, … 0] keng Ushbu signallarni yoqish uchun Preadder rejimini tanlash parametri uchun INPUT ni tanlang. Ushbu IP uchun simulyatsiya modeli ushbu signallarga aniqlanmagan kirish qiymatini (X) qo'llab-quvvatlaydi. Ushbu signallarga X qiymatini berganingizda, X qiymati chiqish signallarida tarqaladi.
Tegishli registrga soat kiritish porti. Ushbu signal IP yadrosidagi har qanday registr tomonidan ishlatilishi mumkin. Ushbu IP uchun simulyatsiya modeli ushbu signallarga aniqlanmagan kirish qiymatini (X) qo'llab-quvvatlaydi. Ushbu signallarga X qiymatini berganingizda, X qiymati chiqish signallarida tarqaladi.
Tegishli registrga asinxron aniq kiritish. Ushbu IP uchun simulyatsiya modeli ushbu signallarga aniqlanmagan kirish qiymatini (X) qo'llab-quvvatlaydi. Ushbu signallarga X qiymatini berganingizda, X qiymati chiqish signallarida tarqaladi.
Tegishli registrga sinxron aniq kiritish. Ushbu IP uchun simulyatsiya modeli ushbu signallarga aniqlanmagan X kirish qiymatini qo'llab-quvvatlaydi. Ushbu signallarga X qiymatini berganingizda, X qiymati chiqish signallarida tarqaladi
Tegishli registrga signal kiritishni yoqing. Ushbu IP uchun simulyatsiya modeli ushbu signallarga aniqlanmagan kirish qiymatini (X) qo'llab-quvvatlaydi. Ushbu signallarga X qiymatini berganingizda, X qiymati chiqish signallarida tarqaladi.
Ko'paytiruvchi A kirishining raqamli ko'rinishini belgilaydi. Signa signali yuqori bo'lsa, multiplikator A ko'paytiruvchi kirish signalini imzolangan raqam sifatida ko'radi. Signa signali past bo'lsa, multiplikator A ko'paytiruvchi kirish signalini ishorasiz raqam sifatida ko'radi. Ushbu signalni yoqish uchun A ko'paytirgichlar parametri uchun taqdim etish formati nima uchun VARIABLE ni tanlang. Ushbu IP uchun simulyatsiya modeli ushbu signalning aniqlanmagan kirish qiymatini (X) qo'llab-quvvatlaydi. Ushbu kirishga X qiymatini berganingizda, X qiymati chiqish signallarida tarqaladi.
Multiplikator kirish B signalining raqamli ko'rinishini belgilaydi. Signb signali yuqori bo'lsa, multiplikator ko'paytiruvchi kirish B signalini imzolangan ikkita to'ldiruvchi raqami sifatida ko'radi. Signb signali past bo'lsa, multiplikator ko'paytiruvchi kirish B signaliga ishorasiz raqam sifatida qaraydi. Ushbu IP uchun simulyatsiya modeli ushbu signalning aniqlanmagan kirish qiymatini (X) qo'llab-quvvatlaydi. Ushbu kirishga X qiymatini berganingizda, X qiymati chiqish signallarida tarqaladi.
Skanerlash zanjiri A uchun kirish. Kirish signali [WIDTH_A – 1, … 0] kengligi. INPUT_SOURCE_A parametri SCANA qiymatiga ega bo'lsa, scanina[] signali talab qilinadi.
Akkumulyator qiymati doimiy yoki yo'qligini dinamik ravishda belgilaydi. Agar accum_sload signali past bo'lsa, u holda multiplikator chiqishi akkumulyatorga yuklanadi. accum_sload va sload_accum dan bir vaqtning o'zida foydalanmang.
davom etdi…

Fikr-mulohaza yuborish

Intel FPGA butun sonli arifmetik IP yadrolari foydalanuvchi qo‘llanmasi 45

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05

Signal sload_accum
zanjir[] addnsub1
addnsub3
koefsel0[] koefsel1[] koefsel2[] koefsel3[]

Majburiy raqam
Yo'q Yo'q
Yo'q
Yo'q Yo'q Yo'q Yo'q

Tavsif
Ushbu IP uchun simulyatsiya modeli ushbu signalning aniqlanmagan kirish qiymatini (X) qo'llab-quvvatlaydi. Ushbu kirishga X qiymatini berganingizda, X qiymati chiqish signallarida tarqaladi.
Akkumulyator qiymati doimiy yoki yo'qligini dinamik ravishda belgilaydi. Agar sload_accum signali yuqori bo'lsa, u holda multiplikator chiqishi akkumulyatorga yuklanadi. accum_sload va sload_accum dan bir vaqtning o'zida foydalanmang. Ushbu IP uchun simulyatsiya modeli ushbu signalning aniqlanmagan kirish qiymatini (X) qo'llab-quvvatlaydi. Ushbu kirishga X qiymatini berganingizda, X qiymati chiqish signallarida tarqaladi.
Oldingi s dan qo'shuvchi natija kiritish avtobusitage. Kirish signali [WIDTH_CHAININ – 1, … 0] kengligi.
Ko'paytirgichlarning birinchi juftligidan olingan natijalarga qo'shish yoki ayirish amallarini bajaring. Birinchi juft multiplikatordan chiqishlarni qo'shish uchun addnsub1 signaliga 1ni kiriting. Ko'paytirgichlarning birinchi juftligidan chiqishlarni ayirish uchun addnsub0 signaliga 1 ni kiriting. Ushbu IP uchun simulyatsiya modeli ushbu signalning aniqlanmagan kirish qiymatini (X) qo'llab-quvvatlaydi. Ushbu kirishga X qiymatini berganingizda, X qiymati chiqish signallarida tarqaladi.
Ko'paytirgichlarning birinchi juftligidan olingan natijalarga qo'shish yoki ayirish amallarini bajaring. Ikkinchi multiplikator juftligidan chiqishlarni qo'shish uchun addnsub1 signaliga 3ni kiriting. Ko'paytirgichlarning birinchi juftligidan chiqishlarni ayirish uchun addnsub0 signaliga 3 ni kiriting. Ushbu IP uchun simulyatsiya modeli ushbu signalning aniqlanmagan kirish qiymatini (X) qo'llab-quvvatlaydi. Ushbu kirishga X qiymatini berganingizda, X qiymati chiqish signallarida tarqaladi.
Birinchi multiplikatorga koeffitsient kirish signali[0:3]. Ushbu IP uchun simulyatsiya modeli ushbu signalning aniqlanmagan kirish qiymatini (X) qo'llab-quvvatlaydi. Ushbu kirishga X qiymatini berganingizda, X qiymati chiqish signallarida tarqaladi.
Koeffitsientni kiritish signali[0:3]ikkinchi multiplikatorga. Ushbu IP uchun simulyatsiya modeli ushbu signalning aniqlanmagan kirish qiymatini (X) qo'llab-quvvatlaydi. Ushbu kirishga X qiymatini berganingizda, X qiymati chiqish signallarida tarqaladi.
Koeffitsient kirish signali[0:3]uchinchi multiplikatorga. Ushbu IP uchun simulyatsiya modeli ushbu signalning aniqlanmagan kirish qiymatini (X) qo'llab-quvvatlaydi. Ushbu kirishga X qiymatini berganingizda, X qiymati chiqish signallarida tarqaladi.
Koeffitsient kirish signali [0:3] to'rtinchi multiplikatorga. Ushbu IP uchun simulyatsiya modeli ushbu signalning aniqlanmagan kirish qiymatini (X) qo'llab-quvvatlaydi. Ushbu kirishga X qiymatini berganingizda, X qiymati chiqish signallarida tarqaladi.

29-jadval. Intel FPGA IP chiqish signallarini ko'paytirish

Signal

Majburiy

Tavsif

natija []

Ha

Multiplikator chiqish signali. Chiqish signali [WIDTH_RESULT – 1 … 0] kengligi

Ushbu IP uchun simulyatsiya modeli aniqlanmagan chiqish qiymatini (X) qo'llab-quvvatlaydi. Kirish sifatida X qiymatini berganingizda, X qiymati ushbu signalga tarqaladi.

skanerlash []

Yo'q

Skanerlash zanjirining chiqishi A. Chiqish signali [WIDTH_A – 1..0] kengligi.

Ko'paytirgichlar soni uchun 2 dan ortiqni tanlang va ushbu signalni yoqish uchun parametrga ulangan multiplikatorning A kirishi nima uchun zanjir kiritishni skanerlash ni tanlang.

Intel FPGA butun sonli arifmetik IP yadrolari foydalanuvchi qo‘llanmasi 46

Fikr-mulohaza yuborish

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05

8.6. Parametrlar

8.6.1. Umumiy yorliq

30-jadval. Umumiy yorliq

Parametr

IP yaratilgan parametr

Qiymat

Ko'paytiruvchilar soni qancha?

m_soni 1 – 4 koʻpaytiruvchi

A width_a kiritish avtobuslari qanchalik keng bo'lishi kerak?

1 – 256

B width_b kirish avtobuslari qanchalik keng bo'lishi kerak?

1 – 256

"Natija" chiqish shinasi qanchalik keng bo'lishi kerak?

kenglik_natija

1 – 256

Har bir soat uchun tegishli soatni yoqishni yarating

gui_associate Yoqilgan d_clock_enbl O'chirilgan e

8.6.2. Qo'shimcha rejimlar yorlig'i

31-jadval. Qo'shimcha rejimlar yorlig'i

Parametr

IP yaratilgan parametr

Qiymat

Chiqish konfiguratsiyasi

Qo'shimcha qurilmaning chiqishini ro'yxatga olish

gui_output_re Yoqilgan

gister

Oʻchirilgan

Soatni kiritish uchun manba nima?

gui_output_re gister_clock

Soat0 Soat1 Soat2

Asinxron aniq kiritish uchun manba nima?

gui_output_re gister_aclr

YO'Q ACLR0 ACLR1

Sinxron aniq kiritish uchun manba nima?

gui_output_re gister_sclr

YO'Q SCLR0 SCLR1

Qo'shish operatsiyasi

Birinchi juft ko'paytirgichning chiqishlarida qanday amalni bajarish kerak?

gui_multiplikator 1_yo'nalish

QO‘SHISH, SUB, O‘ZGARCHI

Standart qiymat 1
16

Tavsif
Birga qo'shiladigan ko'paytirgichlar soni. Qiymatlar 1 dan 4 gacha. dataa[] portining kengligini belgilang.

16

Datab[] portining kengligini belgilang.

32

Natija[] portining kengligini belgilang.

Oʻchirilgan

Soatni yoqish uchun ushbu parametrni tanlang

har bir soat uchun.

Standart qiymat

Tavsif

Oʻchirilgan soat0
YO'Q YO'Q

Topuvchi modulning chiqish registrini yoqish uchun ushbu parametrni tanlang.
Chiqish registrlari uchun soat manbasini yoqish va belgilash uchun Clock0 , Clock1 yoki Clock2 ni tanlang. Ushbu parametrni yoqish uchun qo'shuvchi birlikning registr chiqishini tanlashingiz kerak.
Topuvchi chiqish registrining asinxron aniq manbasini belgilaydi. Ushbu parametrni yoqish uchun qo'shuvchi birlikning registr chiqishini tanlashingiz kerak.
Topuvchi chiqish registrining sinxron aniq manbasini belgilaydi. Ushbu parametrni yoqish uchun qo'shuvchi birlikning registr chiqishini tanlashingiz kerak.

QO‘SHISH

Birinchi va ikkinchi ko'paytirgichlar orasidagi chiqishlar uchun bajarish uchun qo'shish yoki ayirish amalini tanlang.
· Qo'shish amalini bajarish uchun ADD ni tanlang.
· Ayirish amalini bajarish uchun SUB ni tanlang.
· Dinamik qo'shish/ayirish boshqaruvi uchun addnsub1 portidan foydalanish uchun VARIABLE ni tanlang.
davom etdi…

Fikr-mulohaza yuborish

Intel FPGA butun sonli arifmetik IP yadrolari foydalanuvchi qo‘llanmasi 47

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05

Parametr

IP yaratilgan parametr

Qiymat

"addnsub1" kiritishni ro'yxatdan o'tkazing

gui_addnsub_ On multiplier_reg Off ister1

Soatni kiritish uchun manba nima?

gui_addnsub_ multiplier_reg ister1_clock

Soat0 Soat1 Soat2

Asinxron aniq kiritish uchun manba nima?

gui_addnsub_ multiplier_aclr 1

YO'Q ACLR0 ACLR1

Sinxron aniq kiritish uchun manba nima?

gui_addnsub_ multiplier_sclr 1

YO'Q SCLR0 SCLR1

Ko'paytirgichlarning ikkinchi juft chiqishida qanday amalni bajarish kerak?

gui_multiplikator 3_yo'nalish

QO‘SHISH, SUB, O‘ZGARCHI

"addnsub3" kiritishni ro'yxatdan o'tkazing

gui_addnsub_ On multiplier_reg Off ister3

Soatni kiritish uchun manba nima?

gui_addnsub_ multiplier_reg ister3_clock

Soat0 Soat1 Soat2

Standart qiymat
O'chirilgan soat0 HECH QO'SHIMSIZ
Oʻchirilgan soat0

Tavsif
VARIABLE qiymati tanlanganda: · addnsub1 signalini yuqori darajaga o'tkazing
qo'shish operatsiyasi. · Addnsub1 signalini past darajaga o'tkazing
ayirish operatsiyasi. Ushbu parametrni yoqish uchun ikkitadan ortiq multiplikatorni tanlashingiz kerak.
addnsub1 porti uchun kirish registrini yoqish uchun ushbu parametrni tanlang. Ushbu parametrni yoqish uchun birinchi ko'paytirgichlar juftligining chiqishlarida qanday operatsiya bajarilishi kerakligi uchun VARIABLE ni tanlashingiz kerak.
Addnsub0 registriga kirish soati signalini belgilash uchun Clock1 , Clock2 yoki Clock1 ni tanlang. Ushbu parametrni yoqish uchun Register 'addnsub1' kiritishni tanlashingiz kerak.
addnsub1 registri uchun asinxron aniq manbani belgilaydi. Ushbu parametrni yoqish uchun Register 'addnsub1' kiritishni tanlashingiz kerak.
Addnsub1 registri uchun sinxron toza manbani belgilaydi. Ushbu parametrni yoqish uchun Register 'addnsub1' kiritishni tanlashingiz kerak.
Uchinchi va to'rtinchi ko'paytirgichlar orasidagi chiqishlar uchun bajarish uchun qo'shish yoki ayirish amalini tanlang. · Qo'shishni amalga oshirish uchun QO'SHISH ni tanlang
operatsiya. · Ayirishni amalga oshirish uchun SUB ni tanlang
operatsiya. · addnsub1 dan foydalanish uchun VARIABLE ni tanlang
dinamik qo'shish/ayirish nazorati uchun port. VARIABLE qiymati tanlanganda: · Qo'shish operatsiyasi uchun addnsub1 signalini yuqori darajaga o'tkazing. · Ayirish operatsiyasi uchun addnsub1 signalini past darajaga o'tkazing. Ko'paytiruvchilar soni qancha? uchun 4 qiymatini tanlashingiz kerak? ushbu parametrni yoqish uchun.
addnsub3 signali uchun kirish registrini yoqish uchun ushbu parametrni tanlang. Ushbu parametrni yoqish uchun ko'paytirgichlarning ikkinchi juft chiqishida qanday operatsiya bajarilishi kerakligi uchun VARIABLE ni tanlashingiz kerak.
Addnsub0 registriga kirish soati signalini belgilash uchun Clock1 , Clock2 yoki Clock3 ni tanlang. Ushbu parametrni yoqish uchun Register 'addnsub3' kiritishni tanlashingiz kerak.
davom etdi…

Intel FPGA butun sonli arifmetik IP yadrolari foydalanuvchi qo‘llanmasi 48

Fikr-mulohaza yuborish

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05

Parametr
Asinxron aniq kiritish uchun manba nima?

IP yaratilgan parametr

Qiymat

gui_addnsub_ multiplier_aclr 3

YO'Q ACLR0 ACLR1

Sinxron aniq kiritish uchun manba nima?

gui_addnsub_ multiplier_sclr 3

YO'Q SCLR0 SCLR1

Qutblilikni yoqish "use_sbadd"

gui_use_subn Yoqilgan

qo'shish

Oʻchirilgan

8.6.3. Ko'paytirgichlar yorlig'i

Jadval 32. Ko'paytirgichlar yorlig'i

Parametr

IP yaratilgan parametr

Qiymat

bu nima

gui_represent

vakillik formati ation_a

multiplikatorlar A kirishlari uchun?

Imzolangan, imzosiz, o'zgaruvchan

"signa" kiritishni ro'yxatdan o'tkazing

gui_register_s Yoqilgan

igna

Oʻchirilgan

Soatni kiritish uchun manba nima?

gui_register_s igna_soati

Soat0 Soat1 Soat2

Asinxron aniq kiritish uchun manba nima?

gui_register_s igna_aclr

YO'Q ACLR0 ACLR1

Sinxron aniq kiritish uchun manba nima?

gui_register_s igna_sclr

YO'Q SCLR0 SCLR1

bu nima

gui_represent

vakillik formati ation_b

multiplikatorlar B kirishlari uchunmi?

Imzolangan, imzosiz, o'zgaruvchan

"signb" kiritishni ro'yxatdan o'tkazing

gui_register_s Yoqilgan

ignb

Oʻchirilgan

Standart qiymat YO'Q
YO'Q

Tavsif
addnsub3 registri uchun asinxron aniq manbani belgilaydi. Ushbu parametrni yoqish uchun Register 'addnsub3' kiritishni tanlashingiz kerak.
Addnsub3 registri uchun sinxron toza manbani belgilaydi. Ushbu parametrni yoqish uchun Register 'addnsub3' kiritishni tanlashingiz kerak.

Oʻchirilgan

Funktsiyani orqaga qaytarish uchun ushbu parametrni tanlang

addnsub kirish porti.

Ayirish operatsiyasi uchun addnsubni yuqoriga o'tkazing.

Qo'shish uchun addnsubni past darajaga o'tkazing.

Standart qiymat

Tavsif

UNSIGNED Multiplikator A kiritish uchun taqdimot formatini belgilang.

Oʻchirilgan

Signalni yoqish uchun ushbu parametrni tanlang

ro'yxatdan o'tish.

Ko'paytirgichlar A kirishlari uchun tasvir formati nima uchun VARIABLE qiymatini tanlashingiz kerak? ushbu parametrni yoqish uchun parametr.

Soat 0

Signa registriga kirish soati signalini yoqish va belgilash uchun Clock0 , Clock1 yoki Clock2 ni tanlang.
Ushbu parametrni yoqish uchun Register `signa' kiritishni tanlashingiz kerak.

YO'Q

Signa registri uchun asinxron aniq manbani belgilaydi.
Ushbu parametrni yoqish uchun Register `signa' kiritishni tanlashingiz kerak.

YO'Q

Signa registri uchun sinxron aniq manbani belgilaydi.
Ushbu parametrni yoqish uchun Register `signa' kiritishni tanlashingiz kerak.

UNSIGNED Multiplikator B kiritish uchun taqdim etish formatini belgilang.

Oʻchirilgan

Signbni yoqish uchun ushbu parametrni tanlang

ro'yxatdan o'tish.

davom etdi…

Fikr-mulohaza yuborish

Intel FPGA butun sonli arifmetik IP yadrolari foydalanuvchi qo‘llanmasi 49

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05

Parametr

IP yaratilgan parametr

Qiymat

Standart qiymat

Soatni kiritish uchun manba nima?

gui_register_s ignb_clock

Soat0 Soat1 Soat2

Soat 0

Asinxron aniq kiritish uchun manba nima?

gui_register_s ignb_aclr

YO'Q ACLR0 ACLR1

Sinxron aniq kiritish uchun manba nima?

gui_register_s ignb_sclr

YO'Q SCLR0 SCLR1

Kirish konfiguratsiyasi
Multiplikatorning A kirishini ro'yxatdan o'tkazing
Soatni kiritish uchun manba nima?

gui_input_reg Yoqilgan

ister_a

Oʻchirilgan

gui_input_reg ister_a_clock

Soat0 Soat1 Soat2

YO'Q YO'Q
Oʻchirilgan soat0

Asinxron aniq kiritish uchun manba nima?

gui_input_reg ister_a_aclr

YO'Q ACLR0 ACLR1

Sinxron aniq kiritish uchun manba nima?

gui_input_reg ister_a_sclr

YO'Q SCLR0 SCLR1

Multiplikatorning B kirishini ro'yxatdan o'tkazing
Soatni kiritish uchun manba nima?

gui_input_reg Yoqilgan

ister_b

Oʻchirilgan

gui_input_reg ister_b_clock

Soat0 Soat1 Soat2

YO'Q YO'Q YO'Q O'chirilgan soat0

Asinxron aniq kiritish uchun manba nima?

gui_input_reg ister_b_aclr

YO'Q ACLR0 ACLR1

YO'Q

Sinxron aniq kiritish uchun manba nima?

gui_input_reg ister_b_sclr

YO'Q SCLR0 SCLR1

YO'Q

Ko'paytirgichning A kirishi nimaga ulangan?

gui_multiplier Ko'paytiruvchi kiritish Ko'paytiruvchi

_a_kiritish

Skanerlash zanjiri kiritish kiritish

Tavsif
Multipliers B kiritishlari uchun qanday tasvir formati uchun VARIABLE qiymatini tanlashingiz kerak? ushbu parametrni yoqish uchun parametr.
Signb registriga kirish soati signalini yoqish va belgilash uchun Clock0 , Clock1 yoki Clock2 ni tanlang. Ushbu parametrni yoqish uchun Register `signb' kiritishni tanlashingiz kerak.
Signb registri uchun asinxron aniq manbani belgilaydi. Ushbu parametrni yoqish uchun Register `signb' kiritishni tanlashingiz kerak.
Signb registri uchun sinxron aniq manbani belgilaydi. Ushbu parametrni yoqish uchun Register `signb' kiritishni tanlashingiz kerak.
Ma'lumotlarni kiritish avtobusi uchun kirish registrini yoqish uchun ushbu parametrni tanlang.
Ma'lumotlar kirish shinasi uchun registrning kirish soati signalini yoqish va belgilash uchun Clock0 , Clock1 yoki Clock2 ni tanlang. Ushbu parametrni yoqish uchun multiplikatorning A kirishini ro'yxatdan o'tkazishni tanlashingiz kerak.
Ma'lumotlarga kirish shinasi uchun registrning asinxron aniq manbasini belgilaydi. Ushbu parametrni yoqish uchun multiplikatorning A kirishini ro'yxatdan o'tkazishni tanlashingiz kerak.
Ma'lumotlarga kirish shinasi uchun registrning sinxron aniq manbasini belgilaydi. Ushbu parametrni yoqish uchun multiplikatorning A kirishini ro'yxatdan o'tkazishni tanlashingiz kerak.
Ma'lumotlar bazasini kiritish shinasi uchun kirish registrini yoqish uchun ushbu parametrni tanlang.
Ma'lumotlar bazasini kiritish shinasi uchun registrning kirish soati signalini yoqish va belgilash uchun Clock0 , Clock1 yoki Clock2 ni tanlang. Ushbu parametrni yoqish uchun multiplikatorning B kirishini ro'yxatdan o'tkazishni tanlashingiz kerak.
Ma'lumotlar bazasini kiritish shinasi uchun registrning asinxron aniq manbasini belgilaydi. Ushbu parametrni yoqish uchun multiplikatorning B kirishini ro'yxatdan o'tkazishni tanlashingiz kerak.
Ma'lumotlar bazasini kiritish shinasi uchun registrning sinxron aniq manbasini belgilaydi. Ushbu parametrni yoqish uchun multiplikatorning B kirishini ro'yxatdan o'tkazishni tanlashingiz kerak.
Multiplikatorning A kiritish uchun kirish manbasini tanlang.
davom etdi…

Intel FPGA butun sonli arifmetik IP yadrolari foydalanuvchi qo‘llanmasi 50

Fikr-mulohaza yuborish

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05

Parametr

IP yaratilgan parametr

Qiymat

Registr konfiguratsiyasini skanerlash

Skanerlash zanjirining chiqishini ro'yxatdan o'tkazing

gui_scanouta Yoqilgan

_ro'yxatdan o'tish

Oʻchirilgan

Soatni kiritish uchun manba nima?

gui_scanouta _register_cloc k

Soat0 Soat1 Soat2

Asinxron aniq kiritish uchun manba nima?

gui_scanouta _register_aclr

YO'Q ACLR0 ACLR1

Sinxron aniq kiritish uchun manba nima?

gui_scanouta _register_sclr

YO'Q SCLR0 SCLR1

8.6.4. Preadder yorlig'i

33-jadval. Preadder yorlig'i

Parametr

IP yaratilgan parametr

Qiymat

Preadder rejimini tanlang

preadder_mo de

ODDIY, KOF, KIRISh, Kvadrat, doimiy

Standart qiymat

Tavsif
Multiplikator manbasi sifatida ma'lumotlar kiritish avtobusidan foydalanish uchun Multiplikator kiritishni tanlang. Skanerlash kirish avtobusini multiplikator manbai sifatida ishlatish va skanerlash chiqish avtobusini yoqish uchun zanjir kiritishni skanerlash ni tanlang. Ushbu parametr ko'paytirgichlar soni uchun 2, 3 yoki 4 ni tanlaganingizda mavjud bo'ladi? parametr.

O'chirilgan soat0 YO'Q

Skanouta chiqish avtobusi uchun chiqish registrini yoqish uchun ushbu parametrni tanlang.
Multiplikatorning A kirishi nimaga ulangan? uchun Scan zanjiri kiritishni tanlashingiz kerak. ushbu parametrni yoqish uchun parametr.
Skanouta chiqish avtobusi uchun registrning kirish soati signalini yoqish va belgilash uchun Clock0 , Clock1 yoki Clock2 ni tanlang.
Ushbu parametrni yoqish uchun skanerlash zanjiri parametrining registr chiqishini yoqishingiz kerak.
Skanouta chiqish avtobusi uchun registrning asinxron aniq manbasini belgilaydi.
Ushbu parametrni yoqish uchun skanerlash zanjiri parametrining registr chiqishini yoqishingiz kerak.
Skanouta chiqish avtobusi uchun registrning sinxron aniq manbasini belgilaydi.
Ushbu parametrni yoqish uchun skanerlash zanjiri parametrining registr chiqishini tanlashingiz kerak.

Standart qiymat
ODDDA

Tavsif
Preadder moduli uchun ish rejimini belgilaydi. ODDDA: Bu rejim preadderni chetlab o'tadi. Bu standart rejim. COEF: Ushbu rejim multiplikatorga kirishlar sifatida preadder va koefsel kirish avtobusining chiqishidan foydalanadi. INPUT: Ushbu rejim multiplikatorga kirishlar sifatida preadder va ma'lumotlar kirish avtobusining chiqishidan foydalanadi. Kvadrat: Bu rejim preadderning chiqishidan multiplikatorga ikkala kirish sifatida ham foydalanadi.
davom etdi…

Fikr-mulohaza yuborish

Intel FPGA butun sonli arifmetik IP yadrolari foydalanuvchi qo‘llanmasi 51

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05

Parametr

IP yaratilgan parametr

Qiymat

Preadder yo'nalishini tanlang

gui_preadder ADD,

_yo'nalish

SUB

C width_c kirish avtobuslari qanchalik keng bo'lishi kerak?

1 – 256

Ma'lumotlar C kiritish registri konfiguratsiyasi

Datac kiritishni ro'yxatdan o'tkazing

gui_datac_inp Yoqilgan

ut_register

Oʻchirilgan

Soatni kiritish uchun manba nima?

gui_datac_inp ut_register_cl ock

Soat0 Soat1 Soat2

Asinxron aniq kiritish uchun manba nima?

gui_datac_inp ut_register_a clr

YO'Q ACLR0 ACLR1

Sinxron aniq kiritish uchun manba nima?

gui_datac_inp ut_register_sc lr

YO'Q SCLR0 SCLR1

Koeffitsientlar
Koefning kengligi qancha bo'lishi kerak?

kenglik_koeffi

1 – 27

Koef registrining konfiguratsiyasi

Koefsel kiritishni ro'yxatdan o'tkazing

gui_coef_regi Yoqilgan

ster

Oʻchirilgan

Soatni kiritish uchun manba nima?

gui_coef_regi ster_soat

Soat0 Soat1 Soat2

Standart qiymat
QO‘SHISH
16

Tavsif
DOIMIY: Bu rejim multiplikatorga kirishlar sifatida preadderni chetlab o'tgan ma'lumotlarni kiritish shinasi va koefsel kiritish avtobusidan foydalanadi.
Preadderning ishlashini belgilaydi. Ushbu parametrni yoqish uchun Preadder rejimini tanlash uchun quyidagilarni tanlang: · COEF · INPUT · QUARE yoki · CONSTANT
C kirish shinasi uchun bitlar sonini belgilaydi. Ushbu parametrni yoqish uchun Preadder rejimini tanlash uchun INPUT ni tanlashingiz kerak.

Soat 0 YO'Q

Ma'lumotlar kirish shinasi uchun kirish registrini yoqish uchun ushbu parametrni tanlang. Ushbu parametrni yoqish uchun INPUT ni Preadder rejimi parametrini tanlashga o'rnatishingiz kerak.
Ma'lumotlar kirish registriga kirish soati signalini belgilash uchun Clock0 , Clock1 yoki Clock2 ni tanlang. Ushbu parametrni yoqish uchun Register Datac input ni tanlashingiz kerak.
Datac kiritish registrining asinxron aniq manbasini belgilaydi. Ushbu parametrni yoqish uchun Register Datac input ni tanlashingiz kerak.
Datac kiritish registrining sinxron aniq manbasini belgilaydi. Ushbu parametrni yoqish uchun Register Datac input ni tanlashingiz kerak.

18

Bitlar sonini belgilaydi

koefsel kiritish avtobusi.

Ushbu parametrni yoqish uchun siz preadder rejimi uchun COEF yoki CONSTANT ni tanlashingiz kerak.

Soatda 0

Koefsel kiritish avtobusi uchun kirish registrini yoqish uchun ushbu parametrni tanlang. Ushbu parametrni yoqish uchun preadder rejimi uchun COEF yoki CONSTANT ni tanlashingiz kerak.
Koefsel kiritish registriga kirish soati signalini belgilash uchun Clock0 , Clock1 yoki Clock2 ni tanlang. Ushbu parametrni yoqish uchun koefsel kiritishni qayd etishni tanlashingiz kerak.
davom etdi…

Intel FPGA butun sonli arifmetik IP yadrolari foydalanuvchi qo‘llanmasi 52

Fikr-mulohaza yuborish

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05

Parametr
Asinxron aniq kiritish uchun manba nima?

IP yaratilgan parametr

Qiymat

gui_coef_regi ster_aclr

YO'Q ACLR0 ACLR1

Sinxron aniq kiritish uchun manba nima

gui_coef_regi ster_sclr

YO'Q SCLR0 SCLR1

Koeffitsient_0 konfiguratsiyasi

koef0_0 koef0_7

0x00000 0xFFFFFFFF

Koeffitsient_1 konfiguratsiyasi

koef1_0 koef1_7

0x00000 0xFFFFFFFF

Koeffitsient_2 konfiguratsiyasi

koef2_0 koef2_7

0x00000 0xFFFFFFFF

Koeffitsient_3 konfiguratsiyasi

koef3_0 koef3_7

0x00000 0xFFFFFFFF

8.6.5. Akkumulyator yorlig'i

Jadval 34. Akkumulyator yorlig'i

Parametr

IP yaratilgan parametr

Qiymat

Akkumulyator yoqilsinmi?

akkumulyator

HA YO'Q

Akkumulyatorning ishlash turi qanday?

accum_directi ADD,

on

SUB

Standart qiymat YO'Q
YO'Q
0x0000000 0
0x0000000 0
0x0000000 0
0x0000000 0

Tavsif
Koefsel kiritish registri uchun asinxron aniq manbani belgilaydi. Ushbu parametrni yoqish uchun Register the coefsel input ni tanlashingiz kerak.
Koefsel kiritish registri uchun sinxron aniq manbani belgilaydi. Ushbu parametrni yoqish uchun Register the coefsel input ni tanlashingiz kerak.
Ushbu birinchi multiplikator uchun koeffitsient qiymatlarini belgilaydi. Bitlar soni koeffitsient kengligi qanchalik keng bo'lishi kerak bo'yicha ko'rsatilgandek bir xil bo'lishi kerak? parametr. Ushbu parametrni yoqish uchun preadder rejimi uchun COEF yoki CONSTANT ni tanlashingiz kerak.
Ushbu ikkinchi multiplikator uchun koeffitsient qiymatlarini belgilaydi. Bitlar soni koeffitsient kengligi qanchalik keng bo'lishi kerak bo'yicha ko'rsatilgandek bir xil bo'lishi kerak? parametr. Ushbu parametrni yoqish uchun siz preadder rejimi uchun COEF yoki CONSTANT ni tanlashingiz kerak.
Ushbu uchinchi multiplikator uchun koeffitsient qiymatlarini belgilaydi. Bitlar soni koeffitsient kengligi qanchalik keng bo'lishi kerak bo'yicha ko'rsatilgandek bir xil bo'lishi kerak? parametr. Ushbu parametrni yoqish uchun siz preadder rejimi uchun COEF yoki CONSTANT ni tanlashingiz kerak.
Ushbu to'rtinchi multiplikator uchun koeffitsient qiymatlarini belgilaydi. Bitlar soni koeffitsient kengligi qanchalik keng bo'lishi kerak bo'yicha ko'rsatilgandek bir xil bo'lishi kerak? parametr. Ushbu parametrni yoqish uchun preadder rejimi uchun COEF yoki CONSTANT ni tanlashingiz kerak.

Standart qiymat NO
QO‘SHISH

Tavsif
Akkumulyatorni yoqish uchun YES ni tanlang. Akkumulyator funksiyasidan foydalanganda qo'shimcha qurilmaning registr chiqishini tanlashingiz kerak.
Akkumulyatorning ishini belgilaydi: · Qo‘shish amali uchun ADD · ayirish amali uchun SUB. Akkumulyatorni yoqish uchun HA ni tanlashingiz kerakmi? ushbu parametrni yoqish uchun parametr.
davom etdi…

Fikr-mulohaza yuborish

Intel FPGA butun sonli arifmetik IP yadrolari foydalanuvchi qo‘llanmasi 53

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05

Parametr
Oldindan yuklanish doimiysi Oldindan yuklanish doimiysini yoqish

IP yaratilgan parametr

Qiymat

gui_ena_prelo Yoqilgan

ad_const

Oʻchirilgan

Akkumulyatsiya portining kirishi nimaga ulangan?

gui_accumula ACCUM_SLOAD, te_port_select SLOAD_ACCUM

Oldindan yuklash uchun qiymatni tanlang loadconst_val 0 – 64

doimiy

ue

Soatni kiritish uchun manba nima?

gui_accum_sl oad_register_ soati

Soat0 Soat1 Soat2

Asinxron aniq kiritish uchun manba nima?

gui_accum_sl oad_register_ aclr

YO'Q ACLR0 ACLR1

Sinxron aniq kiritish uchun manba nima?

gui_accum_sl oad_register_ sclr

YO'Q SCLR0 SCLR1

Ikkita akkumulyatorni yoqing

gui_double_a Yoqilgan

ccum

Oʻchirilgan

Standart qiymat

Tavsif

Oʻchirilgan

accum_sload yoki ni yoqing

sload_accum signallari va kirishni qayd etish

ga kirishni dinamik ravishda tanlash uchun

akkumulyator.

accum_sload past yoki sload_accum bo'lsa, multiplikator chiqishi akkumulyatorga beriladi.

accum_sload yuqori yoki sload_accum bo'lsa, foydalanuvchi tomonidan belgilangan oldindan yuklanish doimiysi akkumulyatorga kiritiladi.

Akkumulyatorni yoqish uchun HA ni tanlashingiz kerakmi? ushbu parametrni yoqish uchun parametr.

ACCUM_SL OAD

accum_sload/sload_accum signalining harakatini belgilaydi.
ACCUM_SLOAD: Ko'paytirgichning chiqishini akkumulyatorga yuklash uchun accum_sload past suring.
SLOAD_ACCUM: Multiplikator chiqishini akkumulyatorga yuklash uchun sload_accum yuqori suring.
Ushbu parametrni yoqish uchun "Olddan yuklanish doimiyligini yoqish" variantini tanlashingiz kerak.

64

Oldindan o'rnatilgan doimiy qiymatni belgilang.

Bu qiymat 2N bo'lishi mumkin, bu erda N - oldindan o'rnatilgan doimiy qiymat.

N=64 bo'lsa, u doimiy nolni ifodalaydi.

Ushbu parametrni yoqish uchun "Olddan yuklanish doimiyligini yoqish" variantini tanlashingiz kerak.

Soat 0

Accum_sload/sload_accum registriga kirish soati signalini belgilash uchun Clock0 , Clock1 yoki Clock2 ni tanlang.
Ushbu parametrni yoqish uchun "Olddan yuklanish doimiyligini yoqish" variantini tanlashingiz kerak.

YO'Q

accum_sload/sload_accum registri uchun asinxron aniq manbani belgilaydi.
Ushbu parametrni yoqish uchun "Olddan yuklanish doimiyligini yoqish" variantini tanlashingiz kerak.

YO'Q

accum_sload/sload_accum registri uchun sinxron toza manbani belgilaydi.
Ushbu parametrni yoqish uchun "Olddan yuklanish doimiyligini yoqish" variantini tanlashingiz kerak.

Oʻchirilgan

Ikkita akkumulyator registrini yoqadi.

Intel FPGA butun sonli arifmetik IP yadrolari foydalanuvchi qo‘llanmasi 54

Fikr-mulohaza yuborish

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05

8.6.6. Sistolik/Chainout yorlig'i

35-jadval. Sistolik/Zanjirli qo'shuvchi yorlig'i

Parametr Zanjirli qo'shgichni yoqish

IP yaratilgan parametr

Qiymat

chainout_add HA,

er

YO'Q

Zanjirli qo'shuvchi operatsiya turi qanday?

chainout_add ADD,

er_yo'nalish

SUB

Zanjirli qo‘shuvchi uchun “inkor” kiritish yoqilsinmi?

Port_negate

PORT_USED, PORT_UNUSED

“Inkor etish” yozuvi ro‘yxatdan o‘tkazilsinmi? negate_regist er

RO‘YXATDAN OLMAGAN, SOAT0, SOAT1, SOAT2, SOAT3

Asinxron aniq kiritish uchun manba nima?

negate_aclr

YO'Q ACLR0 ACLR1

Sinxron aniq kiritish uchun manba nima?

negate_sclr

YO'Q SCLR0 SCLR1

Sistolik kechikish
Sistolik kechikish registrlarini yoqing

gui_systolic_d Yoqilgan

elay

Oʻchirilgan

Soatni kiritish uchun manba nima?

gui_systolic_d CLOCK0,

elay_soat

SOAT1,

Standart qiymat
YO'Q

Tavsif
Chainout adder modulini yoqish uchun H ni tanlang.

QO‘SHISH

Zanjirli qo'shuvchi operatsiyani belgilaydi.
Ayirish operatsiyasi uchun SIGNED ni tanlash kerak Ko'paytirgichlar A kirishlari uchun tasvir formati nima? va Multiplikatorlar B kirishlari uchun taqdim etish formati qanday? Ko'paytirgichlar yorlig'ida.

PORT_UN ISHLATILADI

Kirish signalini rad etishni yoqish uchun PORT_USED ni tanlang.
Zanjir to'ldiruvchisi o'chirilgan bo'lsa, bu parametr yaroqsiz.

ERED RO'YXATDAN BERISH

Inkor qilish kirish signali uchun kirish registrini yoqish va inkor qilish registrining kirish soati signalini belgilaydi.
Agar kirish registrini bekor qilish kerak bo'lmasa, UNROGISTERED ni tanlang
Siz tanlaganingizda bu parametr yaroqsiz:
· Zanjirli qo‘shimchani yoqish yoki uchun YO‘Q
· PORT_UNUSED zanjirli qo‘shuvchi uchun “inkor” kiritishni yoqish uchunmi? parametr yoki

YO'Q

Negate registr uchun asinxron aniq manbani belgilaydi.
Siz tanlaganingizda bu parametr yaroqsiz:
· Zanjirli qo‘shimchani yoqish yoki uchun YO‘Q
· PORT_UNUSED zanjirli qo‘shuvchi uchun “inkor” kiritishni yoqish uchunmi? parametr yoki

YO'Q

Inkor qilish registrining sinxron aniq manbasini belgilaydi.
Siz tanlaganingizda bu parametr yaroqsiz:
· Zanjirli qo‘shimchani yoqish yoki uchun YO‘Q
· PORT_UNUSED zanjirli qo‘shuvchi uchun “inkor” kiritishni yoqish uchunmi? parametr yoki

CLOCK0 oʻchirilgan

Sistolik rejimni yoqish uchun ushbu parametrni tanlang. Ushbu parametr ko'paytirgichlar soni uchun 2 yoki 4 ni tanlaganingizda mavjud bo'ladi? parametr. Sistolik kechikish registrlaridan foydalanish uchun qo'shimcha qurilmaning Registr chiqishini yoqishingiz kerak.
Sistolik kechikish registrining kirish soati signalini belgilaydi.
davom etdi…

Fikr-mulohaza yuborish

Intel FPGA butun sonli arifmetik IP yadrolari foydalanuvchi qo‘llanmasi 55

8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05

Parametr

IP yaratilgan parametr

Qiymat

SOAT2,

Asinxron aniq kiritish uchun manba nima?

gui_systolic_d elay_aclr

YO'Q ACLR0 ACLR1

Sinxron aniq kiritish uchun manba nima?

gui_systolic_d elay_sclr

YO'Q SCLR0 SCLR1

Standart qiymat
YO'Q
YO'Q

Tavsif
Ushbu parametrni yoqish uchun sistolik kechikish registrlarini yoqishni tanlashingiz kerak.
Sistolik kechikish registri uchun asinxron aniq manbani belgilaydi. Ushbu parametrni yoqish uchun sistolik kechikish registrlarini yoqishni tanlashingiz kerak.
Sistolik kechikish registri uchun sinxron aniq manbani belgilaydi. Ushbu parametrni yoqish uchun sistolik kechikish registrlarini yoqishni tanlashingiz kerak.

8.6.7. Quvurlarni ulash yorlig'i

36-jadval. Quvurlarni o'tkazish yorlig'i

Parametr quvur liniyasi konfiguratsiyasi

IP yaratilgan parametr

Qiymat

Kirishga quvur liniyasi registrini qo'shishni xohlaysizmi?

gui_pipelining Yo'q, Ha

Standart qiymat
Yo'q

Iltimos, belgilang

kechikish

kechikish soati soni

sikllar

0 dan katta har qanday qiymat

Soatni kiritish uchun manba nima?

gui_input_late ncy_clock

SOAT0, SOAT1, SOAT2

Asinxron aniq kiritish uchun manba nima?

gui_input_late ncy_aclr

YO'Q ACLR0 ACLR1

Sinxron aniq kiritish uchun manba nima?

gui_input_late ncy_sclr

YO'Q SCLR0 SCLR1

SOAT0 YO'Q

Tavsif
Kirish signallariga quvur liniyasi registrining qo'shimcha darajasini yoqish uchun Ha ni tanlang. Siz 0 dan kattaroq qiymatni belgilashingiz kerak. Iltimos, kechikish vaqti sikllari sonini belgilang.
Soat sikllarida kerakli kechikishni belgilaydi. Quvurlar registrining bir darajasi = soat siklidagi 1 kechikish. Siz kiritishga quvur liniyasi registrini qo'shishni xohlaysizmi? uchun H ni tanlashingiz kerak. ushbu parametrni yoqish uchun.
Quvur liniyasi registrining kirish soati signalini yoqish va belgilash uchun Clock0 , Clock1 yoki Clock2 ni tanlang. Siz kiritishga quvur liniyasi registrini qo'shishni xohlaysizmi? uchun H ni tanlashingiz kerak. ushbu parametrni yoqish uchun.
Qo'shimcha quvur registri uchun registrning asinxron aniq manbasini belgilaydi. Siz kiritishga quvur liniyasi registrini qo'shishni xohlaysizmi? uchun H ni tanlashingiz kerak. ushbu parametrni yoqish uchun.
Qo'shimcha quvur registri uchun registrning sinxron aniq manbasini belgilaydi. Siz kiritishga quvur liniyasi registrini qo'shishni xohlaysizmi? uchun H ni tanlashingiz kerak. ushbu parametrni yoqish uchun.

Intel FPGA butun sonli arifmetik IP yadrolari foydalanuvchi qo‘llanmasi 56

Fikr-mulohaza yuborish

683490 | 2020.10.05 Fikr-mulohaza yuborish

9. ALTMEMMULT (xotiraga asoslangan doimiy koeffitsient multiplikatori) IP yadrosi

Diqqat:

Intel, Intel Quartus Prime Pro Edition 20.3 versiyasida ushbu IP-ni qo'llab-quvvatlashni olib tashladi. Agar dizayningizdagi IP yadrosi Intel Quartus Prime Pro Edition qurilmalariga mo‘ljallangan bo‘lsa, siz IP-ni LPM_MULT Intel FPGA IP bilan almashtirishingiz yoki IP-ni qayta yaratishingiz va Intel Quartus Prime Standard Edition dasturi yordamida dizayningizni kompilyatsiya qilishingiz mumkin.

ALTMEMMULT IP yadrosi Intel FPGA-larida (M512, M4K, M9K va MLAB xotira bloklari bilan) joylashgan onchip xotira bloklari yordamida xotiraga asoslangan multiplikatorlarni yaratish uchun ishlatiladi. Ushbu IP yadrosi mantiqiy elementlarda (LE) yoki ajratilgan multiplikator resurslarida multiplikatorlarni amalga oshirish uchun etarli resurslarga ega bo'lmasangiz foydali bo'ladi.
ALTMEMMULT IP yadrosi sinxron funktsiya bo'lib, soatni talab qiladi. ALTMEMMULT IP yadrosi ma'lum parametrlar va spetsifikatsiyalar to'plami uchun mumkin bo'lgan eng kichik o'tkazuvchanlik va kechikish bilan multiplikatorni amalga oshiradi.
Quyidagi rasmda ALTMEMMULT IP yadrosi uchun portlar ko'rsatilgan.

21-rasm. ALTMEMMULT portlari

ALTMEMMULT

data_in[] sload_data koeffisi[]

natija[] natija_valid yuklash_bajarildi

sload_coeff

sclr soati
inst

Tegishli maʼlumotlar xususiyatlari 71-betda

9.1. Xususiyatlari
ALTMEMMULT IP yadrosi quyidagi funksiyalarni taqdim etadi: · Bu yerda joylashgan chipdagi xotira bloklari yordamida faqat xotiraga asoslangan multiplikatorlarni yaratadi.
Intel FPGAs · 1 bit ma'lumotlar kengligini qo'llab-quvvatlaydi · Imzolangan va imzolanmagan ma'lumotlarni taqdim etish formatini qo'llab-quvvatlaydi · Ruxsat etilgan chiqish kechikishi bilan quvur liniyasini qo'llab-quvvatlaydi

Intel korporatsiyasi. Barcha huquqlar himoyalangan. Intel, Intel logotipi va boshqa Intel belgilari Intel korporatsiyasi yoki uning sho'ba korxonalarining savdo belgilaridir. Intel o'zining FPGA va yarimo'tkazgich mahsulotlarining Intel standart kafolatiga muvofiq joriy spetsifikatsiyalarga muvofiq ishlashini kafolatlaydi, lekin istalgan vaqtda ogohlantirmasdan istalgan mahsulot va xizmatlarga o'zgartirish kiritish huquqini o'zida saqlab qoladi. Intel tomonidan yozma ravishda kelishilgan hollar bundan mustasno, bu erda tasvirlangan har qanday ma'lumot, mahsulot yoki xizmatdan foydalanish yoki qo'llash natijasida kelib chiqadigan hech qanday javobgarlik yoki javobgarlikni o'z zimmasiga olmaydi. Intel mijozlariga har qanday nashr etilgan ma'lumotlarga tayanishdan va mahsulot yoki xizmatlarga buyurtma berishdan oldin qurilma texnik xususiyatlarining so'nggi versiyasini olish tavsiya etiladi. *Boshqa nomlar va brendlar boshqalarning mulki sifatida da'vo qilinishi mumkin.

ISO 9001: 2015 Ro'yxatdan o'tgan

9. ALTMEMMULT (xotiraga asoslangan doimiy koeffitsient multiplikatori) IP yadrosi 683490 | 2020.10.05
· Ko'p sonli konstantalarni tasodifiy kirish xotirasida (RAM) saqlaydi.
· Operativ xotira bloki turini tanlash imkoniyatini beradi
· ixtiyoriy sinxron aniq va yukni boshqarish kirish portlarini qo'llab-quvvatlaydi
9.2. Verilog HDL prototipi
Quyidagi Verilog HDL prototipi Verilog Dizaynida joylashgan File (.v) altera_mf.v ichida eda sintez katalogi.
modul altmemmult #( parametr koeffitsienti = “IMZOʻLANGAN”, parametr koeffitsienti0 = “FOYDALANILMAGAN”, parametr data_representation = “SIGNED”, parametr moʻljallangan_device_family = “ishlatilmagan”, har bir natija uchun maksimal_soat_sikllari parametri = 1, parametr raqami_of_b, parametr_koeffitsienti =AU_koeffitsienti total_latency = 1, parametr width_c = 1, parametr width_d = 1, parametr width_r = 1, parametr width_s = 1, parametr lpm_type = “altmemmult”, lpm_hint parametri = “ishlatilmagan”) ( kirish simi soati, kirish simi [width_c-1: 1]koef_in, kirish simi [kenglik_d-0:1] ma'lumotlar_in, chiqish simi yuklangan_bajarildi, chiqish simi [kenglik_r-0:1] natijasi, chiqish simi natijasi_valid, kirish simi sclr, kirish simi [keng_s-0:1] tanlash, kirish sim sload_coeff, kirish simi sload_data)/* sintez syn_black_box=0 */; endmodul
9.3. VHDL komponent deklaratsiyasi
VHDL komponent deklaratsiyasi VHDL dizaynida joylashgan File (.vhd) ichida altera_mf_components.vhd librariesvhdlaltera_mf katalogi.
altmemmult umumiy komponent (koeffitsient_tasviri:string := “IMZORLANGAN”; koeffitsient0:string := “FOYDALANILMAGAN”; data_representation:string := “IMZORLANGAN”; intended_device_family:string := “ishlatilmagan”; maksimal_soat_sikllari_per_natija:tabiiylik soni:natural soni:1; := 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 := “USED”; lpm_type:string:= "altmemmult"); port( clock:in std_logic; coeff_in:in std_logic_vector(width_c-1 dan 0 gacha) := (boshqalar => '0'); data_in:in std_logic_vector(kenglik_d-1 0 gacha);

Intel FPGA butun sonli arifmetik IP yadrolari foydalanuvchi qo‘llanmasi 58

Fikr-mulohaza yuborish

9. ALTMEMMULT (xotiraga asoslangan doimiy koeffitsient multiplikatori) IP yadrosi 683490 | 2020.10.05

load_done:out std_logic; natija: std_logic_vector tashqari (width_r-1 dan 0 gacha); result_valid:out std_logic; sclr:in std_logic := '0'; sel: std_logic_vectorda (width_s-1 dan 0 gacha) := (boshqalar => '0'); sload_coeff: std_logicda := '0'; sload_data: std_logicda := '0'); yakuniy komponent;

9.4. Portlar

Quyidagi jadvallarda ALTMEMMULT IP yadrosi uchun kirish va chiqish portlari keltirilgan.

37-jadval. ALTMEMMULT kirish portlari

Port nomi

Majburiy

Tavsif

soat

Ha

Multiplikatorga soat kiritish.

koef_in[]

Yo'q

Multiplikator uchun koeffitsient kiritish porti. Kirish portining o'lchami WIDTH_C parametr qiymatiga bog'liq.

data_in[]

Ha

Multiplikatorga ma'lumotlarni kiritish porti. Kirish portining o'lchami WIDTH_D parametr qiymatiga bog'liq.

sclr

Yo'q

Sinxron aniq kiritish. Agar foydalanilmasa, standart qiymat faol yuqori bo'ladi.

sel[]

Yo'q

Ruxsat etilgan koeffitsientni tanlash. Kirish portining o'lchami WIDTH_S ga bog'liq

parametr qiymati.

sload_coeff

Yo'q

Sinxron yuk koeffitsientini kiritish porti. Joriy tanlangan koeffitsient qiymatini koeffitsient kiritishda ko'rsatilgan qiymat bilan almashtiradi.

sload_data

Yo'q

Sinxron yuk ma'lumotlarini kiritish porti. Yangi ko'paytirish amalini belgilaydigan va mavjud ko'paytirish amallarini bekor qiluvchi signal. Agar MAX_CLOCK_CYCLES_PER_RESULT parametri 1 qiymatiga ega bo'lsa, sload_data kiritish porti e'tiborga olinmaydi.

38-jadval. ALTMEMMULT chiqish portlari

Port nomi

Majburiy

Tavsif

natija[]

Ha

Multiplikator chiqish porti. Kirish portining o'lchami WIDTH_R parametr qiymatiga bog'liq.

natija_valid

Ha

To'liq ko'paytirishning haqiqiy natijasi qachon chiqishini ko'rsatadi. Agar MAX_CLOCK_CYCLES_PER_RESULT parametri 1 qiymatiga ega bo'lsa, result_valid chiqish porti ishlatilmaydi.

yuklangan_bajarildi

Yo'q

Yangi koeffitsient yuklashni tugatganini ko'rsatadi. load_done signali yangi koeffitsient yuklashni tugatganini tasdiqlaydi. Agar load_done signali yuqori bo'lmasa, xotiraga boshqa koeffitsient qiymatini yuklab bo'lmaydi.

9.5. Parametrlar

Quyidagi jadvalda ALTMEMMULT IP yadrosi parametrlari keltirilgan.

39-jadval.
WIDTH_D WIDTH_C

ALTMEMMULT parametrlari
Parametr nomi

Turi Majburiy

Tavsif

Butun son Ha

data_in[] portining kengligini belgilaydi.

Butun son Ha

coeff_in[] portining kengligini belgilaydi. davom etdi…

Fikr-mulohaza yuborish

Intel FPGA butun sonli arifmetik IP yadrolari foydalanuvchi qo‘llanmasi 59

9. ALTMEMMULT (xotiraga asoslangan doimiy koeffitsient multiplikatori) IP yadrosi 683490 | 2020.10.05

Parametr nomi WIDTH_R WIDTH

Hujjatlar / manbalar

intel FPGA butun sonli arifmetik IP yadrolari [pdf] Foydalanuvchi uchun qoʻllanma
FPGA butun sonli arifmetik IP yadrolari, butun sonli arifmetik IP yadrolari, arifmetik IP yadrolari, IP yadrolari

Ma'lumotnomalar

Fikr qoldiring

Sizning elektron pochta manzilingiz nashr etilmaydi. Majburiy maydonlar belgilangan *