OpenCL Board üçün AN 824 FPGA SDK
Dəstək Paketi Döşəmə Planı
İstifadəçi təlimatı
üçün Intel® FPGA SDK OpenCL ™ Board Dəstək Paketi Döşəmə Planının Optimizasiyası Bələdçisi
OpenCL™ Board Support Package (BSP) üçün Intel/® FPGA SDK Floorplan Optimization Guide OpenCL) BSP üçün döşəmə planlaşdırılması qaydaları təqdim edir. O, həmçinin ən yaxşı orta maksimum əməliyyat tezliyi ilə əsas toxumu necə əldə edə biləcəyiniz və BSP resursundan istifadənin səmərəliliyini necə qiymətləndirə biləcəyiniz barədə təlimat təqdim edir.
Bu sənəd Khronos Group tərəfindən OpenCL Spesifikasiyasının 2 versiyasında təsvir edildiyi kimi OpenCL(1.0) anlayışları ilə tanış olduğunuzu güman edir.
OpenCL BSP tərtib axını
OpenCL BSP aşağıdakı tərtib axınlarını dəstəkləyir:
- Flat compile [–bsp-flow flat]: Bütün dizaynın düz kompilyasiyasını yerinə yetirir (BSP və nüvə tərəfindən yaradılan aparat).
- Baza tərtibi [–bsp-flow bazası]: base.qsf-dən LogicLock məhdudiyyətlərindən istifadə edərək əsas tərtibi həyata keçirir. file. Nüvə saatının hədəfi rahatlaşdırılıb ki, BSP aparatının vaxtı qarşılamaq üçün daha çox sərbəstliyi var. Statik bölgə olan BSP aparatını qorumaq üçün base.qar verilənlər bazası yaradılmışdır.
- Kompilyanı idxal edin [ ]: Base.qar verilənlər bazasından bağlanmış statik bölgəni bərpa edir və yalnız nüvənin yaratdığı avadanlığı tərtib edir. O, həmçinin ən yaxşı ləpə maksimum iş tezliyini (fmax) əldə etmək üçün nüvənin saat hədəfini artırır.
OpenCL BSP Floorplan Partition
OpenCL BSP mərtəbə planı əsasən aşağıdakı iki bölgəyə bölünür:
- Statik bölgə: Statik olaraq qalan BSP ilə əlaqəli avadanlığı olan bölgəni təmsil edir. Baza tərtibi zamanı bu bölgə üçün vaxt bağlanır. Ümumiyyətlə, məqsəd bu bölgənin vaxtı bağlamaq üçün istifadə etdiyi çip resurslarını minimuma endirməkdir.
- Nüvə bölgəsi: nüvəni ehtiva edən freeze_wrapper_inst|kernel_system_inst modulu üçün qorunan qismən yenidən konfiqurasiya (PR) bölgəsini təmsil edir. Ümumilikdə məqsəd bu region üçün maksimum dərəcədə çip resurslarını ehtiyatda saxlamaqdır.
- OpenCL üçün Intel FPGA SDK nəşr edilmiş Khronos Spesifikasiyasına əsaslanır və Khronos Uyğunluq Sınaq Prosesindən keçib. Cari uyğunluq vəziyyəti ilə burada tanış olmaq olar www.khronos.org/conformance.
- OpenCL və OpenCL loqosu Apple Inc-in ticarət nişanlarıdır və Khronos Group™-un icazəsi ilə istifadə olunur.
Intel Korporasiyası. Bütün hüquqlar qorunur. Intel, Intel loqosu və digər Intel markaları Intel Korporasiyasının və ya onun törəmə şirkətlərinin ticarət nişanlarıdır. Intel FPGA və yarımkeçirici məhsullarının Intel-in standart zəmanətinə uyğun olaraq cari spesifikasiyalara uyğun işləməsinə zəmanət verir, lakin istənilən vaxt xəbərdarlıq etmədən istənilən məhsul və xidmətlərə dəyişiklik etmək hüququnu özündə saxlayır. Intel tərəfindən yazılı şəkildə açıq şəkildə razılaşdırılan hallar istisna olmaqla, burada təsvir edilən hər hansı məlumat, məhsul və ya xidmətin tətbiqi və ya istifadəsi nəticəsində Intel heç bir məsuliyyət və ya öhdəlik götürmür. Intel müştərilərinə hər hansı dərc edilmiş məlumata etibar etməzdən və məhsul və ya xidmətlər üçün sifariş verməzdən əvvəl cihazın texniki xüsusiyyətlərinin ən son versiyasını əldə etmələri tövsiyə olunur.
*Başqa adlar və brendlər başqalarının mülkiyyəti kimi iddia oluna bilər.
OpenCL BSP Döşəmə Planlaması üçün Təlimatlar
- BSP-nin bütün əsas komponentlərinin təbii olaraq harada yerləşdirildiyini başa düşmək üçün düz kompilyasiya ilə başlayın (xüsusilə PCIe və ya DDR kimi I/O bağlantıları olan IP blokları). BSP-ni layihələndirərkən siz boru kəmərinin yaradılmasını düşünməli ola bilərsiniztagvaxtı bağlamaq üçün IP-lər arasında. Təkrarlanan uğursuz yolları müəyyən etmək üçün əvvəlcə düz kompilyasiya toxumu taraması aparmalı və sonra onları düzəltməyə çalışmalısınız.
İpucu: — Düz kompilyasiya toxumu süpürgələri üzərində yaxşı bağlanma sürəti baza tərtibi vaxtını bağlamaq şansı daha yüksək olacaq.
— Əgər mm_interconnect*-də (Qsys tərəfindən əlavə edilmiş komponent) ardıcıl uğursuzluqlar müşahidə edirsinizsə, onda Qsys Interconnect ilə Sistemi açın. viewer və uğursuz qarşılıqlı əlaqənin mürəkkəbliyini müşahidə edin. Siz boru kəməri flipfloplarını əlavə edə bilərsiniz viewvaxtı yaxşılaşdırmaq üçün. Əgər problemi hələ də həll edə bilmirsinizsə, Avalon boru kəməri körpülərini əlavə etməklə mm_interconnect* kritik yolunu qırmalı ola bilərsiniz. - Baza tərtibi zamanı freeze_wrapper_inst|kernel_system_inst ehtiva edən kernel bölgəsində LogicLock ilə başlayın. Başqa heç bir məhdudiyyət olmadan, Intel Quartus Prime BSP aparatını çipin qalan statik bölgəsində sərbəst yerləşdirə bilər. PCIe və DDR kimi BSP aparatının ölçüsünü və yerini müəyyən etmək üçün düz kompilyasiya və çip planlayıcısından istifadə edin. Sonra, LogicLock-dan istifadə edərək, BSP aparatının əsas qruplaşdırılmış sahələrindən qaçaraq nüvə bölgəsini rezerv edin.
İpucu: İstifadə olunan çip ailəsi istinad platforması ilə eynidirsə və BSP komponentləri oxşardırsa, OpenCL istinad BSP ilə göndərilən freeze_wrapper_inst|kernel_system_inst üçün LogicLock bölgələrindən başlamaq və uğursuzluqları aradan qaldırmaq daha sürətli ola bilər. - BSP-yə aşağıdakı əlavə komponentləri əlavə edə bilərsiniz:
— Yaddaş bankları: Əgər daha çox yaddaş bankı əlavə etsəniz, siz I/O bank yerini müəyyənləşdirməlisiniz, çünki vaxta uyğun gəlmək üçün boru kəməri körpüləri əlavə etməli ola bilərsiniz.
— I/O kanalları: Siz video, Ethernet və ya serial interfeys kimi I/O kanallarını əlavə edə bilərsiniz. Əgər I/O kanallarını əlavə etsəniz, I/O bank yerini müəyyən etməlisiniz, çünki bağlama vaxtı çətin olarsa, boru kəməri üçün yeni LogicLock bölgələrini tətbiq etməlisiniz.
İpucu: Boru kəməri körpüləri əlavə etmək lazımdırsa (məsample, zamanlama uğursuzluqlarına səbəb olan böyük marşrut gecikmələrinə görə), sonra çipdə mənbədən təyinat məntiqinə qədər marşrutlaşdırma məsafəsini nəzərdən keçirin və nüvə bölgəsi üçün ayrılmış bir az yer buraxın. - Kernel üçün LogicLock bölgələrini rezerv edərkən bu ümumi qaydalara əməl edin:
— BSP tələb etmədiyi təqdirdə bütün DSP sütunlarını kernel_system-ə yerləşdirməyə cəhd edin.
— Kernel_system üçün daha çox resurs saxlamağa çalışın.
— Nüvə bölgəsindəki çentiklərin sayını minimuma endirməyə çalışın.
Aşağıdakı rəqəm PCIe və DDR bankı arasında boru kəməri körpüsünün yerləşdirilməsi üçün əlavə edilmiş çentikləri göstərir.
Şəkil 1. 10 Buraxılışında Intel Arria® 17.0 GX üçün OpenCL BSP Floorplan
Maksimum işləmə tezliyi üçün təlimatlar
Kernellərin əldə etdiyi maksimum iş tezliyi (fmax) FPGA sürətindən çox asılıdır, çünki IP-lərin əksəriyyəti artıq optimallaşdırılmalıdır. Bununla belə, BSP mərtəbə planından asılı olaraq bəzi fmax itkiləri ola bilər. məsələnample, adətən BSP-nin nüvə bölgəsindəki kəsiklərin sayı kernel fmax-a təsir edir.
Aşağıdakı şəkildə göstərildiyi kimi, ən yaxşı orta fmax verən ən yaxşı əsas toxumu əldə etmək üçün:
- Vaxta uyğun gələn ilk əsas toxumu seçmək əvəzinə, əsas kompilyasiyada toxum taraması həyata keçirin.
- İdxal tərtibini həyata keçirin (keçmişdən bir neçə nüvədən istifadə etməkləample designs) bütün keçən əsas toxumlarda.
- Bütün əsas toxumlar üçün orta fmax hesablayın.
- Ən yüksək orta fmax verən əsas toxumu seçin.
Ən yaxşı orta fmax olan əsas toxum BSP ilə buraxılış üçün yaxşı namizəddir. Tövsiyə olunan addımlardan fərqli yanaşmaya riayət etmək qərarına gəlsəniz, kernel idxalı tərtibi prosesində fmax-da 5-10% dəyişikliyi müşahidə edə bilərsiniz.
Şəkil 2. Ən Yaxşı Baza Toxumunun Müəyyən edilməsi
- Döşəmə planı məhdudiyyətləri olmadan nüvənin nə qədər sürətli işləyə biləcəyini başa düşmək üçün:
1. Nüvənin düz kompilyasiyasını yerinə yetirin və fmax-ı müşahidə edin.
2. Eyni nüvədə idxal kompilyasiyasını həyata keçirin və fmax-a riayət edin.
3. fmax nəticələrini müqayisə edin.
Döşəmə planı məhdudiyyətlərinə görə idxal kompilyası fmax həmişə düz kompilyasiya fmax-dan aşağı olur. Toxum səs-küyündən qaçmaq üçün ləpəni daha çox əsas toxumla tərtib edin və fmax nəticələrini müqayisə edərkən orta fmaxı nəzərə alın. - Heç vaxt əsas kompilyasiyadan fmax nüvəsini düz və ya idxal kompilyasiyası ilə müqayisə etməyin. Əsas tərtib zamanı nüvə saatının hədəfləri rahatlaşır və buna görə də siz heç vaxt yaxşı nəticələr əldə etməyəcəksiniz.
- Əsas və ya idxal tərtibində nüvə saatının kritik yolunu müşahidə edin. Əgər kritik yol döşəmə planında nüvədən statik bölgəyə keçirsə, bu kritik yolun qarşısını almaq üçün mərtəbə planını dəyişdirin və ya daha bir neçə əsas toxumu işə salın.
BSP Resursdan İstifadə Effektivliyinin Qiymətləndirilməsi üçün Təlimatlar
Resursdan istifadə faizi nə qədər yüksəkdirtage, BSP-nin statik sahəsində daha yaxşı sahədən istifadə. Yüksək resurs istifadəsi faizitage həm də nüvə bölgəsi üçün daha çox resursun mövcud olduğunu nəzərdə tutur.
Resursdan istifadə faizini hesablamaq üçün aşağıdakı addımları yerinə yetirintagBSP-dən e:
- Fitter hesabatının Bölmə Statistikası bölməsində mövcud olan top.fit.rpt və ya base.fit.rpt-dən FPGA-dakı bütün resurslar üçün dəyərlər əldə edin.
- “freeze_wrapper_inst|kernel_system_inst” (kernel region) üçün dəyəri çıxın.
İpucu:
Digər resursların dəyərlərindən daha çox adaptiv məntiq modulunun (ALM) dəyərlərinə diqqət yetirin. Resursdan istifadənin yüzdə olmasını təmin edintagALM üçün e OpenCL istinad BSP-yə daha yaxındır. Çox yüksək faiztagALM üçün e kompilyasiya vaxtını artıra və mürəkkəb nüvələrdə marşrut tıxaclarını yarada bilən sıxlığa səbəb ola bilər. Bununla belə, siz həmişə statik bölgə sahəsini artıra və ya azalda, tərtib vaxtını və fmax-ı müşahidə edə bilərsiniz.
Aşağıdakı cədvəl 10 buraxılışında Arria ® 17.0 GX cihazlarının OpenCL BSP resurs istifadəsini əks etdirir.
Cədvəl 1.
10 buraxılışında IntelArria 17.0 GX cihazlarının OpenCL BSP Resursdan İstifadəsi
Ümumilikdə mövcuddur | Kernel üçün qorunur | BSP üçün mövcuddur | BSP tərəfindən istifadə olunur | 0/0 | |
Alm | 427200 | 393800 | 33400 | 23818. | 71% |
Qeydiyyatlar | 1708800 | 1575200 | 133600 | 38913 | 29% |
M2OK | 2713 | 2534 | 179 | 134 | 75% |
DSP | 1518 | 1518 | 0 | 0 | Yoxdur |
Diqqət edin ki, döşəmə planlaşdırılması elə bir şəkildə həyata keçirilir ki, statik bölgədə heç bir DSP bloku olmayacaq.
Sənədin Təftiş Tarixçəsi
Cədvəl 2.
OpenCL Board Dəstək Paketi Döşəmə Planının Optimizasiyası Bələdçisi üçün Intel FPGA SDK-nın Sənəd Baxış Tarixçəsi
Tarix | Versiya | Dəyişikliklər |
17 avqust | İlkin buraxılış. |
Online versiya
Əlaqə göndərin
ID: 683312
AN-824
Versiya: 2017.08.08
AN 824: OpenCL™ Board üçün Intel® FPGA SDK
Dəstək Paketi Döşəmə Planının Optimallaşdırılması Bələdçisi
Sənədlər / Resurslar
![]() |
OpenCL Board Dəstək Paketi Floorplan üçün intel AN 824 FPGA SDK [pdf] İstifadəçi təlimatı OpenCL Board Dəstək Paketi Floorplan üçün AN 824 FPGA SDK, AN 824, OpenCL Board Dəstək Paketi üçün FPGA SDK Floorplan, OpenCL Board Dəstək Paketi Döşəmə Planı, Lövhə Dəstək Paketi Döşəmə Planı, Dəstək Paketi Döşəmə Planı, Paket Döşəmə Planı, Döşəmə Planı |