專利名稱:一種脈沖波形輸出方法和裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及數(shù)字脈沖波形技術(shù)領(lǐng)域,更具體的說是涉及一種脈沖波形輸出方法和
>J-U ρ α裝直。
背景技術(shù):
數(shù)字波形脈沖發(fā)生器是一種產(chǎn)生數(shù)字波形信號輸出的裝置,利用其輸出的波形信號可以實現(xiàn)多儀器之間的同步和控制。隨著電子技術(shù)的發(fā)展,基于可編程邏輯器件(FPGA,F(xiàn)ield — Programmable Gate Array)的脈沖波形發(fā)生器也應(yīng)運(yùn)而生,它可以采用硬件編程語言對其輸出的波形進(jìn)行調(diào)整,因此被廣泛應(yīng)用于科研、工業(yè)等各個領(lǐng)域中?;贔PGA的波形脈沖發(fā)生裝置可以通過對波形指令碼進(jìn)行解析,得到輸出波形,并按照波形輸出順序依次進(jìn)行輸出。但是,基于FPGA的波形脈沖發(fā)生裝置的波形輸出頻率受限于FPGA模塊的工作頻率,而FPGA模塊的工作頻率一般較低(一般FPGA模塊的工作頻率低于500MHZ),從而導(dǎo)致波形輸出的頻率較低,無法得到足夠高的脈沖頻率。如,當(dāng)FPGA模塊工作在500MHZ時,則2ns才能更新一個波形。因此,由于波形輸出頻率受限于該FPGA模塊的工作頻率,波形輸出頻率無法改變,使得波形輸出頻率較為固定,不能滿足某些特殊要求。例如,當(dāng)需要比較高的波形輸出頻率時,如大于該FPGA的工作頻率時,現(xiàn)有的脈沖波形輸出方式顯然不能滿足要求。
發(fā)明內(nèi)容
有鑒于此,本發(fā)明提供一種脈沖波形輸出方法和裝置,能夠靈活改變波形輸出頻率,從而滿足對波形輸出的特殊要求。為實現(xiàn)上述目的,本發(fā)明提供如下技術(shù)方案一種脈沖波形輸出方法,包括當(dāng)接收到第一時鐘脈沖時,將在第一時鐘脈沖周期內(nèi)依據(jù)波形指令解碼出的多個波形輸入到并行轉(zhuǎn)串行模塊;當(dāng)接收到第二時鐘脈沖時,依據(jù)預(yù)先設(shè)定的所述多個波形的輸出順序,從所述并行轉(zhuǎn)串行模塊中的多個波形中確定一個當(dāng)前待輸出波形,并將所述當(dāng)前待輸出波形輸出;其中,所述第二時鐘脈沖的頻率為所述第一時鐘脈沖的頻率的預(yù)設(shè)倍數(shù)。優(yōu)選的,所述多個波形的個數(shù)與所述預(yù)設(shè)倍數(shù)的值相同。優(yōu)選的,所述當(dāng)接收到第一時鐘脈沖時,將在第一時鐘脈沖周期內(nèi)依據(jù)波形指令解碼出的多個波形輸入到并行轉(zhuǎn)串行模塊,包括將第一時鐘脈沖周期內(nèi)依據(jù)波形指令解碼出的多個波形存儲到預(yù)設(shè)的存儲區(qū);當(dāng)接收到所述第一時鐘脈沖時,將所述存儲區(qū)中存儲的多個波形輸入到并行轉(zhuǎn)串is豐旲塊。優(yōu)選的,當(dāng)接收到第一時鐘脈沖時,依據(jù)預(yù)先設(shè)定的所述多個波形的輸出順序,將所述多個波形并行的輸入到所述并行轉(zhuǎn)串行模塊中的多個具有固有順序的輸入端;依據(jù)所述輸入端的固有順序,確定所述多個輸入端接收到的波形的輸出順序,當(dāng)接收到第二時鐘脈沖時,依據(jù)確定出的輸出順序,將當(dāng)前待輸出的波形從所述并行轉(zhuǎn)串行模塊輸出。另一方面本發(fā)明還提供了一種脈沖波形輸出裝置,包括解碼模塊、并行轉(zhuǎn)串行模塊和脈沖產(chǎn)生模塊;所述脈沖產(chǎn)生模塊,用于生成第一時鐘脈沖和第二時鐘脈沖,并將所述第一時鐘脈沖和第二時鐘脈沖輸出到所述并行轉(zhuǎn)串行模塊,其中,所述第二時鐘脈沖的頻率為所述第一時鐘脈沖的頻率的預(yù)設(shè)倍數(shù);所述解碼模塊,用于依據(jù)波形指令解碼波形,并在所述脈沖產(chǎn)生模塊產(chǎn)生第一時鐘脈沖時,將第一時鐘脈沖周期內(nèi)解碼出的多個波形輸入到所述并行轉(zhuǎn)串行模塊;所述并行轉(zhuǎn)串行模塊,用于當(dāng)接收到第一時鐘脈沖時,接收所述解碼模塊輸入的、多個波形,并當(dāng)接收到第二時鐘脈沖時,依據(jù)預(yù)先設(shè)定的所述多個波形的輸出順序,確定當(dāng)前待輸出波形,并將所述當(dāng)前待輸出波形輸出。優(yōu)選的,所述脈沖產(chǎn)生模塊產(chǎn)生第二脈沖的頻率與產(chǎn)生第一脈沖的頻率之比等于所述脈沖解碼模塊在第一時鐘脈沖周期內(nèi)產(chǎn)生的波形的個數(shù)。優(yōu)選的,所述解碼模塊還包括存儲區(qū);所述存儲區(qū),用于存儲所述解碼模塊在第一時鐘脈沖周期內(nèi)依據(jù)波形指令解碼出的多個波形,并當(dāng)在所述脈沖產(chǎn)生模塊產(chǎn)生第一時鐘脈沖時,將存儲的多個波形輸入到并行轉(zhuǎn)串行模塊。優(yōu)選的,所述解碼模塊具體為用于當(dāng)所述脈沖產(chǎn)生模塊產(chǎn)生第一時鐘脈沖時,將第一時鐘脈沖周期內(nèi)依據(jù)波形解碼指令解碼輸出的多個波形按照預(yù)先設(shè)定的波形輸出順序,并行輸入到所述并行轉(zhuǎn)串行模塊中的多個具有固有順序的輸入端;所述并行轉(zhuǎn)串行模塊具體為,用于依據(jù)所述輸入端的固有順序,確定所述多個輸入端接收到的波形的輸出順序,當(dāng)接收到第二時鐘脈沖時,依據(jù)確定出的輸出順序,將當(dāng)前待輸出的波形從所述并行轉(zhuǎn)串行模塊輸出。經(jīng)由上述的技術(shù)方案可知,與現(xiàn)有技術(shù)相比,本發(fā)明公開提供了一種脈沖波形輸出方法和裝置,該方法中通過在第一時鐘脈沖到達(dá)時將該第一時鐘脈沖周期內(nèi)解碼出的多個波形同時輸入到并行轉(zhuǎn)串行模塊,并在第二時鐘脈沖到達(dá)時,從該并行轉(zhuǎn)串行模塊中輸出一個確定出的當(dāng)前待輸出波形,從而在第一時鐘脈沖周期內(nèi)將并行解碼得到的多個波形實現(xiàn)串行輸出,由于第一時鐘脈沖周期內(nèi)得到的多個波形可以按照第二時鐘脈沖的頻率進(jìn)行串行輸出,且第一時鐘脈沖和第二時鐘脈沖的頻率比可以根據(jù)需要設(shè)定,從而實現(xiàn)了靈活改變波形輸出頻率的效果。
為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)提供的附圖獲得其他的附圖。圖I為本發(fā)明一種脈沖波形輸出方法的一個實施例的流程示意圖;圖2為本發(fā)明一種脈沖波形輸出方法的另一個實施例的流程示意圖3為本發(fā)明一種脈沖波形輸出裝置的一個實施例的結(jié)構(gòu)示意圖。
具體實施例方式下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護(hù)的范圍。本發(fā)明實施例公開了一種脈沖輸出方法和裝置,該方法當(dāng)接收到第一時鐘脈沖時,將在第一時鐘脈沖周期內(nèi)依據(jù)波形指令解碼出的多個波形輸入到并行轉(zhuǎn)串行模塊;當(dāng)接收到第二時鐘脈沖時,依據(jù)所述預(yù)先設(shè)定的多個波形的輸出順序,從所述并行轉(zhuǎn)串行模塊中的多個波形中確定一個當(dāng)前待輸出波形,并將所述當(dāng)前待輸出波形輸出。
其中,所述第二時鐘脈沖的頻率為所述第一時鐘脈沖的頻率的預(yù)設(shè)倍數(shù)。每接收到一個第二時鐘脈沖就觸發(fā)并行轉(zhuǎn)串行模塊輸出一個波形,當(dāng)設(shè)定第二時鐘脈沖的周期小于進(jìn)行波形解碼的第一時鐘脈沖的周期時,以第二時鐘脈沖來觸發(fā)波形輸出提高了波形輸出的頻率,而前端的解碼模塊等器件都可以工作在第一時鐘周期這樣一個較低的時鐘脈沖下。當(dāng)然也可以設(shè)定第二時鐘脈沖的周期大于第一時鐘脈沖的周期,從而降低波形輸出頻率,從而實現(xiàn)靈活調(diào)節(jié)波形輸出頻率的功能。參見圖1,示出了本發(fā)明一種脈沖波形輸出方法的一個實施例的流程示意圖,本實施例的方法可以應(yīng)用于基于FPGA的脈沖波形發(fā)生器、也可以應(yīng)用于其他類型的波形脈沖發(fā)生器。本實施例的方法包括步驟101 :當(dāng)接收到第一時鐘脈沖時,將在第一時鐘脈沖周期內(nèi)依據(jù)波形指令碼解碼出的多個波形輸入到并行轉(zhuǎn)串行模塊。該第一時鐘脈沖周期是指該第一時鐘脈沖的周期,也即相鄰兩個第一時鐘脈沖產(chǎn)生的時間間隔。一般的,脈沖發(fā)生器中依據(jù)波形指令碼進(jìn)行解碼得到的輸出波形(也稱為脈沖波形)是由解碼模塊來執(zhí)行的,但是解碼模塊自身的工作周期較大,使得該解碼模塊從調(diào)取波形指令碼到依據(jù)該波形指令碼解碼輸出單個波形的周期也較長。換言之,該解碼模塊的工作頻率較低,從而該解碼模塊對單個脈沖波形的解碼輸出頻率較低。為了能夠在解碼模塊的一個工作周期內(nèi)解碼出多個波形,可以采用多路并行解碼的方法,每路解碼出一個波形,從而可以在一個工作周期內(nèi)得到多個波形,雖然單個波形的解碼頻率沒有提高,但是該工作周期內(nèi)解碼出了多個波形,在該工作周期內(nèi)所有波形的平均解碼頻率提高。當(dāng)然,也可以采用流水線式的多級電路解碼方式進(jìn)行解碼,該種解碼方式將在后面的實施例中進(jìn)行詳細(xì)的描述。其中,在該第一時鐘脈沖的周期內(nèi)可以保證能夠依據(jù)一條波形指令碼解碼出與該波形指令碼對應(yīng)的輸出波形??蛇x的,該第一時鐘脈沖的頻率可以與該解碼模塊的工作頻率相同,也即該第一時鐘脈沖周期與該解碼模塊的工作周期相同。由于解碼模塊依據(jù)波形指令碼解碼得到單個波形的周期與該解碼模塊的工作周期相同,因此也可以說該第一時鐘脈沖周期等于依據(jù)波形指令碼解碼出波形的周期(時間),自然該第一時鐘脈沖的頻率與依據(jù)解碼指令解碼出單個波形的頻率相同。
當(dāng)該解碼模塊采用多路并行解碼時,如果該解碼模塊的工作周期與該第一時鐘脈沖周期相同,則在該第一時鐘脈沖周期依據(jù)波形指令碼解碼出的多個波形的個數(shù)與該解碼模塊并行解碼的解碼路數(shù)有關(guān)。例如,該解碼模塊采用4路并行解碼,則當(dāng)在一個第一時鐘脈沖周期內(nèi),這解碼模塊將并行解碼得到4個輸出波形。可以理解的是,盡管該解碼模塊采用多路并行解碼,并將這并行的多路解碼通道解碼出的多路波形同時輸入到并行轉(zhuǎn)串行模塊,但是輸入到該并行轉(zhuǎn)串行模塊的這多個波形從并行轉(zhuǎn)串行模塊輸出時也具有相應(yīng)的輸出順序,而這多個波形的輸出順序則與這多個波形所對應(yīng)波形指令碼輸入到該解碼模塊的輸入順序有關(guān)。與現(xiàn)有技術(shù)不同,為了能夠提高波形的輸出頻率,本發(fā)明中增設(shè)了并行轉(zhuǎn)串行模 塊,并當(dāng)系統(tǒng)接收到第一時鐘脈沖時,將第一時鐘脈沖周期內(nèi)依據(jù)波形指令碼解碼出的多個波形輸入到并行轉(zhuǎn)串行模塊。步驟102 :當(dāng)接收到第二時鐘脈沖時,依據(jù)預(yù)先設(shè)定的所述多個波形的輸出順序,從所述并行轉(zhuǎn)串行模塊中的多個波形中確定一個當(dāng)前待輸出波形,并將所述當(dāng)前待輸出波形輸出,其中,所述第二時鐘脈沖的頻率為所述第一時鐘脈沖的頻率的預(yù)設(shè)倍數(shù)。當(dāng)系統(tǒng)接收到第二時鐘脈沖時,依據(jù)該多個波形的輸出順序,從該并行轉(zhuǎn)串行模塊中的多個波形中確定一個當(dāng)前待輸出波形,并將該當(dāng)前待輸出波形從該并行轉(zhuǎn)串行模塊輸出,而當(dāng)下次再接收到該第二時鐘脈沖時,則繼續(xù)依據(jù)該并行轉(zhuǎn)串行模塊中剩余的波形的輸出順序,確定一當(dāng)前待輸出波形,并繼續(xù)將該波形輸出。其中,該第二時鐘脈沖的頻率為第一時鐘脈沖的頻率的預(yù)設(shè)倍數(shù)。該預(yù)設(shè)倍數(shù)具體為多少可以根據(jù)實際需要進(jìn)行設(shè)定。在為了提高波形的輸出頻率時,可以將該預(yù)設(shè)倍數(shù)設(shè)定為大于一,使得第二時鐘脈沖的頻率大于第一時鐘脈沖的頻率并保證該第二時鐘脈沖的頻率大于該解碼模塊的工作頻率,以保證最終輸出波形頻率提高。特別的,當(dāng)?shù)谝粫r鐘脈沖的頻率與該解碼模塊的工作頻率相同時,該第二時鐘脈沖頻率也是該解碼模塊工作頻率的預(yù)設(shè)倍數(shù)。另外,該第一時鐘脈沖周期也可以大于依據(jù)一條波形指令碼解碼出單個輸出波形的時間,但是只要保證該第二時鐘脈沖的周期小于依據(jù)一條波形指令碼解碼出單個波形的時間即可,這樣就可以提高波形的輸出效率。例如,第一時鐘脈沖的周期為4ns,而讀取一條波形指令碼并解碼出相應(yīng)的波形需要2ns,同時采用2路并行解碼,則在第一時鐘脈沖周期內(nèi)可以得到4個波形,因此在第一時鐘脈沖達(dá)到時,輸入到該并行轉(zhuǎn)串行模塊的波形個數(shù)可以為4個,此時設(shè)該第二時鐘脈沖的周期為1ns,則系統(tǒng)每隔Ins從該并行轉(zhuǎn)串行模塊輸出一個波形,輸出波形的周期大于依據(jù)波形指令碼解碼出相應(yīng)波形的時間,從而提高了波形輸出效率。上面是以提高波形輸出頻率為例進(jìn)行描述的,但是在實際應(yīng)用中也可以根據(jù)需要設(shè)定該第一時鐘脈沖的頻率和第二時鐘脈沖的頻率,從而達(dá)到降低輸出頻率的目的,從而可以達(dá)到靈活調(diào)整輸出頻率的作用。具體過程與上面提高輸出波形的方式類似,只不過需要將該第二時鐘脈沖的周期設(shè)定為大于依據(jù)波形指令碼解碼出相應(yīng)波形的時間。為了避免在第一時鐘脈沖周期內(nèi)輸入到該并行轉(zhuǎn)串行模塊的波形數(shù)量過多,當(dāng)下次接收到第一時鐘脈沖時,該并行轉(zhuǎn)串行模塊中仍有多個波形未輸出,可以將該第二時鐘脈沖的頻率與第一時鐘脈沖的頻率的比值設(shè)定為與該第一時鐘脈沖周期內(nèi)依據(jù)波形指令碼解碼出的波形個數(shù)的值相同,即第二時鐘脈沖的頻率是第一時鐘脈沖的頻率的預(yù)設(shè)倍數(shù),該預(yù)設(shè)倍數(shù)的值與該第一時鐘脈沖周期內(nèi)解碼出的波形個數(shù)的值相同。如,當(dāng)?shù)谝粫r鐘脈沖周期內(nèi)解碼出4個波形,則該第二時鐘脈沖的頻率是第一時鐘脈沖的頻率的4倍。本實施例中步驟101和步驟102可以反復(fù)執(zhí)行,且該步驟101和步驟102可以同時執(zhí)行。例如,當(dāng)?shù)谝粫r鐘脈沖的頻率為250MHZ,第二時鐘脈沖的頻率為1000MHZ時,則系統(tǒng)可能同時接收到第一時鐘脈沖和第二時鐘脈沖,則當(dāng)同時接收到第一時鐘脈沖和第二時鐘脈沖時,系統(tǒng)將同時執(zhí)行步驟101和步驟102的操作,即同時執(zhí)行將第一時鐘脈沖周期內(nèi)得到的多個波形輸入到并行轉(zhuǎn)串行模塊,并從多個波形中確定一當(dāng)前待輸出波形,并將該當(dāng)前待輸出波形從該并行轉(zhuǎn)串行模塊輸出的操作。需要說明的是,在實際應(yīng)用中,當(dāng)?shù)谝粫r鐘脈沖時刻接收到多個波形時,一般將多個波形在并行轉(zhuǎn)串行模塊中進(jìn)行緩存,當(dāng)接收到第二時鐘脈沖時,從緩存的波形中確定出當(dāng)前待輸出的一個波形,并將該波形輸出,這樣,當(dāng)同時接收到第一時鐘脈沖和第二時鐘脈沖時,則執(zhí)行將第一時鐘脈沖周期內(nèi)解碼出的多個波形并行輸入到并行轉(zhuǎn)串行模塊,同時,在上一個第一時鐘脈沖周期接收到的,且緩存在并行轉(zhuǎn)串行模塊中的波形中確定待輸出波形,并輸出該待輸出波形。本實施例中通過在系統(tǒng)中增設(shè)并行轉(zhuǎn)串行模塊,并將在第一時鐘脈沖周期內(nèi)得到的多個波形輸入到該并行轉(zhuǎn)串行模塊,進(jìn)而當(dāng)接收到第二時鐘脈沖時,依據(jù)該并行轉(zhuǎn)串行模塊中的多個波形的輸出順序確定出待輸出波形,并將該待輸出波形從該并行轉(zhuǎn)串行模塊輸出,通過設(shè)置該第一時鐘脈沖與第二時鐘脈沖的頻率,可以提高波形輸出頻率,也可以降低波形輸出頻率,從而提高了波形輸出的靈活性,適應(yīng)前后端工作元件的性能。 在本實施例中可以將第一時鐘脈沖周期內(nèi)解碼出的多個波形存儲到一預(yù)設(shè)的存儲區(qū),該存儲區(qū)可以理解為一緩存區(qū),具體的可以在解碼模塊內(nèi)設(shè)置一緩存區(qū)。將第一時鐘脈沖周期內(nèi)依據(jù)波形指令碼解碼出的多個波形存儲在該預(yù)設(shè)存儲區(qū)內(nèi),當(dāng)接收到第一時鐘脈沖時,將該存儲區(qū)中存儲的多個波形并行輸入到并行轉(zhuǎn)串行模塊。例如,當(dāng)該第一時鐘脈沖周期大于讀取波形指令碼并依據(jù)波形指令碼解碼得到輸出波形的時鐘時,則可以在未到第一時鐘脈沖時,將解碼出的輸出波形在該存儲區(qū)進(jìn)行存儲。本發(fā)明中除了可以采用多路并行解碼,可以第一時鐘脈沖周期內(nèi)得到多個波形夕卜,還可以采用一種流水線式方式的解碼,也就是說是將一條波形指令碼的解碼過程分成多步來進(jìn)行,每一級電路只處理其中的一步,這樣多級電路同時處理流水線上的多個指令,實現(xiàn)在解析指令的同時輸出波形,使得以前在多個時鐘周期內(nèi)才能解析的一條指令縮短到平均一個時鐘周期以內(nèi)。在當(dāng)解碼模塊采用該種方式進(jìn)行波形解碼時,也需要在該解碼模塊中設(shè)置一存儲區(qū),從而在接收到第一時鐘脈沖前,將解碼出的波形進(jìn)行存儲。該種流水線式波形解碼方法本申請人正在作為另一個獨(dú)立的專利另行申請,為了更加詳細(xì)地體現(xiàn)出本發(fā)明在一個時鐘周期內(nèi)可以得到多個波形,參見圖2,示出了本發(fā)明一種脈沖波形輸出方法另一實施例的流程示意圖,包括步驟201 :解析獲得的當(dāng)前波形控制指令,得到當(dāng)前波形控制指令攜帶的波形解碼指令的存儲地址,以及下一條波形控制指令的存儲地址。根據(jù)波形控制指令的存儲地址獲得對應(yīng)的波形控制指令,即當(dāng)前波形控制指令,解析所述當(dāng)前波形控制指令,得到當(dāng)前波形控制指令對應(yīng)波形解碼指令的存儲地址,以及、下一條波形控制指令的存儲地址。其中,波形控制指令中可以包含三部分信息,分別是該波形控制指令所生成的波形解碼指令的存儲地址、循環(huán)信息,以及循環(huán)次數(shù)信息。當(dāng)所述循環(huán)信息為循環(huán)執(zhí)行信息時,則下一條波形控制指令的存儲地址為當(dāng)前波形控制指令的存儲地址加I。所述循環(huán)次數(shù)信息為波形控制指令的循環(huán)執(zhí)行次數(shù);當(dāng)所述循環(huán)信息為不循環(huán)執(zhí)行當(dāng)前波形控制指令的信息時,則將所述循環(huán)次數(shù)信息替換為下一條波形控制指令的存儲地址。步驟202 :解析根據(jù)波形解碼指令的存儲地址獲取的波形解碼指令,解析該波形解碼指令得到輸出波形,并將該解碼出的輸出波形存儲到指定存儲區(qū)進(jìn)入步驟203 ;同時,依據(jù)下一條波形控制指令的存儲地址獲得的下一條波形控制指令作為當(dāng)前波形控制指令,返回執(zhí)行步驟201。 解析當(dāng)前波形控制指令所得到的波形解碼指令的存儲地址為地址塊地址,包含波形指令所在存儲區(qū)域的起始地址及地址塊長度,存儲模塊不能直接利用地址塊進(jìn)行尋址,故需要將該地址塊信息解析成存儲模塊能夠直接進(jìn)行尋址的尋址地址,進(jìn)而根據(jù)該尋址地址獲得波形指令。解析該波形指令,得到波形。與此同時,依據(jù)下一條波形控制指令的存儲地址獲得下一條波形控制指令,作為當(dāng)前波形控制指令,返回執(zhí)行步驟S201,直到所有的波形控制指令都解析完。其中,在圖I所示實施例的波形指令碼包括本實施例中所處的波形控制指令和波形解碼指令。步驟203 :將在第一時鐘脈沖的周期內(nèi)解碼出的多個波形,存入到指定存儲區(qū),該多個波形具有預(yù)先設(shè)定的輸出順序。步驟204:當(dāng)接收到第一時鐘脈沖時,將所述存儲區(qū)中存儲的多個波形并行輸入到并行轉(zhuǎn)串行模塊。步驟205 :當(dāng)接收到第二時鐘脈沖時,依據(jù)預(yù)先設(shè)定的所述多個波形的輸出順序,從所述并行轉(zhuǎn)串行模塊中的多個波形中確定一個當(dāng)前待輸出波形,并將該當(dāng)前待輸出波形輸出,其中,所述第二時鐘脈沖的頻率為所述第一時鐘脈沖的頻率的預(yù)設(shè)倍數(shù)。其中,步驟204和步驟205的執(zhí)行過程與圖I所示實施例中的操作過程類似,在此不再贅述。在以上圖I或圖2任一實施例中,將第一時鐘脈沖周期內(nèi)解碼出的多個波形并行輸入到并行轉(zhuǎn)串行模塊時,可以依據(jù)該多個波形的輸出順序,將該多個波形分別從該并行轉(zhuǎn)串行模塊的多個具有序號排列順序的輸入端輸入到該并行轉(zhuǎn)串行模塊。進(jìn)而依據(jù)該輸入端的序號排列順序,確定各個輸入端接收到的波形的輸出順序。其中,該并行轉(zhuǎn)串行模塊的各個輸入端具有固定順序,例如設(shè)并行轉(zhuǎn)串行模塊具有三個輸入端,分別為輸入端I、輸入端2和輸入端3,在確定待輸出波形時,依據(jù)并行轉(zhuǎn)串行模塊的輸入端的固有順序,確定各個輸入端接收到的波形的輸出順序,當(dāng)接收到第二時鐘脈沖時,依據(jù)確定出的輸出順序,將當(dāng)前待輸出的波形從所述并行轉(zhuǎn)串行模塊的串行輸出端輸出。通常該并行轉(zhuǎn)串行模塊具有多個輸入端,而將第一時鐘脈沖周期內(nèi)解碼出的多個波形并行輸入到該并行轉(zhuǎn)串行模塊時,則是依據(jù)波形的個數(shù)從并行轉(zhuǎn)串行模塊中選取相應(yīng)個數(shù)的輸入端,將多個波形并行輸入到并行轉(zhuǎn)串行模塊時,將在該并行轉(zhuǎn)串行模塊中選擇出的輸入端中的每個輸入端輸入一個波形。同時,選出的輸入端具有固定排列順序,該輸入端的固定順序與波形的輸出順序相對應(yīng)。例如,當(dāng)解碼模塊采用4路并行解碼,在第一時鐘脈沖周期內(nèi)解碼出4個波形,而該并行轉(zhuǎn)串行模塊上具有4個輸入端口(輸入引腳),則可以將這4路并行解碼的輸出端分別與該并行轉(zhuǎn)串行端口的4個輸入端依次相連,且如果4路并行解碼出的4個波形分別為波形I、波形2、波形3和波形4,且這四個波形的目標(biāo)輸出順序也是從第I路解碼出的波形到第4路解碼輸出的波形,即波形輸出順序為波形I、波形2、波形3、波形4,將這4個波形并行的從該并行轉(zhuǎn)串行模塊的四個輸入端輸入,且波形I從輸入端I輸入并行轉(zhuǎn)串行模塊、波形2從輸入端2輸入并行轉(zhuǎn)串行模塊,波形3從輸入端3輸入并行轉(zhuǎn)串行模塊,波形4從輸入端4輸入并行轉(zhuǎn)串行模塊。當(dāng)接收到第二時鐘脈沖時,則將輸入端I輸入的波形I作為當(dāng)前待輸出波形,并將波形I從該并行轉(zhuǎn)串行模塊輸出,再次接收到第二時鐘脈沖時,則將輸入端2輸入的波形2作為待輸出波形,并將波形2從并行轉(zhuǎn)串行模塊輸出,依次類推。 當(dāng)然,也可以依據(jù)該解碼出的多個波形的輸出順序,將這多個波形按照序號排列順序的逆序從多個輸入端輸入,如將波形I從輸入端4輸入并行轉(zhuǎn)串行模塊,將波形2從輸入端3輸入并行轉(zhuǎn)串行模塊,依次類推,當(dāng)接收到第二時鐘脈沖時,則將從輸入端I輸入到并行轉(zhuǎn)串行模塊的波形4輸出,再次接收到第二時鐘脈沖時,則將從該輸入端2輸入到并行轉(zhuǎn)串行模塊的波形3輸出,依次類推。為了能夠清楚的理解本發(fā)明的方案,下面以一具體實例對本發(fā)明的脈沖波形輸出方法進(jìn)行介紹,為了方便描述以基于可編程邏輯器件(FPGA, Field — Programmable GateArray)的脈沖波形發(fā)生裝置為例,基于FPGA的脈沖發(fā)生器中由于FPGA模塊具有一定的工作頻率,該FPGA模塊包括解碼模塊,該解碼模塊的工作頻率與該FPGA模塊的工作頻率一致,而該脈沖波形發(fā)生裝置的輸出波形的頻率也受限于該FPGA的工作頻率,一般波形輸出頻率與該FPGA的輸出頻率一致,從而不能靈活改變波形輸出頻率。即使采用多路并行處理可以在該解碼模塊的一個工作周期內(nèi)得到多個波形,但是波形輸出時的輸出頻率卻仍然與該解碼模塊的工作頻率相同,無法提高波形輸出頻率。本發(fā)明中通過將解碼出的波形并行輸入并行轉(zhuǎn)串行模塊后串行輸出,來提高該脈沖波形的輸出頻率,假設(shè)解碼模塊的工作頻率為250MHZ,則該解碼模塊的一個工作周期為4ns,設(shè)該解碼模塊在一個工作周期內(nèi)可以并行解碼出4個波形,同時設(shè)該第一時鐘脈沖的頻率為250MHZ,且該第二時鐘脈沖的頻率為1000MHZ,則在第一時鐘脈沖的周期(4ns)內(nèi)依據(jù)波形指令碼解碼出的波形數(shù)量為4個,當(dāng)?shù)谝粫r鐘脈沖到達(dá)時,則將該4個波形并行的從并行轉(zhuǎn)串行模塊的4個輸入引腳輸入到并行轉(zhuǎn)串行模塊中,并依據(jù)并行轉(zhuǎn)串行模塊的4個引腳的固有順序,確定這4個輸入引腳接收到的波形的輸出順序,即從引腳I輸入的波形的輸出順序為第一個輸出,從引腳2輸入的波形的輸出順序為第二個輸出,從引腳3輸入的波形的輸出順序為第三個輸出,從引腳4輸入的波形的輸出順序為第四個輸出,并依此循環(huán)。當(dāng)?shù)诙r鐘脈沖到達(dá)時,則將依據(jù)這4個波形輸入并行轉(zhuǎn)串行模塊時的輸入端的引腳順序,從該并行轉(zhuǎn)串行模塊接收到的多個波形中,選擇從一個引腳輸入的波形作為當(dāng)前待輸出波形,并將該待輸出波形輸出,再次接收到第二時鐘脈沖時,則從該并行轉(zhuǎn)串行模塊的多個波形中選擇從下一個輸入引腳輸入的波形作為待輸出波形,并將該待輸出波形輸出,由于該第二時鐘脈沖的頻率為1000MHZ,則波形的輸出頻率也為1000MHZ,遠(yuǎn)大于以解碼模塊的工作頻率來進(jìn)行波形輸出的頻率,從而提高了波形的輸出頻率。可見,本發(fā)明中波形的輸出頻率由并行轉(zhuǎn)串行模塊的第二時鐘脈沖的頻率決定,從而起到了靈活改變波形輸出頻率的作用。對應(yīng)本發(fā)明的方法,本發(fā)明還提供了一種脈沖波形輸出裝置,參見圖3,示出了本發(fā)明一種脈沖波形輸出裝置一個實施例的結(jié)構(gòu)示意圖,本實施例中該脈沖波形輸出裝置包括脈沖產(chǎn)生模塊I、解碼模塊2和并行轉(zhuǎn)串行模塊3。其中,脈沖產(chǎn)生模塊1,用于生成第一時鐘脈沖和第二時鐘脈沖,并將所述第一時鐘脈沖和第二時鐘脈沖輸出到所述并行轉(zhuǎn)串行模塊,其中,所述第二時鐘脈沖的頻率為所述第一時鐘脈沖的頻率的預(yù)設(shè)倍數(shù)。該解碼模塊2,用于依據(jù)波形指令解碼波形,并在脈沖產(chǎn)生模塊產(chǎn)生第一時鐘脈沖時,將第一時鐘脈沖周期內(nèi)解碼出的多個波形輸入到并行轉(zhuǎn)串行模塊。
該并行轉(zhuǎn)串行模塊3,用于當(dāng)接收到第一時鐘脈沖時,接收解碼模塊輸入的多個波形,并當(dāng)接收到第二時鐘脈沖時,依據(jù)預(yù)先設(shè)定的所述多個波形的輸出順序,確定當(dāng)前待輸出波形,并將當(dāng)前待輸出波形輸出。其中,所述脈沖產(chǎn)生單元I包括第一時鐘脈沖輸出單元11和第二時鐘脈沖輸出單元12。該第一時鐘脈沖輸出單元11用于輸出第一時鐘脈沖,并將輸出的第一時鐘脈沖輸入到所述解碼模塊和所述并行轉(zhuǎn)串行模塊;該第二時鐘脈沖輸出單元12用于輸出第二時鐘脈沖,并將輸出的第二時鐘脈沖輸入到所述并行轉(zhuǎn)串行模塊。為了避免輸入到并行轉(zhuǎn)串行模塊的波形不能及時輸出,脈沖產(chǎn)生模塊產(chǎn)生第二脈沖的頻率與產(chǎn)生第一脈沖的頻率之比等于所述脈沖解碼模塊在第一時鐘脈沖周期內(nèi)產(chǎn)生的波形的個數(shù)。例如,所述脈沖產(chǎn)生單元中第二時鐘脈沖輸出單元輸出的第二時鐘脈沖的頻率為第一時鐘脈沖輸出單元輸出第一時鐘脈沖的頻率的5倍時,則當(dāng)接收到第一時鐘脈沖周期內(nèi)解碼出的波形個數(shù)為5個,當(dāng)接收到第一時鐘脈沖時,輸入到該并行轉(zhuǎn)串行模塊的波形的個數(shù)為5個。其中,該脈沖產(chǎn)生單元輸出第一時鐘脈沖的頻率可以根據(jù)需要設(shè)定。可選的,該第一時鐘脈沖周期與該解碼模塊讀取一條波形指令碼并依據(jù)該條波形指令碼解碼出一個波形的時間相同,即該第一時鐘脈沖的頻率與該解碼模塊的工作頻率相同,則在第一時鐘周期內(nèi),如果解碼模塊采用多路并行解碼,則可以解碼出與該多路同樣個數(shù)的波形,如采用5路并行解碼,則可以在第一時鐘脈沖周期內(nèi)每路解碼出一個波形,從而得到5個波形。當(dāng)該解碼模塊采用流水線式解碼時,由于可以縮短解碼模塊的波形平均解碼頻率,則在第一時鐘周期內(nèi)也可以得到多個波形。當(dāng)然,該脈沖產(chǎn)生單元輸出第一時鐘脈沖周期也可以大于該解碼模塊對一條指令碼進(jìn)行解碼并解碼出波形的時間。該第二時鐘脈沖的頻率也可以根據(jù)需要設(shè)定,一般的如果需要提高波形的輸出頻率,則可以令該第二時鐘脈沖的周期小于該解碼模塊讀取一條波形指令并解碼出與該條波形指令對應(yīng)的波形的時間,從而使得該第二時鐘脈沖的頻率大于該解碼模塊的工作頻率,從而依據(jù)該第二時鐘脈沖的頻率從該并行轉(zhuǎn)串行模塊向外輸出波形,則提高了波形的輸出頻率。
進(jìn)一步的,所述解碼模塊還包括存儲區(qū);該存儲區(qū),用于存儲所述解碼模塊在第一時鐘脈沖周期內(nèi)依據(jù)波形指令解碼出的多個波形,并當(dāng)在所述脈沖產(chǎn)生模塊產(chǎn)生第一時鐘脈沖時,將存儲的多個波形輸入到并行轉(zhuǎn)串行模塊。該存儲區(qū)可以理解為一個緩沖存儲區(qū),在接收到第一時鐘脈沖之前,將該解碼模塊依據(jù)波形指令碼解碼出的波形緩存在該解碼模塊的存儲區(qū)內(nèi)。當(dāng)?shù)竭_(dá)第一時鐘脈沖時,該解碼模塊將第一時鐘脈沖周期內(nèi)解碼出的多個波形通過該解碼模塊上多個輸出端輸入到該并行轉(zhuǎn)串行模塊的多個輸入端。因此,該解碼模塊具體為用于當(dāng)所述脈沖產(chǎn)生模塊產(chǎn)生第一時鐘脈沖時,將第一時鐘脈沖周期內(nèi)依據(jù)波形解碼指令解碼輸出的多個波形按照預(yù)先設(shè)定的波形輸出順序,并行輸入到所述并行轉(zhuǎn)串行模塊中的多個具有固有順序的輸入端;對應(yīng)的,并行轉(zhuǎn)串行模塊具體為,用于依據(jù)所述輸入端的固有順序,確定所述多個輸入端接收到的波形的輸出順序,當(dāng)接收到第二時鐘脈沖時,依據(jù)確定出的輸出順序,將當(dāng)前待輸出的波形從所述并行轉(zhuǎn)串行模塊輸出。
本說明書中各個實施例采用遞進(jìn)的方式描述,每個實施例重點(diǎn)說明的都是與其他實施例的不同之處,各個實施例之間相同相似部分互相參見即可。對于實施例公開的裝置而言,由于其與實施例公開的方法相對應(yīng),所以描述的比較簡單,相關(guān)之處參見方法部分說明即可。對所公開的實施例的上述說明,使本領(lǐng)域?qū)I(yè)技術(shù)人員能夠?qū)崿F(xiàn)或使用本發(fā)明。對這些實施例的多種修改對本領(lǐng)域的專業(yè)技術(shù)人員來說將是顯而易見的,本文中所定義的一般原理可以在不脫離本發(fā)明的精神或范圍的情況下,在其它實施例中實現(xiàn)。因此,本發(fā)明將不會被限制于本文所示的這些實施例,而是要符合與本文所公開的原理和新穎特點(diǎn)相一致的最寬的范圍。
權(quán)利要求
1.一種脈沖波形輸出方法,其特征在于,包括 當(dāng)接收到第一時鐘脈沖時,將在第一時鐘脈沖周期內(nèi)依據(jù)波形指令解碼出的多個波形輸入到并行轉(zhuǎn)串行模塊; 當(dāng)接收到第二時鐘脈沖時,依據(jù)預(yù)先設(shè)定的所述多個波形的輸出順序,從所述并行轉(zhuǎn)串行模塊中的多個波形中確定ー個當(dāng)前待輸出波形,并將所述當(dāng)前待輸出波形輸出; 其中,所述第二時鐘脈沖的頻率為所述第一時鐘脈沖的頻率的預(yù)設(shè)倍數(shù)。
2.根據(jù)權(quán)利要求I所述的方法,其特征在于,所述多個波形的個數(shù)與所述預(yù)設(shè)倍數(shù)的值相同。
3.根據(jù)權(quán)利要求I所述的方法,其特征在于,所述當(dāng)接收到第一時鐘脈沖時,將在第一時鐘脈沖周期內(nèi)依據(jù)波形指令解碼出的多個波形輸入到并行轉(zhuǎn)串行模塊,包括 將第一時鐘脈沖周期內(nèi)依據(jù)波形指令解碼出的多個波形存儲到預(yù)設(shè)的存儲區(qū); 當(dāng)接收到所述第一時鐘脈沖時,將所述存儲區(qū)中存儲的多個波形輸入到并行轉(zhuǎn)串行模塊。
4.根據(jù)權(quán)利要求I或3所述的方法,其特征在干,當(dāng)接收到第一時鐘脈沖時,依據(jù)預(yù)先設(shè)定的所述多個波形的輸出順序,將所述多個波形并行的輸入到所述并行轉(zhuǎn)串行模塊中的多個具有固有順序的輸入端; 依據(jù)所述輸入端的固有順序,確定所述多個輸入端接收到的波形的輸出順序,當(dāng)接收到第二時鐘脈沖時,依據(jù)確定出的輸出順序,將當(dāng)前待輸出的波形從所述并行轉(zhuǎn)串行模塊輸出。
5.一種脈沖波形輸出裝置,其特征在于,包括解碼模塊、并行轉(zhuǎn)串行模塊和脈沖產(chǎn)生模塊; 所述脈沖產(chǎn)生模塊,用于生成第一時鐘脈沖和第二時鐘脈沖,并將所述第一時鐘脈沖和第二時鐘脈沖輸出到所述并行轉(zhuǎn)串行模塊,其中,所述第二時鐘脈沖的頻率為所述第一時鐘脈沖的頻率的預(yù)設(shè)倍數(shù); 所述解碼模塊,用于依據(jù)波形指令解碼波形,并在所述脈沖產(chǎn)生模塊產(chǎn)生第一時鐘脈沖時,將第一時鐘脈沖周期內(nèi)解碼出的多個波形輸入到所述并行轉(zhuǎn)串行模塊; 所述并行轉(zhuǎn)串行模塊,用于當(dāng)接收到第一時鐘脈沖時,接收所述解碼模塊輸入的多個波形,并當(dāng)接收到第二時鐘脈沖時,依據(jù)預(yù)先設(shè)定的所述多個波形的輸出順序,確定當(dāng)前待輸出波形,并將所述當(dāng)前待輸出波形輸出。
6.根據(jù)權(quán)利要求5所述的裝置,其特征在于,所述脈沖產(chǎn)生模塊產(chǎn)生第二脈沖的頻率與產(chǎn)生第一脈沖的頻率之比等于所述脈沖解碼模塊在第一時鐘脈沖周期內(nèi)產(chǎn)生的波形的個數(shù)。
7.根據(jù)權(quán)利要求5所述的裝置,其特征在于,所述解碼模塊還包括存儲區(qū); 所述存儲區(qū),用于存儲所述解碼模塊在第一時鐘脈沖周期內(nèi)依據(jù)波形指令解碼出的多個波形,并當(dāng)在所述脈沖產(chǎn)生模塊產(chǎn)生第一時鐘脈沖時,將存儲的多個波形輸入到并行轉(zhuǎn)串行模塊。
8.根據(jù)權(quán)利要求5或7所述的裝置,其特征在于,所述解碼模塊具體為用于當(dāng)所述脈沖產(chǎn)生模塊產(chǎn)生第一時鐘脈沖時,將第一時鐘脈沖周期內(nèi)依據(jù)波形解碼指令解碼輸出的多個波形按照預(yù)先設(shè)定的波形輸出順序,并行輸入到所述并行轉(zhuǎn)串行模塊中的多個具有固有順序的輸入端; 所述并行轉(zhuǎn)串行模塊具體為,用于依據(jù)所述輸入端的固有順序,確定所述多個輸入端接收到的波形的輸出順序,當(dāng)接收到第二時鐘脈沖時,依據(jù)確定出的輸出順序,將當(dāng)前待輸出的波形從所述并行轉(zhuǎn)串行模塊輸出?!?br>
全文摘要
本發(fā)明公開了一種脈沖波形輸出方法和裝置,該方法包括當(dāng)接收到第一時鐘脈沖時,將在第一時鐘脈沖周期內(nèi)依據(jù)波形指令解碼出的多個波形輸入到并行轉(zhuǎn)串行模塊;當(dāng)接收到第二時鐘脈沖時,依據(jù)預(yù)先設(shè)定所述多個波形的輸出順序,從所述并行轉(zhuǎn)串行模塊中的多個波形中確定一個當(dāng)前待輸出波形,并將所述當(dāng)前待輸出波形輸出;其中,所述第二時鐘脈沖的頻率為所述第一時鐘脈沖的頻率的預(yù)設(shè)倍數(shù)。利用該方法進(jìn)行波形輸出時,可以使得波形輸出頻率具有可調(diào)性,從而提高波形輸出的靈活性。
文檔編號H03K3/64GK102739203SQ20121023955
公開日2012年10月17日 申請日期2012年7月11日 優(yōu)先權(quán)日2012年7月11日
發(fā)明者徐南陽, 杜江峰, 王梓翔, 種波, 榮星 申請人:中國科學(xué)技術(shù)大學(xué)