測試儀器基于來自測試中系統(tǒng)的信息的定制操作的制作方法
【專利摘要】定制測試儀器。可以提供多對(duì)代碼模塊。每對(duì)代碼模塊可以包括第一代碼模塊和第二代碼模塊,第一代碼模塊具有用于由測試儀器的處理器執(zhí)行的程序指令,第二代碼模塊用于在測試儀器的可編程硬件元件上實(shí)現(xiàn)。對(duì)于每對(duì)代碼模塊,第一代碼模塊和第二代碼模塊可以共同地實(shí)現(xiàn)測試儀器中的功能??梢越邮罩付ㄋ龆鄬?duì)代碼模塊的至少一對(duì)中的第二代碼模塊的修改的用戶輸入。相應(yīng)地,可以基于經(jīng)修改的第二代碼模塊來生成用于測試儀器的可編程硬件元件的硬件描述。
【專利說明】測試儀器基于來自測試中系統(tǒng)的信息的定制操作
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及測試儀器,更具體地涉及一種用于定制測試儀器的軟件和可編程硬件 的系統(tǒng)和方法。
【背景技術(shù)】
[0002] 測試儀器一般地被用于對(duì)測試中的設(shè)備(DUT)或測試中的系統(tǒng)(SUT)執(zhí)行測試。 測試儀器一般地包括用于連接到SUT的一個(gè)或多個(gè)輸入和輸出。這些輸入和輸出可以是模 擬的、數(shù)字的、射頻的等等,例如處于各種電壓水平和頻率。測試儀器一般地能夠執(zhí)行一個(gè) 或多個(gè)測試或特征。例如,測試儀器可以被配置為捕獲波形、計(jì)算所測量的功率、以經(jīng)編程 的頻率生成音調(diào)等。測試儀器通常也被校準(zhǔn),以在其I/O上達(dá)到指定的精確度水平。例如, 當(dāng)請(qǐng)求設(shè)備以IV的峰值-峰值生成正弦波時(shí),該設(shè)備可以以+/-IOmV的精確度來這樣做。 最后,測試儀器通常包括用戶界面,以指定測試儀器應(yīng)當(dāng)如何運(yùn)轉(zhuǎn)。
[0003] 當(dāng)前,可以以多種多樣的方式來使用或配置測試儀器。例如,用戶可以購買具有固 定的軟件和固件(例如,實(shí)現(xiàn)在可編程硬件元件上)的測試儀器。該軟件和固件可與測試 儀器的底層物理硬件(諸如模擬-數(shù)字轉(zhuǎn)換器(ADC)、數(shù)字-模擬轉(zhuǎn)換器(DAC)等)交互。 該模型在圖1中示出。
[0004] 作為另一個(gè)例子,一些測試儀器可以被配置成以完全自定義的方式被編程,其中 用戶可以提供自定義代碼用于測試儀器的可編程硬件元件以及用于處理器。該自定義代碼 可與和前一個(gè)例子中類似的底層物理硬件交互。該模型在圖2中示出。
[0005] 在第一種情況下,用戶不能定制測試儀器的任何功能性。而且,用戶可能被迫購買 從未使用的特征,例如購買具有很大的特征集合的測試儀器以便使用它們中的僅僅一些。 相應(yīng)地,這些用戶被迫將他們的測試適應(yīng)于所提供的固定功能性,并且可能不需要測試儀 器所提供的其他特征。在第二種情況下,用戶被迫完全地指定測試儀器的功能性,這可能需 要大量的編碼和測試儀表知識(shí)。另外,提供所有該編碼的要求可能是成本效率極低的。
[0006] 因此,測試儀器的這兩個(gè)例子導(dǎo)致很差的用戶體驗(yàn)。因此,期望有測試儀器的改 進(jìn),特別是在定制方面。
【發(fā)明內(nèi)容】
[0007] 下面介紹一種用于定制測試儀器的軟件和硬件的系統(tǒng)和方法的各種實(shí)施例。
[0008] 可以提供多對(duì)代碼模塊,例如提供在用于配置或編程測試儀器的開發(fā)環(huán)境內(nèi)。每 對(duì)代碼模塊可以包括處理器側(cè)代碼模塊和可編程硬件元件(PHE)側(cè)代碼模塊,處理器側(cè)代 碼模塊具有由測試儀器的處理器執(zhí)行的程序指令,PHE側(cè)代碼模塊用于在測試儀器的可編 程硬件元件上實(shí)現(xiàn)。在一個(gè)實(shí)施例中,在每對(duì)中,處理器側(cè)代碼模塊和PHE側(cè)代碼模塊可共 同地實(shí)現(xiàn)測試儀器中的功能。例如,處理器側(cè)代碼模塊可以由處理器執(zhí)行以執(zhí)行功能的第 一部分,并且PHE側(cè)代碼模塊可被配置為實(shí)現(xiàn)在可編程硬件元件上以執(zhí)行功能的對(duì)應(yīng)的第 二部分。
[0009] 代碼對(duì)可以提供各種特征,例如通常與測試儀器相關(guān)聯(lián)的那些,除了其他可能性 夕卜,包括與硬件配置、數(shù)字信號(hào)處理、獲取、生成或同步相關(guān)聯(lián)的功能性。另外,可編程硬 件元件可以與測試儀器的底層硬件交互,所述底層硬件諸如模擬-數(shù)字轉(zhuǎn)換器(ADC)、數(shù) 字-模擬轉(zhuǎn)換器(DAC)、數(shù)字輸入和輸出、中心頻率(例如時(shí)鐘硬件和/或本地振蕩器)、功 率水平(例如模擬增益和/或衰減硬件),除了其他可能性外。
[0010] 在一個(gè)實(shí)施例中,代碼模塊可以提供在圖形化編程開發(fā)環(huán)境內(nèi)。例如,代碼模塊可 以包括在具有通過連線連接的多個(gè)節(jié)點(diǎn)的一個(gè)或多個(gè)圖形化程序中?;ミB的節(jié)點(diǎn)可以形象 化地表示所述一個(gè)或多個(gè)圖形化程序部分的功能性。
[0011] 可以接收用戶輸入,其指定對(duì)一個(gè)或多個(gè)代碼模塊對(duì)中的代碼的修改。例如,用戶 輸入可以修改一個(gè)或多個(gè)代碼模塊對(duì)中的處理器側(cè)代碼模塊和/或PHE側(cè)代碼模塊。在一 些實(shí)施例中,PHE側(cè)代碼模塊的一部分可以是固定的,即它們不可以由用戶例如在定制期間 改變。當(dāng)代碼模塊包括圖形化程序代碼時(shí),用戶輸入可以指定圖形化程序代碼的定制,例如 用戶可以修改節(jié)點(diǎn)和/或節(jié)點(diǎn)之間的連接以定制測試儀器的運(yùn)轉(zhuǎn)。而且,可以提供應(yīng)用編 程接口(API)用于與所述多對(duì)代碼模塊交互。在一些實(shí)施例中,該API可以在所述接收用 戶輸入之后保持不變并且可以使用。
[0012] 代碼模塊的定制或修改可以包括多種多樣的動(dòng)作。例如,用戶可以去除一個(gè)或多 個(gè)代碼模塊的部分或全部。另外地或另選地,按照期望,用戶可以添加另外的功能性到一個(gè) 或多個(gè)代碼模塊。用戶還可以添加代碼模塊外部的功能性(例如被耦合到代碼模塊的)。 在一個(gè)特定的實(shí)施例中,定制可以指定測試儀器的自適應(yīng)運(yùn)轉(zhuǎn),例如使得其可以響應(yīng)于來 自測試系統(tǒng)的信號(hào)(例如基于所接收信號(hào)的特性、所接收信號(hào)的內(nèi)容等)來動(dòng)態(tài)地調(diào)整測 試儀器的操作。
[0013] 最后,測試儀器可以用代碼模塊配置。該配置可以包括基于第二代碼模塊(例如 包括由用戶輸入指定的任何修改)來生成用于測試儀器的可編程硬件元件的硬件描述。類 似地,該配置可以包括將第一代碼模塊存儲(chǔ)在測試儀器的一個(gè)或多個(gè)存儲(chǔ)器介質(zhì)上,例如 用于由測試儀器的處理器執(zhí)行,包括由用戶輸入指定的任何修改。
【專利附圖】
【附圖說明】
[0014] 當(dāng)結(jié)合以下附圖來考慮以下對(duì)優(yōu)選實(shí)施例的詳細(xì)描述時(shí),可以獲得對(duì)本發(fā)明更好 的理解,在附圖中:
[0015] 圖1和2示出現(xiàn)有技術(shù)的測試儀器配置模型的框圖;
[0016] 圖3A-3C示出用于實(shí)現(xiàn)各種實(shí)施例的示例性系統(tǒng);
[0017] 圖4示出根據(jù)一個(gè)實(shí)施例的用于測試儀器的示例性配置模型的框圖;
[0018] 圖5是根據(jù)一個(gè)實(shí)施例的包括多個(gè)代碼模塊對(duì)的示例性配置模塊的框圖;
[0019] 圖6是示出用于定制測試儀器的方法的一個(gè)實(shí)施例的流程圖;
[0020] 圖7是示出用于基于來自SUT的信息來修改測試儀器操作的方法的一個(gè)實(shí)施例的 流程圖;
[0021] 圖8-14是根據(jù)各種實(shí)施例的測試儀器的修改的示例性配置;和
[0022] 圖15A-18H示出根據(jù)各種實(shí)施例的圖形化程序用于執(zhí)行對(duì)測試儀器的修改的使 用。
[0023] 雖然本發(fā)明容許各種修改和另選形式,其具體實(shí)施例通過附圖中的例子被示出并 在此詳細(xì)描述。然而應(yīng)當(dāng)理解,這些附圖和對(duì)其的詳細(xì)描述并不旨在將本發(fā)明限制為所公 開的特定形式,而是與此相反,本發(fā)明要覆蓋落入權(quán)利要求所限定的本發(fā)明的精神和范圍 內(nèi)的所有修改、等同和另選形式。
【具體實(shí)施方式】
[0024] 通討引用的并入:
[0025] 下面的參考文獻(xiàn)通過引用全部并入于此,如同在此完整并完全地闡述:
[0026] 1990年4月3日授權(quán)的美國專利號(hào)4, 914, 568,標(biāo)題為"Graphical System for Modeling a Process and Associated Method,'。
[0027] 美國專利號(hào) 5, 481,741,標(biāo)題為 "Method and Apparatus for Providing Attribute Nodes in a Graphical Data Flow Environment,'。
[0028] 1997年8月18日提交的美國專利號(hào)6, 173, 438,標(biāo)題為"Embedded Graphical Programming System,'。
[0029] 1997年8月18日提交的美國專利號(hào)6, 219, 628,標(biāo)題為"System and Method for Configuring an Instrument to Perform Measurement Functions Utilizing Conversion of Graphical Programs into Hardware Implementations,'。
[0030] 2000年12月20日提交的美國專利號(hào)7, 210, 117,標(biāo)題為"System and Method for Programmatically Generating a Graphical Program in Response to Program Information,'。
[0031] 術(shù)語
[0032] 以下是對(duì)本申請(qǐng)中使用的術(shù)語匯編:
[0033] 存儲(chǔ)器介質(zhì)--各種類型的存儲(chǔ)器設(shè)備或存儲(chǔ)設(shè)備的任何類型。術(shù)語"存儲(chǔ)器介 質(zhì)"旨在包括安裝介質(zhì),例如CD-ROM、軟盤104或磁帶設(shè)備;計(jì)算機(jī)系統(tǒng)存儲(chǔ)器或隨機(jī)存取 存儲(chǔ)器,諸如DRAM、DDR RAM、SRAM、EDO RAM、Rambus RAM等;諸如閃存、磁介質(zhì)的非易失性 存儲(chǔ)器,例如硬驅(qū)動(dòng)器或光學(xué)存儲(chǔ);寄存器或其它類似類型的存儲(chǔ)器元件等。存儲(chǔ)器介質(zhì)也 可以包括其它類型的存儲(chǔ)器或其組合。另外,存儲(chǔ)器介質(zhì)可以位于程序被執(zhí)行的第一計(jì)算 機(jī)中,或者可以位于通過網(wǎng)絡(luò)(諸如因特網(wǎng))連接到第一計(jì)算機(jī)的不同的第二計(jì)算機(jī)。在 后一種情況下,第二計(jì)算機(jī)可以向第一計(jì)算機(jī)提供程序指令用于執(zhí)行。術(shù)語"存儲(chǔ)器介質(zhì)" 可以包括兩個(gè)或多個(gè)存儲(chǔ)器介質(zhì)其可存在于不同的位置,例如,在通過網(wǎng)絡(luò)連接的不同計(jì) 算機(jī),這些計(jì)算機(jī)。
[0034] 載體介質(zhì)--上文所描述的存儲(chǔ)器介質(zhì)以及諸如總線、網(wǎng)絡(luò)的物理傳輸介質(zhì)和/ 或傳從信號(hào)(諸如電、電磁或數(shù)字信號(hào))的其他物理傳輸介質(zhì)。
[0035] 可編程硬件元件--包括各種硬件設(shè)備,這些硬件設(shè)備包括經(jīng)由可編程互連件而 連接的多個(gè)可編程功能框(block)。實(shí)例包括FPGA(現(xiàn)場可編程門陣列)、PLD(可編程邏 輯器件)、FPOA(現(xiàn)場可編程對(duì)象陣列)以及CPLD(復(fù)雜PLD)??删幊坦δ芸虻姆秶梢?從細(xì)粒度(組合邏輯或查找表)到粗粒度(算術(shù)邏輯單元或處理器核心)??删幊逃布?件還可被稱為"可重構(gòu)邏輯"。
[0036] 軟件程序--術(shù)語"軟件程序"旨在具有其普通含義的全部范圍,并包括任何類型 的程序指令、代碼、腳本和/或數(shù)據(jù)或者它們的組合,這些可以存儲(chǔ)在存儲(chǔ)器介質(zhì)中并由處 理器執(zhí)行。示例性的軟件程序包括:以基于文本的編程語言(諸如C、C++、PASCAL、FORTRAN、 COBOL、JAVA、匯編語言等)編寫的程序;圖形化程序(用圖形化編程語言所編寫的程序); 匯編語言程序;已被編譯成機(jī)器語言的程序;腳本;和其它類型的可執(zhí)行軟件。軟件程序可 包括兩個(gè)或更多個(gè)以某種形式互操作的軟件程序。要注意,此處所描述的各種實(shí)施例可由 計(jì)算機(jī)或軟件程序?qū)崿F(xiàn)。軟件程序可以作為程序指令存儲(chǔ)在存儲(chǔ)器介質(zhì)上。
[0037] 硬件配置程序--可用于編程或配置可編程硬件元件的程序,例如網(wǎng)表 (netlist)或比特文件。
[0038] 程序一術(shù)語"程序"旨在具有其普通含義的全部范圍。術(shù)語"程序"包括:1)軟 件程序,其可存儲(chǔ)在存儲(chǔ)器中并可由處理器運(yùn)行,或2)硬件配置程序,可用于配置可編程 硬件兀件。
[0039] 圖形化程序--一種包括多個(gè)互連的節(jié)點(diǎn)或圖標(biāo)的程序,其中所述多個(gè)互連的節(jié) 點(diǎn)或圖標(biāo)形象化地指示程序的功能性?;ミB的節(jié)點(diǎn)或圖標(biāo)是用于程序的圖形化源代碼。圖 形化功能節(jié)點(diǎn)也可以被稱為框。
[0040] 以下提供圖形化程序的各種方面的實(shí)例。下列實(shí)例以及討論并不旨在限制圖形化 程序的上述定義,而是提供術(shù)語"圖形化程序"包括什么的例子:
[0041] 圖形化程序中的節(jié)點(diǎn)可以以數(shù)據(jù)流、控制流和/或執(zhí)行流格式中的一個(gè)或多個(gè)連 接。節(jié)點(diǎn)被可以以"信號(hào)流"格式連接,信號(hào)流是數(shù)據(jù)流的一個(gè)子集。
[0042] 可用于創(chuàng)建圖形化程序的示例性圖形化程序開發(fā)環(huán)境包括來自National Instruments 的 LabVIEW?、DasyLab?、DiaDem? 和 Matrixx/SystemBuild?,來 自 MathWorks 的 Si.mulink?,來自 Agilent 的 VEE?,來自 Coreco 的 WiT?,來自 PPT Vision 的 Vision Program Manager?,來自 Measurement Computing 的 SoftWIRE?,來自 Northwoods Software 的 Sanscript?,來自 Khoral Research 的 Khoros?,來自 HEM Data 的 SnapMaster?,來自 Visual Solutions 的 VisSim?, SES (Scientific and Engineering Software)的 ObjectBench?,和來自 Advantech 的 VisiDAQ?,除了其他之外。
[0043] 術(shù)語"圖形化程序"包括在圖形化建模環(huán)境中創(chuàng)建的模型或框圖,其中所述模型或 框圖包括形象化地指示模型或框圖的操作的互連的框(即節(jié)點(diǎn))或圖標(biāo);示例性的圖形化 建模環(huán)境包括 Simillillk?、SystemBuild?、VisSim?、Hypersignal Block? 等。
[0044] 圖形化程序可以在計(jì)算機(jī)系統(tǒng)的存儲(chǔ)器中表示為數(shù)據(jù)結(jié)構(gòu)和/或程序指令。圖形 化程序--例如這些數(shù)據(jù)結(jié)構(gòu)和/或程序指令--可以被編譯或解釋以產(chǎn)生機(jī)器語言,所 述機(jī)器語言實(shí)現(xiàn)如在圖形化程序中示出的所期望的方法或處理。
[0045] 到圖形化程序的輸入數(shù)據(jù)可以接收自各種源中的任何源,諸如來自設(shè)備、測試中 的單元、被測量或控制的處理、另一計(jì)算機(jī)程序、數(shù)據(jù)庫,或者來自文件。同樣,用戶可以使 用圖形化用戶界面(例如前面板)來輸入數(shù)據(jù)到圖形化程序或虛擬儀器。
[0046] 圖形化程序可以可選地具有與所述圖形化程序相關(guān)聯(lián)的GUI。在這種情況下,多個(gè) 互連的框或節(jié)點(diǎn)通常稱為圖形化程序的框圖部分。
[0047] 節(jié)點(diǎn)--在圖形化程序的上下文中,指可以包括在圖形化程序中的元件。圖形化 程序中的圖形化程序節(jié)點(diǎn)(或簡稱為節(jié)點(diǎn))也可以稱為框。節(jié)點(diǎn)可以具有相關(guān)聯(lián)的圖標(biāo), 其表示該圖形化程序中的該節(jié)點(diǎn),以及實(shí)現(xiàn)該節(jié)點(diǎn)的功能性的底層代碼和/或數(shù)據(jù)。示例 性節(jié)點(diǎn)(或框)包括功能節(jié)點(diǎn)、子程序節(jié)點(diǎn)、終端節(jié)點(diǎn)、結(jié)構(gòu)節(jié)點(diǎn)等。節(jié)點(diǎn)可以通過連接圖 標(biāo)或連線而在圖形化程序中連接在一起。
[0048] 數(shù)據(jù)流程序--一種軟件程序,其中程序體系結(jié)構(gòu)是指定數(shù)據(jù)通過程序的流的有 向圖的程序體系結(jié)構(gòu),因此功能每當(dāng)必要的輸入數(shù)據(jù)可用時(shí)執(zhí)行。數(shù)據(jù)流程序可以與過程 程序形成對(duì)照,過程程序指定要執(zhí)行的計(jì)算的執(zhí)行流。此處所使用的"數(shù)據(jù)流"或"數(shù)據(jù)流 程序"是指"動(dòng)態(tài)調(diào)度的數(shù)據(jù)流"和/或"靜態(tài)定義的數(shù)據(jù)流"。
[0049] 圖形化數(shù)據(jù)流程序(或圖形化數(shù)據(jù)流圖)--也是數(shù)據(jù)流程序的圖形化程序。圖 形化數(shù)據(jù)流程序包括多個(gè)互連的節(jié)點(diǎn)(框),其中節(jié)點(diǎn)之間的連接的至少一個(gè)子集形象化 地指示一個(gè)節(jié)點(diǎn)所產(chǎn)生的數(shù)據(jù)由另一個(gè)節(jié)點(diǎn)使用。LabVIEW VI是圖形化數(shù)據(jù)流程序的一個(gè) 實(shí)例。Simulink框圖是圖形化數(shù)據(jù)流程序的另一個(gè)實(shí)例。
[0050] 圖形化用戶界面--該術(shù)語旨在具有其普通含義的全部范圍。術(shù)語"圖形化用戶 界面"通??s寫為"⑶I "。⑶I可包括只一個(gè)或多個(gè)輸入⑶I元件,只一個(gè)或多個(gè)輸出⑶I 元件,或輸入和輸出GUI元件兩者。
[0051] 下面提供⑶I的各種方面的實(shí)例。下列實(shí)例以及討論并不旨在限制⑶I的普通含 義,而是提供術(shù)語"圖形化用戶界面"包括什么的示例:
[0052] ⑶I可包括具有一個(gè)或多個(gè)⑶I元件的單個(gè)窗口,或者可包括多個(gè)單獨(dú)的⑶I元件 (或單獨(dú)的窗口,每個(gè)窗口具有一個(gè)或多個(gè)GUI元件),其中所述單獨(dú)的GUI元件或窗口可 以可選地平鋪在一起。
[0053] Gn可以與圖形化程序相關(guān)聯(lián)。在該實(shí)例中,可以使用各種機(jī)制來連接GUI中的 GUI元件與圖形化程序中的節(jié)點(diǎn)。例如,當(dāng)在GUI中創(chuàng)建了輸入控件和輸出指示器時(shí),對(duì)應(yīng) 的節(jié)點(diǎn)(例如終端)可以自動(dòng)地創(chuàng)建在圖形化程序或框圖中。另選地,用戶可以將終端節(jié) 點(diǎn)放置在框圖中,其可導(dǎo)致在Gn中顯示對(duì)應(yīng)的CTI元件前面板對(duì)象,或者在編輯時(shí)或者稍 后在運(yùn)行時(shí)。作為另一個(gè)例子,Gn可以包括嵌入在圖形化程序的框圖部分中的⑶I元件。
[0054] 前面板--一種圖形化用戶界面,其包括輸入控件和輸出指示器,并且其使得用 戶能夠交互式地控制或操縱提供給程序的輸入并在該程序執(zhí)行時(shí)查看該程序的輸出。
[0055] 前面板是一種類型的GUI。前面板可與上述圖形化程序相關(guān)聯(lián)。
[0056] 在儀表應(yīng)用中,前面板可類比為儀器的前面板。在工業(yè)自動(dòng)化應(yīng)用中,前面板可類 比為設(shè)備的MMI (人機(jī)界面)。用戶可調(diào)整前面板上的控件以影響輸入和查看相應(yīng)指示器上 的輸出。
[0057] 圖形化用戶界面元件--圖形化用戶界面的元件,諸如用于提供輸入或顯示輸 出。示例性的圖形化用戶界面元件包括輸入控件和輸出指示器。
[0058] 輸入控件--用于將用戶輸入提供給程序的圖形化用戶界面元件。輸入控件顯示 用戶輸入的值,并且能夠根據(jù)用戶的判斷來操縱。示例性的輸入控件包括撥號(hào)盤、旋鈕、滑 塊、輸入文本框等。
[0059] 輸出指示器--用于顯示來自程序的輸出的圖形化用戶界面元件。示例性的輸 出指示器包括圖表、圖、量具、輸出文本框、數(shù)字顯示器等。輸出指示器有時(shí)被稱作"輸出控 件"。
[0060] 計(jì)算機(jī)系統(tǒng)一各種類型的計(jì)算或處理系統(tǒng)中的任何類型,這些計(jì)算或處理系統(tǒng) 包括個(gè)人計(jì)算機(jī)系統(tǒng)(PC)、大型計(jì)算機(jī)系統(tǒng)、工作站、網(wǎng)絡(luò)家電(network appliance)、因特 網(wǎng)家電(Internet appliance)、個(gè)人數(shù)字助理(PDA)、電視系統(tǒng)、網(wǎng)格計(jì)算系統(tǒng)或者其他設(shè) 備或設(shè)備的組合。一般來說,術(shù)語"計(jì)算機(jī)系統(tǒng)"可以廣義地定義為包括具有至少一個(gè)執(zhí)行 來自存儲(chǔ)器介質(zhì)的指令的處理器的任何設(shè)備(或設(shè)備組合)。
[0061] 測量設(shè)備--包括儀器、數(shù)據(jù)獲取設(shè)備、智能傳感器、以及任何的各種類型的被配 置為獲取和/或存儲(chǔ)數(shù)據(jù)的設(shè)備。測量設(shè)備也可以可選地被進(jìn)一步配置為分析或處理所獲 取的或所存儲(chǔ)的數(shù)據(jù)。測量設(shè)備的例子包括儀器,諸如傳統(tǒng)的獨(dú)立"盒式"儀器、基于計(jì)算 機(jī)的儀器(卡式儀器)或外部儀器、數(shù)據(jù)獲取卡、計(jì)算機(jī)外部的類似于數(shù)據(jù)獲取卡操作的設(shè) 備、智能傳感器、機(jī)架中的一個(gè)或多個(gè)DAQ或測量卡或模塊、圖像獲取設(shè)備(諸如圖像獲取 (或機(jī)器視覺)卡(又名視頻捕獲板)或智能相機(jī))、運(yùn)動(dòng)控制設(shè)備、具有機(jī)器視覺的機(jī)器 人、以及其他類似類型的設(shè)備。示例性的"獨(dú)立"儀器包括示波器、萬用表信號(hào)分析儀、任意 波形發(fā)生器、分光鏡、以及類似的測量、測試或自動(dòng)化儀器。
[0062] 測量設(shè)備可以進(jìn)一步被配置為執(zhí)行控制功能,例如響應(yīng)于對(duì)所獲取的或所存儲(chǔ)的 數(shù)據(jù)的分析。例如,測量設(shè)備可以響應(yīng)于特定數(shù)據(jù)而發(fā)送控制信號(hào)到外部系統(tǒng)(諸如運(yùn)動(dòng) 控制系統(tǒng))或到傳感器。測量設(shè)備還可被配置以執(zhí)行自動(dòng)化功能,即可以接收和分析數(shù)據(jù), 并且發(fā)出自動(dòng)化控制信號(hào)作為響應(yīng)。
[0063]自動(dòng)--指的是動(dòng)作或操作由計(jì)算機(jī)系統(tǒng)(例如由計(jì)算機(jī)系統(tǒng)執(zhí)行的軟件)或設(shè) 備(例如電路系統(tǒng)、可編程硬件元件、ASIC等)執(zhí)行,而不需要直接指定或執(zhí)行該動(dòng)作或操 作的用戶輸入。因此術(shù)語"自動(dòng)"與由用戶手動(dòng)執(zhí)行或指定的操作(其中用戶提供直接執(zhí)行 該操作的輸入)形成對(duì)照。自動(dòng)的過程可以由用戶所提供的輸入啟動(dòng),但隨后"自動(dòng)"執(zhí)行 的動(dòng)作不由用戶指定,即不是"手動(dòng)"執(zhí)行("手動(dòng)"執(zhí)行中用戶指定每個(gè)要執(zhí)行的操作)。 例如,用戶通過選擇每個(gè)字段并提供指定信息的輸入(例如通過鍵入信息、選擇復(fù)選框、單 選等)來填寫電子表格是手動(dòng)填寫所述電子表格,即使計(jì)算機(jī)系統(tǒng)必須響應(yīng)于用戶動(dòng)作來 更新所述表格。所述表格可以由計(jì)算機(jī)系統(tǒng)自動(dòng)填寫,其中計(jì)算機(jī)系統(tǒng)(例如在計(jì)算機(jī)系 統(tǒng)上執(zhí)行的軟件)分析表格的字段并填寫表格而不需要指定字段的答案的任何用戶輸入。 如上面所指示的,用戶可以調(diào)用表格的自動(dòng)填寫,但并不參與表格的實(shí)際填寫(例如用戶 不手動(dòng)指定字段的答案,相反字段的答案自動(dòng)完成)。本說明書提供響應(yīng)于用戶已經(jīng)采取的 動(dòng)作而自動(dòng)被執(zhí)行的操作的各種例子。
[0064] 圖3A-3C--示例件系統(tǒng)
[0065] 圖3A-3C示出可以實(shí)現(xiàn)此處所描述的實(shí)施例的示例性系統(tǒng)。如圖3A所示,示例性 的測試儀器50(也被稱為"儀表設(shè)備"或"測試設(shè)備")耦接到測試中的系統(tǒng)(SUT)75。如 此處所使用的,SUT涵蓋術(shù)語"測試中的設(shè)備"或"DUT"。在圖3A的實(shí)施例中,測試儀器50 實(shí)現(xiàn)為被配置或操作以測試SUT 75的機(jī)架。
[0066] 測試儀器75可以包括用于連接到SUT 75的一個(gè)或多個(gè)輸入和輸出。這些輸入和 輸出可以是模擬的、數(shù)字的、射頻的等等,例如處于各種電壓水平和頻率。測試儀器75可以 被配置為執(zhí)行一個(gè)或多個(gè)測試或者可以實(shí)現(xiàn)用于執(zhí)行SUT 75的測試的各種特征。例如,可 以將測試儀器50配置為捕獲波形、計(jì)算所測量的功率、以經(jīng)編程的頻率生成音調(diào)等。可將 測試儀器50校準(zhǔn),以在其輸入/輸出(I/O)上達(dá)到指定的精確度水平。例如,測試儀器50 可以被配置為在+/-IOmV的精確度內(nèi)來生成峰值-峰值為IV的正弦波。測試儀器50可以 以此處所描述的方式被配置和/或可以以此處所描述的方式操作。
[0067] SUT 75可以是期望被測試的任何的各種設(shè)備或系統(tǒng),諸如各種射頻(RF)設(shè)備、半 導(dǎo)體集成電路、消費(fèi)電子產(chǎn)品、無線通信設(shè)備(諸如蜂窩電話)、計(jì)算機(jī)、汽車電子、能量設(shè) 備、測量設(shè)備等。在一個(gè)實(shí)施例中,測試儀器50可以被配置為執(zhí)行SUT 75的各種測試,例 如在從SUT 75獲取的信號(hào)上。在一個(gè)實(shí)施例中,機(jī)架可以獲取SUT 75的測量,諸如電流、 電壓等(例如使用模擬傳感器),和/或數(shù)字信號(hào)(使用數(shù)字I/O)。
[0068] 圖3B示出測試儀器50的一個(gè)實(shí)施例的示例性框圖。如圖所示,測試儀器50可以 包括主機(jī)設(shè)備100 (例如主機(jī)控制器板),其可以包括中央處理器(CPU) 105、存儲(chǔ)器110和 芯片集115??纱嬖谟谥鳈C(jī)設(shè)備100上的其它功能由雜項(xiàng)功能框120表示。在一些實(shí)施例 中,主機(jī)設(shè)備100可以包括處理器和存儲(chǔ)器(如圖所示)和/或可以包括可編程硬件元件 (例如現(xiàn)場可編程門陣列(FPGA))。另外,卡或設(shè)備(例如設(shè)備125和/或150)中的一個(gè) 或多個(gè)也可以包括可編程硬件元件。在進(jìn)一步的實(shí)施例中,測試儀器50的背板可以包括可 編程硬件元件。在包括可編程硬件元件的實(shí)施例中,可編程硬件元件可以根據(jù)在上面通過 引用并入的各種專利中所描述的圖形化程序被配置。
[0069] 如圖所示,主機(jī)設(shè)備100 (例如主機(jī)設(shè)備100的芯片集115)可以通過總線175提 供到第一外圍設(shè)備125和第二外圍設(shè)備150的通信(例如PCIe通信、PXI通信、或其他總 線通信)。第一外圍設(shè)備125和第二外圍設(shè)備150可被配置為基于主機(jī)設(shè)備100所提供的 信息來改變配置,如此處所描述的。
[0070] 設(shè)備可以是任何的各種設(shè)備(例如PCIe設(shè)備),諸如測量設(shè)備(例如DAQ設(shè)備、處 理設(shè)備、I/O設(shè)備、網(wǎng)絡(luò)設(shè)備等。另外,與上文類似,設(shè)備可以包括一個(gè)或多個(gè)可編程硬件元 件或處理器以及存儲(chǔ)器以實(shí)現(xiàn)它們各自的功能性。在一些實(shí)施例中,設(shè)備125和150可以 被配置為從SUT 75獲取信號(hào)以執(zhí)行測試。例如,設(shè)備125可以被配置為對(duì)SUT 75的電壓 進(jìn)行測量并執(zhí)行模擬到數(shù)字的轉(zhuǎn)換。類似地,設(shè)備150可被配置為對(duì)SUT 75的電流進(jìn)行測 量并執(zhí)行模擬到數(shù)字的轉(zhuǎn)換。進(jìn)一步的設(shè)備可以包括在機(jī)架50中,諸如用于執(zhí)行GPS測量 的設(shè)備,例如使用GPS電路系統(tǒng)獲取時(shí)間用于同步目的,除了其他可能性外。
[0071] 在一些實(shí)施例中,可以并行測量多個(gè)SUT 75。例如,測試儀器50中的一個(gè)或多個(gè) 設(shè)備可用于執(zhí)行同步的測量,諸如用于RF測試,除了其他可能性外。而且,測試儀器50和 /或包括在其中的設(shè)備可以被配置為通過網(wǎng)絡(luò)(諸如無線網(wǎng)絡(luò)(例如802。11、WiMax等) 來執(zhí)行測量。
[0072] 圖3C示出主機(jī)設(shè)備100為計(jì)算機(jī)系統(tǒng)。如圖2A所示,主機(jī)設(shè)備100可以耦接到 機(jī)架50 (例如包括第一設(shè)備125和第二設(shè)備150),并且可以包括顯不器設(shè)備和一個(gè)或多個(gè) 輸入設(shè)備。類似于以上對(duì)主機(jī)設(shè)備100的描述,該主機(jī)可以包括至少一個(gè)存儲(chǔ)器介質(zhì),根據(jù) 本發(fā)明的一個(gè)實(shí)施例的一個(gè)或多個(gè)計(jì)算機(jī)程序或軟件組件可以存儲(chǔ)在其上。例如,存儲(chǔ)器 介質(zhì)可以存儲(chǔ)一個(gè)或多個(gè)圖形化程序,它們可執(zhí)行以執(zhí)行在此所描述的方法。另外,存儲(chǔ)器 介質(zhì)可以存儲(chǔ)用于創(chuàng)建和/或執(zhí)行這種圖形化程序的圖形化編程開發(fā)環(huán)境應(yīng)用。存儲(chǔ)器介 質(zhì)還可以存儲(chǔ)操作系統(tǒng)軟件以及用于計(jì)算機(jī)系統(tǒng)的操作的其他軟件。各種實(shí)施例進(jìn)一步包 括接收或存儲(chǔ)按照前面的描述實(shí)現(xiàn)在載體介質(zhì)上的指令和/或數(shù)據(jù)。在另選的實(shí)施例中, 機(jī)架50可包括主機(jī)設(shè)備,并且計(jì)算機(jī)系統(tǒng)可以被配置以與機(jī)架50中的主機(jī)設(shè)備進(jìn)行通信。 例如,計(jì)算機(jī)系統(tǒng)可以用于配置機(jī)架50中的主機(jī)設(shè)備和/或也包括在機(jī)架50中的設(shè)備125 和 150。
[0073] 在各種實(shí)施例中,主機(jī)設(shè)備100可以經(jīng)由網(wǎng)絡(luò)(或計(jì)算機(jī)總線)而耦接到第二計(jì) 算機(jī)系統(tǒng)或設(shè)備。按照期望,計(jì)算機(jī)系統(tǒng)中的每一個(gè)可以是各種類型中的任何類型。網(wǎng)絡(luò) 也可以是各種類型中的任何類型,包括LAN(局域網(wǎng))、WAN(廣域網(wǎng))、因特網(wǎng)、或內(nèi)聯(lián)網(wǎng),等 等。類似地,主機(jī)設(shè)備100可以經(jīng)由各種機(jī)制而耦接到測試儀器50。
[0074] 圖4--測試儀器的示例件配置樽型的框圖
[0075] 圖4是示出測試儀器的示例性配置模型的框圖。如圖所示,測試儀器的最低層可 以是物理硬件。在該實(shí)施例中,硬件可包括ADC、DAC、數(shù)字I/O、中心頻率(例如時(shí)鐘硬件和 /或本地振蕩器)、功率水平(例如模擬增益和/或衰減硬件)等。在一個(gè)實(shí)施例中,這是 用戶可以訪問(例如在定制期間)的I/O和使該I/O正常起作用所必要的硬件。
[0076] 同樣如圖所示,該層之上是FPGA固件,其可以與物理硬件和驅(qū)動(dòng)程序級(jí)主機(jī)軟件 連接并且可以實(shí)現(xiàn)設(shè)備的硬件特征。驅(qū)動(dòng)程序級(jí)主機(jī)軟件可以在計(jì)算機(jī)(或控制器)上 執(zhí)行,并且可以具有允許用戶訪問設(shè)備的特征的API。在最高層處是應(yīng)用軟件,其可以調(diào)用 (或以其他方式利用)驅(qū)動(dòng)程序級(jí)API。
[0077] 此處所提供的各種實(shí)施例可以特別地應(yīng)用于圖4所示的配置模型。更具體地,用 戶可以能夠定制或配置主機(jī)軟件的配置和代碼以及固件的配置和代碼(實(shí)現(xiàn)在可編程硬 件元件上)兩者。在一個(gè)實(shí)施例中,下面描述的定制可以特別地應(yīng)用于系統(tǒng)的驅(qū)動(dòng)程序級(jí) 軟件和可編程硬件元件固件部分的定制。
[0078] 圖5--具有代碼樽塊對(duì)的配置樽型的框圖
[0079] 圖5示出圖4的更具體的配置模型。在該實(shí)施例中,圖4的軟件和固件中的主要 組件已經(jīng)分解為五個(gè)代碼模塊對(duì)(處理器側(cè)和PHE側(cè)代碼模塊)。這些代碼對(duì)可以至少實(shí) 現(xiàn)測試儀器中常見的基本功能性。按照期望,軟件代碼模塊可對(duì)應(yīng)于驅(qū)動(dòng)程序級(jí)主機(jī)軟件 和/或高級(jí)應(yīng)用軟件。處理器側(cè)代碼模塊可以由測試儀器的一個(gè)或多個(gè)處理器(例如位于 主機(jī)100、設(shè)備125、設(shè)備150等中)執(zhí)行,并且PHE側(cè)代碼模塊可以由測試儀器的一個(gè)或多 個(gè)PHE (例如位于設(shè)備125、設(shè)備150等中)實(shí)現(xiàn)。
[0080] 如圖所示,代碼模塊對(duì)包括配置、DSP、獲取、生成和同步,盡管還可預(yù)想或多或少 的對(duì)。配置代碼模塊對(duì)可用于將物理硬件編程到給定狀態(tài)(例如功率水平、頻率、數(shù)據(jù)速率 等),和/或校準(zhǔn)測試儀器。DSP代碼模塊對(duì)可用于改變數(shù)據(jù)的采樣速率、過濾數(shù)據(jù)以改善 測試儀器的頻率響應(yīng)、數(shù)字式地改變數(shù)據(jù)的增益、或者其它處理。獲取代碼模塊對(duì)可用于從 輸入獲取數(shù)據(jù)以及用于提供給主機(jī)。生成代碼模塊對(duì)可用于將數(shù)據(jù)從主機(jī)發(fā)送出輸出。按 照期望,同步代碼模塊對(duì)可用于在測試儀器內(nèi)的多個(gè)模塊或卡之間以及/或者在多個(gè)測試 儀器之間對(duì)準(zhǔn)I/O。
[0081] 這些代碼模塊可以以多種方式提供給用戶。例如,代碼模塊可以在配置工具或開 發(fā)環(huán)境內(nèi)提供,配置工具或開發(fā)環(huán)境可用于配置測試儀器。例如,用戶可以在計(jì)算機(jī)系統(tǒng) (例如圖3C的計(jì)算機(jī)系統(tǒng)100)上安裝軟件,并且可以使用軟件來配置測試儀器。在一個(gè)具 體的實(shí)施例中,代碼模塊對(duì)可以安裝在開發(fā)環(huán)境內(nèi)或與開發(fā)環(huán)境一起安裝,開發(fā)環(huán)境例如 圖形化編程開發(fā)環(huán)境(諸如National Instruments所提供的LabVIEW? )。
[0082] 在一個(gè)實(shí)施例中,代碼模塊可包括在具有通過連線連接的多個(gè)節(jié)點(diǎn)的一個(gè)或多個(gè) 圖形化程序中。例如,可以有對(duì)應(yīng)于測試儀器的主機(jī)的軟件的第一圖形化程序和對(duì)應(yīng)于測 試儀器的PHE的第二圖形化程序。另選地,測試儀器的功能性可以在單個(gè)圖形化程序中完 全指定。圖形化程序的互連的節(jié)點(diǎn)可以形象化地表示所述一個(gè)或多個(gè)圖形化程序的功能 性。然而,代碼模塊可以提供在多個(gè)不同的開發(fā)環(huán)境中,而不限于圖形化編程實(shí)施例。
[0083] 在一個(gè)實(shí)施例中,代碼模塊可以提供在開發(fā)環(huán)境內(nèi)的一個(gè)或多個(gè)模板中。例如, 用戶可以能夠打開模板項(xiàng)目,該模板項(xiàng)目包括代碼模塊并且可以準(zhǔn)備好用于配置測試儀器 (例如可以是可操作的而無需修改)。相應(yīng)地,用戶可以能夠簡單地修改已經(jīng)存在的代碼模 塊來配置測試儀器以實(shí)現(xiàn)所期望的運(yùn)轉(zhuǎn)。代碼模塊可以在計(jì)算機(jī)系統(tǒng)的顯示器上表現(xiàn)為單 獨(dú)的模塊化框(例如是互連的)。在一個(gè)實(shí)施例中,用戶可以能夠展開每個(gè)框來修改其功能 性(例如其中其可由節(jié)點(diǎn)表示,諸如sub-VI,節(jié)點(diǎn)展開為圖形化編程實(shí)施例中的圖形化程 序)。另選地或另外地,代碼模塊可以簡單地包括在程序中,其中各部分對(duì)應(yīng)于每個(gè)模塊化 框。例如,模板可以包括用于主機(jī)的第一組代碼和用于可編程硬件元件的第二組代碼。這 些組代碼的每一組可以具有與每個(gè)模塊化框相對(duì)應(yīng)的部分(例如其中每一部分被標(biāo)記,諸 如通過顏色,其指示該部分或單獨(dú)的節(jié)點(diǎn)對(duì)應(yīng)于哪個(gè)模塊化框)。
[0084] 在一些實(shí)施例中,代碼模塊(和/或代碼模塊對(duì))可以提供在調(diào)色板(palette) 或庫內(nèi)。例如,用戶可以選擇他想在程序中包括哪些代碼模塊(或代碼模塊對(duì))。用戶可以 通過選擇所期望的代碼模塊并手動(dòng)將它們包括在所期望的程序中(例如通過將它們拖放 到圖形化程序中,可能是從調(diào)色板,這遵從圖形化編程實(shí)施例)來包括這些程序。另選地或 另外地,用戶可以簡單地選擇所期望的代碼模塊,并且它們可以自動(dòng)組裝或集成到新的或 現(xiàn)有的程序中。例如,測試儀器向?qū)Вɡ缫幌盗械蘑荌)可以顯示在顯示器上,在顯示器 上用戶可以選擇測試儀器的所期望的功能性,例如通過選擇所期望的功能性。作為響應(yīng),實(shí) 現(xiàn)所需的功能性的程序或配置可以被自動(dòng)地創(chuàng)建或組裝起來,例如通過自動(dòng)地包括適當(dāng)?shù)?代碼模塊。因此,可以以多種方式指定或提供代碼模塊。
[0085] 如下面所討論的,這些代碼模塊可以由用戶定制。更具體地,用戶可以能夠選擇保 持哪個(gè)代碼模塊、改變哪個(gè)代碼模塊、以及消除哪個(gè)代碼模塊,而不影響其它代碼模塊的功 能性或運(yùn)轉(zhuǎn)。由于代碼模塊可被提供在例如測試儀器的開發(fā)環(huán)境或配置工具中,用戶可以 能夠完全定制測試儀器的功能性,例如無需不得不編寫很多代碼。
[0086] 另外,可以提供應(yīng)用編程接口(API)用于與多對(duì)代碼模塊交互。例如,可以由圖4 的"高級(jí)應(yīng)用軟件"來使用該API與驅(qū)動(dòng)程序級(jí)主機(jī)軟件和PHE固件(例如對(duì)應(yīng)于圖5的 代碼模塊對(duì))交互。在一些實(shí)施例中,該API可以在修改或定制之后保持不變并且可使用。
[0087] 圖6--定制測試儀器
[0088] 圖6示出用于定制測試儀器的方法。除了其它設(shè)備外,圖6所示的方法可以與上 圖所示的任何計(jì)算機(jī)系統(tǒng)或設(shè)備結(jié)合使用。在各種實(shí)施例中,所示出的方法要素中的一些 可以并行執(zhí)行,以不同于所示出的順序執(zhí)行,或者可被省略。按照期望,也可以執(zhí)行另外的 方法要素。如圖所示,該方法可操作如下。
[0089] 在602中,可以提供多對(duì)代碼模塊,例如在用于配置或編程測試儀器的開發(fā)環(huán)境 內(nèi)。如上面所討論的,關(guān)于圖5,這些代碼模塊可以按照多種不同的方式被提供。同樣如所 討論的,每對(duì)代碼模塊可以包括具有用于由測試儀器的處理器執(zhí)行的程序指令的處理器側(cè) 代碼模塊以及用于在測試儀器的可編程硬件元件上實(shí)現(xiàn)的PHE側(cè)代碼模塊。因此,在每對(duì) 中,處理器側(cè)代碼模塊和PHE側(cè)代碼模塊可共同地實(shí)現(xiàn)測試儀器的功能。例如,處理器側(cè)代 碼模塊可以由處理器執(zhí)行以執(zhí)行功能的第一部分,并且PHE側(cè)代碼模塊可配置為實(shí)現(xiàn)在可 編程硬件元件上以執(zhí)行該功能的對(duì)應(yīng)的第二部分。
[0090] 如上面所討論的,代碼對(duì)可提供與硬件配置、數(shù)字信號(hào)處理、獲取、生成或同步相 關(guān)聯(lián)的功能性,除了其他可能性外。另外,可編程硬件元件可以與測試儀器的底層硬件交 互,所述底層硬件諸如ADC、DAC、數(shù)字I/O、中心頻率(例如時(shí)鐘硬件和/或本地振蕩器)、 功率水平(例如模擬增益和/或衰減硬件)等。
[0091] 602中的多對(duì)代碼模塊可以指所包括的用于指定測試儀器的功能性的那些。因此, 可以有比602的多個(gè)代碼模塊對(duì)更多的未包括用于配置測試儀器的代碼模塊對(duì)。在一個(gè)實(shí) 施例中,用戶可以已經(jīng)從較大的代碼模塊對(duì)集合中選擇了所述多個(gè)代碼模塊對(duì)。因此,602 中的代碼模塊對(duì)可以是可用代碼模塊總數(shù)的子集,例如可以用于配置特定的測試儀器。
[0092] 在604中,可以接收指定對(duì)一個(gè)或多個(gè)代碼模塊對(duì)的代碼的修改的用戶輸入。例 如,用戶輸入可以修改在602中提供的并且/或者包括在測試儀器的當(dāng)前配置中的一個(gè)或 多個(gè)代碼模塊對(duì)中的處理器側(cè)代碼模塊和/或PHE側(cè)代碼模塊。
[0093] 代碼模塊的定制或修改可以包括多種多樣的動(dòng)作。例如,用戶可以去除代碼模塊 的部分或全部的一個(gè)或多個(gè)。另外地或另選地,按照期望,用戶可以添加另外的功能性到一 個(gè)或多個(gè)代碼模塊。甚至進(jìn)一步地,用戶可以添加任何的代碼模塊外部的功能性,例如以提 供與由當(dāng)前所選擇的代碼模塊所提供的功能性不同的功能性。因此,按照期望,用戶可以修 改代碼模塊對(duì)的一個(gè)或多個(gè)的PHE和/或軟件部分,去除代碼模塊對(duì)的一個(gè)或多個(gè)的PHE 和/或軟件部分的一些或全部,和/或添加除了由所述多個(gè)代碼模塊對(duì)提供的現(xiàn)有代碼外 的新的PHE和/或軟件代碼。然而,在一些實(shí)施例中,代碼模塊的一部分(例如PHE側(cè)代碼 模塊)可以是固定的,即它們不可以由用戶改變,例如在定制期間。
[0094] 用戶可以以各種各樣的方式指定修改。例如,在通過圖形化程序代碼指定代碼模 塊時(shí),用戶輸入可以指定圖形化程序代碼的定制,例如用戶可以修改節(jié)點(diǎn)和/或節(jié)點(diǎn)之間 的連接來定制測試儀器的運(yùn)轉(zhuǎn)。另選地,可以在不同的開發(fā)環(huán)境中(例如修改代碼模塊的 文本代碼)、通過測試儀器配置工具(例如使用配置向?qū)Щ蚱渌荌)等來指定用戶輸入。
[0095] 在一個(gè)特定的實(shí)施例中,定制可以指定測試儀器的自適應(yīng)運(yùn)轉(zhuǎn),例如使得其可以 響應(yīng)于來自測試系統(tǒng)的信號(hào)(例如基于所接收信號(hào)的特性、所接收信號(hào)的內(nèi)容等)來動(dòng)態(tài) 地調(diào)整測試儀器的操作。下面參考圖7提供關(guān)于這種自適應(yīng)運(yùn)轉(zhuǎn)的進(jìn)一步細(xì)節(jié)。
[0096] 在606中,可以生成對(duì)應(yīng)于指定的代碼模塊對(duì)的程序指令和硬件描述,包括所述 一個(gè)或多個(gè)經(jīng)修改的代碼模塊對(duì)。例如,處理器側(cè)代碼模塊的軟件可被編譯用于由測試儀 器的處理器執(zhí)行。例如,可以檢測測試儀器的處理器的類型并且可以生成程序指令,以對(duì)應(yīng) 于所檢測到的處理器類型的指令集。在測試儀器內(nèi)的各種不同位置中可以有處理器,例如 在主機(jī)內(nèi),其可以與PHE和底層硬件搭配(collocate)或者不搭配(例如在機(jī)架內(nèi)或與機(jī) 架耦接,如圖3B和3C的實(shí)施例所示)。另外,在測試設(shè)備的單獨(dú)的卡或設(shè)備(例如圖3B的 設(shè)備125和/或150)內(nèi)可以有處理器。因此,軟件可以由位于測試設(shè)備的各種不同區(qū)域中 的處理器中的一個(gè)或多個(gè)執(zhí)行。
[0097] 另外,PHE側(cè)代碼模塊可以轉(zhuǎn)變?yōu)橛布枋黾?jí)(HDL)代碼(諸如Verilog),用于 在測試儀器的PHE上實(shí)現(xiàn)。與以上相似,PHE代碼可以位于各種位置中,例如在測試設(shè)備的 單獨(dú)設(shè)備(例如圖3B的設(shè)備125和/或150)內(nèi),或者在其它位置中,例如機(jī)架50的背板。 在一個(gè)實(shí)施例中,可以生成用于編程PHE的門電路的網(wǎng)表(例如由HDL代碼)。在圖形化編 程的實(shí)施例中,生成HDL代碼或網(wǎng)表可以以美國專利號(hào)6, 219, 628中所描述的方式執(zhí)行,其 在上面通過引用全部并入于此。
[0098] 最后,在608中,測試儀器可以用程序指令并根據(jù)硬件描述來配置。更具體地,測 試儀器的PHE可以根據(jù)所生成的HDL代碼或網(wǎng)表來編程,并且程序指令可以存儲(chǔ)在測試儀 器的一個(gè)或多個(gè)存儲(chǔ)器介質(zhì)上,例如用于由測試儀器的處理器執(zhí)行。要注意,程序指令可以 存儲(chǔ)在測試儀器的主機(jī)部分中,所述主機(jī)部分可以包括在和測試儀器的PHE(例如以及底 層硬件)相同的外殼內(nèi)也可以與測試儀器的PHE的外殼分開(例如是耦接到包含PHE和底 層硬件的機(jī)架的外部計(jì)算機(jī)系統(tǒng)的)。在任一情況下,測試儀器可以包括主機(jī)和PHE部分兩 者,即使主機(jī)部分通過分開的計(jì)算機(jī)系統(tǒng)實(shí)現(xiàn)。
[0099] 測試儀器可以接著被配置,并且可以準(zhǔn)備好如所配置地操作,例如來測試SUT。
[0100] 圖7--某于來自SUT的信息來修改測試儀器橾作
[0101] 圖7示出用于基于接收自SUT的信息來修改測試儀器操作的方法。除了其它設(shè)備 夕卜,圖7所示的方法可以與上圖所示的任何計(jì)算機(jī)系統(tǒng)或設(shè)備結(jié)合使用。在各種實(shí)施例中, 所示出的方法要素中的一些可以并行執(zhí)行,以不同于所示出的順序執(zhí)行,或者可被省略。按 照期望,也可以執(zhí)行另外的方法要素。如圖所示,該方法可操作如下。
[0102] 在702中,可以提供處理器側(cè)代碼。處理器側(cè)代碼可以旨在于由測試儀器的處理 器來執(zhí)行。另外,在704中,可以提供PHE側(cè)代碼。PHE側(cè)代碼可以旨在于由測試儀器的可 編程硬件元件實(shí)現(xiàn)。例如,處理器側(cè)代碼和PHE側(cè)代碼可以被提供為代碼模塊對(duì),如上面關(guān) 于圖6和圖7所討論的。然而,按照期望,可以以任何形式來提供代碼。例如,代碼可以被 提供為均勻代碼(uniform code),而沒有對(duì)代碼的模塊或部分的指示。例如,處理器側(cè)代碼 可以是整體的(monolithic),并且PHE側(cè)代碼也可以是整體的。無論如何,所提供的代碼可 以指定測試儀器的功能性。
[0103] 在706中,可以接收定制(或以其他方式修改)處理器側(cè)和/或PHE側(cè)代碼的用 戶輸入,以提供測試儀器的自適應(yīng)運(yùn)轉(zhuǎn)。更具體地,用戶輸入可以指定功能性或運(yùn)轉(zhuǎn),所述 功能性或運(yùn)轉(zhuǎn)允許測試儀器基于接收自SUT的信息來動(dòng)態(tài)地或自動(dòng)地調(diào)整其操作,例如在 SUT的測試期間。對(duì)測試儀器的操作的修改可以包括接收自SUT的信號(hào)的處理的修改、發(fā)送 到SUT的信號(hào)的修改、測試儀器的配置、SUT的配置、和/或任何所期望的修改。
[0104] 例如,定制可以指定,測試儀器基于SUT所接收信號(hào)的特性來自動(dòng)地調(diào)整對(duì)該信 號(hào)進(jìn)行接收或修改的方法。作為具體的例子,測試儀器可以自動(dòng)地調(diào)整將SUT所接收信號(hào) 的增益調(diào)整到適當(dāng)?shù)碾娖剑ɡ纾?dāng)水平太低時(shí)提高增益,或者當(dāng)水平太高時(shí)降低增益)。
[0105] 作為另一個(gè)例子,定制可以指定,測試儀器應(yīng)當(dāng)基于SUT所提供的信息(例如基于 在SUT所發(fā)送的信號(hào)內(nèi)編碼的內(nèi)容)來修改其運(yùn)轉(zhuǎn)。例如,用戶可能期望使SUT控制測試 的轉(zhuǎn)換,例如其中SUT可以通過提供特定的激勵(lì)信號(hào)來觸發(fā)從第一測試模式到第二測試模 式的轉(zhuǎn)換。另外,SUT可以能夠?qū)μl進(jìn)行響應(yīng)或者啟動(dòng)跳頻,例如在RF測試期間??梢?預(yù)見其它類型的自適應(yīng)運(yùn)轉(zhuǎn)。
[0106] 另一個(gè)實(shí)例可以包括當(dāng)SUT和測試儀器使用預(yù)定義的協(xié)議彼此通信時(shí)的情況。在 該情況下,可以有在兩個(gè)系統(tǒng)之間來回傳送的與數(shù)據(jù)一起的請(qǐng)求和確認(rèn)信號(hào)。這可以允許 SUT請(qǐng)求響應(yīng)或操作改變并實(shí)現(xiàn)智能測試。例如,為用于無線通信的半導(dǎo)體IC的SUT能夠 在內(nèi)部(例如內(nèi)部硬件或軟件)執(zhí)行測試,如果它從測試儀器接收到正確的激勵(lì)的話。例 如,SUT可以請(qǐng)求X頻率、Z功率的信號(hào),它可以使用該信號(hào)來執(zhí)行自我檢查。接著,SUT可 以通過請(qǐng)求Y頻率、W功率的信號(hào)而繼續(xù),等等。
[0107] 另外的實(shí)施例可以包括在測試SUT并且該SUT在檢查其誤碼率(BER)時(shí)的情況。 該測試可以以低數(shù)據(jù)速率開始,并且如果SUT檢測到其BER非常好,則其可以從測試儀器請(qǐng) 求更高的數(shù)據(jù)速率。這個(gè)序列可以繼續(xù),直到SUT檢測到差的BER,此時(shí)其可以請(qǐng)求測試儀 器降低數(shù)據(jù)速率。這個(gè)過程可以用作"重新分級(jí)(binning)" SUT處理的一部分,以確定它 的最大運(yùn)行速度。
[0108] 可以以上面在604中所描述的方式來執(zhí)行該定制;然而,還可以預(yù)見其它的定制。 例如,如上面所討論的,可以不以代碼模塊或代碼模塊對(duì)來提供代碼,而是可以以其它方式 來提供,諸如整體式代碼。相應(yīng)地,用戶可以通過修改整體式代碼來簡單地定制代碼。類似 于上述實(shí)施例,用戶還可以使用一系列GUI (例如向?qū)В﹣韴?zhí)行定制,所述一系列GUI則可 以根據(jù)用戶的輸入自動(dòng)地修改代碼??梢灶A(yù)見其它的定制。
[0109] 在708中,可以生成與處理器側(cè)代碼和PHE側(cè)代碼相對(duì)應(yīng)的程序指令和硬件描述, 包括706的定制。該步驟可以以和606的類似的方式執(zhí)行。
[0110] 710,可以使用程序指令和硬件描述來配置測試儀器。該步驟可以以和608類似的 方式執(zhí)行。
[0111] 712,測試儀器可被操作來測試SUT。更具體地,測試儀器的處理器可以執(zhí)行程序指 令,并且測試儀器的PHE可以根據(jù)硬件描述操作來測試SUT。在測試期間,可以從測試儀器 到SUT提供各種激勵(lì)信號(hào),并且可以從SUT到測試儀器提供各種響應(yīng)或信號(hào)。
[0112] 在714中,在測試期間,可以從SUT接收信息。該信息可以對(duì)應(yīng)于在上面706中所 指定的定制。例如,該信息可以對(duì)應(yīng)于該SUT所提供的信號(hào)的特性、在該SUT所提供的信號(hào) 中編碼的信息(諸如數(shù)據(jù))、或定制所指定的任何其它信息。
[0113] 在716中,響應(yīng)于該信息,根據(jù)在706中所指定的自適應(yīng)運(yùn)轉(zhuǎn),測試儀器的操作可 以基于該信息而被自動(dòng)地修改。
[0114] 要注意,盡管圖7包括定制處理器側(cè)代碼和/或PHE側(cè)代碼以實(shí)現(xiàn)自適應(yīng)運(yùn)轉(zhuǎn)的 步驟,但是自適應(yīng)運(yùn)轉(zhuǎn)可以之前已經(jīng)在代碼中被指定也是可行的。相應(yīng)地,可以不需要定制 以使測試儀器來以此處所描述的自適應(yīng)方式運(yùn)轉(zhuǎn)。而且,盡管描述了兩組代碼,替代地可以 使用單個(gè)一組(例如處理器和/或PHE)。
[0115] 圖8-14-測試儀器的示例件配置和修改
[0116] 圖8-14示出測試儀器的示例性配置和修改。雖然以使用上層API描述了這些圖, 但是一些實(shí)施例可以不實(shí)現(xiàn)API。因此,在不使用所描述的API的情況下仍然可以實(shí)現(xiàn)示例 性的配置和修改。
[0117] 圖8示出測試儀器的示例性初始配置,例如,可以在模板內(nèi)提供給用戶的配置或 測試儀器的默認(rèn)配置。圖8示出了 PHE固件和物理硬件之間的典型連接。
[0118] 例如,用戶可以使用配置主機(jī)軟件API來在主機(jī)軟件級(jí)別上指定特定的功率水平 和中心頻率。該值接著可被發(fā)送到固件并最后向下到物理硬件。為了獲取,數(shù)據(jù)進(jìn)入到ADC 中,并接著由PHE中的獲取引擎通過DSP固件(FW)捕獲,并且接著可以通過獲取主機(jī)軟件 API讀出。在生成側(cè)上,API可以用于在軟件級(jí)別上生成數(shù)據(jù),該數(shù)據(jù)可以被傳送到PHE中 的生成FW,接著到DSP FW,并且經(jīng)由DAC最終到SUT。
[0119] 圖9示出對(duì)圖8的初始配置的示例性修改。在該實(shí)施例中,獲取引擎和生成引擎 已經(jīng)被去除。所有其它的軟件/固件保持不變。在該修改的版本中,代替主機(jī),數(shù)字I/O連 接器用于流處理(Streaming)ADC和DAC數(shù)據(jù)。這允許用戶使用不同的設(shè)備進(jìn)行數(shù)據(jù)獲取 和生成,該不同的設(shè)備可以連接到數(shù)字I/O端口。
[0120] 圖10示出對(duì)圖8的初始配置的不同的修改。在該實(shí)施例中,可以由SUT控制硬件 的配置(例如遵從圖7的方法)。當(dāng)從主機(jī)API調(diào)用配置時(shí),作為對(duì)將配置直接寫到物理硬 件的代替,所述配置可以存儲(chǔ)在一些自定義的FW中(例如在存儲(chǔ)器介質(zhì)中)。在一個(gè)實(shí)施 例中,用戶可以在存儲(chǔ)器中存儲(chǔ)多個(gè)配置或操作模式。該方法允許將校準(zhǔn)考慮在內(nèi)。接著, 正被使用的配置可以由SUT控件例如在測試期間選擇,按照期望,要么通過ADC所接收的數(shù) 據(jù)要么通過數(shù)字I/O端口。
[0121] 一個(gè)例子是自動(dòng)增益控制電路(AGC)。用戶可以存儲(chǔ)多個(gè)不同的配置,例如用于 100個(gè)不同的功率水平。接著,自定義的FW可以查看ADC所接收的信號(hào)的功率,并且在運(yùn)行 時(shí)挑出不同的配置以最大化ADC的動(dòng)態(tài)范圍。
[0122] 另一個(gè)例子是跳頻。用戶可以存儲(chǔ)16個(gè)不同的配置,例如用于16個(gè)不同的中心 頻率。接著,SUT可以請(qǐng)求新的中心頻率,要么通過數(shù)據(jù)通路(通過解碼ADC數(shù)據(jù))要么通 過數(shù)字I/O端口。相應(yīng)地,測試儀器的操作可以被自動(dòng)地改變,例如在測試期間。
[0123] 圖11示出對(duì)圖8的初始配置的不同的修改。這個(gè)例子類似于前面的例子,除了已 經(jīng)去除配置軟件/固件外。因此,在該示例中,用戶可以從PHE直接控制物理硬件(例如通 過SUT控件),但是現(xiàn)在不必要將校準(zhǔn)考慮在內(nèi)。
[0124] 圖12示出對(duì)圖8的初始配置的不同的修改。在該情況下,用戶已經(jīng)將自定義的數(shù) 字信號(hào)處理邏輯插入到的ADC和/或DAC的數(shù)據(jù)通路中。它們還可以具有用于配置自定義 DSP固件的自定義主機(jī)軟件。
[0125] 圖13示出對(duì)圖8的初始配置的不同的修改。在該示例中,數(shù)據(jù)經(jīng)由ADC被接收、 通過自定義的DSP處理被處理、并被發(fā)送出DAC。這可用于多個(gè)應(yīng)用,其中一個(gè)是信道仿真 器。該自定義的DSP可以修改信號(hào)以具有通過某種信道廣播該信號(hào)的影響。在該示例中, 系統(tǒng)可允許通過數(shù)字I/O端口或通過對(duì)等DM鏈路的數(shù)據(jù)組合,例如用于聚合來自多個(gè)設(shè) 備的數(shù)據(jù)進(jìn)行MMO處理。
[0126] 圖14示出對(duì)圖8的初始配置的不同的修改。該示例可以用于與無線電接口或測 試無線電。ADC數(shù)據(jù)可以被解碼、解包、解調(diào)等,并被發(fā)送到主機(jī)進(jìn)行最終的處理。同樣,對(duì) 于DAC,來自主機(jī)的消息數(shù)據(jù)可以被編碼、調(diào)制、分包等,并且最終發(fā)送到DAC。
[0127] 圖15A-18H-俥用圖形化編稈的示例件修改
[0128] 圖15A-18H示出可在測試儀器的定制和操作期間使用的主機(jī)和PHE側(cè)圖形化程 序。更具體地,這些圖示出了用于RF OUT生成和RF IN獲取的例子的主機(jī)代碼和PHE代碼。 首先示出的是未修改的構(gòu)造框的方法。其次示出的是修改的版本,其中數(shù)據(jù)不再來自主機(jī) 用于生成,而是出入DIO端口(例如對(duì)應(yīng)于圖9)。
[0129] 圖15A-15G示出與驅(qū)動(dòng)程序級(jí)的軟件相對(duì)應(yīng)的圖形化程序(例如在上述API之 下)。該圖形化程序被分成對(duì)應(yīng)于圖8的框的7個(gè)部分。在該特定的示例中,所有的模塊化 框展開并連接在一起顯示。形象化地,每個(gè)部分可以由不同顏色的標(biāo)簽來表示。在另選的 實(shí)施例中,模塊化框可以連接在一起顯示(例如類似于圖8),并且可以響應(yīng)于用戶輸入而 展開為底層圖形化代碼(例如按照期望,基于每個(gè)框或基于全局地)。
[0130] 更具體地,圖15A對(duì)應(yīng)于會(huì)話初始化和到硬件的通信端口的打開。圖15B對(duì)應(yīng)于 配置,例如用于建立功率水平和中心頻率。圖15C對(duì)應(yīng)于生成,例如用于將所期望的波形下 載到硬件,建立硬件響應(yīng)于觸發(fā)應(yīng)當(dāng)如何生成等。圖IOT對(duì)應(yīng)于同步,例如用于建立同步電 路系統(tǒng),路由同步觸發(fā)等。圖15E對(duì)應(yīng)于DSP,例如用于建立DSP (頻移、數(shù)字增益、速率變化 等)。圖15F對(duì)應(yīng)于獲取,例如用于獲取波形并將其返回到用戶。最后,圖15G對(duì)應(yīng)于關(guān)閉 會(huì)話并重新設(shè)置儀器。
[0131] 圖16A-16F示出圖15A-15G的圖形化程序,除了生成和獲取代碼已被去除并替換 以用于建立自定義PHE固件的一些自定義代碼之外,這很像圖9所示的例子。在此示例中, 16A對(duì)應(yīng)于會(huì)話初始化和到硬件的通信端口的打開。圖16B對(duì)應(yīng)于配置,圖16C對(duì)應(yīng)于同 步,圖16D對(duì)應(yīng)于DSP,以及圖16F對(duì)應(yīng)于關(guān)閉到硬件的通信端口和關(guān)閉會(huì)話。
[0132] 在該示例中,圖15C(對(duì)應(yīng)于生成)和15F(對(duì)應(yīng)于獲?。┮呀?jīng)以用于建立自定義 PHE固件的自定義代碼替換,如圖16E所示。更具體地,該代碼可用于建立DIO信號(hào)的方向, 清除用于DIO端口的FIFO,并啟動(dòng)出/入DIO端口的數(shù)據(jù)的傳遞。
[0133] 圖17A-17I示出與固件級(jí)別的代碼(例如用于在PHE上實(shí)現(xiàn))相對(duì)應(yīng)的圖形化程 序。該圖形化程序被分成幾個(gè)部分,類似于圖8的框。與上面類似,代碼模塊可以形象化地 指示和/或以各種方式顯示。
[0134] 圖17A對(duì)應(yīng)于生成,例如從存儲(chǔ)器取得波形,取決于設(shè)備的狀態(tài)來修改等。圖17B 和17H示出了圖形化程序的執(zhí)行同步的部分,例如選擇觸發(fā)源。圖17C和17F對(duì)應(yīng)于DSP, 例如數(shù)字增益、頻移、速度改變、均衡等。圖17D對(duì)應(yīng)于數(shù)據(jù)傳輸,例如發(fā)送數(shù)據(jù)到DAC,并且 圖17E對(duì)應(yīng)于從ADC接收數(shù)據(jù)。圖17G對(duì)應(yīng)于獲取,例如捕獲波形到存儲(chǔ)器中。圖171對(duì) 應(yīng)于配置,例如配置中心頻率和功率水平。
[0135] 圖18A-18H示出圖17A-17I的圖形化程序,除了獲取和生成分段已被去除并且同 步分段已經(jīng)被修改之外,但是DSP、DAC和ADC代碼是相同的。在該示例中,圖18A對(duì)應(yīng)于用 于從DIO端口采樣數(shù)據(jù)并將該數(shù)據(jù)存儲(chǔ)在FIFO中的自定義代碼。圖18B對(duì)應(yīng)于對(duì)經(jīng)修改 的同步代碼的自定義。圖18C對(duì)應(yīng)于DSP并且圖18D對(duì)應(yīng)于數(shù)據(jù)傳輸,類似于上述圖17C 和 17D。
[0136] 圖18E對(duì)應(yīng)于從ADC接收數(shù)據(jù)并且圖18F對(duì)應(yīng)于DSP,類似于上述圖17E和17F。 圖18H對(duì)應(yīng)于經(jīng)修改的同步代碼。圖18G對(duì)應(yīng)于通過數(shù)字I/O輸出將波形數(shù)據(jù)發(fā)送出去。
[0137] 講一步的實(shí)施例
[0138] 雖然關(guān)于測試儀器和測試SUT已經(jīng)描述了上述實(shí)施例,它們可被擴(kuò)展到任何設(shè)備 或儀器的配置或定制。因此,上述實(shí)施例不限于上述的特定環(huán)境和示例,并且可按照期望應(yīng) 用于任何適當(dāng)?shù)南到y(tǒng)。
[0139] 雖然已經(jīng)非常詳細(xì)地描述了以上實(shí)施例,但是對(duì)于本領(lǐng)域的技術(shù)人員來說,一旦 充分理解了上述公開內(nèi)容,各種變型和修改將變得明顯。權(quán)利要求旨在被解釋為包括所有 這些變型和修改。
【權(quán)利要求】
1. 一種用于定制測試儀器的方法,包括: 存儲(chǔ)用于由所述測試儀器的處理器執(zhí)行的第一代碼; 存儲(chǔ)用于在所述測試儀器的可編程硬件元件上實(shí)現(xiàn)的第二代碼; 在存儲(chǔ)第二代碼之前接收定制第二代碼的用戶輸入,其中所述用戶輸入指定用于所述 測試儀器的自適應(yīng)運(yùn)轉(zhuǎn); 基于所述用戶輸入生成用于所述可編程硬件元件的硬件描述; 其中,在所述硬件描述在所述可編程硬件元件上的實(shí)現(xiàn)之后并且在對(duì)耦接到所述測試 儀器的測試中的系統(tǒng)SUT的測試期間,所述測試儀器被配置為確定在對(duì)所述SUT的測試期 間接收自所述SUT的信息;以及 其中所述測試儀器的操作基于由所述用戶輸入指定的所述自適應(yīng)運(yùn)轉(zhuǎn)和在對(duì)所述SUT 的測試期間接收自所述SUT的所述信息而自動(dòng)地修改。
2. 根據(jù)權(quán)利要求1所述的方法,其中第一代碼和第二代碼在一個(gè)或多個(gè)圖形化程序部 分中指定,所述一個(gè)或多個(gè)圖形化程序部分包括通過連線連接的多個(gè)節(jié)點(diǎn),其中所述多個(gè) 節(jié)點(diǎn)形象化地表示所述一個(gè)或多個(gè)圖形化程序部分的功能性,其中接收指定定制的用戶輸 入包括接收修改所述一個(gè)或多個(gè)圖形化程序部分的用戶輸入。
3. 根據(jù)權(quán)利要求1所述的方法,其中所述測試儀器的所述操作基于接收自所述SUT的 信號(hào)的特性而自動(dòng)地修改。
4. 根據(jù)權(quán)利要求1所述的方法,其中所述測試儀器的所述操作基于接收自所述SUT的 信號(hào)的內(nèi)容而自動(dòng)地修改。
5. 根據(jù)權(quán)利要求1所述的方法,其中所述操作的修改包括以下中的一個(gè)或多個(gè): 接收自所述SUT的信號(hào)的處理的修改; 發(fā)送到所述SUT的信號(hào)的修改; 所述測試儀器的配置;和 所述SUT的配置。
6. -種用于定制測試儀器的方法,包括: 提供用于測試儀器的第一配置,其中第一配置包括存儲(chǔ)用于由所述測試儀器的處理器 執(zhí)行的第一代碼和用于在所述測試儀器的可編程硬件元件上實(shí)現(xiàn)的第二代碼; 接收定制用于所述測試儀器的第一配置的用戶輸入,其中所述用戶輸入指定對(duì)第二代 碼的修改,其中對(duì)第二代碼的所述修改指定用于所述測試儀器的自適應(yīng)運(yùn)轉(zhuǎn); 基于第一配置和所述用戶輸入來生成用于所述可編程硬件元件的硬件描述,其中,在 所述硬件描述在所述可編程硬件元件上的實(shí)現(xiàn)之后,所述測試儀器被配置為: 從耦接到所述測試儀器的測試中的系統(tǒng)SUT接收信息;和 基于所述信息而自動(dòng)修改所述測試儀器的操作,其中所述自 動(dòng)修改包括執(zhí)行由定制用于所述測試儀器的第一配置的用戶輸入 指定的所述自適應(yīng)運(yùn)轉(zhuǎn)。
7. 根據(jù)權(quán)利要求6所述的方法,其中第一配置包括多對(duì)代碼模塊,其中每對(duì)代碼模塊 包括第一代碼模塊和第二代碼模塊,第一代碼模塊具有用于由所述測試儀器的處理器執(zhí)行 的程序指令,第二代碼模塊用于在所述測試儀器的可編程硬件元件上實(shí)現(xiàn),其中,對(duì)于每對(duì) 代碼模塊,第一代碼模塊和第二代碼模塊共同地實(shí)現(xiàn)所述測試儀器中的功能,其中代碼模 塊對(duì)中的第一代碼模塊在所述處理器上可執(zhí)行以執(zhí)行功能的第一部分,并且其中所述代碼 模塊對(duì)中的第二代碼模塊被配置為在所述可編程硬件元件上實(shí)現(xiàn)以執(zhí)行所述功能的對(duì)應(yīng) 的第二部分。
8. 根據(jù)權(quán)利要求6所述的方法,其中第一配置在一個(gè)或多個(gè)圖形化程序部分中指定, 所述一個(gè)或多個(gè)圖形化程序部分包括通過連線連接的多個(gè)節(jié)點(diǎn),其中所述多個(gè)節(jié)點(diǎn)形象化 地表示所述一個(gè)或多個(gè)圖形化程序部分的功能性,其中接收指定定制的用戶輸入包括接收 修改所述一個(gè)或多個(gè)圖形化程序部分的用戶輸入。
9. 根據(jù)權(quán)利要求6所述的方法,其中所述信息包括接收自所述SUT的信號(hào)的特性,其中 所述自動(dòng)修改基于所述特性而執(zhí)行。
10. 根據(jù)權(quán)利要求6所述的方法,其中從所述SUT接收信息包括: 從所述SUT接收信號(hào);和 通過分析接收自所述SUT的所述信號(hào)的內(nèi)容來確定所述信息; 其中所述自動(dòng)修改是基于所述信號(hào)的所述內(nèi)容的。
11. 一種非易失性計(jì)算機(jī)可訪問存儲(chǔ)器介質(zhì),存儲(chǔ)用于定制測試儀器的程序指令,其中 所述程序指令可執(zhí)行以進(jìn)行以下操作: 提供由所述測試儀器的處理器執(zhí)行的第一代碼; 提供用于在所述測試儀器的可編程硬件元件上實(shí)現(xiàn)的第二代碼; 在存儲(chǔ)第二代碼之前接收定制第二代碼的用戶輸入,其中所述用戶輸入指定用于所述 測試儀器的自適應(yīng)運(yùn)轉(zhuǎn); 基于所述用戶輸入生成用于所述可編程硬件元件的硬件描述; 其中,在所述硬件描述在所述可編程硬件元件上的實(shí)現(xiàn)之后并且在對(duì)耦接到所述測試 儀器的測試中的系統(tǒng)SUT的測試期間,所述測試儀器被配置為確定在對(duì)所述SUT的測試期 間接收自所述SUT的信息;以及 其中所述測試儀器的操作基于在對(duì)所述SUT的測試期間接收自所述SUT的所述信息、 根據(jù)由所述用戶輸入指定的所述自適應(yīng)運(yùn)轉(zhuǎn)而自動(dòng)地修改。
12. 根據(jù)權(quán)利要求11所述的非易失性計(jì)算機(jī)可訪問存儲(chǔ)器介質(zhì),其中第一代碼和第二 代碼在一個(gè)或多個(gè)圖形化程序部分中指定,所述一個(gè)或多個(gè)圖形化程序部分包括通過連線 連接的多個(gè)節(jié)點(diǎn),其中所述多個(gè)節(jié)點(diǎn)形象化地表示所述一個(gè)或多個(gè)圖形化程序部分的功能 性,其中接收指定定制的用戶輸入包括接收修改所述一個(gè)或多個(gè)圖形化程序部分的用戶輸 入。
13. 根據(jù)權(quán)利要求11所述的非易失性計(jì)算機(jī)可訪問存儲(chǔ)器介質(zhì),其中所述測試儀器的 所述操作基于接收自所述SUT的信號(hào)的特性而自動(dòng)地修改。
14. 根據(jù)權(quán)利要求11所述的非易失性計(jì)算機(jī)可訪問存儲(chǔ)器介質(zhì),其中所述測試儀器的 所述操作基于接收自所述SUT的信號(hào)的內(nèi)容而自動(dòng)地修改。
15. 根據(jù)權(quán)利要求11所述的非易失性計(jì)算機(jī)可訪問存儲(chǔ)器介質(zhì),其中所述操作的修改 包括以下中的一個(gè)或多個(gè): 接收自所述SUT的信號(hào)的處理的修改; 發(fā)送到所述SUT的信號(hào)的修改; 所述測試儀器的配置;和 所述SUT的配置。
16. -種非易失性計(jì)算機(jī)可訪問存儲(chǔ)器介質(zhì),存儲(chǔ)用于定制測試儀器的程序指令,其中 所述程序指令可執(zhí)行以進(jìn)行以下操作: 提供用于測試儀器的第一配置,其中第一配置包括存儲(chǔ)用于由所述測試儀器的處理器 執(zhí)行的第一代碼和用于在所述測試儀器的可編程硬件元件上實(shí)現(xiàn)的第二代碼; 接收定制用于所述測試儀器的第一配置的用戶輸入,其中所述用戶輸入指定對(duì)第二代 碼的修改,其中對(duì)第二代碼的所述修改指定用于所述測試儀器的自適應(yīng)運(yùn)轉(zhuǎn); 基于第一配置和所述用戶輸入來生成用于可編程硬件元件的硬件描述,其中,在所述 硬件描述在所述可編程硬件元件上的實(shí)現(xiàn)之后,所述測試儀器被配置為: 從耦接到所述測試儀器的測試中的系統(tǒng)SUT接收信息;和 基于所述信息而自動(dòng)修改所述測試儀器的操作,其中所述自動(dòng)修改包括執(zhí)行由定制用 于所述測試儀器的第一配置的用戶輸入指定的所述自適應(yīng)運(yùn)轉(zhuǎn)。
17. 根據(jù)權(quán)利要求16所述的非易失性計(jì)算機(jī)可訪問存儲(chǔ)器介質(zhì),其中第一配置包括多 對(duì)代碼模塊,其中每對(duì)代碼模塊包括第一代碼模塊和第二代碼模塊,第一代碼模塊具有用 于由所述測試儀器的處理器執(zhí)行的程序指令,第二代碼模塊用于在所述測試儀器的可編程 硬件元件上實(shí)現(xiàn),其中,對(duì)于每對(duì)代碼模塊,第一代碼模塊和第二代碼模塊共同地實(shí)現(xiàn)所述 測試儀器中的功能,其中代碼模塊對(duì)中的第一代碼模塊在所述處理器上可執(zhí)行以執(zhí)行功能 的第一部分,并且其中所述代碼模塊對(duì)中的第二代碼模塊被配置為在所述可編程硬件元件 上實(shí)現(xiàn)以執(zhí)行所述功能的對(duì)應(yīng)的第二部分。
18. 根據(jù)權(quán)利要求16所述的非易失性計(jì)算機(jī)可訪問存儲(chǔ)器介質(zhì),其中第一配置在一個(gè) 或多個(gè)圖形化程序部分中指定,所述一個(gè)或多個(gè)圖形化程序部分包括通過連線連接的多個(gè) 節(jié)點(diǎn),其中所述多個(gè)節(jié)點(diǎn)形象化地表示所述一個(gè)或多個(gè)圖形化程序部分的功能性,其中接 收指定定制的用戶輸入包括接收修改所述一個(gè)或多個(gè)圖形化程序部分的用戶輸入。
19. 根據(jù)權(quán)利要求16所述的非易失性計(jì)算機(jī)可訪問存儲(chǔ)器介質(zhì),其中所述信息包括接 收自所述SUT的信號(hào)的特性,其中所述自動(dòng)修改基于所述特性而執(zhí)行。
20. 根據(jù)權(quán)利要求16所述的非易失性計(jì)算機(jī)可訪問存儲(chǔ)器介質(zhì),其中從所述SUT接收 信息包括: 從所述SUT接收信號(hào);和 通過分析接收自所述SUT的所述信號(hào)的內(nèi)容來確定所述信息; 其中所述自動(dòng)修改是基于所述信號(hào)的所述內(nèi)容的。
21. -種用于定制測試儀器的方法,包括: 存儲(chǔ)由所述測試儀器的處理器執(zhí)行的第一代碼; 存儲(chǔ)用于在所述測試儀器的可編程硬件元件上實(shí)現(xiàn)的第二代碼,其中第二代碼基于接 收自測試中的系統(tǒng)的信息來指定用于所述測試儀器的自適應(yīng)運(yùn)轉(zhuǎn); 基于第二代碼生成用于所述可編程硬件元件的硬件描述; 在所述可編程硬件元件上實(shí)現(xiàn)所述硬件描述; 所述測試儀器操作以測試耦接到所述測試儀器的SUT,其中所述操作包括所述處理器 執(zhí)行第一代碼和所述可編程硬件元件執(zhí)行由所述硬件描述指定的功能性; 所述測試儀器確定在所述測試儀器操作以測試所述SUT期間接收自所述SUT的信息; 和 基于在所述測試儀器操作以測試所述SUT期間接收自所述DUT的所述信息,自動(dòng)修改 所述測試儀器的操作; 其中在所述自動(dòng)修改操作之后,所述測試儀器繼續(xù)操作以測試所述SUT。
22. -種測試儀器,包括: 處理器; 耦接到所述處理器的存儲(chǔ)器介質(zhì),其中所述存儲(chǔ)器介質(zhì)存儲(chǔ)程序指令,所述程序指令 由處理器可執(zhí)行以實(shí)現(xiàn)所述測試儀器的第一功能性; 耦接到所述處理器的可編程硬件元件,其中所述可編程硬件元件被配置為實(shí)現(xiàn)所述測 試儀器的第二功能性; 用于與測試中的系統(tǒng)SUT通信的一個(gè)或多個(gè)輸入和輸出端口; 其中所述處理器和存儲(chǔ)器介質(zhì)以及可編程硬件元件被配置為: 從耦接到所述測試儀器的SUT接收信息;和 基于所述信息自動(dòng)修改所述測試儀器的操作。
【文檔編號(hào)】G06F11/263GK104364766SQ201380019995
【公開日】2015年2月18日 申請(qǐng)日期:2013年2月15日 優(yōu)先權(quán)日:2012年2月16日
【發(fā)明者】C·G·斯科羅德爾, C·F·格拉夫, C·T·尼施古奇, N·G·德索扎, D·J·巴科爾, T·D·瑪格魯?shù)聽? 申請(qǐng)人:美國國家儀器有限公司