日韩床上生活一级视频|能看毛片的操逼网站|色悠悠网站在线观看视频|国产免费观看A淫色免费|国产av久久久久久久|免费A级视频美女网站黄|国产毛片av日韩小黄片|热久久免费国产视频|中文字幕无码色色|成人在线视频99久久久

機(jī)電之家資源網(wǎng)
單片機(jī)首頁(yè)|單片機(jī)基礎(chǔ)|單片機(jī)應(yīng)用|單片機(jī)開發(fā)|單片機(jī)文案|軟件資料下載|音響制作|電路圖下載 |嵌入式開發(fā)
培訓(xùn)信息
贊助商
DDR內(nèi)存接口的設(shè)計(jì)與實(shí)現(xiàn)
DDR內(nèi)存接口的設(shè)計(jì)與實(shí)現(xiàn)
 更新時(shí)間:2008-8-4 4:45:13  點(diǎn)擊數(shù):14
【字體: 字體顏色


    

摘  要: 針對(duì)當(dāng)今電子系統(tǒng)對(duì)高速大容量?jī)?nèi)存的需要,本文闡述了使用DDR控制器IP核來(lái)設(shè)計(jì)實(shí)現(xiàn)DDR內(nèi)存接口的方法。該方法能使設(shè)計(jì)盡可能簡(jiǎn)單,讓設(shè)計(jì)者更專注于關(guān)鍵邏輯設(shè)計(jì),以便達(dá)到更高的性能。該設(shè)計(jì)經(jīng)過(guò)仿真顯示,完全符合要求。
關(guān)鍵字:DDR內(nèi)存  IP核  地址產(chǎn)生邏輯  FIFO

1.引言
    在當(dāng)今的電子系統(tǒng)設(shè)計(jì)中內(nèi)存被使用的越來(lái)越多,用來(lái)存放數(shù)據(jù)和程序。并且對(duì)內(nèi)存的要求越來(lái)越高,要求內(nèi)存讀寫速度盡可能的快,容量盡可能的大。面對(duì)這種趨勢(shì),設(shè)計(jì)實(shí)現(xiàn)大容量高速讀寫的內(nèi)存顯得尤為重要。
    本文結(jié)合筆者承擔(dān)的T比特路由器項(xiàng)目,對(duì)其中的大容量高速DDR內(nèi)存接口的設(shè)計(jì)實(shí)現(xiàn)進(jìn)行了詳細(xì)闡述。本文第2節(jié)對(duì)與DDR內(nèi)存相關(guān)的知識(shí)做了簡(jiǎn)單的介紹,從總體上對(duì)DDR內(nèi)存有個(gè)認(rèn)識(shí);第3節(jié)闡述了DDR內(nèi)存接口模塊的整體設(shè)計(jì);第4節(jié)對(duì)整個(gè)設(shè)計(jì)中的關(guān)鍵設(shè)計(jì)地址產(chǎn)生邏輯進(jìn)行了詳細(xì)闡述;最后總結(jié)全文。

