Microsemi-logo

Microsemi In-Circuit FPGA Debug

Microsemi-In-Circuit-FPGA-Debug-product

Informasi produk

Spesifikasi

  • Jinis piranti: Microsemi SmartFusion2 SoC FPGA
  • Tanggal Rilis: Mei 2014
  • Kapabilitas Debugging: In-Circuit FPGA Debug, Embedded Logic Analyzer
  • Frekuensi Jupuk Data Maksimum: Nganti 100MHz

Abstrak
FPGA minangka unsur desain sing kuat ing sistem sing dipasang kanthi akeh advan desaintages, nanging piranti iki bisa duwe desain Komplek karo masalah desain Komplek sing kudu debug. Nelusuri masalah desain kayata kesalahan definisi, masalah interaksi sistem, lan kesalahan wektu sistem bisa dadi tantangan. Gawan kapabilitas debug in-circuit ing FPGA bisa dramatically nambah debug hardware, lan supaya countess jam frustasi. Makalah iki njlèntrèhaké sawetara pendekatan beda kanggo debug in-circuit kanggo FPGA, ngenali trade-off kunci, lan liwat mantanampdesain, diangkah kanggo piranti Microsemi SmartFusion®2 SoC FPGA, bakal nuduhake carane kemampuan anyar bisa digunakake kanggo nyepetake debug lan test.

Pambuka

FPGA minangka unsur desain sing nyebar lan kuat lan saiki ditemokake ing meh kabeh sistem sing dipasang. Kanthi nambah kapasitas, kalebu pamblokiran fungsional on-chip sing kompleks lan antarmuka serial sing canggih, piranti kasebut uga bisa duwe masalah desain rumit sing kudu didebug. Nelusuri masalah kayata kesalahan definisi fungsional (ing tingkat FPGA utawa sistem), masalah interaksi sistem fungsional, masalah wektu sistem, lan masalah kesetiaan sinyal ing antarane IC (kaya gangguan, crosstalk, utawa refleksi) kabeh dadi luwih rumit nalika nggunakake FPGA canggih. Simulasi mesthi bantuan gedhe kanggo ngenali akeh masalah desain, nanging akeh interaksi donya nyata ora bakal katon nganti desain dipun ginakaken ing hardware. Sawetara teknik beda kanggo debugging masalah desain sing rumit wis dikembangake kanggo nyederhanakake proses kasebut. Pangerten sing ati-ati babagan saben teknik kunci kasebut, kalebu macem-macem advantages lan disadvantages, migunani nalika nimbang teknik utawa kombinasi teknik sing cocog kanggo desain tartamtu.
Exampdesain FPGA, diangkah kanggo piranti Microsemi SmartFusion2 SoC FPGA, bisa digunakake kanggo nduduhake sawetara saka advantages lan disadvantages saka teknik standar iki uga kapabilitas debug in-circuit paling anyar. Iki eks ilustrasiample bakal nuduhake carane iki macem-macem Techniques bisa digunakake kanggo nyepetake identifikasi lan eliminasi masalah hardware sak hardware debug.

Napa FPGA Debugging minangka Aspek Kritis Desain lan Pangembangan Sistem?
FPGA duwe rong model panggunaan utama sing mbedakake saka unsur desain liyane. FPGA bisa digunakake ing prodhuk produksi utawa bisa digunakake minangka kendaraan pangembangan kanggo mbuktekake utawa prototipe konsep desain produksi. Nalika digunakake minangka kendaraan produksi, FPGA bisa dadi target sing luwih fleksibel tinimbang kendaraan produksi ASIC utawa basis CPU. Iki penting banget kanggo desain anyar, sing durung diimplementasikake ing hardware. Desain kanthi opsi arsitektur sing beda-beda bisa gampang digawe lan diuji supaya desain sing optimal bisa diidentifikasi. FPGAs karo prosesor on-chip (SoC FPGAs) ndadekake iku uga bisa kanggo trade-off Processing basis CPU karo hardware dibantu fungsi akselerasi basis FPGA. Iki advantagIki bisa nyuda wektu sing dibutuhake kanggo desain, validasi, uji coba, lan analisis kegagalan kanggo pangembangan produk anyar.
Nalika digunakake kanggo prototyping desain, mbok menawa kanggo ASIC produksi, keluwesan FPGA entuk manfaat tombol. Platform hardware sing nyata, sanajan ora bisa mlaku kanthi cepet, nggawe luwih gampang entuk metrik kinerja sistem sing rinci, data analisis throughput lan asil konsep bukti arsitektur. Dhukungan FPGA kanggo implementasi hard bus standar industri (kaya PCIe®, Gigabit Ethernet, XAUI, USB, CAN, lan liya-liyane) nyederhanakake tes sing ana gandhengane karo antarmuka kasebut. Kulawargane paling anyar saka FPGAs karo prosesor ARM on-chip (SoC FPGAs), nggampangake implementasine prototipe karo prosesor ditempelake kanggo. Kode prosesor sadurunge dikembangaké bisa njejeri menyang prototipe lan kode anyar digawe ing podo karo karo gaweyan desain hardware.

