專利名稱:基于fpga的可配置的時鐘頻率合成裝置的制作方法
技術領域:
本發明涉及一種基于FPGA的可配置的時鐘頻率合成裝置,屬于收發器的發送時鐘設計技術領域。
背景技術:
光纖通道技術中涉及的光電轉換部分通常使用集成模塊SFP(Small Form FactorPluggable)實現,而電信號數據在輸入到SFP前和從SFP輸出后分別需要進行數據的并串和串并轉換。目前實現該轉換過程主要有兩種方式,一是采用單獨的并串-串并轉換芯片SerDes (Serializer/Deserializer)芯片實現,這種方式由于使用了額外的芯片,會增加板卡體積和系統不穩定因素,還會使邏輯設計變得復雜;另一種是采用FPGA內嵌的收發器
硬核接口 ALT2GXB,調用FPGA廠商提供的IP核實現該收發器硬核接口邏輯,本方式集成度高,有利于開展后續邏輯設計和提高系統穩定性,應用廣泛。若采用IP核實現收發器硬核接口邏輯,需要給FPGA提供一個本地的高精度參考時鐘,作為收發器的發送時鐘。時鐘恢復單元CRU (Clock Recovery Unit)可以從接收數據中恢復出時鐘信號,作為收發器的接收時鐘。一些設計中使用普通晶振作為收發器的發送時鐘源,會由于發送時鐘信號抖動過大導致收發器不能正常產生恢復時鐘信號,也就不能正確輸出接收數據。
發明內容
本發明是為了解決使用普通晶振作為收發器的發送時鐘源,會由于發送時鐘信號抖動過大導致收發器不能正常產生恢復時鐘信號,因而不能正確輸出接收數據的問題,提供一種基于FPGA的可配置的時鐘頻率合成裝置。本發明所述基于FPGA的可配置的時鐘頻率合成裝置,它包括時鐘發生單元、頻率合成單元、頻率合成控制邏輯單元和收發器,時鐘發生單元的時鐘信號輸出端連接頻率合成單元的時鐘信號輸入端,頻率合成單元的控制信號輸入端連接頻率合成控制邏輯單元的控制信號輸出端,頻率合成單元的兩對設定頻率的差分時鐘信號輸出端與收發器的兩對發送時鐘信號輸入端一一對應連接,所述頻率合成單元和收發器均為FPGA內部的功能單元,頻率合成控制邏輯單元內部提供21位的配置寄存器,該配置寄存器通過FPGA內部的其他邏輯單元或由上位機通過PCI接口進行21位數據配置,實現時鐘頻率合成;所述21位數據在解析后以測試寄存器T、N分頻寄存器和M分頻寄存器的形式輸出。所述時鐘發生單元采用25MHz無源晶振和IOMHz有源晶振實現,所述25MHz無源晶振和IOMHz有源晶振作為頻率合成單元的時鐘源,分別連接到頻率合成單元的晶振輸入和測試時鐘輸入。頻率合成單元使用美國IDT公司的ICS8430I-61實現。
FPGA使用Altera公司的EP2SGX90E系列實現。所述頻率合成控制邏輯單元的邏輯控制采用Verilog語言實現,頻率合成控制邏輯單元包括配置寄存器、解析容錯處理機、串行裝載狀態機、并行裝載狀態機和未工作狀態機;解析容錯處理機用于對配置寄存器接收的21位配置數據進行解析,將解析后得到的14位配置數據分別賦值給相應的測試寄存器T、N分頻寄存器和M分頻寄存器,并判斷所有配置數據是否存在錯誤,對存在錯誤的數據根據其所屬發送寄存器及數據錯誤類型輸出預設默認值,然后輸出頻率合成單元時鐘源選擇信號xtal_sel和pll選擇信號vco_sel ;同時根據21位配置數據確定頻率合成 單元的工作模式,再根據已確定的工作模式,對串行裝載標志信號serial_load_flag和并行裝載標志信號para_load_f lag正確賦值,供頻率合成控制邏輯單元使用,當頻率合成單元的復位輸入信號s_mr無效,且串行裝載標志信號serial_load_flag為I時,進入串行裝載狀態機,使測試寄存器T、N分頻寄存器和M分頻寄存器對應的14位數據以串行的方式輸出,完成對頻率合成單元的配置;當頻率合成單元的復位輸入信號s_mr無效,且并行裝載標志信號para_load_flag為I時,進入并行裝載狀態機,使測試寄存器T、N分頻寄存器和M分頻寄存器對應的14位數據以并行的方式輸出,完成對頻率合成單元的配置;如果串行裝載標志信號serial_load_flag和并行裝載標志信號para_load_flag都為O,進入未工作狀態機。所述串行裝載狀態機包括五種狀態,分別為等待狀態、開始狀態、移位狀態、讀取狀態和結束狀態等待狀態檢測頻率合成控制邏輯單元的復位信號rst_n、串行裝載標志信號serial_load_f lag 和并行裝載標志信號 para_load_f lag,當頻率合成控制邏輯單元的復位信號rst_n為1,且串行裝載標志信號serial_load_flag為I時,使串行裝載狀態機輸出頻率合成單元所需的串行裝載標志信號s_load為0,并行裝載標志信號np_load為1,配置頻率合成單元為串行裝載方式,然后進入開始狀態;開始狀態設置讀取個數寄存器read_num為O,然后進入移位狀態;,移位狀態將待發送的一位數據賦值給頻率合成單元的數據總線s_data,設置輸出串行時鐘s_clock為O,然后進入讀取狀態;讀取狀態檢測串行時鐘S_cl0ck信號和讀取個數寄存器read_num的數值,當串行時鐘s_clock為I時,將頻率合成單元的數據總線s_data的數據讀入頻率合成單元,當讀取個數寄存器read_num的數值不等于14時,設置輸出串行時鐘S_cl0ck為I,并使讀取個數寄存器read_num中的數值加I,然后進入移位狀態;當讀取個數寄存器read_num等于14時,設置讀取個數寄存器read_num為O,輸出串行裝載標志信號s_load為1,然后進入結束狀態;結束狀態輸出串行裝載標志信號s_load為O,通過串行裝載標志信號s_load的下降沿表示一次串行裝載過程結束,然后進入開始狀態。
所述并行裝載狀態機包括三種狀態,分別為等待狀態、開始狀態和結束狀態等待狀態檢測頻率合成控制邏輯單元的復位信號rst_n和并行裝載標志信號para—load—flag,當頻率合成控制邏輯單元的復位信號rst_n為1,并行裝載標志信號para_load_flag為I時,輸出串行裝載標志信號s_load為0,然后進入開始狀態;開始狀態輸出并行裝載信號np_load為0,然后進入結束狀態;結束狀態輸出并行裝載信號np_load為I,通過并行裝載信號np_load的上升沿表示一次并行裝載過程結束,然后進入開始狀態。所述未工作狀態機執行時,輸出頻率合成單兀的復位輸入信號s_mr為I。本發明的優點是本發明方法中,頻率合成單元采用專用頻率合成芯片ICS8430I-61,能夠輸出最大周期間抖動30ps、單周期抖動6ps的高精度差分時鐘信號,將此時鐘信號作為收發器的發送時鐘可以使收發器正常工作;該頻率合成芯片能實現20. 83MHz到500MHz的時鐘信號輸出,可以滿足不同速率的光纖通道應用對于收發器發送時鐘的需求;本發明通過Verilog HDL語言實現FPGA對頻率合成芯片的控制,提供給用戶一個配置寄存器,只需正確配置該寄存器,就可以靈活地改變頻率合成芯片的輸出頻率;通過本發明方法提供收發器發送時鐘,可以降低對本地晶振的精度要求,更加方便晶振采購。本發明方法產生的時鐘信號能夠滿足FPGA的收發器對發送時鐘抖動的要求,其輸出頻率范圍能滿足目前光纖通道的應用。本發明方法采用專用頻率合成芯片產生低抖動、寬輸出范圍的差分時鐘,對頻率合成芯片的控制采用可編程邏輯器件實現,可通過寄存器進行靈活配置。
圖I為本發明的結構框圖;圖2為頻率合成控制邏輯的原理框圖;圖3為串行裝載狀態的內部狀態轉換圖;圖4為并行裝載狀態的內部狀態轉換圖;圖5為本發明方法的工作流程圖。
具體實施例方式具體實施方式
一下面結合圖I和圖2說明本實施方式,本實施方式所述基于FPGA的可配置的時鐘頻率合成裝置,它包括時鐘發生單元I、頻率合成單元2、頻率合成控制邏輯單元3和收發器4,時鐘發生單元I的時鐘信號輸出端連接頻率合成單元2的時鐘信號輸入端,頻率合成單元2的控制信號輸入端連接頻率合成控制邏輯單元3的控制信號輸出端,頻率合成單元2的兩對設定頻率的差分時鐘信號輸出端與收發器4的兩對發送時鐘信號輸入端一一對應連接,所述頻率合成單元2和收發器4均為FPGA內部的功能單元,頻率合成控制邏輯單元3內部提供21位的配置寄存器3-1,該配置寄存器3-1通過FPGA內部的其他邏輯單元5或由上位機通過PCI接口進行21位數據配置,實現時鐘頻率合成;所述21位數據在解析后以測試寄存器T、N分頻寄存器和M分頻寄存器的形式輸出。本實施方式中,時鐘發生單元I可以使用普通無源晶振和精度較好的有源晶振,輸出時鐘信號到頻率合成單元2。頻率合成單元2使用專用頻率合成芯片,在FPGA邏輯控制下,輸出兩對設定頻率的高精度低抖動 差分時鐘信號,分別作為兩路收發器的發送時鐘。頻率合成控制邏輯單元3在實現對頻率合成單元2控制的基礎上,對其接口進行了封裝,提供一個21位的配置寄存器3-1,用戶只需要對該寄存器進行適當配置,就可以得到所需的收發器發送時鐘信號,對寄存器的配置可以通過FPGA其他邏輯實現,或者在上位機設置,通過PCI接口傳遞給控制邏輯。
具體實施方式
二 本實施方式為對實施方式一的進一步說明,所述時鐘發生單元I采用25MHz無源晶振和IOMHz有源晶振實現,所述25MHz無源晶振和IOMHz有源晶振作為頻率合成單元2的時鐘源,分別連接到頻率合成單元2的晶振輸入和測試時鐘輸入。
具體實施方式
三本實施方式為對實施方式一或二的進一步說明,頻率合成單元2使用美國IDT公司的ICS8430I-61實現。
具體實施方式
四本實施方式為對實施方式一、二或三的進一步說明,FPGA使用Altera公司的EP2SGX90E系列實現。
具體實施方式
五下面結合圖2和圖5說明本實施方式,本實施方式為對實施方式一、二、三或四的進一步說明,所述頻率合成控制邏輯單元3的邏輯控制采用Verilog語言實現,頻率合成控制邏輯單元3包括配置寄存器3-1、解析容錯處理機3-2、串行裝載狀態機3-3、并行裝載狀態機3-4和未工作狀態機3-5 ;解析容錯處理機3-2用于對配置寄存器3-1接收的21位配置數據進行解析,將解析后得到的14位配置數據分別賦值給相應的測試寄存器T、N分頻寄存器和M分頻寄存器,并判斷所有配置數據是否存在錯誤,對存在錯誤的數據根據其所屬發送寄存器及數據錯誤類型輸出預設默認值,然后輸出頻率合成單元時鐘源選擇信號xtal_sel和pll選擇信號vco_sel ;同時根據21位配置數據確定頻率合成單元2的工作模式,再根據已確定的工作模式,對串行裝載標志信號serial_load_flag和并行裝載標志信號para_load_flag正確賦值,供頻率合成控制邏輯單元3使用,當頻率合成單元2的復位輸入信號s_mr無效,且串行裝載標志信號serial_load_flag為I時,進入串行裝載狀態機3-3,使測試寄存器T、N分頻寄存器和M分頻寄存器對應的14位數據以串行的方式輸出,完成對頻率合成單元2的配置;當頻率合成單元2的復位輸入信號s_mr無效,且并行裝載標志信號para_load_flag為I時,進入并行裝載狀態機3-4,使測試寄存器T、N分頻寄存器和M分頻寄存器對應的14位數據以并行的方式輸出,完成對頻率合成單元2的配置;如果串行裝載標志信號serial_load_flag和并行裝載標志信號para_load_flag都為O,進入未工作狀態機3-5。本實施方式中,解析容錯處理機3-2部分負責將輸入的21位配置數據分解到相應寄存器,輸出頻率合成芯片時鐘源選擇信號xtal_sel和pll選擇信號VC0_Sel,根據配置數據確定頻率合成芯片工作模式,并對串行裝載標志信號serial_l0ad_flag和并行裝載標志信號para_load_flag正確賦值。當選擇信號xtal_sel為O時,頻率合成芯片時鐘源為IOMHz有源晶振,當選擇信號xtal_sel為I時,頻率合成芯片時鐘源為25MHz無源晶振;本實施方式中,在頻率合成芯片內部集成了一個PU,該Pll為鎖相環,可以實現輸出信號頻率對輸入信號頻率的自動跟蹤,最終使輸出頻率等于輸入頻率,pll選擇信號vco_sel是用于選擇是否使能該pll功能。為了方便用戶使用,控制邏輯對用戶輸入的21位配置數據沒有額外限制,所以需要在邏輯設計時添加容錯處理,如果用戶輸入的配置數據存在錯誤,邏輯會根據錯誤類型輸出預設默認值。配置寄存器中的分頻寄存器都按照二進制數制定義,而不是按照頻率合成芯片手冊給出的無規則定義,在解析容錯處理中進行數據轉換,因此用戶不需要知道無規則的數據對應關系,簡化了配置過程。
具體實施方式
六下面結合圖2、圖3和圖5說明本實施方式,本實施方式為對實施方式一、二、三、四或五的進一步說明,所述串行裝載狀態機3-3包括五種狀態,分別為等
待狀態、開始狀態、移位狀態、讀取狀態和結束狀態等待狀態檢測頻率合成控制邏輯單元3的復位信號rst_n、串行裝載標志信號serial_load_f lag 和并行裝載標志信號 para_load_f lag,當頻率合成控制邏輯單元3的復位信號rst_n為1,且串行裝載標志信號serial_load_flag為I時,使串行裝載狀態機3_3輸出頻率合成單元2所需的串行裝載標志信號s_load為O,并行裝載標志信號np_load為I,配置頻率合成單元2為串行裝載方式,然后進入開始狀態;開始狀態設置讀取個數寄存器read_num為0,然后進入移位狀態;,移位狀態將待發送的一位數據賦值給頻率合成單元的數據總線s_data,設置輸出串行時鐘s_clock為O,然后進入讀取狀態;讀取狀態檢測串行時鐘S_cl0ck信號和讀取個數寄存器read_num的數值,當串行時鐘s_clock為I時,將頻率合成單元的數據總線s_data的數據讀入頻率合成單元,當讀取個數寄存器read_num的數值不等于14時,設置輸出串行時鐘s_cl0ck為I,并使讀取個數寄存器read_num中的數值加I,然后進入移位狀態;當讀取個數寄存器read_num等于14時,設置讀取個數寄存器read_num為O,輸出串行裝載標志信號s_load為1,然后進入結束狀態;結束狀態輸出串行裝載標志信號s_load為O,通過串行裝載標志信號s_load的下降沿表示一次串行裝載過程結束,然后進入開始狀態。本實施方式中,移位狀態和讀取狀態配合使用,整體實現的功能是以串行方式將測試寄存器T、N分頻寄存器和M分頻寄存器對應的14位數據傳遞給頻率合成單元。其中,14位數據的最高位先發送,最低位最后發送,移位狀態每一次是將待發送的一位數據賦值給頻率合成單元的數據總線s_data,讀取狀態是將總線s_data上的數據讀入頻率合成單元,當串行時鐘s_clock為I時,頻率合成單元會將s_data上的數據讀入頻率合成單元。讀取狀態中提到的個數寄存器read_num,用于判斷解析后得到的14位配置數據是否已經全部發送給頻率合成單元。讀取read_num的值起到一個輔助判斷配置過程是否完成的功能。
本實施方式中,當頻率合成控制邏輯單元3的復位信號無效,且串行裝載標志信號Serial_load_flag為I后,頻率合成芯片進入串行裝載狀態,即FPGA的頻率合成控制邏輯單元3將測試寄存器T、N分頻寄存器和M分頻寄存器的值以串行的方式輸出,完成對頻率合成單元2的配置,否則處于等待狀態。
具體實施方式
七下面結合圖2、圖4和圖5說明本實施方式,本實施方式為對實施方式一、二、三、四、五或六的進一步說明,所述并行裝載狀態機3-4包括三種狀態,分別為等待狀態、開始狀態和結束狀態等待狀態檢測頻率合成控制邏輯單元3的復位信號rst_n和并行裝載標志信號para—load—flag,當頻率合成控制邏輯單元3的復位信號rst_n為1,并行裝載標志信號para_load_flag為I時,輸出串行裝載標志信號s_load為O,然后進入開始狀態;開始狀態輸出并行裝載信號np_load為0,然后進入結束狀態;結束狀態輸出并行裝載信號np_load為I,通過并行裝載信號np_load的上升沿表示一次并行裝載過程結束,然后進入開始狀態。本實施方式中,并行裝載在邏輯設計上相對簡單,配置數據是通過印刷電路板PCB上的連接關系進行設定,在開始狀態只需輸出np_load為O。在結束狀態中,設置np_load為1,完成并行發送過程。本實施方式中,當頻率合成控制邏輯單元3的復位信號無效且并行裝在標志信號para_load_flag為1,頻率合成單元2從未工作狀態等待進入并行裝載狀態,即FPGA的頻率合成控制邏輯單元3將測試寄存器T、N分頻寄存器和M分頻寄存器的值以并行的方式輸出,此時N分頻寄存器和M分頻寄存器的值來自頻率合成芯片特定引腳的電平狀態,硬件設計時采用上下拉方式,即對于芯片內部是下拉的引腳,設計時進行上拉;對于芯片內部是上拉的引腳,設計時進行下拉,這樣在使用并行裝載模式時,可以通過選焊電阻,得到所需的M、N值,最終得到需要的時鐘輸出,并行裝載狀態轉換圖如圖4所示。
具體實施方式
八下面結合圖2和圖5說明本實施方式,本實施方式為對實施方式一、二、三、四、五、六或七的進一步說明,所述未工作狀態機3-5執行時,輸出頻率合成單元2的復位輸入信號s_mr為I。本發明方法得到所需頻率的時鐘信號輸出的工作流程如圖5所示。具體工作流程為I)、對板卡上電,進行硬件初始化;2)、加載PCI接口驅動,通過驅動程序設置頻率合成控制邏輯單元3提供的配置寄存器3-1 ;也可通過FPGA內其他邏輯3-2配置該寄存器;3)數據解析與容錯處理對輸入頻率合成控制邏輯單元3的配置寄存器值進行解析,將值賦給相應寄存器,輸出頻率合成芯片時鐘源選擇信號和Pll選擇信號,對頻率合成芯片進行初步配置,同時給出配置寄存器值設定的芯片工作模式標志。對于無效輸入或越界輸入等錯誤配置數據,需要進行容錯處理,即根據錯誤類型輸出預設默認值;4)工作模式選擇如果設定為串行加載模式,頻率合成控制邏輯單元3將配置數據在串行時鐘S_cl0ck上升沿以串行數據s_data的形式寫入到頻率合成芯片;如果設定為并行加載模式,頻率合成控制邏輯單元3將配置數據在并行加載標志np_load下降沿以并行的形式寫入到頻率合成芯片,通過其上升沿指示操作完成;如果串行模式或并行模式標志信號都無效,則處于未工作模式,輸出頻率合成芯片復位信號;5)、一次配置過程完成后,判斷是否需要繼續配置,即配置寄存器的值是否發生變化,如果變化,則返回2)步,開始下一次配置過程;如果不需要繼續配置,則結束。本發明方法中,對頻率合成芯片的控制簡單化,可通過FPGA內部其他邏輯或PCI接口設置一個21位寄存器實現;頻率合成芯片的工作模式可通過配置寄存器設置;使用普通無源晶振和有源晶振,通過本時鐘頻 率合成方法可得到滿足收發器精度和抖動要求的發送時鐘信號;本發明方法使用一片頻率合成芯片能得到兩路差分時鐘信號,可以滿足目前兩路光纖通道接口板卡對收發器發送時鐘的需求。
權利要求
1.一種基于FPGA的可配置的時鐘頻率合成裝置,其特征在于它包括時鐘發生單元(I)、頻率合成單元(2)、頻率合成控制邏輯單元(3)和收發器(4), 時鐘發生單元(I)的時鐘信號輸出端連接頻率合成單元(2)的時鐘信號輸入端,頻率合成單元(2)的控制信號輸入端連接頻率合成控制邏輯單元(3)的控制信號輸出端,頻率合成單元(2)的兩對設定頻率的差分時鐘信號輸出端與收發器(4)的兩對發送時鐘信號輸入端--對應連接,所述頻率合成單元(2)和收發器(4)均為FPGA內部的功能單元,頻率合成控制邏輯單元(3)內部提供21位的配置寄存器(3-1),該配置寄存器(3-1)通過FPGA內部的其他邏輯單元(5)或由上位機通過PCI接口進行21位數據配置,實現時鐘頻率合成; 所述21位數據在解析后以測試寄存器T、N分頻寄存器和M分頻寄存器的形式輸出。
2.根據權利要求I所述的基于FPGA的可配置的時鐘頻率合成裝置,其特征在于所述時鐘發生單元(I)采用25MHz無源晶振和IOMHz有源晶振實現,所述25MHz無源晶振和IOMHz有源晶振作為頻率合成單元(2)的時鐘源,分別連接到頻率合成單元(2)的晶振輸入和測試時鐘輸入。
3.根據權利要求2所述的基于FPGA的可配置的時鐘頻率合成裝置,其特征在于頻率合成單元(2)使用美國IDT公司的ICS8430I-61實現。
4.根據權利要求3所述的基于FPGA的可配置的時鐘頻率合成裝置,其特征在于FPGA使用Altera公司的EP2SGX90E系列實現。
5.根據權利要求4所述的基于FPGA的可配置的時鐘頻率合成裝置,其特征在于所述頻率合成控制邏輯單元(3)的邏輯控制采用Verilog語言實現,頻率合成控制邏輯單元(3)包括配置寄存器(3-1)、解析容錯處理機(3-2)、串行裝載狀態機(3-3)、并行裝載狀態機(3-4)和未工作狀態機(3-5); 解析容錯處理機(3-2)用于對配置寄存器(3-1)接收的21位配置數據進行解析,將解析后得到的14位配置數據分別賦值給相應的測試寄存器T、N分頻寄存器和M分頻寄存器,并判斷所有配置數據是否存在錯誤,對存在錯誤的數據根據其所屬發送寄存器及數據錯誤類型輸出預設默認值,然后輸出頻率合成單元時鐘源選擇信號xtal_sel和pll選擇信號vco_sel ;同時根據21位配置數據確定頻率合成單元(2)的工作模式,再根據已確定的工作模式,對串行裝載標志信號serial_load_flag和并行裝載標志信號para_load_f lag正確賦值,供頻率合成控制邏輯單元(3)使用, 當頻率合成單元(2)的復位輸入信號s_mr無效,且串行裝載標志信號serial_load_flag為I時,進入串行裝載狀態機(3-3),使測試寄存器T、N分頻寄存器和M分頻寄存器對應的14位數據以串行的方式輸出,完成對頻率合成單元(2)的配置; 當頻率合成單元(2 )的復位輸入信號s_mr無效,且并行裝載標志信號para_load_f lag為I時,進入并行裝載狀態機(3-4),使測試寄存器T、N分頻寄存器和M分頻寄存器對應的14位數據以并行的方式輸出,完成對頻率合成單元(2)的配置; 如果串行裝載標志信號serial_load_flag和并行裝載標志信號para_load_f lag都為O,進入未工作狀態機(3-5 )。
6.根據權利要求5所述的基于FPGA的可配置的時鐘頻率合成裝置,其特征在于所述串行裝載狀態機(3-3)包括五種狀態,分別為等待狀態、開始狀態、移位狀態、讀取狀態和結束狀態等待狀態檢測頻率合成控制邏輯單元(3)的復位信號rst_n、串行裝載標志信號serial_load_f lag 和并行裝載標志信號 para_load_f lag, 當頻率合成控制邏輯單元(3)的復位信號rst_nS 1,且串行裝載標志信號serial_load_flag為I時,使串行裝載狀態機(3_3)輸出頻率合成單元(2)所需的串行裝載標志信號s_load為O,并行裝載標志信號np_load為1,配置頻率合成單元(2)為串行裝載方式,然后進入開始狀態; 開始狀態設置讀取個數寄存器read_num為O,然后進入移位狀態;, 移位狀態將待發送的一位數據賦值給頻率合成單元的數據總線s_data,設置輸出串行時鐘s_clock為O,然后進入讀取狀態; 讀取狀態檢測串行時鐘s_clock信號和讀取個數寄存器read_num的數值, 當串行時鐘s_clock為I時,將頻率合成單元的數據總線s_data的數據讀入頻率合成單元, 當讀取個數寄存器read_num的數值不等于14時,設置輸出串行時鐘S_cl0ck為1,并使讀取個數寄存器read_num中的數值加I,然后進入移位狀態; 當讀取個數寄存器read_num等于14時,設置讀取個數寄存器read_num為O,輸出串行裝載標志信號s_load為I,然后進入結束狀態; 結束狀態輸出串行裝載標志信號s_load為O,通過串行裝載標志信號s_load的下降沿表示一次串行裝載過程結束,然后進入開始狀態。
7.根據權利要求5或6所述的基于FPGA的可配置的時鐘頻率合成裝置,其特征在于所述并行裝載狀態機(3-4)包括三種狀態,分別為等待狀態、開始狀態和結束狀態 等待狀態檢測頻率合成控制邏輯單元(3)的復位信號rst_n和并行裝載標志信號para—load—flag, 當頻率合成控制邏輯單元(3)的復位信號rst_n為1,并行裝載標志信號para_load_flag為I時,輸出串行裝載標志信號s_load為0,然后進入開始狀態; 開始狀態輸出并行裝載信號np_load為0,然后進入結束狀態; 結束狀態輸出并行裝載信號np_load為I,通過并行裝載信號np_load的上升沿表示一次并行裝載過程結束,然后進入開始狀態。
8.根據權利要求5所述的基于FPGA的可配置的時鐘頻率合成裝置,其特征在于所述未工作狀態機(3-5)執行時,輸出頻率合成單兀(2)的復位輸入信號s_mr為I。
全文摘要
基于FPGA的可配置的時鐘頻率合成裝置,屬于收發器的發送時鐘設計技術領域。它解決了使用普通晶振作為收發器的發送時鐘源,會由于發送時鐘信號抖動過大導致收發器不能正常產生恢復時鐘信號,因而不能正確輸出接收數據的問題。它的時鐘發生單元的時鐘信號輸出端連接頻率合成單元的時鐘信號輸入端,頻率合成單元的控制信號輸入端連接頻率合成控制邏輯單元的控制信號輸出端,頻率合成單元的兩對設定頻率的差分時鐘信號輸出端與收發器的兩對發送時鐘信號輸入端一一對應連接,頻率合成控制邏輯單元內部的配置寄存器通過FPGA內部的其他邏輯單元或由上位機通過PCI接口進行21位數據配置,實現時鐘頻率合成。本發明適用于時鐘頻率的合成。
文檔編號H04J3/06GK102882623SQ20121026170
公開日2013年1月16日 申請日期2012年7月26日 優先權日2012年7月26日
發明者劉大同, 彭宇, 劉連勝, 劉川, 見其拓 申請人:哈爾濱工業大學