經驗分享:教你如何進行硬件設計與測試?
發布時間:2014-02-06 責任編輯:sherryyu
調試數字硬件設計可能壓力大、耗時長,但我們有辦法來緩解壓力。
工gong程cheng設she計ji項xiang目mu中zhong最zui令ling人ren振zhen奮fen的de時shi刻ke之zhi一yi就jiu是shi第di一yi次ci將jiang硬ying件jian移yi到dao實shi驗yan室shi準zhun備bei開kai始shi集ji成cheng測ce試shi的de時shi候hou。開kai發fa過guo程cheng中zhong的de這zhe個ge階jie段duan通tong常chang需xu要yao很hen長chang時shi間jian,也ye會hui對dui所suo有you的de項xiang目mu工gong程cheng師shi造zao成cheng很hen大da的de壓ya力li。不bu過guo,現xian有you的de工gong具ju和he方fang法fa能neng減jian輕qing壓ya力li,幫bang助zhu推tui進jin項xiang目mu進jin展zhan。
讓我們來看一下,如何在將設計推進到更高層麵的過程中最大限度地減少可能發生的任何問題,以及如何快速順利地通過調試階段。
從第一天起就要設想如何進行測試?
所suo有you工gong程cheng師shi都dou知zhi道dao,隨sui著zhe開kai發fa進jin程cheng的de推tui進jin,修xiu改gai問wen題ti的de成cheng本ben也ye會hui相xiang應ying增zeng加jia。一yi旦dan設she計ji方fang案an最zui終zhong定ding型xing並bing投tou產chan,再zai修xiu改gai引yin腳jiao輸shu出chu錯cuo誤wu的de成cheng本ben必bi然ran高gao於yu早zao期qi設she計ji評ping估gu時shi修xiu改gai的de成cheng本ben。此ci外wai,在zai測ce試shi與yu集ji成cheng方fang麵mian也ye同tong樣yang存cun在zai成cheng本ben問wen題ti,越yue早zao考kao慮lv硬ying件jian、FPGA、係統等的測試問題並編寫測試規範,就越便於工程設計團隊考慮到必要的測試點、lianjiehegongnengxing。ceshidemudeshiquebaonengtuichukemanzuyonghujutiyaoqiudeanquanxitong。yinci,womenbixuquebaoceshinengtixiansuoyouyaoqiu,ergongnengceshizeyaoqiuyingnengshixianliuchengchuandibingkegenzongshejiyaoqiu(即每個測試均應滿足其所對應的需求)。
此外,對設計驗證模型進行編輯也是一種非常好的做法,能詳細說明測試每項功能要求的方法,如具體的測試、分析或讀取方法(條件是在另一個項目上較早明確或測試了相關要求)。文檔(圖1)可(ke)能(neng)還(hai)涉(she)及(ji)哪(na)些(xie)測(ce)試(shi)需(xu)用(yong)於(yu)設(she)計(ji)驗(yan)證(zheng),以(yi)及(ji)哪(na)些(xie)用(yong)於(yu)生(sheng)產(chan)運(yun)行(xing)。在(zai)項(xiang)目(mu)階(jie)段(duan)早(zao)期(qi)即(ji)完(wan)成(cheng)上(shang)述(shu)文(wen)檔(dang),可(ke)確(que)保(bao)係(xi)統(tong)設(she)計(ji)團(tuan)隊(dui)和(he)測(ce)試(shi)設(she)備(bei)的(de)設(she)計(ji)團(tuan)隊(dui)獲(huo)得(de)明(ming)確(que)的(de)基(ji)本(ben)方(fang)法(fa)。
但是,在進行功能性測試之前,設計工程師還必須確保底層硬件的正確性。他們通常需要包含電源、性能和硬件基本驗證等內容的硬件級測試規範,而硬件基本驗證需在功能測試之前進行。
明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、高穩定性頻率參考等。
設計階段應包括的內容
在硬件的設計過程中,或許應包括幾項設計特性和功能,以使電路板的測試能夠更方便。相關要求可能比較簡單,也可能較有深度。
最(zui)簡(jian)單(dan)也(ye)是(shi)最(zui)常(chang)見(jian)的(de)測(ce)試(shi)規(gui)定(ding)是(shi)在(zai)所(suo)有(you)電(dian)壓(ya)源(yuan)上(shang)放(fang)置(zhi)測(ce)試(shi)點(dian),這(zhe)避(bi)免(mian)了(le)探(tan)詢(xun)焊(han)接(jie)點(dian)時(shi)造(zao)成(cheng)損(sun)壞(huai)的(de)可(ke)能(neng)性(xing)。不(bu)過(guo),還(hai)有(you)一(yi)種(zhong)比(bi)較(jiao)好(hao)的(de)辦(ban)法(fa),是(shi)讓(rang)連(lian)接(jie)接(jie)地(di)(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毫歐等),以便精確測量電源軌上的電流。