Iki kombinasi saka prosesor standar karo bus antarmuka standar ndadekake iku bisa kanggo pengaruhe ekosistem gedhe saka perpustakaan kode kasedhiya, driver, API fungsi, Sistem Operasi Real Time, lan malah Sistem Operasi lengkap kanggo nggawe prototipe kerja luwih cepet. Kajaba iku, yen desain wis solid, prototipe FPGA bisa digunakake kanggo njupuk set tes simulasi ekstensif (kanggo stimulus lan respon) sing nggambarake data sistem nyata. Iki set data bisa invaluable kanggo nggawe simulasi final kanggo ASIC utawa implementasine produksi liyane. AdvantagKanthi nggunakake FPGA minangka prototipe desain bisa nyuda wektu kanggo desain, validasi, testing, lan analisis kegagalan kanggo implementasi produk pungkasan.
Ing loro model panggunaan FPGA umum iki, keluwesan FPGA minangka target desain minangka advan utama.tage. Iki tegese akeh owah-owahan lan pengulangan desain bakal dadi norma, lan kanthi mangkono kemampuan kanggo debug kesalahan desain kanthi cepet bakal dadi kritis kanggo ngidini akeh opsi desain. Tanpa kemampuan debug efisien akeh saka advantage saka keluwesan desain FPGA bakal suda dening wektu debugging tambahan dibutuhake. Untunge, FPGA uga bisa nyedhiyakake fitur hardware tambahan sing bisa nyederhanakake debugging wektu nyata. Sadurunge ndeleng kabisan kasebut, ayo goleki jinis masalah sing paling umum sing bisa diadhepi ing desain FPGA supaya kita duwe latar mburi sing cocog kanggo ngevaluasi efisiensi lan perdagangan sing ana gandhengane karo macem-macem alat debugging.

Masalah Umum Nalika Debugging Desain FPGA

Bebarengan karo kabisan ditambahi sing FPGAs modern nggawa, tambah kerumitan sing gegandhengan ndadekake luwih angel kanggo nggawe desain kesalahan-free. Nyatane, wis dikira yen debugging bisa njupuk luwih saka 50% siklus desain sistem sing dipasang. Kanthi tekanan wektu-kanggo-pasar terus nyuda siklus pangembangan, debugging hardware saka sistem wiwitan diturunake menyang afterthought-kabeh asring nganggep verifikasi kasebut (dhewe persentasi gedhe).tage saka jadwal pangembangan), bakal nyekel kabeh kewan omo sadurunge wiwitan sistem wiwitan. Ayo goleki sawetara jinis masalah sistem sing umum kanggo luwih ngerti tantangan desain khas sing bakal diadhepi sajrone wiwitan sistem.

Kesalahan definisi fungsional bisa uga angel ditemokake amarga desainer wis salah paham karo syarat tartamtu, mula kesalahan kasebut bisa diabaikan sanajan katon kanthi teliti ing rincian desain. Mantanample kesalahan definisi fungsi umum bakal ngendi transisi mesin negara ora mungkasi munggah ing negara tengen. Kesalahan uga bisa katon ing antarmuka sistem minangka masalah interaksi. Latensi antarmuka, contoneample, bisa uga salah kasebut nyebabake kahanan buffer overflow utawa underflow sing ora dikarepke.
Masalah wektu tingkat sistem minangka sumber kesalahan desain liyane sing umum banget. Acara asinkron, utamane, minangka sumber umum kesalahan nalika sinkronisasi utawa nyebrang efek domain wektu ora dianggep kanthi teliti. Nalika ngoperasikake kanthi cepet, jinis-jinis kesalahan kasebut bisa dadi masalah banget lan bisa uga arang banget katon, bisa uga mung nalika pola data tartamtu katon. Akeh pelanggaran wektu sing umum kalebu ing kategori iki lan biasane angel banget, yen ora mokal kanggo simulasi.

Pelanggaran wektu uga bisa dadi asil saka kasetyan sinyal kurang antarane sirkuit terpadu, utamané ing sistem karo macem-macem ril daya kanggo saben sirkuit. Kasetyan sinyal sing kurang bisa nyebabake gangguan sinyal, crosstalk, refleksi, keluwihan loading lan masalah Electro-Magnetic Interference (EMI) sing asring katon minangka pelanggaran wektu. Masalah sumber daya, kayata transients (utamane nalika sistem wiwitan utawa mati), variasi beban lan tekanan boros daya dhuwur uga bisa nyebabake kesalahan misterius, asring ora gampang dilacak bali menyang sumber daya. Malah nalika desain rampung bener masalah fabrikasi Papan bisa nyebabake kasalahan. Sambungan solder sing salah lan konektor sing ora dipasang kanthi bener, contoneample, bisa dadi sumber kasalahan lan bisa uga gumantung suhu utawa papan lokasi. Panggunaan Techniques packaging FPGA majeng bisa nggawe angel kanggo mriksa sinyal ing Papan sirkuit dicithak kanggo, supaya mung entuk akses menyang sinyal sing dikarepake bisa asring masalah. Asring akeh masalah desain ora nggawe kesalahan langsung lan kudu ripple liwat desain nganti kesalahan bener manifests dhewe. Nelusuri kesalahan wiwitan bali menyang sabab oyod asring bisa dadi tugas sing mumetake, angel lan akeh wektu.

Kanggo exampNanging, sawetara sing salah ing tabel terjemahan bisa uga ora nyebabake kesalahan nganti pirang-pirang siklus mengko. Sawetara alat sing bakal kita bahas mengko ing makalah iki, sing nggunakake hardware debug in-circuit khusus, ditargetake khusus kanggo nggawe 'buru bug' iki luwih cepet lan luwih gampang. Sadurunge njupuk rincian piranti kasebut, ayo goleki simulasi teknik debugging berbasis piranti lunak sing populer supaya luwih ngerti babagan advan.tages lan disadvantages nggunakake simulasi kanggo debugging.

