摘 要:為了解決復(fù)雜數(shù)字系統(tǒng)的測試和故障診斷問題,研究了基于ModelSource的硬件建模與仿真軟件LASAR相結(jié)合的開發(fā)復(fù)雜數(shù)字系統(tǒng)測試程序集(TPS)的方法。給出了建立邏輯模型的基本方法以及用LASAR開發(fā)復(fù)雜測試程序集的基本思想,并以子陣運(yùn)算板測試程序開發(fā)過程為例介紹了基于硬件模型的開發(fā)復(fù)雜數(shù)字系統(tǒng)測試程序集的實(shí)現(xiàn)過程。
關(guān)鍵詞: ModelSource; 邏輯模型; LASAR; 測試程序集(TPS)。
中文分類號:TP277
Using logic model in Testing and diagnosing
complex digital logic boards
LIUgeng,WANGqingli,SUNchangyou,HUweijia,GAOshumin
Abstract: a method on how to test and diagnose complex digital logic boards and systems is introduced. It base on the ModelSource Hardware modeling system and the high-quality functional test program making software LASAR. Testing and Diagnosing Complex Digital Logic Boards And Systems With Logic Model explain the way of creating a logic model, and the mind of producing an high-quality test program with LASAR. The procession of the Zi Zhen Yun Suan board TPS development is introduced in detail.
Key words: ModelSource;logic model;LASAR;test program set(TPS)
1引言
隨著數(shù)字電路的集成度越來越高,芯片的功能也日趨強(qiáng)大,而對于復(fù)雜數(shù)字系統(tǒng)的測試也就變得越來越困難。目前對于數(shù)字系統(tǒng)的測試主要基于仿真,美國Teradyne的仿真軟件LASAR采用的動(dòng)態(tài)最大/最小定時(shí)分析技術(shù)和先進(jìn)的故障仿真技術(shù),它生成的測試結(jié)果準(zhǔn)確而可靠,并可直接導(dǎo)入測試執(zhí)行軟件Teststudio生成測試程序,極大的方便了測試程序的開發(fā)。而仿真需要以可靠的模型為前提。目前的器件模型主要是利用語言編寫,LASAR的模型庫提供了相當(dāng)數(shù)量的器件仿真模型,此外Synopsys 的SmartModel 也提供了很多器件的仿真模型。但是現(xiàn)在新型器件層出不窮,集成度也越來越高,TPS開發(fā)人員很難在擁有一種器件的同時(shí)就擁有該器件的仿真模型。而用Synopsys的MS-3200硬件建模系統(tǒng)建立的邏輯模型可以很好的解決此問題。
邏輯模型不同于一般仿真模型,它基于實(shí)際的物理器件建模。仿真時(shí),邏輯模型被插入到硬件建模系統(tǒng),硬件模型器格式化仿真器的輸入,并把它們加到實(shí)際器件上,然后采集器件的輸出并加上相應(yīng)的時(shí)序信息最后返回到仿真器。運(yùn)用硬件建模系統(tǒng)建立的模型準(zhǔn)確可靠,而它與具有強(qiáng)大功能的仿真測試軟件LASAR的結(jié)合可使對復(fù)雜系統(tǒng)的測試變得簡單可行。
2邏輯模型概述
用LM系列和ModelSource硬件建模系統(tǒng)建立的硬件模型稱為邏輯模型。邏輯模型可建立多種復(fù)雜數(shù)字器件的模型,并可適用于多種的仿真工具。它可以應(yīng)用于系統(tǒng)仿真,標(biāo)準(zhǔn)器件和ASIC的建模,硬件和軟件的集成,以及ASIC原型的驗(yàn)證和測試向量的生成。邏輯模型可與多種仿真模型兼容,包括門級模型、SmartModel 行為模型以及用行為建模語言建立的模型。
硬件建模是建立大多數(shù)數(shù)字LSI和VLSI器件精確仿真模型的理想方法,它在仿真時(shí)使用基于實(shí)際硅片的器件,可有效的節(jié)約開發(fā)、驗(yàn)證和維護(hù)的時(shí)間。
2.1 硬件建模環(huán)境的組成
一套完整地硬件建模環(huán)境包含以下幾部分:
1) 綜合仿真器。它與硬件建模系統(tǒng)進(jìn)行通信。
2) 硬件建模系統(tǒng)。它由MS-3200/3400和一個(gè)運(yùn)行ModelSource的前端處理器(工作站)組成,它們之間由高速光纜連接。
3) 邏輯模型。
2.2邏輯模型的組成
邏輯模型主要包括硬件和軟件兩部分。其中硬件包括實(shí)際的物理芯片。如果芯片不是適配器所支持的標(biāo)準(zhǔn)封裝則需要制作一塊轉(zhuǎn)接板,將芯片管腳引入MS3200。軟件方面主要是編寫Shell文件,Shell文件提供開發(fā)邏輯模型所需的芯片信息,其結(jié)構(gòu)如圖1所示。
Shell文件主要包括:
1) Model文件:模型的命名文件,它是邏輯模型的主體。
2) Device文件:描述芯片信息,包括芯片速度、工藝、管腳定義、初始化隊(duì)列等。
3) Package文件:描述適配板和芯片管腳的映射關(guān)系。
4) Adapter文件:描述適配板和適配器管腳的映射關(guān)系。
5) 附加文件:包括Variable Declarations(變量聲明)文件、State Tracking(狀態(tài)跟蹤)文件、Delay(延時(shí))文件、Force Values文件、Options(選項(xiàng)文件)、Pin Names(管腳名稱)、Timing Checks(時(shí)序檢查)等文件。它們對邏輯模型細(xì)節(jié)的功能如時(shí)序、初始化狀態(tài)等特征進(jìn)行描述。
6) 最后還有驗(yàn)證模型的Test Vector(測試向量)文件和README(自述)文件。
3應(yīng)用邏輯模型開發(fā)子陣運(yùn)算板TPS
3.1被測子陣運(yùn)算板功能介紹
被測電路子陣運(yùn)算板是一塊含有DSP處理器TMS
圖2子陣運(yùn)算板功能簡圖
3.2子陣運(yùn)算板TPS開發(fā)
針對數(shù)字電路板,我們應(yīng)用Teradyne公司的仿真軟件LASAR對被測電路板進(jìn)行故障仿,真生成故障字典和引導(dǎo)探筆文件,通過Teststudio軟件生成最終測試程序。測試系統(tǒng)為Teradyne公司的M9系列板級數(shù)字測試系統(tǒng),系統(tǒng)資源具有128路數(shù)字通道,通道速率20MHz。
子陣運(yùn)算板TPS開發(fā)包括軟件和硬件兩個(gè)部分:
1) 軟件方面是子陣運(yùn)算板測試程序(TP)開發(fā)。
2) 硬件方面是子陣運(yùn)算板適配板開發(fā)。適配板連接測試儀與被測對象,為被測板提供電源、數(shù)字通道等資源。
3.3子陣運(yùn)算板測試程序開發(fā)
由于被測子針運(yùn)算板的功能復(fù)雜,所用元器件含DSP處理器,在開發(fā)測試程序時(shí)解決了以下難點(diǎn)。
1) 系統(tǒng)使用板內(nèi)晶振作為系統(tǒng)時(shí)鐘,不受控,而且系統(tǒng)工作頻率為40MHz。在測試時(shí)需要斷開原晶振,并且外接數(shù)字通道模擬系統(tǒng)時(shí)鐘。由于數(shù)字通道速率為20MHz,因此系統(tǒng)無法工作于原來的工作頻率,但對于被測板功能測試和故障元件的檢測,系統(tǒng)的降頻能夠滿足測試的要求。
2) 被測板采用RC上電復(fù)位電路,而測試時(shí),系統(tǒng)的加電和測試是分步進(jìn)行的,因此需要由數(shù)字通道給被測板提供復(fù)位信號。復(fù)位信號的寬度需要滿足系統(tǒng)復(fù)位毫秒級的要求,而且系統(tǒng)工作頻率是微妙級,在以接拍為單位的測試激勵(lì)程序編寫時(shí)調(diào)整了復(fù)位時(shí)段的CPP(CLOCK PER PATTERN),從而減少的激勵(lì)程序的節(jié)拍,從而縮短了仿真和測試的時(shí)間。
3) 采用了硬件建模系統(tǒng)開發(fā)了DSP處理器TMS
3.4子陣運(yùn)算板測試程序開發(fā)流程
子陣運(yùn)算板測試程序開發(fā)流程圖如圖3。
圖3子陣運(yùn)算板測試程序集開發(fā)流程
子陣運(yùn)算板測試程序開發(fā)流程簡介如下:
1)制作芯片轉(zhuǎn)接板。它的目的是把原來TMS
2)編寫Shell文件。在充分閱讀芯片手冊的基礎(chǔ)上編寫Shell文件。簡單器件模型只需編寫TMS
3)建立邏輯模型。運(yùn)行slam命令,輸入MDL文件名TMS
4)插入模型。用slam_insert.csh dsp_lm命令將邏輯模型插入到LASAR庫,并將板內(nèi)其它器件的仿真模型插入到LASAR庫中。
5)編譯系統(tǒng)模型。將Protel99的原理圖dsp.sch中定義輸入/輸出端口;修改代表邏輯高低電平的VCC和GND以區(qū)別器件本身的VCC和GND;生成 EDIF2.0格式的網(wǎng)表,并導(dǎo)出為dsp.edif文件。在LASAR開發(fā)環(huán)境下用tr m /edif dsp.edif命令轉(zhuǎn)換網(wǎng)表并生成dsp_.net;將網(wǎng)表中器件本身的電源和地去掉,并修改器件名稱使之與LASAR模型庫中的器件模型相對應(yīng)。然后在LASAR圖形界面中編譯系統(tǒng)模型。
6)編寫激勵(lì)文件(.pat文件)。激勵(lì)文件是系統(tǒng)仿真的輸入文件,它模擬被測板工作時(shí)的輸入信號。本系統(tǒng)模擬的輸入信號主要是上電復(fù)位信號、時(shí)鐘信號、數(shù)據(jù)線地址線信號、以及外部中斷等信號,激勵(lì)覆蓋了系統(tǒng)的上電復(fù)位、加載程序、執(zhí)行中斷程序等全部功能。
7)運(yùn)行仿真。將物理芯片TMS
8)故障仿真。首先編寫故障文件(.flt文件)插入固定和開路故障,并剔除一些系統(tǒng)未用到的管腳故障。編譯故障文件后運(yùn)行故障仿真,仿真結(jié)果生成故障檢測率報(bào)告。
9)根據(jù)仿真生成的結(jié)果,進(jìn)一步修改和完善邏輯模型。由于仿真時(shí)TMS
10)修改激勵(lì)文件。修改激勵(lì)文件并重新執(zhí)行仿真與故障仿真可以進(jìn)一步提高故障檢測率。直到故障覆蓋率滿足要求(>96%)。
11)生成故障字典。
12)編譯探筆文件。在故障字典無法精確定位故障的情況下,探筆可探測被測板內(nèi)部的節(jié)點(diǎn)使得檢測結(jié)果更精確。
13)建立測試程序dsp.tsp。運(yùn)行Teststudio軟件,新建一個(gè)測試程序,插入一個(gè)子節(jié)點(diǎn)dsp并將該節(jié)點(diǎn)設(shè)為數(shù)字測試執(zhí)行(Digital Test Execution),然后用Lsrtap Importer將LASAR生成的結(jié)果導(dǎo)入TestStudio,加上管腳映射文件(dsp.pmp文件)和電平描述文件(dsp.lvl文件)生成測試文件DSP
3.5 子陣運(yùn)算板適配板開發(fā)
子陣運(yùn)算板適配板的功能是為被測板的提供供電電源,并且將被測板的輸入輸出信號引入數(shù)字測試系統(tǒng)。由于子陣運(yùn)算板DSP處理器數(shù)據(jù)和地址都是在板內(nèi)連接,沒有引出到邊緣連接器,因此用芯片夾制作了幾根線纜,連接適配板和被測板內(nèi)部的關(guān)鍵信號,從而提高了測試程序的故障覆蓋率和隔離率。
3.6 TPS調(diào)試與驗(yàn)證
1) 準(zhǔn)備工作。將被測板插于適配板并連接到測試系統(tǒng),給適配板和被測板加電。
2) 軟面板調(diào)試。運(yùn)行dsp.tsp程序,進(jìn)入Teststudio界面后,運(yùn)行dsp節(jié)點(diǎn)的M9軟面板進(jìn)行調(diào)試。通過軟面板調(diào)試可觀察到仿真的結(jié)果與實(shí)際測試的結(jié)果是否一致,如果不一致可能是元件的建模有問題或者激勵(lì)的編寫不夠合理,需要修改模型或者激勵(lì)程序重新進(jìn)行仿真。
3) Go/No Go測試。軟面板調(diào)試通過后,在dsp節(jié)點(diǎn)中添加一個(gè)數(shù)字測試診斷(digital test diagnose)輸出,設(shè)置診斷方式為故障字典、引導(dǎo)探筆方式,并自動(dòng)啟動(dòng)引導(dǎo)探筆,輸出文件為DSP
4) 探筆調(diào)試。Go/No Go通過后,打開探筆文件,用Debug項(xiàng)對各個(gè)節(jié)點(diǎn)進(jìn)行探測和好板學(xué)習(xí)。
5) 插入故障驗(yàn)證。在確保不損害被測板的前提下,插入了20個(gè)固定到0和固定到1的故障,(包括DSP處理器部分地址線、數(shù)據(jù)線、讀寫控制信號等)對子陣運(yùn)算板TPS進(jìn)行驗(yàn)證。當(dāng)發(fā)現(xiàn)故障時(shí),節(jié)點(diǎn)變紅并顯示出失敗信息,然后會(huì)自動(dòng)啟動(dòng)引導(dǎo)探筆。若故障字典可以直接定位故障,提示故障已經(jīng)定位的信息,并可選擇是否繼續(xù)運(yùn)行引導(dǎo)探筆;若不能直接定位,程序會(huì)自動(dòng)運(yùn)行引導(dǎo)探筆診斷。引導(dǎo)探筆會(huì)沿著出現(xiàn)故障的鏈路逐級探測,直到定位到故障網(wǎng)絡(luò)。驗(yàn)證結(jié)果,所插入20個(gè)固定到0和1的故障都可監(jiān)測,并且隔離到故障管腳,滿足測試要求。
4結(jié) 語
實(shí)踐證明,利用ModelSource硬件建模系統(tǒng)可有效地解決高集成度數(shù)字電路器件的建模問題。此方法與仿真測試軟件LASAR的結(jié)合,為復(fù)雜數(shù)字系統(tǒng)的故障診斷和測試程序的開發(fā)提供了一條高效可靠的途徑。
參考文獻(xiàn):
[1] Logic Model Development Manual. [DB/OL] http://www.synopsys.com
[2] Shell Software Reference Manual. [DB/OL] http://www.synopsys.com
[3] 數(shù)字仿真軟件(LASAR)課程 海軍電子設(shè)備測試維修中心
[4] TMS