眾多FPGA器(qi)件(jian)也(ye)都(dou)能(neng)提(ti)供(gong)采(cai)用(yong)溫(wen)度(du)二(er)極(ji)管(guan)監(jian)控(kong)芯(xin)片(pian)溫(wen)度(du)的(de)方(fang)法(fa)。需(xu)要(yao)想(xiang)辦(ban)法(fa)為(wei)二(er)極(ji)管(guan)提(ti)供(gong)恒(heng)定(ding)電(dian)流(liu)。測(ce)定(ding)芯(xin)片(pian)溫(wen)度(du)有(you)助(zhu)於(yu)我(wo)們(men)確(que)保(bao)結(jie)溫(wen)不(bu)超(chao)出(chu)額(e)定(ding)值(zhi)。要(yao)確(que)保(bao)所(suo)有(you)組(zu)件(jian)都(dou)適(shi)當(dang)就(jiu)位(wei),明(ming)確(que)是(shi)否(fou)符(fu)合(he)設(she)計(ji)方(fang)案(an)的(de)要(yao)求(qiu),特(te)別(bie)是(shi)如(ru)果(guo)隻(zhi)有(you)一(yi)個(ge)上(shang)拉(la)或(huo)下(xia)拉(la)電(dian)阻(zu)應(ying)就(jiu)位(wei)並(bing)選(xuan)擇(ze)配(pei)置(zhi)模(mo)式(shi)時(shi)更(geng)是(shi)如(ru)此(ci)。
檢查完印刷電路板上的各組件之後,下一步就是首次給電路板加電。對於任何工程師來說,這都是非常緊張的時刻。但是,在設計階段(測試點、電流感測電阻等)編製的測試規定將在這時發揮很大的協助作用。第一步是確保負載點和其他穩壓器的功率輸出不發生短路返回。您可能會在帶載器件(具有高電流要求)的電源軌上發現低阻抗,不過阻抗應大於1歐姆。
對於業界率先實現的同類型設計(即新產品首次進行實際構建)eryan,womenhuoxuyinggaizhidinggengshenrudeshejijuece,lirujiangdianyuanyuxiayoudianziqijianjinxingfenlichuli。zheyang,womenjiunengquebaodianyuanheshangdianshunxudounengzhengchanggongzuo,congerbimianxiayouzujiandeyingliguodahuosunhuai。gengxiangjindeqianduanshejijieduanyouzhuyuceshigongzuodelizihaiyouyige,najiushiquebaoJTAG端口除了在係統中對所有FPGA或huo處chu理li器qi進jin行xing編bian程cheng之zhi外wai還hai能neng有you更geng多duo用yong處chu,例li如ru通tong過guo邊bian界jie掃sao描miao測ce試shi來lai進jin行xing初chu始shi的de硬ying件jian驗yan證zheng等deng。邊bian界jie掃sao描miao測ce試shi對dui在zai測ce試shi階jie段duan早zao期qi減jian少shao硬ying件jian設she計ji風feng險xian非fei常chang有you用yong,同tong時shi也ye要yao求qiu對dui設she計ji方fang案an進jin行xing優you化hua,以yi確que保bao最zui大da限xian度du地di覆fu蓋gai邊bian界jie掃sao描miao器qi件jian。
[page]
明確硬件特性
xitongdiyicidaodashiyanshishi,ninyaozuodediyijianshiqingjiushiquedingyingjiandicengmokuaishifoushihezuojinyibudeceshi。xiangguanjianzhabaokuomokuaidechubutongdianceshi,zheshigejinzhangdeguocheng。gangnadaomokuai,ninxiwangquebaoqizhunquetouchan,nenggouchenggongshixianshoucitongdianqidong。diyibujiushiquebaosuoyoudezujiandougejiuqiwei,yinjiao“1”zhengquedingwei,erqierenhedaijixingdezujiandouzhunquefangzhi。shejizhongtongchangkenengbaohanzhongduowuxujianzhadingweidezujian,lirunaxieshihebutongbanbenhuobutonggoujianxuanxiangdezujian。
如(ru)果(guo)您(nin)確(que)定(ding)所(suo)有(you)電(dian)源(yuan)軌(gui)都(dou)沒(mei)有(you)短(duan)路(lu),那(na)麼(me)下(xia)一(yi)步(bu)就(jiu)該(gai)加(jia)電(dian)了(le)。初(chu)次(ci)加(jia)電(dian)時(shi),我(wo)傾(qing)向(xiang)於(yu)采(cai)用(yong)分(fen)兩(liang)個(ge)階(jie)段(duan)進(jin)行(xing)的(de)方(fang)案(an)。第(di)一(yi)個(ge)階(jie)段(duan)是(shi)采(cai)用(yong)低(di)電(dian)壓(ya)(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過guoJTAG鏈看到硬件,這使我們不僅能對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提供的資源對精確定位未按預期工作的區域都有極大的幫助。
遇到問題怎麼辦?
zaiyibubutuijinceshijihuadeguochengzhong,ninkenenghuiyudaoyilianggewenti,ruweinengshixianyuqidegongneng,huozaigongnengfangmianwufamanzusuoxudexingnengshuiping。buyaodanxin,womennengtongguoxuduotiaozhafangfalaiquedingwentigenyuanhesuoxudejiuzhengcuoshi。
在上述情況下,不要急於馬上做出修改。首先,要重新檢查設計方案,特別是原理圖和數據手冊等設計信息。如果問題與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://www.0-fzl.cn/emc-art/80022187
一種實用精確的電纜測試電路設計
http://www.0-fzl.cn/connect-art/80021760
高壓作業必備,如何做好數字隔離器的浪湧測試?
http://www.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






