www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁 > EDA > 電子設(shè)計(jì)自動化
[導(dǎo)讀]本文采用LatticeXP系列FPGA結(jié)合IP解決DDR RAM的讀寫控制。并且在硬件上面進(jìn)行了實(shí)際測試。

摘要: 本文采用LatticeXP系列FPGA結(jié)合IP解決DDR RAM的讀寫控制。并且在硬件上面進(jìn)行了實(shí)際測試。
關(guān)鍵詞: 嵌入式系統(tǒng);DDR RAM;FPGA;IP;LattcieXP

前言

    隨著高速處理器的不斷發(fā)展,嵌入式系統(tǒng)應(yīng)用的領(lǐng)域越來越廣泛,數(shù)字信號處理的規(guī)模也越來越大,系統(tǒng)中RAM規(guī)模不斷增加,比如視頻監(jiān)控、圖像數(shù)據(jù)采集等領(lǐng)域,圖像處理的實(shí)時性對RAM帶寬的要求不斷增加,傳統(tǒng)的SDRAM在帶寬上已經(jīng)逐漸無法滿足應(yīng)用要求,DDR SDRAM(雙倍速率SDRAM)采用在時鐘CLK信號的上升和下降沿,雙沿做數(shù)據(jù)傳輸;比傳統(tǒng)的SDRAM只在時鐘上升沿傳輸?shù)姆绞?,傳輸帶寬增加了一倍。DDR RAM已開始廣泛應(yīng)用于嵌入式系統(tǒng)中,正逐步取代傳統(tǒng)的SDRAM。

    DDR RAM操作速度的提高,對設(shè)計(jì)者來說,對控制時序的設(shè)計(jì)有了更高的要求;并且,DDR內(nèi)存采用的是支持2.5V電壓的SSTL-Ⅱ標(biāo)準(zhǔn),不再是SDRAM使用的3.3V電壓的LVTTL標(biāo)準(zhǔn)。在很多的處理器上面并不帶有DDR RAM控制器,這對設(shè)計(jì)者來說,使用DDR RAM難度增加。往往需要在設(shè)計(jì)中插入控制器實(shí)現(xiàn)微處理器或DSP對存儲器的控制。

    現(xiàn)場可編程門陣列(FPGA)已廣泛應(yīng)用于嵌入式系統(tǒng)中?,F(xiàn)在很多FPGA都提供了針對DDR SDRAM的接口特性:其輸入輸出引腳與SSTL-Ⅱ電氣特性兼容,內(nèi)部提供了DDR觸發(fā)器、鎖相環(huán)等硬件資源。使用這些特性,可以比較容易地設(shè)計(jì)性能可靠的高速DDR RAM控制器。本文針對這一問題,介紹一種采用Lattice FPGA與IP來實(shí)現(xiàn)DDR RAM控制和驗(yàn)證的方法。

LatticeXP

    LatticeXP器件將非易失的FLASH單元和SRAM技術(shù)組合在一起,支持瞬間啟動和無限可重構(gòu)的單芯片解決方案。FLASH單元陣列中保存用戶配置文件。上電時,配置文件在1毫秒內(nèi)從FLASH存儲器中被傳送到配置SRAM中,完成瞬時上電。

    器件內(nèi)部分為:PIC (可編程的I/O單元),非易失的FLASH MEMORY,SYSCONFIG配置端口,PFU(可編程功能單元),PLL(模擬鎖相環(huán)),PFF(非RAM/ROM功能可編程邏輯單元),EBR(嵌入式RAM塊),JTAG口等幾部分(見圖1)。

圖1 LatticeXP內(nèi)部結(jié)構(gòu)圖

DDR controller IP的生成

    IPExpress是Lattice開發(fā)軟件中生成IP模塊的工具,可根據(jù)用戶設(shè)定的參數(shù)生成IP模塊,使用非常方便。

    點(diǎn)擊啟動IPexpress進(jìn)入生成界面(見圖2)。在左邊選取DDR SDRAM工程,在右邊設(shè)置工程名稱和文件保存地址。

圖2 IPexpress界面

    點(diǎn)擊下一步,開始進(jìn)入?yún)?shù)設(shè)置(見圖3)。這里面進(jìn)行設(shè)置DDR RAM的行、列的參數(shù),以及Bank。這些參數(shù)都是根據(jù)DDR RAM芯片手冊進(jìn)行設(shè)置。本文中采用的DDR RAM顆粒是現(xiàn)代公司的HY5DU561622,16M x16,4bank顆粒。

圖3 DDR RAM的行、列的參數(shù)配置

    下一步,進(jìn)行時序延時上面的設(shè)置(見圖4)。

