電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>電子資料>FPGA片內(nèi)的工作頻率應(yīng)該如何提高

FPGA片內(nèi)的工作頻率應(yīng)該如何提高

2020-12-15 | pdf | 0.09 MB | 次下載 | 2積分

資料介紹

  對于設(shè)計者來說,當(dāng)然希望我們設(shè)計的電路的工作頻率(在這里如無特別說明,工作頻率指 FPGA 片內(nèi)的工作頻率)盡量高。我們也經(jīng)常聽說用資源換速度,用流水的方式可以提高工作頻率,這確實是一個很重要的方法,今天我想進(jìn)一步去分析該如何提高電路的工作頻率。我們先來分析下是什么影響了電路的工作頻率。我們電路的工作頻率主要與寄存器到寄存器之間的信號傳播時延及 clock skew 有關(guān)。在 FPGA 內(nèi)部如果時鐘走長線的話,clock skew 很小,基本上可以忽略, 在這里為了簡單起見,我們只考慮信號的傳播時延的因素。信號的傳播時延包括寄存器的開關(guān)時延、走線時延、經(jīng)過組合邏輯的時延(這樣劃分或許不是很準(zhǔn)確,不過對分析問題來說應(yīng)該是沒有可以的),要提高電路的工作頻率,我們就要在這三個時延中做文章,使其盡可能的小。我們先來看開關(guān)時延,這個時延是由器件物理特性決定的,我們沒有辦法去改變,所以我們只能通過改變走線方式和減少組合邏輯的方法來提高工作頻率。 1. 通過改變走線的方式減少時延。我們通過給綜合器加適當(dāng)?shù)募s束(不可貪心,一般以加 5%裕量較為合適,比如電路工作在 100Mhz,則加約束加到 105Mhz 就可以了,貪心效果反而不好,且極大增加綜合時間)可以將相關(guān)的邏輯在布線時盡量布的靠近一點,從而減少走線的時延。(注:約束的實現(xiàn)不完全是通過改進(jìn)布局布線方式去提高工作頻率,還有其它的改進(jìn)措施) 2. 通過減少組合邏輯的減少時延。我們知道,目前大部分 FPGA 都基于 4 輸入 LUT 的,如果一個輸出對應(yīng)的判斷條件大于四輸入的話就要由多個 LUT 級聯(lián)才能完成,這樣就引入一級組合邏輯時延,我們要減少組合邏輯,無非就是要輸入條件盡可能的少,這樣就可以級聯(lián)的 LUT 更少,從而減少了組合邏輯引起的時延。我們平時聽說的流水就是一種通過切割大的組合邏輯(在其中插入一級或多級 D 觸發(fā)器,從而使寄存器與寄存器之間的組合邏輯減少)來提高工作頻率的方法。比如一個 32 位的計數(shù)器,該計數(shù)器的進(jìn)位鏈很長,必然會降低工作頻率,我們可以將其分割成 4 位和 8 位的計數(shù),每當(dāng) 4 位的計數(shù)器計到 15 后觸發(fā)一次 8 位的計數(shù)器,這樣就實現(xiàn)了計數(shù)器的切割,也提高了工作頻率。在狀態(tài)機中,一般也要將大的計數(shù)器移到狀態(tài)機外,因為計數(shù)器這東西一般是經(jīng)常是大于 4 輸入的,如果再和其它條件一起做為狀態(tài)的跳變判據(jù)的話,必然會增加 LUT 的級聯(lián),從而增大組合邏輯。以一個 6 輸入的計數(shù)器為例,我們原希望當(dāng)計數(shù)器計到 111100 后狀態(tài)跳變,現(xiàn)在我們將計數(shù)器放到狀態(tài)機外,當(dāng)計數(shù)器計到 111011 后產(chǎn)生個 enable 信號去觸發(fā)狀態(tài)跳變,這樣就將組合邏輯減少了。上面說的都是可以通過流水的方式切割組合邏輯的情況,但是有些情況下我們是很難去切割組合邏輯的,在這些情況下我們又該怎么做呢?狀態(tài)機就是這么一個例子,我們不能通過往狀態(tài)譯碼組合邏輯中加入流水。如果我們的設(shè)計中有一個幾十個狀態(tài)的狀態(tài)機,它的狀態(tài)譯碼邏輯將非常之巨大,毫無疑問,這極有可能是設(shè)計中的關(guān)鍵路徑。那我們該怎么做呢?還是老思路,減少組合邏輯。我們可以對狀態(tài)的輸出進(jìn)行分析,對它們進(jìn)行重新分類,并根據(jù)這個重新定義成一組組小狀態(tài)機,通過對輸入進(jìn)行選擇 (case 語句)并去觸發(fā)相應(yīng)的小狀態(tài)機,從而實現(xiàn)了將大的狀態(tài)機切割成小的狀態(tài)機。在 ATA6 的規(guī)范中(硬盤的標(biāo)準(zhǔn)),輸入的命令大概有 20 十種,每一個命令又對應(yīng)很多種狀態(tài),如果用一個大的狀態(tài)機(狀態(tài)套狀態(tài))去做那是不可想象的,我們可以通過 case 語句去對命令進(jìn)行譯碼,并觸發(fā)相應(yīng)的狀態(tài)機,這樣做下來這一個模塊的頻率就可以跑得比較高了。提高 FPGA 工作頻率的本質(zhì),就是要減少寄存器到寄存器的時延,最有效的方法就是避免出現(xiàn)大的組合邏輯,也就是要盡量去滿足四輸入的條件,減少 LUT 級聯(lián)的數(shù)量。我們可以通過加約束、流水、切割狀態(tài)的方法提高工作頻率。 FPGA 設(shè)計需要多大容量的芯片,設(shè)計需要跑多快?這是經(jīng)常困擾工程師的兩大問題。對于前者,我們還可以選用一個較大的芯片實現(xiàn)原型,待原型完成再選用大小合適的芯片;對于后者,通常我們需要預(yù)先有一個較精確的預(yù)估,就像我們的設(shè)計能跑 50M、100M 還是 150M。

