經驗分享:教你如何進行硬件設計與測試?
發布時間:2014-02-06 責任編輯:sherryyu
調試數字硬件設計可能壓力大、耗時長,但我們有辦法來緩解壓力。
gongchengshejixiangmuzhongzuilingrenzhenfendeshikezhiyijiushidiyicijiangyingjianyidaoshiyanshizhunbeikaishijichengceshideshihou。kaifaguochengzhongdezhegejieduantongchangxuyaohenchangshijian,yehuiduisuoyoudexiangmugongchengshizaochenghendadeyali。buguo,xianyoudegongjuhefangfanengjianqingyali,bangzhutuijinxiangmujinzhan。
讓我們來看一下,如何在將設計推進到更高層麵的過程中最大限度地減少可能發生的任何問題,以及如何快速順利地通過調試階段。
從第一天起就要設想如何進行測試?
suoyougongchengshidouzhidao,suizhekaifajinchengdetuijin,xiugaiwentidechengbenyehuixiangyingzengjia。yidanshejifanganzuizhongdingxingbingtouchan,zaixiugaiyinjiaoshuchucuowudechengbenbirangaoyuzaoqishejipinggushixiugaidechengben。ciwai,zaiceshiyujichengfangmianyetongyangcunzaichengbenwenti,yuezaokaolvyingjian、FPGA、係統等的測試問題並編寫測試規範,就越便於工程設計團隊考慮到必要的測試點、lianjiehegongnengxing。ceshidemudeshiquebaonengtuichukemanzuyonghujutiyaoqiudeanquanxitong。yinci,womenbixuquebaoceshinengtixiansuoyouyaoqiu,ergongnengceshizeyaoqiuyingnengshixianliuchengchuandibingkegenzongshejiyaoqiu(即每個測試均應滿足其所對應的需求)。
此外,對設計驗證模型進行編輯也是一種非常好的做法,能詳細說明測試每項功能要求的方法,如具體的測試、分析或讀取方法(條件是在另一個項目上較早明確或測試了相關要求)。文檔(圖1)kenenghaishejinaxieceshixuyongyushejiyanzheng,yijinaxieyongyushengchanyunxing。zaixiangmujieduanzaoqijiwanchengshangshuwendang,kequebaoxitongshejituanduiheceshishebeideshejituanduihuodemingquedejibenfangfa。
但是,在進行功能性測試之前,設計工程師還必須確保底層硬件的正確性。他們通常需要包含電源、性能和硬件基本驗證等內容的硬件級測試規範,而硬件基本驗證需在功能測試之前進行。
明(ming)確(que)需(xu)要(yao)何(he)種(zhong)測(ce)試(shi)設(she)備(bei)以(yi)及(ji)什(shen)麼(me)樣(yang)的(de)性(xing)能(neng)非(fei)常(chang)重(zhong)要(yao),例(li)如(ru)需(xu)要(yao)分(fen)析(xi)信(xin)號(hao)發(fa)生(sheng)器(qi)和(he)邏(luo)輯(ji)分(fen)析(xi)器(qi)是(shi)否(fou)能(neng)提(ti)供(gong)足(zu)夠(gou)的(de)存(cun)儲(chu)深(shen)度(du)和(he)工(gong)作(zuo)頻(pin)率(lv)?此(ci)外(wai),還(hai)需(xu)明(ming)確(que)是(shi)否(fou)需(xu)要(yao)更(geng)專(zhuan)業(ye)化(hua)的(de)測(ce)試(shi)設(she)備(bei),如(ru)任(ren)意(yi)波(bo)形(xing)生(sheng)成(cheng)器(qi)、高穩定性頻率參考等。
設計階段應包括的內容
在硬件的設計過程中,或許應包括幾項設計特性和功能,以使電路板的測試能夠更方便。相關要求可能比較簡單,也可能較有深度。
zuijiandanyeshizuichangjiandeceshiguidingshizaisuoyoudianyayuanshangfangzhiceshidian,zhebimianletanxunhanjiedianshizaochengsunhuaidekenengxing。buguo,haiyouyizhongbijiaohaodebanfa,shiranglianjiejiedi(0V)返fan回hui的de焊han盤pan靠kao近jin電dian壓ya測ce試shi點dian,從cong而er簡jian化hua測ce試shi工gong作zuo。若ruo采cai用yong高gao值zhi電dian阻zu來lai保bao護hu這zhe個ge測ce試shi點dian,就jiu能neng限xian製zhi測ce試shi中zhong意yi外wai短duan路lu情qing況kuang下xia的de電dian流liu。我wo們men也ye可ke考kao慮lv給gei這zhe些xie焊han盤pan添tian加jia測ce試shi引yin腳jiao,使shi其qi連lian接jie到dao可ke隨sui後hou在zai生sheng產chan運yun行xing期qi間jian記ji錄lu結jie果guo的de自zi動dong測ce試shi係xi統tong上shang。
此(ci)外(wai),監(jian)控(kong)時(shi)鍾(zhong)和(he)複(fu)位(wei)輸(shu)出(chu)的(de)功(gong)能(neng)至(zhi)關(guan)重(zhong)要(yao)。因(yin)此(ci),在(zai)複(fu)位(wei)線(xian)路(lu)上(shang)放(fang)置(zhi)測(ce)試(shi)點(dian)不(bu)矢(shi)為(wei)一(yi)種(zhong)好(hao)辦(ban)法(fa)。另(ling)外(wai),還(hai)應(ying)確(que)保(bao)正(zheng)確(que)端(duan)接(jie)不(bu)使(shi)用(yong)的(de)時(shi)鍾(zhong)緩(huan)衝(chong)器(qi)並(bing)添(tian)加(jia)測(ce)試(shi)點(dian),從(cong)而(er)便(bian)於(yu)對(dui)時(shi)鍾(zhong)進(jin)行(xing)探(tan)詢(xun)。此(ci)外(wai)還(hai)可(ke)考(kao)慮(lv)添(tian)加(jia)測(ce)試(shi)端(duan)口(kou),通(tong)過(guo)信(xin)號(hao)發(fa)生(sheng)器(qi)、邏輯分析儀或其他測試工具來實現信號的注入和提取。
為了幫助原型設計達到功耗要求,如果可能,通常比較好的做法是在電壓調整器的輸出端串聯低值電阻(10毫歐、100毫歐等),以便精確測量電源軌上的電流。