2.DDR內(nèi)存相關(guān)知識(shí)介紹
    DDR SDRAM是雙數(shù)據(jù)率同步動(dòng)態(tài)隨機(jī)存儲(chǔ)器的縮寫。它能夠在一個(gè)時(shí)鐘周期內(nèi)傳送兩次數(shù)據(jù),也就是說(shuō)數(shù)據(jù)速率是時(shí)鐘頻率的兩倍,可以達(dá)到很高的數(shù)據(jù)讀寫速度。此外它通過(guò)對(duì)地址線的分時(shí)復(fù)用,可以做到很大的容量。比如我們?cè)O(shè)計(jì)實(shí)現(xiàn)的DDR內(nèi)存時(shí)鐘頻率可達(dá)到150MHz,數(shù)據(jù)速率為300MHz,容量達(dá)到1M x 72bit。
    DDR內(nèi)存為了更精確的同步使用若干對(duì)差分時(shí)鐘;它還有一個(gè)獨(dú)特的數(shù)據(jù)脈沖信號(hào)(DQS)。DDR內(nèi)存就是根據(jù)DQS來(lái)分割一個(gè)時(shí)鐘周期內(nèi)的兩次數(shù)據(jù)。更需要注意的是:DDR內(nèi)存沒(méi)有一個(gè)信號(hào)是發(fā)送讀或?qū)懙拿鞔_命令的,而是通過(guò)芯片的可寫狀態(tài)來(lái)達(dá)到讀/寫的目的。具體為:片選信號(hào)(CS),行地址有效信號(hào)(RAS),列地址有效信號(hào)(CAS),寫允許信號(hào)(WE)。它們都是低電平有效,它們的不同組合構(gòu)成了對(duì)DDR內(nèi)存的不同命令。比如CS,CAS有效,RAS無(wú)效,WE無(wú)效,表示從現(xiàn)在地址線指示的存儲(chǔ)單元處讀出一個(gè)數(shù)據(jù)放到數(shù)據(jù)線上;再如CS,CAS有效,RAS無(wú)效,WE有效,表示將數(shù)據(jù)線上的數(shù)據(jù)寫入現(xiàn)在地址線指示的存儲(chǔ)單元處。
    DDR內(nèi)存可以支持突發(fā)讀寫,并能根據(jù)不同的需要選擇不同的突發(fā)長(zhǎng)度(BL);位寬也可以選擇,并能利用掩碼技術(shù)靈活的選擇每次讀寫的有效數(shù)據(jù)寬度(以8bit為單位);此外由于DDR內(nèi)存讀寫時(shí)需要先激活(Active)將要讀寫的存儲(chǔ)單元行,然后再讀寫,但DDR內(nèi)存任何時(shí)候只能有一存儲(chǔ)行是打開的(處于激活態(tài)),因此在需要讀寫不同存儲(chǔ)行時(shí),要先關(guān)閉前已打開的存儲(chǔ)行,才能打開現(xiàn)在將要讀寫的存儲(chǔ)單元行,這一操作被稱為預(yù)充電(precharge)。另外由于DDR內(nèi)存是動(dòng)態(tài)存儲(chǔ)器,需要對(duì)存儲(chǔ)體進(jìn)行周期性的刷新(refresh)。
    從上面的介紹中可以看出DDR內(nèi)存的性能雖然好,但接口控制很復(fù)雜。為了快速實(shí)現(xiàn)DDR內(nèi)存接口,縮短設(shè)計(jì)周期,我們使用已經(jīng)成熟的商業(yè)化內(nèi)存控制器 IP 核對(duì)DDR內(nèi)存進(jìn)行控制。我們使用的是Altera公司的DDR Controller IP核,版本為2.2.0,使用的開發(fā)工具為Quartus II 4.1,使用VHDL語(yǔ)言進(jìn)行描述。

3.獨(dú)立內(nèi)存接口模塊整體設(shè)計(jì)
    為了將內(nèi)存接口模塊設(shè)計(jì)成相對(duì)獨(dú)立的模塊,也為了調(diào)整不同模塊之間的時(shí)鐘相位差,使數(shù)據(jù)穩(wěn)定輸入輸出,我們給DDR內(nèi)存接口模塊前端增加了一個(gè)入口FIFO,出口增加了一個(gè)出口FIFO。我們的功能需求是根據(jù)出口FIFO的狀態(tài)確定是否將數(shù)據(jù)送往DDR內(nèi)存條中進(jìn)行緩存,并且設(shè)計(jì)中必須充分考慮DDR內(nèi)存條存儲(chǔ)器帶寬的利用效率,設(shè)計(jì)成批量讀寫的模式,減少讀寫切換工作的開銷。該內(nèi)存模塊具體完成以下功能:
