新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 四倍速SRAM與Spartan3 FPGA的接口設(shè)計

四倍速SRAM與Spartan3 FPGA的接口設(shè)計

作者: 時間:2011-07-08 來源:網(wǎng)絡(luò) 收藏
互聯(lián)網(wǎng)的飛速發(fā)展極大地促進(jìn)了高速數(shù)據(jù)通信系統(tǒng)的需求量增加,同時也促進(jìn)了更快速的處理器的發(fā)展,推動了存儲器接口速度的提高。由于這些系統(tǒng)中的處理器提高了系統(tǒng)的性能,使得傳統(tǒng)的靜態(tài)存儲器已經(jīng)不能滿足系統(tǒng)的需求。為了滿足當(dāng)前系統(tǒng)和處理器的生產(chǎn)量需求,更新的靜態(tài)存儲器應(yīng)運而生。QDR 就是由Cypress、Renesas、IDT、NEC和Samsung為高性能的網(wǎng)絡(luò)系統(tǒng)應(yīng)用而共同開發(fā)的一種具有創(chuàng)新體系結(jié)構(gòu)的同步靜態(tài)存儲器。

  1 QDR 的介紹及其性能描述

  1.1 QDR的先進(jìn)性

  現(xiàn)有的大部分都是在PC時期針對高效傳輸PC型單精度輸入輸出數(shù)據(jù)而設(shè)計的。在大多數(shù)的網(wǎng)絡(luò)應(yīng)用中,SRAM和記憶控制器之間的連續(xù)數(shù)據(jù)傳輸是必需的。在這些應(yīng)用中,存儲器的讀和寫操作之間要進(jìn)行連續(xù)不斷的變化。在這種情況下標(biāo)準(zhǔn)的同步管道SRAM等單一的輸入/輸出裝置就不能很好地滿足要求。零總線變換SRAM就是一種優(yōu)化了的SRAM類型。它在讀周期與寫周期切換時不需要變換周期,從而使得總線利用率達(dá)到了100%。而對大多數(shù)的網(wǎng)絡(luò)應(yīng)用來說,零總線變換SRAM在數(shù)據(jù)吞吐量方面的提高還遠(yuǎn)遠(yuǎn)不夠。QDR的出現(xiàn)則進(jìn)一步改進(jìn)了SRAM結(jié)構(gòu)。

  QDR就是指四倍數(shù)據(jù)速率SRAM,它是靜態(tài)存儲器的一種,是專為應(yīng)付帶寬需求極大的應(yīng)用而設(shè)計的體系結(jié)構(gòu)。它在一個時鐘周期內(nèi)可以高效地傳輸4個字節(jié)的數(shù)據(jù)。QDR提供了讀和寫兩個分別獨立的接口,從而滿足了諸如ATM轉(zhuǎn)換和路由器的性能需求。由于QDR SRAM的結(jié)構(gòu)在數(shù)據(jù)訪問時不需要變換周期且數(shù)據(jù)吞吐量大幅提高,所以保證了可以對同一地址進(jìn)行同時訪問。

  QDR又分為兩字突發(fā)結(jié)構(gòu)(CY7C1302)和四字突發(fā)結(jié)構(gòu)(CY7C1304)兩種。這兩種結(jié)構(gòu)的不同就在于每次讀或?qū)懻埱蟮膫鬏斪謹(jǐn)?shù)不同。下面就以CY7C1302為例來詳細(xì)介紹QDR的工作原理及其與系列FPGA的接口設(shè)計。CY7C1302是賽普拉斯公司生產(chǎn)的一種QDR SRAM。圖1示出了CY7C1302的結(jié)構(gòu)圖。圖中雖然CY7C1302有了分別獨立的讀寫端口,但是地址總線還是為讀寫端口共用。地址總線的數(shù)據(jù)傳輸采用了DDR的傳輸方式,即:地址總線的前半個時鐘周期提供讀操作地址,而后半個時鐘周期提供寫操作地址。也就是在每個時鐘周期可以完成4字的傳輸量。

