幀同步系統(tǒng)的FPGA設(shè)計與實現(xiàn)
3 幀同步電路功能模塊的建模與實現(xiàn)
3.1 巴克碼識別模塊
該模塊的功能主要是把幀同步碼巴克碼從數(shù)據(jù)流中識別出來。識別器模塊如圖2所示。
圖2中第1部分模塊ZCB主要完成串并轉(zhuǎn)換和移位功能,由7個D觸發(fā)器和3個非門實現(xiàn)。第2部分模塊AND7作用:只有當巴克碼1110010準確輸人時,識別器的輸出才會為”1”。因為輸出的巴克碼識別信號將直接影響后續(xù)同步保護電路,因此準確地輸出巴克碼,才能避免產(chǎn)生假同步現(xiàn)象。AND7可簡潔準確識別巴克碼。圖3為巴克碼識別模塊仿真圖,其中,bakeshibie為識別器的輸出;fenpin39為39分頻計數(shù)器的輸出端;zin為輸入的數(shù)據(jù);zclk為時鐘信號。
3.2 分頻計數(shù)器模塊
本設(shè)計采用2個帶清零的分頻計數(shù)器,分別為39分頻計數(shù)器和5分頻計數(shù)器。其中,39分頻計數(shù)器可滿足7位巴克碼+4字節(jié)數(shù)據(jù)的要求。當39分頻器輸出一個脈沖時,識別器也應(yīng)輸出一個脈沖,只要其相位對應(yīng)輸出,就能提取出幀同步信號。
39分頻計數(shù)器的仿真圖如圖4所示,其中clk為時鐘信號端;clr為時鐘清零端;output為輸出端。
3.3 同步保護模塊
系統(tǒng)進入維持態(tài)時就需要同步保護電路保護幀同步信號。這部分電路由時鐘控制模塊、基本RS觸發(fā)器模塊和5分頻計數(shù)器組成,其中,時鐘控制模塊和基本RS觸發(fā)器模塊的主要功能是狀態(tài)轉(zhuǎn)換和控制輸出幀同步脈沖。對于RS觸發(fā)器值得注意的是:如果R=0和 S=0后同時發(fā)生由0至1的變化,則輸出端Q和Q都要由1向0轉(zhuǎn)換,Q和Q端輸出就會為任意態(tài),這就是冒險競爭現(xiàn)象。當產(chǎn)生冒險競爭后,由于觸發(fā)器的輸出為任意態(tài),就會導(dǎo)致整個系統(tǒng)的輸出為任意態(tài)。解決方法是在系統(tǒng)中加入時鐘控制模塊控制觸發(fā)器的復(fù)位端,確保不出現(xiàn)任意狀態(tài),使系統(tǒng)工作狀態(tài)穩(wěn)定。5分頻器在識別器模塊無輸出時,這可能是系統(tǒng)真正失步也可能是偶爾干擾所致,只有連續(xù)5次這種情況系統(tǒng)才會真正認為失步。保護模塊仿真圖如圖5所示,其中, zhengout為幀同步輸出信號;clk為時鐘信號;data為輸入的信碼;q為RS觸發(fā)器的Q端;fenpin39為39分頻計數(shù)器的輸出端。
4 幀同步系統(tǒng)頂層文件設(shè)計
所謂頂層文件設(shè)計就是把所涉及到的各個模塊放在一起,形成一個便于閱讀的圖形方式,在編譯各個模塊時,如果設(shè)計沒有錯誤。系統(tǒng)就會創(chuàng)建一個代表該模塊的符號文件,可以被高層設(shè)計所調(diào)用。本設(shè)計中各模塊通過VHDL語言進行設(shè)計,在 QuartusⅡ開發(fā)軟件下編譯通過。采用Altera公司Cvclone系列的EP1C12Q240C8器件,并且?guī)诫娐穬H用到該器件不到1%的邏輯單元。頂層設(shè)計圖形如圖6所示。圖6中,ZCB和AND7(七輸入與門)為巴克碼識別器;CLKCONTR為時鐘控制器;FENPIN5為5分頻器計數(shù)器;FENPIN39為39分頻器計數(shù)器;RS_CLK為RS觸發(fā)器。
評論