《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 業界動態 > SDRAM在任意波形發生器中的應用

SDRAM在任意波形發生器中的應用

2008-08-27
作者:儲飛黃 楊景曙 黃 崧

  摘? 要: 隨著任意波形發生器" title="任意波形發生器">任意波形發生器工作頻率" title="工作頻率">工作頻率的不斷提高,為了精確表達復雜信號,使用SRAM作為波形存儲體已不能滿足容量上的要求。介紹了一種基于SDRAM的設計方案,能有效解決這一問題。文中重點討論了一種簡化SDRAM控制器的設計方法。

  關鍵詞: 任意波? 同步動態存儲器" title="動態存儲器">動態存儲器? 可編程邏輯器件

?

  任意波形發生器在雷達、通信領域中發揮著重要作用,但目前任意波形發生器大多使用靜態存儲器。這使得在任意波形發生器工作頻率不斷提高的情況下,波形的存儲深度很難做得很大,從而不能精確地表達復雜信號。本文介紹的基于動態存儲器(SDRAM)的設計能有效解決這一問題,并詳細討論了一種簡化SDRAM控制器的設計方法。

1 任意波形發生器的總體方案

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

?

  該電路主要有兩種工作狀態:寫數據狀態和讀數據狀態。下面簡單描述其工作過程。

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

?

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

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

2 SDRAM控制器的設計

2.1 SDRAM的主要特點

  與靜態存儲器(SRAM)相比,SDRAM的容量大(通常是幾倍至幾十倍的關系);與DDR SDRAM或RDRAM相比,它的控制又相對簡單,因而它依然是大容量存儲器工程項目的良好選擇。下面描述的幾個重要基本概念反映了它的主要特點。

  行列地址:SDRAM的地址是行列復用" title="復用">復用的,此舉有效減少了芯片的引腳。

  預充電:讀寫操作" title="讀寫操作">讀寫操作只對預充電過的行有效。也就是說,在數據讀寫操作跨行時,需要先進行至少一次的預充電操作。

  自動刷新:眾所周知,只要是動態RAM,就存在刷新問題,SDRAM也不例外。通常每隔64ms需要將所有存儲單元刷新一遍。

  自刷新:當需要保留芯片內的數據,而暫時又不需要操作時,可以設置芯片進入自刷新狀態。

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

?

?

2.2 SDRAM的狀態流程

  SDRAM的完整狀態機由17個狀態構成,且狀態轉移是非隨機的(如圖2所示)。正是如此眾多的狀態及其復雜的轉換關系,導致SDRAM的控制較為復雜。

?

  需要特別說明的是,SDRAM的狀態轉移有自動轉移與人工轉移之分(圖2中以粗細箭頭加以區別)。自動轉移在當前狀態結束后立即進入下一個狀態;而人工轉移在當前狀態結束后即停留在當前狀態,只有一條當前狀態允許的命令才能進入下一個狀態。

  可以想象,自行設計如此復雜的控制流程絕非易事。值得慶幸的是,在大多數應用中并不需要完備的狀態機。下面討論一種簡化的SDRAM狀態機。

2.3 簡化的狀態流程

  根據任意波形發生器的特點,對SDRAM的功能進行了以下簡化:

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

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

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

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

  (5)數據延時固定為3個時鐘周期;

  (6)刷新模式只使用自動刷新方式,器件空閑時即處于連續的自動刷新狀態;

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

  (8)突發方式固定為順序方式,突發長度固定為整頁;

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

  經過以上簡化的狀態機如圖3所示。

?

2.4 SDRAM控制器的EPLD實現

  為了實現上述簡化的SDRAM控制功能,采用一片ALTERA公司生產的EPLD器件MAX7256ATC144-6。圖4是任意波形發生器SDRAM控制流示意圖。由于具體編程要涉及許多細節問題,在此不做贅述,其主要功能如下:

  (1)通過ISA總線,實現與CPU的接口,接收波形數據和讀命令;

  (2)上電自動初始化;

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

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

  (5)控制FIFO,以解決SDRAM刷新和波形長度不是頁長度的倍數問題。

?

?

  雖然完全應用SDRAM確實比較復雜,但只要本著“夠用就行”的原則,對其功能進行合理的簡化,設計出具有特殊需求、適用于特定條件的SDRAM控制器是完全可行的。目前,筆者已將基于SDRAM的任意波形發生器應用到多個研發項目中。

?

參考文獻

1 K4S641632C Data Sheet. Samsung Inc, June 1999.

2 MAX7000A Data Sheet. IDT Inc, October 2000.

3 宋萬杰.CPLD技術及應用.西安:西安電子科技大學出版社, 2001

本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
主站蜘蛛池模板: 探花www视频在线观看高清| 电台女诗岚第1到4部分| 国产精品欧美一区二区三区不卡| 中文字幕在线观看第二页| 欧美日韩精品福利在线观看| 国产jizzjizz免费视频| 在线国产你懂的| 嫩小xxxxx性bbbbb孕妇| 久久精品无码午夜福利理论片| 玩弄放荡人妻少妇系列视频| 国产交换俱乐部在线看| 2020夜夜操| 好男人好资源在线观看免费播放高清| 久别的草原电视剧免费观看| 热久久这里是精品6免费观看| 日本道精品一区二区三区| 国产精品无码永久免费888| 中文字幕日韩丝袜一区| 欧美人与z0xxx另类| 免看**一片成人123| 色综合久久88色综合天天| 国产精品一区二区在线观看| 一级一片免费视频播放| 日本高清中文字幕| 亚洲图片欧美在线| 男人肌肌插女人肌肌| 国产一区二区三区樱花动漫| 五月天丁香久久| 国色天香精品一卡2卡3卡| 中文字幕avdvd| 日韩亚洲人成网站| 亚洲国产情侣一区二区三区| 琪琪see色原网中文| 四虎国产精品永久在线网址| 国产精品久久女同磨豆腐 | 北条麻妃vs黑人解禁| 麻豆网神马久久人鬼片| 国产精品区一区二区三| 99热国产免费| 少妇人妻偷人精品一区二区| 久久人人妻人人做人人爽|