幀同步系統的FPGA設計與實現
3 幀同步電路功能模塊的建模與實現
3.1 巴克碼識別模塊
該模塊的功能主要是把幀同步碼巴克碼從數據流中識別出來。識別器模塊如圖2所示。

圖2中第1部分模塊ZCB主要完成串并轉換和移位功能,由7個D觸發器和3個非門實現。第2部分模塊AND7作用:只有當巴克碼1110010準確輸人時,識別器的輸出才會為”1”。因為輸出的巴克碼識別信號將直接影響后續同步保護電路,因此準確地輸出巴克碼,才能避免產生假同步現象。AND7可簡潔準確識別巴克碼。圖3為巴克碼識別模塊仿真圖,其中,bakeshibie為識別器的輸出;fenpin39為39分頻計數器的輸出端;zin為輸入的數據;zclk為時鐘信號。
3.2 分頻計數器模塊
本設計采用2個帶清零的分頻計數器,分別為39分頻計數器和5分頻計數器。其中,39分頻計數器可滿足7位巴克碼+4字節數據的要求。當39分頻器輸出一個脈沖時,識別器也應輸出一個脈沖,只要其相位對應輸出,就能提取出幀同步信號。

39分頻計數器的仿真圖如圖4所示,其中clk為時鐘信號端;clr為時鐘清零端;output為輸出端。
3.3 同步保護模塊
系統進入維持態時就需要同步保護電路保護幀同步信號。這部分電路由時鐘控制模塊、基本RS觸發器模塊和5分頻計數器組成,其中,時鐘控制模塊和基本RS觸發器模塊的主要功能是狀態轉換和控制輸出幀同步脈沖。對于RS觸發器值得注意的是:如果R=0和 S=0后同時發生由0至1的變化,則輸出端Q和Q都要由1向0轉換,Q和Q端輸出就會為任意態,這就是冒險競爭現象。當產生冒險競爭后,由于觸發器的輸出為任意態,就會導致整個系統的輸出為任意態。解決方法是在系統中加入時鐘控制模塊控制觸發器的復位端,確保不出現任意狀態,使系統工作狀態穩定。5分頻器在識別器模塊無輸出時,這可能是系統真正失步也可能是偶爾干擾所致,只有連續5次這種情況系統才會真正認為失步。保護模塊仿真圖如圖5所示,其中, zhengout為幀同步輸出信號;clk為時鐘信號;data為輸入的信碼;q為RS觸發器的Q端;fenpin39為39分頻計數器的輸出端。

4 幀同步系統頂層文件設計
所謂頂層文件設計就是把所涉及到的各個模塊放在一起,形成一個便于閱讀的圖形方式,在編譯各個模塊時,如果設計沒有錯誤。系統就會創建一個代表該模塊的符號文件,可以被高層設計所調用。本設計中各模塊通過VHDL語言進行設計,在 QuartusⅡ開發軟件下編譯通過。采用Altera公司Cvclone系列的EP1C12Q240C8器件,并且幀同步電路僅用到該器件不到1%的邏輯單元。頂層設計圖形如圖6所示。圖6中,ZCB和AND7(七輸入與門)為巴克碼識別器;CLKCONTR為時鐘控制器;FENPIN5為5分頻器計數器;FENPIN39為39分頻器計數器;RS_CLK為RS觸發器。














評論