Panggunaan Simulasi kanggo Debugging
Biasane ing simulasi desain, kabeh komponen urip nyata ing njero lan njaba desain dimodelake kanthi matematis minangka proses piranti lunak sing dieksekusi sacara berurutan ing CPU standar. Nglamar sawetara saka sudhut stimulus kanggo desain lan mriksa output samesthine marang output designs simulasi, iku cara sing gampang kanggo nyekel kesalahan desain paling ketok. Jendhela sing nuduhake run simulasi khas diwenehi ing Figure 1 ngisor. Advan sing cethatage saka simulasi ayat hardware basis debugging, iku simulasi bisa rampung ing piranti lunak-ora nyata hardware basis desain lan testbench dibutuhake. Simulasi bisa kanthi cepet nyekel akeh kesalahan desain, utamane sing ana gandhengane karo spesifikasi sing salah, salah pangerten babagan syarat antarmuka, kesalahan fungsi, lan akeh kesalahan 'kasar' liyane sing gampang dideteksi liwat vektor stimulus sing prasaja.

Microsemi-In-Circuit-FPGA-Debug- (1)

Simulasi utamané efektif nalika kombinasi stimulus ekstensif kasedhiya kanggo desainer lan asil asil dikenal. Ing kasus kasebut, simulasi bisa nindakake tes desain sing meh lengkap. Sayange, umume desain ora duwe akses gampang menyang suite tes sing ekstensif lan proses nggawe bisa dadi akeh wektu. Nggawe suite test sing nyakup 100% desain meh ora mungkin kanggo desain basis FPGA gedhe lan potongan cendhak kudu digunakake kanggo nyoba lan nutupi unsur-unsur utama desain kasebut. Kangelan liyane karo simulasi, iku dudu implementasine 'donya nyata' lan ora bisa nyekel acara bedo, ing-kacepetan interaksi sistem, utawa Pelanggaran wektu. Pungkasan, proses simulasi bisa dadi alon banget lan yen akeh iterasi sing dibutuhake, simulasi cepet dadi wektu sing paling akeh, lan asring bagean paling larang ing proses pangembangan.

Minangka alternatif (utawa mbok menawa luwih apik nyatakake, minangka tambahan kanggo simulasi) perancang FPGA nemokake yen bisa nambah hardware debug menyang desain FPGA kanggo mirsani lan ngontrol sinyal tombol ing piranti. Tèknik iki wiwitané dikembangaké minangka pendekatan ad-hoc, nanging wis mboko sithik dadi strategi debug hardware standar. Panggunaan kapabilitas debug in-circuit iki nawakake advan sing signifikantagkanggo desain basis FPGA lan bagean sabanjure bakal njelajah telung strategi sing paling umum lan macem-macem advantages lan disadvantages.

Pendekatan Debug In-Circuit Umum kanggo FPGA
Teknik sing paling umum kanggo ngleksanakake kapabilitas debug sirkuit ing FPGA nggunakake penganalisa logika sing dipasang, peralatan uji eksternal, utawa hardware probe sinyal khusus sing dipasang ing kain FPGA. Analisa logika sing dipasang biasane dileksanakake nggunakake kain FPGA lan dilebokake ing desain. Ing JTAG port digunakake kanggo ngakses analyzer lan data dijupuk bisa ditampilake ing PC. Nalika piranti tes eksternal digunakake, desain FPGA sing diuji diowahi supaya sinyal FPGA internal sing dipilih diarahake menyang pin output. Pin kasebut banjur bisa diamati liwat peralatan uji eksternal. Nalika hardware probe sinyal darmabakti digunakake, pilihan saka sudhut sinyal internal bisa maca ing wektu nyata. Sawetara implementasi probe malah bisa digunakake kanggo nulis kanggo ndhaftar utawa lokasi memori sing nambah kemampuan debug. Ayo katon luwih rinci ing advantages lan disadvantages saben Techniques iki lan banjur katon ing mantanample desain kanggo ndeleng carane pendekatan beda iki bisa impact sakabèhé wektu debugging.

In-Circuit FPGA Debug-Embedded Logic Analyzer
Konsep analisa logika sing ditempelake minangka asil langsung saka kapabilitas debugging in-circuit ad-hoc sing dianakake para perancang nalika FPGA pisanan digunakake. Analisa logika semat nambahake kapabilitas anyar lan ngilangi syarat kanggo desainer ngembangake analisa dhewe. Umume FPGA nawakake kemampuan kasebut lan pihak katelu nawakake analisa standar (Identify®, saka Synopsys, minangka salah sawijining mantan populerample) sing bisa gampang antarmuka karo alat tingkat sing luwih dhuwur kanggo nambah produktivitas.

Fungsi logika analyzer dilebokake ing desain, nggunakake kain FPGA lan pamblokiran memori ditempelake minangka buffer tilak, minangka gambaran ing Figure 2. Sumber daya pemicu uga digawe supaya interaksi sinyal Komplek bisa gampang dipilih lan dijupuk. Akses menyang analyzer kanggo kontrol lan transfer data biasane ditindakake liwat standar JTAG port kanggo menakake syarat antarmuka. Data sing dijupuk bisa ditampilake ing PC nggunakake umum viewpiranti lunak lan biasane nggambarake output bentuk gelombang simulator logika viewing gaya.

Microsemi-In-Circuit-FPGA-Debug- (2)

