《電子技術應用》
您所在的位置:首頁 > 微波|射頻 > 設計應用 > QDR SRAM與Spartan3 FPGA的接口設計
QDR SRAM與Spartan3 FPGA的接口設計
摘要: 為了滿足當前系統(tǒng)和處理器的生產(chǎn)量需求,,更新的靜態(tài)存儲器應運而生,。QDR SRAM就是由Cypress、Renesas,、IDT,、NEC和Samsung為高性能的網(wǎng)絡系統(tǒng)應用而共同開發(fā)的一種具有創(chuàng)新體系結構的同步靜態(tài)存儲器。
Abstract:
Key words :
  為了滿足當前系統(tǒng)和處理器的生產(chǎn)量需求,,更新的靜態(tài)存儲器應運而生,。QDR SRAM就是由Cypress、Renesas,、IDT,、NEC和Samsung為高性能的網(wǎng)絡系統(tǒng)應用而共同開發(fā)的一種具有創(chuàng)新體系結構的同步靜態(tài)存儲器,。

  1 QDR SRAM的介紹及其性能描述

  1.1 QDR的先進性 

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

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

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

CY7C1302的結構圖

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

  QDR SRAM有四個時鐘:K,,Kn,C和Cn,。K和Kn是用來控制輸入數(shù)據(jù)采樣的,,C和Cn則是用來控制SRAM數(shù)據(jù)輸出的。所有的數(shù)據(jù)操作都是在K的上升沿進行的,。QDR SRAM有一個簡單的控制結構,。兩個控制信號:讀控制信號(RPSn)和寫控制信號(WPSn)分別用來控制SRAM的讀和寫操作的進行,。這兩種信號在K的上升沿時刻被采樣。對QDR來說,,地址的輸入是讀端口和寫端口所共用的,。對于CY7C1302來說,讀操作是在K的上升沿時刻開始進行的,,寫操作是在Kn的上升沿時刻開始進行的,。即地址總線的前半個時鐘周期提供讀操作的地址,后半個時鐘周期提供寫操作的地址,。其數(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 用Spartan3作為QDR的存儲控制器

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

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

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

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

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

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

DCM在存儲控制器設計中的應用

  2.2.1 時序的實現(xiàn)

  該設計的難點就在于如何滿足CY7C1302的時序要求,。所有的CY7C1302信號都被寄存在I/O緩沖器以及HSTL緩沖器中。在寫周期的時間里,,所有的信號必須滿足那些數(shù)據(jù)建立和保持時間的要求,。這就意味著必須應付來自Spartan FPGA(時鐘輸出)的傳輸總延遲,板的接線延遲以及QDR的記憶建立時間,。所有的延遲總和必須少于寫操作的時間周期,,即要求:

  Tco(FPGA)+Tpd(Board)+Tsu(QDR SRAM)實際:

  2.5ns+0.6ns+0.8ns=3.8ns

  可見時鐘輸出時間和QDR的建立時間值分別為2.5ns和0.8ns。因此對板延遲來說有個很充足的時間盈余,,QDR存儲器要求必須有0.5ns的保持時間,。

  在讀周期時間,數(shù)據(jù)必須滿足FPGA的建立和保持時間,。

  即:

  Tco(QDR SRAM)+Tpd(Board)+Tsu(Spartan3)實際:

  2.5ns+0.6ns+1.55ns=4.65ns

  Spartan3系列FPGA的建立時間是1.55ns,。再加上QDR SRAM的時鐘輸出時間為2.5ns,這些時間要求使得系統(tǒng)工作在100MHz時鐘下就可以有很充足的時間盈余,。為確保該控制器的正常工作,,必須要求FPGA的可配置邏輯模塊數(shù)不少于100,至少2個數(shù)字時鐘管理模塊,,2個全局時鐘緩沖模塊以及119個I/O緩沖模塊。若使用更快速的Spartan3系列FPGA可以使該設計的接口性能得到進一步的提高,。

  2.2.2設計的綜合

  經(jīng)過綜合以后的結果表明:完全控制器的邏輯圖顯示存儲器和它的三路18位總線之間的接口以及主機和雙重36位數(shù)據(jù)總線,、18位地址總線的接口。Spartan3系列FPGA的內(nèi)部時鐘工作在200MHz,,由于DDR接口在時鐘的上升沿和下降沿均傳輸數(shù)據(jù),,所以外部總線的時鐘只需100MHz。來自主機的36位讀數(shù)據(jù)通路在內(nèi)部就被分為兩個18位的部分并分別設置了寄存器鎖存,。這兩個寄存器工作在200MHz的時鐘下,,在時鐘的上升沿和下降沿都只允許一個寄存器發(fā)送或接收數(shù)據(jù)。

  該設計旨在利用低成本的FPGA實現(xiàn)高性能QDR SRAM的接口連接,。故選擇了具有低成本與豐富性能的結合Spartan-3系列的FPGA,,它能夠以最高的性價比實現(xiàn)完整的系統(tǒng)功能。該接口設計的實際意義更在于,,Spartan-3系列FPGA內(nèi)部具有的可配置I/O單元,。因為通過在實現(xiàn)中配置相應選項,可使不同的I/O單元滿足不同的I/O標準,,從而使得Spartan-3系列的FPGA在通信領域中應用非常便捷,。在該設計中存儲器控制器必須工作在HSTL電壓以便支持存儲器存儲器控制器的輸入輸出的高速數(shù)據(jù)操作,。

  除此之外,在可編程的片上系統(tǒng)SOPC(System On Programmable Chip)中,,為了簡化系統(tǒng)的結構,,提高系統(tǒng)的整體性能,必須接入外部存儲器,。SOPC技術的目標就是試圖將盡可能大而完整的電子系統(tǒng)在單一FPGA中實現(xiàn),。這就必須在FPGA芯片上外接存儲器以用來存儲FPGA所要處理的數(shù)據(jù)或者在進行數(shù)據(jù)交換時用來對數(shù)據(jù)進行暫存以及輔助完成一些其他功能。SOPC的發(fā)展使得該設計的應用進一步推廣,。

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權禁止轉載。