intel AN 903 Mempercepatkan Penutupan Masa
AN 903: Mempercepatkan Penutupan Masa dalam Intel® Quartus® Prime Pro Edition
Ketumpatan dan kerumitan reka bentuk FPGA moden, yang menggabungkan sistem terbenam, IP dan antara muka berkelajuan tinggi, memberikan cabaran yang semakin meningkat untuk penutupan masa. Perubahan seni bina lewat dan cabaran pengesahan boleh membawa kepada lelaran reka bentuk yang memakan masa. Dokumen ini meringkaskan tiga langkah untuk mempercepatkan penutupan masa menggunakan metodologi yang disahkan dan boleh diulang dalam perisian Intel® Quartus® Prime Pro Edition. Metodologi ini termasuk analisis dan pengoptimuman RTL awal, serta teknik automatik untuk meminimumkan masa penyusunan dan mengurangkan kerumitan reka bentuk dan lelaran yang diperlukan untuk penutupan masa.
Langkah Pecutan Penutupan Masa
Langkah Pecutan Penutupan Masa
Langkah 1: Analisis dan Optimumkan Reka Bentuk RTL
Mengoptimumkan kod sumber reka bentuk anda biasanya merupakan teknik pertama dan paling berkesan untuk meningkatkan kualiti hasil anda. Pembantu Reka Bentuk Utama Intel Quartus membantu anda membetulkan pelanggaran peraturan reka bentuk asas dengan cepat dan mengesyorkan perubahan RTL yang memudahkan pengoptimuman reka bentuk dan penutupan masa.
Masalah Penutupan Masa
- Tahap logik yang berlebihan mempengaruhi susunan pemprosesan Fitter, tempoh dan kualiti hasil.
- Jaringan kipas yang tinggi menyebabkan kesesakan sumber dan menambah ketegangan tambahan pada laluan data, meningkatkan tahap kritikal laluan secara tidak perlu dan merumitkan penutupan masa. Ketegangan ini ialah daya tarikan yang menarik laluan (dan semua laluan yang berkongsi isyarat kipas keluar tinggi itu) ke arah sumber keluar kipas tinggi.
Penyelesaian Penutupan Masa
- Betulkan Pelanggaran Pembantu Reka Bentuk pada halaman 4—untuk mengenal pasti dan membetulkan pelanggaran peraturan asas reka bentuk yang berkaitan dengan reka bentuk anda dengan cepat.
- Kurangkan Tahap Logik pada halaman 7—untuk memastikan semua elemen reka bentuk boleh menerima pengoptimuman Fitter yang sama dan untuk mengurangkan masa penyusunan.
- Kurangkan Jaring Kipas Tinggi pada halaman 9—untuk mengurangkan kesesakan sumber dan memudahkan penutupan masa.
Maklumat Berkaitan
- “Pemeriksaan Peraturan Reka Bentuk dengan Pembantu Reka Bentuk,” Panduan Pengguna Edisi Pro Intel Quartus Prime Pro: Syor Reka Bentuk
- “Optimize Source Code,” Panduan Pengguna Edisi Intel Quartus Prime Pro: Pengoptimuman Reka Bentuk
- “Daftar Pendua untuk Kawalan Fan-Out,” Panduan Pengguna Edisi Intel Quartus Prime Pro: Pengoptimuman Reka Bentuk
Pelanggaran Pembantu Reka Bentuk Betul
Melakukan analisis reka bentuk awal untuk menghapuskan isu penutupan masa yang diketahui dengan ketara meningkatkan produktiviti. Selepas menjalankan kompilasi awal dengan tetapan lalai, anda boleh semulaview Pembantu Reka bentuk melaporkan untuk analisis awal. Apabila didayakan, Design Assistant secara automatik melaporkan sebarang pelanggaran terhadap set standard garis panduan reka bentuk yang disyorkan Intel FPGA. Anda boleh menjalankan Pembantu Reka Bentuk dalam mod Aliran Kompilasi, membolehkan anda melakukannya view pelanggaran yang berkaitan untuk kompilasi stages awak lari. Sebagai alternatif, Pembantu Reka Bentuk tersedia dalam mod analisis dalam Penganalisis Masa dan Perancang Cip.
- Mod Aliran Kompilasi—berjalan secara automatik semasa satu atau lebih stages kompilasi. Dalam mod ini, Pembantu Reka Bentuk menggunakan data aliran masuk (sementara) semasa penyusunan.
- Mod Analisis—jalankan Pembantu Reka Bentuk daripada Penganalisis Masa dan Perancang Cip untuk menganalisis pelanggaran reka bentuk pada kompilasi tertentutage, sebelum bergerak ke hadapan dalam aliran kompilasi. Dalam mod analisis, Pembantu Reka Bentuk menggunakan data petikan kompilasi statik.
Pembantu Reka Bentuk menetapkan setiap pelanggaran peraturan dengan salah satu daripada tahap keterukan berikut. Anda boleh menentukan peraturan yang anda mahu Pembantu Reka bentuk menyemak reka bentuk anda dan menyesuaikan tahap keterukan, dengan itu menghapuskan semakan peraturan yang tidak penting untuk reka bentuk anda.
Tahap Keterukan Peraturan Pembantu Reka Bentuk
Kategori | Penerangan | Warna Tahap Keterukan |
kritikal | Atasi isu untuk lepas tangan. | merah |
tinggi | Berpotensi menyebabkan kegagalan fungsi. Mungkin menunjukkan data reka bentuk yang hilang atau salah. | Jingga |
Sederhana | Berkemungkinan memberi kesan kepada kualiti keputusan untuk fMAX atau penggunaan sumber. | coklat |
rendah | Peraturan mencerminkan amalan terbaik untuk garis panduan pengekodan RTL. | Biru |
Menyediakan Pembantu Reka Bentuk
Anda boleh menyesuaikan sepenuhnya Pembantu Reka Bentuk untuk ciri reka bentuk individu dan keperluan pelaporan anda. Klik Tugasan ➤ Tetapan ➤ Tetapan Peraturan Pembantu Reka Bentuk untuk menentukan pilihan yang mengawal peraturan dan parameter yang digunakan untuk pelbagai stages kompilasi reka bentuk untuk semakan peraturan reka bentuk.
Tetapan Peraturan Pembantu Reka Bentuk
Menjalankan Pembantu Reka Bentuk
Apabila didayakan, Pembantu Reka Bentuk berjalan secara automatik semasa penyusunan dan melaporkan pelanggaran peraturan reka bentuk yang didayakan dalam Laporan Penyusunan. Sebagai alternatif, anda boleh menjalankan Pembantu Reka Bentuk dalam Mod Analisis pada petikan kompilasi tertentu untuk memfokuskan analisis pada hanyatage. Untuk mendayakan semakan Pembantu Reka Bentuk automatik semasa penyusunan:
- Hidupkan Dayakan pelaksanaan Pembantu Reka Bentuk semasa penyusunan dalam Tetapan Peraturan Pembantu Reka Bentuk. Untuk menjalankan Pembantu Reka Bentuk dalam mod analisis untuk mengesahkan syot kilat tertentu terhadap sebarang peraturan reka bentuk yang digunakan pada syot kilat:
- Klik Laporkan DRC dalam panel Tugasan Penganalisis Masa atau Perancang Cip.
Viewing dan Membetulkan Keputusan Pembantu Reka Bentuk
Laporan Pembantu Reka Bentuk mendayakan pelanggaran peraturan reka bentuk dalam pelbagai stages Laporan Penyusunan.
Pembantu Reka Bentuk Keputusan dalam Sintesis, Pelan, Tempat dan Memuktamadkan Laporan
Kepada view keputusan untuk setiap peraturan, klik peraturan dalam senarai Peraturan. Perihalan peraturan dan cadangan reka bentuk untuk pembetulan muncul.
Syor Pelanggaran Peraturan Pembantu Reka Bentuk
Ubah suai RTL anda untuk membetulkan pelanggaran peraturan reka bentuk.
Kurangkan Tahap Logik
Tahap logik yang berlebihan boleh memberi kesan kepada kualiti hasil Fitter kerana laluan kritikal reka bentuk mempengaruhi susunan dan tempoh pemprosesan Fitter. The Fitter meletakkan dan mengarahkan reka bentuk berdasarkan kelonggaran masa. The Fitter meletakkan laluan yang lebih panjang dengan yang paling sedikit kendur terlebih dahulu. Fitter biasanya mengutamakan laluan peringkat logik yang lebih tinggi daripada laluan peringkat logik yang lebih rendah. Biasanya, selepas Fitter stage selesai, laluan kritikal yang tinggal bukanlah laluan peringkat logik tertinggi. The Fitter memberikan peletakan pilihan, penghalaan, dan penamatan kepada logik tahap yang lebih tinggi. Mengurangkan tahap logik membantu memastikan semua elemen reka bentuk menerima keutamaan Fitter yang sama. Jalankan Laporan ➤ Laporan Tersuai ➤ Laporan Masa dalam Penganalisis Masa untuk menjana laporan yang menunjukkan tahap logik dalam laluan. Jika laluan gagal pemasaan dan bilangan tahap logik adalah tinggi, pertimbangkan untuk menambah saluran paip di bahagian reka bentuk itu untuk meningkatkan prestasi.
Laporan Kedalaman Logik dalam Laluan
Melaporkan Kedalaman Tahap Logik
Selepas Rancangan Penyusun stage, anda boleh menjalankan report_logic_depth dalam konsol Tcl Penganalisis Masa untuk view bilangan tahap logik dalam domain jam. report_logic_depth menunjukkan taburan kedalaman logik antara laluan kritikal, membolehkan anda mengenal pasti kawasan di mana anda boleh mengurangkan tahap logik dalam RTL anda.
report_logic_depth -panel_name -dari [get_clock ] \ -untuk [mendapatkan_jam ]
report_logic_depth Output
Untuk mendapatkan data untuk mengoptimumkan RTL, jalankan report_logic_depth selepas Pelan Pengkompiltage, sebelum menjalankan baki Fitter stages. Jika tidak, laporan pasca-Fitter juga termasuk hasil daripada pengoptimuman fizikal (berhenti dan sintesis semula).
Melaporkan Laluan Jiran
Selepas menjalankan Fitter (Finalize) stage, anda boleh menjalankan report_neighbor_paths untuk membantu menentukan punca laluan kritikal (contohnyaample, tahap logik tinggi, had penamatan, peletakan suboptimum, persilangan lajur I/O, penahan-pembetulan atau lain-lain): report_neighbor_paths -to_clock -npaths -nama_panel
report_neighbor_paths melaporkan laluan paling kritikal masa dalam reka bentuk, termasuk slack yang berkaitan, maklumat ringkasan laluan tambahan dan kotak sempadan laluan.
report_neighbor_paths Output
report_neighbor_paths menunjukkan Laluan Sebelum dan Laluan kritikal masa yang paling kritikal dan Selepas setiap Laluan kritikal. Pemasa semula atau pengimbangan logik laluan boleh memudahkan penutupan masa jika terdapat kendur negatif pada Laluan, tetapi kelonggaran positif pada Laluan Sebelum atau Laluan Selepas.
Untuk mendayakan penamatan semula, pastikan pilihan berikut dihidupkan:
- Untuk Daftar—dayakan Tugasan ➤ Tetapan ➤ Tetapan Pengkompil ➤ Pengoptimuman Daftar ➤ Benarkan Pemasaan Semula Daftar
- Untuk Titik Akhir RAM—dayakan Tugasan ➤ Tetapan ➤ Tetapan Pengkompil ➤ Tetapan Penyusun (Lanjutan) ➤ Benarkan Pemasa Semula RAM
- Untuk Titik Tamat DSP—dayakan Tugasan ➤ Tetapan ➤ Tetapan Pengkompil ➤ Tetapan Pembetulan (Lanjutan) ➤ Benarkan Pemasaan DSP Bersara
NOTA
Jika pengimbangan logik selanjutnya diperlukan, anda mesti mengubah suai RTL anda secara manual untuk mengalihkan logik daripada Laluan kritikal ke Laluan Sebelum atau Laluan Selepas.
Jika output daftar disambungkan ke inputnya, satu atau kedua-dua laluan jiran mungkin sama dengan laluan semasa. Apabila mencari laluan jiran dengan kendur paling teruk, semua keadaan operasi dipertimbangkan, bukan hanya keadaan operasi laluan utama itu sendiri.
Mengvisualisasikan Tahap Logik dalam Peta Teknologi Viewer
Peta Teknologi Viewer juga menyediakan skema, dipetakan teknologi, perwakilan senarai bersih reka bentuk, dan boleh membantu anda melihat kawasan mana dalam reka bentuk boleh mendapat manfaat daripada mengurangkan bilangan tahap logik. Anda juga boleh menyiasat reka letak fizikal laluan secara terperinci dalam Perancang Cip. Untuk mencari laluan masa dalam salah satu daripada viewers, klik kanan laluan dalam laporan masa, tuding ke Cari Laluan dan pilih Cari dalam Peta Teknologi Vieweh.
Kurangkan Jaring Kipas Tinggi
Jaring kipas yang tinggi boleh menyebabkan kesesakan sumber, dengan itu menyukarkan penutupan masa. Secara umum, Pengkompil secara automatik menguruskan jaring kipas tinggi yang berkaitan dengan jam. Pengkompil secara automatik mempromosikan jaring kipas tinggi yang diiktiraf ke rangkaian jam global. Pengkompil membuat usaha pengoptimuman yang lebih tinggi semasa Tempat dan Laluantages, yang menghasilkan penduaan daftar yang bermanfaat. Dalam kes sudut berikut, anda juga boleh mengurangkan kesesakan dengan membuat perubahan manual berikut pada RTL reka bentuk anda:
Sarung Sudut Jaring Keluar Kipas Tinggi
Ciri Reka Bentuk | Pengoptimuman RTL Manual |
Jaringan kipas tinggi yang mencapai banyak hierarki atau destinasi yang jauh dari segi fizikal | Tentukan tugasan duplicate_hierarchy_depth pada daftar terakhir dalam saluran paip untuk menduplikasi rangkaian fan-out tinggi secara manual merentas hierarki. Tentukan tugasan pendua_daftar untuk pendua daftar semasa penempatan. |
Reka bentuk dengan isyarat kawalan ke blok memori DSP atau M20K daripada logik gabungan | Pandu isyarat kawalan ke memori DSP atau M20K daripada daftar. |
Daftar Penduaan Merentas Hierarki
Anda boleh menentukan tugasan duplicate_hierarchy_depth pada daftar terakhir dalam saluran paip untuk membimbing penciptaan penduaan daftar dan fan-out. Angka berikut menggambarkan kesan tugasan duplicate_hierarchy_depth berikut:
set_instance_assignment -name duplicate_hierarchy_depth -to \
di mana:
- register_name—daftar terakhir dalam rangkaian yang meminati berbilang hierarki.
- level_number—bilangan daftar dalam rantai untuk diduplikasi.
Rajah 9. Sebelum Penduaan Daftar
Tetapkan tugasan duplicate_hierarchy_depth untuk melaksanakan penduaan daftar merentas hierarki dan buat pepohon daftar berikutan daftar terakhir dalam rantaian. Anda nyatakan nama daftar dan bilangan pendua yang diwakili oleh M dalam contoh berikutample. Anak panah merah menunjukkan lokasi berpotensi daftar pendua.
- set_instance_assignment –nama DUPLICATE_HIERARCHY_DEPTH –kepada regZ M
Penduaan Daftar = 1
Menentukan tahap tunggal pendua daftar berikut (M=1) menduplikasi satu daftar (regZ) ke bawah satu tahap hierarki reka bentuk:
- set_instance_assignment –nama DUPLICATE_HIERARCHY_DEPTH –kepada regZ 1
Penduaan Daftar = 3
Menentukan tiga peringkat pertindihan daftar (M=3) menduplikasi tiga daftar (regZ, regY, regX) ke bawah tiga, dua dan satu peringkat hierarki, masing-masing:
- set_instance_assignment –nama DUPLICATE_HIERARCHY_DEPTH –kepada regZ 3
Dengan menduplikasi dan menolak daftar ke dalam hierarki, reka bentuk mengekalkan bilangan kitaran yang sama ke semua destinasi, sambil mempercepatkan prestasi pada laluan ini.
Mendaftar Penduaan Semasa Penempatan
Rajah 12 di halaman 11 menunjukkan daftar dengan kipas keluar tinggi ke kawasan cip yang tersebar luas. Dengan menduplikasi daftar ini sebanyak 50 kali, anda boleh mengurangkan jarak antara daftar dan destinasi yang akhirnya menghasilkan prestasi jam yang lebih pantas. Menetapkan duplicate_register membolehkan Pengkompil memanfaatkan kedekatan fizikal untuk membimbing penempatan daftar baharu yang memberi subset fan-out.
Rajah 12. Penduaan Daftar Semasa Penempatan
Nota: Untuk menyiarkan isyarat merentasi cip, gunakan multistage saluran paip. Gunakan tugasan pendua_daftar pada setiap daftar dalam perancangan. Teknik ini mencipta struktur pokok yang menyiarkan isyarat merentasi cip.
ViewKeputusan Penduaan
Berikutan sintesis reka bentuk, view penduaan menghasilkan laporan Ringkasan Penduaan Pokok Hierarki dalam folder Sintesis Laporan Penyusunan. Laporan itu menyediakan perkara berikut:
- Maklumat tentang daftar yang mempunyai tugasan duplicate_hierarchy_depth.
- Sebab panjang rantai yang boleh anda gunakan sebagai titik permulaan untuk penambahbaikan selanjutnya dengan tugasan.
- Maklumat tentang daftar individu dalam rantaian yang boleh anda gunakan untuk lebih memahami struktur pendua yang dilaksanakan.
Laporan Fitter juga termasuk bahagian daftar yang mempunyai tetapan pendua_daftar.
Gunakan Teknik Pengoptimuman Pengkompil
Reka bentuk yang menggunakan peratusan yang sangat tinggitage sumber peranti FPGA boleh menyebabkan kesesakan sumber, mengakibatkan fMAX yang lebih rendah dan penutupan masa yang lebih kompleks. Tetapan Mod Pengoptimuman Pengkompil membolehkan anda menentukan fokus usaha Pengkompil semasa sintesis. Untuk exampOleh itu, anda mengoptimumkan sintesis untuk Kawasan, atau Kebolehhalaan apabila menangani kesesakan sumber. Anda boleh mencuba dengan gabungan tetapan Mod Pengoptimuman yang sama ini dalam Intel Quartus Prime Design Space Explorer II. Tetapan ini dan teknik manual lain boleh membantu anda mengurangkan kesesakan dalam reka bentuk yang sangat digunakan.
Masalah Penutupan Masa
- Reka bentuk dengan penggunaan sumber peranti yang sangat tinggi merumitkan penutupan masa.
Penyelesaian Penutupan Masa
- Gunakan Mod dan Strategi Pengoptimuman Pengkompil pada halaman 13—nyatakan matlamat mod pengoptimuman utama untuk sintesis reka bentuk.
- Eksperimen dengan Pilihan Kawasan dan Kebolehhalaan pada halaman 16—gunakan koleksi tetapan tambahan untuk mengurangkan kesesakan dan memenuhi matlamat kawasan dan kebolehhalaan.
- Pertimbangkan Sintesis Fraktal untuk Reka Bentuk Intensif Aritmetik pada halaman 16—Untuk reka bentuk berintensif aritmetik, pemprosesan tinggi, sintesis fraktal mengurangkan penggunaan sumber peranti melalui penaturan pengganda, penandaan dan pembungkusan aritmetik berterusan.
Maklumat Berkaitan
- Bab “Penutupan Masa dan Pengoptimuman”, Panduan Pengguna Edisi Intel Quartus Prime Pro: Pengoptimuman Reka Bentuk
- Panduan Pengguna Edisi Intel Quartus Prime Pro: Kompilasi Reka Bentuk
Gunakan Mod dan Strategi Pengoptimuman Pengkompil
Gunakan maklumat berikut untuk menggunakan mod pengoptimuman Pengkompil dan strategi penyusunan Design Space Explorer II (DSE II).
Eksperimen dengan Tetapan Mod Pengoptimuman Pengkompil
Ikuti langkah ini untuk mencuba tetapan mod pengoptimuman Pengkompil:
- Buat atau buka projek Intel Quartus Prime.
- Untuk menentukan strategi pengoptimuman peringkat tinggi Pengkompil, klik Tugasan ➤ Tetapan ➤ Tetapan Pengkompil. Eksperimen dengan mana-mana tetapan mod berikut, seperti yang diterangkan oleh Jadual 4 di halaman 14.
- Untuk menyusun reka bentuk dengan tetapan ini, klik Mulakan Kompilasi pada Papan Pemuka Kompilasi.
- View hasil kompilasi dalam Laporan Penyusunan.
- Klik Alat ➤ Penganalisis Masa untuk view keputusan tetapan pengoptimuman pada prestasi.
Tetapan Mod Pengoptimuman Pengkompil
Mod Pengoptimuman (Halaman Tetapan Pengkompil)
Mod Pengoptimuman | Penerangan |
Seimbang (aliran normal) | Pengkompil mengoptimumkan sintesis untuk pelaksanaan seimbang yang menghormati kekangan masa. |
Usaha Prestasi Tinggi | Pengkompil meningkatkan usaha pengoptimuman masa semasa peletakan dan penghalaan, dan membolehkan pengoptimuman Sintesis Fizikal berkaitan pemasaan (setiap tetapan pengoptimuman daftar). Setiap pengoptimuman tambahan boleh meningkatkan masa penyusunan. |
Prestasi Tinggi dengan Usaha Penempatan Maksimum | Mendayakan pengoptimuman Pengkompil yang sama seperti Usaha Prestasi Tinggi, dengan usaha pengoptimuman peletakan tambahan. |
Prestasi Unggul | Mendayakan pengoptimuman Pengkompil yang sama seperti Usaha Prestasi Tinggi, dan menambah lebih banyak pengoptimuman semasa Analisis & Sintesis untuk memaksimumkan prestasi reka bentuk dengan potensi peningkatan kepada kawasan logik. Jika penggunaan reka bentuk sudah sangat tinggi, pilihan ini boleh menyebabkan kesukaran dalam pemasangan, yang juga boleh menjejaskan kualiti pengoptimuman keseluruhan secara negatif. |
Prestasi Unggul dengan Usaha Penempatan Maksimum | Mendayakan pengoptimuman Pengkompil yang sama seperti Prestasi Unggul, dengan usaha pengoptimuman peletakan tambahan. |
Kawasan Agresif | Penyusun membuat usaha yang agresif untuk mengurangkan kawasan peranti yang diperlukan untuk melaksanakan reka bentuk dengan potensi mengorbankan prestasi reka bentuk. |
Usaha Kebolehhalaan Peletakan Tinggi | Penyusun membuat usaha yang tinggi untuk mengarahkan reka bentuk dengan potensi perbelanjaan kawasan reka bentuk, prestasi, dan masa penyusunan. Pengkompil menghabiskan masa tambahan untuk mengurangkan penggunaan penghalaan, yang boleh meningkatkan kebolehhalaan dan juga menjimatkan kuasa dinamik. |
Usaha Kebolehhalauan Pembungkusan yang Tinggi | Pengkompil membuat usaha yang tinggi untuk mengarahkan reka bentuk dengan potensi perbelanjaan kawasan reka bentuk, prestasi, dan masa penyusunan. Pengkompil menghabiskan masa tambahan untuk membungkus daftar, yang boleh meningkatkan kebolehhalaan dan juga menjimatkan kuasa dinamik. |
Optimumkan Senarai Bersih untuk Kebolehhalaan | Penyusun melaksanakan pengubahsuaian senarai bersih untuk meningkatkan kebolehhalaan dengan kemungkinan mengorbankan prestasi. |
bersambung… |
Mod Pengoptimuman | Penerangan |
Usaha Kuasa Tinggi | Pengkompil membuat usaha yang tinggi untuk mengoptimumkan sintesis untuk kuasa rendah. Usaha Kuasa Tinggi meningkatkan masa larian sintesis. |
Kuasa Agresif | Membuat usaha agresif untuk mengoptimumkan sintesis untuk kuasa rendah. Pengkompil seterusnya mengurangkan penggunaan penghalaan isyarat dengan kadar togol yang ditentukan atau dianggarkan tertinggi, menjimatkan kuasa dinamik tambahan tetapi berpotensi menjejaskan prestasi. |
Masa Penyusunan Agresif | Mengurangkan masa penyusunan yang diperlukan untuk melaksanakan reka bentuk dengan usaha yang dikurangkan dan pengoptimuman prestasi yang lebih sedikit. Pilihan ini juga melumpuhkan beberapa fungsi pelaporan terperinci.
Nota: Menghidupkan Masa Penyusunan Agresif membolehkan Intel Quartus Prime Settings File (.qsf) tetapan yang tidak boleh ditindih oleh tetapan .qsf lain. |
Strategi Penyusunan Penjelajah Angkasa II Reka Bentuk
DSE II membolehkan anda mencari tetapan projek yang optimum untuk matlamat sumber, prestasi atau pengoptimuman kuasa. DSE II membolehkan anda menyusun reka bentuk secara berulang menggunakan kombinasi pratetap yang berbeza bagi tetapan dan kekangan untuk mencapai matlamat tertentu. DSE II kemudian melaporkan gabungan tetapan terbaik untuk memenuhi matlamat anda. DSE II juga boleh mengambil advantage kebolehan penyejajaran untuk menyusun benih pada berbilang komputer. Tetapan Strategi Penyusunan DSE II menggemakan tetapan Mod Pengoptimuman dalam Jadual 4 di halaman 14
Reka Bentuk Penjelajah Angkasa II
Ikuti langkah ini untuk menentukan Strategi Penyusunan untuk DSE II:
- Untuk melancarkan DSE II (dan menutup perisian Intel Quartus Prime), klik Alat ➤ Lancarkan Design Space Explorer II. DSE II dibuka selepas perisian Intel Quartus Prime ditutup.
- Pada bar alat DSE II, klik ikon Penerokaan.
- Kembangkan Titik Penerokaan.
- Pilih Penerokaan reka bentuk. Dayakan mana-mana strategi Kompilasi untuk menjalankan penerokaan reka bentuk yang menyasarkan strategi tersebut.
Kurangkan Kesesakan untuk Penggunaan Tinggi
Reka bentuk yang menggunakan lebih 80% sumber peranti biasanya memberikan kesukaran yang paling sukar dalam penutupan masa. Anda boleh menggunakan teknik manual dan automatik berikut untuk mengurangkan lagi kesesakan dan memudahkan penutupan masa.
- Eksperimen dengan Pilihan Kawasan dan Kebolehhalaan pada halaman 16
- Pertimbangkan Sintesis Fraktal untuk Reka Bentuk Intensif Aritmetik pada halaman 16
Eksperimen dengan Pilihan Kawasan dan Kebolehhalaan
Apabila penggunaan peranti menyebabkan kesesakan penghalaan, anda boleh mencuba tetapan pengoptimuman Kawasan dan Kebolehhalaan untuk mengurangkan penggunaan sumber dan kesesakan untuk reka bentuk anda. Klik Tugasan ➤ Tetapan ➤ Tetapan Pengkompil ➤ Mod Pengoptimuman untuk mengakses tetapan ini:
Pilihan Kawasan dan Kebolehhalaan
Pertimbangkan Sintesis Fraktal untuk Reka Bentuk Intensif Aritmetik
Untuk reka bentuk berintensif aritmetik yang tinggi, anda boleh mendayakan pengoptimuman sintesis fraktal automatik untuk meningkatkan penggunaan sumber peranti. Pengoptimuman sintesis fraktal termasuk penyusunan penggandaan dan penamatan, serta pembungkusan aritmetik berterusan. Pengoptimuman menyasarkan reka bentuk dengan sejumlah besar operasi aritmetik ketepatan rendah (seperti penambahan dan pendaraban). Anda boleh mendayakan sintesis fraktal secara global atau untuk pengganda tertentu sahaja. Di bawah keadaan yang ideal, pengoptimuman sintesis fraktal boleh mencapai pengurangan kawasan 20-45%.
Penyelarasan dan Pemasaan Penggandaan
Regularisasi dan penamatan pengganda melakukan inferens pelaksanaan pengganda lembut yang sangat dioptimumkan. Penyusun boleh menggunakan retiming ke belakang kepada dua atau lebih saluran paiptages jika diperlukan. Apabila anda mendayakan sintesis fraktal, Pengkompil menggunakan penyelarasan pengganda dan penamatan kepada pengganda yang ditandatangani dan tidak ditandatangani.
Rajah 16. Pengiraan Masa Berganda
NOTA
- Regularisasi berganda hanya menggunakan sumber logik dan tidak menggunakan blok DSP.
- Pengaturan dan penandaan pengganda digunakan pada pengganda yang ditandatangani dan yang tidak ditandatangani dalam modul di mana tugasan QSF FRACTAL_SYNTHESIS ditetapkan.
Pembungkusan Aritmetik Berterusan
Pembungkusan aritmetik berterusan mensintesis semula get aritmetik ke dalam blok logik bersaiz optimum untuk dimuatkan ke dalam LAB Intel FPGA. Pengoptimuman ini membolehkan sehingga 100% penggunaan sumber LAB untuk blok aritmetik. Apabila anda mendayakan sintesis fraktal, Pengkompil menggunakan pengoptimuman ini pada semua rantai pembawa dan get logik dua input. Pengoptimuman ini boleh mengemas pokok penambah, pengganda dan sebarang logik berkaitan aritmetik lain.
Pembungkusan Aritmetik Berterusan
NOTA
Ambil perhatian bahawa pembungkusan aritmetik berterusan berfungsi secara bebas daripada regularisasi pengganda. Jadi, jika anda menggunakan pengganda yang tidak teratur (seperti menulis pengganda anda sendiri) maka pembungkusan aritmetik berterusan masih boleh beroperasi. Pengoptimuman sintesis fraktal paling sesuai untuk reka bentuk dengan pemecut pembelajaran mendalam atau fungsi berintensif aritmetik tinggi lain yang melebihi semua sumber DSP. Mendayakan sintesis fraktal di seluruh projek boleh menyebabkan kembung yang tidak perlu pada modul yang tidak sesuai untuk pengoptimuman fraktal.
Mendayakan atau Melumpuhkan Sintesis Fraktal
Untuk peranti Intel Stratix® 10 dan Intel Agilex™, pengoptimuman sintesis fraktal berjalan secara automatik untuk pengganda kecil (sebarang pernyataan A*B dalam Verilog HDL atau VHDL dengan lebar bit operan ialah 7 atau kurang). Anda juga boleh melumpuhkan sintesis fraktal automatik untuk pengganda kecil untuk peranti ini menggunakan salah satu daripada kaedah berikut:
- Dalam RTL, tetapkan gaya berbilang DSP, seperti yang diterangkan "Atribut Sintesis HDL Verilog Multigaya". Untuk example: (* multstyle = “dsp” *) modul foo(…); modul foo(..) /* sintesis multstyle = “dsp” */;
- Dalam .qsf file, tambahkan sebagai tugasan seperti berikut: set_instance_assignment -name DSP_BLOCK_BALANCING_IMPLEMENTATION \DSP_BLOCKS -to r
Selain itu, untuk peranti Intel Stratix 10, Intel Agilex, Intel Arria® 10 dan Intel Cyclone® 10 GX, anda boleh mendayakan sintesis fraktal secara global atau untuk pengganda tertentu dengan pilihan GUI Sintesis Fraktal atau tugasan FRACTAL_SYNTHESIS .qsf yang sepadan:
- Dalam RTL, gunakan altera_attribute seperti berikut: (* altera_attribute = “-name FRACTAL_SYNTHESIS ON” *)
- Dalam .qsf file, tambahkan sebagai tugasan seperti berikut: set_global_assignment -name FRACTAL_SYNTHESIS ON -entity
Dalam antara muka pengguna, ikuti langkah berikut:
- Klik Tugasan ➤ Editor Tugasan.
- Pilih Sintesis Fraktal untuk Nama Tugasan, Hidup untuk Nilai, nama entiti berintensif aritmetik untuk Entiti dan nama contoh dalam lajur Kepada. Anda boleh memasukkan kad bebas (*) untuk Kepada untuk memperuntukkan semua kejadian entiti.
Rajah 18. Tugasan Sintesis Fraktal dalam Editor Tugasan
Maklumat Berkaitan
- Atribut Sintesis HDL Multistyle Verilog
- Dalam Bantuan Intel Quartus Prime.
Kekalkan Hasil Yang Memuaskan
Anda boleh memudahkan penutupan masa dengan membuat anotasi belakang hasil kompilasi yang memuaskan untuk mengunci penempatan blok besar yang berkaitan dengan jam, RAM dan DSP. Begitu juga, teknik penggunaan semula blok reka bentuk membolehkan anda mengekalkan hasil kompilasi yang memuaskan untuk periferi FPGA atau blok reka bentuk logik teras tertentu (logik yang terdiri daripada contoh reka bentuk hierarki), dan kemudian menggunakan semula blok tersebut dalam kompilasi berikutnya. Dalam penggunaan semula blok reka bentuk, anda menetapkan contoh hierarki sebagai partition reka bentuk, dan kemudian simpan dan eksport partition selepas penyusunan berjaya. Memelihara dan menggunakan semula hasil yang memuaskan membolehkan anda menumpukan usaha dan masa Penyusun hanya pada bahagian reka bentuk yang belum menutup masa.
Masalah Penutupan Masa
- Melainkan dikunci, Pengkompil boleh melaksanakan blok reka bentuk, jam, RAM dan DSP secara berbeza daripada kompilasi kepada kompilasi bergantung pada pelbagai faktor.
Penyelesaian Penutupan Masa
- Lock Down Jam, RAM dan DSP pada halaman 20—beranotasi belakang hasil kompilasi yang memuaskan untuk mengunci penempatan blok besar yang berkaitan dengan jam, RAM dan DSP.
- Kekalkan Hasil Pemisahan Reka Bentuk pada halaman 21—pelihara pembahagian untuk blok yang menepati masa dan fokuskan pengoptimuman pada blok reka bentuk yang lain.
Maklumat Berkaitan
- Bantuan Kotak Dialog Tugasan Anotasi Belakang
- AN-899: Mengurangkan Masa Penyusunan dengan Pemeliharaan Pantas
- Panduan Pengguna Edisi Intel Quartus Prime Pro: Reka Bentuk Berasaskan Blok
Lock Down Jam, RAM dan DSP
Anda boleh memudahkan penutupan masa dengan membuat anotasi belakang hasil kompilasi yang memuaskan untuk mengunci penempatan blok besar yang berkaitan dengan Jam, RAM dan DSP. Mengunci penempatan blok besar boleh menghasilkan fMAX yang lebih tinggi dengan bunyi yang lebih sedikit. Mengunci blok besar seperti RAM dan DSP boleh menjadi berkesan kerana blok ini mempunyai sambungan yang lebih berat daripada LAB biasa, menyukarkan pergerakan semasa penempatan. Apabila benih menghasilkan hasil yang baik daripada peletakan RAM dan DSP yang sesuai, anda boleh menangkap peletakan itu dengan anotasi belakang. Penyusun seterusnya boleh mendapat manfaat daripada penempatan RAM dan DSP berkualiti tinggi daripada benih yang baik. Teknik ini tidak menguntungkan reka bentuk dengan sangat sedikit RAM atau DSP. Klik Tugasan ➤ Back-Annotate Assignments untuk menyalin tugasan sumber peranti daripada kompilasi terakhir ke .qsf untuk digunakan dalam kompilasi seterusnya. Pilih jenis anotasi belakang dalam senarai jenis anotasi belakang.
Kotak Dialog Tugasan Anotasi Belakang
Sebagai alternatif, anda boleh menjalankan anotasi belakang dengan quartus_cdb boleh laku berikut. quartus_cdb –back_annotate [–dsp] [–ram] [–clock]
NOTA
- Boleh laku menyokong pembolehubah [–dsp], [–ram] dan [–clock] tambahan yang kotak dialog Tugasan Anotasi Belakang belum disokong.
Kekalkan Hasil Pembahagian Reka Bentuk
NOTA
- Selepas membahagikan reka bentuk, anda boleh mengekalkan partition untuk blok yang menepati masa dan memfokuskan pengoptimuman pada blok reka bentuk yang lain. Di samping itu, pilihan Fast Preserve memudahkan logik partition yang dipelihara kepada logik antara muka sahaja semasa penyusunan, dengan itu mengurangkan masa penyusunan untuk partition. Fast Preserve hanya menyokong penggunaan semula partition root dan reka bentuk konfigurasi semula separa. Untuk reka bentuk dengan sub-modul yang mencabar untuk penutupan masa, anda boleh melakukan pengoptimuman dan penyusunan pembahagian modul yang berdiri sendiri, dan kemudian mengeksport modul tertutup masa untuk mengekalkan pelaksanaan dalam kompilasi berikutnya.
Memelihara Hasil Pembahagian Reka Bentuk
Reka bentuk berasaskan blok memerlukan pembahagian reka bentuk. Pembahagian reka bentuk membolehkan anda mengekalkan blok logik individu dalam reka bentuk anda, tetapi juga boleh memperkenalkan potensi kehilangan prestasi akibat persimpangan partition dan kesan pelan lantai. Anda perlu mengimbangi faktor ini apabila menggunakan teknik reka bentuk berasaskan blok. Langkah tahap tinggi berikut menerangkan aliran pemeliharaan partition untuk reka bentuk penggunaan semula partition root:
- Klik Pemprosesan ➤ Mula ➤ Mulakan Analisis & Penghuraian.
- Dalam Navigator Projek, klik kanan contoh reka bentuk tertutup masa, tuding pada Pemisahan Reka Bentuk, dan pilih Jenis pemisahan, seperti yang diterangkan oleh Tetapan Pembahagian Reka Bentuk pada halaman 23.
Buat Partition Reka Bentuk
- Tentukan kekangan perancangan lantai Kunci Logik untuk partition. Dalam Tetingkap Partition Reka Bentuk, klik kanan pada partition dan kemudian klik Logic Lock Region ➤ Create New Logic Lock Region. Pastikan kawasan itu cukup besar untuk memasukkan semua logik dalam partition.
- Untuk mengeksport hasil partition selepas penyusunan, dalam Tetingkap Partition Reka Bentuk, tentukan partition .qdb sebagai Eksport Selepas Akhir File.
Selepas Eksport Akhir File
- Untuk menyusun reka bentuk dan mengeksport partition, klik Compile Design pada Papan Pemuka Kompilasi.
- Buka projek peringkat atas dalam perisian Intel Quartus Prime.
- Klik Tugasan ➤ Tetapan ➤ Tetapan Pengkompil ➤ Kompilasi Tambahan. Hidupkan pilihan Fast Preserve.
Pilihan Simpan Cepat
- Klik OK.
- Dalam Tetingkap Pemisahan Reka Bentuk, tentukan .qdb yang dieksport sebagai Pangkalan Data Pemisahan File untuk partition berkenaan. .qdb ini kini menjadi sumber untuk partition ini dalam projek. Apabila anda mendayakan pilihan Fast Preserve, Pengkompil mengurangkan logik partition yang diimport kepada logik antara muka sahaja, dengan itu mengurangkan masa kompilasi yang diperlukan oleh partition.
Tetapan Pembahagian Reka Bentuk
Tetapan Pembahagian Reka Bentuk
Pilihan | Penerangan |
Nama Pembahagian | Menentukan nama partition. Setiap nama partition mestilah unik dan hanya terdiri daripada aksara abjad angka. Perisian Intel Quartus Prime secara automatik mencipta "root_partition" peringkat atas (|) untuk setiap semakan projek. |
Laluan Hierarki | Menentukan laluan hierarki contoh entiti yang anda tetapkan kepada partition. Anda menentukan nilai ini dalam Cipta Partition Baharu kotak dialog. Laluan hierarki partition root ialah |. |
taip | Klik dua kali untuk menentukan salah satu daripada jenis partition berikut yang mengawal cara Pengkompil memproses dan melaksanakan partition: |
bersambung… |
Pilihan | Penerangan |
• Lalai—Mengenal pasti partition standard. Pengkompil memproses partition menggunakan sumber reka bentuk yang berkaitan files.
• Boleh dikonfigurasikan semula—Mengenal pasti partition boleh konfigurasi semula dalam aliran konfigurasi semula separa. Nyatakan Boleh dikonfigurasikan semula taip untuk mengekalkan hasil sintesis, sambil membenarkan pemasangan semula partition dalam aliran PR. • Teras Terpelihara—Mengenal pasti partition dalam aliran reka bentuk berasaskan blok yang dikhaskan untuk pembangunan teras oleh Pengguna yang menggunakan semula pinggir peranti. |
|
Tahap Pemeliharaan | Menentukan salah satu daripada tahap pemeliharaan berikut untuk partition:
• Tidak Ditetapkan—menyatakan tiada tahap pemeliharaan. Partition menyusun dari sumber files. • disintesis—partition menyusun menggunakan synthesized snapshot. • muktamad—partition menyusun menggunakan syot kilat akhir. Dengan Tahap Pemeliharaan of disintesis or muktamad, perubahan kepada kod sumber tidak muncul dalam sintesis. |
kosong | Menentukan partition kosong yang dilangkau oleh Pengkompil. Tetapan ini tidak serasi dengan Teras Terpelihara dan Pangkalan Data Pembahagian File tetapan untuk partition yang sama. The Tahap Pemeliharaan mestilah Tidak Ditetapkan. Sekatan kosong tidak boleh mempunyai sebarang sekatan kanak-kanak. |
Pangkalan Data Pembahagian File | Menentukan Pangkalan Data Partition File (.qdb) yang digunakan oleh Pengkompil semasa penyusunan partition. Anda mengeksport .qdb untuk stage kompilasi yang anda mahu gunakan semula (sintesis atau muktamad). Tetapkan .qdb pada partition untuk menggunakan semula hasil tersebut dalam konteks lain. |
Pengikatan semula Entiti | • Aliran PR—menentukan entiti yang menggantikan persona lalai dalam setiap semakan pelaksanaan.
• Aliran Penggunaan Semula Pemisahan Akar —menentukan entiti yang menggantikan logik teras terpelihara dalam projek pengguna. |
warna | Menentukan pengekodan warna partition dalam paparan Perancang Cip dan Perancang Partition Reka Bentuk. |
Eksport Sintesis Pasca File | Mengeksport hasil kompilasi pasca sintesis secara automatik untuk partition ke .qdb yang anda tentukan, setiap kali Analisis & Sintesis dijalankan. Anda boleh mengeksport secara automatik mana-mana partition reka bentuk yang tidak mempunyai partition induk yang dipelihara, termasuk root_partition. |
Selepas Eksport Akhir File | Secara automatik mengeksport hasil kompilasi pasca akhir untuk partition ke .qdb yang anda tentukan, setiap kali s akhirtage daripada larian Fitter. Anda boleh mengeksport secara automatik mana-mana partition reka bentuk yang tidak mempunyai partition induk yang dipelihara, termasuk root_partition. |
Sejarah Semakan Dokumen AN 903
Dokumen ini mempunyai sejarah semakan berikut:
Versi Dokumen | Versi Intel Quartus Prime | Perubahan |
2021.02.25 | 19.3 | Menggantikan "tarik" dengan "ketegangan" masuk Analisis dan Optimumkan Reka Bentuk RTL topik. |
2020.03.23 | 19.3 | Ralat sintaks yang diperbetulkan dalam kod sampdalam topik "Kunci Jam, RAM dan DSP". |
2019.12.03 | 19.3 | • Keluaran awam pertama. |
Dokumen / Sumber
![]() |
intel AN 903 Mempercepatkan Penutupan Masa [pdf] Panduan Pengguna AN 903 Mempercepatkan Penutupan Masa, AN 903, Mempercepatkan Masa Penutupan, Masa Penutupan |