AdvantagPendekatan iki yaiku ora ana pin FPGA I/O tambahan sing digunakake, mung standar JTAG sinyal. Inti IP penganalisa logika sing dipasang biasane murah lan ing sawetara kasus bisa dadi pilihan kanggo sintesis FPGA, utawa alat simulasi. Ing sawetara kasus, analisa logika sing dipasang uga bisa nyedhiyakake output tambahan ing I / O sing ora digunakake, yen luwih trep. Salah sijine disadvantages kanggo pendekatan iki sing jumlah gedhe saka sumber FPGA dibutuhake. Ing tartamtu, yen tilak buffer digunakake iki bakal ngurangi jumlah memori pemblokiran kasedhiya. Yen buffer amba dibutuhake, iki uga bakal dadi trade-off karo ambane memori (amarga panggunaan memori sing luwih akeh nyebabake kedalaman memori sing luwih cethek) - disadvan gedhe.tage nalika nggunakake piranti sing luwih cilik. Mbok drawback paling gedhe kanggo technique iki sing saben wektu imbuhan kanggo probe panggonan digawe, iku perlu kanggo recompile lan reprogram desain. Nalika nggunakake piranti gedhe, proses iki bisa njupuk wektu sing signifikan. Amarga cara probe sinyal diselehake ing desain, bisa dadi angel kanggo nggandhengake hubungan wektu sinyal. Kajaba iku, wektu tundha antarane probe sinyal ora konsisten lan mulane hubungan wektu angel dibandhingake. Iki minangka kesulitan tartamtu nalika mbandhingake sinyal utawa sinyal asinkron saka domain wektu sing beda.

In-Circuit FPGA Debug – Peralatan Tes Eksternal
Panggunaan kode debug ing sirkuit bebarengan karo peralatan tes eksternal minangka pangembangan alami nalika analisa logika eksternal wis kasedhiya kanggo tes sistem. Kanthi nggawe sawetara kode debug sing prasaja kanggo ngenali lan milih sinyal tes internal lan ditrapake ing FPGA I/Os, kaya sing ditampilake ing Gambar 3, sampeyan bisa nggunakake kemampuan canggih analis (kayata buffer trace gedhe, urutan pemicu kompleks, lan macem-macem. viewing opsi) kanggo nggawe lingkungan debug sing prasaja nanging kuat. Kapabilitas in-circuit sing luwih rumit kanggo opsi pemicu sing luwih maju bisa nyilikake jumlah output sing dibutuhake. Kanggo exampNanging, milih alamat tartamtu ing bis sing amba bisa uga nglarang yen pin eksternal dibutuhake.
Nggunakake logika FPGA internal dramatically nyuda aku / syarat O lan malah bisa katon kanggo pola alamat tartamtu (mbok menawa telpon lan bali urutan) kanggo debugging masalah liyane Komplek. Yen antarmuka pangguna umum kasedhiya, iki bisa nyederhanakake kurva sinau lan nambah produktivitas.

Microsemi-In-Circuit-FPGA-Debug- (3)

AdvantagPendekatan iki yaiku nggunakake biaya peralatan uji eksternal lan ora ana biaya alat tambahan. Sawetara intine IP sirkuit debug kasedhiya saka pabrikan peralatan utawa pabrikan FPGA, lan bisa uga murah banget utawa gratis. Jumlah sumber daya FPGA dibutuhake kanggo ngleksanakake logika pilihan sinyal cilik banget, lan wiwit fungsi tilak wis rampung nggunakake external logic analyzer, ora perlu memori pemblokiran. Amarga logika pilihan ora larang, akeh saluran kanthi pemicu sing amba bisa uga didhukung. Analisa logika bisa digunakake ing mode Wektu lan mode Negara sing mbantu ngisolasi sawetara masalah wektu.
Disadvantages saka pendekatan iki bisa kalebu perlu kanggo tuku logika analyzer, yen siji durung diparengake kanggo project. Iki disadvantage bisa uga cukup kanggo nyuda pendekatan iki ing pirang-pirang kasus. Elinga, sawetara opsi penganalisa logika murah kasedhiya sing nggunakake PC utawa tablet kanggo tampilan, nggawe pilihan iki luwih larang kanggo syarat debug sing prasaja.
Jumlah pin FPGA sing dikonsumsi bisa dadi disadvan liyanetage lan yen bus sudhut kudu diamati, planning pinunjul kanggo tata letak Papan lan Kajaba saka konektor debug dibutuhake. Keperluan iki paling angel diprediksi ing awal tahap desain lan kerumitan liyane sing ora dikarepake. Kaya pendekatan analisa logika sing dipasang, strategi tes eksternal mbutuhake kompilasi lan reprogramming desain, nalika saben eksperimen anyar dibutuhake.

Disadvan umumtagIki loro Techniques-panggunaan sumber daya on-chip (kang uga bisa impact kinerja wektu desain lan nggawe syarat debugging tambahan) perlu kanggo recompile lan reprogram desain (kang bisa nambah jam utawa malah dina kanggo jadwal debug) ing ngarep planning dibutuhake kanggo ngenali kemungkinan test skenario, lan nggunakake chip tambahan I / O sumber daya nggawe perlu kanggo pendekatan tanpa iki drawbacks. Siji tanggapan yaiku tambahan logika debug khusus menyang kain FPGA ing sawetara piranti. Debug in-circuit nggunakake probe hardware minangka asil.

Debug FPGA In-Circuit - Probe Hardware
Panggunaan probe hardware kanthi dramatis nyederhanakake teknik debug ing sirkuit kanggo FPGA. Teknik iki diimplementasikake minangka fitur Live Probe ing piranti SmartFusion2®SoC FPGA lan IGLOO®2 FPGA, nambah garis probe khusus menyang kain FPGA kanggo mirsani output saka sembarang bit register unsur logika. Kaya sing dituduhake ing diagram blok ing Gambar 4, probe hardware kasedhiya ing rong saluran probe A lan B.

Microsemi-In-Circuit-FPGA-Debug- (3)

