新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于AMBA-AHB總線的SDRAM控制器設(shè)計(jì)方案

基于AMBA-AHB總線的SDRAM控制器設(shè)計(jì)方案

作者: 時(shí)間:2016-12-20 來源:網(wǎng)絡(luò) 收藏
  0 引言

  隨著大規(guī)模集成電路和高速、低功耗、高密度存儲(chǔ)技術(shù)的發(fā)展,SDRAM動(dòng)態(tài)存儲(chǔ)器因容量大、速度快、價(jià)格低廉等優(yōu)點(diǎn),現(xiàn)已成為PC內(nèi)存的主流。然而SDRAM存儲(chǔ)器內(nèi)部控制邏輯十分復(fù)雜,時(shí)序要求也非常嚴(yán)格,因此需要設(shè)計(jì)專門的SDRAM 控制器來實(shí)現(xiàn)系統(tǒng)對(duì)SDRAM的訪問。

  存儲(chǔ)控制器是嵌入式微處理器中AMBA-AHB總線與片外存儲(chǔ)設(shè)備之間的接口,完成總線主設(shè)備(CPU或DMA)與片外存儲(chǔ)設(shè)備(SDRAM或SRAM)的數(shù)據(jù)傳輸,其功能與性能決定著嵌入式微處理器所支持的外部存儲(chǔ)器的類型以及外部存儲(chǔ)器的訪問速度,進(jìn)而決定著整個(gè)嵌入式系統(tǒng)的處理速度。AMBA總線規(guī)范成為嵌入了式微處理器內(nèi)片上總線的標(biāo)準(zhǔn),設(shè)計(jì)基于AMBA總線標(biāo)準(zhǔn),支持嵌入式系統(tǒng)常用存儲(chǔ)器類型的存儲(chǔ)控制器IP具有非常大的現(xiàn)實(shí)意義。

  1 AMBA 總線簡介

  典型的基于AMBA總線的微控制器架構(gòu)如圖1所示。

  基于AMBA的典型微控制器框架

  它包含一個(gè)作為系統(tǒng)骨架的AHB(Advanced High-Performance Bus)或ASB總線,可實(shí)現(xiàn)CPU或DMA模塊與片外存儲(chǔ)器之間的大量數(shù)據(jù)通信,以獲得大的帶寬。

  另外,在這條高性能總線上還有一個(gè)橋接器以連接低帶寬的APB,而在APB上連接著大多數(shù)的系統(tǒng)外設(shè)。用戶可以各自獨(dú)立設(shè)計(jì)基于這個(gè)規(guī)范的微處理器以及外圍IP,提高了系統(tǒng)的開發(fā)效率及模塊的可重用型[6]。

  其中,AHB 總線是一種支持多總線主機(jī)的高性能總線,用于高性能、高時(shí)鐘頻率的系統(tǒng),它保證了處理器與片外存儲(chǔ)器的有效連接。一個(gè)完整的AHB傳輸過程可以分為地址傳輸階段和數(shù)據(jù)傳輸階段,地址傳輸階段傳輸?shù)刂泛涂刂菩盘?hào),而數(shù)據(jù)傳輸階段傳輸?shù)氖亲x寫數(shù)據(jù)和響應(yīng)信號(hào)。AHB 總線支持流水線傳輸,也就是說在前一個(gè)數(shù)據(jù)傳輸階段可以同時(shí)進(jìn)行下一個(gè)地址傳輸階段,前后不同的傳輸階段可以重疊起來以提高系統(tǒng)的數(shù)據(jù)處理速度。

  2 SDRAM 工作原理

  SDRAM 是一種高速高容量同步動(dòng)態(tài)存儲(chǔ)器,相比于SRAM 等靜態(tài)存儲(chǔ)器具有容量大、速度快、價(jià)格低廉等優(yōu)點(diǎn),成為圖像處理中常用的數(shù)據(jù)存儲(chǔ)器。但因SDRAM存儲(chǔ)結(jié)構(gòu)的特殊性,需要對(duì)SDRAM不斷進(jìn)行預(yù)充電、刷新等操作以保持?jǐn)?shù)據(jù)不丟失。SDRAM 內(nèi)部的操作是通過總線命令實(shí)現(xiàn)的,命令由RASN、CASN 和WEN信號(hào)聯(lián)合產(chǎn)生,如表1所示(H表示高電平,L表示低電平)。

  SDRAM總線命令

  SDRAM上電后必須按一種確定的方式初始化。在上電穩(wěn)定后100 μs時(shí)間內(nèi)存儲(chǔ)器不接受除NOP以外的任何命令。當(dāng)100 μs過后,通過控制器向SDRAM所有bank 發(fā)出預(yù)充電(Precharge)命令[8],使SDRAM 所有bank進(jìn)入待機(jī)狀態(tài)。之后,要對(duì)SDRAM 連續(xù)執(zhí)行兩個(gè)自動(dòng)刷新操作,使SDRAM 芯片內(nèi)部的刷新及計(jì)數(shù)器進(jìn)入正常運(yùn)行狀態(tài)。兩個(gè)刷新周期完畢之后,開始對(duì)SDRAM 的模式寄存器(Mode Register)進(jìn)行操作,模式寄存器用來決定SDRAM將以何種工作模式工作。整個(gè)初始化過程如圖2所示。

  SDRAM初始化過程

  3 SDRAM 控制器與AMBA-AHB 總線的關(guān)系

  本設(shè)計(jì)基于AMBA-AHB總線的slave模塊,SDRAM控制器處在片內(nèi)AHB 總線與片外存儲(chǔ)設(shè)備之間,作為一個(gè)從機(jī)掛在AHB總線上。它一邊需要通過AHB總線接口模塊與AHB總線通信,因此必須符合AHB總線標(biāo)準(zhǔn);另一邊又需要給外部存儲(chǔ)設(shè)備提供控制信號(hào),以實(shí)現(xiàn)對(duì)外部存儲(chǔ)設(shè)備的讀寫操作。控制器接收來自總線主設(shè)備的符合AMBA-AHB 總線規(guī)范的數(shù)據(jù)傳輸請(qǐng)求,產(chǎn)生正確的讀寫控制信號(hào)給SDRAM 存儲(chǔ)器,以完成總線的數(shù)據(jù)傳輸請(qǐng)求。

  AMBA 2.0總線為嵌入式微控制器定義了一套片上總線標(biāo)準(zhǔn),因此本設(shè)計(jì)是獨(dú)立設(shè)計(jì)的基于該規(guī)范的外圍IP.

  4 SDRAM 控制器系統(tǒng)設(shè)計(jì)架構(gòu)

  SDRAM 控制器與AHB 總線接口在整個(gè)系統(tǒng)中的連接關(guān)系如圖3所示。

  系統(tǒng)架構(gòu)圖

  4.1 AHB-slave總線接口電路

  AHB-slave總線接口電路用來實(shí)現(xiàn)SDRAM 控制邏輯與AHB-master之間的信號(hào)傳輸。

  按照AMBA 總線規(guī)范要求,AHB 總線從設(shè)備(slave)在總線時(shí)鐘上升沿,HREADY信號(hào)(由從設(shè)備發(fā)出)為高的情況下,必須鎖存來自AHB總線的總線控制信號(hào)、數(shù)據(jù)信號(hào)、地址信號(hào)等,以供內(nèi)部譯碼模塊以及其他各模塊使用。


上一頁 1 2 下一頁

關(guān)鍵詞: AMBA總線SDRAM控制

評(píng)論


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

關(guān)閉