<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 模擬技術(shù) > 設計應用 > 從做工程師第一天起就要設想如何進(jìn)行硬件測試

從做工程師第一天起就要設想如何進(jìn)行硬件測試

作者: 時(shí)間:2018-11-21 來(lái)源:網(wǎng)絡(luò ) 收藏

  調試數字可能壓力大、耗時(shí)長(cháng),但我們有辦法來(lái)緩解壓力。

本文引用地址:http://dyxdggzs.com/article/201811/394642.htm

  工程設計項目中最令人振奮的時(shí)刻之一就是第一次將硬件移到實(shí)驗室準備開(kāi)始集成測試的時(shí)候。開(kāi)發(fā)過(guò)程中的這個(gè)階段通常需要很長(cháng)時(shí)

  調試數字可能壓力大、耗時(shí)長(cháng),但我們有辦法來(lái)緩解壓力。

  工程設計項目中最令人振奮的時(shí)刻之一就是第一次將硬件移到實(shí)驗室準備開(kāi)始集成測試的時(shí)候。開(kāi)發(fā)過(guò)程中的這個(gè)階段通常需要很長(cháng)時(shí)間,也會(huì )對所有的項目工程師造成很大的壓力。不過(guò),現有的工具和方法能減輕壓力,幫助推進(jìn)項目進(jìn)展。

  讓我們來(lái)看一下,如何在將設計推進(jìn)到更高層面的過(guò)程中最大限度地減少可能發(fā)生的任何問(wèn)題,以及如何快速順利地通過(guò)調試階段。

  從第一天起就要設想如何進(jìn)行測試

  所有工程師都知道,隨著(zhù)開(kāi)發(fā)進(jìn)程的推進(jìn),修改問(wèn)題的成本也會(huì )相應增加。一旦設計方案最終定型并投產(chǎn),再修改引腳輸出錯誤的成本必然高于早期設計評估時(shí)修改的成本。此外,在測試與集成方面也同樣存在成本問(wèn)題,越早考慮硬件、、系統等的測試問(wèn)題并編寫(xiě)測試規范,就越便于工程設計團隊考慮到必要的測試點(diǎn)、連接和功能性。測試的目的是確保能推出可滿(mǎn)足用戶(hù)具體要求的安全系統。因此,我們必須確保測試能體現所有要求,而功能測試則要求應能實(shí)現流程傳遞并可跟蹤設計要求(即每個(gè)測試均應滿(mǎn)足其所對應的需求)。

  此外,對設計驗證模型進(jìn)行編輯也是一種非常好的做法,能詳細說(shuō)明測試每項功能要求的方法,如具體的測試、分析或讀取方法(條件是在另一個(gè)項目上較早明確或測試了相關(guān)要求)。文檔(圖1)可能還涉及哪些測試需用于設計驗證,以及哪些用于生產(chǎn)運行。在項目階段早期即完成上述文檔,可確保系統設計團隊和測試設備的設計團隊獲得明確的基本方法。

  但是,在進(jìn)行功能性測試之前,設計工程師還必須確保底層硬件的正確性。他們通常需要包含電源、性能和硬件基本驗證等內容的硬件級測試規范,而硬件基本驗證需在功能測試之前進(jìn)行。

  明確需要何種測試設備以及什么樣的性能非常重要,例如需要分析信號發(fā)生器和邏輯分析器是否能提供足夠的存儲深度和工作頻率?此外,還需明確是否需要更專(zhuān)業(yè)化的測試設備,如任意波形生成器、高穩定性頻率參考等。

  設計階段應包括的內容

  在硬件的設計過(guò)程中,或許應包括幾項設計特性和功能,以使電路板的測試能夠更方便。相關(guān)要求可能比較簡(jiǎn)單,也可能較有深度。

  最簡(jiǎn)單也是最常見(jiàn)的測試規定是在所有電壓源上放置測試點(diǎn),這避免了探詢(xún)焊接點(diǎn)時(shí)造成損壞的可能性。不過(guò),還有一種比較好的辦法,是讓連接接地(0V)返回的焊盤(pán)靠近電壓測試點(diǎn),從而簡(jiǎn)化測試工作。若采用高值電阻來(lái)保護這個(gè)測試點(diǎn),就能限制測試中意外短路情況下的電流。我們也可考慮給這些焊盤(pán)添加測試引腳,使其連接到可隨后在生產(chǎn)運行期間記錄結果的自動(dòng)測試系統上。

  此外,監控時(shí)鐘和復位輸出的功能至關(guān)重要。因此,在復位線(xiàn)路上放置測試點(diǎn)不矢為一種好辦法。另外,還應確保正確端接不使用的時(shí)鐘緩沖器并添加測試點(diǎn),從而便于對時(shí)鐘進(jìn)行探詢(xún)。此外還可考慮添加測試端口,通過(guò)信號發(fā)生器、邏輯分析儀或其他測試工具來(lái)實(shí)現信號的注入和提取。

  為了幫助原型設計達到功耗要求,如果可能,通常比較好的做法是在電壓調整器的輸出端串聯(lián)低值電阻(10毫歐、100毫歐等),以便精確測量電源軌上的電流。


  眾多器件也都能提供采用溫度二極管監控芯片溫度的方法。需要想辦法為二極管提供恒定電流。測定芯片溫度有助于我們確保結溫不超出額定值。要確保所有組件都適當就位,明確是否符合設計方案的要求,特別是如果只有一個(gè)上拉或下拉電阻應就位并選擇配置模式時(shí)更是如此。

  檢查完印刷電路板上的各組件之后,下一步就是首次給電路板加電。對于任何工程師來(lái)說(shuō),這都是非常緊張的時(shí)刻。但是,在設計階段(測試點(diǎn)、電流感測電阻等)編制的測試規定將在這時(shí)發(fā)揮很大的協(xié)助作用。第一步是確保負載點(diǎn)和其他穩壓器的功率輸出不發(fā)生短路返回。您可能會(huì )在帶載器件(具有高電流要求)的電源軌上發(fā)現低阻抗,不過(guò)阻抗應大于1歐姆。

  對于業(yè)界率先實(shí)現的同類(lèi)型設計(即新產(chǎn)品首次進(jìn)行實(shí)際構建)而言,我們或許應該制定更深入的設計決策,例如將電源與下游電子器件進(jìn)行分離處理。這樣,我們就能確保電源和上電順序都能正常工作,從而避免下游組件的應力過(guò)大或損壞。更詳盡的前端設計階段有助于測試工作的例子還有一個(gè),那就是確保JTAG端口除了在系統中對所有或處理器進(jìn)行編程之外還能有更多用處,例如通過(guò)邊界掃描測試來(lái)進(jìn)行初始的硬件驗證等。邊界掃描測試對在測試階段早期減少風(fēng)險非常有用,同時(shí)也要求對設計方案進(jìn)行優(yōu)化,以確保最大限度地覆蓋邊界掃描器件。

  明確硬件特性

  系統第一次到達實(shí)驗室時(shí),您要做的第一件事情就是確定硬件底層模塊是否適合做進(jìn)一步的測試。相關(guān)檢查包括模塊的初步通電測試,這是個(gè)緊張的過(guò)程。剛拿到模塊,您希望確保其準確投產(chǎn),能夠成功實(shí)現首次通電啟動(dòng)。第一步就是確保所有的組件都各就其位,引腳“1”正確定位,而且任何帶極性的組件都準確放置。設計中通??赡馨姸酂o(wú)需檢查定位的組件,例如那些適合不同版本或不同構建選項的組件。

  如果您確定所有電源軌都沒(méi)有短路,那么下一步就該加電了。初次加電時(shí),我傾向于采用分兩個(gè)階段進(jìn)行的方案。第一個(gè)階段是采用低電壓(0.5V)和低電流,以確保不錯過(guò)信號層或電壓軌之間的任何短路情況;第二個(gè)階段是用正確的工作電壓在設定的電流限值內加電,看看是否獲得預期電流(不要忘了突入電流問(wèn)題)。

  成功給設計方案加電后,下一步就是確定電源上電的排序、復位以及時(shí)鐘是否能按設想的工作。切記,要確保復位時(shí)長(cháng)超過(guò)所有時(shí)鐘,并在釋放之前處于穩定狀態(tài)。明確硬件特性的下一步就是確保能通過(guò)JTAG鏈看到硬件,這使我們不僅能對FPGA編程,而且還能執行邊界掃描測試。邊界掃描測試能幫助我們快速測試器件之間的互連,通過(guò)測試存儲器可確保其正常工作,如開(kāi)發(fā)回環(huán)接插件也可回轉輸入輸出。JTAG和邊界掃描測試可在進(jìn)一步詳細的測試之前消除設計風(fēng)險。

  如果您的設計在硬件和FPGA層面上都很復雜,那么簡(jiǎn)化版的RTL將有助于測試開(kāi)發(fā)板以及FPGA和外設(圖2)之間的接口。對高速接口設計而言,更是如此。我們可結合采用優(yōu)化的RTL和賽靈思 ChipScope?工具來(lái)捕獲數據,以及預載了數據模式的Block BRAM來(lái)發(fā)揮激勵作用。這種方法對采用ADC和DAC連接FPGA的情況尤其有用。在此情況下,您應發(fā)揮FPGA的可再編程特性來(lái)最大限度地進(jìn)行設計開(kāi)發(fā),實(shí)現ADC和DAC的參數測試,比如噪聲/功率比、無(wú)雜散動(dòng)態(tài)范圍和有效比特位數(effective-number-of-bit)計算等。

  此外,您還應該充分利用FPGA提供的資源,尤其是賽靈思System Monitor和XADC,非常有利于監控芯片上的電壓軌,進(jìn)而還能有助于驗證在設計階段所執行的電源完整性分析。此外,上述技術(shù)還能方便地報告芯片溫度,這對環(huán)境測試以及芯片溫度的功耗關(guān)聯(lián)等都有幫助。

  多數情況下,簡(jiǎn)化RTL設計并采用FPGA提供的資源對精確定位未按預期工作的區域都有極大的幫助。

  遇到問(wèn)題怎么辦?

  在一步步推進(jìn)測試計劃的過(guò)程中,您可能會(huì )遇到一兩個(gè)問(wèn)題,如未能實(shí)現預期的功能,或在功能方面無(wú)法滿(mǎn)足所需的性能水平。不要擔心,我們能通過(guò)許多調查方法來(lái)確定問(wèn)題根源和所需的糾正措施。

  在上述情況下,不要急于馬上做出修改。首先,要重新檢查設計方案,特別是原理圖和數據手冊等設計信息。如果問(wèn)題與FPGA有關(guān),則應檢查引腳約束文件是否適合設計需要,因為有可能文件與設計不同步。

  如果一時(shí)找不出什么明顯錯誤,則不妨發(fā)揮一下互聯(lián)網(wǎng)的優(yōu)勢,去網(wǎng)上看看其他工程師是否也遇到過(guò)跟您同樣的問(wèn)題。網(wǎng)上有很多論壇,您可在那里向其他設計人員提問(wèn)。Programmable Planet和賽靈思論壇都可為基于FPGA的設計提供廣泛的支持。

  說(shuō)到底,硬件調試是工程設計中極富挑戰,但又極具收獲的組成部分。若在設計早期階段即考慮到測試問(wèn)題,并在設計中包含測試所需的各元素,就能顯著(zhù)簡(jiǎn)化調試工作。采用ChipScope、System Monitor和XADC等所有可用的資源來(lái)調試系統,外加合理利用傳統測試設備,我們就能成功完成開(kāi)發(fā)工作。

  圖2:這里的優(yōu)化代碼是從連接輸出的簡(jiǎn)單DAC接口到已知狀態(tài)的代碼片段,能夠生成Fs/2的正弦波。此類(lèi)代碼的標準版可能有數百行的長(cháng)度。



關(guān)鍵詞: FPGA 硬件設計

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>