當(dāng)前位置:首頁 > EDA > 電子設(shè)計(jì)自動(dòng)化
[導(dǎo)讀]本文介紹的位同步時(shí)鐘的提取方案,原理簡單且同步速度較快。整個(gè)系統(tǒng)采用VerilogHDL語言編寫,并可以在CPLD上實(shí)現(xiàn)。

引言

    異步串行通信是現(xiàn)代電子系統(tǒng)中最常用的數(shù)據(jù)信息傳輸方式之一,一般情況下,為了能夠正確地對異步串行數(shù)據(jù)進(jìn)行發(fā)送和接收,就必須使其接收與發(fā)送的碼元同步,位同步時(shí)鐘信號不僅可用來對輸入碼元進(jìn)行檢測以保證收發(fā)同步,而且在對接收的數(shù)字碼元進(jìn)行各種處理等過程中,也可以為系統(tǒng)提供一個(gè)基準(zhǔn)的同步時(shí)鐘。

    本文介紹的位同步時(shí)鐘的提取方案,原理簡單且同步速度較快。整個(gè)系統(tǒng)采用VerilogHDL語言編寫,并可以在CPLD上實(shí)現(xiàn)。

位同步時(shí)鐘的提取原理

    本系統(tǒng)由一個(gè)跳變沿捕捉模塊、一個(gè)狀態(tài)寄存器和一個(gè)可控計(jì)數(shù)器共三部分組成,整個(gè)如圖1所示,其中data_in是輸入系統(tǒng)的串行信號,clock是頻率為串行信號碼元速率2N倍的高精度時(shí)鐘信號,pulse_out是系統(tǒng)產(chǎn)生的與輸入串行信號每個(gè)碼元位同步的脈沖信號,即位同步時(shí)鐘。

系統(tǒng)的原理框圖

    跳變沿捕捉模塊的輸入也就是整個(gè)的輸入data_in和clock。當(dāng)data_in發(fā)生跳變時(shí),無論是上升沿或是下降沿,捕捉模塊都將捕捉所發(fā)生的這次跳變,并產(chǎn)生一個(gè)脈沖信號clear,這個(gè)clear信號所反應(yīng)的就是輸入信號發(fā)生跳變的時(shí)刻。然后以它為基準(zhǔn),就可以有效地提取輸入串行信號的同步時(shí)鐘。

    狀態(tài)寄存器有兩個(gè)輸入,分別接跳變沿捕捉模塊的輸出clear和可控計(jì)數(shù)器的輸出pulse_out,當(dāng)clear信號的上升沿到來時(shí),此狀態(tài)寄存器的輸出k被置1,之后在pulse_out和k信號本身的控制下,k在pulse_out和k信號上產(chǎn)生一個(gè)脈沖之后被置0,這個(gè)k為一般連接到可控計(jì)數(shù)器的控制端。

    可控計(jì)數(shù)器是??勺兊挠?jì)數(shù)器,在k信號的控制下可以對clock信號進(jìn)行模為N-2或2N的計(jì)數(shù),其三個(gè)輸入分別接跳變沿捕捉模塊的輸出clear、狀態(tài)寄存器的輸出k和時(shí)鐘clock。其中clear信號可以對計(jì)數(shù)器進(jìn)行異步清零,k信號可選擇計(jì)數(shù)的模,當(dāng)k=1時(shí),計(jì)數(shù)器的模為N-2,計(jì)數(shù)滿N-2后即產(chǎn)生輸出脈沖pulse_out,當(dāng)k=0時(shí),計(jì)數(shù)器的模為2N,計(jì)數(shù)滿2N時(shí),產(chǎn)生輸出脈沖pulse_out。

    整個(gè)系統(tǒng)工作時(shí),當(dāng)輸入信號data_in發(fā)生跳變時(shí),跳變沿捕捉將可以捕捉到這次跳變,并產(chǎn)生一個(gè)脈沖信號clear,此clear信號可以將可控計(jì)數(shù)器的計(jì)數(shù)值清零,同時(shí)將狀態(tài)寄存器的輸出k置1,并送入可控計(jì)數(shù)器中,以使計(jì)數(shù)器進(jìn)行模塊為N-2的計(jì)數(shù),待計(jì)滿后,便可輸出脈沖信號pulse_out,此信號一方面可作為整個(gè)系統(tǒng)輸出的位同步時(shí)鐘信號,另一方面,它也被接進(jìn)了狀態(tài)寄存器,以控制其輸出k在計(jì)數(shù)器完成N-2的計(jì)數(shù)后就變?yōu)?,并在沒有clear脈沖信號時(shí)使K保持為0,從而使可控計(jì)數(shù)器的模保持為2N,直到輸入信號data_in出現(xiàn)新的跳變沿并產(chǎn)生新的clear脈沖信號,由以上原理可見,在輸入信號為連“1”或連“0”的情況下,只要系統(tǒng)使用的時(shí)鐘信號足夠精確,就可以保證在一定時(shí)間里輸出滿足要求的位同步時(shí)鐘,而在輸入信號發(fā)生跳變時(shí),系統(tǒng)又會(huì)捕捉下這個(gè)跳變沿并以此為基準(zhǔn)輸出位同步時(shí)鐘。