眾多FPGAqijianyedounengtigongcaiyongwenduerjiguanjiankongxinpianwendudefangfa。xuyaoxiangbanfaweierjiguantigonghengdingdianliu。cedingxinpianwenduyouzhuyuwomenquebaojiewenbuchaochuedingzhi。yaoquebaosuoyouzujiandoushidangjiuwei,mingqueshifoufuheshejifangandeyaoqiu,tebieshiruguozhiyouyigeshanglahuoxialadianzuyingjiuweibingxuanzepeizhimoshishigengshiruci。
檢查完印刷電路板上的各組件之後,下一步就是首次給電路板加電。對於任何工程師來說,這都是非常緊張的時刻。但是,在設計階段(測試點、電流感測電阻等)編製的測試規定將在這時發揮很大的協助作用。第一步是確保負載點和其他穩壓器的功率輸出不發生短路返回。您可能會在帶載器件(具有高電流要求)的電源軌上發現低阻抗,不過阻抗應大於1歐姆。
對於業界率先實現的同類型設計(即新產品首次進行實際構建)eryan,womenhuoxuyinggaizhidinggengshenrudeshejijuece,lirujiangdianyuanyuxiayoudianziqijianjinxingfenlichuli。zheyang,womenjiunengquebaodianyuanheshangdianshunxudounengzhengchanggongzuo,congerbimianxiayouzujiandeyingliguodahuosunhuai。gengxiangjindeqianduanshejijieduanyouzhuyuceshigongzuodelizihaiyouyige,najiushiquebaoJTAG端口除了在係統中對所有FPGAhuochuliqijinxingbianchengzhiwaihainengyougengduoyongchu,lirutongguobianjiesaomiaoceshilaijinxingchushideyingjianyanzhengdeng。bianjiesaomiaoceshiduizaiceshijieduanzaoqijianshaoyingjianshejifengxianfeichangyouyong,tongshiyeyaoqiuduishejifanganjinxingyouhua,yiquebaozuidaxiandudifugaibianjiesaomiaoqijian。
[page]
明確硬件特性
係xi統tong第di一yi次ci到dao達da實shi驗yan室shi時shi,您nin要yao做zuo的de第di一yi件jian事shi情qing就jiu是shi確que定ding硬ying件jian底di層ceng模mo塊kuai是shi否fou適shi合he做zuo進jin一yi步bu的de測ce試shi。相xiang關guan檢jian查zha包bao括kuo模mo塊kuai的de初chu步bu通tong電dian測ce試shi,這zhe是shi個ge緊jin張zhang的de過guo程cheng。剛gang拿na到dao模mo塊kuai,您nin希xi望wang確que保bao其qi準zhun確que投tou產chan,能neng夠gou成cheng功gong實shi現xian首shou次ci通tong電dian啟qi動dong。第di一yi步bu就jiu是shi確que保bao所suo有you的de組zu件jian都dou各ge就jiu其qi位wei,引yin腳jiao“1”正zheng確que定ding位wei,而er且qie任ren何he帶dai極ji性xing的de組zu件jian都dou準zhun確que放fang置zhi。設she計ji中zhong通tong常chang可ke能neng包bao含han眾zhong多duo無wu需xu檢jian查zha定ding位wei的de組zu件jian,例li如ru那na些xie適shi合he不bu同tong版ban本ben或huo不bu同tong構gou建jian選xuan項xiang的de組zu件jian。
ruguoninquedingsuoyoudianyuanguidoumeiyouduanlu,namexiayibujiugaijiadianle。chucijiadianshi,woqingxiangyucaiyongfenlianggejieduanjinxingdefangan。diyigejieduanshicaiyongdidianya(0.5V)和低電流,以確保不錯過信號層或電壓軌之間的任何短路情況;第二個階段是用正確的工作電壓在設定的電流限值內加電,看看是否獲得預期電流(不要忘了突入電流問題)。
成功給設計方案加電後,下一步就是確定電源上電的排序、複(fu)位(wei)以(yi)及(ji)時(shi)鍾(zhong)是(shi)否(fou)能(neng)按(an)設(she)想(xiang)的(de)工(gong)作(zuo)。切(qie)記(ji),要(yao)確(que)保(bao)複(fu)位(wei)時(shi)長(chang)超(chao)過(guo)所(suo)有(you)時(shi)鍾(zhong),並(bing)在(zai)釋(shi)放(fang)之(zhi)前(qian)處(chu)於(yu)穩(wen)定(ding)狀(zhuang)態(tai)。明(ming)確(que)硬(ying)件(jian)特(te)性(xing)的(de)下(xia)一(yi)步(bu)就(jiu)是(shi)確(que)保(bao)能(neng)通(tong)過(guo)JTAG鏈看到硬件,這使我們不僅能對FPGA編bian程cheng,而er且qie還hai能neng執zhi行xing邊bian界jie掃sao描miao測ce試shi。邊bian界jie掃sao描miao測ce試shi能neng幫bang助zhu我wo們men快kuai速su測ce試shi器qi件jian之zhi間jian的de互hu連lian,通tong過guo測ce試shi存cun儲chu器qi可ke確que保bao其qi正zheng常chang工gong作zuo,如ru開kai發fa回hui環huan接jie插cha件jian也ye可ke回hui轉zhuan輸shu入ru輸shu出chu。JTAG和邊界掃描測試可在進一步詳細的測試之前消除設計風險。
如果您的設計在硬件和FPGA層麵上都很複雜,那麼簡化版的RTL將有助於測試開發板以及FPGA和外設(圖2)之間的接口。對高速接口設計而言,更是如此。我們可結合采用優化的RTL和賽靈思 ChipScope?工具來捕獲數據,以及預載了數據模式的Block BRAM來發揮激勵作用。這種方法對采用ADC和DAC連接FPGA的情況尤其有用。在此情況下,您應發揮FPGA的可再編程特性來最大限度地進行設計開發,實現ADC和DAC的參數測試,比如噪聲/功率比、無雜散動態範圍和有效比特位數(effective-number-of-bit)計算等。
此外,您還應該充分利用FPGA提供的資源,尤其是賽靈思System Monitor和XADC,非fei常chang有you利li於yu監jian控kong芯xin片pian上shang的de電dian壓ya軌gui,進jin而er還hai能neng有you助zhu於yu驗yan證zheng在zai設she計ji階jie段duan所suo執zhi行xing的de電dian源yuan完wan整zheng性xing分fen析xi。此ci外wai,上shang述shu技ji術shu還hai能neng方fang便bian地di報bao告gao芯xin片pian溫wen度du,這zhe對dui環huan境jing測ce試shi以yi及ji芯xin片pian溫wen度du的de功gong耗hao關guan聯lian等deng都dou有you幫bang助zhu。
多數情況下,簡化RTL設計並采用FPGA提供的資源對精確定位未按預期工作的區域都有極大的幫助。
遇到問題怎麼辦?
在(zai)一(yi)步(bu)步(bu)推(tui)進(jin)測(ce)試(shi)計(ji)劃(hua)的(de)過(guo)程(cheng)中(zhong),您(nin)可(ke)能(neng)會(hui)遇(yu)到(dao)一(yi)兩(liang)個(ge)問(wen)題(ti),如(ru)未(wei)能(neng)實(shi)現(xian)預(yu)期(qi)的(de)功(gong)能(neng),或(huo)在(zai)功(gong)能(neng)方(fang)麵(mian)無(wu)法(fa)滿(man)足(zu)所(suo)需(xu)的(de)性(xing)能(neng)水(shui)平(ping)。不(bu)要(yao)擔(dan)心(xin),我(wo)們(men)能(neng)通(tong)過(guo)許(xu)多(duo)調(tiao)查(zha)方(fang)法(fa)來(lai)確(que)定(ding)問(wen)題(ti)根(gen)源(yuan)和(he)所(suo)需(xu)的(de)糾(jiu)正(zheng)措(cuo)施(shi)。
在上述情況下,不要急於馬上做出修改。首先,要重新檢查設計方案,特別是原理圖和數據手冊等設計信息。如果問題與FPGA有關,則應檢查引腳約束文件是否適合設計需要,因為有可能文件與設計不同步。
如ru果guo一yi時shi找zhao不bu出chu什shen麼me明ming顯xian錯cuo誤wu,則ze不bu妨fang發fa揮hui一yi下xia互hu聯lian網wang的de優you勢shi,去qu網wang上shang看kan看kan其qi他ta工gong程cheng師shi是shi否fou也ye遇yu到dao過guo跟gen您nin同tong樣yang的de問wen題ti。網wang上shang有you很hen多duo論lun壇tan,您nin可ke在zai那na裏li向xiang其qi他ta設she計ji人ren員yuan提ti問wen。Programmable Planet和賽靈思論壇都可為基於FPGA的設計提供廣泛的支持。
說(shuo)到(dao)底(di),硬(ying)件(jian)調(tiao)試(shi)是(shi)工(gong)程(cheng)設(she)計(ji)中(zhong)極(ji)富(fu)挑(tiao)戰(zhan),但(dan)又(you)極(ji)具(ju)收(shou)獲(huo)的(de)組(zu)成(cheng)部(bu)分(fen)。若(ruo)在(zai)設(she)計(ji)早(zao)期(qi)階(jie)段(duan)即(ji)考(kao)慮(lv)到(dao)測(ce)試(shi)問(wen)題(ti),並(bing)在(zai)設(she)計(ji)中(zhong)包(bao)含(han)測(ce)試(shi)所(suo)需(xu)的(de)各(ge)元(yuan)素(su),就(jiu)能(neng)顯(xian)著(zhu)簡(jian)化(hua)調(tiao)試(shi)工(gong)作(zuo)。采(cai)用(yong)ChipScope、System Monitor和XADC等所有可用的資源來調試係統,外加合理利用傳統測試設備,我們就能成功完成開發工作。