下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1山景DSP芯片AP8248A2數(shù)據(jù)手冊
  2. 1.06 MB  |  532次下載  |  免費
  3. 2RK3399完整板原理圖(支持平板,盒子VR)
  4. 3.28 MB  |  339次下載  |  免費
  5. 3TC358743XBG評估板參考手冊
  6. 1.36 MB  |  330次下載  |  免費
  7. 4DFM軟件使用教程
  8. 0.84 MB  |  295次下載  |  免費
  9. 5元宇宙深度解析—未來的未來-風(fēng)口還是泡沫
  10. 6.40 MB  |  227次下載  |  免費
  11. 6迪文DGUS開發(fā)指南
  12. 31.67 MB  |  194次下載  |  免費
  13. 7元宇宙底層硬件系列報告
  14. 13.42 MB  |  182次下載  |  免費
  15. 8FP5207XR-G1中文應(yīng)用手冊
  16. 1.09 MB  |  178次下載  |  免費

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費
  3. 2555集成電路應(yīng)用800例(新編版)
  4. 0.00 MB  |  33566次下載  |  免費
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費
  7. 4開關(guān)電源設(shè)計實例指南
  8. 未知  |  21549次下載  |  免費
  9. 5電氣工程師手冊免費下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費
  11. 6數(shù)字電路基礎(chǔ)pdf(下載)
  12. 未知  |  13750次下載  |  免費
  13. 7電子制作實例集錦 下載
  14. 未知  |  8113次下載  |  免費
  15. 8《LED驅(qū)動電路設(shè)計》 溫德爾著
  16. 0.00 MB  |  6656次下載  |  免費

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537798次下載  |  免費
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420027次下載  |  免費
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費
  11. 6電路仿真軟件multisim 10.0免費下載
  12. 340992  |  191187次下載  |  免費
  13. 7十天學(xué)會AVR單片機與C語言視頻教程 下載
  14. 158M  |  183279次下載  |  免費
  15. 8proe5.0野火版下載(中文版免費下載)
  16. 未知  |  138040次下載  |  免費