Output register sing dipilih (titik probe), kaya sing ana ing sisih ngisor gambar, diarahake ing ndhuwur rong saluran probe lan yen dipilih bisa ditrapake ing saluran A utawa B. Sinyal saluran wektu nyata iki banjur bisa dikirim menyang pin Probe A lan Probe B ing piranti kasebut. Sinyal Probe A lan Probe B uga bisa dialihake sacara internal menyang penganalisa logika sing dipasang.

Elinga yen karakteristik wektu saka pin probe iku biasa lan duwe deviasi diabaikan saka siji titik probe liyane, nggawe luwih gampang kanggo mbandhingaké karakteristik wektu sinyal wektu nyata. Data bisa dijupuk nganti 100MHz supaya cocog kanggo mayoritas desain target.
Mbok sing paling Jahwéh lokasi titik probe, wiwit padha ora dipilih minangka bagéan saka desain dipun ginakaken (padha dipilih liwat hardware darmabakti nalika desain mlaku ing FPGA), bisa cepet diganti dening mung ngirim data pilihan kanggo piranti. Ora ana recompile lan reprogramming desain sing dibutuhake.
Kanggo nyederhanakake panggunaan kemampuan Live Probe, piranti lunak debug sing gegandhengan nduweni akses menyang kabeh lokasi sinyal probe liwat debug sing digawe kanthi otomatis. file. Kaya sing ditampilake ing Gambar 5, jeneng sinyal bisa dipilih saka dhaptar sinyal lan ditrapake ing saluran sing dikarepake. Iki bisa ditindakake sanajan desain lagi mlaku supaya kegiatan probing ing desain lancar lan efisien banget.

Microsemi-In-Circuit-FPGA-Debug- (5)

Ing pirang-pirang kasus, kemampuan probe hardware, kaya Live Probe, bisa digunakake bebarengan karo analisa logika sing ditempelake sadurunge lan teknik tes eksternal.

Minangka ditampilake ing Figure 6, kemampuan Live Probe kanggo milih sinyal 'on the fly' ndadekake iku bisa kanggo cepet lan gampang ngganti sinyal ing pengamatan tanpa perlu recompile desain. Analisa logika eksternal utawa ruang lingkup bisa kanthi gampang mirsani sinyal probed, kaya sing digambarake ing sisih tengen ndhuwur gambar ing pin output probe khusus. Utawa (utawa bisa uga saliyane) analisa logika internal (pamblokiran ILA Ngenali, ditampilake ing gambar) bisa digunakake kanggo mirsani pin probe. Sinyal probe bisa dijupuk dening ILA lan diamati ing jendhela gelombang. Lokasi probe bisa diganti tanpa perlu nyusun ulang desain target.
Elinga yen kemampuan tambahan kanggo micu lan nglacak bisa digunakake kanggo nambah fungsi probe, supaya gampang kanggo nemokake masalah desain malah Komplek.

Microsemi-In-Circuit-FPGA-Debug- (6)

Kapabilitas debug hardware tambahan uga kasedhiya ing piranti SmartFusion2 SoC FPGA lan IGLOO2 FPGA. Salah siji saka kabisan iki, disebut Active Probe, bisa mbosenke lan asynchronously maca utawa nulis menyang sembarang unsur logic ndhaftar bit. Nilai sing ditulis tetep kanggo siklus jam siji supaya operasi normal bisa terus, dadi alat debugging sing larang banget. Active Probe minangka kapentingan tartamtu yen pengamatan cepet saka sinyal internal dikarepake (mbok menawa mung kanggo mriksa sing aktif utawa ing negara sing dikarepake, kaya sinyal reset), utawa yen ana perlu kanggo cepet nyoba fungsi logika dening nulis menyang titik probe
(mbok menawa kanggo miwiti transisi mesin negara kanthi cepet nyetel nilai input kanggo ngisolasi masalah aliran kontrol).

Kapabilitas debug liyane sing diwenehake dening Microsemi yaiku Memory Debug. Fitur iki ngidini desainer bisa maca utawa nulis kanthi dinamis lan asynchronously menyang blok SRAM kain FPGA sing dipilih. Kaya sing digambarake ing layar Debug Tool (Gambar 7), nalika tab Memory Blocks dipilih pangguna bisa milih memori sing dipengini kanggo maca, nglakokake snapshot saka memori, ngowahi nilai memori, lan banjur nulis nilai bali menyang piranti. Iki bisa migunani banget kanggo mriksa utawa nyetel buffer data sing digunakake ing port komunikasi kanggo scratch-pad berorientasi komputasi utawa malah kanggo kode sing dieksekusi dening CPU sing dipasang. Debugging kesalahan gumantung data Komplek nyata luwih cepet lan luwih gampang nalika kenangan bisa diamati lan kontrol supaya cepet.

Microsemi-In-Circuit-FPGA-Debug- (7)

Sawise desain wis debugged, bisa uga dikarepake kanggo mateni kemampuan debug hardware kanggo nglindhungi informasi sensitif. Penyerang bisa nggunakake fasilitas sing padha kanggo maca informasi kritis utawa ngganti setelan sistem sing bisa ngidini akses gampang menyang bagean sensitif sistem. Microsemi wis nambahake fitur kanggo ngidini desainer ngamanake piranti sawise debugging rampung. Kanggo example, akses kanggo Live Probe lan Active Probe bisa dikunci kanggo rampung mateni fungsi minangka liya bisa saka serangan (malah ngilangake kamungkinan saka kegiatan probe nggawe pola sembarang ing sumber saiki kang bisa digunakake kanggo nyoba lan mirsani data probe ora langsung). Utawa, akses menyang bagean desain sing dipilih bisa dikunci kanggo nyegah akses menyang bagean kasebut. Iki bisa trep yen mung bagean saka desain kudu aman nggawe liyane saka desain isih bisa diakses kanggo ing testing lapangan utawa analisis kesalahan.

