FPGA設計小技巧(時鐘/性能/編程)

2020-12-13 電子發燒友

FPGA設計小技巧(時鐘/性能/編程)

FPGA技術聯盟 發表於 2020-12-11 10:26:44

時鐘篇

選用全局時鐘緩衝區(BUFG)作為時鐘輸入信號,BUFG是最穩定的時鐘輸入源,可以避免誤差。

只用一個時鐘沿來寄存數據,使用時鐘的兩個沿是不可靠的,如果時鐘沿「漂移」,就會導致時序錯誤。

不要隨意將內部信號作為時鐘,如門控時鐘和分頻時鐘,而要使用CLKDLL或者DCM產生的時鐘,或者可以通過建立時鐘使能或者DCM產生不同的時鐘信號。

FPGA儘量採取同步設計,也就是所有時鐘都是同一個源頭,如果使用兩個沒有相位關係的異步時鐘,必須要解決跨時鐘域問題。

性能篇

邏輯級的時延不要超過時序預算的百分之五十,否則會影響系統的運行頻率。可以通過分析時序報告中某個路徑的時序統計量來掌握系統的邏輯級時延。

對於關鍵的輸出選擇快速轉換速率,可以為LVCMOS和LVTTL電平選擇轉換速率來降低輸出時延。

如果設計允許增加延遲,可以對組合邏輯採用流水操作來提高性能。

利用四種全局約束來對設計進行全局約束,周期、偏置、輸入/輸出,管腳到管腳。

I/O寄存器提供了最快的時鐘到輸入、輸出到時鐘的延時,對於輸入、輸出信號,管腳到寄存器、寄存器到管腳都不可以有組合邏輯存在,對於三態寄存器,必須低電平有效,才能被綜合到IOB當中。

儘量使用IP核進行設計,因為IP核都是針對FPGA器件進行了優化,性能更高。

編程篇

使用Case語句而不是if-then-else語句

複雜的if-then-else語句在綜合布局布線以後會生成優先級解碼邏輯,增加路徑上的時延。然而,case語句則綜合為並行邏輯,沒有時延。

有限狀態機儘量不要包含有算術邏輯、數據通路邏輯以及其它與狀態機不相關的組合邏輯;

狀態機編寫的時候,下一狀態邏輯和輸出解碼邏輯必須放在獨立的進程中或者always語句中,綜合工具在輸出和下一狀態邏輯之間不允許共享資源。

儘量使用一位編碼有限狀態機;

使用不同風格的計數器,二進位計數器是非常慢的,可以考慮LFSR,Pre -scalar,Johnson.

代碼設計要按照功能塊劃分成不同的層次,層次化有助於設計更加容易讀懂,也容易調試和復用。

 

編輯:hfy

打開APP閱讀更多精彩內容

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容圖片侵權或者其他問題,請聯繫本站作侵刪。 侵權投訴

