Nyahpepijat FPGA Dalam Litar Mikrosemi
Maklumat Produk
Spesifikasi
- Jenis Peranti: Microsemi SmartFusion2 SoC FPGA
- Tarikh Tayangan: Mei 2014
- Keupayaan Nyahpepijat: Nyahpepijat FPGA Dalam Litar, Penganalisis Logik Terbenam
- Kekerapan Tangkapan Data Maksimum: Sehingga 100MHz
Abstrak
FPGA ialah elemen reka bentuk yang berkuasa dalam sistem terbenam dengan banyak advan reka bentuktages, tetapi peranti ini boleh mempunyai reka bentuk kompleks dengan isu reka bentuk kompleks yang perlu dinyahpepijat. Menjejaki isu reka bentuk seperti ralat definisi, masalah interaksi sistem dan ralat pemasaan sistem boleh menjadi satu cabaran. Kemasukan keupayaan nyahpepijat dalam litar dalam FPGA boleh meningkatkan nyahpepijat perkakasan secara mendadak dan mengelakkan kekecewaan berjam-jam. Kertas kerja ini menerangkan beberapa pendekatan berbeza untuk nyahpepijat dalam litar untuk FPGA, mengenal pasti pertukaran utama dan melalui bekasampreka bentuk, disasarkan untuk peranti Microsemi SmartFusion®2 SoC FPGA, akan menunjukkan cara keupayaan baharu boleh digunakan untuk mempercepatkan nyahpepijat dan ujian.
pengenalan
FPGA ialah elemen reka bentuk yang meluas dan berkuasa dan kini ditemui dalam hampir setiap sistem terbenam. Dengan kapasiti yang semakin meningkat, kemasukan blok berfungsi pada cip yang kompleks dan antara muka bersiri lanjutan peranti ini juga boleh mempunyai masalah reka bentuk yang rumit yang perlu dinyahpepijat. Menjejaki isu seperti ralat takrif fungsi (di peringkat FPGA atau sistem), masalah interaksi sistem berfungsi, isu pemasaan sistem dan isu kesetiaan isyarat antara IC (seperti hingar, crosstalk atau pantulan) semuanya menjadi lebih kompleks apabila menggunakan FPGA lanjutan. Simulasi sememangnya membantu besar dalam mengenal pasti banyak masalah reka bentuk, tetapi banyak interaksi dunia nyata tidak akan muncul sehingga reka bentuk dilaksanakan dalam perkakasan. Beberapa teknik berbeza untuk menyahpepijat isu reka bentuk yang kompleks telah dibangunkan untuk memudahkan proses. Pemahaman yang teliti tentang setiap teknik utama ini, termasuk pelbagai advantages dan disadvantages, berguna apabila mempertimbangkan teknik atau gabungan teknik yang sesuai untuk reka bentuk tertentu.
Seorang bekasampreka bentuk FPGA, disasarkan untuk peranti Microsemi SmartFusion2 SoC FPGA, boleh digunakan untuk menunjukkan beberapa advantages dan disadvantagteknik standard ini serta keupayaan nyahpepijat dalam litar terbaharu. Contoh ilustrasi iniampsaya akan menunjukkan bagaimana pelbagai teknik ini boleh digunakan untuk mempercepatkan pengecaman dan penghapusan masalah perkakasan semasa nyahpepijat perkakasan.
Mengapakah Penyahpepijatan FPGA merupakan Aspek Kritikal Reka Bentuk dan Pembangunan Sistem?
FPGA mempunyai dua model kegunaan utama yang membezakannya daripada elemen reka bentuk lain. FPGA boleh digunakan dalam produk pengeluaran atau boleh digunakan sebagai kenderaan pembangunan untuk membuktikan atau membuat prototaip konsep reka bentuk pengeluaran. Apabila digunakan sebagai kenderaan pengeluaran, FPGA boleh menjadi sasaran yang jauh lebih fleksibel daripada ASIC atau kenderaan pengeluaran berasaskan CPU. Ini amat penting untuk reka bentuk baharu, reka bentuk yang belum dilaksanakan dalam perkakasan lagi. Reka bentuk dengan pilihan seni bina yang berbeza boleh dibuat dan diuji dengan mudah supaya reka bentuk yang optimum dikenal pasti. FPGA dengan pemproses pada cip (SoC FPGAs) juga memungkinkan untuk menukar pemprosesan berasaskan CPU dengan fungsi pecutan berasaskan FPGA yang dibantu perkakasan. Advan initages boleh mengurangkan secara mendadak masa yang diperlukan untuk reka bentuk, pengesahan, ujian dan analisis kegagalan untuk pembangunan produk baharu.
Apabila digunakan untuk prototaip reka bentuk, mungkin untuk ASIC pengeluaran, fleksibiliti FPGA ialah faedah utama. Platform perkakasan sebenar, walaupun yang tidak berjalan pada kelajuan penuh, menjadikannya lebih mudah untuk mendapatkan metrik prestasi sistem terperinci, data analisis pemprosesan dan hasil bukti konsep seni bina. Sokongan FPGA untuk pelaksanaan keras bas standard industri (seperti PCIe®, Gigabit Ethernet, XAUI, USB, CAN dan lain-lain) memudahkan ujian yang dikaitkan dengan antara muka ini. Keluarga terbaharu FPGA dengan pemproses ARM pada cip (SoC FPGA), memudahkan untuk melaksanakan prototaip dengan pemproses terbenam. Kod pemproses yang dibangunkan sebelum ini boleh dialihkan ke prototaip dan kod baharu yang dibuat selari dengan usaha reka bentuk perkakasan.
Gabungan pemproses standard dengan bas antara muka standard ini memungkinkan untuk memanfaatkan ekosistem besar perpustakaan kod yang tersedia, pemacu, API berfungsi, Sistem Pengendalian Masa Nyata dan juga Sistem Operasi penuh untuk mencipta prototaip yang berfungsi dengan lebih cepat. Selain itu, setelah reka bentuk dikukuhkan, prototaip FPGA boleh digunakan untuk menangkap set ujian simulasi yang meluas (untuk kedua-dua rangsangan dan tindak balas) yang mencerminkan data sistem sebenar. Set data ini boleh menjadi tidak ternilai dalam mencipta simulasi akhir untuk ASIC atau pelaksanaan pengeluaran lain. Advan itutagPenggunaan FPGA sebagai prototaip reka bentuk secara mendadak boleh mengurangkan masa untuk reka bentuk, pengesahan, ujian dan analisis kegagalan untuk pelaksanaan produk akhir.
Dalam kedua-dua model penggunaan FPGA biasa ini, fleksibiliti FPGA sebagai sasaran reka bentuk adalah satu kelebihan utamatage. Ini bermakna bahawa banyak perubahan reka bentuk dan lelaran akan menjadi kebiasaan, dan oleh itu keupayaan untuk menyahpepijat ralat reka bentuk dengan pantas akan menjadi penting untuk membolehkan sebanyak mungkin pilihan reka bentuk. Tanpa keupayaan nyahpepijat yang cekap kebanyakan advantage fleksibiliti reka bentuk FPGA akan berkurangan dengan masa penyahpepijatan tambahan yang diperlukan. Nasib baik, FPGA juga boleh menyediakan ciri perkakasan tambahan yang secara dramatik memudahkan penyahpepijatan masa nyata. Sebelum melihat keupayaan ini, mari kita lihat dahulu jenis isu yang paling biasa yang mungkin dihadapi oleh reka bentuk FPGA supaya kita mempunyai latar belakang yang sesuai untuk menilai kecekapan dan pertukaran yang berkaitan dengan pelbagai alat penyahpepijatan.
Isu Biasa Apabila Menyahpepijat Reka Bentuk FPGA
Bersama-sama dengan keupayaan diperluas yang dibawa oleh FPGA moden, peningkatan kerumitan yang berkaitan menjadikannya lebih sukar untuk mencipta reka bentuk tanpa ralat. Malah, telah dianggarkan bahawa penyahpepijatan boleh mengambil alih 50% daripada kitaran reka bentuk sistem terbenam. Dengan tekanan masa-ke-pasaran yang terus memerah kitaran pembangunan, penyahpepijatan perkakasan sistem awal diturunkan kepada sesuatu yang difikirkan selepas itu—terlalu kerap mengandaikan pengesahan itu (itu sendiri peratusan yang besar).tage jadual pembangunan), akan menangkap semua pepijat sebelum paparan sistem awal. Mari lihat hanya beberapa jenis isu sistem biasa untuk memahami dengan lebih baik cabaran reka bentuk biasa yang akan dihadapi semasa paparan sistem awal.
Ralat takrifan fungsional boleh menjadi dua kali ganda sukar ditemui kerana pereka bentuk telah salah faham keperluan tertentu, jadi ralat itu boleh diabaikan walaupun apabila melihat dengan teliti pada butiran reka bentuk. Seorang bekasampRalat takrifan fungsi biasa ialah apabila peralihan mesin keadaan tidak berakhir dalam keadaan yang betul. Ralat juga boleh muncul dalam antara muka sistem sebagai masalah interaksi. Kependaman antara muka, contohnyaample, mungkin dinyatakan secara salah sehingga mengakibatkan limpahan penimbal atau keadaan aliran bawah yang tidak dijangka.
Isu masa tahap sistem adalah satu lagi sumber ralat reka bentuk yang sangat biasa. Peristiwa tak segerak, khususnya, merupakan sumber ralat biasa apabila kesan domain pemasaan penyegerakan atau persimpangan tidak dipertimbangkan dengan teliti. Apabila beroperasi pada kelajuan jenis ralat ini boleh menjadi sangat bermasalah dan mungkin muncul sangat jarang, mungkin hanya apabila corak data tertentu nyata. Banyak pelanggaran masa biasa termasuk dalam kategori ini dan biasanya sangat sukar, jika tidak mustahil untuk disimulasikan.
Pelanggaran masa juga boleh disebabkan oleh kesetiaan isyarat yang rendah antara litar bersepadu, khususnya dalam sistem dengan rel kuasa berbilang untuk setiap litar. Kesetiaan isyarat yang rendah boleh mengakibatkan bunyi isyarat, crosstalk, pantulan, pemuatan berlebihan dan isu Gangguan Elektromagnet (EMI) yang sering muncul sebagai pelanggaran masa. Isu bekalan kuasa, seperti sementara (khususnya semasa sistem dimulakan atau ditutup), variasi beban dan tekanan pelesapan kuasa tinggi juga boleh mengakibatkan ralat misteri, selalunya tidak mudah dikesan kembali ke sumber bekalan kuasa. Walaupun reka bentuk adalah betul sepenuhnya isu fabrikasi papan boleh mengakibatkan kesilapan. Sambungan pateri yang rosak dan penyambung yang tidak dipasang dengan betul, contohnyaampia, boleh menjadi punca ralat dan mungkin juga bergantung kepada suhu atau lokasi papan. Penggunaan teknik pembungkusan FPGA lanjutan boleh menyukarkan untuk menyiasat isyarat pada papan litar bercetak, jadi hanya mendapatkan akses kepada isyarat yang dikehendaki selalunya boleh menjadi masalah. Selalunya banyak isu reka bentuk tidak mewujudkan ralat serta-merta dan mesti riak melalui reka bentuk sehingga ralat itu benar-benar nyata. Mengesan ralat permulaan kembali kepada punca selalunya boleh menjadi tugas yang mengecewakan, sukar dan memakan masa.
Untuk exampOleh itu, sedikit kesilapan dalam jadual terjemahan mungkin tidak menyebabkan ralat sehingga banyak kitaran kemudian. Beberapa alat yang akan kita bincangkan kemudian dalam kertas ini, yang menggunakan perkakasan nyahpepijat litar khusus, disasarkan secara khusus untuk menjadikan 'pemburuan pepijat' ini lebih cepat dan mudah. Sebelum masuk ke butiran alat ini, mari kita lihat simulasi teknik penyahpepijatan berasaskan perisian yang popular untuk lebih memahami advantages dan disadvantages menggunakan simulasi untuk nyahpepijat.
Penggunaan Simulasi untuk Penyahpepijatan
Biasanya dalam simulasi reka bentuk, semua komponen kehidupan sebenar di dalam dan di luar reka bentuk dimodelkan secara matematik sebagai proses perisian yang dilaksanakan secara berurutan pada CPU standard. Menggunakan pelbagai rangsangan pada reka bentuk dan menyemak output yang dijangkakan terhadap output reka bentuk simulasi, adalah cara mudah untuk menangkap kesilapan reka bentuk yang paling jelas. Tetingkap yang menunjukkan larian simulasi biasa diberikan dalam Rajah 1 di bawah. Advan yang jelastage daripada ayat simulasi penyahpepijatan berasaskan perkakasan, ialah simulasi boleh dilakukan dalam perisian—tiada reka bentuk berasaskan perkakasan sebenar dan meja ujian diperlukan. Simulasi boleh menangkap banyak ralat reka bentuk dengan cepat, khususnya yang berkaitan dengan spesifikasi yang salah, salah faham keperluan antara muka, ralat fungsi, dan banyak lagi jenis ralat 'kasar' yang mudah dikesan melalui vektor rangsangan mudah.
Simulasi amat berkesan apabila kombinasi rangsangan yang meluas tersedia untuk pereka bentuk dan output yang terhasil diketahui. Dalam kes ini, simulasi boleh melakukan ujian reka bentuk yang hampir menyeluruh. Malangnya, kebanyakan reka bentuk tidak mempunyai akses mudah kepada suite ujian yang luas dan proses menciptanya boleh memakan masa yang lama. Mencipta suite ujian yang meliputi 100% reka bentuk adalah hampir mustahil untuk reka bentuk berasaskan FPGA yang besar dan jalan pintas mesti digunakan untuk mencuba dan merangkumi elemen utama reka bentuk. Satu lagi kesukaran dengan simulasi, ialah ia bukan pelaksanaan 'dunia sebenar' dan tidak dapat menangkap peristiwa tak segerak, interaksi sistem pada kelajuan atau pelanggaran masa. Akhirnya, proses simulasi boleh menjadi sangat perlahan dan jika banyak lelaran diperlukan simulasi dengan cepat menjadi yang paling memakan masa, dan selalunya bahagian yang paling mahal dalam proses pembangunan.
Sebagai alternatif (atau mungkin lebih baik dinyatakan, sebagai tambahan kepada simulasi) pereka bentuk FPGA mendapati bahawa mereka boleh menambah perkakasan nyahpepijat ke dalam reka bentuk FPGA untuk memerhati dan mengawal isyarat utama dalam peranti. Teknik ini pada asalnya dibangunkan sebagai pendekatan ad-hoc, tetapi telah berkembang secara beransur-ansur menjadi strategi nyahpepijat perkakasan standard. Penggunaan keupayaan nyahpepijat dalam litar ini menawarkan advan yang ketaratages untuk reka bentuk berasaskan FPGA dan bahagian seterusnya akan meneroka tiga strategi yang paling biasa dan pelbagai advan merekatages dan disadvantages.
Pendekatan Nyahpepijat Dalam Litar Biasa untuk FPGA
Teknik yang paling biasa untuk melaksanakan keupayaan nyahpepijat dalam litar dalam FPGA menggunakan sama ada penganalisis logik terbenam, peralatan ujian luaran atau perkakasan probe isyarat khusus yang dibenamkan dalam fabrik FPGA. Penganalisis logik terbenam biasanya dilaksanakan menggunakan fabrik FPGA dan dimasukkan ke dalam reka bentuk. JTAG port digunakan untuk mengakses penganalisis dan data yang ditangkap boleh dipaparkan pada PC. Apabila peralatan ujian luaran digunakan, reka bentuk FPGA yang sedang diuji diubah suai supaya isyarat FPGA dalaman terpilih disalurkan ke pin output. Pin ini kemudiannya boleh diperhatikan melalui peralatan ujian luaran. Apabila perkakasan siasatan isyarat khusus digunakan, pelbagai pilihan isyarat dalaman boleh dibaca dalam masa nyata. Sesetengah pelaksanaan siasatan malah boleh digunakan untuk menulis untuk mendaftar atau lokasi memori meningkatkan lagi keupayaan nyahpepijat. Mari lihat lebih terperinci di advantages dan disadvantages setiap teknik ini dan kemudian lihat bekasampreka bentuk untuk melihat bagaimana pendekatan berbeza ini boleh memberi kesan kepada keseluruhan masa penyahpepijatan.
Penganalisis Logik Terbenam FPGA Debug Dalam Litar
Konsep penganalisis logik terbenam adalah hasil langsung daripada keupayaan penyahpepijatan litar ad-hoc yang dilaksanakan oleh pereka semasa FPGA mula-mula digunakan. Penganalisis logik terbenam menambah keupayaan baharu dan menghapuskan keperluan untuk pereka bentuk membangunkan penganalisis mereka sendiri. Kebanyakan FPGA menawarkan keupayaan ini dan pihak ketiga menawarkan penganalisis standard (Identify®, daripada Synopsys, adalah salah satu bekas popularample) yang boleh bersambung dengan mudah dengan alatan tahap yang lebih tinggi untuk meningkatkan lagi produktiviti.
Fungsi penganalisis logik dimasukkan ke dalam reka bentuk, menggunakan fabrik FPGA dan blok memori terbenam sebagai penimbal surih, seperti yang digambarkan dalam Rajah 2. Sumber pencetus juga dicipta supaya interaksi isyarat yang kompleks boleh dipilih dan ditangkap dengan mudah. Akses kepada penganalisis untuk kawalan dan pemindahan data biasanya dilakukan melalui standard JTAG port untuk memudahkan keperluan antara muka. Data yang ditangkap boleh dipaparkan pada PC menggunakan biasa viewperisian dan biasanya mencerminkan output bentuk gelombang simulator logik viewgaya dalam.
Advan itutagAntara pendekatan ini ialah tiada pin FPGA I/O tambahan digunakan, hanya standard JTAG isyarat. Teras IP penganalisis logik terbenam biasanya agak murah dan dalam beberapa kes boleh menjadi pilihan kepada sintesis FPGA sedia ada, atau alat simulasi. Dalam sesetengah kes, penganalisis logik terbenam juga boleh memberikan output tambahan pada I/O yang tidak digunakan, jika ia lebih mudah. Salah satu disadvantages kepada pendekatan ini ialah sejumlah besar sumber FPGA diperlukan. Khususnya, jika penimbal surih digunakan ini akan mengurangkan bilangan memori blok yang tersedia. Jika penimbal yang luas diperlukan ini juga akan menjadi pertukaran terhadap kedalaman ingatan (kerana penggunaan memori yang lebih luas menghasilkan kedalaman ingatan yang lebih cetek)—suatu kelemahan besartage apabila menggunakan peranti yang lebih kecil. Mungkin kelemahan terbesar kepada teknik ini ialah setiap kali pelarasan pada peletakan probe dibuat, adalah perlu untuk menyusun semula dan memprogram semula reka bentuk. Apabila menggunakan peranti yang besar, proses ini boleh mengambil masa yang agak lama. Disebabkan cara kuar isyarat diletakkan dalam reka bentuk, mungkin sukar untuk mengaitkan perhubungan pemasaan isyarat. Selain itu, kelewatan antara probe isyarat tidak konsisten dan oleh itu perhubungan pemasaan sukar untuk dibandingkan. Ini adalah kesukaran tertentu apabila membandingkan isyarat tak segerak atau isyarat daripada domain masa yang berbeza.
Nyahpepijat FPGA Dalam Litar – Peralatan Ujian Luaran
Penggunaan kod nyahpepijat dalam litar bersama-sama dengan peralatan ujian luaran adalah perkembangan semula jadi apabila penganalisis logik luaran sudah tersedia untuk ujian sistem. Dengan mencipta beberapa kod nyahpepijat mudah untuk mengenal pasti dan memilih isyarat ujian dalaman dan menggunakannya pada FPGA I/O, seperti yang ditunjukkan dalam Rajah 3, adalah mungkin untuk memanfaatkan keupayaan lanjutan penganalisis (seperti penimbal surih besar, jujukan pencetus kompleks dan berbilang viewpilihan) untuk mencipta persekitaran nyahpepijat yang mudah tetapi berkuasa. Keupayaan dalam litar yang lebih kompleks untuk pilihan pencetus lanjutan boleh meminimumkan bilangan output yang diperlukan. Untuk exampOleh itu, memilih alamat tertentu pada bas lebar mungkin menjadi penghalang jika pin luaran diperlukan.
Menggunakan logik FPGA dalaman secara mendadak mengurangkan keperluan I/O dan juga boleh mencari corak alamat tertentu (mungkin urutan panggilan dan pemulangan) untuk menyahpepijat masalah yang lebih kompleks. Jika antara muka pengguna biasa tersedia, ini boleh memudahkan keluk pembelajaran dan meningkatkan produktiviti.
Advan itutagPendekatan ini ialah ia memanfaatkan kos peralatan ujian luaran dan oleh itu tiada kos alat tambahan. Sesetengah teras IP litar nyahpepijat tersedia daripada pengeluar peralatan atau pengeluar FPGA, dan boleh menjadi kos yang sangat rendah atau bahkan percuma. Jumlah sumber FPGA yang diperlukan untuk melaksanakan logik pemilihan isyarat adalah sangat kecil, dan oleh kerana fungsi surih dilakukan menggunakan penganalisis logik luaran, tiada memori blok diperlukan. Memandangkan logik pemilihan adalah murah, sebilangan besar saluran dengan pencetus yang luas boleh disokong juga. Penganalisis logik boleh beroperasi dalam kedua-dua mod Pemasa dan mod Keadaan yang membantu mengasingkan beberapa isu pemasaan.
Yang disadvantages pendekatan ini boleh termasuk keperluan untuk membeli penganalisis logik, jika ia belum diperuntukkan kepada projek. Disadvan initage mungkin cukup untuk menghalang pendekatan ini dalam banyak keadaan. Walau bagaimanapun, ambil perhatian bahawa beberapa pilihan penganalisis logik kos rendah tersedia yang menggunakan PC atau tablet untuk paparan, menjadikan pilihan ini lebih menjimatkan kos untuk keperluan nyahpepijat mudah.
Bilangan pin FPGA yang digunakan boleh menjadi satu lagi kelemahantage dan jika bas lebar perlu diperhatikan, perancangan penting untuk susun atur papan dan penambahan penyambung nyahpepijat diperlukan. Keperluan ini paling sukar untuk diramalkan pada awal fasa reka bentuk dan satu lagi kerumitan yang tidak diingini. Sama seperti pendekatan penganalisis logik terbenam, strategi ujian luaran memerlukan penyusunan semula dan pengaturcaraan semula reka bentuk, apabila setiap percubaan baharu diperlukan.
Disadvan biasatagdaripada kedua-dua teknik ini—penggunaan sumber pada cip (yang juga boleh memberi kesan kepada prestasi pemasaan reka bentuk dan mewujudkan keperluan penyahpepijatan tambahan) keperluan untuk menyusun semula dan memprogram semula reka bentuk (yang boleh menambah jam atau bahkan hari pada jadual nyahpepijat) perancangan awal yang diperlukan untuk mengenal pasti kemungkinan senario ujian, dan penggunaan sumber I/O cip tambahan memerlukan pendekatan tanpa ini. Satu tindak balas ialah penambahan logik nyahpepijat khusus ke dalam fabrik FPGA pada beberapa peranti. Nyahpepijat dalam litar menggunakan probe perkakasan adalah hasilnya.
Nyahpepijat FPGA Dalam Litar – Probe Perkakasan
Penggunaan probe perkakasan secara mendadak memudahkan teknik nyahpepijat dalam litar untuk FPGA. Teknik ini dilaksanakan sebagai ciri Probe Langsung pada peranti SmartFusion2®SoC FPGA dan IGLOO®2 FPGA, menambah garisan probe khusus pada fabrik FPGA untuk memerhatikan output mana-mana bit daftar elemen logik. Seperti yang ditunjukkan dalam rajah blok dalam Rajah 4, probe perkakasan tersedia dalam dua saluran probe A dan B.
Output daftar terpilih (mata siasatan), seperti yang diperoleh di bahagian bawah rajah, dihalakan di atas dua saluran siasatan dan jika dipilih boleh digunakan pada saluran A atau B. Isyarat saluran masa nyata ini kemudiannya boleh dihantar ke pin Probe A dan Probe B khusus pada peranti. Isyarat Probe A dan Probe B juga boleh dihalakan secara dalaman kepada penganalisis logik terbenam.
Ambil perhatian bahawa ciri pemasaan pin probe adalah tetap dan mempunyai sisihan yang boleh diabaikan dari satu titik probe ke yang lain, menjadikannya lebih mudah untuk membandingkan ciri pemasaan isyarat masa nyata. Data boleh ditangkap sehingga 100MHz menjadikannya sesuai untuk kebanyakan reka bentuk sasaran.
Mungkin yang paling penting lokasi titik siasatan, kerana ia tidak dipilih sebagai sebahagian daripada reka bentuk yang dilaksanakan (ia dipilih melalui perkakasan khusus semasa reka bentuk berjalan pada FPGA), boleh ditukar dengan cepat dengan hanya menghantar data pemilihan ke peranti. Tiada reka bentuk menyusun semula dan pengaturcaraan semula diperlukan.
Untuk memudahkan lagi penggunaan keupayaan Live Probe, alat perisian nyahpepijat yang berkaitan mempunyai akses kepada semua lokasi isyarat siasatan melalui nyahpepijat yang dijana secara automatik file. Seperti yang ditunjukkan dalam Rajah 5, nama isyarat boleh dipilih daripada senarai isyarat dan digunakan pada saluran yang dikehendaki. Ini boleh dilakukan walaupun semasa reka bentuk sedang berjalan supaya aktiviti menyelidik dalam reka bentuk adalah lancar dan sangat cekap.
Dalam kebanyakan kes, keupayaan probe perkakasan, seperti Live Probe, boleh digunakan bersama dengan penganalisis logik terbenam yang diterangkan sebelum ini dan teknik ujian luaran.
Seperti yang ditunjukkan dalam Rajah 6, keupayaan Probe Langsung untuk memilih isyarat 'dengan cepat' memungkinkan untuk menukar isyarat dengan cepat dan mudah di bawah pemerhatian tanpa perlu menyusun semula reka bentuk. Penganalisis atau skop logik luaran boleh memerhati isyarat yang disiasat dengan mudah, seperti yang digambarkan di bahagian atas sebelah kanan rajah pada pin keluaran probe khusus. Sebagai alternatif (atau mungkin juga sebagai tambahan kepada) penganalisis logik dalaman (blok Identify ILA, ditunjukkan dalam rajah) boleh digunakan untuk memerhati pin probe. Isyarat probe boleh ditangkap oleh ILA dan diperhatikan pada tetingkap bentuk gelombang. Lokasi siasatan boleh ditukar tanpa perlu menyusun semula reka bentuk sasaran.
Ambil perhatian bahawa keupayaan tambahan untuk mencetus dan menjejak boleh digunakan untuk meningkatkan kefungsian probe, menjadikannya mudah untuk mengesan walaupun isu reka bentuk yang rumit.
Keupayaan nyahpepijat perkakasan tambahan juga tersedia pada peranti SmartFusion2 SoC FPGA dan IGLOO2 FPGA. Salah satu daripada keupayaan ini, dipanggil Active Probe, boleh membaca atau menulis secara dinamik dan tak segerak ke mana-mana bit daftar elemen logik. Nilai bertulis kekal untuk satu kitaran jam supaya operasi biasa dapat diteruskan, menjadikannya alat penyahpepijatan yang sangat berharga. Active Probe sangat diminati jika pemerhatian pantas isyarat dalaman dikehendaki (mungkin semata-mata untuk memeriksa sama ada ia aktif atau dalam keadaan yang dikehendaki, seperti isyarat set semula), atau jika terdapat keperluan untuk menguji fungsi logik dengan cepat dengan menulis ke titik probe
(mungkin untuk memulakan peralihan mesin keadaan dengan cepat menetapkan nilai input untuk mengasingkan masalah aliran kawalan).
Keupayaan nyahpepijat lain yang disediakan oleh Microsemi ialah Memory Debug. Ciri ini membolehkan pereka bentuk membaca atau menulis secara dinamik dan tak segerak pada blok SRAM fabrik FPGA terpilih. Seperti yang digambarkan dalam tangkapan skrin Alat Nyahpepijat (Rajah 7), apabila tab Blok Memori dipilih, pengguna boleh memilih memori yang diingini untuk dibaca, melaksanakan tangkapan syot kilat memori, mengubah suai nilai memori, dan kemudian menulis nilai kembali ke peranti. Ini amat berguna untuk menyemak atau menetapkan penimbal data yang digunakan dalam port komunikasi untuk pad awal berorientasikan pengiraan atau bahkan untuk kod yang dilaksanakan oleh CPU terbenam. Menyahpepijat ralat bergantung kepada data kompleks adalah lebih cepat dan lebih mudah apabila ingatan boleh diperhatikan dan dikawal dengan begitu cepat.
Sebaik sahaja reka bentuk dinyahpepijat mungkin wajar untuk mematikan keupayaan nyahpepijat perkakasan untuk melindungi maklumat sensitif. Penyerang boleh menggunakan kemudahan yang sama ini untuk membaca maklumat kritikal atau menukar tetapan sistem yang boleh membenarkan akses mudah kepada bahagian sensitif sistem. Microsemi telah menambah ciri untuk membolehkan pereka bentuk mengamankan peranti selepas penyahpepijatan selesai. Untuk exampOleh itu, akses kepada Probe Langsung dan Probe Aktif boleh dikunci untuk melumpuhkan sepenuhnya fungsi sebagai cara serangan yang mungkin (malah menghapuskan kemungkinan aktiviti siasatan mencipta sebarang corak dalam arus bekalan yang boleh digunakan untuk mencuba dan memerhati data siasatan secara tidak langsung). Sebagai alternatif, akses kepada bahagian reka bentuk yang dipilih boleh dikunci untuk menghalang akses kepada bahagian tersebut sahaja. Ini boleh menjadi mudah jika hanya sebahagian daripada reka bentuk yang perlu selamat menjadikan reka bentuk yang lain masih boleh diakses untuk ujian lapangan atau analisis ralat.
Carta Perbandingan Nyahpepijat Dalam Litar
Sekarang bahawa semula terperinciview daripada tiga teknik nyahpepijat perkakasan dalam litar utama telah diterangkan satu carta ringkasan, seperti yang ditunjukkan dalam Rajah 8, telah dicipta yang memperincikan pelbagai advantages dan disadvantages setiap kaedah. Mengingati bahawa beberapa teknik boleh digunakan bersama (Siasatan Langsung dan Penganalisis Logik Dalaman (ILA), seperti Synopsys Identify, untuk bekasample), kita dapat melihat kekuatan dan kelemahan utama setiap teknik. Pengumpulan keupayaan nyahpepijat perkakasan dalam litar (Siasatan Langsung, Siasatan Aktif dan Nyahpepijat Memori—secara kolektif dipanggil SmartDebug), adalah paling lemah jika dibandingkan dengan teknik lain apabila melibatkan jumlah kuar yang tersedia (bulatan merah) dan lebih lemah daripada yang terbaik (bulatan kuning) apabila kelajuan tangkapan dipertimbangkan (peralatan ujian luaran boleh menjadi lebih pantas).
Teknik berasaskan ILA, seperti Synopsys Identify, adalah paling lemah jika dibandingkan dengan teknik lain dan apabila keperluan sumber FPGA dipertimbangkan. Teknik berasaskan peralatan ujian luaran adalah paling lemah dalam beberapa pertimbangan dengan kos, kesan pemasaan reka bentuk, dan overhed pergerakan kuar (disebabkan keperluan untuk menyusun semula reka bentuk) yang paling membebankan. Mungkin penyelesaian yang optimum ialah gabungan SmartDebug dan salah satu teknik lain, supaya bilangan saluran kelemahan SmartDebug dapat dikurangkan dan pergerakan titik probe disadvantages teknik lain juga dikurangkan.
Klasifikasi Isyarat
Perbezaan yang berguna boleh dibuat antara beberapa jenis isyarat yang paling biasa dan ini boleh membantu semasa merancang pendekatan penyahpepijatan. Untuk exampOleh itu, isyarat yang tidak berubah selain semasa sistem dimulakan, seperti tetapan semula sistem, tetapan semula blok atau daftar permulaan boleh diklasifikasikan sebagai isyarat statik. Jenis isyarat ini paling cekap diakses melalui kemudahan yang boleh memerhati serta mengawal isyarat dengan mudah, tanpa memerlukan kitaran penyusunan semula yang panjang. Active Probe ialah kemudahan yang sangat baik untuk menyahpepijat isyarat statik. Begitu juga, isyarat yang berubah dengan lebih kerap tetapi masih statik untuk sebahagian besar masa, boleh diklasifikasikan sebagai statik pseudo dan juga dinyahpepijat paling berkesan menggunakan Active Probe. Isyarat yang kerap berubah, seperti isyarat jam, boleh diklasifikasikan sebagai dinamik dan tidak begitu mudah diakses melalui Active Probe. Live Probe ialah pilihan yang lebih baik untuk memerhati isyarat ini.
Kes Penggunaan Nyahpepijat Mudah
Kini setelah kita mempunyai pemahaman yang lebih baik tentang pelbagai pilihan nyahpepijat dalam litar, mari lihat bekas reka bentuk yang ringkasampuntuk melihat bagaimana teknik-teknik ini berfungsi. Rajah 9, menunjukkan reka bentuk FPGA ringkas dalam peranti SmartFusion2 SoC FPGA. Subsistem Pengawal Mikro (MSS) ditetapkan semula oleh blok IP Lembut CoreSF2Reset. Input kepada blok ini ialah Tetapan Semula Kuasa Hidup, Tetapan Semula Fabrik Pengguna dan Tetapan Semula Luaran. Outputnya ialah tetapan semula kepada Fabrik Pengguna, tetapan semula MSS dan tetapan semula M3. Gejala ralat ialah tiada aktiviti pada I/O walaupun peranti berjaya keluar dari keadaan POR. Tiga pilihan berbeza untuk menyahpepijat ralat ini juga digambarkan dalam rajah: Kotak biru (berlabel ETE) adalah untuk kaedah Peralatan Ujian Luaran; kotak hijau (berlabel ILA) adalah untuk kaedah Penganalisis Logik Dalaman; dan kotak oren (berlabel AP) adalah untuk kaedah Active Probe. Kami akan menganggap punca punca ralat yang berpotensi adalah input tetapan semula yang tidak wajar kepada blok CoreSF2Reset Soft IP.
Sekarang mari kita lihat proses nyahpepijat untuk tiga kaedah dalam litar yang diterangkan sebelum ini.
Peralatan Ujian Luaran
Menggunakan kaedah ini, diandaikan bahawa peralatan ujian tersedia dan tidak digunakan oleh projek keutamaan yang lebih tinggi. Selain itu, adalah penting untuk merancang lebih awal supaya beberapa I/O FPGA tersedia dan boleh disambungkan dengan mudah ke peralatan ujian. Mempunyai pengepala pada PCB untuk exampia, akan sangat membantu dan meminimumkan masa yang dihabiskan untuk mengenal pasti dan menyambung kepada 'kemungkinan suspek' atau kemungkinan terputusnya pin semasa menyelidik. Reka bentuk perlu disusun semula untuk memilih isyarat yang ingin kami siasat. Mudah-mudahan, kami tidak akan 'mengupas bawang' dan perlu memilih isyarat tambahan untuk siasatan lanjut, kerana selalunya siasatan awal kami hanya menghasilkan lebih banyak soalan. Dalam apa jua keadaan, proses penyusunan semula dan pengaturcaraan semula boleh mengambil masa yang besar, dan jika ia mengakibatkan pelanggaran masa, reka bentuk semula diperlukan (kita semua sudah biasa dengan betapa mengecewakannya cuba menyelesaikan isu penutupan masa, khususnya, apabila anda membuat perubahan reka bentuk untuk mencari pepijat reka bentuk—keseluruhan proses boleh mengambil masa dari minit ke jam)! Ia juga penting untuk diingat bahawa jika reka bentuk tidak mempunyai I/O pengguna percuma, kaedah ini tidak boleh dilaksanakan. Selain itu, kaedah ini secara struktur mengganggu reka bentuk—dan pepijat berkaitan pemasaan mungkin hilang atau muncul semula antara lelaran.
Penganalisis Logik Dalaman
Menggunakan kaedah ini, ILA mesti dimasukkan ke dalam reka bentuk menggunakan sumber fabrik, dan kemudiannya perlu disusun semula. Ambil perhatian bahawa jika ILA telah dibuat seketika, isyarat yang ingin kami siasat mungkin tidak digunakan, yang juga memerlukan penyusunan semula. Proses ini berisiko menukar reka bentuk asal dan melanggar kekangan masa. Jika masa dipenuhi, reka bentuk perlu diprogramkan semula dan dimulakan semula. Keseluruhan proses ini boleh mengambil masa beberapa minit atau bahkan berjam-jam jika masa penyusunan semula adalah panjang dan berbilang pas diperlukan. Pendekatan ini mengganggu dari segi struktur dan boleh mengakibatkan masalah yang serupa dengan yang diterangkan apabila menggunakan kaedah di atas.
Probe Aktif
Dengan menggunakan kaedah ini, Active Probe boleh ditunjuk kepada sumber pelbagai isyarat set semula, yang semuanya diperoleh daripada output daftar (seperti biasa dalam mana-mana amalan reka bentuk digital yang baik). Isyarat dipilih satu demi satu, daripada menu Active Probe yang ditunjukkan dalam Rajah 10 di bawah. Nilai isyarat yang dipilih boleh dibaca dan dipaparkan pada tetingkap data Active Probe. Sebarang kenyataan yang salah dapat dikenal pasti dengan mudah. Ujian ini boleh dilakukan serta-merta tanpa perlu menyusun semula dan memprogram semula peranti dan tidak mengganggu dari segi struktur atau prosedur. Seluruh proses mengambil masa hanya beberapa saat. Kaedah ini juga boleh mewujudkan kebolehkawalan (mengubah nilai secara tidak segerak) yang tidak dibenarkan oleh dua kaedah lain. Dalam bekas khusus iniampOleh itu, isyarat set semula yang diperolehi oleh daftar mungkin mudah disiasat dan didapati disimpan dalam keadaan aktif.
Togol seketika bagi isyarat tetapan semula boleh dicapai dengan memanipulasi daftar secara tak segerak yang menjana isyarat rehat.
Kes Penggunaan Nyahpepijat Lebih Kompleks
Reka bentuk di atas adalah sangat mudah dan berguna sebagai pengenalan kepada menggunakan teknik reka bentuk yang diterangkan, tetapi contoh yang lebih kompleksample mungkin lebih menggambarkan. Banyak kali isyarat minat bukanlah isyarat statik seperti yang terdapat pada bekas mudah kamiample tetapi dinamik. Isyarat dinamik biasa ialah jam perantaraan, mungkin digunakan untuk menetapkan masa jabat tangan untuk antara muka bersiri. Rajah 11 menunjukkan reka bentuk sedemikian dengan teras IP Lembut pengguna, dalam kes ini, antara muka bersiri tersuai disambungkan ke bas APB sistem. Gejala ralat ialah tiada aktiviti pada antara muka bersiri tersuai pengguna, dan apabila induk bas APB mengeluarkan transaksi untuk mengakses antara muka bersiri, ia masuk ke dalam keadaan pengecualian yang menunjukkan jabat tangan yang salah. Keadaan ini nampaknya menolak sebab statik, seperti isyarat tetapan semula yang salah, kerana mesin keadaan transaksi nampaknya tidak beroperasi pada kadar yang dijangkakan dan dengan itu menyebabkan pengecualian. Punca utama dianggap sebagai penjana frekuensi jam dalam teras IP pengguna.
Jika ia tidak berjalan pada frekuensi yang betul, ralat yang diterangkan akan terhasil.
Dalam keadaan ini mungkin strategi yang lebih baik untuk menggantikan pendekatan Active Probe dengan Live Probe. Ini digambarkan dalam rajah di atas oleh kotak LP berwarna oren, menggunakan JTAG isyarat untuk pemilihan sumber siasatan.
Peralatan Ujian Luaran
Untuk kes ini, metodologi sangat serupa dengan contoh mudah yang diterangkan sebelum iniample. Isyarat jam pengguna dibawa keluar ke titik ujian (mudah-mudahan pada pengepala) dan penyusunan semula yang memakan masa diperlukan. Ia juga mungkin berguna untuk mengeluarkan isyarat rujukan, mungkin jam sistem yang digunakan untuk jam IP pengguna sebagai isyarat perbandingan. Kami sekali lagi akan tertakluk kepada keperluan untuk menyusun semula dan memprogram semula supaya keseluruhan proses boleh mengambil masa yang banyak.
Penganalisis Logik Dalaman
Kes ini sangat serupa dengan bekas mudahample. ILA mesti dimasukkan, atau isyarat yang dikehendaki ditakrifkan, dan kitaran kompil semula dan program semula dilaksanakan. Semua isu yang diterangkan sebelum ini masih menghasilkan masa kitaran nyahpepijat yang ketara. Walau bagaimanapun, terdapat kerumitan tambahan. Jam yang memacu ILA perlu segerak, dan idealnya lebih pantas berkenaan dengan jam yang akan diperhatikan daripada teras IP Lembut pengguna. Jika jam ini tidak segerak, atau tidak mempunyai perhubungan pemasaan yang betul, penangkapan data akan menjadi tidak dapat diramalkan dan kemungkinan punca kekeliruan untuk proses nyahpepijat.
Ambil perhatian bahawa jika jam IP Lembut pengguna tidak dijana pada cip (mungkin ia dipulihkan daripada antara muka bersiri) pereka bentuk mungkin perlu menambah modul jam untuk menjana jam ILA yang lebih pantas menggunakan sumber tambahan dan mungkin mencipta pelanggaran masa.
Siasatan Langsung
Menggunakan kaedah ini, Siasatan Langsung boleh dihalakan dengan cepat kepada sumber jam pengguna dan mana-mana sumber jam lain daripada daftar untuk mengejar punca ralat. Siasatan Langsung akan menunjukkan output isyarat yang dipilih dalam masa nyata dan apa-apa perhubungan pemasaan antara isyarat adalah lebih mudah untuk ditentukan. Seluruh proses mengambil masa hanya beberapa saat.
Ciri Nyahpepijat Lain untuk Antara Muka Bersiri
Ia juga penting untuk menunjukkan bahawa terdapat banyak keupayaan nyahpepijat tambahan dalam peranti SmartFusion2 SoC FPGA dan IGLOO2 FPGA yang boleh digunakan pada antara muka bersiri, seperti yang terdapat dalam bekas sebelumnya.ampreka bentuk di mana ralat adalah lebih rumit. Nyahpepijat SERDES, contohnyaample, menyediakan keupayaan nyahpepijat khusus untuk antara muka bersiri berkelajuan tinggi khusus. Beberapa ciri Nyahpepijat SERDES termasuk sokongan ujian PMA (seperti penjanaan corak PRBS dan ujian gelung balik) untuk berbilang konfigurasi ujian SERDES dengan konfigurasi semula peringkat daftar untuk mengelakkan penggunaan aliran reka bentuk penuh untuk membuat perubahan konfigurasi dan laporan teks yang menunjukkan protokol yang dikonfigurasikan, daftar konfigurasi SERDES dan daftar konfigurasi Lorong. Ciri-ciri ini menjadikan nyahpepijat SERDES lebih mudah dan boleh digunakan bersama Probe Langsung dan Probe Aktif untuk mempercepatkan lagi penyahpepijatan litar kompleks.
Alat Nyahpepijat Memori yang diterangkan sebelum ini juga boleh digunakan bersama-sama dengan Nyahpepijat SERDES untuk mempercepatkan ujian. Memandangkan penimbal memori boleh diperiksa dengan cepat dan mudah serta ditukar dengan Nyahpepijat Memori, adalah mungkin untuk membuat 'paket ujian' dengan cepat dan memerhatikan keputusan komunikasi gelung balik atau antara sistem. Pereka bentuk boleh memanfaatkan keupayaan ini dan dengan itu meminimumkan keperluan untuk 'abah-abah ujian' khusus yang menggunakan fabrik FPGA tambahan dan yang mungkin memberi kesan kepada pemasaan cip.
Kesimpulan
Kertas kerja ini telah menerangkan secara terperinci beberapa pendekatan berbeza untuk melaksanakan nyahpepijat dalam litar untuk FPGA dan FPGA SoC—penggunaan Penganalisis Logik Bersepadu, penggunaan peralatan ujian luaran dan penggunaan litar probe khusus yang disepadukan ke dalam fabrik FPGA. Penambahan litar probe khusus dan berdedikasi, seperti Active Probe dan Live Probe yang ditawarkan oleh Microsemi pada peranti SmartFusion2 SoC FPGA dan IGLOO2 FPGA, telah terbukti mempercepatkan dan memudahkan proses nyahpepijat. Keupayaan untuk mengubah suai pemilihan isyarat dalaman dengan cepat (tanpa perlu melaksanakan kitaran penyusunan semula dan program semula yang memakan masa yang sangat lama), dan keupayaan untuk menyiasat isyarat dalaman (tanpa perlu menggunakan fabrik FPGA dan berpotensi memperkenalkan pelanggaran pemasaan) telah ditunjukkan sebagai kelebihan utama.tages apabila menyahpepijat reka bentuk FPGA. Selain itu, penggunaan pelbagai metodologi, yang boleh bekerjasama untuk menyediakan keupayaan nyahpepijat yang lebih komprehensif telah diterangkan. Akhirnya, dua bekasampkes penggunaan nyahpepijat telah diberikan untuk menggambarkan pertukaran antara kaedah yang diterangkan.
Untuk Ketahui Lebih Lanjut
- IGLOO2 FPGA
- FPGA SoC SmartFusion2
Microsemi Corporation (Nasdaq: MSCC) menawarkan portfolio komprehensif semikonduktor dan penyelesaian sistem untuk pasaran komunikasi, pertahanan & keselamatan, aeroangkasa dan perindustrian. Produk termasuk litar bersepadu isyarat campuran analog berprestasi tinggi dan keras sinaran, FPGA, SoC dan ASIC; produk pengurusan kuasa; pemasaan dan peranti penyegerakan serta penyelesaian masa yang tepat, menetapkan piawaian dunia untuk masa; peranti pemprosesan suara; penyelesaian RF; komponen diskret; teknologi keselamatan dan anti-t berskalaamper produk; IC dan rentang tengah Power-over-Ethernet; serta keupayaan dan perkhidmatan reka bentuk tersuai. Microsemi beribu pejabat di Aliso Viejo, Calif., dan mempunyai kira-kira 3,400 pekerja di seluruh dunia. Ketahui lebih lanjut di www.microsemi.com.
© 2014 Microsemi Corporation. Hak cipta terpelihara. Microsemi dan logo Microsemi ialah tanda dagangan Microsemi Corporation. Semua tanda dagangan dan tanda perkhidmatan lain adalah hak milik pemilik masing-masing.
Ibu Pejabat Korporat Microsemi
- satu Enterprise, Aliso Viejo CA 92656 USA
- dalam Amerika Syarikat: +1 800-713-4113
- Di luar Amerika Syarikat: +1 949-380-6100
- Jualan: +1 949-380-6136
- Faks: +1 949-215-4996
- E-mel: sales.support@microsemi.com
Soalan Lazim
- S: Apakah kekerapan menangkap data maksimum peranti?
J: Peranti menyokong tangkapan data sehingga 100MHz, sesuai untuk kebanyakan reka bentuk sasaran. - S: Adakah saya perlu menyusun semula reka bentuk apabila menggunakan litar siasatan untuk nyahpepijat?
J: Tidak, lokasi titik siasatan boleh ditukar dengan cepat tanpa memerlukan penyusunan semula reka bentuk atau pengaturcaraan semula.
Dokumen / Sumber
![]() |
Nyahpepijat FPGA Dalam Litar Mikrosemi [pdf] Arahan Nyahpepijat FPGA Dalam Litar, Nyahpepijat FPGA, Nyahpepijat |