摘è¦ï¼šä»‹ç´¹äº†ä¸€ç¨®é‡‡ç”¨å–®ç‰‡æ©Ÿ(jÄ«)ã€PSDã€CPLD和電壓調(dià o)ç†é›»è·¯ç‰ä¸»è¦çµ„ä»¶è¨(shè)計(jì)的一類é‡å°(duì)安全關(guÄn)éµç³»çµ±(tÇ’ng)的信æ¯é‡‡é›†èˆ‡æŽ§åˆ¶è£ç½®ã€‚實(shÃ)際測(cè)試表明,這種è¨(shè)計(jì)方法ä¸åƒ…是高效å¯è¡Œçš„,也是ä¿è‰æ¸¬(cè)試è£ç½®å°åž‹åŒ–ã€é›†æˆåŒ–ã€æ™ºèƒ½åŒ–å’Œæé«˜æ¸¬(cè)試系統(tÇ’ng)å¯é 性的途徑之一。
é—œ(guÄn)éµè©žï¼šæ™ºèƒ½æ¸¬(cè)試 安全關(guÄn)éµç³»çµ±(tÇ’ng) 單片機(jÄ«) é›†æˆæ¸¬(cè)試
安全關(guÄn)éµç³»çµ±(tÇ’ng)(Safety Critical Systems,SCS)是指系統(tÇ’ng)功能一旦失效將引起生命財(cái)產(chÇŽn)çš„é‡å¤§æå¤±ã€ç’°(huán)境å¯èƒ½é到嚴(yán)é‡ç ´å£žçš„系統(tÇ’ng),在航天ã€èƒ½æºã€åœ‹(guó)防ç‰è¨±å¤šé ˜(lÇng)域ä¸å»£æ³›å˜åœ¨ã€‚許多安全關(guÄn)éµç³»çµ±(tÇ’ng)具有多輸入-多輸出的強(qiáng)è€¦åˆæ€§ã€åƒæ•¸(shù)時(shÃ)變性和éžç·šæ€§ç‰¹æ€§ç‰ã€‚高速發(fÄ)å±•çš„é›»åæŠ€è¡“(shù)使得SCSé›»å系統(tÇ’ng)的集æˆåº¦ã€å¾©(fù)雜度越來(lái)è¶Šé«˜ï¼Œå—æŽ§å°(duì)象也日益復(fù)雜,這å°(duì)系統(tÇ’ng)的安全性ã€é‹(yùn)行的æ£å¸¸æ€§è©•(pÃng)ä¼°èˆ‡æ±ºç–æå‡ºäº†æ›´é«˜çš„è¦æ±‚,æŸäº›é—œ(guÄn)éµéƒ¨ä»¶ç”šè‡³éœ€è¦ä½¿ç”¨æœŸé›¶æ•…障。SCS的測(cè)試數(shù)據(jù)是å°(duì)其進(jìn)行全é¢ã€æº–(zhÇ”n)ç¢ºã€æ™ºèƒ½è©•(pÃng)ä¼°ã€æ•…障診斷和決ç–的基礎(chÇ”)。æ¤å¤–,許多安全關(guÄn)éµç³»çµ±(tÇ’ng)還具有嚴(yán)æ ¼çš„é«”ç©é‡é‡é™åˆ¶ï¼Œè¦æ±‚é‹(yùn)è¡Œå…¶ä¸Šçš„åµŒå…¥å¼æ¸¬(cè)試系統(tÇ’ng)é«”ç©å°ã€é‡é‡è¼•ï¼ŒåŠŸèƒ½å®Œå–„ï¼ŒåŒæ™‚(shÃ)å¿…é ˆå…·æœ‰è¼ƒé«˜çš„å¯é 性和智能化,以ä¿è‰æ¸¬(cè)試的æ£ç¢ºæ€§ï¼Œæé«˜æ¸¬(cè)試的å¯ä¿¡åº¦ã€‚å› æ¤å°åž‹èˆ‡å¯é 是å°(duì)SCS檢測(cè)æœ€åŸºæœ¬çš„è¦æ±‚,而測(cè)試數(shù)據(jù)安全å¯é 地高速傳輸也是é‡é»ž(diÇŽn)è¦æ±‚之一。

