亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種高帶寬利用率的ddr2sdram控制器設(shè)計方法

文檔序號:7687621閱讀:282來源:國知局
專利名稱:一種高帶寬利用率的ddr2 sdram控制器設(shè)計方法
技術(shù)領(lǐng)域
本發(fā)明涉及一種數(shù)據(jù)交換設(shè)備的關(guān)鍵裝置設(shè)計方法,尤其是網(wǎng)絡(luò)數(shù)據(jù)交換 設(shè)備中的控制器設(shè)計方法。
背景技術(shù)
隨著通信領(lǐng)域的網(wǎng)絡(luò)傳輸速度高速增加,各種通訊設(shè)備,尤其是城域網(wǎng),骨 干網(wǎng)的數(shù)據(jù)交換設(shè)備對緩沖器提出了更大的帶寬,更大的容量,更低的成本的 需求。目前的緩沖器主要以兩種Memory為主SDRAM和SRAM。
SRAM的特點是容量小, 一般僅能提供幾十M比特這一數(shù)量級的存儲容量, 接口數(shù)據(jù)速度較低,體積較大,價格也較高,其最突出之處是操作很簡單,帶 寬利用率可達到100%。
SDRAM的特點是容量大,目前的DDR2 SDRAM單顆粒就可以提供多達1G 比特級別的存儲容量;存儲密度高,價格低廉,接口理論帶寬很高,缺點是帶 寬利用率較低, 一般情況下,帶寬利用率僅為30%~40%左右。
DDR2 SDRAM的帶寬利用率低是由其結(jié)構(gòu)導(dǎo)致的。
由于DDR2 SDRAM每次同一個Bank內(nèi),換行操作時,需要先關(guān)閉當(dāng)前Bank 中己經(jīng)打開的行(Precharge),然后激活需要訪問的行(Active),然后才能對數(shù) 據(jù)做讀寫操作。每一個Bank內(nèi),Precharge到Active操作之間有一個固定的延 遲要求(TRP)。 一般,SDRAM的TRP有3個時鐘周期,數(shù)據(jù)采用突發(fā)長度 (BurstLength)為2, 4, 8時,對應(yīng)的帶寬利用率分別為28%, 44%和61.5%。 另外,在DDR2 SDRAM操作中,同一個Bank內(nèi),相鄰兩次Active操作之 間有一個固定間隔時間要求(TRC), 一般TRC在11個時鐘到20個時鐘左右, 也帶來極大的帶寬利用率的浪費。如何解決TRP, TRC和帶寬利用率之間的矛
盾成為提高DDR2 SDRAM帶寬利用率的關(guān)鍵因素。

發(fā)明內(nèi)容
本發(fā)明的目的是提供一種DDR2SDRAM控制器設(shè)計方法的改進,該方法應(yīng) 能在Burst Length為8的情況下提高總線利用率,并具有低成本、高帶寬、大存 儲容量的特點。
本發(fā)明提供的技術(shù)方案是
一種高帶寬利用率的DDR2 SDRAM控制器設(shè)計方法,該方法包括
1) Bank輪換Bank在每次Burst操作之后切換Bank,盡量在保證數(shù)據(jù)總
線高利用率的前提下,將每個Bank相鄰兩次訪問的間隔加大;
2)提前Precharge操作如果下一次操作將需要Precharge然后在Active,
并且和本次操作不沖突,那么,就將這個Precharge操作提前到本次操作之前執(zhí)
行。當(dāng)本次操作完成后,要進行下次操作的Active操作時,TRP時間也已經(jīng)滿足了。
數(shù)據(jù)采用的突發(fā)長度(BurstLength)為8。 本發(fā)明采用的Bank輪換方法,因為突發(fā)長度Burst Length為8,所以在最理 想的狀態(tài)下,同一個Bank的訪問間隔將加大到4x4=16個時鐘周期,能夠滿足 絕大多是情況下的TRC要求。采用的提前Precharge操作方法,在本次操作完 成后,要進行下次操作的Active操作時,己經(jīng)滿足了TRP時間。該控制方法可 將DDR2 SDRAM的數(shù)據(jù)總線帶寬平均利用率提高到70%,配合Bank輪換的機制, 帶寬利用率最高可達99%,幾乎可以和昂貴的SRAM媲美;并且克服了 DDR2 SDRAM 在帶寬利用率上的不足,使廉價的大容量的DDR2 SDRAM在計算機應(yīng)用,通訊設(shè) 備,或者個人數(shù)據(jù)處理終端等有高帶寬利用率的領(lǐng)域得到更廣泛的使用,極大 地降低了系統(tǒng)在高帶寬存儲方面的成本壓力。該DDR2 SDRAM控制器可直接 集成于FPGA或者ASIC電路。


