基于多階段流水線(xiàn)結(jié)構(gòu)的多級(jí)觸發(fā)的實(shí)現(xiàn)方法
【專(zhuān)利摘要】本發(fā)明提供一種基于多階段流水線(xiàn)結(jié)構(gòu)的多級(jí)觸發(fā)的實(shí)現(xiàn)方法,每個(gè)觸發(fā)單元電路通過(guò)三階段流水線(xiàn)結(jié)構(gòu)來(lái)實(shí)現(xiàn),分別是加載觸發(fā)條件電路、觸發(fā)檢測(cè)就緒電路、觸發(fā)檢測(cè)電路。通過(guò)三個(gè)觸發(fā)單元電路將流水線(xiàn)鋪開(kāi),實(shí)現(xiàn)復(fù)雜多級(jí)觸發(fā)中的無(wú)觸發(fā)判斷死區(qū)。本發(fā)明突破了無(wú)觸發(fā)判斷死區(qū)技術(shù),完善了復(fù)雜條件觸發(fā)中的觸發(fā)跳轉(zhuǎn)功能。同時(shí)該裝置可通過(guò)FPGA實(shí)現(xiàn),不需要增加外圍電路,不需要研制ASIC芯片,能夠降低成本和縮短開(kāi)發(fā)周期。
【專(zhuān)利說(shuō)明】基于多階段流水線(xiàn)結(jié)構(gòu)的多級(jí)觸發(fā)的實(shí)現(xiàn)方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于測(cè)試與測(cè)量領(lǐng)域,涉及一種基于多階段流水線(xiàn)結(jié)構(gòu)的多級(jí)觸發(fā)的實(shí)現(xiàn)方法。
【背景技術(shù)】
[0002]觸發(fā)功能是包括邏輯分析儀在內(nèi)的測(cè)試與測(cè)量?jī)x器必不可少的功能,儀器通過(guò)觸發(fā)可以排除故障。在現(xiàn)在的工程測(cè)量中,單一類(lèi)型的觸發(fā)無(wú)法滿(mǎn)足各種高級(jí)測(cè)量的要求。例如,協(xié)議分析需要多級(jí)不同類(lèi)型的觸發(fā)依次滿(mǎn)足,才能捕獲需要的信號(hào)。相對(duì)于單級(jí)觸發(fā),復(fù)雜多級(jí)觸發(fā)包括觸發(fā)跳轉(zhuǎn),分支觸發(fā)等功能。當(dāng)不同類(lèi)型的觸發(fā)跳轉(zhuǎn)時(shí),跳轉(zhuǎn)時(shí)間如果大于一個(gè)觸發(fā)時(shí)鐘周期,有效觸發(fā)可能被漏掉,出現(xiàn)觸發(fā)判斷死區(qū),導(dǎo)致整個(gè)觸發(fā)判斷過(guò)程失敗。所以保證整個(gè)過(guò)程無(wú)觸發(fā)判斷死區(qū),是十分必要的。
[0003]目前,實(shí)現(xiàn)復(fù)雜多級(jí)觸發(fā)的裝置通常使用ASIC實(shí)現(xiàn)。但是這些ASIC由測(cè)試測(cè)量設(shè)備制造商研制并僅用于其測(cè)試測(cè)量設(shè)備,并不面向市場(chǎng)銷(xiāo)售。同時(shí),采用ASIC實(shí)現(xiàn)的成本高,周期長(zhǎng)。
【發(fā)明內(nèi)容】
[0004]本發(fā)明提供一種基于多階段流水線(xiàn)結(jié)構(gòu)的多級(jí)觸發(fā)的實(shí)現(xiàn)方法,不但可以檢測(cè)到多種類(lèi)型的觸發(fā),而且在不同級(jí)觸發(fā)跳轉(zhuǎn)時(shí)不會(huì)出現(xiàn)觸發(fā)判斷死區(qū)。
[0005]本發(fā)明通過(guò)以下技術(shù)方案實(shí)現(xiàn):
[0006]一種基于多階段流水線(xiàn)結(jié)構(gòu)的多級(jí)觸發(fā)的實(shí)現(xiàn)方法,首先設(shè)計(jì)一個(gè)觸發(fā)單元電路,實(shí)現(xiàn)多級(jí)觸發(fā)中的某一級(jí)觸發(fā),其中所述的觸發(fā)單元電路通過(guò)三階段流水線(xiàn)結(jié)構(gòu)實(shí)現(xiàn);然后,將每一個(gè)觸發(fā)單元電路復(fù)制為A、B、C三份,使三階段流水線(xiàn)結(jié)構(gòu)展開(kāi)組成無(wú)觸發(fā)判斷死區(qū)電路;無(wú)觸發(fā)判斷死區(qū)電路由三個(gè)觸發(fā)單元電路組成,在時(shí)刻T時(shí),A電路實(shí)現(xiàn)第一級(jí)觸發(fā)電路,處于流水線(xiàn)結(jié)構(gòu)中的檢測(cè)階段,B電路實(shí)現(xiàn)第二級(jí)觸發(fā)電路,處于流水線(xiàn)結(jié)構(gòu)中的就緒階段,C電路實(shí)現(xiàn)第三級(jí)觸發(fā)電路,處于流水線(xiàn)結(jié)構(gòu)中的加載階段;此時(shí),無(wú)觸發(fā)判斷死區(qū)電路的狀態(tài)是檢測(cè)第一級(jí)觸發(fā),當(dāng)?shù)谝患?jí)觸發(fā)響應(yīng)后,無(wú)觸發(fā)判斷死區(qū)電路進(jìn)入下一個(gè)時(shí)鐘周期,時(shí)刻為T(mén)+1,B電路實(shí)現(xiàn)第二級(jí)觸發(fā)電路,處于流水線(xiàn)結(jié)構(gòu)中的檢測(cè)階段,C電路實(shí)現(xiàn)第三級(jí)觸發(fā)電路,處于流水線(xiàn)結(jié)構(gòu)中的就緒階段,A電路實(shí)現(xiàn)第四級(jí)觸發(fā)電路,處于流水線(xiàn)結(jié)構(gòu)中的加載階段,此時(shí),無(wú)觸發(fā)判斷死區(qū)電路的狀態(tài)是檢測(cè)第二級(jí)觸發(fā);第一級(jí)觸發(fā)檢測(cè)與第二級(jí)觸發(fā)檢測(cè)的時(shí)間間隔為一個(gè)工作時(shí)鐘周期,沒(méi)有觸發(fā)判斷死區(qū);無(wú)死區(qū)電路依次檢測(cè)第三級(jí)觸發(fā),第四級(jí)觸發(fā);直至多級(jí)觸發(fā)結(jié)束;至此實(shí)現(xiàn)無(wú)觸發(fā)判斷死區(qū)的復(fù)雜多級(jí)觸發(fā)。
[0007]其中所述的三階段具體采用以下方法實(shí)現(xiàn):第一階段是加載觸發(fā)條件電路,用于從指令緩存單元中獲取觸發(fā)條件,指令緩存單元通過(guò)FPGA片上RAM實(shí)現(xiàn),不同級(jí)的觸發(fā)條件存儲(chǔ)于指令緩存單元的不同地址上,加載觸發(fā)條件電路通過(guò)向指令緩存單元發(fā)送請(qǐng)求指令,獲取相應(yīng)的觸發(fā)條件;第二階段是觸發(fā)檢測(cè)就緒電路,用于將觸發(fā)條件配置至觸發(fā)電路,使觸發(fā)電路進(jìn)入觸發(fā)檢測(cè)就緒狀態(tài);第三階段是觸發(fā)檢測(cè)電路,用于對(duì)觸發(fā)源信號(hào)進(jìn)行檢測(cè),并產(chǎn)生觸發(fā)響應(yīng)信號(hào)。
[0008]其中所述的三個(gè)階段中每一階段電路工作時(shí)長(zhǎng)至少一個(gè)時(shí)鐘周期,觸發(fā)單元電路至少為三個(gè)時(shí)鐘周期。
[0009]本發(fā)明的有益效果:
[0010]本發(fā)明突破了無(wú)觸發(fā)判斷死區(qū)技術(shù),完善了復(fù)雜條件觸發(fā)中的觸發(fā)跳轉(zhuǎn)功能。同時(shí)該裝置只需通過(guò)FPGA實(shí)現(xiàn),不需要研制ASIC芯片,能夠降低成本和縮短開(kāi)發(fā)周期。
【專(zhuān)利附圖】
【附圖說(shuō)明】
[0011]圖1為本發(fā)明觸發(fā)單元電路示意圖;
[0012]圖2為本發(fā)明無(wú)觸發(fā)判斷死區(qū)實(shí)現(xiàn)電路。
【具體實(shí)施方式】
[0013]下面結(jié)合附圖對(duì)本發(fā)明作進(jìn)一步介紹。
[0014]本發(fā)明實(shí)現(xiàn)了一種基于FPGA的多階段流水線(xiàn)結(jié)構(gòu)的無(wú)觸發(fā)判斷死區(qū)的復(fù)雜多級(jí)觸發(fā)的裝置,具體實(shí)施過(guò)程如下:
[0015]首先,設(shè)計(jì)一個(gè)觸發(fā)單元電路,該電路可實(shí)現(xiàn)多級(jí)觸發(fā)中的某一級(jí)觸發(fā)。觸發(fā)單元電路通過(guò)三階段流水線(xiàn)結(jié)構(gòu)來(lái)實(shí)現(xiàn)。如圖1所示,I為觸發(fā)單元電路,可實(shí)現(xiàn)多級(jí)觸發(fā)中的某一級(jí)觸發(fā);2是觸發(fā)條件加載電路;3是指令緩存單元,用于緩存觸發(fā)條件;4是觸發(fā)檢測(cè)就緒電路;5觸發(fā)檢測(cè)電路。其中2,4,5是觸發(fā)單元電路流水線(xiàn)結(jié)構(gòu)的三個(gè)階段。
[0016]第一階段是加載觸發(fā)條件電路(簡(jiǎn)稱(chēng)加載電路),此電路實(shí)現(xiàn)了從指令緩存單元中獲取觸發(fā)條件的過(guò)程。指令緩存單元通過(guò)FPGA片上RAM實(shí)現(xiàn),不同級(jí)的觸發(fā)條件存儲(chǔ)于指令緩存單元的不同地址上。加載電路通過(guò)向指令緩存單元發(fā)送請(qǐng)求指令,獲取相應(yīng)的觸發(fā)條件。加載電路的工作是一個(gè)時(shí)鐘周期。第二階段是觸發(fā)檢測(cè)就緒電路(簡(jiǎn)稱(chēng)就緒電路),此電路實(shí)現(xiàn)了將觸發(fā)條件配置至觸發(fā)電路,使觸發(fā)電路進(jìn)入觸發(fā)檢測(cè)就緒狀態(tài)。第三階段是觸發(fā)檢測(cè)電路(簡(jiǎn)稱(chēng)檢測(cè)電路),此電路實(shí)現(xiàn)了對(duì)觸發(fā)源信號(hào)的檢測(cè)過(guò)程,并產(chǎn)生觸發(fā)響應(yīng)信號(hào)。每一階段電路工作時(shí)長(zhǎng)是至少一個(gè)時(shí)鐘周期,所以觸發(fā)單元電路至少需要3個(gè)時(shí)鐘周期。
[0017]然后,將每一個(gè)觸發(fā)單元電路復(fù)制為A、B、C三份,使三階段流水線(xiàn)結(jié)構(gòu)鋪開(kāi),組成無(wú)觸發(fā)判斷死區(qū)電路(簡(jiǎn)稱(chēng)無(wú)死區(qū)電路)。如圖2所示,I是T時(shí)刻的無(wú)觸發(fā)判斷死區(qū)電路的狀態(tài);2是T+1時(shí)刻的無(wú)觸發(fā)判斷死區(qū)電路的狀態(tài);3是觸發(fā)單元電路,無(wú)觸發(fā)判斷死區(qū)電路由三個(gè)觸發(fā)單元電路組成。在時(shí)刻T時(shí),A電路實(shí)現(xiàn)第一級(jí)觸發(fā)電路,處于流水線(xiàn)結(jié)構(gòu)中的檢測(cè)階段,B電路實(shí)現(xiàn)第二級(jí)觸發(fā)電路,處于流水線(xiàn)結(jié)構(gòu)中的就緒階段,C電路實(shí)現(xiàn)第三級(jí)觸發(fā)電路,處于流水線(xiàn)結(jié)構(gòu)中的加載階段。此時(shí),無(wú)死區(qū)電路的狀態(tài)是檢測(cè)第一級(jí)觸發(fā)。當(dāng)?shù)谝患?jí)觸發(fā)響應(yīng)后,電路進(jìn)入下一個(gè)時(shí)鐘周期,時(shí)刻為T(mén)+1,B電路實(shí)現(xiàn)第二級(jí)觸發(fā)電路,處于流水線(xiàn)結(jié)構(gòu)中的檢測(cè)階段,C電路實(shí)現(xiàn)第三級(jí)觸發(fā)電路,處于流水線(xiàn)結(jié)構(gòu)中的就緒階段,A電路實(shí)現(xiàn)第四級(jí)觸發(fā)電路,處于流水線(xiàn)結(jié)構(gòu)中的加載階段。此時(shí),無(wú)死區(qū)電路的狀態(tài)是檢測(cè)第二級(jí)觸發(fā)。第一級(jí)觸發(fā)檢測(cè)與第二級(jí)觸發(fā)檢測(cè)的時(shí)間間隔為一個(gè)工作時(shí)鐘周期,沒(méi)有觸發(fā)判斷死區(qū)。無(wú)死區(qū)電路依次檢測(cè)第三級(jí)觸發(fā),第四級(jí)觸發(fā)等等。直至多級(jí)觸發(fā)結(jié)束。因此,無(wú)死區(qū)電路可以實(shí)現(xiàn)無(wú)觸發(fā)判斷死區(qū)的復(fù)雜多級(jí)觸發(fā)。
【權(quán)利要求】
1.一種基于多階段流水線(xiàn)結(jié)構(gòu)的多級(jí)觸發(fā)的實(shí)現(xiàn)方法,其特征在于:首先設(shè)計(jì)一個(gè)觸發(fā)單元電路,實(shí)現(xiàn)多級(jí)觸發(fā)中的某一級(jí)觸發(fā),其中所述的觸發(fā)單元電路通過(guò)三階段流水線(xiàn)結(jié)構(gòu)實(shí)現(xiàn);然后,將每一個(gè)觸發(fā)單元電路復(fù)制為A、B、C三份,使三階段流水線(xiàn)結(jié)構(gòu)展開(kāi)組成無(wú)觸發(fā)判斷死區(qū)電路;無(wú)觸發(fā)判斷死區(qū)電路由三個(gè)觸發(fā)單元電路組成,在時(shí)刻T時(shí),A電路實(shí)現(xiàn)第一級(jí)觸發(fā)電路,處于流水線(xiàn)結(jié)構(gòu)中的檢測(cè)階段,B電路實(shí)現(xiàn)第二級(jí)觸發(fā)電路,處于流水線(xiàn)結(jié)構(gòu)中的就緒階段,C電路實(shí)現(xiàn)第三級(jí)觸發(fā)電路,處于流水線(xiàn)結(jié)構(gòu)中的加載階段;此時(shí),無(wú)觸發(fā)判斷死區(qū)電路的狀態(tài)是檢測(cè)第一級(jí)觸發(fā),當(dāng)?shù)谝患?jí)觸發(fā)響應(yīng)后,無(wú)觸發(fā)判斷死區(qū)電路進(jìn)入下一個(gè)時(shí)鐘周期,時(shí)刻為T(mén)+1,B電路實(shí)現(xiàn)第二級(jí)觸發(fā)電路,處于流水線(xiàn)結(jié)構(gòu)中的檢測(cè)階段,C電路實(shí)現(xiàn)第三級(jí)觸發(fā)電路,處于流水線(xiàn)結(jié)構(gòu)中的就緒階段,A電路實(shí)現(xiàn)第四級(jí)觸發(fā)電路,處于流水線(xiàn)結(jié)構(gòu)中的加載階段,此時(shí),無(wú)觸發(fā)判斷死區(qū)電路的狀態(tài)是檢測(cè)第二級(jí)觸發(fā);第一級(jí)觸發(fā)檢測(cè)與第二級(jí)觸發(fā)檢測(cè)的時(shí)間間隔為一個(gè)工作時(shí)鐘周期,沒(méi)有觸發(fā)判斷死區(qū);無(wú)死區(qū)電路依次檢測(cè)第三級(jí)觸發(fā),第四級(jí)觸發(fā);直至多級(jí)觸發(fā)結(jié)束;至此實(shí)現(xiàn)無(wú)觸發(fā)判斷死區(qū)的復(fù)雜多級(jí)觸發(fā)。
2.如權(quán)利要求1所述的一種基于多階段流水線(xiàn)結(jié)構(gòu)的多級(jí)觸發(fā)的實(shí)現(xiàn)方法,其特征在于:其中所述的三階段具體采用以下方法實(shí)現(xiàn):第一階段是加載觸發(fā)條件電路,用于從指令緩存單元中獲取觸發(fā)條件,指令緩存單元通過(guò)FPGA片上RAM實(shí)現(xiàn),不同級(jí)的觸發(fā)條件存儲(chǔ)于指令緩存單元的不同地址上,加載觸發(fā)條件電路通過(guò)向指令緩存單元發(fā)送請(qǐng)求指令,獲取相應(yīng)的觸發(fā)條件;第二階段是觸發(fā)檢測(cè)就緒電路,用于將觸發(fā)條件配置至觸發(fā)電路,使觸發(fā)電路進(jìn)入觸發(fā)檢測(cè)就緒狀態(tài);第三階段是觸發(fā)檢測(cè)電路,用于對(duì)觸發(fā)源信號(hào)進(jìn)行檢測(cè),并產(chǎn)生觸發(fā)響應(yīng)信號(hào)。
3.如權(quán)利要求1或2所述的一種基于多階段流水線(xiàn)結(jié)構(gòu)的多級(jí)觸發(fā)的實(shí)現(xiàn)方法,其特征在于:其中所述的三個(gè)階段中每一階段電路工作時(shí)長(zhǎng)至少一個(gè)時(shí)鐘周期,觸發(fā)單元電路至少為三個(gè)時(shí)鐘周期。
【文檔編號(hào)】G01R31/00GK104515918SQ201410705346
【公開(kāi)日】2015年4月15日 申請(qǐng)日期:2014年11月27日 優(yōu)先權(quán)日:2014年11月27日
【發(fā)明者】常路, 殷曄, 鄭義, 安佰岳, 王石記 申請(qǐng)人:北京航天測(cè)控技術(shù)有限公司