FPGA管腳分配需要考慮的因素
在芯片的研發(fā)環(huán)節,FPGA 驗證是其中的重要的組成部分,如何有效的利用 FPGA 的資源,管腳分配也是必須考慮的一個(gè)重要問(wèn)題。一般較好的方法是在綜合過(guò)程中通過(guò)時(shí)序的一些約束讓對應的工具自動(dòng)分配,但是從研發(fā)的時(shí)間段上來(lái)考慮這種方法往往是不可取的,RTL驗證與驗證板設計必須是同步進(jìn)行的,在驗證代碼出來(lái)時(shí)驗證的單板也必須設計完畢,也就是管腳的分配也必須在設計代碼出來(lái)之前完成。所以,管腳的分配更多的將是依賴(lài)人,而非工具,這個(gè)時(shí)候就更需要考慮各方面的因素。
綜合起來(lái)主要考慮以下的幾個(gè)方面:
1、 FPGA 所承載邏輯的信號流向。
IC 驗證中所選用的 FPGA 一般邏輯容量都非常大,外部的管腳數量也相當的豐富,這個(gè)時(shí)候就必須考慮到 PCB 設計時(shí)的布線(xiàn)的難度,如果管腳的分配不合理,那么有可能在PCB 設計時(shí)出現大量的交叉的信號線(xiàn),這給布線(xiàn)帶來(lái)很大的困難,甚至走不通,或者是即便是布線(xiàn)走通了,也有可能由于外部的延時(shí)過(guò)大而不滿(mǎn)足時(shí)序方面的要求。所以在管腳分配前對 FPGA 工作的環(huán)境要相當的熟悉,要對其中的信號來(lái)自哪里去向何方非常的清楚,這就按照連線(xiàn)最短的原則將對應的信號分配到與外部器件連線(xiàn)最近的 BANK 中
2、 掌握 FPGA 內部 BANK 的分配的情況。
現在 FPGA 內部都分成幾個(gè)區域,每個(gè)區域中可用的 I/O 管腳數量各不相同。在 IC 驗證中都是采用了 ALTERA 與 XILINX系列的 FPGA ,這兩個(gè)廠(chǎng)商的 FPGA中內部BANK的分配有一定的差異,這可以在設計中查閱相關(guān)的手冊。下面與 ALTERA 中 Stratix II系列的 FPGA 內部 BANK 的分配為例來(lái)進(jìn)行說(shuō)明。
圖中詳細說(shuō)明了 FPGA 內部 BANK 的分配情況和每個(gè) BANK 中所支持的 I/O 標準。根據 FPGA 中內部 BANK 的分配的情況,同時(shí)結合圖 1 中信號的流向也就可以大體固定
FPGA 在單板中的方向,同時(shí)按照就近的原則將相關(guān)的信號分配到相關(guān)的 BANK 中,這樣的方法可以完成一般信號的分配。
3、 掌握所選 FPGA 每個(gè) BANK 所支持的 I/O 標準。
從圖 2 中可以看出 FPGA 內部的每個(gè) BANK 所支持的 I/O 的標準不盡相同,所以管腳的分配時(shí)要將支持相同標準的管腳都集中到一個(gè) BANK 中,因為 FPGA 中同一個(gè)BANK一般不同時(shí)支持兩種 I/O 標準,當然也有例外,這就需要查閱相關(guān) I/O 標準所要求的工作條件。
4、 關(guān)注特殊信號的管腳的分配
這里的特殊信號主要是指時(shí)鐘信號與復位信號,或者是一些要求驅動(dòng)能力較高的信號。時(shí)鐘信號一般都是要求分配到全局的時(shí)鐘管腳,這樣獲得的時(shí)間的延遲將是最小的,驅動(dòng)也最強。復位信號因為要求同步性好驅動(dòng)的能力強,所以一般的情況下也會(huì )從全局的時(shí)鐘管腳送入。 在分配時(shí)鐘時(shí),根據時(shí)鐘的多少分配的策略差別很大,也需要重點(diǎn)關(guān)注,這需要查閱相應的手冊看哪些時(shí)鐘分別能到達哪些區域,一般的時(shí)鐘都是差分時(shí)鐘,這個(gè)時(shí)候如果所用的不是差分時(shí)鐘就需要注意 P 端與 N 端一般不能同時(shí)分配給不同的時(shí)鐘信號。如下圖所示 XILINX 系列的 FPGA 中成對的時(shí)鐘如果是同時(shí)采用那么就不能同時(shí)到達相同的區域,因為到達相同區域的時(shí)鐘線(xiàn)只有一根。
所以在時(shí)鐘較少時(shí)最好成對的P和S不要同時(shí)使用,而是只是選擇P或者是N這樣就不會(huì )出現沖突的情況。
5、 兼顧信號完整性的考慮。 由于在分配中常常會(huì )出現總線(xiàn)分配的情況,同時(shí)大量的總線(xiàn)又有可能常常是同時(shí)翻轉,這樣就會(huì )帶來(lái)了一系列信號完整性的問(wèn)題,所以在管腳分配時(shí)大量同時(shí)翻轉的信號盡量分開(kāi)。
評論