《電子技術應用》
您所在的位置:首頁 > 模擬設計 > 其他 > 教程:FPGA時鐘系統(tǒng)的移植

教程:FPGA時鐘系統(tǒng)的移植

2022-11-25
來源:FPGA技術聯(lián)盟

  ASIC 和FPGA芯片的內核之間最大的不同莫過于時鐘結構。ASIC設計需要采用諸如時鐘樹綜合、時鐘延遲匹配等方式對整個時鐘結構進行處理,但是 FPGA設計則完全不必。因為后者有內建的時鐘資源:鎖相環(huán)、頻率綜合器、移相器,以及具有低延遲特性的專用時鐘布線網絡。ASIC芯片的時鐘設計具有更大的靈活性,但FPGA芯片內建的時鐘資源則能簡化設計。正是因為兩者的不同,帶來了移植上的諸多麻煩。

  ASIC設計中的時鐘樹結構,需要映射到FPGA芯片的專用時鐘資源中,以及原型驗證平臺的不同F(xiàn)PGA芯片中。

  一顆FPGA芯片的專用時鐘資源是有限的,以Virtex-6LX760芯片也只有18個 MMCM時鐘資源模塊。這對于大部分FPGA設計來講已經足夠了,但是對于具有大量時鐘樹資源的ASIC設計來講,往往還是不夠使用。FPGA芯片的另外一個限制是同一個時鐘域所能容納的全局時鐘資源有限。

  門控時鐘

  在ASIC設計中,常常采用門控時鐘技術來降低整個芯片的低耗。圖1顯示了使用門控時鐘技術的電路:時鐘clk通過信號en1和en2進入組合邏輯后,驅動后續(xù)的兩個寄存器。

 04.JPG

  從上述電路可以看出,當信號en1和en2的某種組合關系使得clk信號無法向后傳遞時,兩個寄存器將停止工作,因此也不會消費功耗。

  但是如果將ASIC設計中的門控時鐘電路直接映射到FPGA芯片中,則會帶來整體的性能甚至穩(wěn)定性的下降。其根本原因在于FPGA芯片采用的是專用的低延遲時鐘網絡,只有整個時鐘系統(tǒng)運行在該網絡時,才能達到最高的性能。而通過組合邏輯的門控時鐘信號運行在普通的布線資源上,這將大大的降低其性能,甚至帶來建立保持時間的問題。因此必須將門控時鐘通過某種方式映射到FPGA芯片的專用時鐘資源上,而不是簡單得代碼移植。

  門控時鐘的轉換

  對門控時鐘進行轉換,就是要把時鐘網絡上的組合邏輯“刪掉”,將所有時序邏輯的時鐘驅動端口直接鏈接在FPGA芯片的專用時鐘資源上。

  其中一個方法就是將組合邏輯從時鐘通路‘搬移’到數(shù)據(jù)通路上,這種方式可以通過圖2中的多路選擇器來實現(xiàn)。

03.JPG

  或者可以采用時鐘使能的結構達到同樣的功能,如圖3所示。

02.JPG

  設計工具對門控時鐘的轉換

  Synopsys公司的Synplify Pro/Premier是高性能FPGA邏輯綜合工具,可以自動地進行門控時鐘轉換。當然轉換是有一定條件的:必須是帶有組合邏輯的門控時鐘結構;時鐘必須要有確定的約束條件;門控時鐘所驅動的時序邏輯電路不能是黑盒子。

  前面提到的門控時鐘轉換電路都比較簡單,在實際的設計中,門控時鐘的組合邏輯也許會很復雜,所驅動的后續(xù)電路不僅僅有寄存器,還有 BRAM和DSP模塊等時序邏輯。因此即便是Synplify pro/Premier這樣的高性能綜合器也可能有無法自動處理的電路結構,仍然需要手動修改。

  時刻使能

  對于ASIC設計中的時鐘使能電路,沒有必要做任何的轉換工作。因此FPGA芯片內部的各種時序邏輯電路(包括寄存器、BRAM和DSP48模塊)本身就帶有時鐘使能輸入端口,因此綜合工具可以做到完美的自動映射。

  時鐘管理單元的映射

  ASIC設計中的大部分時鐘管理模塊(如PLL),僅僅需要對端口的細微修改就可以直接映射到FPGA對應的資源上。Xilinx的FPGA芯片提供了豐富的可配置時鐘資源:DCM,PLL,MMCM,BUFG/BUFR,BUFGMUX,等等。



更多信息可以來這里獲取==>>電子技術應用-AET<<

mmexport1621241704608.jpg

本站內容除特別聲明的原創(chuàng)文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創(chuàng)文章及圖片等內容無法一一聯(lián)系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。