在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

關于SDRAM控制器的基礎知識詳解

FPGA之家 ? 來源:FPGA之家 ? 作者:FPGA之家 ? 2021-04-19 09:46 ? 次閱讀

FPGA視頻圖像處理系統中,經常需要使用到SDRAM作為視頻圖像緩存。SDRAM控制器可以分為上電初始化,自動刷新,讀操作和寫操作這四個部分,他們之間的轉換可以通過狀態機來控制。下面分別實現這幾個部分。

1.SDRAM上電初始化

SDRAM上電初始化時序如下圖所示。

c2878e84-9ff2-11eb-8b86-12bb97331649.jpg

由時序圖可知初始化大概的過程為:上電后等待電源VDD和時鐘信號穩定100μs(期間命令為空命令),同時在100μs內設置CKE(時鐘使能)信號為高。隨后對所有Bank發送預充電(PRECH ARGE)命令,發送兩次自動刷新(REFRESH)命令,最后發送裝載模式寄存器(LOAD MODE REGISTER)命令,并將設置寄存器的值傳入地址總線A0~A11。

c295a2a8-9ff2-11eb-8b86-12bb97331649.png

上述過程的實現可以通過線性序列機來實現。即需要對初始化過程時間進行計數,當時間到達時就執行某個命令。下面是部分代碼。

1.計時器

c2a5df56-9ff2-11eb-8b86-12bb97331649.png

2.命令執行時間設置

c2b13130-9ff2-11eb-8b86-12bb97331649.jpg

3.對應時間執行對應命令

c2cd462c-9ff2-11eb-8b86-12bb97331649.png

2.SDRAM自動刷新

同樣給出自動刷新的時序圖。

c3055f30-9ff2-11eb-8b86-12bb97331649.jpg

過程比較簡單:首先對所有Bank預充電,然后發送兩次自動刷新命令。

c3508924-9ff2-11eb-8b86-12bb97331649.png

同樣可以使用線性序列機的方法來實現,這里就不重復了。但需要添加一個刷新狀態標志。ref_opt_done=1表示刷新完成,ref_opt=1表示正在刷新。

c35c7dec-9ff2-11eb-8b86-12bb97331649.png

3.SDRAM寫操作

c36e59e0-9ff2-11eb-8b86-12bb97331649.jpg

從時序圖上看首先發出激活命令,并給出行地址Bank地址;隨后發出寫命令,并指定寫入Bank,起始列地址和寫入數據;最后進行預充電,關閉所有Bank。這里每次突發寫入4個數據,即突發長度為4,突發長度可以在之前初始化的模式寄存器中設置。

c37f345e-9ff2-11eb-8b86-12bb97331649.png

同樣使用序列機的實現方法,在寫操作中也需要添加寫操作完成狀態標志,和過程狀態標志。此外只有當寫入突發長度數據的時候我們才使能數據線輸入有效,其他時刻讓數據線保持高阻態,所以要添加一個寫數據狀態標志Wr_data_valid=1時表示正在寫數據。

c6ad4be8-9ff2-11eb-8b86-12bb97331649.png

4.SDRAM讀操作

c6c199c2-9ff2-11eb-8b86-12bb97331649.jpg

與寫操作類似,但是我們輸入讀命令的時候,數據并不是立刻輸出,而是要經過一個CAS_Latency后輸出。這個延時也可以通過模式寄存器的配置來調整。我們同樣需要給出讀操作完成、讀操作過程,讀出突發數據的有效區間。

c6f9adb2-9ff2-11eb-8b86-12bb97331649.png

c7088134-9ff2-11eb-8b86-12bb97331649.png

5.SDRAM控制器設計

首先SDRAM上電后進入空閑狀態,初始化完成后進入刷新狀態,然后根據輸入命令進行轉換,實際上狀態機的控制對于刷新操作,讀/寫操作是有一個優先級的:刷新操作》寫操作》讀操作。即假設寫命令和刷新命令同時到來時先執行刷新操作。下圖為狀態機的狀態轉移圖。具體實現可參考完整代碼。

