www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁 > 電源 > 數(shù)字電源
[導(dǎo)讀]現(xiàn)代的處理器(SoC)或DSP都內(nèi)建有內(nèi)存控制器,它是外部SDRAM、FLASH、EEPROM、SRAM……等內(nèi)存的控制接口。但不同處理器內(nèi)部的內(nèi)存控制方式都不盡相同,而且它們的控制程序大部分都位于開機(jī)程序內(nèi),皆屬于

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

  SDRAM的規(guī)格

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

  ● 工作電壓

  ● 最大的工作頻率

  ● 最大的記憶容量

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

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

  ● 刷新(refresh)的速率

  ● 分頁大小(page size)

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

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

  緩存器的設(shè)定

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

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

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

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

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

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

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

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

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

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

  當(dāng)SDRCON緩存器按照上述規(guī)則被設(shè)定好之后,內(nèi)存控制器將會(huì)發(fā)出MRS命令,對(duì)外部SDRAM進(jìn)行初始化。

設(shè)計(jì)程序

 

  了解了SDRAM規(guī)格與內(nèi)存控制器的緩存器功能之后,接著就要設(shè)計(jì)SDRAM的初始化程序,其一般設(shè)計(jì)程序概述如下:

  1. 設(shè)定刷新定時(shí)器(refresh timer)的預(yù)分頻(prescaler)參數(shù):它決定刷新定時(shí)器的輸入頻率(input clock)??偩€頻率除以此參數(shù)(或者還要再加上一個(gè)正整數(shù)值)就等于刷新定時(shí)器。

  2. 設(shè)定刷新定時(shí)器的計(jì)時(shí)時(shí)間的長度(或刷新速率):亦即,設(shè)定刷新SDRAM暫存內(nèi)容的時(shí)間間隔。當(dāng)此計(jì)時(shí)時(shí)間終了時(shí),內(nèi)存控制器會(huì)自動(dòng)發(fā)出刷新請求。例如:若已知系統(tǒng)頻率和最大可允許的刷新時(shí)間,就可以經(jīng)由預(yù)分頻參數(shù)、系統(tǒng)頻率、最大可允許的刷新時(shí)間,求出適當(dāng)?shù)乃⑿聲r(shí)間間隔(不能大于最大可允許的刷新時(shí)間)。請參考上節(jié)的REFRESH RATE定義。

  3. 設(shè)定基準(zhǔn)地址(base address):大多數(shù)的SoC都是采用多任務(wù)式總線(multiplexed bus)架構(gòu),使不同種類的內(nèi)存、不同的數(shù)據(jù)端口大小(port size)能夠共享使用相同的總線,此時(shí),內(nèi)存控制器必須根據(jù)此基準(zhǔn)地址,來和目前所要存取的地址做比較,之后,內(nèi)存控制器才能知道目前要和哪一種內(nèi)存——具有某種特定的屬性——進(jìn)行存取作業(yè)。這些特定的屬性包括:內(nèi)存的作業(yè)模式或類型、數(shù)據(jù)端口大小、防止寫入、使用外部的內(nèi)存控制器、局部區(qū)域的獨(dú)立運(yùn)算(atomic opration)、支持?jǐn)?shù)據(jù)管線作業(yè)(data pipelining;可以增加一個(gè)執(zhí)行周期,以省略掉數(shù)據(jù)建立所需的額外時(shí)間)、數(shù)據(jù)是正確的。

  4. 設(shè)定存取模式:這包含,設(shè)定SDRAM的大小、單一SDRAM的內(nèi)部記憶排的數(shù)量、行起始地址的位(row start address bit)、行地址線的數(shù)目(row address lines)、分頁模式(當(dāng)總線閑置時(shí),分頁是關(guān)閉的;亦或一直保持開啟,直到發(fā)生分頁失誤或執(zhí)行刷新作業(yè))、取消內(nèi)部記憶排交錯(cuò)(bank interleaving)。

  5. 設(shè)定作業(yè)模式:這包含,選擇多任務(wù)尋址的方式(記憶排交錯(cuò)或分頁交錯(cuò))、啟動(dòng)刷新作業(yè)、存取SDRAM時(shí)執(zhí)行何種作業(yè)、選擇多任務(wù)尋址的腳位與記憶排的多任務(wù)地址線、決定A10腳位、設(shè)定SDRAM的各種時(shí)間參數(shù)(請參考上節(jié)介紹與SDRAM規(guī)格書)、突量數(shù)據(jù)(burst)的長度、開啟外部多任務(wù)尋址、延長SDRAM的控制(命令)時(shí)間。

  6. 按照不同內(nèi)存控制器的要求,執(zhí)行SDRAM的初始化程序(下列僅是范例):

  ● 對(duì)所有記憶排,執(zhí)行PRECHARGE命令1次。

  ● 執(zhí)行CBR REFRESH命令8次。

  ● 執(zhí)行MODE REGISTER WRITE命令1次。

  ● 啟動(dòng)刷新服務(wù),讓SDRAM進(jìn)入正常作業(yè)狀態(tài)中。

  轉(zhuǎn)譯備份緩沖器

  “轉(zhuǎn)譯備份緩沖器(Translation Lookaside Buffer;TLB)”保存著最近才被使用的“分頁表項(xiàng)目(page table entry;PTE)”。PTE是一種數(shù)據(jù)結(jié)構(gòu),包含著可以將“有效地址”轉(zhuǎn)譯成“實(shí)體地址”的信息。PTE是以分頁為一個(gè)儲(chǔ)存單位,一個(gè)分頁是4 KBytes。通常,32-bit處理器的一個(gè)PTE含有8 Bytes的信息,而64-bit處理器的一個(gè)PTE含有16 Bytes的信息。

  通常,TLB是位于“內(nèi)存管理單元(MMU)”內(nèi)部,而且又可區(qū)分為:指令MMU內(nèi)的“指令TLB(ITLB)”、數(shù)據(jù)MMU內(nèi)的“數(shù)據(jù)TLB(DTLB)”。它們和外部內(nèi)存的關(guān)系很密切,所以,在完成SDRAM的初始化作業(yè)之后,通常會(huì)令全部的PTE無效,并關(guān)閉指令緩沖器(I Cache)和數(shù)據(jù)緩沖器(D Cache),以清除所有殘留的數(shù)據(jù)。

  結(jié) 語

  內(nèi)存的控制方式在系統(tǒng)開機(jī)時(shí)就被決定了。因此,如果要對(duì)SDRAM進(jìn)行硬件線路的除錯(cuò)驗(yàn)證,都必須在開機(jī)程序(boot code)中進(jìn)行。若不了解SDRAM的規(guī)格和SoC處理器的內(nèi)存控制方式,這個(gè)除錯(cuò)工作將會(huì)變得很困難。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

