DDR3存儲(chǔ)器接口控制器IP加速了數(shù)據(jù)處理應(yīng)用

2013-08-29 17:02 來(lái)源:電源網(wǎng) 作者:鈴鐺

DDR3存儲(chǔ)器系統(tǒng)可以大大提升各種數(shù)據(jù)處理應(yīng)用的性能。然而,和過(guò)去幾代(DDR和DDR2)器件相比,DDR3存儲(chǔ)器器件有了一些新的要求。為了充分利用和發(fā)揮DDR3存儲(chǔ)器的優(yōu)點(diǎn),使用一個(gè)高效且易于使用的DDR3存儲(chǔ)器接口控制器是非常重要的。視屏處理應(yīng)用就是一個(gè)很好的示例,說(shuō)明了DDR3存儲(chǔ)器系統(tǒng)的主要需求以及在類(lèi)似數(shù)據(jù)流處理系統(tǒng)中DDR3接口所需的特性。

視頻處理系統(tǒng)將對(duì)于數(shù)據(jù)帶寬的要求推高到了極致:系統(tǒng)可以處理越多的數(shù)據(jù),就具有越高的性價(jià)比。視頻聚合器和路由器可并行處理多個(gè)視頻流,因此對(duì)于匹配數(shù)據(jù)處理能力和視頻帶寬的需求就成為了設(shè)計(jì)的一大挑戰(zhàn)。FPGA可通過(guò)在單個(gè)FPGA中實(shí)現(xiàn)多個(gè)視頻處理器來(lái)提供強(qiáng)大的處理能力。那么現(xiàn)在的挑戰(zhàn)就變成了要使數(shù)據(jù)盡快且高效地從FPGA進(jìn)出。DDR3存儲(chǔ)器系統(tǒng)在大多數(shù)情況下可以為這些基于FPGA的系統(tǒng)提供足夠的帶寬。

視頻處理設(shè)計(jì)說(shuō)明

我們的目標(biāo)視頻處理設(shè)計(jì)將同時(shí)處理四個(gè)視頻源,將視頻數(shù)據(jù)轉(zhuǎn)換和壓縮為一種可以通過(guò)PCI Express接口傳輸?shù)酱鎯?chǔ)器hub的格式。系統(tǒng)的主要功能塊如圖1所示。

1

圖1:視頻處理器框圖

FPGA獲取并緩存四個(gè)視頻源的數(shù)據(jù)流。這些FIFO緩沖器由DDR3存儲(chǔ)器控制器清空并保存在DDR3存儲(chǔ)器中。一旦一個(gè)完整的視頻數(shù)據(jù)包存儲(chǔ)完畢,視頻處理器會(huì)向DDR3存儲(chǔ)器控制器申請(qǐng)數(shù)據(jù),存儲(chǔ)器控制器讀取數(shù)據(jù)并將其傳到視頻處理器。視頻處理器對(duì)視頻數(shù)據(jù)進(jìn)行格式化和壓縮,并通過(guò)DDR3存儲(chǔ)器控制器寫(xiě)回存儲(chǔ)器。當(dāng)一個(gè)視頻數(shù)據(jù)包全部處理完畢,并準(zhǔn)備通過(guò)PCI Express接口進(jìn)行傳輸,DDR3存儲(chǔ)器控制器從視頻處理器獲取數(shù)據(jù)并將其傳到PCI Express接口。

DDR3存儲(chǔ)器接口控制器概述

從零開(kāi)始設(shè)計(jì)一個(gè)DDR3存儲(chǔ)器控制器是非常困難的。需要考慮許多特性之間的權(quán)衡和互相影響。使用一個(gè)經(jīng)驗(yàn)證的IP核可以省去了大量的開(kāi)發(fā)、測(cè)試和調(diào)試時(shí)間,否則就需要花費(fèi)許多時(shí)間來(lái)進(jìn)行in-house設(shè)計(jì)開(kāi)發(fā)。一個(gè)經(jīng)驗(yàn)證的IP核還可以減少后續(xù)支持的負(fù)擔(dān),因?yàn)檫@將由專門(mén)的開(kāi)發(fā)人員來(lái)支持。最重要的是,使用一個(gè)經(jīng)驗(yàn)證的IP核可以使設(shè)計(jì)師將精力集中在其設(shè)計(jì)的獨(dú)特特性上,從而向最終客戶交付高價(jià)值的產(chǎn)品設(shè)計(jì)。例如,LatticeECP3 DDR3存儲(chǔ)器控制器IP核已經(jīng)通過(guò)了一個(gè)第三方驗(yàn)證套件的驗(yàn)證。該IP核使用LatticeECP3 I/O協(xié)議板來(lái)實(shí)現(xiàn)并通過(guò)全部測(cè)試。