本文介紹的這種å°åž‹é«˜é›†æˆæ™ºèƒ½æ¸¬(cè)試è£ç½®ï¼Œæ‡‰(yÄ«ng)用于一類安全關(guÄn)éµç³»çµ±(tÇ’ng)é›»åå¸(xué)è¨(shè)å‚™ç¶œåˆæ¸¬(cè)試系統(tÇ’ng)ä¸ã€‚其作用是å°(duì)安全關(guÄn)éµç³»çµ±(tÇ’ng)çš„é‡è¦ç‹€æ…‹(tà i)å’Œåƒæ•¸(shù)進(jìn)行實(shÃ)時(shÃ)控制和測(cè)é‡ï¼Œå®Œæˆå¤§é‡çš„æ•¸(shù)據(jù)采集和處ç†ä»¥åŠæŽ§åˆ¶ä¿¡è™Ÿ(hà o)的接收和發(fÄ)é€ç‰è«¸å¤šåŠŸèƒ½ã€‚ç”±äºŽå°(duì)系統(tÇ’ng)çš„é‹(yùn)ç®—é€Ÿåº¦ã€æŽ¥å£è³‡æºã€ç©©(wÄ›n)å®šæ€§ä»¥åŠæˆæœ¬ç‰æœ‰è‘—éžå¸¸é«˜çš„è¦æ±‚ï¼Œå› æ¤å…¶æ¸¬(cè)試數(shù)據(jù)ã€åˆ†æžæ›²ç·šã€é¡¯ç¤ºåœ–表和指示çµ(jié)果是分æžã€åˆ¤å®šå®‰å…¨é—œ(guÄn)éµç³»çµ±(tÇ’ng)性能和工作狀態(tà i)çš„é‡è¦ä¾æ“š(jù)ï¼ŒåŒæ™‚(shÃ)為相關(guÄn)的決ç–ã€æŒ‡æ®ã€æŽ§åˆ¶æä¾›ä¾æ“š(jù)和手段。
1ã€ç³»çµ±(tÇ’ng)è¨(shè)計(jì)與工作原ç†
1.1 系統(tÇ’ng)æ§‹(gòu)æˆ
å°åž‹é«˜é›†æˆæ™ºèƒ½æ¸¬(cè)試è£ç½®é‡‡ç”¨80C196單片機(jÄ«)+PSD+CPLDçš„çµ(jié)æ§‹(gòu),å†åŠ ä¸Šæ¨¡æ“¬ä¿¡è™Ÿ(hà o)的匹é…電路,å¯å®Œæˆæ¨¡æ“¬é‡åŠæ•¸(shù)å—é‡çš„采集,使系統(tÇ’ng)的電路è¨(shè)計(jì)ç°¡(jiÇŽn)單;PSDåŠCPLDå‡ç‚ºåœ¨ç³»çµ±(tÇ’ng)å¯ç·¨ç¨‹å™¨ä»¶ï¼Œä½¿å¤§é‡çš„硬件è¨(shè)計(jì)轉(zhuÇŽn)æ›ç‚ºè»Ÿä»¶è¨(shè)計(jì),I/OæŽ¥å£æ“´(kuò)展方便 ã€‚ä¸Šä½æ©Ÿ(jÄ«)主è¦é€šéŽ(guò)標(biÄo)準(zhÇ”n)接å£å°(duì)測(cè)試系統(tÇ’ng)的測(cè)試數(shù)據(jù)進(jìn)è¡Œå‚³è¼¸å’Œåƒæ•¸(shù)è£è¨‚åŠæŽ§åˆ¶ã€‚SCSé›»åå¸(xué)ç¶œåˆæ¸¬(cè)試主è¦åŒ…括SCSé—œ(guÄn)éµçµ„件測(cè)試ã€åœ°é¢å¤–åœæ¸¬(cè)控åŠå…¶æ•¸(shù)據(jù)傳輸åŠè™•ç†ã€‚其功能框圖如圖1所示。