圖4 DDR RAM顆粒時序參數(shù)配置

    在這里設(shè)置tRAC(行訪問周期,RAS Access Cycle/Delay)、tCAC(列訪問周期,CAS Access Cycle/ Delay)等參數(shù)。這些參數(shù),在DDR RAM顆粒芯片的手冊中都有詳細(xì)的列表。需要特別指出的是,由于芯片提供商會針對不同的DDR標(biāo)準(zhǔn),例如DDR400,DDR333等,給出不同的延時參數(shù),會是以ns為單位的幾個不同的列表,需要根據(jù)設(shè)計(jì)的不同,參考不同的表格。因?yàn)镮P生成器中采用的是單一參數(shù)設(shè)置,單位采用了CLK為單位,這就需要根據(jù)設(shè)計(jì)標(biāo)準(zhǔn)以及時鐘頻率來轉(zhuǎn)換一下,進(jìn)行設(shè)定。本文采用的是DDR266標(biāo)準(zhǔn),時鐘為133MHz,對應(yīng)的時鐘周期為1/133MHz,大約為7.5ns。這樣,芯片在DDR266標(biāo)準(zhǔn)的TRCD為20ns(最小值),對應(yīng)到IP的參數(shù)中就是3。其他參數(shù)也是類似的換算。

    設(shè)置完畢以后,點(diǎn)擊generate,可以生成IP代碼文件,如圖5。

圖5 IP生成

DDR controller IP的使用與驗(yàn)證

    生成的DDR Controller IP的接口結(jié)構(gòu)如圖6所示。

圖6 DDR Controller接口

    RAM接口根據(jù)信號的定義,對應(yīng)DDR RAM接口信號。另一端是用戶接口,包括復(fù)位、時鐘、地址、數(shù)據(jù)、讀寫、狀態(tài)信號等。數(shù)據(jù)通過用戶接口送入,通過IP控制時序送到DDR RAM對用的地址當(dāng)中。

    對IP的測試,采用數(shù)據(jù)寫入與讀出進(jìn)行校驗(yàn)的方式來實(shí)現(xiàn)。測試框圖如圖7所示。

圖7 測試原理框圖

    在FPGA內(nèi)部做兩個RAM區(qū)域,用于數(shù)據(jù)的保存。這里使用FPGA內(nèi)部的RAM塊,做了兩塊256×32b大小的RAM存儲區(qū)。編寫FPGA代碼,做一個簡單的偽隨機(jī)序列發(fā)生器,通過簡單的異或算法,產(chǎn)生32位隨機(jī)數(shù)據(jù)序列。產(chǎn)生的數(shù)據(jù)存入其中一塊RAM當(dāng)中,同時也送到IP的用戶接口端,寫入DDR RAM。

    在256深度的存儲區(qū)域?qū)憹M以后,開始從DDR RAM回讀數(shù)據(jù)。并把讀取的數(shù)據(jù)送到FPGA內(nèi)部另外一塊RAM當(dāng)中。兩塊RAM中對用地址的數(shù)據(jù)作比較。如果數(shù)據(jù)一致,說明DDR RAM讀寫正常;如果不同,說明DDR RAM讀寫操作有錯誤。

    由于本設(shè)計(jì)采用的是DIMM內(nèi)存條512Mb容量,因此測試時,數(shù)據(jù)地址采用基址加變址的方式。每一次測試256×32b的數(shù)據(jù)完成后,循環(huán)進(jìn)入下一次測試時,將起始基地址加256,再進(jìn)行數(shù)據(jù)操作。這樣最終完整可以掃描512M的數(shù)據(jù)地址空間,使測試更加完整。這種測試的方法,采用小塊地址,多次操作,可以減少FPGA內(nèi)部RAM的使用量。

    本文中編寫的測試代碼采用Verilog語言編寫,邏輯如圖8。

圖8 測試代碼邏輯狀態(tài)機(jī)

硬件測試結(jié)果

    本實(shí)驗(yàn)是在Lattice的XP advanced版demo板上進(jìn)行的。

    采用的FPGA為LFXP10C-5F384,內(nèi)存條為Kingston 512M筆記本內(nèi)存條,RAM顆粒為現(xiàn)代HY5DU561622。測試DDR266連續(xù)運(yùn)行2小時,數(shù)據(jù)無異常,DDR讀寫操作完全正常。

結(jié)語

    在嵌入式系統(tǒng)中應(yīng)用DDR RAM的越來越多,在設(shè)計(jì)當(dāng)中采用FPGA,不僅設(shè)計(jì)靈活,而且還可以將周邊的數(shù)字器件綜合設(shè)計(jì)進(jìn)入FPGA,大大提高系統(tǒng)設(shè)計(jì)的性價比。