LED驅(qū)動(dòng)電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: 驅(qū)動(dòng)電源

在工業(yè)自動(dòng)化蓬勃發(fā)展的當(dāng)下,工業(yè)電機(jī)作為核心動(dòng)力設(shè)備,其驅(qū)動(dòng)電源的性能直接關(guān)系到整個(gè)系統(tǒng)的穩(wěn)定性和可靠性。其中,反電動(dòng)勢抑制與過流保護(hù)是驅(qū)動(dòng)電源設(shè)計(jì)中至關(guān)重要的兩個(gè)環(huán)節(jié),集成化方案的設(shè)計(jì)成為提升電機(jī)驅(qū)動(dòng)性能的關(guān)鍵。

關(guān)鍵字: 工業(yè)電機(jī) 驅(qū)動(dòng)電源

LED 驅(qū)動(dòng)電源作為 LED 照明系統(tǒng)的 “心臟”,其穩(wěn)定性直接決定了整個(gè)照明設(shè)備的使用壽命。然而,在實(shí)際應(yīng)用中,LED 驅(qū)動(dòng)電源易損壞的問題卻十分常見,不僅增加了維護(hù)成本,還影響了用戶體驗(yàn)。要解決這一問題,需從設(shè)計(jì)、生...

關(guān)鍵字: 驅(qū)動(dòng)電源 照明系統(tǒng) 散熱

根據(jù)LED驅(qū)動(dòng)電源的公式,電感內(nèi)電流波動(dòng)大小和電感值成反比,輸出紋波和輸出電容值成反比。所以加大電感值和輸出電容值可以減小紋波。

關(guān)鍵字: LED 設(shè)計(jì) 驅(qū)動(dòng)電源

電動(dòng)汽車(EV)作為新能源汽車的重要代表,正逐漸成為全球汽車產(chǎn)業(yè)的重要發(fā)展方向。電動(dòng)汽車的核心技術(shù)之一是電機(jī)驅(qū)動(dòng)控制系統(tǒng),而絕緣柵雙極型晶體管(IGBT)作為電機(jī)驅(qū)動(dòng)系統(tǒng)中的關(guān)鍵元件,其性能直接影響到電動(dòng)汽車的動(dòng)力性能和...

關(guān)鍵字: 電動(dòng)汽車 新能源 驅(qū)動(dòng)電源

在現(xiàn)代城市建設(shè)中,街道及停車場照明作為基礎(chǔ)設(shè)施的重要組成部分,其質(zhì)量和效率直接關(guān)系到城市的公共安全、居民生活質(zhì)量和能源利用效率。隨著科技的進(jìn)步,高亮度白光發(fā)光二極管(LED)因其獨(dú)特的優(yōu)勢逐漸取代傳統(tǒng)光源,成為大功率區(qū)域...

關(guān)鍵字: 發(fā)光二極管 驅(qū)動(dòng)電源 LED

LED通用照明設(shè)計(jì)工程師會(huì)遇到許多挑戰(zhàn),如功率密度、功率因數(shù)校正(PFC)、空間受限和可靠性等。

關(guān)鍵字: LED 驅(qū)動(dòng)電源 功率因數(shù)校正

在LED照明技術(shù)日益普及的今天,LED驅(qū)動(dòng)電源的電磁干擾(EMI)問題成為了一個(gè)不可忽視的挑戰(zhàn)。電磁干擾不僅會(huì)影響LED燈具的正常工作,還可能對(duì)周圍電子設(shè)備造成不利影響,甚至引發(fā)系統(tǒng)故障。因此,采取有效的硬件措施來解決L...

關(guān)鍵字: LED照明技術(shù) 電磁干擾 驅(qū)動(dòng)電源

開關(guān)電源具有效率高的特性,而且開關(guān)電源的變壓器體積比串聯(lián)穩(wěn)壓型電源的要小得多,電源電路比較整潔,整機(jī)重量也有所下降,所以,現(xiàn)在的LED驅(qū)動(dòng)電源

關(guān)鍵字: LED 驅(qū)動(dòng)電源 開關(guān)電源

LED驅(qū)動(dòng)電源是把電源供應(yīng)轉(zhuǎn)換為特定的電壓電流以驅(qū)動(dòng)LED發(fā)光的電壓轉(zhuǎn)換器,通常情況下:LED驅(qū)動(dòng)電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: LED 隧道燈 驅(qū)動(dòng)電源
關(guān)閉