1)使用DDR控制器IP核完成對(duì)DDR內(nèi)存的初始化配置,產(chǎn)生讀寫命令和其他各種控制信號(hào);
2)根據(jù)出口FIFO狀態(tài)產(chǎn)生對(duì)DDR內(nèi)存接口的讀寫請(qǐng)求;
3)并且整個(gè)系統(tǒng)對(duì)數(shù)據(jù)的緩存處理應(yīng)該公平,不能有系統(tǒng)差別,也就是說(shuō)要保證在任何情況下讀出的數(shù)據(jù)都是有效的數(shù)據(jù),寫入的數(shù)據(jù)不覆蓋DDR中的原有效數(shù)據(jù);DDR內(nèi)存接口模塊主要功能由DDR控制器IP核完成,對(duì)DDR內(nèi)存進(jìn)行初始化配置,產(chǎn)生讀寫命令和其他各種控制信號(hào)。DDR控制器有兩個(gè)接口:DDR-interface和local-interface。DDR-interface直接與DDR內(nèi)存條相連,不需要干預(yù)。local-interface就是根據(jù)不同需要輸入不同信號(hào),可以增加自己的邏輯。我們需要設(shè)計(jì)的邏輯就是產(chǎn)生讀寫請(qǐng)求信號(hào)和對(duì)應(yīng)的地址信息送給DDR控制器,DDR控制器把這些請(qǐng)求轉(zhuǎn)換為對(duì)DDR內(nèi)存的數(shù)據(jù)讀寫。因此DDR內(nèi)存接口模塊的重點(diǎn)是對(duì)地址產(chǎn)生邏輯的設(shè)計(jì)。我們的內(nèi)存模塊設(shè)計(jì)框圖詳見圖1。 

  

圖1  DDR內(nèi)存接口模塊設(shè)計(jì)框圖

4.內(nèi)存讀寫地址產(chǎn)生邏輯的FPGA設(shè)計(jì)實(shí)現(xiàn)
     根據(jù)本模塊的功能需求,在出口FIFO的狀態(tài)為忙時(shí),要將數(shù)據(jù)送往DDR內(nèi)存條緩存,當(dāng)出口FIFO的狀態(tài)為非忙時(shí),要將數(shù)據(jù)從DDR內(nèi)存條讀出送到出口FIFO。并且設(shè)計(jì)必須充分考慮DDR內(nèi)存條存儲(chǔ)器帶寬的利用效率,設(shè)計(jì)成批量讀寫的模式,減少讀寫切換工作的開銷。出口FIFO的狀態(tài)能由門限信號(hào)th1和th2反映出來(lái),從而根據(jù)th1和th2反饋控制地址產(chǎn)生邏輯。
    此外還要注意數(shù)據(jù)的次序,要保證對(duì)數(shù)據(jù)的公平處理,不能對(duì)數(shù)據(jù)造成系統(tǒng)差別,因此整個(gè)DDR內(nèi)存邏輯上是一個(gè)循環(huán)隊(duì)列。還要保證:DDR內(nèi)存滿時(shí),不應(yīng)再寫DDR內(nèi)存;DDR內(nèi)存空時(shí),不應(yīng)再讀DDR內(nèi)存。DDR內(nèi)存的空滿對(duì)地址產(chǎn)生邏輯也有重要影響。
    從上面分析中看出:對(duì)地址產(chǎn)生邏輯有影響的信號(hào)是出口FIFO的狀態(tài)指示信號(hào)th1和th2,DDR內(nèi)存的空滿信號(hào);輸出信號(hào)為對(duì)DDR內(nèi)存的讀請(qǐng)求rd_req和寫請(qǐng)求wr_req,地址addr。規(guī)定:th1=1表示出口FIFO幾乎空,出口FIFO狀態(tài)為非忙,可以對(duì)DDR內(nèi)存發(fā)出讀請(qǐng)求,直到th2=1為止;th2=1表示出口FIFO幾乎滿,出口FIFO狀態(tài)為忙,可以對(duì)DDR內(nèi)存發(fā)出寫請(qǐng)求,直到th1=1為止。
    DDR內(nèi)存的空滿由讀寫地址的比較得出,并且要提前幾個(gè)時(shí)鐘周期置出。非空標(biāo)志由這樣的地址比較得出:rdaddr/= wraddr-2 and rdaddr/= wraddr-1 and rdaddr/=wraddra;非滿標(biāo)志由這樣的地址比較得出:  wraddr+2/=rdaddr and wraddr+3/=rdaddr and rdaddr/= wraddr+1。
讀請(qǐng)求rd_req產(chǎn)生條件是: ①DDR內(nèi)存非空,DDR內(nèi)存滿且th2=0;
    ②DDR內(nèi)存非空,DDR內(nèi)存非滿且th1=1至th2=1。