1.2 å°åž‹æ™ºèƒ½æ¸¬(cè)控è£ç½®çš„æ§‹(gòu)æˆ
å°åž‹æ™ºèƒ½æ¸¬(cè)控è£ç½®ä¸»è¦åŒ…括數(shù)據(jù)采集模塊ã€éœæ…‹(tà i)檢測(cè)模塊ã€é (yuÇŽn)ç¨‹åƒæ•¸(shù)è£è¨‚æ¨¡å¡ŠåŠæ•¸(shù)據(jù)傳輸模塊。由于SCSå°(duì)é›»åæŽ§åˆ¶éƒ¨ä»¶æœ‰åš´(yán)æ ¼çš„é«”ç©å’Œé‡é‡è¦æ±‚,測(cè)控è£ç½®æ‡‰(yÄ«ng)按照系統(tÇ’ng)çš„è¦æ±‚è¨(shè)計(jì),使得體ç©ã€é‡é‡ç›¡é‡å°ä¸”功能完善,以便確何系統(tÇ’ng)çš„å¯è¡Œæ€§ã€‚
在測(cè)試è£ç½®è¨(shè)計(jì)éŽ(guò)程ä¸é€²(jìn)行了許多優(yÅu)化和改進(jìn)ã€‚å…¶åŸºæœ¬é«”ç³»é‡‡ç”¨å¾®æŽ§åˆ¶å™¨åŠ å¤–åœæŽ¥å£æ¨¡å¡Šçš„çµ(jié)æ§‹(gòu)。在è¨(shè)計(jì)數(shù)據(jù)采集系統(tÇ’ng)的硬件時(shÃ),采用高集æˆåº¦çš„器件,包括80C196單片機(jÄ«)ã€å¯ç·¨ç¨‹å¤–åœå™¨ä»¶PSD以åŠå¾©(fù)雜å¯ç·¨ç¨‹é‚輯陣列CPLDç‰ï¼Œæé«˜äº†ç³»çµ±(tÇ’ng)集æˆåº¦ï¼Œå¹¶ä¸”é‚„æé«˜äº†ç³»çµ±(tÇ’ng)硬件的å¯é 性åŠéˆæ´»æ€§ã€‚
å¤–åœæŽ¥å£æ¨¡å¡Šé‡‡ç”¨å¾©(fù)雜å¯ç·¨ç¨‹é–€é™£åˆ—CPLDMAX7256,硬件è¨(shè)計(jì)進(jìn)一æ¥è»Ÿä»¶åŒ–。一片CPLD器件替代了多片74系列器件,如138è¯ç¢¼å™¨ã€å¤šè·¯é–‹é—œ(guÄn)ã€244é©…(qÅ«)å‹•(dòng)器ã€èˆ‡é–€ã€æˆ–é–€ç‰ï¼Œå¤§å¤§æ¸›å°äº†æ¿å¡é«”ç©ã€‚由于CPLD為å¯ç·¨ç¨‹ï¼Œä½¿è¨(shè)計(jì)æ›´ç‚ºéˆæ´»ã€‚MAX7256有5000個(gè)門,256個(gè)å®å–®å…ƒï¼Œ16個(gè)é‚輯陣列塊,164個(gè)I/Oå£ï¼Œæ”¯æŒå¤šé›»å£“I/O接å£ï¼Œæ»¿è¶³ç³»çµ±(tÇ’ng)è¦æ±‚,并有一定冗余。在è¨(shè)計(jì)階段å°(duì)CPLDçš„è¨(shè)計(jì)通éŽ(guò)EDA工具進(jìn)è¡Œä»¿çœŸï¼ŒåŒ…æ‹¬åŠŸèƒ½ã€æ™‚(shÃ)åºã€EMC/EMI的模擬仿真,在完æˆPCBæ¿ä¹‹å‰ï¼Œå°±åšå¥½äº†å……分的測(cè)試驗(yà n)è‰ã€‚
å¦å¤–,é¸ç”¨äº†é›†æˆåº¦æ›´é«˜çš„單片機(jÄ«)å¤–åœæŽ¥å£å™¨ä»¶PSD4235。PSD4235芯片是WSI公叿–°æŽ¨å‡ºçš„PSD4000系列產(chÇŽn)å“,å¯ä»¥ç‚º16ä½å’Œ32ä½çš„微控制器以åŠDSPæä¾›åœ¨ç³»çµ±(tÇ’ng)å¯ç·¨ç¨‹çš„并發(fÄ)閃速å˜å„²(chÇ”)器ã€SRAMã€å¯ç·¨ç¨‹é‚輯和é¡å¤–çš„I/O。其片內(nèi)集æˆäº†4Mä½çš„é–ƒå˜å˜å„²(chÇ”)器,256Kbit的用于引導(dÇŽo)數(shù)據(jù)的次閃速å˜å„²(chÇ”)器,256Kbitçš„SRAM,16個(gè)輸出微單元ã€24個(gè)輸入微單元的CPLD,è¯ç¢¼PLD,52個(gè)å¯å–®ç¨(dú)é…置的I/O端å£ï¼ŒJTAG串行接å£ç‰ï¼Œå¹¶ä¸”æœ‰æ”¯æŒæŽ‰é›»æ¨¡å¼çš„低功耗å¯ç·¨ç¨‹é›»æºç®¡ç†å–®å…ƒã€‚PSD芯片å°(duì)地å€åˆ†é…å’Œå„æŽ¥å£çš„é‚輯è¯ç¢¼ç”±å°ˆç”¨çš„軟件PSDSoft Express實(shÃ)ç¾(xià n)。PSD4000系列器件是在應(yÄ«ng)用ä¸å¯ç·¨ç¨‹ï¼ˆIn Application re-Programming,IAP)的,也就是說(shuÅ),它們å¯ä»¥åœ¨ä¸å½±éŸ¿ç³»çµ±(tÇ’ng)é‹(yùn)行的情æ³ä¸‹ï¼Œåœ¨ç¾(xià n)å ´(chÇŽng)é (yuÇŽn)程地進(jìn)行å†ç·¨ç¨‹ã€‚這種功能å°(duì)于需è¦åœ¨ç¾(xià n)å ´(chÇŽng)進(jìn)行代碼/數(shù)據(jù)更新的系統(tÇ’ng)特別有用,如全çƒå®šä½ç³»çµ±(tÇ’ng)(GPSï¼‰ã€æ±½è»ŠæŽ§åˆ¶ç³»çµ±(tÇ’ng)以åŠé†«(yÄ«)療儀器ç‰ã€‚測(cè)控è£ç½®é›»è·¯åŽŸç†åœ–如圖2所示。

1.3 信號(hà o)采集
在實(shÃ)時(shÃ)測(cè)é‡å’ŒæŽ§åˆ¶ç³»çµ±(tÇ’ng)ä¸ï¼Œå°(duì)信號(hà o)çš„é‡‡é›†è¦æ±‚å¯é ã€æº–(zhÇ”n)確ã€å¿«é€Ÿåœ°å®Œæˆã€‚被測(cè)é‡çš„å›žè·¯ä¸€èˆ¬æœ‰å¹¾åæˆ–上百個(gè),而且采集信號(hà o)種類多,包括模擬é‡ä¿¡è™Ÿ(hà o)和數(shù)å—é‡ä¿¡è™Ÿ(hà o)ï¼Œå› æ¤æ¸¬(cè)試工作應(yÄ«ng)具有很強(qiáng)的實(shÃ)時(shÃ)æ€§ï¼ŒåŒæ™‚(shÃ)å°(duì)數(shù)據(jù)采集的抗干擾能力也應(yÄ«ng)ç”¨å¾ˆé«˜çš„è¦æ±‚ã€‚æ£æ˜¯ç”±äºŽå°(duì)數(shù)據(jù)采集系統(tÇ’ng)çš„è¦æ±‚日益復(fù)雜,智能化的å°åž‹å®‰å…¨é—œ(guÄn)éµç³»çµ±(tÇ’ng)采集模塊æ‰èƒ½ç‚ºæ¸¬(cè)控系統(tÇ’ng)çš„æ ¸å¿ƒã€‚
數(shù)據(jù)測(cè)試主è¦åŒ…括SCSå„個(gè)é—œ(guÄn)éµçµ„件的電壓ã€ç¨‹åºå‹•(dòng)作(延時(shÃ)時(shÃ)間或天關(guÄn)é‡ï¼‰ã€æŒ¯è•©æ³¢å½¢åŠè„ˆæ²–串的測(cè)試。è¨(shè)計(jì)çš„é‡é»ž(diÇŽn)在于å¯é 性和實(shÃ)時(shÃ)性。數(shù)據(jù)采集的å¯é 性是至關(guÄn)é‡è¦çš„ï¼Œåªæœ‰å…·å‚™äº†è¼ƒé«˜çš„å¯é 性,æ‰èƒ½ä¿è‰æ•¸(shù)據(jù)采集的æ£ç¢ºæ€§ï¼Œå› æ¤è¨(shè)計(jì)ä¸å……分考慮測(cè)試éŽ(guò)程的抗干擾能力。æé«˜äº†æ¸¬(cè)試的å¯ä¿¡åº¦ã€‚數(shù)據(jù)采集模塊çµ(jié)æ§‹(gòu)如圖3所示。
模擬é‡çš„æ¸¬(cè)é‡é‡‡ç”¨80C196單片機(jÄ«)æ¨¡æ“¬é‡æ¸¬(cè)釿ޥå£ã€‚80C196çš„A/Då£å…±8個(gè),需è¦åˆ©ç”¨å¤šè·¯é–‹é—œ(guÄn)輪æµåˆ‡æ›å„被測(cè)回路的A/D轉(zhuÇŽn)æ›é›»è·¯ï¼Œä»¥é”(dá)到分時(shÃ)處ç†çš„目的。由于信號(hà o)的強(qiáng)å¼±ã€å¹…值以åŠé˜»æŠ—匹é…電路ä¸åŒï¼Œå› æ¤è¨(shè)計(jì)時(shÃ)進(jìn)行了如下處ç†ï¼š
(1)å°(duì)電壓信號(hà o)進(jìn)行分類,ä¸éœ€è¦æ”¾å¤§å™¨çš„屬于一類,在這類當(dÄng)ä¸åˆé€²(jìn)行細(xì)分——電壓值范åœåˆ†é¡žã€‚å› ?yà n)?0C196單片機(jÄ«)è¦æ±‚采集電平在5V以內(nèi),如果å°(duì)æ¯ä¸€è·¯é›»å£“進(jìn)行分壓åŠé˜»å®¹æ¿¾æ³¢è¨(shè)計(jì),勢(shì)必使用大é‡çš„電阻åŠé›»å®¹å™¨ä»¶ï¼Œä¸åˆ©äºŽå°åž‹åŒ–ï¼Œå› æ¤æŒ‰é›»å£“幅值進(jìn)行分類。阻抗匹é…也å分é‡è¦ï¼ŒåŒä¸€é¡žçš„阻容濾波網(wÇŽng)絡(luò)放到多路開關(guÄn)的輸出端,節(jié)çœäº†å¤§é‡é›»é˜»ã€é›»å®¹å™¨ä»¶ã€‚æ ¹æ“š(jù)需è¦é¸æ“‡4è·¯ã€8路或16路的多路開關(guÄn),如CD4051ã€CD5052ã€MAX396或MAX397ç‰ã€‚
(2)å°(duì)于å°ä¿¡è™Ÿ(hà o),æ¯å€‹(gè)é€šé“æ‡‰(yÄ«ng)在多路開關(guÄn)å‰è¨(shè)置放大器。在多路開關(guÄn)åŽè¨(shè)ç½®å¯ç·¨ç¨‹æ”¾å¤§å™¨ï¼Œåˆ©ç”¨å–®ç‰‡æ©Ÿ(jÄ«)編程控制放大器的增益,以滿足å„通é“信號(hà o)çš„ä¸åŒå¢žç›Šè¦æ±‚。
(3)å°(duì)于開關(guÄn)é‡åŠæ•¸(shù)å—é‡ï¼Œèª¿(dià o)到滿足CPLDè¼¸å…¥è¦æ±‚的電平å³å¯ï¼Œåœ¨CPLDå…§(nèi)部è¨(shè)計(jì)多路開關(guÄn),進(jìn)行測(cè)é‡è·¯æ•¸(shù)轉(zhuÇŽn)æ›ï¼Œä¸€æ¬¡8路分時(shÃ)輸入到80C196單片機(jÄ«)端å£ã€‚
(4)å°(duì)äºŽé »çŽ‡ä¿¡è™Ÿ(hà o),調(dià o)到滿足單片機(jÄ«)è¼¸å…¥è¦æ±‚çš„TTL電平å³å¯ç›´æŽ¥è¼¸å…¥å–®ç‰‡æ©Ÿ(jÄ«)端å£é€²(jìn)行測(cè)é‡ã€‚
(5)å°(duì)于信號(hà o)å¼·(qiáng)且干擾大的信號(hà o),需è¦é€²(jìn)行光電隔離,以å…影響單片機(jÄ«)測(cè)試電路。

1.4 CPLD電路è¨(shè)計(jì)
PSD器件已有少é‡CPLDå®å–®å…ƒï¼Œåœ¨æ¸¬(cè)試系統(tÇ’ng)ä¸å¾©(fù)雜ã€I/O端å£å¤ 用的情æ³ä¸‹ï¼ŒPSD+CPU的兩片å¼ç³»çµ±(tÇ’ng)èƒ½å¤ å¾ˆå¥½å®Œæˆä»»å‹™(wù),當(dÄng)ç„¶å°±ä¸å¿…å†å¤–åŠ CPLD器件。當(dÄng)測(cè)è©¦åŠæŽ§åˆ¶çš„å¤–éƒ¨é€šé“多,需大é‡çš„æ•¸(shù)å—I/O端å£ã€ç‰‡é¸ã€æ•¸(shù)å—多路開關(guÄn)ã€ä¸‰æ…‹(tà i)é–€åŠè¯ç¢¼é›»è·¯æ™‚(shÃ)ï¼Œåƒ…æ·»åŠ ä¸€ç‰‡CPLD器件就å¯è§£æ±ºå•(wèn)題,æé«˜äº†ç³»çµ±(tÇ’ng)集æˆåº¦ã€‚
FPGAå’ŒCPLD都是å¯ç·¨ç¨‹ASIC元件,由于FPGAå’ŒCPLDçµ(jié)æ§‹(gòu)上的差異,彼æ¤ä¹‹é–“å˜åœ¨å„自的特點(diÇŽn):
(1)CPLDé©åˆå¯¦(shÃ)ç¾(xià n)å„種é‹(yùn)算和組åˆé‚輯,F(xià n)PGA則é©ç”¨äºŽå¯¦(shÃ)ç¾(xià n)時(shÃ)åºé‚輯。
(2)CPLD的時(shÃ)間特性比FPGAç©©(wÄ›n)定。CPLD的布線çµ(jié)æ§‹(gòu)決定了它的時(shÃ)åºå»¶é²æ˜¯ç©©(wÄ›n)定和å¯ä»¥é (yù)測(cè)的,而FPGA的分段å¼å¸ƒç·šçµ(jié)æ§‹(gòu)使得å°(duì)其時(shÃ)é–“å»¶é²çš„é (yù)測(cè)å›°é›£ï¼Œå› è€ŒCPLD的速度比FPGA快。
(3)在編程上FPGA比CPLDå…·æœ‰æ›´å¤§çš„éˆæ´»æ€§ã€‚CPLD通éŽ(guò)修改具有固定內(nèi)部è¯(lián)ç·šçš„é‚輯功能來(lái)編程,而FPGAä¸»è¦æ˜¯é€šéŽ(guò)改變內(nèi)部線路布線來(lái)編程。
(4)FPGA的集æˆåº¦æ¯”CPLD高,é©åˆäºŽè¼ƒå¾©(fù)雜的布線çµ(jié)æ§‹(gòu)å’Œé‚輯實(shÃ)ç¾(xià n),所以FPGA元件的å¯ç·¨ç¨‹é‚輯數(shù)比CPLD大得多。
(5)CPLD使用比FPGA方便。CPLD的編程采用E2PROM或Flash技術(shù),而且å¯ä»¥åŠ å¯†ï¼Œä½¿ç”¨æ™‚(shÃ)外部ä¸éœ€è¦å¦å¤–çš„å˜å„²(chÇ”)元件;而FPGA的編程采用SRAM技術(shù),使用外部å˜å„²(chÇ”)元件來(lái)å˜å˜ç¨‹åºï¼Œä½¿ç”¨æ–¹æ³•較復(fù)雜。å¦å¤–,電路信æ¯å˜æ”¾åœ¨å¤–部芯片ä¸ï¼Œä½¿å¾—FPGAçš„ä¿å¯†æ€§è¼ƒCPLD差,電路資料容易被他人讀å–,電路容易被剽竊,ä¸é©åˆä¿å¯†ç¨‹åº¦è¦æ±‚較高的系統(tÇ’ng)。
(6)在編程方å¼ä¸Šï¼ŒCPLDä¸»è¦æ˜¯åŸºäºŽE2PROM或Flashå˜å„²(chÇ”)編程,å¯ç·¨ç¨‹æ¬¡æ•¸(shù)大于1è¬(wà n)次,優(yÅu)點(diÇŽn)是系統(tÇ’ng)斷電時(shÃ)編程信æ¯ä¸æœƒ(huì)消失。FPGA大部分是基于SRAMç·¨ç¨‹ï¼Œç·¨ç¨‹ä¿¡æ¯æœƒ(huì)在系統(tÇ’ng)斷電時(shÃ)æ¶ˆå¤±ï¼Œæ‰€ä»¥æ¯æ¬¡ä¸Šé›»æ™‚(shÃ)系統(tÇ’ng)è¦é‡æ–°å°‡ç·¨ç¨‹ä¿¡æ¯å¾žå¤–部記憶è£ç½®è®€å…¥FPGAçš„SRAMä¸ã€‚其優(yÅu)點(diÇŽn)是å¯ç·¨ç¨‹æ¬¡æ•¸(shù)ä¸é™ï¼Œå¹¶ä¸”在開發(fÄ)éŽ(guò)程ä¸å¯ä»¥å¾ˆæ–¹ä¾¿åœ°éš¨æ™‚(shÃ)更改程åºï¼Œå…¶ç¼ºé»ž(diÇŽn)是系統(tÇ’ng)上電時(shÃ)程åºå®¹æ˜“å—到干擾。
è¨(shè)計(jì)時(shÃ)應(yÄ«ng)ç¶œåˆè€ƒæ…®ä»¥ä¸Šå„å› ç´ ï¼Œä¾†(lái)ç¢ºå®šé¸æ“‡CPLD還是FPGAã€‚æ ¹æ“š(jù)測(cè)試功能需求,本系統(tÇ’ng)è¨(shè)計(jì)çš„CPLD芯片內(nèi)部çµ(jié)æ§‹(gòu)如圖4所示。
在CPLDçš„è¨(shè)計(jì)ä¸ï¼Œé‡‡ç”¨VHDL語(yÇ”)言作為主è¦çš„è¨(shè)計(jì)手段,是當(dÄng)å‰ASICè¨(shè)計(jì)çš„ä¸»æµæ–¹å¼ä¹‹ä¸€ã€‚VHDL語(yÇ”)言實(shÃ)ç¾(xià n)相關(guÄn)çš„è¨(shè)計(jì)éŽ(guò)ç¨‹å…·æœ‰é«˜æ•ˆã€æ–¹ä¾¿ã€æ˜“于移æ¤çš„特點(diÇŽn),而單純的硬件電路è¨(shè)計(jì)缺ä¹éˆæ´»æ€§ï¼Œä¿®æ”¹ä¸æ–¹ä¾¿ï¼Œå‹•(dòng)è¼’å°åˆ¶ç‰ˆå ±(bà o)廢。這種硬件è¨(shè)計(jì)軟件化,使得被測(cè)å°(duì)象接入點(diÇŽn)發(fÄ)生改變或增減時(shÃ),僅需相應(yÄ«ng)é›»è·¯çš„éƒ¨åˆ†è»Ÿä»¶ä½œé©æ‡‰(yÄ«ng)性修改,底層硬件電路åŠä¸Šå±¤æ‡‰(yÄ«ng)用軟件都ä¸éœ€è¦ä½œå¤§çš„æ”¹å‹•(dòng)甚至å¯ä»¥ä¸æ”¹ï¼Œå¤§å¤§ç¯€(jié)約了系統(tÇ’ng)ç¶è·(hù)æˆæœ¬ã€‚在CPLDçš„è¨(shè)計(jì)éŽ(guò)程當(dÄng)ä¸ï¼Œä¸€é‚Šè¨(shè)計(jì),一邊在計(jì)算機(jÄ«)上完æˆè»Ÿä»¶ä»¿çœŸå·¥ä½œï¼Œä½¿å¾—仿真測(cè)試與功能行為的檢驗(yà n)貫穿è¨(shè)計(jì)始終,ä¿è‰äº†å„é …(xià ng)功能的æ£ç¢ºæ€§åŠå¯é 性,確ä¿äº†æœ€çµ‚產(chÇŽn)å“çš„è¨(shè)計(jì)質(zhì)é‡ã€‚
在系統(tÇ’ng)è¨(shè)計(jì)ä¸å¯ä»¥æ ¹æ“š(jù)需è¦è®“CPLDå®Œæˆæ›´å¤šçš„功能,如將80C196單片見票åŽéƒ¨åˆ†åŠŸèƒ½å’ŒCPLD完æˆï¼Œå…¶ä¸ä¸»è¦æ˜¯æ¸¬(cè)試部分,包括串行接å£ã€æ•¸(shù)據(jù)編碼/æ ¡é©—(yà n)ã€å¹€æ§‹(gòu)é€ ã€å®šæ™‚(shÃ)發(fÄ)é€ã€èˆ‡å¤–åœæ¸¬(cè)試計(jì)算機(jÄ«)的數(shù)據(jù)交æ›ã€‚通éŽ(guò)é•·(zhÇŽng)期的ç©ç´¯ï¼Œæ“有大é‡çš„å¯å¾©(fù)用IP模塊,使系統(tÇ’ng)開發(fÄ)è¨(shè)計(jì)更為快æ·ã€‚
2ã€æ™ºèƒ½åŒ–與å¯é 性è¨(shè)計(jì)
系統(tÇ’ng)ä¿¡æ¯çš„æ™ºèƒ½åŒ–測(cè)控主è¦é«”ç¾(xià n)在兩個(gè)æ–¹é¢ï¼šä¸€æ˜¯è¦å…·å‚™å¸(xué)ç¿’(xÃ)è¨˜éŒ„åŠŸèƒ½ï¼Œèƒ½å¤ æ ¹æ“š(jù)ä¿¡æ¯é€šé“çš„åˆå§‹åŒ–或?qÅ«)å´ªy(cè)值自動(dòng)調(dià o)æ•´å…¶æŽ§åˆ¶åƒæ•¸(shù);二是å¯ä»¥æ ¹æ“š(jù)接收的命令,å°(duì)其通é“號(hà o)ã€é€šé“數(shù)ã€é‡‡é›†æ™‚(shÃ)é–“ã€å‚³è¼¸å—節(jié)ä»¥åŠæŽ§åˆ¶æ–¹å¼ç‰é€²(jìn)行調(dià o)整。
本文介紹的å°åž‹æ™ºèƒ½åŒ–測(cè)試è£ç½®ä¸åƒ…å¯ä»¥æ ¹æ“š(jù)需求快速進(jìn)行測(cè)試內(nèi)容的調(dià o)æ•´ï¼Œé‚„å…·æœ‰éœæª¢ã€è£è¨‚åƒæ•¸(shù)ã€æä¾›æ•¸(shù)據(jù)的功能。其測(cè)試得到的數(shù)據(jù)å¯é€šéŽ(guò)RS-485串行通信總線或無(wú)線手段發(fÄ)é€åˆ°å¤–åœæ¸¬(cè)試接收è¨(shè)å‚™ä¸ã€‚由于數(shù)據(jù)å‚³è¼¸ã€æ¸¬(cè)試數(shù)據(jù)å°è£ã€å› 而通é“鏿“‡ç‰å‡ç”±è»Ÿä»¶ä¾†(lái)實(shÃ)ç¾(xià n)ï¼Œå› è€Œæ™ºèƒ½åŒ–ç¨‹åº¦é«˜ï¼Œä½¿ç”¨æ–¹ä¾¿ã€‚
在測(cè)控?cái)?shù)據(jù)傳é€éŽ(guò)程ä¸ï¼Œé‡å°(duì)ä¸åŒçš„任務(wù)ï¼Œä½¿ç”¨çš„ä¿¡æ¯æ ¼å¼å„ä¸ç›¸åŒï¼Œè¦é‡‡ç”¨ä¸åŒçš„æ•¸(shù)據(jù)處ç†ç¨‹åºã€‚應(yÄ«ng)æ ¹æ“š(jù)å¤–åœæ¸¬(cè)控系統(tÇ’ng)與SCS智能測(cè)試è£ç½®çš„通信內(nèi)容,構(gòu)é€ é€šä¿¡å”(xié)è°ã€æ•¸(shù)據(jù)處ç†å”(xié)è°ï¼Œä¾æ“š(jù)ä¸åŒçš„ä¿¡æ¯é¡žåž‹ï¼ˆæŽ§åˆ¶å‘½ä»¤ï¼‰è™•ç†ä¸åŒçš„æ•¸(shù)據(jù),信æ¯å¹€çš„æ‰“包傳é€å‰‡ç”±å‚³è¼¸æ¨¡å¡Šé€²(jìn)行處ç†ã€‚
通常在試驗(yà n)å ´(chÇŽng)所有很強(qiáng)的電ç£å¹²æ“¾ï¼Œé€™äº›å¹²æ“¾ä»¥å‚³å°Ž(dÇŽo)和輻射的形å¼å¾žå‹•(dòng)力線和信號(hà o)線進(jìn)入系統(tÇ’ng)。為了ä¿è‰ç³»çµ±(tÇ’ng)æ£??煽窟\(yùn)行,采用軟ã€ç¡¬ä»¶ç›¸çµ(jié)åˆçš„æŠ—干擾技術(shù),輸入通é“ä¸é‡‡ç”¨RC濾波ã€é«˜ä½Žé›»å¹³åµŒä½ã€éš”離技術(shù),很好地抑制了å„ç¨®é«˜é »å¹²æ“¾ï¼Œå¹¶å¯¦(shÃ)ç¾(xià n)瞬間éŽ(guò)壓ä¿è·(hù);部分輸入輸出信號(hà o)采用光耦åˆå™¨ï¼Œé𔿖·å¤–部信號(hà o)與控制系統(tÇ’ng)çš„è¯(lián)系;軟件上采用ä¸å€¼å’Œç®—è¡“(shù)å¹³å‡å€¼ç›¸çµ(jié)åˆçš„æ–¹æ³•,剔除信號(hà o)çš„çž¬é–“å¹²æ“¾ï¼ŒåŒæ™‚(shÃ)軟件è¨(shè)計(jì)采用多種優(yÅu)化手段æé«˜ç³»çµ±(tÇ’ng)çš„å¥å£¯æ€§ã€‚為了防æ¢é›»è·¯å› 公共阻抗而引起信號(hà o)交å‰è€¦åˆï¼Œç³»çµ±(tÇ’ng)采用并è¯(lián)單點(diÇŽn)接地è¨(shè)計(jì),系統(tÇ’ng)å…§(nèi)模擬地和數(shù)據(jù)地分開,åªåœ¨ä¸€é»ž(diÇŽn)處匯åˆã€‚

