免費(fèi)的I/O:改進(jìn)FPGA時(shí)鐘分配控制
同步數(shù)字系統(tǒng)中的時(shí)鐘信號(如遠(yuǎn)程通信中使用的)為系統(tǒng)中的數(shù)據(jù)傳送定義了時(shí)間基準(zhǔn)。一個(gè)時(shí)鐘分配網(wǎng)絡(luò)由多個(gè)時(shí)鐘信號組成,由一個(gè)點(diǎn)將所有信號分配給需要時(shí)鐘信號的所有組件。因?yàn)闀r(shí)鐘信號執(zhí)行關(guān)鍵的系統(tǒng)功能,很顯然應(yīng)給予更多的關(guān)注,不僅在時(shí)鐘的特性(即偏移和抖動)方面,還有那些組成時(shí)鐘分配網(wǎng)絡(luò)的組件。
本文引用地址:http://butianyuan.cn/article/241684.htmFPGA開發(fā)團(tuán)隊(duì)不斷面臨過于繁瑣、復(fù)雜的時(shí)鐘網(wǎng)絡(luò)的挑戰(zhàn)。各種因素,包括不斷增加的I/O需求、降低成本的要求和減少印刷電路板設(shè)計(jì)更改的需要,迫使設(shè)計(jì)人員重新審視時(shí)鐘網(wǎng)絡(luò)。本文將探討FPGA時(shí)鐘分配控制方面的挑戰(zhàn),協(xié)助開發(fā)團(tuán)隊(duì)改變他們的設(shè)計(jì)方法,并針對正在考慮如何通過縮小其時(shí)鐘分配網(wǎng)絡(luò)的規(guī)模來擁有更多的FPGA I/O,或提高時(shí)鐘網(wǎng)絡(luò)性能的設(shè)計(jì)者們提供實(shí)用的建議。
引發(fā)設(shè)計(jì)更改的因素
1. 電路板面積的限制
印刷電路板設(shè)計(jì)必須考慮到許多限制因素。包括物理尺寸、散熱要求、走線長度、層數(shù)和互連的類型。隨著每一代的設(shè)計(jì)都要求更多的功能,因而電路板的限制因素也越來越多。一種解決方案是使用可編程邏輯器件,如FPGA和CPLD,減少元件數(shù)量并降低電路板的復(fù)雜性。然而,采取這種方法的同時(shí)還可以進(jìn)一步重新審視一下時(shí)鐘分配網(wǎng)絡(luò)。不僅因?yàn)闀r(shí)鐘網(wǎng)絡(luò)的各種走線長度,占用了大量的電路板面積,并且還用到大量的振蕩器和時(shí)鐘分配IC來產(chǎn)生當(dāng)今設(shè)計(jì)中所需的多種頻率。
2. 時(shí)鐘網(wǎng)絡(luò)性能
時(shí)鐘信號及其相關(guān)的分配網(wǎng)絡(luò)對于實(shí)現(xiàn)當(dāng)今數(shù)字系統(tǒng)的高性能和高可靠性來說是至關(guān)重要的。提高同步設(shè)計(jì)整體性能的關(guān)鍵是要提高時(shí)鐘網(wǎng)絡(luò)的頻率。然而,由于一些因素,如時(shí)序容限、信號完整性和同步相關(guān)時(shí)鐘邊沿,使得時(shí)鐘網(wǎng)絡(luò)的復(fù)雜性大大增加。時(shí)鐘網(wǎng)絡(luò)使用一系列單功能的組件來設(shè)計(jì),如扇出緩沖器、時(shí)鐘發(fā)生器、延遲線、零延遲緩沖器和頻率合成器。任何由于走線長度不同而引起的時(shí)序錯誤,都可以通過蛇形線進(jìn)行走線長度匹配或使用緩沖器來解決。使用試錯法選擇串聯(lián)電阻可以緩和任何走線阻抗與輸出驅(qū)動器阻抗不匹配的影響。甚至可以使用專門的轉(zhuǎn)換器來匹配時(shí)鐘發(fā)生器和接收器IC之間的信號接口,與多種信號標(biāo)準(zhǔn)連接。然而,傳統(tǒng)上設(shè)計(jì)師們采用多種不太理想的解決方案,目的是為了使用盡可能少的走線和元器件,實(shí)現(xiàn)小規(guī)模且高性能的時(shí)鐘網(wǎng)絡(luò)。
3. 更高的FPGA I/O利用率
隨著高復(fù)雜度的系統(tǒng)設(shè)計(jì)推動了可編程邏輯的使用,設(shè)計(jì)人員需要更多的FPGA I/O來實(shí)現(xiàn)更多功能。再加上由于每個(gè)系統(tǒng)對FPGA I/O的需求都不同,突然之間每個(gè)I/O都變得很珍貴。當(dāng)I/O受限時(shí),簡單的解決方案就必須移植到較大的FPGA上。在這種情況下,“大”可能意味著更多的封裝引腳數(shù)或者更多查找表(LUT)的FPGA。然而,通?!按蟆币惨馕吨骷r(jià)格更昂貴。另一種解決方案是檢視I/O到底是如何被消耗的,特別是在時(shí)鐘分配網(wǎng)絡(luò)中。一個(gè)帶有扇出緩沖器的時(shí)鐘發(fā)生器需要使用多達(dá)12個(gè)I/O,這聽起來好像不多,但是考慮到在一個(gè)應(yīng)用中所需要的不同時(shí)鐘頻率的數(shù)量?,F(xiàn)在你可以很清楚地看到時(shí)鐘分配網(wǎng)絡(luò)用掉了多少FPGA的I/O……太多了!通過優(yōu)化時(shí)鐘網(wǎng)絡(luò),設(shè)計(jì)師們可以使用更小的FPGA或者獲得免費(fèi)的I/O來實(shí)現(xiàn)附加功能。
現(xiàn)代FPGA時(shí)鐘分配示例
高級夾層卡(Advanced MC或AMC)是一個(gè)小型的夾層卡,符合PICMG標(biāo)準(zhǔn)定義。它是開發(fā)AdvancedTCA和MicroTCA系統(tǒng)時(shí),設(shè)計(jì)師選擇的夾層卡。
評估時(shí)鐘源選擇的方法之一是使用一塊評估板,如LatticeECP3 AMC評估板。此板允許為5個(gè)時(shí)鐘網(wǎng)絡(luò)中的每一個(gè)提供多個(gè)時(shí)鐘源選擇,如圖1所示。
圖1 AMC時(shí)鐘網(wǎng)絡(luò)
圖1中,F(xiàn)PGA的SERDES/PCS核可以使用幾種可選的連接。PCS quad可用于多種、雙工SERDES通道,連接到各種千兆以太網(wǎng)接口或AMC背板。
PCSA——來自板上122.88、125或156.25 MHz的時(shí)鐘源。但是,如果使用了122.88 MHz,這將禁止PCSA上任何非CPRI接口。PCSA也可以接收來自AMC背板的時(shí)鐘。
PCSB和PCSC——來自板上125或156.25 MHz器件的時(shí)鐘源。它們還可以從AMC背板接收時(shí)鐘。該時(shí)鐘允許不同的速率或相同的速率時(shí)鐘分別提供給PCSB和PCSC參考時(shí)鐘。
PCSD——來自板上122.88、125或156.25 MHz器件的時(shí)鐘源。它們還可以從AMC背板接收時(shí)鐘信號。
背板——連接AMC edge-finger (TCLKB)的遠(yuǎn)程通信時(shí)鐘。這個(gè)時(shí)鐘可以在不使用時(shí)禁用。
來自AMC的時(shí)鐘:這個(gè)時(shí)鐘能夠?yàn)樗?個(gè)quad提供PCS參考時(shí)鐘的驅(qū)動參考時(shí)鐘源。
輸入AMC的時(shí)鐘:這個(gè)時(shí)鐘能夠驅(qū)動AMC模塊到背板,并且可以是任意PCS quad的同一個(gè)參考時(shí)鐘源。
如圖2所示,AMC時(shí)鐘網(wǎng)絡(luò)最初通過多個(gè)時(shí)鐘發(fā)生器控制,1?4個(gè)扇出緩沖器和一個(gè)2:1多路開關(guān)。該方案需要38個(gè)I/O來進(jìn)行時(shí)鐘分配控制,還需要占用大量電路板面積。
圖2 傳統(tǒng)AMC時(shí)鐘網(wǎng)絡(luò)機(jī)制
利用一個(gè)可編程的時(shí)鐘管理器件,可以大大地優(yōu)化網(wǎng)絡(luò)(如圖3所示)。該方案僅需要18個(gè)I/O來進(jìn)行時(shí)鐘分配控制,節(jié)省了20個(gè)I/O可用于其他功能。此外,使用這種設(shè)計(jì)節(jié)省了超過3平方英寸的電路板面積。
這些方案通過使用兩個(gè)可編程時(shí)鐘管理器件來控制(見圖4)。有幾個(gè)板上振蕩器可以合成和/或扇出作為幾個(gè)時(shí)鐘的輸入。所有的時(shí)鐘變量都可以通過對時(shí)鐘管理器件的編程來進(jìn)行管理。
圖3 優(yōu)化的AMC時(shí)鐘網(wǎng)絡(luò)設(shè)計(jì)
評論