圖2展示了一個(gè)存儲(chǔ)器控制器的框圖。圖最上面的配置接口用于設(shè)置設(shè)計(jì)的各個(gè)選項(xiàng)。DDR3 I/O模塊使用I/O 基元來(lái)實(shí)現(xiàn)。指令譯碼模塊根據(jù)每個(gè)bank和每一行,對(duì)用戶指令進(jìn)行譯碼,產(chǎn)生內(nèi)部存儲(chǔ)器指令序列。指令應(yīng)用模塊將每條指令序列轉(zhuǎn)換為滿足目標(biāo)存儲(chǔ)器件功能和時(shí)序要求的存儲(chǔ)器指令。數(shù)據(jù)通路模塊與DDR3 I/O模塊連接,并且在讀操作時(shí)產(chǎn)生讀數(shù)據(jù)和讀取數(shù)據(jù)有效信號(hào)。讀數(shù)據(jù)偏移校正模塊對(duì)齊每一條8位數(shù)據(jù)線上的數(shù)據(jù),調(diào)整任何可能的時(shí)鐘偏移。這使得用戶端的讀數(shù)據(jù)總線與系統(tǒng)時(shí)鐘準(zhǔn)確校準(zhǔn)。寫(xiě)調(diào)整模塊為了正確的捕獲數(shù)據(jù),調(diào)整了DQS對(duì)CK的關(guān)系。ODT塊通過(guò)為任意或所有DDR3 SDRAM器件提供單獨(dú)的終端阻抗控制,提高了存儲(chǔ)器通道的信號(hào)完整性。

2

圖2:DDR3存儲(chǔ)器控制器IP核框圖

DDR3存儲(chǔ)器控制器應(yīng)支持廣泛的存儲(chǔ)器速率和配置,以滿足各種應(yīng)用需求。例如,Lattice ECP3 DDR3存儲(chǔ)器控制器支持高達(dá)800Mb/s的DDR3器件速率,8至64位的存儲(chǔ)器數(shù)據(jù)通道(帶有x8或x16 DDR3器件),并且同時(shí)支持雙列直插式存儲(chǔ)器塊(Dual Inline Memory Modules,DIMM)和單個(gè)存儲(chǔ)器的器件。

DDR3存儲(chǔ)器控制器必須為各種存儲(chǔ)器訪問(wèn)實(shí)現(xiàn)不同的時(shí)序要求。一些要求對(duì)于我們的目標(biāo)應(yīng)用來(lái)說(shuō)非常重要,包括以下幾個(gè)方面:

DDR3存儲(chǔ)器使用“類(lèi)似cache”的bank進(jìn)行組織,每個(gè)器件帶有8個(gè)bank。訪問(wèn)最近工作(打開(kāi))的bank比訪問(wèn)未工作的(關(guān)閉)的bank速度快。

可使用4位、8位或交叉存取方式進(jìn)行突發(fā)(burst)模式讀訪問(wèn)。

根據(jù)存儲(chǔ)器速率和用戶設(shè)置,CAS和寫(xiě)延遲都是可變的。從讀請(qǐng)求轉(zhuǎn)換為寫(xiě)請(qǐng)求需要額外的延遲時(shí)間,因?yàn)殡p向的數(shù)據(jù)總線必須改變傳輸方向。

針對(duì)視頻處理的IP核實(shí)現(xiàn)

為了使存儲(chǔ)器數(shù)據(jù)帶寬和效率最大化,針對(duì)視頻處理設(shè)計(jì)的IP核實(shí)現(xiàn)需根據(jù)DDR3存儲(chǔ)器特性使用相匹配的算法。下面列出了一些重要的實(shí)現(xiàn)考慮。

使用突發(fā)(Burst)模式的數(shù)據(jù)訪問(wèn)

DDR3存儲(chǔ)器可通過(guò)突發(fā)模式訪問(wèn),突發(fā)模式在數(shù)據(jù)以數(shù)據(jù)塊形式存放(如視頻處理應(yīng)用)的應(yīng)用中是非常有效的。同樣,通過(guò)將視頻數(shù)據(jù)以優(yōu)化的方式放入8個(gè)bank中,數(shù)據(jù)傳輸帶寬和之后的數(shù)據(jù)處理率可維持在一個(gè)高速的水平。在我們的示例中有4個(gè)視頻源,因此如果我們?yōu)槊總€(gè)視頻源使用2個(gè)bank(一個(gè)用作存儲(chǔ)緩沖器,另一個(gè)用作處理緩沖器),這將使DDR3保持高傳輸效率。高效的DDR3存儲(chǔ)器控制器應(yīng)當(dāng)基于每個(gè)bank的狀態(tài),使用最快的訪問(wèn)時(shí)間處理突發(fā)讀和寫(xiě)。此外,視頻處理器將事務(wù)分組,使總線換向時(shí)間最小化并進(jìn)一步提高存儲(chǔ)器帶寬。

1 2 > 
數(shù)據(jù)處理 存儲(chǔ)器 DDR3

相關(guān)閱讀

暫無(wú)數(shù)據(jù)

一周熱門(mén)