3ã€æ¸¬(cè)試è£ç½®çš„軟件è¨(shè)計(jì)
測(cè)控軟件采用PL/M196語(yÇ”)言編制,用WAVE6000調(dià o)試編è¯å®Œæˆã€‚軟件æµç¨‹åœ–如圖5所示。
測(cè)控軟件主è¦åŒ…å«å…©å€‹(gè)分支:信號(hà o)測(cè)è©¦åˆ†æ”¯å’Œåƒæ•¸(shù)è£è¨‚åˆ†æ”¯ã€‚å…¶å·¥ä½œåˆ†æ”¯çš„åˆ¤æ–·ä¾æ“š(jù)æ˜¯åœ°é¢æä¾›çš„ä¸€è·¯æ¸¬(cè)試與å¦çš„電壓信號(hà o)。è£è¨‚åƒæ•¸(shù)電壓大于給定值,系統(tÇ’ng)進(jìn)å…¥?yún)â’€b訂分支,單片機(jÄ«)ç‰å¾…接收è£è¨‚數(shù)據(jù),進(jìn)行數(shù)據(jù)æ£ç¢ºæ€§åˆ¤å®šï¼Œå¹¶å°‡å„數(shù)據(jù)通éŽ(guò)I2C接å£åˆ†é¡žå˜æ”¾åˆ°å…±äº«çš„幾片F(xià n)lash ROMä¸ã€‚如無(wú)è£è¨‚電壓,則進(jìn)入測(cè)試分支,單片機(jÄ«)開始測(cè)試å„路信號(hà o),并將測(cè)試數(shù)據(jù)打包æˆå¹€ï¼ŒåŒæ™‚(shÃ)計(jì)算全部數(shù)據(jù)çš„CRCæ ¡é©—(yà n),發(fÄ)é€åˆ°æŽ¥æ”¶è¨(shè)備,并å°(duì)測(cè)試數(shù)據(jù)進(jìn)行判斷,確定系統(tÇ’ng)工作æµç¨‹ã€‚由于數(shù)據(jù)é‡è¼ƒå¤§ï¼Œéœ€è¦æ¸¬(cè)試的信號(hà o)路數(shù)ã€ç¨®é¡žè¼ƒå¤šï¼Œéœ€è¦æ‰“包發(fÄ)é€çš„æ•¸(shù)據(jù)幀長(zhÇŽng)70多å—節(jié),æ¯10ms以115.2k的波特率發(fÄ)é€ï¼Œé™¤åŽ»æ¸¬(cè)é‡ã€æŽ§åˆ¶åŠçµ„幀時(shÃ)間,數(shù)據(jù)傳é€çš„æ™‚(shÃ)é–“å°±è¦ä»”ç´°(xì)計(jì)ç®—äº†ã€‚é‡‡ç”¨æŸ¥è©¢åŠæ¨™(biÄo)準(zhÇ”n)çš„ä¸æ–·è©¦ï¼Œ10ms時(shÃ)é–“å°±é (yuÇŽn)é (yuÇŽn)ä¸å¤ 了,通éŽ(guò)示波器測(cè)é‡ï¼Œä¸€å¹€æ•¸(shù)據(jù)測(cè)è©¦åŠ å‚³è¼¸éœ€70ms。本系統(tÇ’ng)采用PTS(外è¨(shè)事件æœå‹™(wù)å™¨ï¼‰ä¸æ–·æ–¹å¼ï¼Œç”±å¾®ä»£ç¢¼ç¡¬ä»¶ä¸æ–·è™•ç†å™¨æŽ§åˆ¶ï¼Œå 用很少的CPU時(shÃ)é–“ ,類似于PC機(jÄ«)çš„DMA,ä¸ç”¨ä¿®æ”¹å †æ£§å’Œä¿å˜ç‹€æ…‹(tà i)å—。本系統(tÇ’ng)采用PTSå¡Šå‚³éžæ–¹å¼ï¼Œåªéœ€çµ¦å®šPTS控制å—ã€æ•¸(shù)據(jù)塊的起始地å€åŠæ•¸(shù)據(jù)é•·(zhÇŽng)åº¦ï¼Œå®šç¾©ä¸æ–·å±è”½å¯„å˜å™¨ï¼Œæœ€åŽé–‹æ”¾PTS䏿–·å’Œæ¨™(biÄo)準(zhÇ”n)䏿–·ï¼Œé€™æ¨£ä¸€å¹€æ•¸(shù)據(jù)測(cè)è©¦åŠ å‚³è¼¸éœ€6.5ms。
ç¶“(jÄ«ng)éŽ(guò)測(cè)試實(shÃ)é©—(yà n)表明,采用單片機(jÄ«)ã€PSDã€CPLD和電壓調(dià o)ç†é›»è·¯ç‰ä¸»è¦çµ„ä»¶è¨(shè)計(jì)完æˆSCS相關(guÄn)ä¿¡æ¯çš„采集與控制ä¸åƒ…是高效å¯è¡Œçš„,也是使得SCS測(cè)試è£ç½®å°åž‹åŒ–ã€æ™ºèƒ½åŒ–ã€æé«˜æ¸¬(cè)試系統(tÇ’ng)å¯é æ€§å“æœ‰æˆæ•ˆçš„途徑之一。單片機(jÄ«)與å¯ç·¨ç¨‹é‚輯器件有很強(qiáng)的互補(bÇ”)性。單片機(jÄ«)具有性能價(jià )æ ¼æ¯”é«˜ã€åŠŸèƒ½éˆæ´»ã€æ˜“于人機(jÄ«)å°(duì)話ã€è‰¯å¥½çš„æ•¸(shù)據(jù)處ç†èƒ½åŠ›ç‰¹é»ž(diÇŽn),CPLDå’ŒPSDç‰å¯ç·¨ç¨‹å™¨ä»¶å‰‡å…·æœ‰é«˜é€Ÿã€é«˜å¯é 性以åŠé–‹ç™¼(fÄ)便æ·ã€è¦(guÄ«)èŒƒã€æ˜“于ç¶è·(hù)ç‰å„ª(yÅu)點(diÇŽn)。這種單牒åŒåŠ å¤–éƒ¨å¯ç·¨ç¨‹å™¨ä»¶çš„電路çµ(jié)æ§‹(gòu)在許多高性能儀器儀表和電å產(chÇŽn)å“䏿œ‰å»£æ³›çš„æ‡‰(yÄ«ng)ç”¨å‰æ™¯ã€‚