<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 牛人業(yè)話(huà) > FPGA研發(fā)之道(8)架構設計漫談(三)時(shí)鐘和復位

FPGA研發(fā)之道(8)架構設計漫談(三)時(shí)鐘和復位

作者: 時(shí)間:2014-10-23 來(lái)源:網(wǎng)絡(luò ) 收藏

  接口確定以后,內部如何規劃?首先需要考慮就是時(shí)鐘和。

本文引用地址:http://dyxdggzs.com/article/264351.htm

  時(shí)鐘:根據時(shí)鐘的分類(lèi),可以分為邏輯時(shí)鐘,接口時(shí)鐘,存儲器時(shí)鐘等;

  (1)邏輯時(shí)鐘取決與邏輯的關(guān)鍵路徑,最終值是設計和優(yōu)化的結果,從經(jīng)驗而不是實(shí)際出發(fā):低端(cyclone spantan)工作頻率在40-80Mhz之間,而高端器件(stratix virtex)可達100-200Mhz之間,根據各系列的先后性能會(huì )有所提升,但不是革命性的。

  (2)接口時(shí)鐘,異步信號的時(shí)序一般也是通過(guò)片內同步邏輯產(chǎn)生,一般需要同步化,即接口的同步化采樣。某些接口的同步時(shí)鐘一般是固定而精確的,例如下表所示,如SERDES的時(shí)鐘盡量由該BANK的專(zhuān)用時(shí)鐘管腳輸入,這樣可保證一組SERDES組成的高速接口時(shí)鐘偏斜一致。

  (3)外部存儲器時(shí)鐘:這里時(shí)鐘主要為L(cháng)PDDR/DDR2/DDR3等器件的時(shí)鐘,一般來(lái)說(shuō)FPGA的接口不用工作在相應器件的最高頻率。能夠滿(mǎn)足系統緩存數據的性能即可,但是一般這些IP的接口都規定了相應的最小時(shí)鐘頻率,因為這些接口狀態(tài)機需不停進(jìn)行外部器件的刷新(充電),過(guò)低的頻率可能會(huì )引起刷新的問(wèn)題,造成數據丟失或者不穩定。

  (4)另外一些需要輸出的低速時(shí)鐘,例如I2C、MDIO、低速采樣等操作,可以通過(guò)內部分頻得到。不用通過(guò)PLL/DCM產(chǎn)生所需時(shí)鐘。在XILINX的FPGA中,禁止PLL產(chǎn)生的時(shí)鐘直接輸出到管腳上,而ALTERA的器件可以如此操作。解決此類(lèi)問(wèn)題的方法可通過(guò)ODDR器件通過(guò)時(shí)鐘及其180度相位時(shí)鐘(反向)接入的時(shí)鐘管腳分別采樣0、1邏輯得到。

  因為有了DCM/PLL這些專(zhuān)用產(chǎn)生時(shí)鐘的器件,似乎產(chǎn)生任意時(shí)鐘輸出都是可能是,但實(shí)際例化的結果,時(shí)鐘的輸出只能選取某些范圍和某些頻率,取決于輸入時(shí)鐘和分頻系數,CLK_OUT = CLK_IN *(M/N) 。這些分頻系數基本取整數,其產(chǎn)生的頻率也是有限的值。

  :根據的分類(lèi),FPGA內部復位可以分為硬復位,邏輯復位、軟復位等;

  硬復位:故名思議,即外部引腳引入的復位,可以在上電時(shí)給入,使整個(gè)FPGA邏輯配置完成后,能夠達到穩定的狀態(tài),這種復位重要性在于復雜單板上除了FPGA外,可能還有多個(gè)器件(CPU、DSP),其上電順序不同,在未完成全部上電之前,其工作狀態(tài)為不穩定狀態(tài)。這種復位引腳可以通過(guò)專(zhuān)用時(shí)鐘管腳引入,也可通過(guò)普通I/O引入,一般由單板MCU或者CPLD給出。

  邏輯復位:則是由FPGA內部邏輯產(chǎn)生,例如可以通過(guò)計數產(chǎn)生,等待一段時(shí)間開(kāi)始工作,一般等待外部某些信號準備好,另一種FPGA內部邏輯準備好的狀態(tài)信號,常見(jiàn)的有DCM/PLL的LOCK信號;只有內部各邏輯準備好后,FPGA才能正常工作。另外FPGA內部如設計邏輯的看門(mén)狗的話(huà),其產(chǎn)生的復位屬于這個(gè)層次。

  軟復位:嚴格的說(shuō),應屬于調試接口,指FPGA接收外部指令產(chǎn)生的復位信號,用于復位某些模塊,用于定位和排除問(wèn)題,也屬于可測性設計的一部分。例如FPGA通過(guò)EMIF接口與CPU連接,內部設定軟復位寄存器,CPU通過(guò)寫(xiě)此寄存器可以復位FPGA內部單元邏輯,通過(guò)寫(xiě)內部寄存器進(jìn)行軟復位,是復雜IP常用的功能接口。調試時(shí),FPGA返回錯誤或無(wú)返回,通過(guò)軟復位能否恢復,可以迅速定位分割問(wèn)題,加快調試速度。

  復位一般通過(guò)與或者或的方式(高電平或、低電平與),產(chǎn)生統一的復位給各模塊使用。模塊軟復位信號,只在本模塊內部使用。

  問(wèn)題:同步復位好、還是異步復位好? XILINX雖然推薦同步復位,但也不一概而論,復位的目的是使整個(gè)系統處于初始狀態(tài),這根據個(gè)人寫(xiě)代碼經(jīng)驗,這些操作都可以,前提是整個(gè)設計為同步設計,時(shí)鐘域之間相互隔開(kāi),復位信號足夠長(cháng),而不是毛刺。下面推薦一種異步復位的同步化方式,其電路圖如下:

  

 

  時(shí)鐘和復位基本上每個(gè)模塊的基本輸入,也是FPGA架構上首先要規劃的部分,而不要用到才考慮,搞的整個(gè)設計到處例化DCM或者輸出LOCK進(jìn)行復位,這些對于工程的可維護性和問(wèn)題定位都沒(méi)有益處?!吨渭腋裱浴氛f(shuō):“宜未雨而綢繆,毋臨渴而掘井。這與FPGA時(shí)鐘和復位的規劃是同一個(gè)意思。

fpga相關(guān)文章:fpga是什么


電路圖符號相關(guān)文章:電路圖符號大全


存儲器相關(guān)文章:存儲器原理




關(guān)鍵詞: FPGA 架構設計 復位

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>