Bagan Perbandingan Debug In-Circuit
Saiki sing re rinciview saka telung teknik debug hardware in-circuit utama wis diterangake grafik ringkesan, minangka ditampilake ing Figure 8, wis digawe sing rincian macem-macem advantages lan disadvantages saben metode. Elinga yen sawetara teknik bisa digunakake bebarengan (Live Probe lan Internal Logic Analyzer (ILA), kaya Synopsys Identify, kanggo example), kita bisa ndeleng kekiyatan lan kelemahane saben teknik. Koleksi kapabilitas debug hardware in-circuit (Live Probe, Active Probe, lan Memory Debug-secara kolektif disebut SmartDebug), paling lemah dibandhingake karo teknik liyane nalika nerangake jumlah total probe sing kasedhiya (bunder abang) lan luwih ringkih tinimbang sing paling apik (bunder kuning) nalika kacepetan panangkepan dianggep (peralatan uji eksternal bisa luwih cepet).
Teknik basis ILA, kaya Synopsys Identify, paling lemah yen dibandhingake karo teknik liyane lan nalika syarat sumber daya FPGA dianggep. Teknik basis peralatan uji eksternal paling lemah sajrone sawetara pertimbangan kanthi biaya, pengaruh wektu desain, lan overhead gerakan probe (amarga perlu nyusun ulang desain) sing paling abot. Mbok menawa solusi sing paling optimal yaiku kombinasi SmartDebug lan salah sawijining teknik liyane, supaya jumlah saluran kelemahane SmartDebug bisa dikurangi lan gerakan titik probe disadvan.tages saka Techniques liyane suda uga.

Microsemi-In-Circuit-FPGA-Debug- (8)

Klasifikasi sinyal
Bedane migunani bisa digawe ing antarane sawetara jinis sinyal sing paling umum lan iki bisa mbantu nalika ngrancang pendekatan debugging. Kanggo exampNanging, sinyal sing ora ngganti liyane saka sak sistem wiwitan-up, kaya sistem reset, pamblokiran reset utawa initialization ndhaftar bisa diklasifikasikaké minangka sinyal statis. Sinyal jinis iki paling efisien diakses liwat fasilitas sing bisa gampang diamati uga ngontrol sinyal kasebut, tanpa mbutuhake siklus kompilasi maneh sing dawa. Active Probe minangka fasilitas sing apik kanggo debugging sinyal statis. Kajaba iku, sinyal sing diganti luwih kerep nanging isih statis kanggo akèh-akèhé wektu, bisa diklasifikasikaké minangka pseudo-statis lan uga paling èfèktif debugged nggunakake Active Probe. Sinyal sing kerep diganti, kaya sinyal jam, bisa diklasifikasikake minangka dinamis lan ora gampang diakses liwat Active Probe. Live Probe minangka pilihan sing luwih apik kanggo ngamati sinyal kasebut.

Simple Debug Use Case

Saiki kita duwe pangerten sing luwih apik babagan macem-macem pilihan debug sirkuit, ayo goleki mantan desain sing gampang.ample kanggo ndeleng carane Techniques iki nindakake. Gambar 9, nuduhake desain FPGA sing prasaja ing piranti FPGA SmartFusion2 SoC. Microcontroller Subsystem (MSS) direset dening CoreSF2Reset Soft IP block. Input kanggo blok iki yaiku Power On Reset, Reset Kain Panganggo, lan Reset Eksternal. Output minangka reset menyang Kain pangguna, reset MSS, lan reset M3. Gejala kesalahan yaiku ora ana aktivitas ing I / Os sanajan piranti metu saka negara POR kanthi sukses. Telu opsi beda kanggo debugging kesalahan iki digambarke ing tokoh uga: Kothak biru (label ETE) kanggo cara External Test Equipment; kothak ijo (label ILA) kanggo cara Internal Logic Analyzer; lan kothak oranye (label AP) kanggo cara Active Probe. Kita bakal nganggep panyebab utama kesalahan kasebut yaiku input reset sing ora bener menyang blok IP Soft CoreSF2Reset.

Microsemi-In-Circuit-FPGA-Debug- (9)

Ayo saiki ndeleng proses debug kanggo telung cara ing sirkuit sing diterangake sadurunge.

Peralatan Tes Eksternal
Nggunakake metode iki, dikira peralatan tes kasedhiya lan ora digunakake dening proyek prioritas sing luwih dhuwur. Kajaba iku, penting kanggo ngrancang luwih dhisik supaya sawetara FPGA I / O kasedhiya lan bisa gampang disambungake menyang peralatan tes. Duwe header ing PCB kanggo Example, bakal banget mbiyantu lan nyilikake wektu ngginakaken nyoba kanggo ngenali lan nyambung menyang 'kamungkinan Suspect' utawa shorting potensial saka lencana sak probing. Desain kasebut kudu dikompilasi maneh kanggo milih sinyal sing arep diteliti. Muga-muga, kita ora bakal 'ngupas bawang' lan kudu milih sinyal tambahan kanggo diselidiki luwih lanjut, amarga asring investigasi awal mung nyebabake pitakonan liyane. Ing kasus apa wae, proses recompile lan reprogramming bisa mbutuhake wektu sing akeh, lan yen nyebabake pelanggaran wektu, desain ulang dibutuhake (kita kabeh ngerti carane frustasi nyoba ngatasi masalah penutupan wektu, utamane, nalika sampeyan nggawe owahan desain kanggo nemokake bug desain-kabeh proses bisa njupuk saka menit nganti jam)! Sampeyan uga penting kanggo elinga yen desain ora duwe I / Os pangguna gratis, cara iki ora bisa ditindakake. Kajaba iku, cara iki sacara struktural ngganggu desain-lan bug sing gegandhengan karo wektu bisa ilang utawa katon maneh ing antarane pengulangan.