相關焦點

  • 集成晶體的可編程時鐘可提供多種設計優勢而無性能折衷
    然而,即使採用了可編程的多輸出時鐘發生器,外部晶體仍是一個大問題。首先,無論採用多小封裝尺寸的晶體,它還是會佔去不少在許多設計中都非常寶貴的電路板空間。此外,隨著當今的時鐘達到GHz水平,電路板上晶體和時鐘發生器IC之間很短距離的布線可能產生潛在的噪聲和EMI/RFI(電磁幹擾/射頻幹擾)問題,造成附加的抖動、偏移(skew)和失真,從而降低時鐘輸出的性能。
  • Altera FPGA為RICOH SP 3600DN系列新印表機提供支持
    此外,Cyclone IV FPGA還幫助Ricoh顯著降低了開發期間的總成本,縮短了設計時間。本文引用地址:http://www.eepw.com.cn/article/278182.htm  RICOH SP 3600DN系列印表機不僅性能高,其緊湊而又具有現代感的設計滿足了空間有限的普通辦公和場所的需求。
  • Silicon Labs發布時鐘行業超小尺寸、超低抖動的I2C可編程晶體振蕩器
    這些新產品可提供單通道、雙通道、四通道和I2C可編程頻率選項,支持行業標準的2.5x3.2mm封裝尺寸,從而成為要求混合使用不同頻率且空間受限的設計的理想選擇。高帶寬、高密度線卡和小尺寸光模塊的理想選擇對網絡帶寬和更快數據速率日益增長的需求推動了對更高速度的400/600/800G光/乙太網埠和更高密度線卡的需求。隨著電信和數據中心應用加速400G部署,光模塊市場正在從CFP設計過渡到更小尺寸的QSFP-DD、OSFP和CFP2解決方案,以幫助行業輕鬆地向更高帶寬、更高密度線卡過渡。
  • FPGA異步時鐘設計中的同步策略
    3.2 結繩法  由於雙鎖存器法在快時鐘域向慢時鐘域過渡中可能存在採樣失效的問題,我們引入了一種安全的跨時鐘域的方法:結繩法。結繩法適合任何時鐘域的過渡(clk1,clk2的頻率和相位關係可以任意選定),如圖4所示。
  • Renesas推出的可編程時鐘發生器開發套件評測
    Renesas推出的可編程時鐘發生器開發套件評測 電路設計技能 發表於 2020-12-07 13:39:44 隨著電子技術發發展的發展,越來越多的電子產品被開發設計出來
  • XCS05XL-4VQ100I_linx可編程邏輯器件的高級應用與設計技巧
    XCS05XL-4VQ100I_xilinx可編程邏輯器件的高級應用與設計技巧本文導讀:即設計師可以管理並解決 這些錯誤。但對於準備用來測試終矽片的板子來說幾乎是不可能的。生成Verilog網表圖包含x86處理器晶片、2個FPGA、SDRAM和1個PCI槽道的原型板。可以用好幾種原理圖輸入工具生成Verilog網表。
  • Nature封面:重編程技術逆轉視神經衰老時鐘
    Nature封面:重編程技術逆轉視神經衰老時鐘 2020-12-12 14:16 來源:澎湃新聞·澎湃號·湃客
  • 精美JS、CSS動畫時鐘設計、實現與實例分析
    動態時鐘設計實例之前文章介紹過JavaScript數字時鐘的設計與實現,主要用於藉助數組實現對數字時鐘數字進行存儲與標識。在獲取客戶端系統時間之後,選擇對應時鐘數字進行顯示即可。本文主要介紹基於CSS動畫的時鐘設計與實現。01實現思路與原理本文設計使用CSS旋轉元素屬性,對時鐘對應指針進行角度旋轉。主要設計內容包括錶盤及指針的設計。其中錶盤素材如下圖所示:
  • 前端設計-JavaScript簡單數字時鐘開發實例
    01所需素材本數字時鐘設計實現格式為00:00:00類型結構的數字時鐘,因此需要準備時鐘顯示相關數字及間隔符號的素材。02設計思路動態數字時鐘整體設計按照顯示格式要求,使用div展示每一位數字或者間隔符。
  • 多功能智能時鐘的設計
    採用了高精度時鐘晶片DS3231,能做到時間精準;採用了ESP8266Wi-Fi模塊進行授時和天氣預報功能;採用了專用血氧傳感器晶片MAX30102,體積小,功耗低,能方便檢測血氧與心率;利用無線串口HC-12模塊實現了遠距離無線遙控功能。經實際測試,達到了預期的各項功能。
  • 答題|時鐘有回溝,還說沒問題?!
    時鐘信號的回溝有誤觸發的風險,普通信號的回溝則會降低信號的帶寬。因此要避免回溝,根本上還是要保證信號感受到的路徑阻抗的連續性。(以下內容選自部分網友答題)出現回溝,首先想到的應該是阻抗不連續,存在突變點的問題。
  • FPGA開發經驗分享:基於JESD204B的LMK04821晶片項目開發
    其性能描述如下: <1>. 7對可作為JESD204B的SYSREF時鐘; <2>.  VCXO/Crystal 緩存輸出,LMK0482X系列晶片提供OSCout輸出,該輸出其實就是PLL1的反饋輸入,也是PLL2的參考時鐘輸入,晶片的該功能其實就是為了在其編程之前可以提供一個時鐘給控制器工作,控制器編程再配置LMK0482X。
  • iPhone 充電小技巧:還能自動顯示全屏時鐘
    我是開開心說事,今天給大家帶來的科普是:iPhone 充電小技巧:還能自動顯示全屏時鐘。自從升級了 iOS 14 以後,發現自己找到了不一樣的快樂!比如充電時自動顯示全屏時鐘、勿擾模式自動開啟常聽的歌、低電量模式時自動看小說......好了,開整!
  • 倒轉年齡時鐘?哈佛大學重編程技術,促衰老組織宛若初生
    近期,《Nature》雜誌刊載了封面文章,安全穩定的技術或許已經誕生了,由哈佛大學、耶魯大學等機構聯合發文,通過重新編程技術使得神經組織往日重現。回撥時鐘,神經往日重現該實驗由David Sinclair博士以及華人科學家呂垣澄博士共同完成,文章短小精悍,但發出之後卻直接登頂封面,標題為:重回往日時光,事實證明科學也確實做到了這一點。
  • 可編程邏輯器件:GAL、CPLD、FPGA
    打開APP 可編程邏輯器件:GAL、CPLD、FPGA 博科觀察 發表於 2021-01-08 16:01:30
  • 為什麼時鐘都是沿順時針轉? 第一個設計時鐘的人為什麼這樣設計呢?
    為什麼時鐘都是沿順時針轉? 第一個設計時鐘的人為什麼這樣設計呢?時間:2016-12-05 11:40   來源:怪羅科普   責任編輯:沫朵 川北在線核心提示:原標題:為什麼時鐘都是沿順時針轉? 第一個設計時鐘的人為什麼這樣設計呢?
  • 成為時間管理大師,你還需要知道這些時鐘小技巧!
    為了幫助幫我們管理時間,我們就要合理利用「時鐘」APP。提醒我們的鬧鐘對於像小編這樣的懶癌患者來說,如果沒有鬧鐘,真的不知道什麼時候能從溫暖的被窩出來。但以往的鬧鐘並沒有考慮到上班族、學生的特殊情況。設置方法:時鐘--時鐘--『+』號,選擇需要添加的地區即可。如果只是在「時鐘」APP裡查看世界時鐘的話,會很不方便。所以,我們可以設置「雙時鐘」,這樣就可以同時查看兩個地區的數據。設置方法:設置--其他設置--日期與時間--雙時鐘--開啟雙時鐘。
  • 自主FPGA翼下的精品一體機:鈺龍DA10
    DA10頂板和外底板厚3.91mm,外側板厚3.85mm,這4塊板是CNC一體成型的鋁合金框,不但放著看不到螺絲,散熱性能強、機體的堅固性和避震能力,也比多片拼裝的好得多。我剛說是外底板和外側板,是因為DA10還有一個好設計,它內部還有一層由內底板、內側板組成的內機箱。
  • Stm32F103R6之實時時鐘(RTC)
    概述實時時鐘是一個獨立的定時器。RTC模塊擁有一組連續計數的計數器,在相應軟體配置下,可提供時鐘日曆的功能。修改計數器的值可以重新設置系統當前的時間和日期。圖 1RTC框圖主要特性● 可編程的預分頻係數:分頻係數最高為220。● 32位的可編程計數器,可用於較長時間段的測量。
  • 採用片上網絡(NoC)的新型FPGA數據架構賦能5G網絡和數據中心智能...
    這些新的系統不僅必須要具備高度可靠性,而且還需要滿足人類思維級別的響應時間,以確保嚴格的性能保證(如圖3所示),這就需要全新的架構。Ljbednc儘管可編程邏輯提供了最佳的功能組合,以支持新一代通信和網絡系統的複雜需求,但是傳統的可編程晶片產品無法滿足這些需求。為了平衡片上的處理、互連和外部I / O,必須對整個FPGA架構進行重新考慮。