圖2:這裏的優化代碼是從連接輸出的簡單DAC接口到已知狀態的代碼片段,能夠生成Fs/2的正弦波。此類代碼的標準版可能有數百行的長度。
相關閱讀:
電磁兼容設計及測試技術分析
http://m.0-fzl.cn/emc-art/80022187
一種實用精確的電纜測試電路設計
http://m.0-fzl.cn/connect-art/80021760
高壓作業必備,如何做好數字隔離器的浪湧測試?
http://m.0-fzl.cn/cp-art/80021570
- 噪聲中提取真值!瑞盟科技推出MSA2240電流檢測芯片賦能多元高端測量場景
- 10MHz高頻運行!氮矽科技發布集成驅動GaN芯片,助力電源能效再攀新高
- 失真度僅0.002%!力芯微推出超低內阻、超低失真4PST模擬開關
- 一“芯”雙電!聖邦微電子發布雙輸出電源芯片,簡化AFE與音頻設計
- 一機適配萬端:金升陽推出1200W可編程電源,賦能高端裝備製造
- 貿澤EIT係列新一期,探索AI如何重塑日常科技與用戶體驗
- 算力爆發遇上電源革新,大聯大世平集團攜手晶豐明源線上研討會解鎖應用落地
- 創新不止,創芯不已:第六屆ICDIA創芯展8月南京盛大啟幕!
- AI時代,為什麼存儲基礎設施的可靠性決定數據中心的經濟效益
- 矽典微ONELAB開發係列:為毫米波算法開發者打造的全棧工具鏈
- 車規與基於V2X的車輛協同主動避撞技術展望
- 數字隔離助力新能源汽車安全隔離的新挑戰
- 汽車模塊拋負載的解決方案
- 車用連接器的安全創新應用
- Melexis Actuators Business Unit
- Position / Current Sensors - Triaxis Hall