CY7C1302的結(jié)構(gòu)圖

  1.2 QDR SRAM的輸入狀態(tài)描述

  QDR SRAM有四個時鐘:K,Kn,C和Cn。K和Kn是用來控制輸入數(shù)據(jù)采樣的,C和Cn則是用來控制SRAM數(shù)據(jù)輸出的。所有的數(shù)據(jù)操作都是在K的上升沿進(jìn)行的。QDR SRAM有一個簡單的控制結(jié)構(gòu)。兩個控制信號:讀控制信號(RPSn)和寫控制信號(WPSn)分別用來控制SRAM的讀和寫操作的進(jìn)行。這兩種信號在K的上升沿時刻被采樣。對QDR來說,地址的輸入是讀端口和寫端口所共用的。對于CY7C1302來說,讀操作是在K的上升沿時刻開始進(jìn)行的,寫操作是在Kn的上升沿時刻開始進(jìn)行的。即地址總線的前半個時鐘周期提供讀操作的地址,后半個時鐘周期提供寫操作的地址。其數(shù)據(jù)線是單向的,在每個循環(huán)周期內(nèi)可以傳輸兩個字的數(shù)據(jù)。

  一個時鐘的上升沿可以使QDR SRAM在同一個時鐘周期內(nèi)實現(xiàn)對同一地址的讀、寫訪問。這樣QDR就會把寫數(shù)據(jù)傳輸?shù)阶x端口以確保把有效的數(shù)據(jù)輸出至數(shù)據(jù)總線。這樣就保證了數(shù)據(jù)的一致性。

  2 低成本解決方案

  2.1 用作為QDR的存儲控制器

  系列FPGA是由Xilinx公司基于成功的Virtex-II FPGA架構(gòu)而研發(fā)的性價比較高的一種產(chǎn)品。Spartan3器件有如下特點:嵌入式18×18乘法器支持高性能DSP應(yīng)用;片上數(shù)字時鐘管理(DCM),無需外部時鐘管理器件;分布式的存儲器和SRL16移位寄存器邏輯能夠更高效執(zhí)行DSP功能;18KB 塊RAM,可以用作緩存或是高速緩存;數(shù)字片上終端能夠消除對多個外部電阻器的需求;8個獨立的I/O陣列支持24種不同的I/O標(biāo)準(zhǔn);Spartan3系列的FPGA獨有的特性可以簡化存儲控制器的設(shè)計。圖2是用Spartan3系列FPGA實現(xiàn)的存儲控制器結(jié)構(gòu)圖。

用Spartan3系列FPGA實現(xiàn)的存儲控制器結(jié)構(gòu)圖

  該存儲控制器的設(shè)計可以在深度擴(kuò)展模式下實現(xiàn)對四個SRAM的控制。每個QDR SRAM會收到對各自的讀寫端口進(jìn)行控制的相互獨立的控制信號,而對所有的SRAM來說,地址和數(shù)據(jù)端口是共用的。

  存儲控制器是以QDR SRAM工作在單時鐘模式下對其進(jìn)行控制的,從而可以簡化存儲器接口。控制器工作在100MHz的時鐘頻率下,允許7.2Gbps的帶寬。存儲控制器有獨立的讀寫狀態(tài)機(jī),存儲控制器的控制是基于兩位指令輸入的形式來實現(xiàn)的。

  2.2 QDR SRAM和Xilinx Spartan3系列FPGA的接口連接

  Spartan3系列的FPGA獨有的特性可以簡化存儲控制器的設(shè)計。Spartan3系列產(chǎn)品是業(yè)界成本最低的可編程邏輯電路。在Spartan3系列FPGA中,有DCM(數(shù)字時鐘管理)模塊,可以用來消除內(nèi)部全局時鐘網(wǎng)絡(luò)的時鐘歪斜,或者消除為片外其他系統(tǒng)組成部分提供時鐘的過程中所出現(xiàn)的時鐘歪斜。DCM中的DLL能夠使控制器完成FPGA的片上時鐘和QDR SRAM之間的零時鐘歪斜。除此之外,DCM還提供其他的功能,如相位調(diào)解,分頻和倍頻。圖3所示為DCM在存儲控制器設(shè)計中的應(yīng)用。

DCM在存儲控制器設(shè)計中的應(yīng)用



關(guān)鍵詞: SRAM Spartan3

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