Analisa Logika Internal
Nggunakake metode iki, ILA kudu dilebokake ing desain nggunakake sumber daya kain, banjur kudu dikompilasi maneh. Elinga yen ILA wis instantiated, sinyal sing arep kita neliti bisa uga ora instrumented, kang uga mbutuhake recompile. Proses iki mbebayani kanggo ngganti desain asli lan nglanggar watesan wektu. Yen wektu ketemu, desain kudu diprogram maneh lan diinisialisasi maneh. Kabeh proses iki bisa njupuk sawetara menit utawa malah jam yen wektu kompilasi maneh dawa lan kaping pass dibutuhake. Pendekatan iki struktural intrusive lan bisa nyebabake masalah padha karo sing diterangake nalika nggunakake cara ndhuwur.

Probe Aktif
Nggunakake cara iki aktif Probe bisa nuding menyang sumber saka macem-macem sinyal reset, kabeh kang sumber dening output ndhaftar (minangka umum ing sembarang laku desain digital apik). Sinyal dipilih siji ing wektu, saka menu Active Probe ditampilake ing Figure 10 ngisor. Nilai sinyal sing dipilih bisa diwaca lan ditampilake ing jendhela data Active Probe. Sembarang pratelan sing salah gampang dingerteni. Tes iki bisa ditindakake kanthi cepet tanpa kudu nglumpukake lan ngolah maneh piranti kasebut lan ora ngganggu sacara struktural utawa prosedural. Kabeh proses njupuk mung sawetara detik. Cara iki uga bisa nggawe kontrol (ngowahi nilai asynchronously) kang loro cara liyane ora ngidini. Ing ex tartamtu ikiampNanging, sinyal reset sumber saka register bisa gampang probed lan ditemokaké kanggo ditahan ing negara aktif.

Toggling sedhela saka sinyal reset bisa digayuh kanthi asynchronously manipulating register ngasilaken sinyal liyane.

Microsemi-In-Circuit-FPGA-Debug- (10)

Kasus Gunakake Debug Luwih Komplek
Desain ndhuwur banget prasaja lan migunani minangka introduksi kanggo nggunakake Techniques desain diterangake, nanging Ex luwih Komplekample bisa uga luwih ilustrasi. Kaping pirang-pirang sinyal kapentingan dudu sinyal statis kaya sing ana ing mantan kitaample nanging dinamis. Sinyal dinamis sing umum yaiku jam penengah, bisa uga digunakake kanggo wektu jabat tangan kanggo antarmuka serial. Figure 11 nuduhake desain kuwi karo pangguna Soft IP inti, ing kasus iki, antarmuka serial adat disambungake menyang bus sistem APB. Gejala kasalahan iku ora ana kegiatan ing pangguna antarmuka serial adat, lan nalika master bis APB masalah transaksi kanggo ngakses antarmuka serial dadi menyang kondisi pangecualian nuduhake salaman salah. Kahanan kasebut koyone ngilangi sabab statis, kaya sinyal reset sing salah, amarga mesin negara transaksi katon ora bisa digunakake ing tingkat sing dikarepake lan nyebabake pangecualian. Panyebab utama dianggep minangka generator frekuensi jam ing inti IP pangguna.

Yen ora mlaku kanthi frekuensi sing bener, kesalahan sing diterangake bakal nyebabake.

Microsemi-In-Circuit-FPGA-Debug- (11)

Ing kahanan iki mbokmenawa strategi sing luwih apik kanggo ngganti pendekatan Active Probe karo Live Probe. Iki digambarake ing gambar ing ndhuwur kanthi kothak LP warna oranye, nggunakake huruf JTAG sinyal kanggo pilihan sumber probe.

Peralatan Tes Eksternal
Ing kasus iki, metodologi meh padha karo ex prasaja sing diterangake sadurungeample. Sinyal jam pangguna digawa metu menyang titik tes (muga-muga ing header) lan butuh wektu recompile. Bisa uga migunani kanggo nggawa sinyal referensi, bisa uga jam sistem sing digunakake kanggo jam IP pangguna minangka sinyal perbandingan. Kita bakal maneh kudu ngumpulake maneh lan reprogram supaya kabeh proses bisa njupuk wektu sing akeh.

Analisa Logika Internal
Kasus iki meh padha karo mantan sing prasajaample. ILA kudu dilebokake, utawa sinyal sing dikarepake ditetepake, lan siklus recompile lan reprogram dieksekusi. Kabeh masalah sing diterangake sadurunge isih nyebabake wektu siklus debug sing signifikan. Nanging, ana kerumitan tambahan. Jam sing drive ILA kudu sinkron, lan saenipun luwih cepet bab jam kanggo diamati saka inti Soft IP pangguna. Yen jam kasebut ora sinkron, utawa ora duwe hubungan wektu sing bener, panangkepan data bakal ora bisa ditebak lan bisa dadi sumber kebingungan kanggo proses debug.
Elinga yen pangguna Soft IP jam ora kui on-chip (mbok menawa wis mbalekake saka antarmuka serial) Desainer kudu nambah modul jam kanggo generate jam ILA luwih cepet nggunakake sumber daya tambahan lan bisa nggawe nglanggar wektu.

