摘要:為了在高速采集時(shí)不丟失數(shù)據(jù),在數(shù)據(jù)采集系統(tǒng)和CPU之間設(shè)置一個(gè)數(shù)據(jù)暫存區(qū)。介紹雙口RAM的存儲(chǔ)原理及其在數(shù)字系統(tǒng)中的應(yīng)用。采用FPGA技術(shù)構(gòu)造雙口RAM,實(shí)現(xiàn)高速信號采集系統(tǒng)中的海量數(shù)據(jù)存儲(chǔ)和時(shí)鐘匹配。功能仿真驗(yàn)證該設(shè)計(jì)的正確性,該設(shè)計(jì)能減小電路設(shè)計(jì)的復(fù)雜性,增強(qiáng)設(shè)計(jì)的靈活性和資源的可配置性能.降低設(shè)計(jì)成本,縮短開發(fā)周期。
關(guān)鍵詞:雙口RAM;FPGA;數(shù)據(jù)采集;仿真;Veillog HDL
隨著電子技術(shù)的飛速發(fā)展,大量的高速數(shù)據(jù)采集和在線測試對現(xiàn)代工業(yè)測控系統(tǒng)和儀器儀表的功能和性能提更高要求。CPU并行工作(雙單片機(jī)系統(tǒng))方式得到廣泛應(yīng)用。為了使2個(gè)單片機(jī)能夠快速有效交換信息,充分利用系統(tǒng)資源,采用雙口RAM實(shí)現(xiàn)存儲(chǔ)器共享是目前較為流行的方法。
大容量、高速FPGA器件具有集成度高、體積小、靈活可重配置、實(shí)驗(yàn)風(fēng)險(xiǎn)小等優(yōu)點(diǎn),在復(fù)雜數(shù)字系統(tǒng)中得到越來越廣泛的應(yīng)用。數(shù)字電路設(shè)計(jì)采用l片F(xiàn)PGA器件、存儲(chǔ)設(shè)備和一些電氣接口匹配電路的解決方案已成為主流選擇方案。用FPGA來實(shí)現(xiàn)雙口RAM的功能可以很好地解決并行性和速度問題,而且其靈活的可配置特性使得基于FPGA的雙口RAM易于進(jìn)行修改、測試及系統(tǒng)升級,可降低設(shè)計(jì)成本,縮短開發(fā)周期。
1 雙口RAM簡介
雙口RAM是在1個(gè)SRAM存儲(chǔ)器上具有兩套完全獨(dú)立的數(shù)據(jù)線、地址線和讀寫控制線,并允許兩個(gè)獨(dú)立的系統(tǒng)同時(shí)對其進(jìn)行隨機(jī)性訪問的存儲(chǔ)器,即共享式多端口存儲(chǔ)器。雙口RAM最大的特點(diǎn)是存儲(chǔ)數(shù)據(jù)共享。1個(gè)存儲(chǔ)器配備兩套獨(dú)立的地址、數(shù)據(jù)和控制線,允許兩個(gè)獨(dú)立的CPU或控制器同時(shí)異步地訪問存儲(chǔ)單元。因?yàn)閿?shù)據(jù)共享。則必須具有訪問仲裁控制。內(nèi)部仲裁邏輯控制提供以下功能:對同一地址單元訪問的時(shí)序控制;存儲(chǔ)單元數(shù)據(jù)塊的訪問權(quán)限分配:信令交換邏輯(例如中斷信號)等。雙口RAM可用于提高RAM的吞吐率,適用于實(shí)時(shí)數(shù)據(jù)緩存。
CY7C006A是Cypress公司生產(chǎn)的16 kb×8高速雙口靜態(tài)RAM,存取速度小于20 ns。該器件具有真正的雙端口,可以同時(shí)進(jìn)行數(shù)據(jù)存取,兩個(gè)端口具有獨(dú)立的控制信號線、地址線和數(shù)據(jù)線,另外通過主/從選擇可以方便地?cái)U(kuò)存儲(chǔ)容量和數(shù)據(jù)寬度。通過器件的信號量標(biāo)志器,左、右兩端口可以實(shí)現(xiàn)器件資源共享。
2 雙口RAM在FPGA中的實(shí)現(xiàn)
本設(shè)計(jì)采用自頂而下的設(shè)計(jì)思想。選用Xilinx公司的Spartan-6 FPGA器件,基于低功耗45 nm、9-金屬銅層、雙柵極氧化層工藝技術(shù),提供高級功耗管理技術(shù),150 000個(gè)邏輯單元,集成式PCI Express模塊,高級存儲(chǔ)器支持。250 MHz DSPslice和3.125 Gb/s低功耗收發(fā)器。通過Verilog HDL語言對雙口RAM功能的描述就能在一片F(xiàn)PGA器件內(nèi)實(shí)現(xiàn)8位16字節(jié)的雙口RAM,并進(jìn)行讀寫操作控制。雙口RAM讀寫操作控制Verilog HDL代碼如下:
作者:秦鴻剛 劉京科 吳 迪 煤炭科學(xué)研究總院 來源:電子設(shè)計(jì)工程