四種常用FPGA/CPLD設計思想與技巧之串并轉換
本系列討論的四種常用FPGA/CPLD設計思想與技巧:乒乓操作、串并轉換、流水線操作、數據接口同步化,都是FPGA/CPLD邏輯設計的內在規律的體現,合理地采用這些設計思想能在FPGA/CPLD設計工作種取得事半功倍的效果。
FPGA/CPLD 的設計思想與技巧是一個非常大的話題,由于篇幅所限,本文僅介紹一些常用的設計思想與技巧,包括乒乓球操作、串并轉換、流水線操作和數據接口的同步方法。希望本文能引起工程師們的注意,如果能有意識地利用這些原則指導日后的設計工作,將取得事半功倍的效果!
串并轉換設計技巧 串并轉換是FPGA設計的一個重要技巧,它是數據流處理的常用手段,也是面積與速度互換思想的直接體現。串并轉換的實現方法多種多樣,根據數據的排序和數量的要求,可以選用寄存器、RAM等實現。前面在乒乓操作的圖例中,就是通過DPRAM實現了數據流的串并轉換,而且由于使用了DPRAM,數據的緩沖區 可以開得很大,對于數量比較小的設計可以采用寄存器完成串并轉換。如無特殊需求,應該用同步時序設計完成串并之間的轉換。比如數據從串行到并行,數據排列順序是高位在前,可以用下面的編碼實現:
其中,prl_temp是并行輸出緩存寄存器,srl_in是串行數據輸入。對于排列順序有規定的串并轉換,可以用case語句判斷實現。對于復雜的串并轉換,還可以用狀態機實現。串并轉換的方法比較簡單,在此不必贅述。
評論