Urip Probe
Nggunakake cara iki, Live Probe bisa cepet nuding sumber jam pangguna lan sumber jam liyane saka register kanggo Chase mudhun sabab ROOT saka kesalahan. Live Probe bakal nuduhake output sinyal sing dipilih ing wektu nyata lan hubungan wektu ing antarane sinyal kasebut luwih gampang ditemtokake. Kabeh proses njupuk mung sawetara detik.

Fitur Debug liyane kanggo Antarmuka Serial
Sampeyan uga penting kanggo nuduhake manawa ana akeh kapabilitas debug tambahan ing piranti SmartFusion2 SoC FPGA lan IGLOO2 FPGA sing bisa digunakake ing antarmuka serial, kaya sing ana ing mantan sadurunge.ample desain ngendi kasalahan malah luwih rumit. SERDES Debug, contoneample, menehi kabisan debug tartamtu kanggo darmabakti antarmuka serial kacepetan dhuwur. Sawetara fitur SERDES Debug kalebu dhukungan tes PMA (kayata generasi pola PRBS lan tes loopback) kanggo macem-macem konfigurasi tes SERDES kanthi konfigurasi tingkat registrasi supaya ora nggunakake aliran desain lengkap kanggo nggawe owah-owahan konfigurasi, lan laporan teks sing nuduhake protokol sing dikonfigurasi, register konfigurasi SERDES, lan registrasi konfigurasi Lane. Fitur-fitur kasebut nggawe debug SERDES luwih gampang lan bisa digunakake bebarengan karo Live Probe lan Active Probe kanggo nyepetake debugging sirkuit kompleks.
Alat Memory Debug sing wis diterangake sadurunge uga bisa digunakake bebarengan karo SERDES Debug kanggo nguji kacepetan. Wiwit buffer memori bisa dipriksa kanthi cepet lan gampang lan diganti karo Memory Debug, bisa nggawe 'paket test' kanthi cepet lan mirsani asil komunikasi loopback utawa antar-sistem. Desainer bisa nggunakake kabisan kasebut lan kanthi mangkono nyilikake kabutuhan 'sabuk tes' khusus sing nggunakake kain FPGA tambahan lan bisa nyebabake wektu chip.

Kesimpulan
Makalah iki wis njlèntrèhaké kanthi rinci sawetara pendekatan sing beda kanggo ngleksanakake debug sirkuit kanggo FPGA lan SoC FPGAs-panggunaan Integrated Logic Analyzer, panggunaan peralatan uji eksternal, lan panggunaan sirkuit probe khusus sing digabungake menyang kain FPGA. Penambahan sirkuit probe khusus lan khusus, kayata Active Probe lan Live Probe sing ditawakake Microsemi ing piranti SmartFusion2 SoC FPGA lan IGLOO2 FPGA, ditampilake kanthi cepet lan nyederhanakake proses debug. Kemampuan kanggo cepet ngowahi pilihan sinyal internal (tanpa perlu kanggo nglakokaké recompile lan re-program siklus banget wektu akeh), lan kemampuan kanggo probe sinyal internal (tanpa perlu nggunakake kain FPGA lan duweni potensi ngenalaken pelanggaran wektu) dituduhake minangka advan utama.tages nalika debugging desain FPGA. Kajaba iku, panggunaan macem-macem metodologi, sing bisa digunakake bebarengan kanggo nyedhiyakake kemampuan debug sing luwih lengkap wis diterangake. Akhire, loro mantanampkasus panggunaan debug diwenehi kanggo nggambarake trade-off ing antarane cara sing diterangake.

Kanggo Sinau Luwih

  1. IGLOO2 FPGA
  2. SmartFusion2 SoC FPGAs

Microsemi Corporation (Nasdaq: MSCC) nawakake portofolio komprehensif semikonduktor lan solusi sistem kanggo komunikasi, pertahanan & keamanan, aerospace lan pasar industri. Produk kalebu sirkuit terpadu sinyal campuran analog kinerja dhuwur lan radiasi, FPGA, SoC lan ASIC; produk manajemen daya; piranti wektu lan sinkronisasi lan solusi wektu sing tepat, nyetel standar wektu ing donya; piranti pangolahan swara; solusi RF; komponen diskrèt; teknologi keamanan lan keukur anti-tamper produk; Power-over-Ethernet ICs lan midspans; uga kemampuan lan layanan desain khusus. Microsemi kantor pusat ing Aliso Viejo, California, lan duwe sekitar 3,400 karyawan ing saindenging jagad. Sinau luwih lengkap ing www.microsemi.com.

© 2014 Microsemi Corporation. Kabeh hak dilindhungi undhang-undhang. Microsemi lan logo Microsemi minangka merek dagang Microsemi Corporation. Kabeh merek dagang lan merek layanan liyane minangka properti saka sing nduweni.

Kantor Pusat Perusahaan Microsemi

FAQ

  • P: Apa frekuensi njupuk data maksimum piranti?
    A: Piranti ndhukung panangkepan data nganti 100MHz, cocok kanggo paling desain target.
  • P: Apa aku kudu nyusun ulang desain nalika nggunakake sirkuit probe kanggo debugging?
    A: Ora, lokasi titik probe bisa diganti kanthi cepet tanpa mbutuhake kompilasi ulang utawa pemrograman ulang.

Dokumen / Sumber Daya

Microsemi In-Circuit FPGA Debug [pdf] Pandhuan
In-Circuit FPGA Debug, FPGA Debug, Debug

Referensi

Ninggalake komentar

Alamat email sampeyan ora bakal diterbitake. Kolom sing dibutuhake ditandhani *