位同步時(shí)鐘的提取

    本系統(tǒng)包括三個(gè)部分,一是采用VerilogHDL語言編寫程序,第二步再將每個(gè)部分作為一個(gè)模塊(module)來編寫,最后通過元件例化的方法將三個(gè)模塊連接起來,以完成這個(gè)整個(gè)系統(tǒng)的設(shè)計(jì)。

    下面是跳變沿捕捉模塊的部分程序,其中Int0為串行輸入信號,PCclk為輸入系統(tǒng)的高精度時(shí)鐘信號,本模塊的輸出Pcout對應(yīng)于圖1中的clear信號,它同時(shí)又接入狀態(tài)寄存器模塊的Psclr和可控計(jì)數(shù)器模塊的clr。其仿真結(jié)構(gòu)如圖2所示。

仿真結(jié)構(gòu)

跳變沿捕捉模塊的部分程序如下:

module PcheckCapture (PCout,Int0,PCclk);

……

reg PCtemp1,PCtemp2;

always@(posedge PCclk) begin

PCtemp1<=Int0;

PCtemp2<=PCtemp1;

end

assign PCout="PCtemp1"^PCtemp2;

……

    狀態(tài)寄存器模塊的部分程序如下,其中輸入信號Psclr來自跳變沿捕捉模塊,另一個(gè)輸入信號Pss則來自可控計(jì)數(shù)器的輸出s對應(yīng)圖1中的pulse_out,輸出信號Psout對應(yīng)圖1中的k;

module PcheckSreg (Psout,Pss,Psclr);

……

wire Pstemp;

assign Pstemp=~(Pss&Psout);

always@(posedge Pstemp or posedge Psclr) begin

if(Psclr==1b1)Psout<=1;

else Psout<=~Psout;

end

……

    下面是可控計(jì)數(shù)器模塊的部分程序,其中三個(gè)輸入信號k、clr、clk分別對應(yīng)于圖1中的k、clear、clock,輸出信號s對應(yīng)于圖1中的輸出信號pulse_out;

module PcheckCoumter (s,k,clr,clk);

……

always@(posedge clk or posedge clr)

begin

if(clr==1)begin

s=0;

cnt=0;

end

else begin

if(k==0) begin

if(cnt==2N-1)begin

cnt=0;

s=1;

end;

else begin

cnt=cnt+1;

s=0;

end

end

else begin

if(cnt==N-2)begin cnt="0";

s=1;

end

else begin

cnt=cnt+1;

s=0;

end

………

    在頂層模塊中,應(yīng)對三個(gè)模塊進(jìn)行例化,并在導(dǎo)線相連接,以構(gòu)成一個(gè)完整的系統(tǒng),此模塊的程序如下:

modulePcheckTop (PTout,PTint,PTclk);

inout PTout;

input PTint,PTclk;

PcheckCapture a (clear,PTint,PTclk);

PcheckCounter b (PTout,k,clear,PTclk);

PcheckSreg

c(k,PTout,clear);

endmodule

    圖3為整個(gè)系統(tǒng)的仿真結(jié)果。

整個(gè)系統(tǒng)的仿真結(jié)果

結(jié)束語

    本位同步時(shí)鐘提取方案已在CPLD器件上進(jìn)行了仿真實(shí)現(xiàn),通過以上的分析可知,本位同步時(shí)鐘的提取方案具有結(jié)構(gòu)簡單、節(jié)省硬件資源、同步建立時(shí)間短等優(yōu)點(diǎn),在輸入信號有一次跳變后,系統(tǒng)出現(xiàn)連“1”連“0”,或信號中斷時(shí),此系統(tǒng)仍然能夠輸出位同步時(shí)鐘脈沖,此后,只要輸入信號恢復(fù)并產(chǎn)生新的跳變沿,系統(tǒng)仍可以調(diào)整此位同步時(shí)鐘脈沖輸出而重新同步,此系統(tǒng)中輸入的時(shí)鐘信號頻率相對碼元速率越高,同步時(shí)鐘的位置就越精確,而當(dāng)輸入碼元速率改變時(shí),只要改變本系統(tǒng)中的N值系統(tǒng)就可重新正常工作。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動(dòng)力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