<acronym id="s8ci2"><small id="s8ci2"></small></acronym>
<rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
<acronym id="s8ci2"></acronym>
<acronym id="s8ci2"><center id="s8ci2"></center></acronym>

您好,歡迎來電子發燒友網! ,新用戶?[免費注冊]

您的位置:電子發燒友網>電子百科>存儲設備>外置及共享硬盤>

處理器外接SDRAM的控制技術介紹

2011年04月21日 11:42 本站整理 作者:秩名 用戶評論(0

  現代的處理器(SoC)或DSP都內建有內存控制器,它是外部SDRAM、FLASH、EEPROM、SRAM……等內存的控制接口。但不同處理器內部的內存控制方式都不盡相同,而且它們的控制程序大部分都位于開機程序內,皆屬于匯編語言,所以常令人不知所云。

  SDRAM的規格

  現代的處理器并不需要額外的外部器件,就可以直接將外部內存連接至處理器的腳位上。但是,在選擇SDRAM時,還是必須考慮下列幾項因素:

  ● 工作電壓

  ● 最大的工作頻率

  ● 最大的記憶容量

  ● I/O大小和排數(bank number)

  ● “列地址閃控(column address strobe;CAS)”的延遲(latency)

  ● 刷新(refresh)的速率

  ● 分頁大小(page size)

  ● 初始化的順序(sequency):可程序化的順序是MRS=>REF(refresh)或REF=>MRS。

  上述參數都列在SDRAM規格中,它們必須能符合處理器內部的內存控制器之要求,惟有如此,才不需要額外的外部器件,否則就必須另外設計邏輯電路來銜接。在圖1中,SDRAM-B無法符合ADSP-TS201S處理器的內存控制器的要求。因為SDRAM-B的“突發資料組之寬度(burst length)”是1,而不是“全分頁”;而且SDRAM-B的分頁大小是2048字組(word或16bits),但是ADSP-TS201S處理器最多只能支持1024字組。所以,相較之下,應該SDRAM-A才對。

  緩存器的設定

  與其它控制器一樣,處理器內部的內存控制器也需要透過緩存器(register)去設定它的組態與功能。根據圖1的規格,可以設定ADSP-TS201S處理器的“SDRAM控制緩存器(SDRCON)”。SDRCON緩存器的初始值是0,表示SDRAM是在禁能(disable)狀態。圖2是SDRCON緩存器的每個位的名稱。

  1. 位0(SDRAM ENABLE):設為1時,表示有SDRAM存在。

  2. 位1~2(CAS LATENCY;CL):表示當讀取(read)命令發出之后,至數據出現時之間的時間。它與寫入作業無關。此值可以在SDRAM規格表中查到,如圖3所示。假設外部總線速率是100MHz,則CL應設為2。有些SDRAM的時序參數(例如:CL、tRAS、tRP…..等)是根據不同的傳輸速率和速率等級(speed grade)而定的。

  3.位3(PIPE DEPTH):當有數個SDRAM并排使用時,可能需要外部緩沖存儲器(buffer),這時,此位必須設為1。不過,如果SDRAM腳位上的電容值遠低于30pF,則此位可以設為0。

  4.位4~5(PAGE BOUNDARY):分頁邊界,是用來定義分頁的大小,單位是字組。此值與“列的地址(column addresses)”數目相等。圖4是SDRAM-A的規格,從中可以查出:列地址的總數目是256(A0~A7),因此,分頁大小是256。

  5. 位7~8(REFRESH RATE):這個值能決定處理器內部的刷新計數器(refresh counter)之值,好讓處理器的速率能與外部SDRAM所需的刷新速率相配合。于圖4中,刷新計數值是4K;而且在SDRAM規格中,會經常見到:64ms,4096 cycle refresh或者4096 cycles/64ms或15.6μs/row。刷新速率的計算公式是:cycles=SOCCLK×tREF/Rows,其中,SOCCLK是處理器的CPU速率,tREF是SDRAM刷新間隔(refresh period),Rows是行地址的位數目。假設SOCCLK等于250MHz,由上述公式可以求得刷新速率等于3900周期(cycles)。因此,實際的刷新速率必須等于或小于3900周期,但是ADSP-TS201S處理器的內存控制器最多只支持3700周期,所以此值要設定為3700。

  6. 位9~10(PRC TO RAS DELAY):此參數決定SDRAM的Precharge到RAS之間的延遲時間,也就是tRP,如圖5所示。圖6是SDRAM的時序規格范例,其中,傳輸率屬-6等級者,它的最小tRP值是18ns,若使用100MHz速率,則至少需要1.8周期(100MHz×18ns=1.8)。因此,tRP應該設為2周期。

  7. 位11~13(RAS TO PRC DELAY):此參數決定RAS到Precharge之間的延遲時間,也就是tRAS。如圖6所示,最小的tRAS值是42ns,若使用100MHz速率,則至少需要4.2周期。因此,tRAS應該設為5周期。

  8. 位14(INIT SEQUENCE):它決定SDRAM于開機時的初始化程序。若此程序是:在開機后100μs內,至少必須執行一個COMMAND INHIBIT或NOP命令,之后,執行PRECHARGE命令,此時,SDRAM是處于閑置(idle)狀態。然后,執行兩個AUTO-REFRESH,再設定“模式緩存器(mode register)”。最后,才能執行讀寫作業。這表示此SDRAM的初始化時間至少需要:PRE+2×Autorefresh+MRS(mode register set)。

  9. 位15(EMR ENABLE):只有當連接至低功率(2.5V)的SDRAM時,才必須設定這個位值,否則保持0。

  當SDRCON緩存器按照上述規則被設定好之后,內存控制器將會發出MRS命令,對外部SDRAM進行初始化。

  

    本文導航

    • 第 1 頁:處理器外接SDRAM的控制技術介紹
    • 第 2 頁:設計程序

非常好我支持^.^

(1) 100%

不好我反對

(0) 0%

( 發表人:Spring )

      發表評論

      用戶評論
      評價:好評中評差評

      發表評論,獲取積分! 請遵守相關規定!

      ?
      亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
      <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
      <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
      <acronym id="s8ci2"></acronym>
      <acronym id="s8ci2"><center id="s8ci2"></center></acronym>