<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 測(cè)試測(cè)量 > 設(shè)計(jì)應(yīng)用 > SDRAM在任意波形發(fā)生器中的應(yīng)用

          SDRAM在任意波形發(fā)生器中的應(yīng)用

          作者: 時(shí)間:2008-08-28 來(lái)源:網(wǎng)絡(luò) 收藏
          在雷達(dá)、通信領(lǐng)域中發(fā)揮著重要作用,但目前大多使用靜態(tài)存儲(chǔ)器。這使得在工作頻率不斷提高的情況下,波形的存儲(chǔ)深度很難做得很大,從而不能精確地表達(dá)復(fù)雜信號(hào)。本文介紹的基于動(dòng)態(tài)存儲(chǔ)器()的設(shè)計(jì)能有效解決這一問(wèn)題,并詳細(xì)討論了一種簡(jiǎn)化控制器的設(shè)計(jì)方法。

          1 任意波形發(fā)生器的總體方案

            工作頻率、分辨率和存儲(chǔ)長(zhǎng)度是任意波形發(fā)生器最關(guān)鍵的三個(gè)性能參數(shù)。高的工作頻率意味著高的輸出信號(hào)頻率和帶寬,高的分辨率通常意味著高的信噪比,而存儲(chǔ)長(zhǎng)度決定了信號(hào)的精確程度。下面介紹的方案是筆者實(shí)際開發(fā)的一款任意波形發(fā)生器/卡(如圖1所示),它的工作頻率為300MHz,分辨率為14位,存儲(chǔ)長(zhǎng)度為8M字,現(xiàn)已得到了廣泛地應(yīng)用。

            該電路主要有兩種工作狀態(tài):寫數(shù)據(jù)狀態(tài)和讀數(shù)據(jù)狀態(tài)。下面簡(jiǎn)單描述其工作過(guò)程。

            寫數(shù)據(jù)狀態(tài):CPU根據(jù)所要設(shè)計(jì)的波形計(jì)算波形數(shù)據(jù),并轉(zhuǎn)換成14位的無(wú)符號(hào)數(shù);打開總線開關(guān),屏蔽FIFO操作,在控制器的配合下,將波形數(shù)據(jù)通過(guò)接口電路交替寫入SDRAM1和SDRAM2中,即SDRAM1中依次存放數(shù)據(jù)0,2,4,6...;SDRAM2中依次存放數(shù)據(jù)1,3,5,7...(如表1所示)。

            讀數(shù)據(jù)狀態(tài):開啟FIFO通道,關(guān)閉總線開關(guān)以斷開SDRAM與CPU之間的數(shù)據(jù)連接;在SDRAM控制器的控制下,將SDRAM1/2中的數(shù)據(jù)同時(shí)(并行)讀出;經(jīng)過(guò)FIFO的緩沖得到連續(xù)的數(shù)據(jù)流,再經(jīng)32位向16位的并串轉(zhuǎn)換,將數(shù)據(jù)速率提升2倍后,供給DAC進(jìn)行數(shù)-模轉(zhuǎn)換,即可得到所編輯的信號(hào)。

            圖1中用兩片SDRAM并行工作,是因單片SDRAM不可能提供300MSPS的數(shù)據(jù)流。實(shí)際使用的器件是K4S641632C-TC60,工作時(shí)鐘為166MHz。FIFO緩存SDRAM的輸出數(shù)據(jù),將突發(fā)數(shù)據(jù)流轉(zhuǎn)換成連續(xù)數(shù)據(jù)流,使得在SDRAM處于刷新狀態(tài)時(shí),仍能維持正常的數(shù)據(jù)輸出。實(shí)際使用的器件是兩片并行工作的IDT72V263L6PF,寫入時(shí)鐘為166MHz,讀出時(shí)鐘為150MHz。并串轉(zhuǎn)換的作用是提升數(shù)據(jù)的速率,在DAC器件內(nèi)部完成,筆者采用具有良好動(dòng)態(tài)性能的AD9755AST。CPU及控制接口是一個(gè)基于PC的ISA設(shè)備,可改進(jìn)為PCI設(shè)備;時(shí)鐘電路用來(lái)產(chǎn)生166MHz和150MHz的同步時(shí)鐘。下面重點(diǎn)研究SDRAM控制器的設(shè)計(jì),它是本系統(tǒng)的主要特色之一。

          2 SDRAM控制器的設(shè)計(jì)

          2.1 SDRAM的主要特點(diǎn)

            與靜態(tài)存儲(chǔ)器(SRAM)相比,SDRAM的容量大(通常是幾倍至幾十倍的關(guān)系);與DDR SDRAM或RDRAM相比,它的控制又相對(duì)簡(jiǎn)單,因而它依然是大容量存儲(chǔ)器工程項(xiàng)目的良好選擇。下面描述的幾個(gè)重要基本概念反映了它的主要特點(diǎn)。

            行列地址:SDRAM的地址是行列復(fù)用的,此舉有效減少了芯片的引腳。

            預(yù)充電:讀寫操作只對(duì)預(yù)充電過(guò)的行有效。也就是說(shuō),在數(shù)據(jù)讀寫操作跨行時(shí),需要先進(jìn)行至少一次的預(yù)充電操作。

            自動(dòng)刷新:眾所周知,只要是動(dòng)態(tài)RAM,就存在刷新問(wèn)題,SDRAM也不例外。通常每隔64ms需要將所有存儲(chǔ)單元刷新一遍。

            自刷新:當(dāng)需要保留芯片內(nèi)的數(shù)據(jù),而暫時(shí)又不需要操作時(shí),可以設(shè)置芯片進(jìn)入自刷新狀態(tài)。

            工作模式寄存器:控制SDRAM工作方式的寄存器(如表2所示)。

          2.2 SDRAM的狀態(tài)流程

            SDRAM的完整狀態(tài)機(jī)由17個(gè)狀態(tài)構(gòu)成,且狀態(tài)轉(zhuǎn)移是非隨機(jī)的(如圖2所示)。正是如此眾多的狀態(tài)及其復(fù)雜的轉(zhuǎn)換關(guān)系,導(dǎo)致SDRAM的控制較為復(fù)雜。

            需要特別說(shuō)明的是,SDRAM的狀態(tài)轉(zhuǎn)移有自動(dòng)轉(zhuǎn)移與人工轉(zhuǎn)移之分(圖2中以粗細(xì)箭頭加以區(qū)別)。自動(dòng)轉(zhuǎn)移在當(dāng)前狀態(tài)結(jié)束后立即進(jìn)入下一個(gè)狀態(tài);而人工轉(zhuǎn)移在當(dāng)前狀態(tài)結(jié)束后即停留在當(dāng)前狀態(tài),只有一條當(dāng)前狀態(tài)允許的命令才能進(jìn)入下一個(gè)狀態(tài)。

            可以想象,自行設(shè)計(jì)如此復(fù)雜的控制流程絕非易事。值得慶幸的是,在大多數(shù)應(yīng)用中并不需要完備的狀態(tài)機(jī)。下面討論一種簡(jiǎn)化的SDRAM狀態(tài)機(jī)。

          2.3 簡(jiǎn)化的狀態(tài)流程

            根據(jù)任意波形發(fā)生器的特點(diǎn),對(duì)SDRAM的功能進(jìn)行了以下簡(jiǎn)化:

            (1)省略隨機(jī)存取功能,固定為順序讀寫;

            (2)省略待機(jī)、自刷新、普通讀/寫功能;

            (3)省略所有的掛起功能;

            (4)工作模式固定為突發(fā)式讀、單個(gè)式寫;

            (5)數(shù)據(jù)延時(shí)固定為3個(gè)時(shí)鐘周期;

            (6)刷新模式只使用自動(dòng)刷新方式,器件空閑時(shí)即處于連續(xù)的自動(dòng)刷新狀態(tài);

            (7)器件僅在上電后進(jìn)行一次初始化,不能改變工作模式;

            (8)突發(fā)方式固定為順序方式,突發(fā)長(zhǎng)度固定為整頁(yè);

            (9)只使用帶預(yù)充電的讀/寫指令;在每次讀/寫操作完成后,即啟動(dòng)一個(gè)自動(dòng)刷新周期。

            經(jīng)過(guò)以上簡(jiǎn)化的狀態(tài)機(jī)如圖3所示。

          2.4 SDRAM控制器的EPLD實(shí)現(xiàn)

            為了實(shí)現(xiàn)上述簡(jiǎn)化的SDRAM控制功能,采用一片ALTERA公司生產(chǎn)的EPLD器件MAX7256ATC144-6。圖4是任意波形發(fā)生器SDRAM控制流示意圖。由于具體編程要涉及許多細(xì)節(jié)問(wèn)題,在此不做贅述,其主要功能如下:

            (1)通過(guò)ISA總線,實(shí)現(xiàn)與CPU的接口,接收波形數(shù)據(jù)和讀命令;

            (2)上電自動(dòng)初始化;

            (3)生成23位(8M字存儲(chǔ)器空間)的線性地址,并按行列復(fù)用的方式輸出;

            (4)生成SDRAM的控制信號(hào),完成讀、寫和自動(dòng)刷新功能;

            (5)控制FIFO,以解決SDRAM刷新和波形長(zhǎng)度不是頁(yè)長(zhǎng)度的倍數(shù)問(wèn)題。

            雖然完全應(yīng)用SDRAM確實(shí)比較復(fù)雜,但只要本著“夠用就行”的原則,對(duì)其功能進(jìn)行合理的簡(jiǎn)化,設(shè)計(jì)出具有特殊需求、適用于特定條件的SDRAM控制器是完全可行的。目前,筆者已將基于SDRAM的任意波形發(fā)生器應(yīng)用到多個(gè)研發(fā)項(xiàng)目中。

          參考文獻(xiàn)

          1 K4S641632C Data Sheet. Samsung Inc, June 1999.

          2 MAX7000A Data Sheet. IDT Inc, October 2000.

          3 宋萬(wàn)杰.CPLD技術(shù)及應(yīng)用.西安:西安電子科技大學(xué)出版社, 2001



          評(píng)論


          相關(guān)推薦

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

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();