c73766de-9ff2-11eb-8b86-12bb97331649.jpg

由于SDRAM需要固定時間間隔刷新一次,我們還得考慮一個刷新定時器,固定時間產生一個刷新請求。

c7617398-9ff2-11eb-8b86-12bb97331649.png

最后我們還需要考慮如果在讀操作的時候,產生了刷新請求或寫請求怎么辦呢?寫操作的時候,產生了刷新請求或讀請求怎么辦?或者在刷新操作時產生了讀/寫請求怎么辦?

對于刷新請求的突然到來我們采取記住刷新標志,等待當前任務完成后進行刷新操作。

在刷新操作時讀/寫請求突然到來,我們也采取記住讀/寫標志,等待當前任務完成后進行讀/寫操作。

但是對于在讀/寫操作時外部讀/寫請求的到來,我們選擇了忽略這次請求。部分代碼如下。

c76b6e20-9ff2-11eb-8b86-12bb97331649.jpg

由于視頻信號數據讀入讀出都是連續不斷的,因此在某些時刻會導致讀寫的遺漏,但一般會在SDRAM讀出寫入前加上一個FIFO進行緩存控制數據的讀寫,當寫FIFO中數據大于一次突發長度時,使能寫信號;當讀FIFO中數據小于突發長度時,使能讀信號,就可以解決這個問題。
編輯:lyn

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • FPGA
    +關注

    關注

    1630

    文章

    21802

    瀏覽量

    606402
  • 計時器
    +關注

    關注

    1

    文章

    426

    瀏覽量

    32879
  • 代碼
    +關注

    關注

    30

    文章

    4837

    瀏覽量

    69128
  • SDRAM控制器
    +關注

    關注

    0

    文章

    28

    瀏覽量

    8200

原文標題:SDRAM控制器設計