圖1是本發(fā)明的Bank輪換以及提前Precharge操作示意圖。 圖2是DDR2 SDRAM控制器控制原理示意圖。 圖3是FSM狀態(tài)機狀態(tài)轉(zhuǎn)移示意圖。
具體實施例方式
本發(fā)明的最基本的原理就是盡量在TRC以及TRP的時間內(nèi),讓SDRAM提 供其他后續(xù)操作,以減少為了等到TRP和TRC這兩個時間而無謂的帶寬消耗。 由此采用的方法是
l)Bank輪換Bank在每次Burst操作之后切換Bank,盡量在保證數(shù)據(jù)總 線高利用率的前提下,將每個Bank相鄰兩次訪問的間隔加大;
2)提前Precharge操作如果下一次操作將需要Precharge然后再Active, 并且和本次操作不沖突,那么,就將這個Precharge操作提前到本次操作之前執(zhí) 行。那么當(dāng)本次操作完成后,要進行下次操作的Active操作時,TRP時間也己 經(jīng)滿足了。
上述兩種設(shè)計方法將所需要的時間隱藏到正常的數(shù)據(jù)操作中,成功地避免 了因為這兩個參數(shù)而導(dǎo)致總線操作利用率的極大消耗,使得總線操作利用率有 可能達到99%這一極限值。
如圖1所示,對于BankO,連續(xù)兩次Read操作針對不同的Row,也就是說, 第一次Read操作完成之后,在第二次Read之前需要一次Precharge操作將第一 次Read操作打開的Row關(guān)閉,然后再加入一次Active操作將第二次Read操作 需要訪問的Row打開。按照Bank輪換的方式,BankO的連續(xù)兩次操作之間,應(yīng) 該插入其他3個Bank的3次操作。每次操作都是Burst Length為8,也就是需 要4個時鐘,那么BankO的連續(xù)兩個Read操作之間將會有16個時鐘周期的間 隔??梢钥闯鯞ank輪換的方式隱藏了 TRC所需要的時間,節(jié)省了很多空閑的等待周期。Bank輪換牽涉到地址管理的問題,不僅僅是本控制器能夠控制的范
圍,所以對于Bank輪換,本控制器僅提供一個增加地址訪問離散性的可選項,
將Memory訪問地址的最低兩位和最高兩位互換位置,也就是將列地址的最低
兩位和Bank地址互換來加大Memory訪問地址的離散性,使得四個Bank輪換
的幾率更大。但是實現(xiàn)這一目標的最根本解決方式來自地址管理,而不是純粹 依靠本控制器。
另一個操作是由提前插入Precharge來實現(xiàn)的。在執(zhí)行對Bank3的Read操作 時,控制器發(fā)現(xiàn)下一個操作,也就是對Bank0的Read操作,需要對Bank0做 Precharge和Active操作;控制器在Bank3的Read操作之前,提前插入BankO 的Precharge,這樣當(dāng)Bank3的Read操作結(jié)束后,BankO的TRP時間也已經(jīng)滿 足,先Active需要激活的BankO的Row,然后就可以執(zhí)行Read操作。
需要注意的是,無論是插入Precharge操作還是Active操作,各個Read操作 之間僅相差4個時鐘周期,因為Burst Length為8,所以這時候數(shù)據(jù)總線上的數(shù) 據(jù)將是連續(xù)的,如圖l所示,也就是說,這時候DDR2 SDRAM的總線利用率 達到了 100%。假如地址管理做得出色,那么DDR2 SDRAM的總線利用率將達 到99%以上(因為SDRAM的固有特性導(dǎo)致Refresh操作不可避免帶來利用率損 耗)。
根據(jù)以上方法設(shè)計的DDR2 SDRAM控制器在各種集成電路設(shè)計中均可以實 現(xiàn)。目前杭州瑞那科技有限公司已經(jīng)將其廣泛應(yīng)用在FPGA設(shè)計中。在這里講 述的設(shè)計方法不僅僅可以應(yīng)用在FPGA設(shè)計中,對于ASIC電路一樣適用。
圖2所示的控制原理圖中,控制器對外包括兩部分接口對內(nèi)部其他功能模 塊的接口 ;對外部DDR2 SDRAM芯片接口 。
內(nèi)部模塊接口包括操作指令和操作數(shù)據(jù)兩部分。操作指令由當(dāng)前操作指令和 下一操作指令組成,目的是為了能讓控制器在當(dāng)前的操作命令中確定是否需要
為下一個操作指令提前插入一次Precharge操作。操作數(shù)據(jù)則是需要寫入Memory 以及從Memory返回的數(shù)據(jù)。由控制器內(nèi)部狀態(tài)機控制何時提供寫入數(shù)據(jù)以及 何時返回有效數(shù)據(jù)。
4Bank激活行信息表用于記錄每個Bank當(dāng)前已經(jīng)激活的Row,這些記錄和 輸入的操作指令比較,判斷是否需要插入Precharge和Active操作;然后和輸入 的操作指令一起做一次指令編碼輸給狀態(tài)機。
狀態(tài)機是控制器各種控制信號生成的核心。狀態(tài)機由7個狀態(tài)組成,如圖3 所示。
> IDLE為空閑狀態(tài),所有的指令執(zhí)行均從該狀態(tài)開始,根據(jù)輸入的指令編 碼,判斷后續(xù)跳轉(zhuǎn)狀態(tài);
> Wait為等待狀態(tài),該狀態(tài)是一個特殊狀態(tài),仟何其他狀態(tài)在轉(zhuǎn)入Wait狀 態(tài)時,都需要準備好需要等待的時鐘數(shù)量,以及等待時間滿之后的下一 跳狀態(tài)。進入Wait狀態(tài)之后,計數(shù)器計滿需要等待的時間,然后根據(jù)下 一跳狀態(tài)轉(zhuǎn)入下一個狀態(tài)機的狀態(tài)。Wait狀態(tài)不做任何指令處理,只是 負責(zé)等待;
> Precharge狀態(tài),輸出DDR2 SDRAM的Precharge指令;
> Active狀態(tài),輸出DDR2 SDRAM的Active指令;
> Read狀態(tài),輸出DDR2 SDRAM的Read指令;
> Writer狀態(tài),輸出DDR2 SDRAM的Writer指令;
> Refresh狀態(tài),輸出DDR2 SDRAM的Refresh指令。 延遲計數(shù)器模塊為狀態(tài)機提供判斷是否需要進入Wait狀態(tài)以及等待時間的
依據(jù)。延遲計數(shù)器包括每一個Bank的TRC時間,以及總線卜.的TRTP和TWTR 時間。
DQ Logic模塊為控制DQ, DQS輸出和輸入采樣的電路。根據(jù)FPGA的器件
不同,有不同的做法,可以參考FPGA的器件手冊。如果是ASIC設(shè)計,也會根 據(jù)器件庫不同有不同的設(shè)計,這里不再說明。
杭州瑞納科技有限公司己經(jīng)將該DDR2 SDRAM控制器應(yīng)用于多項產(chǎn)品。 配合合理的地址管理機制,均實現(xiàn)了平均帶寬利用率超過80%。有的產(chǎn)品已經(jīng) 達到99%的極限利用率。
根據(jù)目標FPGA的工藝不同,具有不同的控制器時鐘頻率;采用Altera 的CycloneII器件,控制器時鐘頻率能達到125MHz以上,采用StratixII器件, 可以達到200MHz以上;采用Xilinx的Virtex5器件,最高可以達到266MHz。
原有需要提供SRAM器件的設(shè)備均改為采用DDR2 SDRAM,在價格上, DDR2 SDRAM以僅為SRAM的不到10%的價格提供了相通的帶寬,而且提供 了16倍以上的存儲容量,為實際設(shè)備節(jié)省了可觀的成本,具有很好的經(jīng)濟效 益和社會效益。
此外,圖2中還標注有cmd—cur一valid (當(dāng)前命令有效指示)、 cmd—next—valid (下一個命令有效指示)、cmd—addr—cur (當(dāng)前命令需要操作的 存儲器地址)、cmd—addr—next (下一個命令需要操作的存儲器地址)、cur—status (當(dāng)前命令對應(yīng)地址的激活狀態(tài))、next—status (下一個命令對應(yīng)地址的激活狀 態(tài))、cmd—clear (清除命令編碼指示)、fsm—cur—status (狀態(tài)機當(dāng)前狀態(tài))、 cmd—code (命令編碼)、cmd—ack (命令接受指示)、cmd—done (命令執(zhí)行完成 指示)、data—in一ref (待寫入存儲器數(shù)據(jù)輸入時刻指示)、data—valid (讀存儲器 返回數(shù)據(jù)有效指示)、data—in (待寫入存儲其數(shù)據(jù))、data—out (讀存儲器返回 數(shù)據(jù))、rasn(SDRAM接口信號,斤選擇)、casn (SDRAM接口信號,列選擇)、 wen (SDRAM接口信號,寫使能)、csn ( SDRAM接口信號,片選)、dq (SDRAM 接口信號,雙向輸入輸出數(shù)據(jù))、dqs (SDRAM接口信號,雙向輸入輸出數(shù)據(jù) 時鐘)。
權(quán)利要求
1、一種高帶寬利用率的DDR2SDRAM控制器設(shè)計方法,該方法包括1)Bank輪換Bank在每次Burst操作之后切換Bank,盡量在保證數(shù)據(jù)總線高利用率的前提下,將每個Bank相鄰兩次訪問的間隔加大;2)提前Precharge操作如果下一次操作將需要Precharge然后在Active,并且和本次操作不沖突,那么,就將這個Precharge操作提前到本次操作之前執(zhí)行。
2、 根據(jù)權(quán)利要求1所述的一種禽帶寬利用率的DDR2 SDRAM控制器設(shè)計 方法,其特征在于該方法中數(shù)據(jù)采用的突發(fā)長度為8。
全文摘要
本發(fā)明涉及一種網(wǎng)絡(luò)數(shù)據(jù)交換設(shè)備中的控制器設(shè)計方法。目的是提供的方法應(yīng)能在突發(fā)長度為8的情況下提高總線利用率,并具有低成本、高帶寬、大存儲容量的特點。技術(shù)方案是一種高帶寬利用率的DDR2 SDRAM控制器設(shè)計方法,包括1)Bank輪換Bank在每次Burst操作之后切換Bank,盡量在保證數(shù)據(jù)總線高利用率的前提下,將每個Bank相鄰兩次訪問的間隔加大;2)提前Precharge操作如果下一次操作將需要Precharge然后在Active,并且和本次操作不沖突,那么,就將這個Precharge操作提前到本次操作之前執(zhí)行。數(shù)據(jù)采用的突發(fā)長度為8。
文檔編號H04L29/02GK101340365SQ200810063328
公開日2009年1月7日 申請日期2008年8月11日 優(yōu)先權(quán)日2008年8月11日
發(fā)明者斌 向, 吳辰敦, 駿 張, 科 路, 旭 鄧, 鐘林鋼 申請人:杭州瑞納科技有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1