參考文獻(xiàn)
1.  胡為,DDR SDRAM在嵌入式系統(tǒng)中的應(yīng)用,單片機(jī)與嵌入式系統(tǒng)應(yīng)用,2006.3
2.  LatticeXP  family handbook. Lattice semiconductor Co.,2006.6
3.  Lattice DDR1/2 controller user guide.Lattice semiconductor Co.,2006.6

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

上海2022年10月18日 /美通社/ -- 2022年9月5日,是首都銀行集團(tuán)成立60周年的紀(jì)念日。趁著首都銀行集團(tuán)成立60周年與首都銀行(中國)在華深耕經(jīng)營12年的“大日子”,圍繞作為外資金融機(jī)構(gòu)對在華戰(zhàn)略的構(gòu)想和業(yè)...

關(guān)鍵字: 數(shù)字化 BSP 供應(yīng)鏈 控制

隨著13代酷睿處理器的上市,銘瑄本次同步發(fā)布了四款Z790主板,包括兩款A(yù)TX、一款mATX,以及一款I(lǐng)TX迷你小板。其中,包括新款MS-終結(jié)者Z790M D5主板,售價僅1499元。將在10月20日21點(diǎn)隨13代酷睿處...

關(guān)鍵字: 酷睿 ATX 接口 DDR

根據(jù)害蟲控制公司Orkin最新發(fā)布的“美國鼠患最嚴(yán)重的城市”年度調(diào)查,芝加哥連續(xù)第八年排在第一。報告統(tǒng)計(jì)時間從2021年9月1日至2022年8月31日,包括住宅樓和商業(yè)地產(chǎn)。紐約上升至第二,洛杉磯第三。每年秋季,老鼠和其...

關(guān)鍵字: 控制

最近為什么越來越多的研究開始利用FPGA作為CNN加速器?FPGA與CNN的相遇究竟能帶來什么神奇效果呢?原來,F(xiàn)PGA擁有大量的可編程邏輯資源,相對于GPU,它的可重構(gòu)性以及高功耗能效比的優(yōu)點(diǎn),是GPU無法比擬的;同時...

關(guān)鍵字: FPGA 可編程邏輯資源 GPU

FPGA的應(yīng)用領(lǐng)域包羅萬象,我們今天來看看在音樂科技領(lǐng)域及醫(yī)療照護(hù)的智能巧思。

關(guān)鍵字: FPGA 科技領(lǐng)域 智能

針對財(cái)會專業(yè)人士的調(diào)查顯示,大多數(shù)組織的財(cái)會專業(yè)人員都已經(jīng)邁出了轉(zhuǎn)型步伐,但尚未做好準(zhǔn)備滿足組織對于未來財(cái)會職能的要求,即具備更高的洞察力和預(yù)見力 北京2022年10月13日 /美通社/ -- IMA管理會計(jì)師協(xié)會與德...

關(guān)鍵字: 控制 數(shù)字化 MIDDOT BSP

強(qiáng)大的產(chǎn)品可降低信號噪音并提高分辨率與動態(tài)

關(guān)鍵字: Spectrum儀器 數(shù)字化儀 FPGA

上海2022年10月11日 /美通社/ -- 10月10日,和睦家醫(yī)療宣布與泰利福達(dá)成戰(zhàn)略合作,簽約儀式于上海和睦家醫(yī)院圓滿舉辦,并在線上與多位泌尿外科領(lǐng)域翹楚同步連線召開"微創(chuàng)經(jīng)尿道前列腺懸擴(kuò)術(shù)(PUL)&q...

關(guān)鍵字: 創(chuàng)始人 CE 微型 控制

上海2022年10月11日 /美通社/ -- 10月10日,明月鏡片正式官宣劉昊然成為品牌代言人。一個是中國鏡片領(lǐng)導(dǎo)品牌,通過科技創(chuàng)新引領(lǐng)了鏡片行業(yè)的發(fā)展;一個是新生代實(shí)力演員,憑借高票房作品贏得了觀眾的認(rèn)可。此次雙方攜...

關(guān)鍵字: PMC 控制 節(jié)點(diǎn) 藍(lán)光

最近某項(xiàng)目采用以太網(wǎng)通信,實(shí)踐起來有些奇怪,好像設(shè)計(jì)成只能應(yīng)答某類計(jì)算機(jī)的ICMP(ping)命令, 某類計(jì)算機(jī)指的是Windows特定系統(tǒng),其他系統(tǒng)發(fā)送ping都不能正確識別。

關(guān)鍵字: 嵌入式Linux FPGA 協(xié)議

電子設(shè)計(jì)自動化

21191 篇文章

關(guān)注

發(fā)布文章

編輯精選

技術(shù)子站

關(guān)閉