文章出處:【微信號:zhuyandz,微信公眾號:FPGA之家】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    SDRAM控制器功能模塊概述

    按鍵KEY1觸發寫,將計數產生的0到255的數據寫到FIFO寫模塊里面,繼而寫到SDRAM 器件里面。
    的頭像 發表于 02-07 09:33 ?121次閱讀
    <b class='flag-5'>SDRAM</b><b class='flag-5'>控制器</b>功能模塊概述

    PCB繪制基礎知識

    電子發燒友網站提供《PCB繪制基礎知識.pdf》資料免費下載
    發表于 01-21 15:20 ?3次下載
    PCB繪制<b class='flag-5'>基礎知識</b>

    EE-178:ADSP-TS101S TigerSHARC片上SDRAM控制器

    電子發燒友網站提供《EE-178:ADSP-TS101S TigerSHARC片上SDRAM控制器.pdf》資料免費下載
    發表于 01-14 15:00 ?0次下載
    EE-178:ADSP-TS101S TigerSHARC片上<b class='flag-5'>SDRAM</b><b class='flag-5'>控制器</b>

    EE-127:ADSP-21065L片內SDRAM控制器

    電子發燒友網站提供《EE-127:ADSP-21065L片內SDRAM控制器.pdf》資料免費下載
    發表于 01-06 15:45 ?0次下載
    EE-127:ADSP-21065L片內<b class='flag-5'>SDRAM</b><b class='flag-5'>控制器</b>

    EMC基礎知識-華為

    EMC基礎知識-華為
    發表于 01-06 14:09 ?0次下載

    ADSP-21161 SHARC片內SDRAM控制器

    電子發燒友網站提供《ADSP-21161 SHARC片內SDRAM控制器.pdf》資料免費下載
    發表于 01-03 15:04 ?0次下載
    ADSP-21161 SHARC片內<b class='flag-5'>SDRAM</b><b class='flag-5'>控制器</b>

    品質管理基礎知識

    品質管理基礎知識
    的頭像 發表于 11-01 11:08 ?424次閱讀
    品質管理<b class='flag-5'>基礎知識</b>

    Verilog HDL的基礎知識

    本文繼續介紹Verilog HDL基礎知識,重點介紹賦值語句、阻塞與非阻塞、循環語句、同步與異步、函數與任務語法知識
    的頭像 發表于 10-24 15:00 ?608次閱讀
    Verilog HDL的<b class='flag-5'>基礎知識</b>

    高速數模轉換基礎知識

    電子發燒友網站提供《高速數模轉換基礎知識.pdf》資料免費下載
    發表于 10-18 11:19 ?0次下載
    高速數模轉換<b class='flag-5'>器</b><b class='flag-5'>基礎知識</b>

    高速模數轉換基礎知識

    電子發燒友網站提供《高速模數轉換基礎知識.pdf》資料免費下載
    發表于 10-18 10:31 ?0次下載
    高速模數轉換<b class='flag-5'>器</b><b class='flag-5'>基礎知識</b>

    TI電池監控IC的HDQ通信基礎知識

    電子發燒友網站提供《TI電池監控IC的HDQ通信基礎知識.pdf》資料免費下載
    發表于 10-12 10:01 ?0次下載
    TI電池監控<b class='flag-5'>器</b>IC的HDQ通信<b class='flag-5'>基礎知識</b>

    負載開關基礎知識

    電子發燒友網站提供《負載開關基礎知識.pdf》資料免費下載
    發表于 10-08 09:56 ?1次下載
    負載開關<b class='flag-5'>基礎知識</b>

    DDR4 SDRAM控制器的主要特點

    DDR4 SDRAM(Double Data Rate Fourth Synchronous Dynamic Random Access Memory)控制器作為現代計算系統中的重要組成部分,其
    的頭像 發表于 09-04 12:55 ?792次閱讀

    運算放大器和比較基礎知識

    電子發燒友網站提供《運算放大器和比較基礎知識.pdf》資料免費下載
    發表于 07-13 09:37 ?10次下載

    一文詳解智能汽車域控制器基礎知識

    分布式架構下汽車搭載數十個控制器,且為保證性能穩定性及安全性,每個控制器芯片硬件算力相對其上運行的程序都有所冗余。這就導致從整車維度,各個控制器的能力“各自為政”,無法高效協同。
    發表于 04-20 09:49 ?1272次閱讀
    一文<b class='flag-5'>詳解</b>智能汽車域<b class='flag-5'>控制器</b><b class='flag-5'>基礎知識</b>
    主站蜘蛛池模板: 免费精品美女久久久久久久久 | 午夜精品久久久久久影视riav | 精品在线小视频 | 躁天天躁中文字幕在线 | 日日日干干干 | 成人激情在线 | 福利在线看| 四虎新地址 | 成人爽a毛片在线视频 | 日本xxxxxx69| 日本视频www | 国内视频一区二区三区 | 大看蕉a在线观看 | 欧美hhh| 五月激情片| 午夜网站免费版在线观看 | 5060精品国产福利午夜 | 天堂网在线最新版www中文网 | 明星三级国产免费播放 | 国产精品污视频 | 日本人69xxxxxxxx69 | 自偷自拍亚洲欧美清纯唯美 | 国产操女人| 女人张开双腿让男人桶爽免 | 制服丝袜国产精品 | 国产毛片哪里有 | 免费在线观看一区二区 | 免费抓胸吻胸激烈视频网站 | cum4k在线| 97超频国产在线公开免费视频 | 人人射人人草 | 免费视频爱爱 | 亚洲理论在线观看 | 五月天婷婷免费观看视频在线 | 欧美亚洲综合另类型色妞 | 国产码一区二区三区 | 日日干狠狠干 | 日本xxxx69| 女性一级全黄生活片 | 丰满年轻岳欲乱中文字幕 | 美女张开腿露出尿口让男人桶 |