寫請(qǐng)求wr_req產(chǎn)生條件是:①DDR內(nèi)存非滿,DDR內(nèi)存空;
    ②DDR內(nèi)存非滿,DDR內(nèi)存非空且th2=1至th1=1。
    DDR內(nèi)存模塊的地址產(chǎn)生邏輯使用VHDL語(yǔ)言在Quartus II 4.1上實(shí)現(xiàn),最后編程例化到Altera公司的Stratix GX系列FPGA中物理實(shí)現(xiàn)。具體仿真波形詳見圖2。


 
                   圖 2  DDR內(nèi)存模塊地址產(chǎn)生程序的信號(hào)仿真波形
    仿真說(shuō)明:輸入時(shí)鐘為150M,復(fù)位信號(hào)高有效,ready為DDR控制器準(zhǔn)備好信號(hào),th1=1表示出口FIFO幾乎空,在DDR內(nèi)存非空時(shí),應(yīng)該讀DDR內(nèi)存;th2=1表示出口FIFO幾乎滿,在DDR內(nèi)存非滿時(shí),應(yīng)該寫DDR內(nèi)存;輸出數(shù)據(jù)為讀請(qǐng)求信號(hào)rdreq,寫請(qǐng)求信號(hào)wrreq,輸出地址信號(hào)ddraddr(為仿真方便,仿真時(shí)的地址位寬設(shè)定為5bit)。
    通過(guò)仿真從Quartus II 4.1的報(bào)告中可以看到如此設(shè)計(jì)的時(shí)鐘可以最高達(dá)到162.92MHz,符合設(shè)計(jì)要求的150MHz。其它功能要求也能滿足。

5.結(jié)束語(yǔ)
    本文根據(jù)電子系統(tǒng)對(duì)高速大容量?jī)?nèi)存的需要,使用成熟商業(yè)化DDR控制器IP核來(lái)設(shè)計(jì)獨(dú)立的DDR內(nèi)存接口模塊,不僅能從控制的細(xì)節(jié)中解脫出來(lái),專注于系統(tǒng)的關(guān)鍵功能設(shè)計(jì),并且能夠獲得更高的性能,完全滿足我們的功能性能需要。經(jīng)測(cè)試該設(shè)計(jì)性能穩(wěn)定,整個(gè)工作流程簡(jiǎn)單實(shí)用,符合設(shè)計(jì)要求。



  • 上一篇: ADμC812的I2C總線接口及其應(yīng)用
  • 下一篇: 基于CPLD的DSP和液晶模塊接口設(shè)計(jì)
  • 發(fā)表評(píng)論   告訴好友   打印此文  收藏此頁(yè)  關(guān)閉窗口  返回頂部
    熱點(diǎn)文章
     
    推薦文章
     
    相關(guān)文章
    網(wǎng)友評(píng)論:(只顯示最新5條。)
    關(guān)于我們 | 聯(lián)系我們 | 廣告合作 | 付款方式 | 使用幫助 | 機(jī)電之家 | 會(huì)員助手 | 免費(fèi)鏈接

    點(diǎn)擊這里給我發(fā)消息66821730(技術(shù)支持)點(diǎn)擊這里給我發(fā)消息66821730(廣告投放) 點(diǎn)擊這里給我發(fā)消息41031197(編輯) 點(diǎn)擊這里給我發(fā)消息58733127(審核)
    本站提供的機(jī)電設(shè)備,機(jī)電供求等信息由機(jī)電企業(yè)自行提供,該企業(yè)負(fù)責(zé)信息內(nèi)容的真實(shí)性、準(zhǔn)確性和合法性。
    機(jī)電之家對(duì)此不承擔(dān)任何保證責(zé)任,有侵犯您利益的地方請(qǐng)聯(lián)系機(jī)電之家,機(jī)電之家將及時(shí)作出處理。
    Copyright 2007 機(jī)電之家 Inc All Rights Reserved.機(jī)電之家-由機(jī)電一體化網(wǎng)更名-聲明
    電話:0571-87774297 傳真:0571-87774298
    杭州濱興科技有限公司提供技術(shù)支持

    主辦:杭州市高新區(qū)(濱江)機(jī)電一體化學(xué)會(huì)
    中國(guó)行業(yè)電子商務(wù)100強(qiáng)網(wǎng)站

    網(wǎng)站經(jīng)營(yíng)許可證:浙B2-20080178-1