亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        數(shù)字指令驅(qū)動電路測試方法研究

        2020-05-11 09:02:16張春宇
        微處理機(jī) 2020年2期
        關(guān)鍵詞:指令單片機(jī)計算機(jī)

        張春宇

        (中國電子科技集團(tuán)公司第四十七研究所,沈陽110032)

        1 引 言

        在當(dāng)今社會,基于嵌入式技術(shù)的產(chǎn)品隨處可見,大到航空航天,小到家電設(shè)備。各行各業(yè)都提倡智能管理,這其中應(yīng)用最多的就是嵌入式技術(shù)。由于嵌入式技術(shù)具有可控制、可編程、成本低等優(yōu)點,所以近十年得到了空前高速發(fā)展[1-4]。應(yīng)用嵌入式技術(shù),可更加有效地完成數(shù)字指令驅(qū)動電路的測試[5]。

        2 系統(tǒng)概要

        數(shù)字指令驅(qū)動電路是一種ASIC 電路[6]。它的外圍端口有兩路串行輸入、一路串行輸出、九十六路并行輸出、控制端口若干,其工作過程為接收串行輸入的指令,內(nèi)部狀態(tài)機(jī)對串行指令進(jìn)行接收并解析,并將解析結(jié)果通過并行輸出。沒有指令執(zhí)行時九十六路輸出端口全為高電平,當(dāng)有指令執(zhí)行時,指令中指定的輸出端口輸出固定時間長度的低電平,其他端口輸出高電平。

        ASIC 電路能夠接收的指令分為兩種,執(zhí)行指令和查詢指令,每種指令都由若干字節(jié)組成,執(zhí)行指令中包含輸出端口號和輸出端口保持時間,查詢指令用于查詢ASIC 電路內(nèi)部各寄存器狀態(tài)。ASIC 電路有四位地址編碼,當(dāng)多個ASIC 電路接到總線上時,只有指令中的地址編碼與ASIC 電路的地址編碼一致時,指令才會被執(zhí)行,否則被丟棄。

        要實現(xiàn)對ASIC 電路指令的測試,必須按照電路指定的時序發(fā)送固定的指令,才會被ASIC 電路解析并正確的執(zhí)行。計算機(jī)程序可以實現(xiàn)指令發(fā)送工作。單片機(jī)具有檢測ASIC 電路輸出端口保持低電平時間的功能。這樣搭建計算機(jī)-單片機(jī)-ASIC 電路三級互連系統(tǒng),相互聯(lián)系,協(xié)同工作,可完成ASIC電路的指令及功能測試工作[7-8]。

        3 系統(tǒng)設(shè)計

        系統(tǒng)設(shè)計包括硬件電路設(shè)計、軟件程序設(shè)計和通訊協(xié)議設(shè)計三個方面。

        3.1 硬件電路設(shè)計

        根據(jù)ASIC 電路介紹,設(shè)計如圖1 所示電路來完成測試工作。

        圖1 系統(tǒng)硬件電路構(gòu)成示意圖

        計算機(jī)采用普通PC 機(jī),單片機(jī)采用飛利浦公司的P89C51RD2 型。計算機(jī)、單片機(jī)、ASIC 電路連接到RS422 總線上進(jìn)行通訊,ASIC 電路可以直接接到總線上,而計算機(jī)與單片機(jī)需要增加總線轉(zhuǎn)換器件。ASIC 電路的并行輸出信號,通過十二個八路的數(shù)據(jù)選擇電路和一個三線-八線譯碼電路構(gòu)成的組合邏輯,接到單片機(jī)的一個輸入口上。ASIC 電路的兩個串行輸入口通過一個數(shù)據(jù)分配器電路連接到系統(tǒng)總線上。在這個硬件系統(tǒng)里,計算機(jī)作為主機(jī)負(fù)責(zé)發(fā)送指令給單片機(jī)或者ASIC 電路,并接收它們的返回信息。單片機(jī)作為第一個從機(jī)負(fù)責(zé)接收計算機(jī)的指令,根據(jù)不同指令,執(zhí)行占有總線、釋放總線和選擇測試通道等。ASIC 電路作為第二個從機(jī)負(fù)責(zé)接收計算機(jī)發(fā)送的指令并執(zhí)行。對于執(zhí)行指令,執(zhí)行結(jié)果被單片機(jī)采集并反饋給計算機(jī),對于查詢指令,直接反饋給計算機(jī)。在這個一主機(jī)雙從機(jī)的系統(tǒng)里,主機(jī)和從機(jī)之間采用RS422 總線數(shù)據(jù)傳輸協(xié)議,雙從機(jī)采用分時占用總線的形式與主機(jī)進(jìn)行通訊。

        3.2 軟件設(shè)計

        軟件設(shè)計包括計算機(jī)軟件設(shè)計和單片機(jī)軟件設(shè)計兩部分。

        3.2.1 計算機(jī)軟件設(shè)計

        計算機(jī)軟件采用Visual Studio 2010 中的C#語言在Windows 7 環(huán)境下開發(fā)。C#是一種最新的、面向?qū)ο蟮木幊陶Z言,使得程序員可以快速地編寫各種基于Microsoft .NET 平臺的應(yīng)用程序[9]。在Visual Studio 2010 中編寫串口通訊程序非常方便,它提供了一個串口通訊類,所有與串口相關(guān)的操作都可以用此類的實例來完成。

        ASIC 電路有執(zhí)行和查詢兩種指令,計算機(jī)機(jī)軟件設(shè)計了針對這兩種指令的測試程序。

        測試執(zhí)行指令的程序執(zhí)行過程為:發(fā)送執(zhí)行指令之前,計算機(jī)先發(fā)送兩條指令給單片機(jī),第一條指令告訴單片機(jī)將它的發(fā)送端接到系統(tǒng)總線上,這樣執(zhí)行指令執(zhí)行完的結(jié)果能及時反饋給計算機(jī),第二條指令告訴單片機(jī)待測試指令中的通道號,單片機(jī)將此ASIC 電路的并行輸出端口連接到單片機(jī)的采集信號管腳上。兩條指令發(fā)送完畢后,計算機(jī)發(fā)送執(zhí)行指令給ASIC 電路,ASIC 電路的執(zhí)行結(jié)果被單片機(jī)采集到,并反饋給計算機(jī)。執(zhí)行指令中的通道執(zhí)行時間與單片機(jī)采集到的執(zhí)行時間一致時,計算機(jī)軟件顯示執(zhí)行指令執(zhí)行正確,否則顯示錯誤。

        另外計算機(jī)軟件中可以設(shè)置四位的ID 號,即ASIC 電路的地址,地址一致的ASIC 電路才能接收執(zhí)行指令并執(zhí)行,計算機(jī)軟件可以對最多十六個ASIC 電路進(jìn)行測試。對于指令的執(zhí)行時間,可以設(shè)置1ms 到255ms。執(zhí)行指令測試界面如圖2 所示。

        圖2 執(zhí)行指令測試界面

        測試查詢指令的程序執(zhí)行過程為:發(fā)送查詢指令之前,計算機(jī)先發(fā)送一條指令給單片機(jī),告訴單片機(jī)將其發(fā)送端從系統(tǒng)總線上斷開,將ASIC 電路的發(fā)送端連接到總線上,這樣查詢指令執(zhí)行完的結(jié)果能及時反饋給計算機(jī)[10-11]。待這條指令執(zhí)行完后系統(tǒng)做好了執(zhí)行查詢指令的準(zhǔn)備,這時計算機(jī)開始發(fā)送查詢指令,并接收ASIC 電路的返回信息。ASIC 電路執(zhí)行查詢指令后將內(nèi)部各寄存器的值按固定格式發(fā)送給計算機(jī),計算機(jī)接收到查詢指令的返回信息,進(jìn)行解讀并顯示。查詢指令測試界面如圖3 所示。

        圖3 查詢指令測試界面

        3.2.2 單片機(jī)軟件設(shè)計

        單片機(jī)軟件在Keil μVision5 環(huán)境下采用C 語言編寫。Keil C51 是美國Keil Software 公司出品的51 系列兼容單片機(jī)C 語言軟件開發(fā)系統(tǒng)。Keil 提供了包括C 編譯器、宏匯編、鏈接器、庫管理和功能強(qiáng)大的仿真調(diào)試器等在內(nèi)的完整開發(fā)方案,通過一個集成開發(fā)環(huán)境(μVision)將這些部分組合在一起。

        在這里,單片機(jī)軟件負(fù)責(zé)接收計算機(jī)軟件發(fā)送的指令,執(zhí)行后將結(jié)果反饋給計算機(jī)軟件。單片機(jī)軟件主要會接收三個指令,第一個是關(guān)鍵字為“AA”或“AB”的指令,單片機(jī)接收到這個指令后,提取出指令中的待測試通道號,然后將這個通道接到單片機(jī)采集端口上,并開始監(jiān)視該端口的狀態(tài),當(dāng)該端口出現(xiàn)一個正脈沖變化時,單片機(jī)記錄了脈沖保持的時間,然后把這個時間發(fā)送給計算機(jī),并且關(guān)閉測試通道與單片機(jī)采集端口的連接,這就是第一個指令的完整執(zhí)行過程。第二個是關(guān)鍵字為“AC”的指令,單片機(jī)接收到這個指令后直接將其向計算機(jī)發(fā)送數(shù)據(jù)的通路在系統(tǒng)總線上斷開,這是為了測試查詢指令做準(zhǔn)備。第三個是關(guān)鍵字為“AD”的指令,單片機(jī)接收到這個指令后將其向計算機(jī)發(fā)送數(shù)據(jù)的通路連接到系統(tǒng)總線上,這是為了測試執(zhí)行指令做準(zhǔn)備。單片機(jī)串口中斷程序流程圖如圖4 所示。

        圖4 單片機(jī)串口中斷程序流程圖

        單片機(jī)在執(zhí)行采集指令執(zhí)行時間之前, 要先將ASIC 電路的待測試并行輸出端口連接到單片機(jī)的采集端口上,實現(xiàn)方法是P2 口通過一系列組合邏輯器件將ASIC 電路的九十六路并行輸出端口進(jìn)行了編址,要測試哪個通道,P2 口輸出其地址即可。

        單片機(jī)測試正脈沖保持時間的方法是采用定時器0 記錄待測試通道的正脈沖時間,硬件上將單片機(jī)的P3.2 端口,即外部中斷0 端口作為ASIC 電路并行輸出通道的采集端口,在單片機(jī)程序初始化中,設(shè)置定時器方式選擇寄存器(TMOD)的值為09H,當(dāng)執(zhí)行指令開始執(zhí)行后,P3.2 口由低電平變?yōu)楦唠娖剑〞r器0 啟動計時,當(dāng)執(zhí)行指令結(jié)束后,P3.2 口由高電平變?yōu)榈碗娖剑瑔纹瑱C(jī)外部中斷0 觸發(fā)。在中斷程序里,停止定時器0 工作,整個計時過程結(jié)束。最后將這個時間發(fā)送給計算機(jī),和計算機(jī)發(fā)送的指令執(zhí)行時間對比,即完成了執(zhí)行指令的測試。為了保證測試精度,減小測試誤差,這里設(shè)置定時器0 的溢出時間為0.4ms。

        執(zhí)行指令完整的測試過程為:計算機(jī)發(fā)送關(guān)鍵字為“AD”的指令,單片機(jī)收到后,將其向計算機(jī)發(fā)送數(shù)據(jù)的通路連接到系統(tǒng)總線上。計算機(jī)發(fā)送關(guān)鍵字為“AA”或“AB”的指令,單片機(jī)收到后將待測試通道連接到采集端口上,并監(jiān)測端口上信號變化。計算機(jī)發(fā)送執(zhí)行指令給ASIC 電路,ASIC 電路接收并執(zhí)行,單片機(jī)將ASIC 電路執(zhí)行結(jié)果發(fā)送給計算機(jī)。計算機(jī)收到執(zhí)行指令的執(zhí)行結(jié)果進(jìn)行比對并顯示,執(zhí)行指令測試結(jié)束。

        查詢指令的完整測試過程為:計算機(jī)發(fā)送關(guān)鍵字為“AC”的指令,單片機(jī)收到后,將ASIC 電路向計算機(jī)發(fā)送數(shù)據(jù)的通路連接到系統(tǒng)總線上。計算機(jī)發(fā)送查詢指令給ASIC 電路,ASIC 電路收到查詢指令后,讀取各寄存器狀態(tài),將查詢結(jié)果發(fā)送給計算機(jī),計算機(jī)收到查詢指令的結(jié)果后進(jìn)行顯示,查詢指令測試結(jié)束。

        3.3 通訊協(xié)議設(shè)計

        通訊協(xié)議是計算機(jī)與ASIC 電路或單片機(jī)之間能夠協(xié)同工作的重要依據(jù),通常由一幀若干字節(jié)合在一起的數(shù)據(jù)組成,包括協(xié)議頭、協(xié)議尾、校驗位和有效數(shù)據(jù)位等。本系統(tǒng)所有通訊協(xié)議都以相同的協(xié)議頭開始,以相同的協(xié)議尾結(jié)束,每條協(xié)議的有效數(shù)據(jù)位中設(shè)置了一個字節(jié)的關(guān)鍵字,以便區(qū)分。

        計算機(jī)和ASIC 電路之間的通訊協(xié)議包括:

        執(zhí)行指令:長度為7 字節(jié),有效數(shù)據(jù)位包括接收指令電路地址,待測試指令通道,執(zhí)行時間,協(xié)議關(guān)鍵字為“0xAE”。

        查詢指令:長度為7 字節(jié),有效數(shù)據(jù)位包括接收指令電路地址,協(xié)議關(guān)鍵字為“0xAF”。

        查詢返回指令:長度為8 字節(jié),有效數(shù)據(jù)位包括電路地址,包長,指令循環(huán)計數(shù),接收錯誤指令條數(shù),最后執(zhí)行指令通道號,協(xié)議關(guān)鍵字為“0xAG”。

        計算機(jī)與單片機(jī)之間的通訊協(xié)議包括:

        打開單片機(jī)返回通路協(xié)議:長度為9 字節(jié),有效數(shù)據(jù)位包括接收指令電路地址、協(xié)議長度、待測試通道號、執(zhí)行時間、數(shù)碼管顯示,協(xié)議關(guān)鍵字為“0xAD”;

        打開ASIC 電路返回通路協(xié)議:長度為9 字節(jié),有效數(shù)據(jù)位中協(xié)議關(guān)鍵字為“0xAC”,其他與打開單片機(jī)返回通路協(xié)議相同;

        打開待測試通道協(xié)議:長度為9 字節(jié),有效數(shù)據(jù)位中協(xié)議關(guān)鍵字為“0xAA”或者“0xAB”,其他與打開單片機(jī)返回通路協(xié)議相同,當(dāng)計算機(jī)發(fā)送關(guān)鍵字為“0xAA”的指令時,測試ASIC 電路串行輸入A 口,當(dāng)計算機(jī)發(fā)送關(guān)鍵字為“0xAB”的指令時,測試ASIC 電路串行輸入B 口;

        測試結(jié)果返回協(xié)議:長度為11 字節(jié),有效數(shù)據(jù)位包括ASIC 電路地址,指令長度,測試通道號,指令執(zhí)行時間,實際采集時間,協(xié)議關(guān)鍵字為“0xAH”。

        通過以上制定的通訊協(xié)議:計算機(jī)與ASIC 電路,計算機(jī)與單片機(jī)之間協(xié)同工作,有效完成ASIC電路的測試工作。

        4 結(jié) 束 語

        所設(shè)計的測試系統(tǒng)已經(jīng)應(yīng)用于ASIC 電路的測試工作中,達(dá)到了預(yù)期的效果。使用軟件的自動測試功能,縮短了測試時間,且實現(xiàn)無人值守。通過對ASIC 電路測試方法的研究與實際應(yīng)用,驗證了將嵌入式技術(shù)應(yīng)用于集成電路測試工作的可行性與優(yōu)越性,對未來集成電路的測試工作提供了一條有效便捷的途徑。

        猜你喜歡
        指令單片機(jī)計算機(jī)
        聽我指令:大催眠術(shù)
        計算機(jī)操作系統(tǒng)
        基于單片機(jī)的SPWM控制逆變器的設(shè)計與實現(xiàn)
        電子制作(2019年13期)2020-01-14 03:15:28
        基于計算機(jī)自然語言處理的機(jī)器翻譯技術(shù)應(yīng)用與簡介
        科技傳播(2019年22期)2020-01-14 03:06:34
        基于單片機(jī)的層次漸變暖燈的研究
        電子制作(2019年15期)2019-08-27 01:12:10
        基于單片機(jī)的便捷式LCF測量儀
        電子制作(2019年9期)2019-05-30 09:42:02
        ARINC661顯控指令快速驗證方法
        LED照明產(chǎn)品歐盟ErP指令要求解讀
        電子測試(2018年18期)2018-11-14 02:30:34
        信息系統(tǒng)審計中計算機(jī)審計的應(yīng)用
        Microchip推出兩個全新PIC單片機(jī)系列
        疯狂做受xxxx高潮视频免费| 国产在线视频网站不卡| 白色白在线观看免费2| 欧美白人战黑吊| 看全色黄大色大片免费久久| 国产精品一区二区在线观看完整版 | 无码无套少妇毛多18pxxxx| 免费人成视频在线观看网站| 亚洲是图一区二区视频| 国产一区精品二区三区四区| 性欧美丰满熟妇xxxx性久久久| 国产精品对白刺激久久久| 国产成人九九精品二区三区| 亚洲av毛片一区二区久久| 亚洲偷自拍国综合第一页| 国产精品成人观看视频| 国产中文aⅴ在线| 手机在线观看成年人视频| 欧美性色欧美a在线播放| 内射无码专区久久亚洲| 女人的天堂av免费看| 国产一区二区不卡av| 日韩欧美亚洲国产精品字幕久久久 | 中文字幕乱码亚洲在线| 成人影院yy111111在线| 毛片免费在线播放| 亚洲国产精品午夜一区| 日本不卡高字幕在线2019| 四川老熟女下面又黑又肥| 国产乱人视频在线观看播放器| 国产午夜福利小视频在线观看| 色综合久久久久综合99| 双腿张开被9个黑人调教影片| 亚洲视频一区二区久久久| 人妻免费一区二区三区免费| 亚洲成a v人片在线观看| 乱人伦视频69| 亚洲成人av一区免费看| 国模无码一区二区三区| 日本VA欧美VA精品发布| av在线网站一区二区|