FPGA Целобројни аритметички IP јадра
Корисничко упатство за аритметички IP јадра на Intel FPGA
Ажурирано за Intel® Quartus® Prime Design Suite: 20.3
Онлајн верзија Испрати повратни информации
UG-01063
ID: 683490 Верзија: 2020.10.05
Содржини
Содржини
1. Интел FPGA Целобројни аритметички IP јадра…………………………………………………………………….. 5
2. LPM_COUNTER (бројач) IP-јадро…………………………………………………………………………….. 7 2.1. Карактеристики…………………………………………………………………………………………………7 2.2. Прототип на Verilog HDL………………………………………………………………………………….. 8 2.3. Декларација за VHDL компонента…………………………………………………………………………….8 2.4. VHDL LIBRARY_USE Декларација……………………………………………………………………… 9 2.5. Пристаништа……………………………………………………………………………………………………..9 2.6. Параметри…………………………………………………………………………………………… 10
3. LPM_DIVIDE (Дивидер) Intel FPGA IP-јадро……………………………………………………………….. 12 3.1. Карактеристики…………………………………………………………………………………………………. 12 3.2. Прототип на Verilog HDL……………………………………………………………………………… 12 3.3. Декларација за VHDL компонента……………………………………………………………………….. 13 3.4. VHDL LIBRARY_USE Декларација……………………………………………………………………… 13 3.5. Пристаништа………………………………………………………………………………………………………… 13 3.6. Параметри……………………………………………………………………………………………… 14
4. LPM_MULT (мултипликатор) IP Јадро……………………………………………………………………………… 16 4.1. Карактеристики…………………………………………………………………………………………………. 16 4.2. Прототип на Verilog HDL……………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………… Декларација за VHDL компонента………………………………………………………………………….. 17 4.3. VHDL LIBRARY_USE Декларација…………………………………………………………………… 17 4.4. Сигнали………………………………………………………………………………………………… 17 4.5. Параметри за Stratix V, Arria V, Cyclone V и Intel Cyclone 18 LP уреди……………… 4.6 10. Општо јазиче……………………………………………………………………………………18 4.6.1. Општо 18 Табела……………………………………………………………………………………… 4.6.2 2. Јазиче за цевководи…………………………………………………………………………………… 19 4.6.3. Параметри за Intel Stratix 19, Intel Arria 4.7 и Intel Cyclone 10 GX уреди……….. 10 10. Општо јазиче……………………………………………………………………………………20 4.7.1. Општо 20 Табела……………………………………………………………………………………… 4.7.2 2. Цевковод……………………………………………………………………………………………………………………………………
5. LPM_ADD_SUB (собирач/одземач)…………………………………………………………………………… 22 5.1. Карактеристики…………………………………………………………………………………………………. 22 5.2. Прототип на Verilog HDL………………………………………………………………………………… 23 5.3. Декларација за VHDL компонента………………………………………………………………………….. 23 5.4. VHDL LIBRARY_USE Декларација…………………………………………………………………… 23 5.5. Пристаништа……………………………………………………………………………………………………… 23 5.6. Параметри………………………………………………………………………………………………… 24
6. LPM_COMPARE (Споредувач)…………………………………………………………………………………… 26 6.1. Карактеристики…………………………………………………………………………………………………. 26 6.2. Прототип на Verilog HDL………………………………………………………………………………… 27 6.3. Декларација за VHDL компонента…………………………………………………………………………………………………………………………………………………………………………………………………………………………………………… VHDL LIBRARY_USE Декларација…………………………………………………………………… 27 6.4. Пристаништа……………………………………………………………………………………………………… 27 6.5. Параметри……………………………………………………………………………………………… 27
Корисничко упатство за аритметички IP јадра на Intel FPGA 2
Испрати повратни информации
Содржини
7. ALTECC (Шифра за корекција на грешка: енкодер/декодер) IP-јадро……………………………………… 30
7.1. Карактеристики на шифрирањето на ALTECC…………………………………………………………………………..31 7.2. Прототип на Verilog HDL (ALTECC_ENCODER)……………………………………………………. 32 7.3. Прототип на Verilog HDL (ALTECC_DECODER)………………………………………………………. 32 7.4. Декларација на VHDL компонента (ALTECC_ENCODER)………………………………………………33 7.5. Декларација на VHDL компонента (ALTECC_DECODER)…………………………………………………33 7.6. VHDL LIBRARY_USE Декларација…………………………………………………………………… 33 7.7. Порти на енкодерот……………………………………………………………………………………………………………… 33 7.8. Порти за декодер……………………………………………………………………………………………………………… 34 7.9. Параметри на енкодерот……………………………………………………………………………………………… 34 7.10. Параметри на декодерот …………………………………………………………………………………… 35
8. Intel FPGA Множење на IP-јадро на собирач……………………………………………………………………………. 36
8.1. Карактеристики…………………………………………………………………………………………………. 37 8.1.1. Пред-собирач…………………………………………………………………………………….. 38 8.1.2. Систолен регистер за доцнење…………………………………………………………………….. 40 8.1.3. Константа на пред-оптоварување……………………………………………………………………………… 43 8.1.4. Двоен акумулатор…………………………………………………………………… 43
8.2. Прототип на Verilog HDL……………………………………………………………………………… 44 8.3. Декларација за VHDL компонента……………………………………………………………………….. 44 8.4. VHDL LIBRARY_USE Декларација……………………………………………………………………… 44 8.5. Сигнали……………………………………………………………………………………………… 44 8.6. Параметри…………………………………………………………………………………………… 47
8.6.1. Општо табло………………………………………………………………………………………47 8.6.2. Картичка за дополнителни режими…………………………………………………………………………….. 47 8.6.3. Табела со множители…………………………………………………………………………………………….. 49 8.6.4. Табела Preadder…………………………………………………………………………………. 51 8.6.5. Картичка за акумулатор…………………………………………………………………………….. 53 8.6.6. Систолен/Cainout таб…………………………………………………………………………. 55 8.6.7. Јазиче за цевководи………………………………………………………………………………… 56
9. ALTMEMMULT (множител на константен коефициент базиран на меморија) IP Core……………………… 57
9.1. Карактеристики…………………………………………………………………………………………………. 57 9.2. Прототип на Verilog HDL……………………………………………………………………………… 58 9.3. Декларација за VHDL компонента……………………………………………………………………….. 58 9.4. Пристаништа…………………………………………………………………………………………………… 59 9.5. Параметри…………………………………………………………………………………………… 59
10. ALTMULT_ACCUM (Multiply-Acumulate) IP-јадро…………………………………………………… 61
10.1. Карактеристики…………………………………………………………………………………………….. 62 10.2. Прототип на Verilog HDL…………………………………………………………………………..62 10.3. Декларација за VHDL компонента………………………………………………………………………… 63 10.4. VHDL BIBRARY_USE Декларација………………………………………………………………………………………………………………………………………………………………… 63 10.5. Пристаништа…………………………………………………………………………………………………………. 63 10.6. Параметри……………………………………………………………………………………………. 64
11. ALTMULT_ADD (Multiply-Adder) IP-јадро……………………………………………………………..69
11.1. Карактеристики…………………………………………………………………………………………….. 71 11.2. Прототип на Verilog HDL…………………………………………………………………………..72 11.3. Декларација за VHDL компонента………………………………………………………………………… 72 11.4. VHDL LIBRARY_USE Декларација……………………………………………………………………72
Испрати повратни информации
Корисничко упатство за аритметички IP јадра на Intel FPGA 3
Содржини
11.5. Пристаништа…………………………………………………………………………………………………………. 72 11.6. Параметри……………………………………………………………………………………………. 73
12. ALTMULT_COMPLEX (Комплексен мултипликатор) IP-јадро………………………………………………… 86 12.1. Комплексно множење……………………………………………………………………………. 86 12.2. Канонско претставување…………………………………………………………………………… 87 12.3. Конвенционално претставување…………………………………………………………………………. 87 12.4. Карактеристики…………………………………………………………………………………………….. 88 12.5. Прототип на Verilog HDL…………………………………………………………………………..88 12.6. Декларација за VHDL компонента…………………………………………………………………………………………………………………………………………………………………… VHDL LIBRARY_USE Декларација……………………………………………………………………89 12.7. Сигнали…………………………………………………………………………………………………. 89 12.8. Параметри……………………………………………………………………………………………. 89
13. ALTSQRT (целоброен квадратен корен) IP-јадро………………………………………………………………92 13.1. Карактеристики…………………………………………………………………………………………….. 92 13.2. Прототип на Verilog HDL…………………………………………………………………………..92 13.3. Декларација за VHDL компонента…………………………………………………………………………… 93 13.4. VHDL LIBRARY_USE Декларација……………………………………………………………………93 13.5. Пристаништа…………………………………………………………………………………………………………. 93 13.6. Параметри……………………………………………………………………………………………. 94
14. PARALLEL_ADD (Паралелен собирач) IP-јадро……………………………………………………………….. 95 14.1. Карактеристика…………………………………………………………………………………………….95 14.2. Прототип на Verilog HDL…………………………………………………………………………..95 14.3. Декларација на VHDL компонента…………………………………………………………………………… 96 14.4. VHDL LIBRARY_USE Декларација…………………………………………………………………96 14.5. Пристаништа…………………………………………………………………………………………………………. 96 14.6. Параметри……………………………………………………………………………………………. 97
15. Корисничко упатство за аритметички IP јадра Архиви на документи……………………………………… 98
16. Корисничко упатство за историја на ревизии на документи за Intel FPGA со целобројни аритметички IP јадра…. 99
Корисничко упатство за аритметички IP јадра на Intel FPGA 4
Испрати повратни информации
683490 | 2020.10.05 Испрати повратни информации
1. Интел FPGA Целобројни аритметички IP јадра
Можете да ги користите Intel® FPGA целобројните IP јадра за извршување на математички операции во вашиот дизајн.
Овие функции нудат поефикасна логичка синтеза и имплементација на уредот отколку кодирање на вашите сопствени функции. Можете да ги приспособите IP-јадрата за да одговараат на вашите барања за дизајн.
Целобројните аритметички IP јадра на Интел се поделени во следните две категории: · Библиотека на параметриизирани модули (LPM) IP јадра · Интел-специфични (ALT) IP-јадра
Следната табела ги наведува целобројните аритметички IP јадра.
Табела 1.
Список на IP јадра
IP јадра
LPM IP јадра
LPM_COUNTER
LPM_DIVIDE
LPM_MULT
LPM_ADD_SUB
LPM_COMPARE
Интел-специфични (ALT) IP-јадра ALTECC
Функција Завршиview Бројач делител мултипликатор
Споредувач на собирач или одземач
ECC енкодер/декодер
Поддржан уред
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, циклон IV E, циклон IV GX, циклон V, Intel Cyclone 10 LP, MAX 10, MAX
II, MAX V, Стратикс IV, Стратикс V
Arria II GX, Arria II GZ, Arria V, циклон IV E, циклон IV GX, циклон V, Intel Cyclone 10 LP, MAX 10, MAX
II, MAX V, Стратикс IV, Стратикс 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, Стратикс IV, Стратикс V продолжи…
Интел корпорација. Сите права се задржани. Intel, логото на Intel и другите ознаки на Intel се заштитни знаци на Intel Corporation или нејзините подружници. Интел гарантира изведба на своите FPGA и полупроводнички производи според тековните спецификации во согласност со стандардната гаранција на Интел, но го задржува правото да прави промени на сите производи и услуги во секое време без претходна најава. Интел не превзема никаква одговорност или одговорност што произлегува од апликацијата или употребата на какви било информации, производ или услуга опишани овде, освен како што е изрично договорено во писмена форма од страна на Intel. На клиентите на Intel им се препорачува да ја добијат најновата верзија на спецификациите на уредот пред да се потпрат на какви било објавени информации и пред да направат нарачки за производи или услуги. *Други имиња и брендови може да се бараат како сопственост на други.
Регистриран ISO 9001:2015
1. Intel FPGA Целобројни аритметички IP јадра 683490 | 2020.10.05
IP-јадра Intel FPGA множи собирач или ALTERA_MULT_ADD ALTMEMMULT
ALTMULT_ACCUM ALTMULT_ADD ALTMULT_COMPLEX
ALTSQRT
PARALLEL_ADD
Функција Завршиview Мултипликатор-собирач
Мемориски множител на константен коефициент
Multiplier-Acumulator Multiplier-Adder
Комплексен мултипликатор
Цел број квадратен корен
Паралелен собирач
Поддржан уред
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
Циклон 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, циклон IV E, циклон IV GX, циклон 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, Стратикс IV, Стратикс 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, Стратикс IV, Стратикс V
Поврзани информации
· Белешки за издавање на Intel FPGA и програмибилни уреди
· Вовед во Intel FPGA IP-јадра Обезбедува повеќе информации за Intel FPGA IP-јадра.
· Упатство за корисникот со Floating-Point IP Cores Обезбедува повеќе информации за Intel FPGA Floating-Point IP-јадра.
· Вовед во Intel FPGA IP-јадра Обезбедува општи информации за сите Intel FPGA IP-јадра, вклучувајќи параметризирање, генерирање, надградба и симулирање на IP-јадра.
· Создавање скрипти за симулација на IP и Qsys независни од верзија Создадете скрипти за симулација за кои не се потребни рачни ажурирања за надградба на софтвер или IP верзија.
· Упатства за најдобри практики за управување со проекти за ефикасно управување и преносливост на вашиот проект и IP files.
· Целобројни аритметички IP јадра Упатство за корисникот Архиви на документи на страница 98 Обезбедува листа на кориснички водичи за претходните верзии на јадрата за IP со цели броеви аритметички.
Корисничко упатство за аритметички IP јадра на Intel FPGA 6
Испрати повратни информации
683490 | 2020.10.05 Испрати повратни информации
2. LPM_COUNTER (бројач) IP-јадро
Слика 1.
LPM_COUNTER IP-јадрото е бинарен бројач што создава бројачи нагоре, надолу и бројачи нагоре или надолу со излези до 256 бита широки.
Следната слика ги прикажува портите за LPM_COUNTER IP-јадрото.
LPM_COUNTER Порти
LPM_COUNTER
ssclr sload sset податоци[]
q[]
горе долу
коут
aclr aload aset
clk_en cnt_en cin
инст
2.1. Карактеристики
Јадрото LPM_COUNTER IP ги нуди следните карактеристики: · Генерира бројачи нагоре, надолу и нагоре/надолу · Ги генерира следните типови бројачи:
— Обичен бинарен – бројачот се зголемува почнувајќи од нула или се намалува почнувајќи од 255
— Модул – бројачот се зголемува на или се намалува од вредноста на модулот одредена од корисникот и се повторува
· Поддржува изборни синхрони влезни порти за бришење, вчитување и поставување · Поддржува опционални асинхрони порти за бришење, вчитување и поставување на влезови · Поддржува изборни влезни порти за овозможување и овозможување на часовникот · Поддржува опционални порти за носење и носење
Интел корпорација. Сите права се задржани. Intel, логото на Intel и другите ознаки на Intel се заштитни знаци на Intel Corporation или нејзините подружници. Интел гарантира изведба на своите FPGA и полупроводнички производи според тековните спецификации во согласност со стандардната гаранција на Интел, но го задржува правото да прави промени на сите производи и услуги во секое време без претходна најава. Интел не превзема никаква одговорност или одговорност што произлегува од апликацијата или употребата на какви било информации, производ или услуга опишани овде, освен како што е изрично договорено во писмена форма од страна на Intel. На клиентите на Intel им се препорачува да ја добијат најновата верзија на спецификациите на уредот пред да се потпрат на какви било објавени информации и пред да направат нарачки за производи или услуги. *Други имиња и брендови може да се бараат како сопственост на други.
Регистриран ISO 9001:2015
2. LPM_COUNTER (бројач) IP-јадро
683490 | 2020.10.05
2.2. Прототип на Verilog HDL
Следниот прототип на Verilog HDL се наоѓа во Verilog Design File (.v) lpm.v во директориум за едасинтеза.
модул lpm_counter (q, податоци, часовник, cin, cout, clk_en, cnt_en, updown, aset, aclr, aload, sset, sclr, sload, eq ); параметар lpm_type = „lpm_counter“; параметар lpm_width = 1; параметар lpm_modulus = 0; параметар lpm_direction = „НЕКОРИСТЕНО“; параметар lpm_value = „НЕКОРИСТЕНИ“; параметар lpm_svalue = „НЕКОРИСТЕНИ“; параметар lpm_pvalue = „НЕКОРИСТЕНО“; параметар lpm_port_updown = „PORT_CONNECTIVITY“; параметар lpm_hint = „НЕКОРИСТЕНО“; излез [lpm_width-1:0] q; излезен излез; излез [15:0] изедначување; влезен cin; внесување [lpm_width-1:0] податоци; влезен часовник, clk_en, cnt_en, нагоре; влезно средство, aclr, aload; влезен сет, sclr, sload; крајниот модул
2.3. VHDL декларација за компоненти
Декларацијата на компонентата VHDL се наоѓа во дизајнот VHDL File (.vhd) LPM_PACK.vhd во librariesvhdllpm директориум.
генеричка компонента LPM_COUNTER ( LPM_WIDTH : природен; LPM_MODULUS : природен := 0; LPM_DIRECTION : низа := „НЕКОРИСТЕНИ“; LPM_AVALUE: низа := „НЕКОРИСТЕНИ“; LPM_SVALUE: низа := „UNUSPORT_PORTY“DOWNOW; ; порта (податоци: во std_logic_vector(LPM_WIDTH-1 до 0):= (OTHERS =>
„0“); ЧАСОВНИК: во std_logic; CLK_MK : во std_logic := '1'; CNT_MK : во std_logic := '1'; UPDOWN : во std_logic := '1'; SLOAD : во std_logic := '0'; SSET : во std_logic := '0'; SCLR : во std_logic := '0'; ALOAD : во std_logic := '0'; ASET : во std_logic := '0'; ACLR : во std_logic := '0'; CIN : во std_logic := '1'; COUT : out std_logic := '0'; П: од std_logic_vector (LPM_WIDTH-1 до 0); EQ : надвор std_logic_vector (15 до 0));
крајна компонента;
Корисничко упатство за аритметички IP јадра на Intel FPGA 8
Испрати повратни информации
2. LPM_COUNTER (бројач) IP Core 683490 | 2020.10.05
2.4. VHDL LIBRARY_USE Декларација
Декларацијата за КОРИСТЕЊЕ НА ЛИБЛИОТЕКА VHDL не е потребна ако ја користите декларацијата за компоненти на VHDL.
БИБЛИОТЕКА lpm; КОРИСТЕТЕ lpm.lpm_components.all;
2.5. Пристаништа
Следните табели ги наведуваат влезните и излезните порти за LPM_COUNTER IP-јадрото.
Табела 2.
LPM_COUNTER Влезни порти
Име на порта
Задолжително
Опис
податоци[]
бр
Паралелно внесување податоци во бројачот. Големината на влезната порта зависи од вредноста на параметарот LPM_WIDTH.
часовник
Да
Влез на часовникот со позитивни рабови.
clk_en
бр
Часовникот овозможува внесување за да ги овозможи сите синхрони активности. Ако се испушти, стандардната вредност е 1.
cnt_en
бр
Count овозможи внесување за да се оневозможи броењето кога е наведено ниско без да влијае на sload, sset или sclr. Ако се испушти, стандардната вредност е 1.
горе долу
бр
Ја контролира насоката на броењето. Кога е наведено високо (1), насоката на броење е нагоре, а кога е наведена ниска (0), насоката на броење е надолу. Ако се користи параметарот LPM_DIRECTION, портата нагоре надолу не може да се поврзе. Ако LPM_DIRECTION не се користи, портата нагоре надолу е изборна. Ако се испушти, стандардната вредност е нагоре (1).
cin
бр
Внесете го во битот со низок ред. За горните бројачи, однесувањето на влезот cin е
идентично со однесувањето на влезот cnt_en. Ако се испушти, стандардната вредност е 1
(VCC).
aclr
бр
Асинхроно јасен влез. Ако и средството и aclr се користат и се наметнуваат, aclr го отфрла средството. Ако се испушти, стандардната вредност е 0 (оневозможена).
средство
бр
Асинхроно сет влез. Ги одредува излезите q[] како сите 1, или на вредноста одредена од параметарот LPM_AVALUE. Ако се користат и се наметнуваат и приклучоците за асет и за aclr, вредноста на пристаништето за aclr ја надминува вредноста на портата за средството. Ако се испушти, стандардната вредност е 0, оневозможена.
оптоварување
бр
Асинхронен влез за оптоварување кој асинхроно го вчитува бројачот со вредноста на влезот на податоци. Кога се користи портата за оптоварување, портата за податоци[] мора да биде поврзана. Ако се испушти, стандардната вредност е 0, оневозможена.
sclr
бр
Синхроно јасен влез што го брише бројачот на следниот активен раб на часовникот. Ако и портите sset и sclr се користат и се наметнуваат, вредноста на портата sclr ја надминува вредноста на портата за sset. Ако се испушти, стандардната вредност е 0, оневозможена.
сет
бр
Синхронен влезен сет што го поставува бројачот на следниот активен раб на часовникот. Ја одредува вредноста на q излезите како сите 1, или на вредноста одредена од параметарот LPM_SVALUE. Ако се користат и се наметнуваат и портите sset и sclr,
вредноста на пристаништето за sclr ја надминува вредноста на портата за сет. Ако се испушти, стандардната вредност е 0 (оневозможена).
оптоварување
бр
Синхронен влез за оптоварување што го вчитува бројачот со податоци[] на следниот активен раб на часовникот. Кога се користи портата за оптоварување, мора да се поврзе портата за податоци[]. Ако се испушти, стандардната вредност е 0 (оневозможена).
Испрати повратни информации
Корисничко упатство за аритметички IP јадра на Intel FPGA 9
2. LPM_COUNTER (бројач) IP Core 683490 | 2020.10.05
Табела 3.
LPM_COUNTER Излезни порти
Име на порта
Задолжително
Опис
q[]
бр
Излез на податоци од бројачот. Големината на излезната порта зависи од
Вредност на параметарот LPM_WIDTH. Или q[] или барем една од портите eq[15..0]
мора да биде поврзан.
eq[15..0]
бр
Излез за декодирање бројач. Портата eq[15..0] не е достапна во уредувачот на параметри бидејќи параметарот поддржува само AHDL.
Мора да се поврзе или портата q[] или портата eq[]. Може да се користат до c eq порти (0 <= c <= 15). Само 16-те најниски вредности на брои се дешифрирани. Кога вредноста на броењето е c, излезот eqc се потврдува високо (1). За прample, кога броењето е 0, eq0 = 1, кога броењето е 1, eq1 = 1, и кога броењето е 15, Eq 15 = 1. Декодираниот излез за вредности на брои од 16 или повеќе бара надворешно декодирање. Излезите eq[15..0] се асинхрони со излезот q[].
коут
бр
Изведена порта на битот MSB на бројачот. Може да се користи за поврзување со друг бројач за да се создаде поголем бројач.
2.6. Параметри
Следната табела ги наведува параметрите за јадрото LPM_COUNTER IP.
Табела 4.
LPM_COUNTER Параметри
Име на параметар
Тип
LPM_WIDTH
Цел број
LPM_DIRECTION
Низа
LPM_MODULUS LPM_AVALUE
Цел број
Цел број/ Низа
LPM_SVALUE LPM_HINT
Цел број/ Низа
Низа
LPM_TYPE
Низа
Задолжително Да Не Не Не
Не Не
бр
Опис
Ја одредува ширината на податочните[] и q[] портите, доколку се користат.
Вредностите се ГОРЕ, ДОЛУ и НЕКОРИСТЕНИ. Ако се користи параметарот LPM_DIRECTION, портата нагоре надолу не може да се поврзе. Кога портата нагоре надолу не е поврзана, стандардната вредност на параметарот LPM_DIRECTION е ГОРЕ.
Максималниот број, плус еден. Број на единствени состојби во циклусот на бројачот. Ако вредноста на оптоварувањето е поголема од параметарот LPM_MODULUS, однесувањето на бројачот не е одредено.
Постојана вредност што се вчитува кога средството е наведено високо. Ако наведената вредност е поголема или еднаква на , однесувањето на бројачот е недефинирано (X) логичко ниво, каде е LPM_MODULUS, доколку е присутен, или 2 ^ LPM_WIDTH. Интел препорачува да ја наведете оваа вредност како децимален број за дизајните на AHDL.
Постојана вредност што се вчитува на растечкиот раб на портата на часовникот кога портата за сет е поставена високо. Интел препорачува да ја наведете оваа вредност како децимален број за дизајните на AHDL.
Кога инстанцирате библиотека со параметриизирани модули (LPM) функционираат во VHDL дизајн File (.vhd), мора да го користите параметарот LPM_HINT за да одредите параметар специфичен за Интел. За прample: LPM_HINT = „CHAIN_SIZE = 8, ONE_INPUT_IS_CONSTANT = ДА“
Стандардната вредност е НЕКОРИСТЕНА.
Ја идентификува библиотеката на параметризирани модули (LPM) име на ентитет во дизајнот VHDL files.
продолжи…
Корисничко упатство за аритметички IP јадра на Intel FPGA 10
Испрати повратни информации
2. LPM_COUNTER (бројач) IP Core 683490 | 2020.10.05
Име на параметар INTENDED_DEVICE_FAMILY CARRY_CNT_EN
LABWIDE_SCLR
LPM_PORT_UPDOWN
Внесете низа низа
Низа
Низа
Потребно бр
бр
бр
Опис
Овој параметар се користи за моделирање и симулација на однесувањето. Овој параметар се користи за моделирање и симулација на однесувањето. Уредувачот на параметри ја пресметува вредноста за овој параметар.
Специфичен параметар за Интел. Мора да го користите параметарот LPM_HINT за да го одредите параметарот CARRY_CNT_EN во дизајнот VHDL fileс. Вредностите се ПАМЕТНИ, ВКЛУЧЕНИ, ИСКЛУЧЕНИ и НЕКОРИСТЕНИ. Овозможува функцијата LPM_COUNTER да го шири сигналот cnt_en низ синџирот за носење. Во некои случаи, поставката за параметар CARRY_CNT_EN може да има мало влијание врз брзината, па можеби ќе сакате да ја исклучите. Стандардната вредност е SMART, која обезбедува најдобра размена помеѓу големината и брзината.
Специфичен параметар за Интел. Мора да го користите параметарот LPM_HINT за да го одредите параметарот LABWIDE_SCLR во дизајнот VHDL fileс. Вредностите се ВКЛУЧЕНИ, ИСКЛУЧЕНИ или НЕКОРИСТЕНИ. Стандардната вредност е ВКЛУЧЕНО. Ви овозможува да ја оневозможите употребата на одликата LABwide sclr што се наоѓа во застарените фамилии на уреди. Исклучувањето на оваа опција ги зголемува шансите за целосно користење на делумно пополнетите ЛАБ, и на тој начин може да дозволи поголема логичка густина кога SCLR не се применува на целосна ЛАБ. Овој параметар е достапен за компатибилност наназад и Интел ви препорачува да не го користите овој параметар.
Го одредува користењето на влезната порта нагоре надолу. Ако се испушти, стандардната вредност е PORT_CONNECTIVITY. Кога вредноста на портата е поставена на PORT_USED, портата се третира како користена. Кога вредноста на портата е поставена на PORT_UNUSED, портата се третира како неискористена. Кога вредноста на портата е поставена на PORT_CONNECTIVITY, употребата на портата се одредува со проверка на поврзувањето на портата.
Испрати повратни информации
Корисничко упатство за аритметички IP јадра на Intel FPGA 11
683490 | 2020.10.05 Испрати повратни информации
3. LPM_DIVIDE (Дивидер) Intel FPGA IP Core
Слика 2.
LPM_DIVIDE Intel FPGA IP јадрото имплементира делител за да се подели влезната вредност на броителот со влезната вредност на именителот за да се произведе количник и остаток.
Следната слика ги прикажува портите за LPM_DIVIDE IP-јадрото.
LPM_DIVIDE Порти
LPM_DIVIDE
број[] деном[] часовник
количник[] останува[]
clken aclr
инст
3.1. Карактеристики
Јадрото LPM_DIVIDE IP ги нуди следните карактеристики: · Генерира делител што ја дели влезната вредност на броител со влезен именител
вредност за да се произведе количник и остаток. · Поддржува ширина на податоци од 1 бита. · Поддржува формат за претставување на податоци со потпишан и непотпишан и за броителот
и вредностите на именителот. · Поддржува оптимизација на областа или брзината. · Обезбедува опција за одредување позитивен остаток на излез. · Поддржува доцнење на излезната конфигурација на цевководи. · Поддржува опционални асинхрони порти за чисти и часовник за овозможување.
3.2. Прототип на Verilog HDL
Следниот прототип на Verilog HDL се наоѓа во Verilog Design File (.v) lpm.v во директориум за едасинтеза.
модул lpm_divide ( количник, останување, број, деном, часовник, clken, aclr); параметар lpm_type = „lpm_divide“; параметар lpm_widthn = 1; параметар lpm_widthd = 1; параметар lpm_nrepresentation = „НЕПИСТИГНАТ“; параметар lpm_drepresentation = „НЕПИСТИГНАТ“; параметар lpm_remainderpositive = „ВИСТИНА“; параметар lpm_цевковод = 0;
Интел корпорација. Сите права се задржани. Intel, логото на Intel и другите ознаки на Intel се заштитни знаци на Intel Corporation или нејзините подружници. Интел гарантира изведба на своите FPGA и полупроводнички производи според тековните спецификации во согласност со стандардната гаранција на Интел, но го задржува правото да прави промени на сите производи и услуги во секое време без претходна најава. Интел не превзема никаква одговорност или одговорност што произлегува од апликацијата или употребата на какви било информации, производ или услуга опишани овде, освен како што е изрично договорено во писмена форма од страна на Intel. На клиентите на Intel им се препорачува да ја добијат најновата верзија на спецификациите на уредот пред да се потпрат на какви било објавени информации и пред да направат нарачки за производи или услуги. *Други имиња и брендови може да се бараат како сопственост на други.
Регистриран ISO 9001:2015
3. LPM_DIVIDE (Дивидер) Intel FPGA IP Core 683490 | 2020.10.05
параметар lpm_hint = „НЕКОРИСТЕНО“; влезен часовник; внесете ккен; влез aclr; внесување [lpm_widthn-1:0] број; влез [lpm_widthd-1:0] деном; излез [lpm_widthn-1:0] количник; остануваат излезот [lpm_widthd-1:0]; крајниот модул
3.3. VHDL декларација за компоненти
Декларацијата на компонентата VHDL се наоѓа во дизајнот VHDL File (.vhd) LPM_PACK.vhd во librariesvhdllpm директориум.
генеричка компонента LPM_DIVIDE (LPM_WIDTHN : природен; LPM_WIDTHD: природен;
LPM_NREPRESENTATION : стринг := „НЕПИСТИГНАТ“; LPM_DREPRESENTATION : стринг := „UNSIGNED“; LPM_PIPELINE : природен := 0; LPM_TYPE : низа := L_DIVIDE; LPM_HINT : низа := „НЕКОРИСТЕНИ“); порта (NUMER : во std_logic_vector (LPM_WIDTHN-1 до 0); DENOM : во std_logic_vector (LPM_WIDTHD-1 до 0); ACLR: во std_logic := '0'; CLOCK : во std_logic := 'EN_logic'; := '0'; крајна компонента;
3.4. VHDL LIBRARY_USE Декларација
Декларацијата за КОРИСТЕЊЕ НА ЛИБЛИОТЕКА VHDL не е потребна ако ја користите декларацијата за компоненти на VHDL.
БИБЛИОТЕКА lpm; КОРИСТЕТЕ lpm.lpm_components.all;
3.5. Пристаништа
Следните табели ги наведуваат влезните и излезните порти за LPM_DIVIDE IP-јадрото.
Табела 5.
Влезни порти LPM_DIVIDE
Име на порта
Задолжително
број[]
Да
деном[]
Да
Опис
Внесување податоци од броител. Големината на влезната порта зависи од вредноста на параметарот LPM_WIDTHN.
Внесување податоци од именителот. Големината на влезната порта зависи од вредноста на параметарот LPM_WIDTHD.
продолжи…
Испрати повратни информации
Корисничко упатство за аритметички IP јадра на Intel FPGA 13
3. LPM_DIVIDE (Дивидер) Intel FPGA IP Core 683490 | 2020.10.05
Името на портата кликнува на часовникот
aclr
Потребно бр
бр
Опис
Влез со часовник за употреба преку цевки. За LPM_PIPELINE вредности различни од 0 (стандардно), портата на часовникот мора да биде овозможена.
Часовникот овозможува користење на цевки. Кога пристаништето за clken е наведено високо, операцијата за поделба се одвива. Кога сигналот е слаб, не се случува операција. Ако се испушти, стандардната вредност е 1.
Асинхрона чиста порта што се користи во секое време за ресетирање на гасоводот на сите '0' асинхроно со влезот на часовникот.
Табела 6.
Излезни порти LPM_DIVIDE
Име на порта
Задолжително
Опис
количник[]
Да
Излез на податоци. Големината на излезната порта зависи од LPM_WIDTHN
вредност на параметарот.
остануваат[]
Да
Излез на податоци. Големината на излезната порта зависи од LPM_WIDTHD
вредност на параметарот.
3.6. Параметри
Следната табела ги наведува параметрите за LPM_DIVIDE Intel FPGA IP-јадрото.
Име на параметар
Тип
Задолжително
Опис
LPM_WIDTHN
Цел број
Да
Ги одредува ширините на бројот[] и
количник[] порти. Вредностите се од 1 до 64.
LPM_WIDTHD
Цел број
Да
Ги одредува ширините на деномот[] и
остануваат[] пристаништа. Вредностите се од 1 до 64.
LPM_NREPRESENTATION LPM_DREPRESENTATION
Низа Стринг
бр
Претставување на знакот на влезот од броителот.
Вредностите се ПОТПИШАНИ и НЕПОТПИШАНИ. Кога ова
параметарот е поставен на SIGNED, делителот
го толкува влезот numer[] како потпишан два
дополнување.
бр
Претставување на знакот на влезот на именителот.
Вредностите се ПОТПИШАНИ и НЕПОТПИШАНИ. Кога ова
параметарот е поставен на SIGNED, делителот
го толкува влезот denom[] како потпишани два
дополнување.
LPM_TYPE
Низа
бр
Идентификува библиотека на параметри
модули (LPM) име на ентитет во дизајнот на VHDL
files (.vhd).
LPM_HINT
Низа
бр
Кога ќе инстанцирате библиотека на
параметризирани модули (LPM) функционираат во a
VHDL дизајн File (.vhd), мора да го користите
LPM_HINT параметар за одредување на Intel-
специфичен параметар. За прample: LPM_HINT
= „CHAIN_SIZE = 8,
ONE_INPUT_IS_CONSTANT = ДА“ На
стандардната вредност е НЕКОРИСТЕНА.
LPM_REMAINDERPOSITIVE
Низа
бр
Специфичен параметар за Интел. Мора да го користите
LPM_HINT параметар за да го одредите
LPM_REMAINDERPOSITIVE параметар во
VHDL дизајн fileс. Вредностите се ВИСТИНИ или ЛАЖНИ.
Ако овој параметар е поставен на TRUE, тогаш
вредноста на преостанатата порта[] мора да биде поголема
продолжи…
Корисничко упатство за аритметички IP јадра на Intel FPGA 14
Испрати повратни информации
3. LPM_DIVIDE (Дивидер) Intel FPGA IP Core 683490 | 2020.10.05
Име на параметар
Тип
MAXIMIZE_SPEED
Цел број
LPM_PIPELINE
Цел број
INTENDED_DEVICE_FAMILY SKIP_BITS
Стринг Цел број
Потребен бр
Не Не Не
Опис
од или еднаква на нула. Ако овој параметар е поставен на ТОЧНО, тогаш вредноста на преостанатата порта[] е или нула, или вредноста е ист знак, позитивен или негативен, како вредноста на нумеричката порта. Со цел да се намали површината и да се подобри брзината, Интел препорачува да го поставите овој параметар на ВИСТИНСКИ во операции каде што остатокот мора да биде позитивен или каде што остатокот е неважен.
Специфичен параметар за Интел. Мора да го користите параметарот LPM_HINT за да го одредите параметарот MAXIMIZE_SPEED во дизајнот VHDL fileс. Вредностите се [0..9]. Доколку се користи, софтверот Intel Quartus Prime се обидува да оптимизира специфичен примерок од функцијата LPM_DIVIDE за брзина, наместо за рутирање, и го отфрла поставката на логичката опција Техника за оптимизација. Ако MAXIMIZE_SPEED не се користи, наместо тоа се користи вредноста на опцијата Техника за оптимизација. Ако вредноста на MAXIMIZE_SPEED е 6 или поголема, компајлерот го оптимизира LPM_DIVIDE IP-јадрото за поголема брзина со користење на синџири за носење; ако вредноста е 5 или помала, компајлерот го имплементира дизајнот без ланци за носење.
Го одредува бројот на такт циклуси на латентност поврзани со излезите на количникот[] и преостанатите[]. Вредноста од нула (0) покажува дека не постои латентност и дека е инстанцирана чисто комбинирана функција. Ако се испушти, стандардната вредност е 0 (ненаведена). Не можете да наведете вредност за параметарот LPM_PIPELINE што е повисока од LPM_WIDTHN.
Овој параметар се користи за моделирање и симулација на однесувањето. Уредувачот на параметри ја пресметува вредноста за овој параметар.
Овозможува поефикасна поделба на фракционо битови за да се оптимизира логиката на водечките битови со обезбедување на бројот на водечки GND до јадрото LPM_DIVIDE IP. Наведете го бројот на водечки GND на излезниот количник на овој параметар.
Испрати повратни информации
Корисничко упатство за аритметички IP јадра на Intel FPGA 15
683490 | 2020.10.05 Испрати повратни информации
4. LPM_MULT (Мултипликатор) IP-јадро
Слика 3.
LPM_MULT IP-јадрото имплементира мултипликатор за множење на две вредности на влезни податоци за да се произведе производ како излез.
Следната слика ги прикажува портите за LPM_MULT IP-јадрото.
LPM_Mult Ports
LPM_MULT податоци за часовникот[] резултат[] база на податоци[] aclr/sclr clken
инст
Карактеристики на поврзани информации на страница 71
4.1. Карактеристики
LPM_MULT IP-јадрото ги нуди следниве карактеристики: · Генерира мултипликатор што множи две вредности на влезни податоци · Поддржува ширина на податоци од 1 бита · Поддржува формат за претставени податоци со потпишан и непотпишан · Поддржува оптимизација на областа или брзина · Поддржува цевковод со конфигурабилна излезна латентност · Обезбедува опција за имплементација во посветена дигитална обработка на сигнали (DSP)
блок кола или логички елементи (LEs) Забелешка: Кога се градат множители поголеми од природно поддржаната големина, може/
ќе биде влијание на изведбата што произлегува од каскадирањето на блоковите DSP. · Поддржува опционални асинхрони јасни порти и влезни порти со овозможување часовник · Поддржува опционално синхроно јасно за уредите Intel Stratix 10, Intel Arria 10 и Intel Cyclone 10 GX
Интел корпорација. Сите права се задржани. Intel, логото на Intel и другите ознаки на Intel се заштитни знаци на Intel Corporation или нејзините подружници. Интел гарантира изведба на своите FPGA и полупроводнички производи според тековните спецификации во согласност со стандардната гаранција на Интел, но го задржува правото да прави промени на сите производи и услуги во секое време без претходна најава. Интел не превзема никаква одговорност или одговорност што произлегува од апликацијата или употребата на какви било информации, производ или услуга опишани овде, освен како што е изрично договорено во писмена форма од страна на Intel. На клиентите на Intel им се препорачува да ја добијат најновата верзија на спецификациите на уредот пред да се потпрат на какви било објавени информации и пред да направат нарачки за производи или услуги. *Други имиња и брендови може да се бараат како сопственост на други.
Регистриран ISO 9001:2015
4. LPM_MULT (мултипликатор) IP Core 683490 | 2020.10.05
4.2. Прототип на Verilog HDL
Следниот прототип на Verilog HDL се наоѓа во Verilog Design File (.v) lpm.v во директориум за едасинтеза.
модул lpm_mult (резултат, dataa, datab, sum, clock, clken, aclr ) параметар lpm_type = „lpm_mult“; параметар lpm_widtha = 1; параметар lpm_widthb = 1; параметар lpm_widths = 1; параметар lpm_widthp = 1; параметар lpm_representation = „НЕПИСТИГНАТ“; параметар lpm_цевковод = 0; параметар lpm_hint = „НЕКОРИСТЕНО“; влезен часовник; внесете ккен; влез aclr; внесување [lpm_widtha-1:0] dataa; влезен [lpm_widthb-1:0] база на податоци; влезен [lpm_widths-1:0] сума; излез [lpm_widthp-1:0] резултат; крајниот модул
4.3. VHDL декларација за компоненти
Декларацијата на компонентата VHDL се наоѓа во дизајнот VHDL File (.vhd) LPM_PACK.vhd во librariesvhdllpm директориум.
генеричка компонента LPM_MULT (LPM_WIDTHA: природен; LPM_WIDTHB: природен; LPM_WIDTHS: природен := 1; LPM_WIDTHP: природен;
LPM_REPRESENTATION : стринг := „НЕПИСТИГНАТ“; LPM_PIPELINE : природен := 0; LPM_TYPE: низа := L_MULT; LPM_HINT : низа := „НЕКОРИСТЕНИ“); порта ( ПОДАТОЦИ: во std_logic_vector (LPM_WIDTHA-1 до 0); ПОДАТОЦИ: во std_logic_vector (LPM_WIDTHB-1 до 0); ACLR: во std_logic := '0'; CLOCK: во std_logic := K_EN: во std_logic := '0'; := '1'; крајна компонента;
4.4. VHDL LIBRARY_USE Декларација
Декларацијата за КОРИСТЕЊЕ НА ЛИБЛИОТЕКА VHDL не е потребна ако ја користите декларацијата за компоненти на VHDL.
БИБЛИОТЕКА lpm; КОРИСТЕТЕ lpm.lpm_components.all;
Испрати повратни информации
Корисничко упатство за аритметички IP јадра на Intel FPGA 17
4. LPM_MULT (мултипликатор) IP Core 683490 | 2020.10.05
4.5. Сигнали
Табела 7.
LPM_MULT Влезни сигнали
Име на сигналот
Задолжително
Опис
податоци[]
Да
Внесување податоци.
За уредите Intel Stratix 10, Intel Arria 10 и Intel Cyclone 10 GX, големината на влезниот сигнал зависи од вредноста на параметарот за ширина на Dataa.
За постари и Intel Cyclone 10 LP уреди, големината на влезниот сигнал зависи од вредноста на параметарот LPM_WIDTHA.
база на податоци[]
Да
Внесување податоци.
За уредите Intel Stratix 10, Intel Arria 10 и Intel Cyclone 10 GX, големината на влезниот сигнал зависи од вредноста на параметарот за ширина на Datab.
За постари и Intel Cyclone 10 LP уреди, големината на влезниот сигнал зависи
на вредноста на параметарот LPM_WIDTHB.
часовник
бр
Влез со часовник за употреба преку цевки.
За постари и Intel Cyclone 10 LP уреди, сигналот на часовникот мора да биде овозможен за LPM_PIPELINE вредности различни од 0 (стандардно).
За уредите Intel Stratix 10, Intel Arria 10 и Intel Cyclone 10 GX, сигналот на часовникот мора да биде овозможен ако вредноста на латентноста е различна од 1 (стандардно).
кликен
бр
Овозможува часовник за употреба преку цевки. Кога кликен сигналот е наведен високо, на
се одвива операцијата собирач/одземање. Кога сигналот е слаб, нема работа
се јавува. Ако се испушти, стандардната вредност е 1.
aclr sclr
бр
Асинхрон јасен сигнал што се користи во секое време за ресетирање на гасоводот на сите 0-ки,
асинхроно со сигналот на часовникот. Гасоводот се иницијализира на недефинирано (X)
логичко ниво. Излезите се конзистентна, но не-нулта вредност.
бр
Синхрони јасен сигнал што се користи во секое време за ресетирање на гасоводот на сите 0-ки,
синхроно со сигналот на часовникот. Гасоводот се иницијализира на недефинирано (X)
логичко ниво. Излезите се конзистентна, но не-нулта вредност.
Табела 8.
LPM_MULT Излезни сигнали
сигнал Име
Задолжително
Опис
резултат[]
Да
Излез на податоци.
За постари и Intel Cyclone 10 LP уреди, големината на излезниот сигнал зависи од вредноста на параметарот LPM_WIDTHP. Ако LPM_WIDTHP < макс (LPM_WIDTHA + LPM_WIDTHB, LPM_WIDTHS) или (LPM_WIDTHA + LPM_WIDTHS), присутни се само LPM_WIDTHP MSB.
За Intel Stratix 10, Intel Arria 10 и Intel Cyclone 10 GX, големината на излезните сигнали зависи од параметарот Result width.
4.6. Параметри за Stratix V, Arria V, Cyclone V и Intel Cyclone 10 LP уреди
4.6.1. Општо таб
Табела 9.
Општо таб
Параметар
Вредност
Конфигурација на мултипликатор
Множете го внесувањето „податоци“ со влезот „податоци“.
Стандардна вредност
Опис
Множете го внесувањето „податоци“ со влезот „податоци“.
Изберете ја саканата конфигурација за мултипликаторот.
продолжи…
Корисничко упатство за аритметички IP јадра на Intel FPGA 18
Испрати повратни информации
4. LPM_MULT (мултипликатор) IP Core 683490 | 2020.10.05
Параметар
Колку широк треба да биде влезот „податоци“? Колку широк треба да биде влезот на „податоци“? Како треба да се одреди ширината на излезот „резултат“? Ограничете ја ширината
Вредност
Умножување на внесот „податоци“ сам по себе (операција за квадратирање)
1-256 бита
Стандардна вредност
Опис
8 бита
Наведете ја ширината на портата dataa[].
1-256 бита
8 бита
Наведете ја ширината на пристаништето со datab[].
Автоматско пресметување на ширината Ограничете ја ширината
1-512 бита
Автоматски се пресметува ширината
Изберете го саканиот метод за да ја одредите ширината на портата за резултат[].
16 бита
Наведете ја ширината на портата за резултат[].
Оваа вредност ќе биде ефективна само ако изберете Ограничете ја ширината во параметарот Тип.
4.6.2. Општо 2 таб
Табела 10. Општо 2 Таб
Параметар
Вредност
Внесување на база на податоци
Дали влезната магистрала „податоци“ има константна вредност?
Не Да
Тип на множење
Кој тип на
Непотпишан
множење сакаш? Потпишан
Имплементација
Која имплементација на мултипликатор треба да се користи?
Користете ја стандардната имплементација
Користете го наменското коло за мултипликатор (Не е достапно за сите семејства)
Користете логички елементи
Стандардна вредност
Опис
бр
Изберете Да за да ја одредите константната вредност на
влезна магистрала за „податоци“, доколку ги има.
Непотпишан
Наведете го форматот на претставување и за влезовите dataa[] и datab[].
Користете го стандардниот имплементаторски јон
Изберете го саканиот метод за да ја одредите ширината на портата за резултат[].
4.6.3. Таб за цевководи
Табела 11. Таб
Параметар
Дали сакате да го нафтоводите бр
функција?
Да
Вредност
Создадете „aclr“
—
асинхрона јасна порта
Стандардна вредност
Опис
бр
Изберете Да за да овозможите регистрација на гасоводот во
излезот на мултипликаторот и наведете го саканиот
излезна латентност во циклусот на часовникот. Овозможување на
гасоводот регистар додава дополнителна латентност на
излез.
Отштиклирано
Изберете ја оваа опција за да овозможите пристаништето aclr да користи асинхроно бришење за регистарот на гасоводот.
продолжи…
Испрати повратни информации
Корисничко упатство за аритметички IP јадра на Intel FPGA 19
4. LPM_MULT (мултипликатор) IP Core 683490 | 2020.10.05
Параметар
Создадете „clken“ часовник за овозможување часовник
Оптимизација
Каков тип на оптимизација сакате?
Вредност -
Стандардна област на брзина
Стандардна вредност
Опис
Отштиклирано
Го одредува активното овозможување на висок часовник за часовната порта на регистарот на гасоводот
Стандардно
Наведете ја саканата оптимизација за IP-јадрото.
Изберете Default за да дозволите софтверот Intel Quartus Prime да ја одреди најдобрата оптимизација за IP-јадрото.
4.7. Параметри за уредите Intel Stratix 10, Intel Arria 10 и Intel Cyclone 10 GX
4.7.1. Општо таб
Табела 12. Општо таб
Параметар
Вредност
Стандардна вредност
Опис
Тип на конфигурација на мултипликатор
Ширина на податочна порта
Множете го внесувањето „податоци“ со влезот „податоци“.
Умножување на внесот „податоци“ сам по себе (операција за квадратирање)
Множете го внесувањето „податоци“ со влезот „податоци“.
Изберете ја саканата конфигурација за мултипликаторот.
Ширина на податоците
1-256 бита
8 бита
Наведете ја ширината на портата dataa[].
Ширина на базата на податоци
1-256 бита
8 бита
Наведете ја ширината на пристаништето со datab[].
Како треба да се одреди ширината на излезот „резултат“?
Тип
Автоматски пресметајте ја ширината
Ограничете ја ширината
Автоматски се пресметува ширината
Изберете го саканиот метод за да ја одредите ширината на портата за резултат[].
Вредност
1-512 бита
16 бита
Наведете ја ширината на портата за резултат[].
Оваа вредност ќе биде ефективна само ако изберете Ограничете ја ширината во параметарот Тип.
Ширина на резултатот
1-512 бита
—
Ја прикажува ефективната ширина на портата за резултат[].
4.7.2. Општо 2 таб
Табела 13. Општо 2 Таб
Параметар
Внесување на база на податоци
Дали влезната магистрала „податоци“ има константна вредност?
Не Да
Вредност
Стандардна вредност
Опис
бр
Изберете Да за да ја одредите константната вредност на
влезна магистрала за „податоци“, доколку ги има.
продолжи…
Корисничко упатство за аритметички IP јадра на Intel FPGA 20
Испрати повратни информации
4. LPM_MULT (мултипликатор) IP Core 683490 | 2020.10.05
Параметар
Вредност
Вредност
Секоја вредност поголема од 0
Тип на множење
Кој тип на
Непотпишан
множење сакаш? Потпишан
Стил на имплементација
Која имплементација на мултипликатор треба да се користи?
Користете ја стандардната имплементација
Користете го наменското коло за мултипликатор
Користете логички елементи
Стандардна вредност
Опис
0
Наведете ја константната вредност на портата datab[].
Непотпишан
Наведете го форматот на претставување и за влезовите dataa[] и datab[].
Користете го стандардниот имплементаторски јон
Изберете го саканиот метод за да ја одредите ширината на портата за резултат[].
4.7.3. Цевководење
Табела 14. Таб
Параметар
Вредност
Дали сакате да ја насочите функцијата?
Гасовод
Не Да
Латентност Исчисти тип на сигнал
Секоја вредност поголема од 0.
НИКОЈ ACLR SCLR
Создадете „кликен“ часовник
—
овозможи часовник
Каков тип на оптимизација сакате?
Тип
Стандардна област на брзина
Стандардна вредност
Опис
Бр. 1 НИКОЈ
—
Изберете Да за да овозможите цевководен регистар на излезот на мултипликаторот. Овозможувањето на гасоводниот регистар додава дополнителна латентност на излезот.
Наведете ја саканата излезна латентност во циклусот на часовникот.
Наведете го типот на ресетирање за регистарот на гасоводот. Изберете НИКОЈ ако не користите никаков цевководен регистар. Изберете ACLR за да користите асинхроно чисто за регистарот на гасоводот. Ова ќе генерира ACLR порта. Изберете SCLR за да користите синхрони чисти за цевководниот регистар. Ова ќе генерира SCLR порта.
Го одредува активното овозможување на висок часовник за часовната порта на регистарот на гасоводот
Стандардно
Наведете ја саканата оптимизација за IP-јадрото.
Изберете Default за да дозволите софтверот Intel Quartus Prime да ја одреди најдобрата оптиомизација за IP-јадрото.
Испрати повратни информации
Корисничко упатство за аритметички IP јадра на Intel FPGA 21
683490 | 2020.10.05 Испрати повратни информации
5. LPM_ADD_SUB (собирач/одземач)
Слика 4.
Јадрото LPM_ADD_SUB IP ви овозможува да имплементирате собирач или одземач за да додавате или одземате множества на податоци за да произведете излез што го содржи збирот или разликата на влезните вредности.
Следната слика ги прикажува портите за LPM_ADD_SUB IP-јадрото.
LPM_ADD_SUB порти
LPM_ADD_SUB add_sub cin
податоци[]
часовник clken datab[] aclr
резултат[] преливник
инст
5.1. Карактеристики
LPM_ADD_SUB IP-јадрото ги нуди следните карактеристики: · Генерира собирач, одземач и динамички конфигурирачки собирач/одземање
функции. · Поддржува ширина на податоци од 1 бита. · Поддржува формат за претставување на податоци како што се потпишани и непотпишани. · Поддржува опционално носење (позајмување), асинхроно бришење и овозможување на часовникот
влезни порти. · Поддржува опционални излезни порти за извршување (позајмување) и прелевање. · Доделува една од влезните магистрали на податоци на константа. · Поддржува цевковод со конфигурабилна излезна латентност.
Интел корпорација. Сите права се задржани. Intel, логото на Intel и другите ознаки на Intel се заштитни знаци на Intel Corporation или нејзините подружници. Интел гарантира изведба на своите FPGA и полупроводнички производи според тековните спецификации во согласност со стандардната гаранција на Интел, но го задржува правото да прави промени на сите производи и услуги во секое време без претходна најава. Интел не превзема никаква одговорност или одговорност што произлегува од апликацијата или употребата на какви било информации, производ или услуга опишани овде, освен како што е изрично договорено во писмена форма од страна на Intel. На клиентите на Intel им се препорачува да ја добијат најновата верзија на спецификациите на уредот пред да се потпрат на какви било објавени информации и пред да направат нарачки за производи или услуги. *Други имиња и брендови може да се бараат како сопственост на други.
Регистриран ISO 9001:2015
5. LPM_ADD_SUB (собирач/одземач) 683490 | 2020.10.05
5.2. Прототип на Verilog HDL
Следниот прототип на Verilog HDL се наоѓа во Verilog Design File (.v) lpm.v во директориум за едасинтеза.
модул lpm_add_sub (резултат, коут, прелевање, додавање_под, cin, dataa, datab, часовник, clken, aclr ); параметар lpm_type = „lpm_add_sub“; параметар lpm_width = 1; параметар lpm_direction = „НЕКОРИСТЕНО“; параметар lpm_representation = „ПОТПИШАНО“; параметар lpm_цевковод = 0; параметар lpm_hint = „НЕКОРИСТЕНО“; влез [lpm_width-1:0] dataa, datab; внесете add_sub, cin; влезен часовник; внесете ккен; влез aclr; излез [lpm_width-1:0] резултат; излезен излез, прелевање; крајниот модул
5.3. VHDL декларација за компоненти
Декларацијата на компонентата VHDL се наоѓа во дизајнот VHDL File (.vhd) LPM_PACK.vhd во librariesvhdllpm директориум.
компонента LPM_ADD_SUB генеричка (LPM_WIDTH : природна;
LPM_DIRECTION : низа := „НЕКОРИСТЕНИ“; LPM_REPRESENTATION: стринг := „ПОТПИШАНО“; LPM_PIPELINE : природен := 0; LPM_TYPE : низа := L_ADD_SUB; LPM_HINT : низа := „НЕКОРИСТЕНИ“); порта (DATAA: во std_logic_vector(LPM_WIDTH-1 до 0); ПОДАТОЦИ: во std_logic_vector (LPM_WIDTH-1 до 0); ACLR: во std_logic := '0'; CLOCK: во std_logic := '0': std_EN; := 'CIN': во std_logic := 'Z' крајна компонента;
5.4. VHDL LIBRARY_USE Декларација
Декларацијата за КОРИСТЕЊЕ НА ЛИБЛИОТЕКА VHDL не е потребна ако ја користите декларацијата за компоненти на VHDL.
БИБЛИОТЕКА lpm; КОРИСТЕТЕ lpm.lpm_components.all;
5.5. Пристаништа
Следните табели ги наведуваат влезните и излезните порти за LPM_ADD_SUB IP-јадрото.
Испрати повратни информации
Корисничко упатство за аритметички IP јадра на Intel FPGA 23
5. LPM_ADD_SUB (собирач/одземач) 683490 | 2020.10.05
Табела 15. LPM_ADD_SUB IP Основни влезни порти
Име на порта
Задолжително
Опис
cin
бр
Внеси во битот со низок ред. За операциите за собирање стандардната вредност е 0. За
операции за одземање, стандардната вредност е 1.
податоци[]
Да
Внесување податоци. Големината на влезната порта зависи од вредноста на параметарот LPM_WIDTH.
база на податоци[]
Да
Внесување податоци. Големината на влезната порта зависи од вредноста на параметарот LPM_WIDTH.
add_sub
бр
Изборна влезна порта за овозможување динамично префрлување помеѓу собирачот и одземачот
функции. Ако се користи параметарот LPM_DIRECTION, add_sub не може да се користи. Ако
испуштена, стандардната вредност е ADD. Интел препорачува да го користите
LPM_DIRECTION параметар за одредување на работата на функцијата LPM_ADD_SUB,
наместо да се додели константа на портата add_sub.
часовник
бр
Влез за употреба преку цевки. Часовната порта обезбедува влезен часовник за цевковод
операција. За LPM_PIPELINE вредности различни од 0 (стандардно), портата на часовникот мора да биде
овозможено.
кликен
бр
Овозможува часовник за употреба преку цевки. Кога кликен портот е наведен високо, собирачот/
се одвива операцијата на одземање. Кога сигналот е слаб, не се случува операција. Ако
испуштена, стандардната вредност е 1.
aclr
бр
Асинхроно чисто за употреба со цевки. Гасоводот се иницијализира на недефинирано (X)
логичко ниво. Приклучокот aclr може да се користи во секое време за да се ресетира гасоводот на сите 0-ки,
асинхроно со сигналот на часовникот.
Табела 16. Излезни порти на јадрото на IP IP LPM_ADD_SUB
Име на порта
Задолжително
Опис
резултат[]
Да
Излез на податоци. Големината на излезната порта зависи од параметарот LPM_WIDTH
вредност.
коут
бр
Изведување (позајмување) на најзначајниот бит (MSB). Коут портот има физичка
толкување како извршување (позајмување) на MSB. Коут портот открива
прелевање во НЕПОТПИШАНИ операции. На ист начин работи приклучокот за
ПОТПИШАНИ и НЕПОТПИШАНИ операции.
прелевање
бр
Излез од опционален исклучок од прелевање. Портата за прелевање има физичка интерпретација како
XOR на носењето до MSB со носењето на MSB. Пристаништето за прелевање
тврди кога резултатите ја надминуваат достапната прецизност и се користи само кога
Вредноста на параметарот LPM_REPRESENTATION е SIGNED.
5.6. Параметри
Следната табела ги наведува основните параметри на IP IP LPM_ADD_SUB.
Табела 17. LPM_ADD_SUB Основни параметри на IP
Име на параметар LPM_WIDTH
Тип Цел број
Задолжително Да
Опис
Ги одредува ширините на портите dataa[], datab[] и result[].
LPM_DIRECTION
Низа
бр
Вредностите се ADD, SUB и UNISED. Ако се испушти, стандардната вредност е DEFAULT, што го насочува параметарот да ја земе неговата вредност од портата add_sub. Портата add_sub не може да се користи ако се користи LPM_DIRECTION. Интел препорачува да го користите параметарот LPM_DIRECTION за да ја одредите работата на функцијата LPM_ADD_SUB, наместо да доделите константа на портата add_sub.
продолжи…
Корисничко упатство за аритметички IP јадра на Intel FPGA 24
Испрати повратни информации
5. LPM_ADD_SUB (собирач/одземач) 683490 | 2020.10.05
Име на параметар LPM_REPRESENTATION LPM_PIPELINE LPM_HINT LPM_TYPE ONE_INPUT_IS_CONSTANT MAXIMIZE_SPEED
INTENDED_DEVICE_FAMILY
Тип Стринг Цел број Низа Низа Низа Цел број
Низа
Задолжително Не Не Не Не Не Не Не
бр
Опис
Го одредува типот на извршеното додавање. Вредностите се ПОТПИШАНИ и НЕПОТПИШАНИ. Ако се испушти, стандардната вредност е ПОТПИШАНО. Кога овој параметар е поставен на SIGNED, собирачот/одземачот го толкува внесувањето на податоците како комплемент со потпишани два.
Го одредува бројот на циклуси на часовник на латентност поврзани со излезниот резултат[]. Вредноста од нула (0) покажува дека не постои латентност и дека ќе се инстанцира чисто комбинирана функција. Ако се испушти, стандардната вредност е 0 (ненаведена).
Ви овозможува да наведете параметри специфични за Интел во дизајнот на VHDL files (.vhd). Стандардната вредност е НЕКОРИСТЕНА.
Ја идентификува библиотеката на параметризирани модули (LPM) име на ентитет во дизајнот VHDL files.
Специфичен параметар за Интел. Мора да го користите параметарот LPM_HINT за да го одредите параметарот ONE_INPUT_IS_CONSTANT во дизајнот на VHDL fileс. Вредностите се ДА, НЕ и НЕКОРИСТЕНИ. Обезбедува поголема оптимизација ако еден влез е константен. Ако се испушти, стандардната вредност е НЕ.
Специфичен параметар за Интел. Мора да го користите параметарот LPM_HINT за да го одредите параметарот MAXIMIZE_SPEED во дизајнот VHDL fileс. Може да наведете вредност помеѓу 0 и 10. Доколку се користи, софтверот Intel Quartus Prime се обидува да оптимизира одредена инстанца од функцијата LPM_ADD_SUB за брзина наместо за рутализација и го отфрла поставката на логичката опција за техника за оптимизација. Ако MAXIMIZE_SPEED не се користи, наместо тоа се користи вредноста на опцијата Техника за оптимизација. Ако поставката за MAXIMIZE_SPEED е 6 или повисока, компајлерот го оптимизира јадрото LPM_ADD_SUB IP за поголема брзина користејќи ланци за носење; ако поставката е 5 или помалку, компајлерот го имплементира дизајнот без ланци за носење. Овој параметар мора да биде наведен за уредите Cyclone, Stratix и Stratix GX само кога не се користи портата add_sub.
Овој параметар се користи за моделирање и симулација на однесувањето. Уредувачот на параметри ја пресметува вредноста за овој параметар.
Испрати повратни информации
Корисничко упатство за аритметички IP јадра на Intel FPGA 25
683490 | 2020.10.05 Испрати повратни информации
6. LPM_COMPARE (Компаратор)
Слика 5.
Јадрото LPM_COMPARE IP ја споредува вредноста на две групи податоци за да ја одреди врската помеѓу нив. Во својата наједноставна форма, можете да користите ексклузивно-ИЛИ порта за да одредите дали два бита податоци се еднакви.
Следната слика ги прикажува портите за LPM_COMPARE IP-јадрото.
LPM_COMPARE Пристаништа
LPM_COMPARE
кликен
алб
aeb
податоци[]
agb
база на податоци[]
ageb
часовник
анеб
aclr
алеб
инст
6.1. Карактеристики
Јадрото LPM_COMPARE IP ги нуди следниве карактеристики: · Генерира компараторска функција за споредба на две групи податоци.
— alb (влезот А е помал од влезот Б) — aeb (влезот А е еднаков на влезот Б) — agb (влезот А е поголем од влезот Б) — ageb (влезот А е поголем или еднаков на влезот Б) — aneb ( влезот A не е еднаков на влезот B) — aleb (влезот A е помал или еднаков на влезот B) · Поддржува изборни асинхрони чисти и такт-овозможени влезни порти · Го доделува влезот на datab[] на константа · Поддржува цевковод со конфигурабилна излезна латентност
Интел корпорација. Сите права се задржани. Intel, логото на Intel и другите ознаки на Intel се заштитни знаци на Intel Corporation или нејзините подружници. Интел гарантира изведба на своите FPGA и полупроводнички производи според тековните спецификации во согласност со стандардната гаранција на Интел, но го задржува правото да прави промени на сите производи и услуги во секое време без претходна најава. Интел не превзема никаква одговорност или одговорност што произлегува од апликацијата или употребата на какви било информации, производ или услуга опишани овде, освен како што е изрично договорено во писмена форма од страна на Intel. На клиентите на Intel им се препорачува да ја добијат најновата верзија на спецификациите на уредот пред да се потпрат на какви било објавени информации и пред да направат нарачки за производи или услуги. *Други имиња и брендови може да се бараат како сопственост на други.
Регистриран ISO 9001:2015
6. LPM_COMPARE (Компаратор) 683490 | 2020.10.05
6.2. Прототип на Verilog HDL
Следниот прототип на Verilog HDL се наоѓа во Verilog Design File (.v) lpm.v во директориум за едасинтеза.
модул lpm_compare (alb, aeb, agb, aleb, aneb, ageb, dataa, datab, clock, clken, aclr ); параметар lpm_type = „lpm_compare“; параметар lpm_width = 1; параметар lpm_representation = „НЕПИСТИГНАТ“; параметар lpm_цевковод = 0; параметар lpm_hint = „НЕКОРИСТЕНО“; влез [lpm_width-1:0] dataa, datab; влезен часовник; внесете ккен; влез aclr; излез алб, аеб, агб, алеб, анеб, агеб; крајниот модул
6.3. VHDL декларација за компоненти
Декларацијата на компонентата VHDL се наоѓа во дизајнот VHDL File (.vhd) LPM_PACK.vhd во librariesvhdllpm директориум.
компонента LPM_COMPARE генеричка (LPM_WIDTH : природна;
LPM_REPRESENTATION : стринг := „НЕПИСТИГНАТ“; LPM_PIPELINE : природен := 0; LPM_TYPE: низа := L_COMPARE; LPM_HINT : низа := „НЕКОРИСТЕНИ“); порта (DATAA: во std_logic_vector(LPM_WIDTH-1 до 0); ПОДАТОЦИ: во std_logic_vector (LPM_WIDTH-1 до 0); ACLR: во std_logic := '0'; CLOCK: во std_logic := '0': std_EN; := '1' : out std_logic : out std_logic : out std_logic ; крајна компонента;
6.4. VHDL LIBRARY_USE Декларација
Декларацијата за КОРИСТЕЊЕ НА ЛИБЛИОТЕКА VHDL не е потребна ако ја користите декларацијата за компоненти на VHDL.
БИБЛИОТЕКА lpm; КОРИСТЕТЕ lpm.lpm_components.all;
6.5. Пристаништа
Следните табели ги наведуваат влезните и излезните порти за LMP_COMPARE IP-јадрото.
Испрати повратни информации
Корисничко упатство за аритметички IP јадра на Intel FPGA 27
6. LPM_COMPARE (Компаратор) 683490 | 2020.10.05
Табела 18. Влезни порти на јадрото на IP на LPM_COMPARE
Име на порта
Задолжително
Опис
податоци[]
Да
Внесување податоци. Големината на влезната порта зависи од вредноста на параметарот LPM_WIDTH.
база на податоци[]
Да
Внесување податоци. Големината на влезната порта зависи од вредноста на параметарот LPM_WIDTH.
часовник
бр
Влез со часовник за употреба преку цевки. Часовната порта обезбедува влезен часовник за цевковод
операција. За LPM_PIPELINE вредности различни од 0 (стандардно), портата на часовникот мора да биде
овозможено.
кликен
бр
Овозможува часовник за употреба преку цевки. Кога клкен-портата е наведена висока, на
се одвива споредбена операција. Кога сигналот е слаб, не се случува операција. Ако
испуштена, стандардната вредност е 1.
aclr
бр
Асинхроно чисто за употреба со цевки. Гасоводот се иницијализира до недефинирана (X) логика
ниво. Приклучокот aclr може да се користи во секое време за да се ресетира гасоводот на сите 0-ки,
асинхроно со сигналот на часовникот.
Табела 19. Излезни порти на јадрото на IP на LPM_COMPARE
Име на порта
Задолжително
Опис
алб
бр
Излезна порта за компараторот. Потврдено ако влезот А е помал од влезот Б.
aeb
бр
Излезна порта за компараторот. Потврдено ако влезот А е еднаков на влезот Б.
agb
бр
Излезна порта за компараторот. Потврдено ако влезот А е поголем од влезот Б.
ageb
бр
Излезна порта за компараторот. Потврдено ако влезот А е поголем или еднаков на влезот
B.
анеб
бр
Излезна порта за компараторот. Потврдено ако влезот А не е еднаков на влезот Б.
алеб
бр
Излезна порта за компараторот. Потврдено ако влезот А е помал или еднаков на влезот Б.
6.6. Параметри
Следната табела ги наведува параметрите за јадрото LPM_COMPARE IP.
Табела 20. LPM_COMPARE Параметри на јадрото на IP
Име на параметар
Тип
Задолжително
LPM_WIDTH
Цел број Да
LPM_REPRESENTATION
Низа
бр
LPM_PIPELINE
Цел број бр
LPM_HINT
Низа
бр
Опис
Ја одредува ширината на портите dataa[] и datab[].
Го одредува типот на извршената споредба. Вредностите се ПОТПИШАНИ и НЕПОТПИШАНИ. Ако се испушти, стандардната вредност е НЕПОЗНАВА. Кога оваа вредност на параметарот е поставена на SIGNED, компараторот го толкува внесувањето на податоците како комплемент со потпишани два.
Го одредува бројот на тактни циклуси на латентност поврзани со излезот alb, aeb, agb, ageb, aleb или aneb. Вредноста од нула (0) покажува дека не постои латентност и дека ќе се инстанцира чисто комбинирана функција. Ако се испушти, стандардната вредност е 0 (ненаведена).
Ви овозможува да наведете параметри специфични за Интел во дизајнот на VHDL files (.vhd). Стандардната вредност е НЕКОРИСТЕНА.
продолжи…
Корисничко упатство за аритметички IP јадра на Intel FPGA 28
Испрати повратни информации
6. LPM_COMPARE (Компаратор) 683490 | 2020.10.05
Име на параметар LPM_TYPE INTENDED_DEVICE_FAMILY
ONE_INPUT_IS_CONSTANT
Внесете низа низа
Низа
Потребно бр
бр
Опис
Ја идентификува библиотеката на параметризирани модули (LPM) име на ентитет во дизајнот VHDL files.
Овој параметар се користи за моделирање и симулација на однесувањето. Уредувачот на параметри ја пресметува вредноста за овој параметар.
Специфичен параметар за Интел. Мора да го користите параметарот LPM_HINT за да го одредите параметарот ONE_INPUT_IS_CONSTANT во дизајнот на VHDL fileс. Вредностите се ДА, НЕ или НЕКОРИСТЕНИ. Обезбедува поголема оптимизација ако влезот е константен. Ако се испушти, стандардната вредност е НЕ.
Испрати повратни информации
Корисничко упатство за аритметички IP јадра на Intel FPGA 29
683490 | 2020.10.05 Испрати повратни информации
7. ALTECC (код за корекција на грешка: енкодер/декодер) IP-јадро
Слика 6.
Интел го обезбедува јадрото ALTECC IP за да ја имплементира ECC функционалноста. ECC открива оштетени податоци што се појавуваат на страната на примачот за време на преносот на податоци. Овој метод за корекција на грешки најдобро одговара за ситуации каде што грешките се случуваат по случаен избор, а не на рафал.
ECC открива грешки преку процесот на кодирање и декодирање на податоците. За прampLe, кога ECC се применува во апликација за пренос, податоците прочитани од изворот се кодираат пред да бидат испратени до приемникот. Излезот (коден збор) од енкодерот се состои од необработени податоци додадени со бројот на битови за паритет. Точниот број на додадени битови за паритет зависи од бројот на битови во влезните податоци. Генерираниот код збор потоа се пренесува до дестинацијата.
Приемникот го прима кодниот збор и го декодира. Информациите добиени од декодерот одредуваат дали е откриена грешка. Декодерот детектира единечни и двобитни грешки, но може да ги поправи само грешките од еден бит во оштетените податоци. Овој тип на ECC е единечна корекција на грешка, откривање двојна грешка (SECDED).
Можете да ги конфигурирате функциите на енкодер и декодер на јадрото ALTECC IP. Внесувањето на податоците во енкодерот е кодиран за да генерира коден збор кој е комбинација од влезот на податоците и генерираните битови за паритет. Генерираниот коден збор се пренесува до модулот за декодер за декодирање непосредно пред да стигне до неговиот дестинација блок. Декодерот генерира вектор на синдром за да утврди дали има грешка во примениот код. Декодерот ги коригира податоците само ако грешката во еден бит е од податочните битови. Ниту еден сигнал не е означен ако грешката со еден бит е од битовите за паритет. Декодерот има и сигнали со знаменце за да го прикаже статусот на примените податоци и дејството преземено од декодерот, доколку ги има.
Следните слики ги прикажуваат портите за јадрото ALTECC IP.
ALTECC порти за шифрирање
ALTECC_ENCODER
податоци[]
q[]
часовник
часовник
aclr
инст
Интел корпорација. Сите права се задржани. Intel, логото на Intel и другите ознаки на Intel се заштитни знаци на Intel Corporation или нејзините подружници. Интел гарантира изведба на своите FPGA и полупроводнички производи според тековните спецификации во согласност со стандардната гаранција на Интел, но го задржува правото да прави промени на сите производи и услуги во секое време без претходна најава. Интел не превзема никаква одговорност или одговорност што произлегува од апликацијата или употребата на какви било информации, производ или услуга опишани овде, освен како што е изрично договорено во писмена форма од страна на Intel. На клиентите на Intel им се препорачува да ја добијат најновата верзија на спецификациите на уредот пред да се потпрат на какви било објавени информации и пред да направат нарачки за производи или услуги. *Други имиња и брендови може да се бараат како сопственост на други.
Регистриран ISO 9001:2015
7. ALTECC (код за корекција на грешка: енкодер/декодер) IP Core 683490 | 2020.10.05
Слика 7. Приклучоци за декодер ALTECC
ALTECC_DECODER
data[] часовник на часовникот
q[] err_detected err_corrected
err_fatal
aclr
инст
7.1. Карактеристики на шифрирањето на ALTECC
Јадрото на IP-кодерот ALTECC ги нуди следниве карактеристики: · Врши кодирање на податоци користејќи ја шемата за кодирање Hamming · Поддржува ширина на податоци од 2 бита · Поддржува формат за претставени податоци со потпишан и непотпишан · Поддржува цевковод со излезна латентност од еден или два тактни циклуси · Поддржува опционален асинхрони порти за чисти и часовник за овозможување
Јадрото на IP-кодерот ALTECC ги зема и ги кодира податоците користејќи ја шемата за кодирање Хаминг. Шемата за кодирање Hamming ги изведува битовите за паритет и ги додава на оригиналните податоци за да го произведе излезниот код збор. Бројот на додадени битови за паритет зависи од ширината на податоците.
Следната табела го наведува бројот на битови за паритет додадени за различни опсези на ширини на податоци. Колоната Вкупно битови го претставува вкупниот број на битови за влезни податоци и додадените битови за паритет.
Табела 21.
Број на битови за паритет и коден збор според ширината на податоците
Ширина на податоци
Број на битови за паритет
Вкупно битови (коден збор)
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
Изведувањето на битови за паритет користи проверка на парен паритет. Дополнителниот 1 бит (прикажан во табелата како +1) се додава на битовите за паритет како MSB на кодниот збор. Ова осигурува дека кодниот збор има парен број од 1. За прample, ако ширината на податоците е 4 бита, 4 бита за паритет се додаваат на податоците за да станат коден збор со вкупно 8 бита. Ако 7 бита од LSB на 8-битниот кодски збор имаат непарен број од 1, 8-ми бит (MSB) од кодниот збор е 1 со што вкупниот број 1 во кодниот збор е парен.
На следната слика е прикажан генерираниот коден збор и распоредот на битовите за паритет и битовите на податоци во 8-битен влез на податоци.
Испрати повратни информации
Корисничко упатство за аритметички IP јадра на Intel FPGA 31
7. ALTECC (код за корекција на грешка: енкодер/декодер) IP Core 683490 | 2020.10.05
Слика 8.
Распоред на битови за паритет и податочни битови во 8-битен генериран код за збор
MSB
LSB
4 битови за паритет
4 податочни битови
8
1
IP-јадрото на шифрирањето ALTECC прифаќа само влезни ширини од 2 до 64 бита одеднаш. Влезни ширини од 12 бита, 29 бита и 64 бита, кои се идеално прилагодени за уредите на Intel, генерираат излези од 18 бита, 36 бита и 72 бита соодветно. Можете да го контролирате ограничувањето на бит-изборот во уредувачот на параметри.
7.2. Verilog HDL прототип (ALTECC_ENCODER)
Следниот прототип на Verilog HDL се наоѓа во Verilog Design File (.v) lpm.v во директориум за едасинтеза.
модул altecc_encoder #( параметар наменет_device_family = „неискористен“, параметар lpm_pipeline = 0, параметар width_codeword = 8, параметар width_dataword = 8, параметар lpm_type = „altecc_encoder“, параметар lpm_hint = „неискористено внесување на жица вклучете c жичен часовник, влезна жица [ширина_податоци-збор-1:0] податоци, излезна жица [ширина_код-збор-1:0] q); крајниот модул
7.3. Verilog HDL прототип (ALTECC_DECODER)
Следниот прототип на Verilog HDL се наоѓа во Verilog Design File (.v) lpm.v во директориум за едасинтеза.
модул altecc_decoder #( параметар наменет_device_family = „неискористен“, параметар lpm_pipeline = 0, параметар width_codeword = 8, параметар ширина_податоци = 8, параметар lpm_type = „altecc_decoder“, параметар lpm_hint = „неискористено внесување на жица вметнете cclr, внесете жица c жичен часовник, влезна жица [ширина_код збор-1:0] податоци, излезна жица err_corrected, излезна жица err_detected, излезна жица err_fatal, излезна жица [width_dataword-1:0] q); крајниот модул
Корисничко упатство за аритметички IP јадра на Intel FPGA 32
Испрати повратни информации
7. ALTECC (код за корекција на грешка: енкодер/декодер) IP Core 683490 | 2020.10.05
7.4. Декларација за VHDL компоненти (ALTECC_ENCODER)
Декларацијата на компонентата VHDL се наоѓа во дизајнот VHDL File (.vhd) altera_mf_components.vhd во librariesvhdlaltera_mf директориум.
генеричка компонента altecc_encoder (наменет_уред_семејство:стринг := „неискористен“; lpm_pipeline:природен := 0; ширина_код збор:природен := 8; ширина_податок збор:природен := 8; ”); port( aclr:in std_logic := '0'; clock:in std_logic := '0'; clocken:in std_logic := '1'; data: in std_logic_vector(width_dataword-1 down to 0); q:out std_logic_vector(width_code -1 до 0)); крајна компонента;
7.5. Декларација за VHDL компоненти (ALTECC_DECODER)
Декларацијата на компонентата VHDL се наоѓа во дизајнот VHDL File (.vhd) altera_mf_components.vhd во librariesvhdlaltera_mf директориум.
генеричка компонента altecc_decoder (design_device_family:string := „неискористена“; lpm_pipeline:natural := 0; width_codeword:natural := 8; width_dataword: natural := 8; lpm_hint:string := „НЕКОРИСТЕНИ“:cc_tealpm ”); port( aclr:in std_logic := '0'; clock: in std_logic := '0'; clocken:in std_logic := '1'; data: in std_logic_vector (width_codeword-1 down to 0); err_corrected: out std_logic; err_detect : надвор од std_logic; крајна компонента;
7.6. VHDL LIBRARY_USE Декларација
Декларацијата за КОРИСТЕЊЕ НА ЛИБЛИОТЕКА VHDL не е потребна ако ја користите декларацијата за компоненти на VHDL.
БИБЛИОТЕКА altera_mf; КОРИСТЕТЕ altera_mf.altera_mf_components.all;
7.7. Порти за енкодер
Следните табели ги наведуваат влезните и излезните порти за IP-јадрото на шифрирањето ALTECC.
Испрати повратни информации
Корисничко упатство за аритметички IP јадра на Intel FPGA 33
7. ALTECC (код за корекција на грешка: енкодер/декодер) IP Core 683490 | 2020.10.05
Табела 22. Влезни порти за кодерот ALTECC
Име на порта
Задолжително
Опис
податоци[]
Да
Порта за внесување податоци. Големината на влезната порта зависи од WIDTH_DATAWORD
вредност на параметарот. Портата за податоци[] ги содржи необработените податоци што треба да се кодираат.
часовник
Да
Влезна порта за часовник што обезбедува сигнал за часовникот за синхронизирање на операцијата за кодирање.
Приклучокот за часовник е потребен кога вредноста LPM_PIPELINE е поголема од 0.
часовник
бр
Овозможи часовник. Ако се испушти, стандардната вредност е 1.
aclr
бр
Асинхроно јасен влез. Активниот висок аклр сигнал може да се користи во секое време за да
асинхроно исчистете ги регистрите.
Табела 23. Излезни порти за кодерот ALTECC
Име на порта q[]
Задолжително Да
Опис
Кодирана порта за излез на податоци. Големината на излезната порта зависи од вредноста на параметарот WIDTH_CODEWORD.
7.8. Пристаништа за декодер
Следните табели ги наведуваат влезните и излезните порти за IP-јадрото на декодерот ALTECC.
Табела 24. Влезни порти за декодер ALTECC
Име на порта
Задолжително
Опис
податоци[]
Да
Порта за внесување податоци. Големината на влезната порта зависи од вредноста на параметарот WIDTH_CODEWORD.
часовник
Да
Влезна порта на часовникот што обезбедува сигнал за часовникот за синхронизирање на операцијата за кодирање. Приклучокот за часовник е потребен кога вредноста LPM_PIPELINE е поголема од 0.
часовник
бр
Овозможи часовник. Ако се испушти, стандардната вредност е 1.
aclr
бр
Асинхроно јасен влез. Активниот висок aclr сигнал може да се користи во секое време за асинхроно чистење на регистрите.
Табела 25. Излезни порти за декодер ALTECC
Име на порта q[]
Задолжително Да
Опис
Декодирана порта за излез на податоци. Големината на излезната порта зависи од вредноста на параметарот WIDTH_DATAWORD.
err_detected Да
Означете го сигналот за да го одрази статусот на примените податоци и ги специфицира сите пронајдени грешки.
err_correcte Да г
Означете го сигналот за да го одрази статусот на примените податоци. Означува пронајдена и поправена грешка од еден бит. Можете да ги користите податоците бидејќи тие се веќе поправени.
err_fatal
Да
Означете го сигналот за да го одрази статусот на примените податоци. Означува пронајдена грешка во двобит, но не е поправена. Не смеете да ги користите податоците ако е наведен овој сигнал.
syn_e
бр
Излезен сигнал кој ќе оди високо секогаш кога ќе се открие грешка од еден бит на паритет
битови.
7.9. Параметри на енкодерот
Следната табела ги наведува параметрите за јадрото на IP-кодерот ALTECC.
Корисничко упатство за аритметички IP јадра на Intel FPGA 34
Испрати повратни информации
7. ALTECC (код за корекција на грешка: енкодер/декодер) IP Core 683490 | 2020.10.05
Табела 26. Параметри на кодерот ALTECC
Име на параметар
Тип
Задолжително
Опис
WIDTH_DATAWORD
Цел број Да
Ја одредува ширината на необработените податоци. Вредностите се од 2 до 64. Ако се испушти, стандардната вредност е 8.
WIDTH_CODEWORD
Цел број Да
Ја одредува ширината на соодветниот коден збор. Валидни вредности се од 6 до 72, со исклучок на 9, 17, 33 и 65. Ако се испушти, стандардната вредност е 13.
LPM_PIPELINE
Цел број бр
Го одредува цевководот за колото. Вредностите се од 0 до 2. Ако вредноста е 0, портите не се регистрирани. Ако вредноста е 1, излезните порти се регистрирани. Ако вредноста е 2, влезните и излезните порти се регистрирани. Ако се испушти, стандардната вредност е 0.
7.10. Параметри на декодер
Следната табела ги наведува основните параметри на IP-декодерот на ALTECC.
Табела 27. Параметри на декодерот ALTECC
Име на параметар WIDTH_DATAWORD
Тип Цел број
Задолжително
Опис
Да
Ја одредува ширината на необработените податоци. Вредностите се од 2 до 64. На
стандардната вредност е 8.
WIDTH_CODEWORD
Цел број
Да
Ја одредува ширината на соодветниот коден збор. Вредностите се 6
до 72, со исклучок на 9, 17, 33 и 65. Ако се испушти, стандардната вредност
е 13.
LPM_PIPELINE
Цел број
бр
Го одредува регистарот на колото. Вредностите се од 0 до 2. Ако на
вредноста е 0, не е имплементиран регистар. Ако вредноста е 1, на
излезот е регистриран. Ако вредноста е 2, и влезот и
излез се регистрирани. Ако вредноста е поголема од 2, дополнително
регистрите се имплементираат на излезот за дополнителните
латенции. Ако се испушти, стандардната вредност е 0.
Направете порта „syn_e“.
Цел број
бр
Вклучете го овој параметар за да креирате порта syn_e.
Испрати повратни информации
Корисничко упатство за аритметички IP јадра на Intel FPGA 35
683490 | 2020.10.05 Испрати повратни информации
8. Intel FPGA Multiply Adder IP Core
Слика 9.
IP јадрото на Intel FPGA Multiply Adder (Intel Stratix 10, Intel Arria 10 и Intel Cyclone 10 GX уреди) или ALTERA_MULT_ADD (уреди Arria V, Stratix V и Cyclone V) ви овозможува да имплементирате множител-содавач.
Следната слика ги прикажува портите за Intel FPGA Multiply Adder или ALTERA_MULT_ADD IP јадрото.
Интел FPGA множи собирач или порти ALTERA_MULT_ADD
Интел FPGA множи собирач или ALTERA_MULT_ADD
dataa[] signa datab[] signb datac[] coefsel0[] coefsel1[] coefsel2[] coefsel3[] addnsub1 addnsub3 aclr/sclr[] scanina[] clock0 clock1 clock2 ena0 ena1 ena2 sload_accum
accum_sload синџир[]
scanouta[] резултат[]
aclr0 aclr1
инст
Умножувач-содавач прифаќа парови на влезови, ги множи вредностите заедно и потоа додава или одзема од производите на сите други парови.
Ако сите широчини на влезните податоци се широки 9-бита или помали, функцијата ја користи конфигурацијата на множител на влезен множител од 9 x 9 бити во блокот DSP за уреди кои поддржуваат конфигурација од 9 x 9. Ако не, блокот DSP користи 18 × 18-битни влезни мултипликатори за обработка на податоци со ширина помеѓу 10 бита и 18 бита. Ако во дизајнот се појават повеќе Intel FPGA Multiply Adder или ALTERA_MULT_ADD IP јадра, функциите се дистрибуираат на
Интел корпорација. Сите права се задржани. Intel, логото на Intel и другите ознаки на Intel се заштитни знаци на Intel Corporation или нејзините подружници. Интел гарантира изведба на своите FPGA и полупроводнички производи според тековните спецификации во согласност со стандардната гаранција на Интел, но го задржува правото да прави промени на сите производи и услуги во секое време без претходна најава. Интел не превзема никаква одговорност или одговорност што произлегува од апликацијата или употребата на какви било информации, производ или услуга опишани овде, освен како што е изрично договорено во писмена форма од страна на Intel. На клиентите на Intel им се препорачува да ја добијат најновата верзија на спецификациите на уредот пред да се потпрат на какви било објавени информации и пред да направат нарачки за производи или услуги. *Други имиња и брендови може да се бараат како сопственост на други.
Регистриран ISO 9001:2015
8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05
што е можно повеќе различни DSP блокови, така што рутирањето до овие блокови е пофлексибилно. Помалку множители по блок DSP овозможуваат повеќе избори за рутирање во блокот со минимизирање на патеките до остатокот од уредот.
Регистрите и дополнителните цевководни регистри за следните сигнали се исто така сместени во блокот DSP: · Внесување податоци · Селектирај потпишан или непотпишан · Додавање или одземање изберете · Производи на множители
Во случај на излезниот резултат, првиот регистар се става во блокот DSP. Сепак, дополнителните регистри на латентност се сместени во логички елементи надвор од блокот. Периферните на блокот DSP, вклучувајќи ги влезовите на податоци во мултипликаторот, контролните влезови на сигнали и излезите на собирачот, користете редовно рутирање за да комуницирате со остатокот од уредот. Сите врски во функцијата користат посветено рутирање внатре во блокот DSP. Ова посветено рутирање ги вклучува синџирите на регистер за смена кога ќе ја изберете опцијата за префрлање на регистрираните влезни податоци на мултипликаторот од еден множител на соседен множител.
За повеќе информации за блоковите DSP во која било од сериите уреди Stratix V и Arria V, погледнете го поглавјето DSP Blocks од соодветните прирачници на страницата Литература и техничка документација.
Поврзани информации AN 306: Имплементирање на мултипликатори во уредите FPGA
Обезбедува повеќе информации за имплементација на мултипликатори со користење на DSP и мемориски блокови во уредите Intel FPGA.
8.1. Карактеристики
Intel FPGA Multiply Adder или ALTERA_MULT_ADD IP јадрото ги нуди следните карактеристики: · Генерира мултипликатор за извршување операции за множење на две сложени
броеви Забелешка: Кога се градат множители поголеми од природно поддржаната големина, може/
ќе биде влијание на изведбата што произлегува од каскадирањето на блоковите DSP. · Поддржува широчина на податоци од 1 256 бита · Поддржува формат за претставување на податоци со потпишан и непотпишан · Поддржува цевковод со конфигурабилна латентност на влезот · Обезбедува опција за динамичко префрлување помеѓу поддршка за податоци со потпишан и непотпишан · Обезбедува опција за динамичко префрлање помеѓу операцијата за додавање и одземање · Поддржува опционални асинхрони и синхрони јасни и такт-овозможени влезни порти · Поддржува систолен режим на одложено регистрирање · Поддржува пред-содавач со 8 коефициенти на претходно оптоварување по мултипликатор · Поддржува константа на пред-оптоварување за да се надополни повратните информации од акумулаторот
Испрати повратни информации
Корисничко упатство за аритметички IP јадра на Intel FPGA 37
8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05
8.1.1. Пред-содавач
Со пред-собирач, собирањата или одземањето се прават пред да се нахрани мултипликаторот.
Постојат пет режими за пред-содавање: · Едноставен режим · Режим на коефициент · Режим на внесување · Режим на квадрат · Константен режим
Забелешка:
Кога се користи пред-содавач (коефициент пред-содавач/режим на влез/квадрат), сите влезови на податоци во мултипликаторот мора да имаат иста поставка на часовникот.
8.1.1.1. Едноставен режим на пред-содавач
Во овој режим, двата операнди произлегуваат од влезните порти и пред-содавачот не се користи или заобиколува. Ова е стандардниот режим.
Слика 10. Едноставен режим на пред-содавач
a0 b0
Мулт0
резултат
8.1.1.2. Режим на коефициент на пред-содавач
Во овој режим, еден множител операнд произлегува од пред-собирачот, а другиот операнд произлегува од внатрешното складирање коефициент. Коефициентот за складирање овозможува до 8 претходно поставени константи. Сигналите за избор на коефициент се коефициент[0..3].
Овој режим е изразен во следната равенка.
Следното го прикажува режимот на коефициент на пред-собирач на множител.
Слика 11. Режим на коефициент на пред-содавач
Предавач
a0
Мулт0
+/-
резултат
b0
коефициент0 коефициент
Корисничко упатство за аритметички IP јадра на Intel FPGA 38
Испрати повратни информации
8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05
8.1.1.3. Режим на внесување пред-содавач Во овој режим, еден операнд за множење произлегува од пред-содавачот, а другиот операнд произлегува од влезната порта datac[]. Овој режим е изразен во следната равенка.
Следното го прикажува режимот на внесување пред-содавач на множител.
Слика 12. Режим на внесување пред-содавач
a0 b0
Мулт0
+/-
резултат
c0
8.1.1.4. Квадратен режим пред собирање Овој режим е изразен во следната равенка.
Следното го прикажува квадратниот режим на пред-собирач на два множители.
Слика 13. Квадратен режим пред собирање
a0 b0
Мулт0
+/-
резултат
8.1.1.5. Константен режим на пред-содавач
Во овој режим, еден множител операнд произлегува од влезната порта, а другиот операнд произлегува од внатрешното складирање коефициент. Коефициентот за складирање овозможува до 8 претходно поставени константи. Сигналите за избор на коефициент се коефициент[0..3].
Овој режим е изразен во следната равенка.
Испрати повратни информации
Корисничко упатство за аритметички IP јадра на Intel FPGA 39
8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05
Следната слика го прикажува константниот режим на пред-собирач на множител.
Слика 14. Константен режим на пред-содавач
a0
Мулт0
резултат
коефициент 0
коефициент
8.1.2. Систолен регистер за одложување
Во систолната архитектура, влезните податоци се внесуваат во каскада од регистри кои дејствуваат како бафер на податоци. Секој регистар доставува влез sample до множител каде што се множи со соодветниот коефициент. Синџирот собирач ги складира постепено комбинираните резултати од мултипликаторот и претходно регистрираниот резултат од влезната порта chainin[] за да го формира конечниот резултат. Секој елемент за множење-додавање мора да биде одложен за еден циклус, така што резултатите соодветно се синхронизираат кога ќе се соберат заедно. Секое последователно одложување се користи за адресирање и на коефициентната меморија и на податочниот бафер на нивните соодветни елементи за множење-додавање. За прample, едно одложување за вториот елемент за множење-додавање, две одложувања за третиот елемент за множење-додавање итн.
Слика 15. Систолни регистри
Систолни регистри
x(t) c(0)
С -1
С -1
c(1)
С -1
С -1
c(2)
С -1
С -1
c(N-1)
С -1
С -1
С -1
S -1 y(t)
x(t) ги претставува резултатите од континуиран тек на влез samples и y(t)
претставува збир на множество на влез samples, и со време, помножени со нивните
соодветните коефициенти. И влезните и излезните резултати течат од лево кон десно. C(0) до c(N-1) ги означува коефициентите. Систолните регистри на одложување се означени со S-1, додека 1 претставува едно доцнење на часовникот. Систолните регистри за одложување се додаваат на
влезовите и излезите за цевководство на начин што ги обезбедува резултатите од
множител операнд и акумулираните суми остануваат синхронизирани. Овој процесорски елемент
се реплицира за да се формира коло што ја пресметува функцијата за филтрирање. Оваа функција е
изразено во следната равенка.
Корисничко упатство за аритметички IP јадра на Intel FPGA 40
Испрати повратни информации
8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05
N го претставува бројот на циклуси на податоци што се внесени во акумулаторот, y(t) го претставува излезот во времето t, A(t) го претставува влезот во времето t, а B(i) се коефициентите. t и i во равенката одговараат на одреден момент во времето, така што за да се пресмета излезот sample y(t) во времето t, група на влез samples во N различни моменти во времето, или A(n), A(n-1), A(n-2), … A(n-N+1). Групата N влез samples се множат со N коефициенти и се собираат заедно за да се формира конечниот резултат y.
Архитектурата на систолниот регистар е достапна само за режими збир од 2 и збир од 4. За двата режима на архитектура на систолниот регистар, првиот синџир сигнал треба да биде врзан за 0.
На следната слика е прикажана имплементацијата на систолниот регистер за одложување на 2 мултипликатори.
Слика 16. Имплементација на систолен одложен регистар на 2 мултипликатори
синџир
a0
Мулт0
+/-
b0
a1
Мулт1
+/-
b1
резултат
Збирот на два множители е изразен во следната равенка.
На следната слика е прикажана имплементацијата на систолниот регистер за одложување на 4 мултипликатори.
Испрати повратни информации
Корисничко упатство за аритметички IP јадра на Intel FPGA 41
8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05
Слика 17. Имплементација на систолен одложен регистар на 4 мултипликатори
синџир
a0
Мулт0
+/-
b0
a1
Мулт1
+/-
b1
a2
Мулт2
+/-
b2
a3
Мулт3
+/-
b3
резултат
Збирот од четири множители е изразен во следната равенка. Слика 18. Збир од 4 множители
Следното го наведува адванотtages на имплементацијата на систолниот регистар: · Ја намалува употребата на ресурсите на DSP · Овозможува ефикасно мапирање во блокот DSP користејќи ја структурата на синџирот собирач
Корисничко упатство за аритметички IP јадра на Intel FPGA 42
Испрати повратни информации
8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05
8.1.3. Константа пред вчитување
Константата за пред-оптоварување го контролира операндот на акумулаторот и ја надополнува повратната информација на акумулаторот. Валидната LOADCONST_VALUE се движи од 0. Константната вредност е еднаква на 64N, каде N = LOADCONST_VALUE. Кога LOADCONST_VALUE е поставена на 2, константната вредност е еднаква на 64. Оваа функција може да се користи како пристрасно заокружување.
Следната слика ја прикажува константната имплементација пред оптоварување.
Слика 19. Константа на пред-оптоварување
Повратни информации од акумулатор
постојана
a0
Мулт0
+/-
b0
a1
Мулт1
+/b1
резултат
accum_sload sload_accum
Погледнете ги следните IP-јадра за други имплементации на мултипликатор: · ALTMULT_ACCUM · ALTMEMMULT · LPM_MULT
8.1.4. Двоен акумулатор
Функцијата за двоен акумулатор додава дополнителен регистар во патеката за повратни информации на акумулаторот. Регистерот со двојни акумулатори го следи излезниот регистар, кој ги вклучува часовникот, овозможувањето на часовникот и aclr. Дополнителниот регистар на акумулатор го враќа резултатот со задоцнување од еден циклус. Оваа функција ви овозможува да имате два акумулаторски канали со ист број на ресурси.
На следната слика е прикажана имплементацијата на двојниот акумулатор.
Испрати повратни информации
Корисничко упатство за аритметички IP јадра на Intel FPGA 43
8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05
Слика 20. Двоен акумулатор
Регистрирај се на Dou ble Accu mulator
Accu mulator повратни информации ck
a0
Мулт0
+/-
b0
a1
Мулт1
+/b1
Излезен резултат Излезен регистар
8.2. Прототип на Verilog HDL
Може да го најдете прототипот за множење на Intel FPGA или ALTERA_MULT_ADD Verilog HDL file (altera_mult_add_rtl.v) во librariesmegafunctions директориум.
8.3. VHDL декларација за компоненти
Декларацијата на компонентата VHDL се наоѓа во altera_lnsim_components.vhd во librariesvhdl altera_lnsim директориум.
8.4. VHDL LIBRARY_USE Декларација
Декларацијата за КОРИСТЕЊЕ НА ЛИБЛИОТЕКА VHDL не е потребна ако ја користите декларацијата за компоненти на VHDL.
БИБЛИОТЕКА altera_mf; КОРИСТЕТЕ altera_mf.altera_mf_components.all;
8.5. Сигнали
Следните табели ги наведуваат влезните и излезните сигнали на јадрото за множење со собирач Intel FPGA IP или ALTERA_MULT_ADD IP.
Табела 28. Множење на собирачот Intel FPGA IP или ALTERA_MULT_ADD влезни сигнали
Сигнал
Задолжително
Опис
dataa_0[]/dataa_1[]/
Да
dataa_2[]/dataa_3[]
Внесување податоци во мултипликаторот. Влезна порта [NUMBER_OF_MULTIPLIERS * WIDTH_A – 1 … 0] широк
продолжи…
Корисничко упатство за аритметички IP јадра на Intel FPGA 44
Испрати повратни информации
8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05
Податоци за сигналиb_0[]/datab_1[]/ datab_2[]/datab_3[] datac_0[] /datac_1[]/ datac_2[]/datac_3[] часовник[1:0] aclr[1:0] sclr[1:0] ен. [1:0] знак
знакб
scanina[] accum_sload
Задолжително Да Не
Не Не Не Не Не
бр
Не Не
Опис
Моделот за симулација за оваа IP поддржува неодредена влезна вредност (X) на овие сигнали. Кога давате X вредност на овие сигнали, вредноста X се шири на излезните сигнали.
Внесување податоци во мултипликаторот. Влезен сигнал [NUMBER_OF_MULTIPLIERS * WIDTH_B – 1 … 0] широк Симулациониот модел за оваа IP поддржува неодредена влезна вредност (X) за овие сигнали. Кога давате X вредност на овие сигнали, вредноста X се шири на излезните сигнали.
Внесување податоци во мултипликаторот. Влезен сигнал [NUMBER_OF_MULTIPLIERS * WIDTH_C – 1, … 0] широк Изберете INPUT за параметарот на режимот Избери читач за да ги овозможите овие сигнали. Моделот за симулација за оваа IP поддржува неодредена влезна вредност (X) на овие сигнали. Кога давате X вредност на овие сигнали, вредноста X се шири на излезните сигнали.
Влезена порта со часовник во соодветниот регистар. Овој сигнал може да се користи од кој било регистар во IP-јадрото. Моделот за симулација за оваа IP поддржува неодредена влезна вредност (X) на овие сигнали. Кога давате X вредност на овие сигнали, вредноста X се шири на излезните сигнали.
Асинхрон чист влез во соодветниот регистар. Моделот за симулација за оваа IP поддржува неодредена влезна вредност (X) на овие сигнали. Кога давате X вредност на овие сигнали, вредноста X се шири на излезните сигнали.
Синхроно јасен влез во соодветниот регистар. Моделот за симулација за оваа IP поддржува неодредена влезна вредност X на овие сигнали. Кога давате X вредност на овие сигнали, вредноста X се шири на излезните сигнали
Овозможете влез на сигнал во соодветниот регистар. Моделот за симулација за оваа IP поддржува неодредена влезна вредност (X) на овие сигнали. Кога давате X вредност на овие сигнали, вредноста X се шири на излезните сигнали.
Го одредува нумеричкиот приказ на множителскиот влез A. Ако сигналот на сигналот е висок, мултипликаторот го третира множителскиот влезен сигнал A како знак со знак. Ако сигналот на сигналот е низок, мултипликаторот го третира множителскиот влез А сигнал како неозначен број. Изберете VARIABLE за Кој е форматот на претставување за параметарот Multipliers A влезови за да го овозможите овој сигнал. Моделот за симулација за оваа IP поддржува неодредена влезна вредност (X) на овој сигнал. Кога давате X вредност на овој влез, вредноста на X се шири на излезните сигнали.
Го одредува нумеричкиот приказ на множителскиот влез B сигнал. Ако сигналот signb е висок, мултипликаторот го третира множителскиот влезен B сигнал како комплемент број со знак два. Ако сигналот signb е низок, мултипликаторот го третира множителскиот влез B сигнал како неозначен број. Моделот за симулација за оваа IP поддржува неодредена влезна вредност (X) на овој сигнал. Кога давате X вредност на овој влез, вредноста на X се шири на излезните сигнали.
Влез за синџир за скенирање A. Влезен сигнал [WIDTH_A – 1, … 0] широк. Кога параметарот INPUT_SOURCE_A има вредност SCANA, потребен е сигналот scanina[].
Динамички одредува дали вредноста на акумулаторот е константна. Ако сигналот accum_sload е низок, тогаш излезот на мултипликаторот се вчитува во акумулаторот. Не користете accum_sload и sload_accum истовремено.
продолжи…
Испрати повратни информации
Корисничко упатство за аритметички IP јадра на Intel FPGA 45
8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05
Сигнал sload_accum
синџир[] addnsub1
addnsub3
коефициент 0[] коефициент 1[] коефициент2[] коефициент 3[]
Потребен бр
Не Не
бр
Не Не Не Не
Опис
Моделот за симулација за оваа IP поддржува неодредена влезна вредност (X) на овој сигнал. Кога давате X вредност на овој влез, вредноста на X се шири на излезните сигнали.
Динамички одредува дали вредноста на акумулаторот е константна. Ако сигналот sload_accum е висок, тогаш излезот на мултипликаторот се вчитува во акумулаторот. Не користете accum_sload и sload_accum истовремено. Моделот за симулација за оваа IP поддржува неодредена влезна вредност (X) на овој сигнал. Кога давате X вредност на овој влез, вредноста на X се шири на излезните сигнали.
Магистрала за внесување резултати на собирачот од претходните stagд. Влезен сигнал [WIDTH_CHAININ – 1, … 0] широк.
Изведете собирање или одземање на излезите од првиот пар множители. Влезете 1 на сигналот addnsub1 за да ги додадете излезите од првиот пар множители. Внесете 0 на сигналот addnsub1 за одземање на излезите од првиот пар множители. Моделот за симулација за оваа IP поддржува неодредена влезна вредност (X) на овој сигнал. Кога давате X вредност на овој влез, вредноста на X се шири на излезните сигнали.
Изведете собирање или одземање на излезите од првиот пар множители. Внесете 1 на сигналот addnsub3 за да ги додадете излезите од вториот пар множители. Внесете 0 на сигналот addnsub3 за да ги одземете излезите од првиот пар множители. Моделот за симулација за оваа IP поддржува неодредена влезна вредност (X) на овој сигнал. Кога давате X вредност на овој влез, вредноста на X се шири на излезните сигнали.
Коефициент на влезен сигнал[0:3] до првиот множител. Моделот за симулација за оваа IP поддржува неодредена влезна вредност (X) на овој сигнал. Кога давате X вредност на овој влез, вредноста на X се шири на излезните сигнали.
Коефициент на влезен сигнал[0:3] до вториот множител. Моделот за симулација за оваа IP поддржува неодредена влезна вредност (X) на овој сигнал. Кога давате X вредност на овој влез, вредноста на X се шири на излезните сигнали.
Коефициент на влезен сигнал[0:3] до третиот множител. Моделот за симулација за оваа IP поддржува неодредена влезна вредност (X) на овој сигнал. Кога давате X вредност на овој влез, вредноста на X се шири на излезните сигнали.
Коефициент на влезен сигнал [0:3] до четвртиот множител. Моделот за симулација за оваа IP поддржува неодредена влезна вредност (X) на овој сигнал. Кога давате X вредност на овој влез, вредноста на X се шири на излезните сигнали.
Табела 29. Множење на Излезните сигнали на IP Adder Intel FPGA
Сигнал
Задолжително
Опис
резултат []
Да
Излезен сигнал за мултипликатор. Излезен сигнал [WIDTH_RESULT – 1 … 0] широк
Моделот за симулација за оваа IP поддржува неодредена излезна вредност (X). Кога ќе ја дадете вредноста на X како влез, вредноста на X се шири на овој сигнал.
сканута []
бр
Излез на синџир за скенирање A. Излезен сигнал [WIDTH_A – 1..0] широк.
Изберете повеќе од 2 за броеви на множители и изберете Scan chain input за Кој е влезот A на мултипликаторот поврзан со параметарот за да го овозможите овој сигнал.
Корисничко упатство за аритметички IP јадра на Intel FPGA 46
Испрати повратни информации
8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05
8.6. Параметри
8.6.1. Општо таб
Табела 30. Општо таб
Параметар
Параметар генериран IP
Вредност
Колкав е бројот на множители?
број_на_м 1 – 4 множители
Колку широки треба да бидат влезните магистрали A width_a?
1 – 256
Колку широки треба да бидат влезните магистрали B width_b?
1 – 256
Колку широк треба да биде излезната магистрала „резултат“?
ширина_резултат
1 – 256
Направете поврзано овозможување на часовникот за секој часовник
gui_associate Вклучено d_clock_enbl Исклучено д
8.6.2. Таб за дополнителни режими
Табела 31. Таб
Параметар
Параметар генериран IP
Вредност
Конфигурација на излези
Регистрирајте го излезот на единицата за собирање
gui_output_re Вклучено
гистер
Исклучено
Кој е изворот за внесување на часовникот?
gui_output_re gister_clock
Часовник0 Часовник1 Часовник2
Кој е изворот за асинхрон чист влез?
gui_output_re gister_aclr
НИКОЈ ACLR0 ACLR1
Кој е изворот за синхрони јасен влез?
gui_output_re gister_sclr
НИКОЈ SCLR0 SCLR1
Операција на додавачот
Која операција треба да се изврши на излезите од првиот пар множители?
gui_multiplier 1_direction
ДОДАЈ, ПОД, ПРОМЕНЛИВА
Стандардна вредност 1
16
Опис
Број на множители што треба да се соберат заедно. Вредностите се од 1 до 4. Наведете ја ширината на портата dataa[].
16
Наведете ја ширината на пристаништето со datab[].
32
Наведете ја ширината на портата за резултат[].
Исклучено
Изберете ја оваа опција за да креирате овозможување на часовникот
за секој часовник.
Стандардна вредност
Опис
Исклучен часовник 0
НИКОЈ НИКОЈ
Изберете ја оваа опција за да овозможите излезен регистар на модулот за собирање.
Изберете Clock0 , Clock1 или Clock2 за да го овозможите и одредите изворот на часовникот за излезните регистри. Мора да изберете Регистрирај излез на единицата за собирање за да го овозможите овој параметар.
Го одредува асинхрониот јасен извор за излезниот регистар на собирачот. Мора да изберете Регистрирај излез на единицата за собирање за да го овозможите овој параметар.
Го одредува синхрониот јасен извор за излезниот регистар на собирачот. Мора да изберете Регистрирај излез на единицата за собирање за да го овозможите овој параметар.
ДОДАЈ
Изберете операција за собирање или одземање што ќе се изврши за излезите помеѓу првиот и вториот множител.
· Изберете ADD за да се изврши операцијата за собирање.
· Изберете SUB за да се изврши операцијата за одземање.
· Изберете VARIABLE за да користите порта addnsub1 за динамичка контрола на собирање/одземање.
продолжи…
Испрати повратни информации
Корисничко упатство за аритметички IP јадра на Intel FPGA 47
8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05
Параметар
Параметар генериран IP
Вредност
Регистрирајте го внесот „addnsub1“.
gui_addnsub_ On multiplier_reg Исклучено ister1
Кој е изворот за внесување на часовникот?
gui_addnsub_ multiplier_reg ister1_clock
Часовник0 Часовник1 Часовник2
Кој е изворот за асинхрон чист влез?
gui_addnsub_ multiplier_aclr 1
НИКОЈ ACLR0 ACLR1
Кој е изворот за синхрони јасен влез?
gui_addnsub_ multiplier_sclr 1
НИКОЈ SCLR0 SCLR1
Која операција треба да се изврши на излезите од вториот пар множители?
gui_multiplier 3_direction
ДОДАЈ, ПОД, ПРОМЕНЛИВА
Регистрирајте го внесот „addnsub3“.
gui_addnsub_ On multiplier_reg Исклучено ister3
Кој е изворот за внесување на часовникот?
gui_addnsub_ multiplier_reg ister3_clock
Часовник0 Часовник1 Часовник2
Стандардна вредност
Исклучен часовник0 НИКОЈ НИКОЈ ДОДАЈ
Исклучен часовник 0
Опис
Кога е избрана вредност VARIABLE: · Поставете го сигналот addnsub1 на високо за
операција за додавање. · Поставете го сигналот addnsub1 на low for
операција за одземање. Мора да изберете повеќе од два множители за да го овозможите овој параметар.
Изберете ја оваа опција за да овозможите влезен регистар за портата addnsub1. Мора да изберете VARIABLE за Која операција треба да се изврши на излезите од првиот пар множители за да се овозможи овој параметар.
Изберете Clock0 , Clock1 или Clock2 за да го одредите влезниот часовник сигнал за addnsub1 регистарот. Мора да изберете Регистрирај го внесот „addnsub1“ за да го овозможите овој параметар.
Го одредува асинхрониот јасен извор за регистарот addnsub1. Мора да изберете Регистрирај го внесот „addnsub1“ за да го овозможите овој параметар.
Го одредува синхрониот јасен извор за регистарот addnsub1. Мора да изберете Регистрирај го внесот „addnsub1“ за да го овозможите овој параметар.
Изберете операција за собирање или одземање што ќе се изврши за излезите помеѓу третиот и четвртиот множител. · Изберете ADD за да извршите собирање
операција. · Изберете SUB за да извршите одземање
операција. · Изберете VARIABLE за да користите addnsub1
порта за динамичка контрола на собирање/одземање. Кога е избрана вредност VARIABLE: · Придвижете го сигналот addnsub1 на високо за операција за собирање. · Поставете го сигналот addnsub1 на ниско ниво за операција за одземање. Мора да ја изберете вредноста 4 за Колкав е бројот на множители? за да го овозможите овој параметар.
Изберете ја оваа опција за да овозможите влезен регистар за сигналот addnsub3. Мора да изберете VARIABLE за Која операција треба да се изврши на излезите од вториот пар множители за да се овозможи овој параметар.
Изберете Clock0 , Clock1 или Clock2 за да го одредите влезниот часовник сигнал за addnsub3 регистарот. Мора да изберете Регистрирај се 'addnsub3' влез за да го овозможите овој параметар.
продолжи…
Корисничко упатство за аритметички IP јадра на Intel FPGA 48
Испрати повратни информации
8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05
Параметар
Кој е изворот за асинхрон чист влез?
Параметар генериран IP
Вредност
gui_addnsub_ multiplier_aclr 3
НИКОЈ ACLR0 ACLR1
Кој е изворот за синхрони јасен влез?
gui_addnsub_ multiplier_sclr 3
НИКОЈ SCLR0 SCLR1
Поларитет Овозможи „use_subadd“
gui_use_subn Вклучено
додадете
Исклучено
8.6.3. Таб за множители
Табела 32. Таб
Параметар
Параметар генериран IP
Вредност
Што е
gui_represent
формат на репрезентација ation_a
за множители А влезови?
ПОТПИШАНО, НЕПОТПИШАНО, ПРОМЕНЛИВА
Регистрирајте го внесувањето „сигна“.
gui_register_s Вклучено
игна
Исклучено
Кој е изворот за внесување на часовникот?
gui_register_s igna_clock
Часовник0 Часовник1 Часовник2
Кој е изворот за асинхрон чист влез?
gui_register_s igna_aclr
НИКОЈ ACLR0 ACLR1
Кој е изворот за синхрони јасен влез?
gui_register_s igna_sclr
НИКОЈ SCLR0 SCLR1
Што е
gui_represent
формат на репрезентација ation_b
за множители Б влезови?
ПОТПИШАНО, НЕПОТПИШАНО, ПРОМЕНЛИВА
Регистрирајте го влезот „signb“.
gui_register_s Вклучено
ignb
Исклучено
Стандардна вредност НИКОЈ
НИКОЈ
Опис
Го одредува асинхрониот јасен извор за регистарот addnsub3. Мора да изберете Регистрирај го внесот „addnsub3“ за да го овозможите овој параметар.
Го одредува синхрониот јасен извор за регистарот addnsub3. Мора да изберете Регистрирај се 'addnsub3' влез за да го овозможите овој параметар.
Исклучено
Изберете ја оваа опција за да ја промените функцијата
на влезната порта addnsub.
Поставете го addnsub на високо за операцијата одземање.
Поставете го addnsub на ниско за операција за додавање.
Стандардна вредност
Опис
НЕПОСТАВЕН Наведете го форматот на претставување за влезот на мултипликаторот А.
Исклучено
Изберете ја оваа опција за да овозможите сигнал
регистрираат.
Мора да изберете VARIABLE вредност за Каков е форматот на претставување за влезовите на Multipliers A? параметар за да ја овозможите оваа опција.
Часовник 0
Изберете Clock0 , Clock1 или Clock2 за да го овозможите и одредите влезниот часовник сигнал за регистарот на знаци.
Мора да изберете Регистрирај се 'signa' влез за да го овозможите овој параметар.
НИКОЈ
Го одредува асинхрониот јасен извор за регистарот на знаци.
Мора да изберете Регистрирај се 'signa' влез за да го овозможите овој параметар.
НИКОЈ
Го одредува синхрониот јасен извор за регистарот на знаци.
Мора да изберете Регистрирај се 'signa' влез за да го овозможите овој параметар.
НЕПОЗНАЕНО Наведете го форматот на претставување за влезот на мултипликаторот B.
Исклучено
Изберете ја оваа опција за да овозможите signb
регистрираат.
продолжи…
Испрати повратни информации
Корисничко упатство за аритметички IP јадра на Intel FPGA 49
8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05
Параметар
Параметар генериран IP
Вредност
Стандардна вредност
Кој е изворот за внесување на часовникот?
gui_register_s ignb_clock
Часовник0 Часовник1 Часовник2
Часовник 0
Кој е изворот за асинхрон чист влез?
gui_register_s ignb_aclr
НИКОЈ ACLR0 ACLR1
Кој е изворот за синхрони јасен влез?
gui_register_s ignb_sclr
НИКОЈ SCLR0 SCLR1
Влезна конфигурација
Регистрирајте го влезот А на множителот
Кој е изворот за внесување на часовникот?
gui_input_reg Вклучено
ister_a
Исклучено
gui_input_reg ister_a_clock
Часовник0 Часовник1 Часовник2
НИКОЈ НИКОЈ
Исклучен часовник 0
Кој е изворот за асинхрон чист влез?
gui_input_reg ister_a_aclr
НИКОЈ ACLR0 ACLR1
Кој е изворот за синхрони јасен влез?
gui_input_reg ister_a_sclr
НИКОЈ SCLR0 SCLR1
Регистрирајте го влезот Б на множителот
Кој е изворот за внесување на часовникот?
gui_input_reg Вклучено
ister_b
Исклучено
gui_input_reg ister_b_clock
Часовник0 Часовник1 Часовник2
НИКОЈ НИКОЈ Исклучен Часовник0
Кој е изворот за асинхрон чист влез?
gui_input_reg ister_b_aclr
НИКОЈ ACLR0 ACLR1
НИКОЈ
Кој е изворот за синхрони јасен влез?
gui_input_reg ister_b_sclr
НИКОЈ SCLR0 SCLR1
НИКОЈ
Со што е поврзан влезот А на мултипликаторот?
gui_multiplier Внесување мултипликатор Мултипликатор
_a_влез
Скенирајте влезен влез во синџирот
Опис
Мора да изберете VARIABLE вредност за Кој е форматот на претставување за влезовите на Multipliers B? параметар за да ја овозможите оваа опција.
Изберете Clock0 , Clock1 или Clock2 за да го овозможите и одредите влезниот часовник сигнал за signb регистарот. Мора да изберете Регистрирај се 'signb' влез за да го овозможите овој параметар.
Го одредува асинхрониот јасен извор за signb регистарот. Мора да изберете Регистрирај се 'signb' влез за да го овозможите овој параметар.
Го одредува синхрониот јасен извор за signb регистарот. Мора да изберете Регистрирај се 'signb' влез за да го овозможите овој параметар.
Изберете ја оваа опција за да овозможите влезен регистар за влезната магистрала за податоци.
Изберете Clock0 , Clock1 или Clock2 за да го овозможите и одредите влезниот часовник на регистарот за влезната магистрала за податоци. Мора да изберете Регистрирај го влезот А од мултипликаторот за да го овозможите овој параметар.
Го одредува асинхрониот јасен извор на регистарот за влезната магистрала за податоци. Мора да изберете Регистрирај го влезот А од мултипликаторот за да го овозможите овој параметар.
Го одредува синхрониот јасен извор на регистарот за влезната магистрала dataa. Мора да изберете Регистрирај го влезот А од мултипликаторот за да го овозможите овој параметар.
Изберете ја оваа опција за да овозможите влезен регистар за влезната магистрала на базата на податоци.
Изберете Clock0 , Clock1 или Clock2 за да го вклучите и одредите влезниот часовник на регистарот за магистралата за влез во базата на податоци. Мора да изберете Регистрирај го влезот Б на мултипликаторот за да го овозможите овој параметар.
Го одредува асинхрониот јасен извор на регистарот за влезната магистрала на базата на податоци. Мора да изберете Регистрирај го влезот Б на мултипликаторот за да го овозможите овој параметар.
Го одредува синхрониот јасен извор на регистарот за влезната магистрала на базата на податоци. Мора да изберете Регистрирај го влезот Б на мултипликаторот за да го овозможите овој параметар.
Изберете го влезниот извор за влез А од мултипликаторот.
продолжи…
Корисничко упатство за аритметички IP јадра на Intel FPGA 50
Испрати повратни информации
8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05
Параметар
Параметар генериран IP
Вредност
Scanout A Register Configuration
Регистрирајте го излезот од синџирот за скенирање
gui_scanouta Вклучено
_регистрирај се
Исклучено
Кој е изворот за внесување на часовникот?
gui_scanouta _register_cloc k
Часовник0 Часовник1 Часовник2
Кој е изворот за асинхрон чист влез?
gui_scanouta _register_aclr
НИКОЈ ACLR0 ACLR1
Кој е изворот за синхрони јасен влез?
gui_scanouta _register_sclr
НИКОЈ SCLR0 SCLR1
8.6.4. Таб за Preadder
Табела 33. Таб на Preadder
Параметар
Параметар генериран IP
Вредност
Изберете режим на читач
preadder_mo de
ЕДНОСТАВНО, КОЕФ, ВЛЕЗ, КВАДРАТ, КОНСТАНТЕН
Стандардна вредност
Опис
Изберете Multiplier input за да ја користите dataa влезната магистрала како извор на мултипликаторот. Изберете Влез со синџир за скенирање за да ја користите влезната магистрала за скенирање како извор до мултипликаторот и да ја овозможите излезната магистрала за скенирање. Овој параметар е достапен кога ќе изберете 2, 3 или 4 за Колкав е бројот на множители? параметар.
Исклучен часовник0 НИКОЈ НИКОЈ
Изберете ја оваа опција за да овозможите излезен регистар за излезна магистрала scanouta.
Мора да изберете Scan chain input за На што е поврзан влезот A на мултипликаторот? параметар за да ја овозможите оваа опција.
Изберете Clock0 , Clock1 или Clock2 за да го овозможите и одредите влезниот часовник на регистарскиот сигнал за излезната магистрала scanouta.
Мора да го вклучите Регистрирај излез на параметарот на синџирот скенирање за да ја овозможите оваа опција.
Го одредува регистарскиот асинхрон јасен извор за излезната магистрала scanouta.
Мора да го вклучите Регистрирај излез на параметарот на синџирот скенирање за да ја овозможите оваа опција.
Го одредува синхрониот јасен извор на регистар за излезната магистрала scanouta.
Мора да изберете Регистрирај излез на параметарот на синџирот на скенирање за да ја овозможите оваа опција.
Стандардна вредност
ЕДНОСТАВНО
Опис
Го одредува режимот на работа за модулот за читање. ЕДНОСТ: Овој режим го заобиколува читачот. Ова е стандардниот режим. КОЕФ: Овој режим го користи излезот од преадерот и влезната магистрала на коефсел како влезови во мултипликаторот. INPUT: Овој режим го користи излезот од preadder и datac влезната магистрала како влезови во мултипликаторот. КВАДРАТ: Овој режим го користи излезот од читачот како влезови во мултипликаторот.
продолжи…
Испрати повратни информации
Корисничко упатство за аритметички IP јадра на Intel FPGA 51
8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05
Параметар
Параметар генериран IP
Вредност
Изберете насока на читачот
gui_preadder ДОДАЈ,
_насока
ПОД
Колку широки треба да бидат влезните магистрали C width_c?
1 – 256
Податоци C Конфигурација на влезен регистар
Регистрирајте го влезот за податоци
gui_datac_inp Вклучено
ut_register
Исклучено
Кој е изворот за внесување на часовникот?
gui_datac_inp ut_register_cl ock
Часовник0 Часовник1 Часовник2
Кој е изворот за асинхрон чист влез?
gui_datac_inp ut_register_a clr
НИКОЈ ACLR0 ACLR1
Кој е изворот за синхрони јасен влез?
gui_datac_inp ut_register_sc lr
НИКОЈ SCLR0 SCLR1
Коефициенти
Колку широка треба да биде ширината на коефициентот?
ширина_коефициент
1 – 27
Конфигурација на коефициент на регистар
Регистрирајте го внесот на коефисел
gui_coef_regi Вклучено
стер
Исклучено
Кој е изворот за внесување на часовникот?
gui_coef_regi ster_clock
Часовник0 Часовник1 Часовник2
Стандардна вредност
ДОДАЈ
16
Опис
КОНСТАНТ: Овој режим користи влезна магистрала за податоци со заобиколена со преаддер и магистрала за влез со коефел како влезови во мултипликаторот.
Ја одредува работата на читачот. За да го овозможите овој параметар, изберете го следново за Избери режим на читач: · КОЕФ · ВЛЕЗ · КВАДРАТ или · КОНСТАНТ
Го одредува бројот на битови за влезната магистрала C. Мора да изберете INPUT за Изберете режим на читач за да го овозможите овој параметар.
На часовникот0 НИКОЈ НИКОЈ
Изберете ја оваа опција за да овозможите влезен регистар за влезната магистрала datac. Мора да го поставите INPUT во Избери параметар за режим на читач за да ја овозможите оваа опција.
Изберете Clock0 , Clock1 или Clock2 за да го одредите влезниот часовник сигнал за влезниот регистар на податоци. Мора да изберете Register datac input за да го овозможите овој параметар.
Го одредува асинхрониот јасен извор за влезниот регистар на податоци. Мора да изберете Register datac input за да го овозможите овој параметар.
Го одредува синхрониот јасен извор за влезниот регистар на податоци. Мора да изберете Register datac input за да го овозможите овој параметар.
18
Го одредува бројот на битови за
Коефсел влезна магистрала.
Мора да изберете COEF или CONSTANT за режим на читач за да го овозможите овој параметар.
На часовникот 0
Изберете ја оваа опција за да го овозможите влезниот регистар за влезната магистрала со коефсел. Мора да изберете COEF или CONSTANT за режим на читач за да го овозможите овој параметар.
Изберете Clock0 , Clock1 или Clock2 за да го одредите влезниот часовник сигнал за коефсел влезен регистар. Мора да изберете Регистрирај го внесот на коефисел за да го овозможите овој параметар.
продолжи…
Корисничко упатство за аритметички IP јадра на Intel FPGA 52
Испрати повратни информации
8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05
Параметар
Кој е изворот за асинхрон чист влез?
Параметар генериран IP
Вредност
gui_coef_regi ster_aclr
НИКОЈ ACLR0 ACLR1
Кој е изворот за синхрони јасен влез
gui_coef_regi ster_sclr
НИКОЈ SCLR0 SCLR1
Коефициент_0 Конфигурација
coef0_0 до coef0_7
0x00000 0xFFFFFFFF
Коефициент_1 Конфигурација
coef1_0 до coef1_7
0x00000 0xFFFFFFFF
Коефициент_2 Конфигурација
coef2_0 до coef2_7
0x00000 0xFFFFFFFF
Коефициент_3 Конфигурација
coef3_0 до coef3_7
0x00000 0xFFFFFFFF
8.6.5. Таб за акумулатор
Табела 34. Акумулатор Таб
Параметар
Параметар генериран IP
Вредност
Да се овозможи акумулатор?
акумулатор
ДА, НЕ
Кој е типот на работа на акумулатор?
accum_directi ДОДАЈ,
on
ПОД
Стандардна вредност НИКОЈ
НИКОЈ
0x0000000 0
0x0000000 0
0x0000000 0
0x0000000 0
Опис
Го одредува асинхрониот јасен извор за влезниот регистар на коефисел. Мора да изберете Регистрирај го внесот на коефисел за да го овозможите овој параметар.
Го одредува синхрониот јасен извор за влезниот регистар на коефисел. Мора да изберете Регистрирај го внесот на коефисел за да го овозможите овој параметар.
Ги одредува вредностите на коефициентот за овој прв множител. Бројот на битови мора да биде ист како што е наведен во Колку широк треба да биде ширината на коефициентот? параметар. Мора да изберете COEF или CONSTANT за режим на читач за да го овозможите овој параметар.
Ги одредува вредностите на коефициентот за овој втор множител. Бројот на битови мора да биде ист како што е наведен во Колку широк треба да биде ширината на коефициентот? параметар. Мора да изберете COEF или CONSTANT за режим на читач за да го овозможите овој параметар.
Ги одредува вредностите на коефициентот за овој трет множител. Бројот на битови мора да биде ист како што е наведен во Колку широк треба да биде ширината на коефициентот? параметар. Мора да изберете COEF или CONSTANT за режим на читач за да го овозможите овој параметар.
Ги одредува вредностите на коефициентот за овој четврти множител. Бројот на битови мора да биде ист како што е наведен во Колку широк треба да биде ширината на коефициентот? параметар. Мора да изберете COEF или CONSTANT за режим на читач за да го овозможите овој параметар.
Стандардна вредност БР
ДОДАЈ
Опис
Изберете ДА за да го овозможите акумулаторот. Мора да изберете Регистрирај излез на единицата за собирање кога ја користите функцијата акумулатор.
Ја одредува работата на акумулаторот: · ADD за операција за собирање · SUB за операција за одземање. Мора да изберете ДА за Овозможи акумулатор? параметар за да ја овозможите оваа опција.
продолжи…
Испрати повратни информации
Корисничко упатство за аритметички IP јадра на Intel FPGA 53
8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05
Параметар
Константа на претходно вчитување Овозможи константа за претходно вчитување
Параметар генериран IP
Вредност
gui_ena_prelo На
ad_const
Исклучено
Со што е поврзан влезот на акумулираната порта?
gui_accumula ACCUM_SLOAD, te_port_select SLOAD_ACCUM
Изберете вредност за претходно вчитување loadconst_val 0 – 64
постојана
ue
Кој е изворот за внесување на часовникот?
gui_accum_sl oad_register_ часовник
Часовник0 Часовник1 Часовник2
Кој е изворот за асинхрон чист влез?
gui_accum_sl oad_register_ aclr
НИКОЈ ACLR0 ACLR1
Кој е изворот за синхрони јасен влез?
gui_accum_sl oad_register_ sclr
НИКОЈ SCLR0 SCLR1
Овозможи двоен акумулатор
gui_double_a Вклучено
ccum
Исклучено
Стандардна вредност
Опис
Исклучено
Овозможете го accum_sload или
sload_accum сигнализира и регистрира влез
за динамички да го изберете влезот во
акумулатор.
Кога accum_sload е низок или sload_accum, излезот на мултипликаторот се внесува во акумулаторот.
Кога accum_sload е висок или sload_accum, константа на претходно вчитување одредена од корисникот се внесува во акумулаторот.
Мора да изберете ДА за Овозможи акумулатор? параметар за да ја овозможите оваа опција.
ACCUM_SL OAD
Го одредува однесувањето на сигналот accum_sload/ sload_accum.
ACCUM_SLOAD: Подигнете го accum_sload ниско за да го вчитате излезот на мултипликаторот во акумулаторот.
SLOAD_ACCUM: Движете го sload_accum високо за да го вчитате излезот на мултипликаторот во акумулаторот.
Мора да ја изберете опцијата Овозможи постојано вчитување за да го овозможите овој параметар.
64
Наведете ја претходно поставената константна вредност.
Оваа вредност може да биде 2N каде N е претходно поставената константна вредност.
Кога N=64, таа претставува константна нула.
Мора да ја изберете опцијата Овозможи постојано вчитување за да го овозможите овој параметар.
Часовник 0
Изберете Clock0 , Clock1 или Clock2 за да го одредите влезниот часовник сигнал за accum_sload/sload_accum регистарот.
Мора да ја изберете опцијата Овозможи постојано вчитување за да го овозможите овој параметар.
НИКОЈ
Го одредува асинхрониот јасен извор за регистарот accum_sload/sload_accum.
Мора да ја изберете опцијата Овозможи постојано вчитување за да го овозможите овој параметар.
НИКОЈ
Го одредува синхрониот јасен извор за регистарот accum_sload/sload_accum.
Мора да ја изберете опцијата Овозможи постојано вчитување за да го овозможите овој параметар.
Исклучено
Овозможува двоен акумулаторски регистар.
Корисничко упатство за аритметички IP јадра на Intel FPGA 54
Испрати повратни информации
8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05
8.6.6. Систолен/Cainout Tab
Табела 35. Таб
Параметар Овозможи синџир собирач
Параметар генериран IP
Вредност
chainout_add ДА,
er
БР
Каков е типот на работа на агрегатот со синџир?
chainout_add ДОДАЈ,
er_насока
ПОД
Овозможи „негира“ влез за собирач на синџир?
Port_negate
PORT_USED, PORT_UNUSED
Регистрирај се „негира“ влез? negate_regist er
НЕРЕГИСТРИРАН, ЧАСОВНИК0, ЧАСОВНИК1, ЧАСОВНИК2, ЧАСОВНИК3
Кој е изворот за асинхрон чист влез?
negate_aclr
НИКОЈ ACLR0 ACLR1
Кој е изворот за синхрони јасен влез?
negate_sclr
НИКОЈ SCLR0 SCLR1
Систолно доцнење
Овозможете систолни регистри за одложување
gui_systolic_d Вклучено
елај
Исклучено
Кој е изворот за внесување на часовникот?
gui_systolic_d CLOCK0,
elay_clock
ЧАСОВНИК 1,
Стандардна вредност
БР
Опис
Изберете ДА за да го овозможите модулот за собирање на синџир.
ДОДАЈ
Ја одредува операцијата за собирање на синџири.
За операцијата за одземање, SIGNED мора да се избере за Кој е форматот на претставување за влезовите на множители А? и каков е форматот на претставување за влезовите на Multipliers B? во табулаторот Multipliers.
PORT_UN КОРИСТЕНА
Изберете PORT_USED за да овозможите негирачки влезен сигнал.
Овој параметар е неважечки кога е оневозможен додавачот на синџир.
ОДРЕГИСТРАЈ ERED
За да го овозможите влезниот регистар за негирачки влезен сигнал и го одредувате влезниот часовник сигнал за негираниот регистар.
Изберете UNREGISTERED ако не е потребен регистерот за негирање на влез
Овој параметар е неважечки кога ќе изберете:
· НЕ за Овозможи додавач на синџир или
· PORT_UNUSED за Овозможи внесување „негира“ за асортиманот за поврзување? параметар или
НИКОЈ
Го одредува асинхрониот јасен извор за негираниот регистар.
Овој параметар е неважечки кога ќе изберете:
· НЕ за Овозможи додавач на синџир или
· PORT_UNUSED за Овозможи внесување „негира“ за асортиманот за поврзување? параметар или
НИКОЈ
Го одредува синхрониот јасен извор за негираниот регистар.
Овој параметар е неважечки кога ќе изберете:
· НЕ за Овозможи додавач на синџир или
· PORT_UNUSED за Овозможи внесување „негира“ за асортиманот за поврзување? параметар или
Исклучен ЧАСОВНИК0
Изберете ја оваа опција за да овозможите систолен режим. Овој параметар е достапен кога ќе изберете 2 или 4 за Колкав е бројот на множители? параметар. Мора да го овозможите излезот на Регистарот на единицата за собирање за да ги користи систолните регистри за одложување.
Го одредува влезниот такт-сигнал за систолниот регистар за доцнење.
продолжи…
Испрати повратни информации
Корисничко упатство за аритметички IP јадра на Intel FPGA 55
8. Intel FPGA Multiply Adder IP Core 683490 | 2020.10.05
Параметар
Параметар генериран IP
Вредност
ЧАСОВНИК 2,
Кој е изворот за асинхрон чист влез?
gui_systolic_d elay_aclr
НИКОЈ ACLR0 ACLR1
Кој е изворот за синхрони јасен влез?
gui_systolic_d elay_sclr
НИКОЈ SCLR0 SCLR1
Стандардна вредност
НИКОЈ
НИКОЈ
Опис
Мора да изберете enable systolic delay registers за да ја овозможите оваа опција.
Го одредува асинхрониот јасен извор за систолниот регистар за одложување. Мора да изберете enable systolic delay registers за да ја овозможите оваа опција.
Го одредува синхрониот јасен извор за систолниот регистар за одложување. Мора да изберете enable systolic delay registers за да ја овозможите оваа опција.
8.6.7. Таб за цевководи
Табела 36. Таб
Конфигурација на цевководи на параметар
Параметар генериран IP
Вредност
Дали сакате да додадете гасоводен регистар на влезот?
gui_pipelining Не, да
Стандардна вредност
бр
Ве молиме наведете го
латентност
број на латентен часовник
циклуси
Секоја вредност поголема од 0 од 0
Кој е изворот за внесување на часовникот?
gui_input_late ncy_clock
ЧАСОВНИК0, ЧАСОВНИК1, ЧАСОВНИК2
Кој е изворот за асинхрон чист влез?
gui_input_late ncy_aclr
НИКОЈ ACLR0 ACLR1
Кој е изворот за синхрони јасен влез?
gui_input_late ncy_sclr
НИКОЈ SCLR0 SCLR1
ЧАСОВНИК 0 НИКОЈ НИКОЈ
Опис
Изберете Yes за да овозможите дополнително ниво на цевководен регистар на влезните сигнали. Мора да наведете вредност поголема од 0 за параметарот Ве молиме наведете го бројот на латентни циклуси на часовникот.
Ја одредува саканата латентност во циклусите на часовникот. Едно ниво на цевководен регистар = 1 латентност во тактниот циклус. Мора да изберете ДА за Дали сакате да додадете гасоводен регистар на влезот? за да ја овозможите оваа опција.
Изберете Clock0 , Clock1 или Clock2 за да го овозможите и одредите влезниот часовник на регистарот на гасоводот. Мора да изберете ДА за Дали сакате да додадете гасоводен регистар на влезот? за да ја овозможите оваа опција.
Го одредува асинхрониот јасен извор на регистарот за дополнителниот цевководен регистар. Мора да изберете ДА за Дали сакате да додадете гасоводен регистар на влезот? за да ја овозможите оваа опција.
Го одредува синхрониот јасен извор на регистарот за дополнителниот цевководен регистар. Мора да изберете ДА за Дали сакате да додадете гасоводен регистар на влезот? за да ја овозможите оваа опција.
Корисничко упатство за аритметички IP јадра на Intel FPGA 56
Испрати повратни информации
683490 | 2020.10.05 Испрати повратни информации
9. ALTMEMMULT (множител на константен коефициент базиран на меморија) IP-јадро
Внимание:
Интел ја отстрани поддршката за оваа IP адреса во верзијата 20.3 на Intel Quartus Prime Pro Edition. Ако јадрото на IP во вашиот дизајн цели на уреди во Intel Quartus Prime Pro Edition, можете да ја замените IP-а со LPM_MULT Intel FPGA IP или повторно да ја генерирате IP-а и да го компајлирате вашиот дизајн со помош на софтверот Intel Quartus Prime Standard Edition.
Јадрото ALTMEMMULT IP се користи за создавање мултипликатори базирани на меморија со користење на мемориските блокови на ончип што се наоѓаат во Intel FPGA (со мемориски блокови M512, M4K, M9K и MLAB). Ова IP-јадро е корисно ако немате доволно ресурси за да ги имплементирате мултипликаторите во логичките елементи (LEs) или посветените ресурси за множење.
ALTMEMMULT IP-јадрото е синхрона функција која бара часовник. ALTMEMMULT IP-јадрото имплементира мултипликатор со најмала можна пропусност и латентност за даден сет на параметри и спецификации.
Следната слика ги прикажува портите за јадрото ALTMEMMULT IP.
Слика 21. Порти ALTMEMMULT
ALTMEMMULT
data_in[] sload_data coeff_in[]
резултат[] result_valid load_done
sload_coeff
sclr часовник
инст
Карактеристики на поврзани информации на страница 71
9.1. Карактеристики
ALTMEMMULT IP-јадрото ги нуди следните карактеристики: · Создава само мултипликатори базирани на меморија користејќи мемориски блокови на чипот што се наоѓаат во
Интел FPGA · Поддржува ширина на податоци од 1 бита · Поддржува формат за претставување на податоци со потпишан и непотпишан · Поддржува цевковод со фиксна излезна латентност
Интел корпорација. Сите права се задржани. Intel, логото на Intel и другите ознаки на Intel се заштитни знаци на Intel Corporation или нејзините подружници. Интел гарантира изведба на своите FPGA и полупроводнички производи според тековните спецификации во согласност со стандардната гаранција на Интел, но го задржува правото да прави промени на сите производи и услуги во секое време без претходна најава. Интел не превзема никаква одговорност или одговорност што произлегува од апликацијата или употребата на какви било информации, производ или услуга опишани овде, освен како што е изрично договорено во писмена форма од страна на Intel. На клиентите на Intel им се препорачува да ја добијат најновата верзија на спецификациите на уредот пред да се потпрат на какви било објавени информации и пред да направат нарачки за производи или услуги. *Други имиња и брендови може да се бараат како сопственост на други.
Регистриран ISO 9001:2015
9. ALTMEMMULT (множител на константен коефициент базиран на меморија) IP Core 683490 | 2020.10.05
· Складира повеќекратни константи во меморијата со случаен пристап (RAM)
· Обезбедува опција за избор на типот на блок RAM меморија
· Поддржува опционални синхрони јасни и контролни влезни порти
9.2. Прототип на Verilog HDL
Следниот прототип на Verilog HDL се наоѓа во Verilog Design File (.v) altera_mf.v во директориум за синтеза на еда.
модул altmemmult #( параметар коефициент_претставување = „ПОТПИШАНО“, коефициент на параметар 0 = „НЕКОРИСТЕНО“, параметар data_representation = „ПОТПИШАНО“, параметар syned_device_family = „неискористен“, параметар max_clock_cycles_per_result = 1, параметар број_of_bcoefficient = параметар заклучување_1_коефициент TO. total_latency = 1, параметар ширина_c = 1, параметар ширина_d = 1, параметар ширина_r = 1, параметар ширина_s = 1, параметар lpm_type = „altmemmult“, параметар lpm_hint = „неискористен“) ( часовник со влезна жица, влезна жица [width_c-1: 0]coeff_in, влезна жица [width_d-1:0] data_in, излезна жица load_done, излезна жица [width_r-1:0] резултат, излезна жица result_valid, влезна жица sclr, влезна жица [width_s-1:0] sel, влез жица sload_coeff, влезна жица sload_data)/* синтеза syn_black_box=1 */; крајниот модул
9.3. VHDL декларација за компоненти
Декларацијата на компонентата VHDL се наоѓа во дизајнот VHDL File (.vhd) altera_mf_components.vhd во librariesvhdlaltera_mf директориум.
компонента altmemmult генерички ( coeff_representation:string := “SIGNED”; коефициент0:string := “НЕКОРИСТЕНА”; data_representation:string := “SIGNED”; наменет_device_family:string := “неискористен”; max_clock_culture:ultres_per_natural number; := ram_block:string := "вкупно_латентност":природно; „altmemmult“); port(clock:in std_logic; coeff_in:in std_logic_vector(width_c-1 downto 1) := (други => '1'); data_in:in std_logic_vector(width_d-1 downto 0);
Корисничко упатство за аритметички IP јадра на Intel FPGA 58
Испрати повратни информации
9. ALTMEMMULT (множител на константен коефициент базиран на меморија) IP Core 683490 | 2020.10.05
load_done:out std_logic; result:out std_logic_vector(width_r-1 downto 0); result_valid:out std_logic; sclr:in std_logic := '0'; sel:in std_logic_vector(width_s-1 downto 0) := (други => '0'); sload_coeff:in std_logic := '0'; sload_data:in std_logic := '0'); крајна компонента;
9.4. Пристаништа
Следните табели ги наведуваат влезните и излезните порти за јадрото ALTMEMMULT IP.
Табела 37. Влезни порти ALTMEMMULT
Име на порта
Задолжително
Опис
часовник
Да
Влез со часовник во мултипликаторот.
коефициент_во[]
бр
Коефициент на влезна порта за мултипликаторот. Големината на влезната порта зависи од вредноста на параметарот WIDTH_C.
податоци_во[]
Да
Порта за внесување податоци во мултипликаторот. Големината на влезната порта зависи од вредноста на параметарот WIDTH_D.
sclr
бр
Синхроно јасен влез. Ако не се користи, стандардната вредност е активна висока.
сел[]
бр
Избор на фиксен коефициент. Големината на влезната порта зависи од WIDTH_S
вредност на параметарот.
sload_coeff
бр
Влезна порта за синхрони коефициент на оптоварување. Ја заменува тековната избрана вредност на коефициентот со вредноста наведена во влезот coeff_in.
sload_data
бр
Синхрона порта за внесување податоци за оптоварување. Сигнал што одредува нова операција за множење и ја откажува секоја постоечка операција за множење. Ако параметарот MAX_CLOCK_CYCLES_PER_RESULT има вредност 1, влезната порта sload_data се игнорира.
Табела 38. Излезни порти ALTMEMMULT
Име на порта
Задолжително
Опис
резултат[]
Да
Излезна порта за мултипликатор. Големината на влезната порта зависи од вредноста на параметарот WIDTH_R.
резултат_валиден
Да
Покажува кога излезот е валиден резултат од целосно множење. Ако параметарот MAX_CLOCK_CYCLES_PER_RESULT има вредност 1, излезната порта result_valid не се користи.
load_done
бр
Покажува кога новиот коефициент завршил со вчитување. Сигналот load_done потврдува кога новиот коефициент ќе заврши со вчитување. Освен ако сигналот load_done е висок, ниедна друга вредност на коефициентот не може да се вчита во меморијата.
9.5. Параметри
Следната табела ги наведува параметрите за јадрото ALTMEMMULT IP.
Табела 39.
WIDTH_D WIDTH_C
ALTMEMMULT Параметри
Име на параметар
Задолжителен тип
Опис
Цел број Да
Ја одредува ширината на портата data_in[].
Цел број Да
Ја одредува ширината на портата coeff_in[]. продолжи…
Испрати повратни информации
Корисничко упатство за аритметички IP јадра на Intel FPGA 59
9. ALTMEMMULT (множител на константен коефициент базиран на меморија) IP Core 683490 | 2020.10.05
Име на параметар WIDTH_R WIDTH
Документи / ресурси
![]() |
Intel FPGA Целобројни аритметички IP јадра [pdf] Упатство за корисникот FPGA Целобројни аритметички IP-јадра, Целобројни аритметички IP-јадра, аритметички IP-јадра, IP-јадра |