基于CPLD的高速存儲設(shè)計
O 引言
信息存儲是信息科學(xué)研究的重要內(nèi)容之一。在信號處理、智能儀器及工業(yè)自動控制等領(lǐng)域都存在著信息存儲的內(nèi)容。隨著技術(shù)的不斷發(fā)展,對數(shù)據(jù)信息存儲的速度要求越來越高,因此,數(shù)據(jù)高速存儲在系統(tǒng)設(shè)計過程中,已成為一個十分重要的問題。本文簡要介紹了一種基于可編程邏輯器件的高速存儲系統(tǒng)的設(shè)計方案,并給出了其軟件及硬件設(shè)計思路。
1 系統(tǒng)設(shè)計
目前常用的可編程邏輯器件主要有FPGA與CPLD。它們都是可編程ASIC器件,有很多共同特點,但二者在結(jié)構(gòu)上有一定差異:FPGA在結(jié)構(gòu)上主要分為可編程I/O單元、基本可編程邏輯單元、嵌入式塊RAM、豐富的布線資源、底層嵌入功能單元和內(nèi)嵌專用硬核等。而CPLD則主要由可編程I/O單元、基本邏輯單元、布線池和其它輔助功能模塊構(gòu)成。二者結(jié)構(gòu)的不同使其又具有各自的特點:FPGA更適合于完成時序邏輯,而CPLD則適合完成各種算法和組合邏輯。也就是說,F(xiàn)PGA更適合于觸發(fā)器豐富的結(jié)構(gòu),而CPLD則適合于觸發(fā)器有限而乘積項豐富的結(jié)構(gòu)。FPGA的分段式布線結(jié)構(gòu)決定了其延遲的不可預(yù)測性,而CPLD的連續(xù)式布線結(jié)構(gòu)則決定了它的時序延遲是均勻的和可預(yù)測的。
與FPGA相比,CPLD比較適合復(fù)雜狀態(tài)機(jī)、存儲控制器等應(yīng)用,可廣泛應(yīng)用于高速領(lǐng)域和實時測控等方面,具有高速、高可靠性的特點。基于以上情況,本系統(tǒng)采用CPLD作為系統(tǒng)主控制器。同時選用SRAM存儲器IC61LV2568―8T芯片。該SRAM存儲器的初始存取等待時間很短,可廣泛應(yīng)用于需要快速存取數(shù)據(jù)的場合。
2 IC61LV2568―8T的操作時序
IC6lLV2568―8T是一款高速低功耗靜態(tài)RAM存儲器。該芯片采用高性能CMOS技術(shù)制造,最小存取時間可達(dá)8ns,待機(jī)功耗為36mW,兼容TTL電平輸入輸出。該芯片工作時不需要時鐘控制及刷新。其讀寫時序圖如圖1所示。
3 硬件電路
本系統(tǒng)采用Lattice公司的ispMACH LC4526V作主控制器。這是一款高速、低功耗且配置有JTAG口,可支持ISP編程的高密度PLD。此芯片屬于ispMACH 4000V/B/C系列,其最高工作頻率可達(dá)322 MHz,傳輸延時為3.0 ns。它的靜態(tài)電流典型值為1.3 mA(對于4000C系列)。應(yīng)用時,可用硬件描述語言設(shè)計程序,再借助EDA工具進(jìn)行行為仿真、功能仿真和時序仿真,最后通過綜合工具產(chǎn)生網(wǎng)表,再下載到目標(biāo)器件,從而生成硬件電路。CPLD與存儲器的硬件連接如圖2所示。
因系統(tǒng)的有源晶振頻率為200 MHz,因該頻率已是高頻,故在電路設(shè)計時,要考慮一定的阻抗匹配問題。晶振輸出腳與CPLD時鐘輸入腳之間應(yīng)接有電阻R,這個電阻便是為了信號阻抗匹配而串接的。而在程序設(shè)計時,可以將晶振輸入的時鐘信號分頻。
對于兩片RAM,可進(jìn)行乒乓操作。其硬件結(jié)構(gòu)如圖3所示。事實上,對于兩個數(shù)據(jù)存儲器的乒乓操作,還需要系統(tǒng)軟件來共同完成。
評論