0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

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

3天內(nèi)不再提示

基于MCU外部存儲器接口的系統(tǒng)設(shè)計

電子設(shè)計 ? 來源:郭婷 ? 作者:電子設(shè)計 ? 2019-02-19 08:55 ? 次閱讀

MCU是許多嵌入式子系統(tǒng)設(shè)計中的關(guān)鍵元素,但實現(xiàn)必要的系統(tǒng)功能通常需要額外的功能。也許基于MCU的設(shè)計中最受限制的元素之一是片上存儲器。越來越多的應(yīng)用程序需要比MCU可用的系統(tǒng)內(nèi)存更多的系統(tǒng)內(nèi)存。特別是,先進的人機界面(HMI)設(shè)計可能需要大量的只讀圖像和音頻信息,這些信息不容易存儲在MCU片上閃存中。此外,越來越多的應(yīng)用發(fā)現(xiàn)片上RAM過度限制了需要大量數(shù)據(jù)緩沖和存儲的高級通信通道。

本文將快速回顧現(xiàn)代MCU上可用的一些外部存儲器接口。這將有助于設(shè)計人員更有效地實現(xiàn)需要額外外部存儲的基于MCU的系統(tǒng) - 無論是NVM閃存還是易失性SRAM/DRAM。

SDRAM的外部存儲器接口

也許最多擴展存儲能力所需的明顯外部存儲器接口適用于大型工作SRAM。通常,MCU具有相對少量的片上SRAM,并且通常應(yīng)用將需要比片上可用的更多的工作存儲器。例如,高級用戶界面可能需要大量緩沖存儲器來處理圖形用戶界面(GUI)和創(chuàng)建視頻或音頻提示。通常,在存儲或傳輸這些數(shù)據(jù)文件時使用壓縮技術(shù)以降低本地存儲要求或系統(tǒng)帶寬要求。這意味著可能需要大量的工作存儲來解壓縮這些文件。通常,通信應(yīng)用或數(shù)字信號處理應(yīng)用中需要大量工作存儲器作為緩沖存儲器。

許多MCU為外部存儲器接口控制器提供了用于控制外部SDRAM器件的特殊電路。強調(diào)支持SDRAM接口的關(guān)鍵硬件元件的示例MCU是恩智浦LPC1787 MCU。外部存儲器控制器外設(shè),如圖1所示,具有幾個可編程延遲元件,用于調(diào)整關(guān)鍵SDRAM信號中使用的關(guān)鍵接口信號的時序。例如,可以調(diào)整兩個潛在SDRAM時鐘(CLKOUT1和CLKOUT2)的延遲值,以根據(jù)存儲器的要求定位轉(zhuǎn)換。此外,另一個可編程延遲調(diào)整從存儲器讀取的數(shù)據(jù)被采樣的時間。這種時序調(diào)整及其范圍和精度對于簡化存儲器接口,電路板布局和相關(guān)的信號時序檢查至關(guān)重要。

基于MCU外部存儲器接口的系統(tǒng)設(shè)計

圖1 :恩智浦LPC1787 MCU外部存儲器控制器。 (恩智浦提供)

恩智浦LPC1787外部存儲器接口還包括幾個其他重要的硬件功能,使外部SDRAM接口更高效。例如,框圖頂部顯示的數(shù)據(jù)緩沖區(qū)可用作讀緩沖區(qū),寫緩沖區(qū)或組合使用。作為寫入緩沖區(qū),它們允許對事務(wù)進行分組,以最大限度地減少外部寫入操作的數(shù)量,從而提高系統(tǒng)帶寬并降低功耗。作為讀緩沖器,它們充當本地數(shù)據(jù)副本,因此對相同位置的進一步訪問可以使用片上緩沖器版本。這減少了外部讀取操作的數(shù)量,從而提高了系統(tǒng)帶寬并降低了功耗。

請注意,NXP內(nèi)存控制器還支持RAM,ROM和Flash的靜態(tài)存儲器接口。這是大多數(shù)現(xiàn)代MCU存儲器 - 控制器外設(shè)中使用的典型方法,因為大多數(shù)硬件在兩個應(yīng)用程序之間都很常見,并且應(yīng)用程序通常不需要同時使用這兩種類型的存儲器。

配置外部存儲器

外部存儲器通常用于多種用途 - 應(yīng)用程序不會將其視為存儲的單塊“塊”。用于配置片外存儲器塊以簡化存儲器訪問的方法有助于簡化應(yīng)用程序編碼。 Silicon Labs C8051F70x/71x MCU系列使用了這種技術(shù)的一個例子。在該MCU中,使用特殊的MOVX指令訪問外部存儲器。為了便于將訪問組合到片上和片外存儲器,可以將片上存儲器的一部分映射到外部存儲器空間。圖2顯示了可用于將內(nèi)部和外部存儲器映射到外部存儲器地址空間的四種配置模式。在模式1中,如圖2的最左側(cè)所示,內(nèi)部XRAM映射到完整的外部存儲器空間,當片上XRAM存儲器地址超過片上存儲器的數(shù)量時,地址“包裹”。當芯片退出復(fù)位時,這可能是一種有用的模式,以避免未初始化外部存儲器的啟動問題。成功配置和測試存儲器接口后,可以啟用外部存儲器空間。如果不使用外部存儲器,也可以使用該模式。

基于MCU外部存儲器接口的系統(tǒng)設(shè)計

圖2:Silicon Labs C8051F70x/71x外部存儲器配置。 (由Silicon Labs提供)

在模式2和3中,圖2中左起第二個和第三個,地址空間在片上和片外訪問之間分配。在模式2中,存儲體選擇不用于將高階地址位驅(qū)動到地址總線上;用戶可以控制這些地址值,以提供額外的靈活性。在模式3中,片上存儲體地址自動用于驅(qū)動外部地址總線,從而提供更簡單但不太靈活的方法。在模式4中,在圖2的最右側(cè),片外存儲器完全映射到外部地址空間。這使得可以訪問在其他地址模式中可能無法訪問的外部數(shù)據(jù),以充分利用可用內(nèi)存。如果您的應(yīng)用程序具有多種不同類型的外部存儲器要求 - 代碼,數(shù)據(jù)緩沖區(qū),轉(zhuǎn)換表或音頻/視頻處理,則可以簡化設(shè)計,以使用具有地址映射和塊訪問功能的外部存儲器控制器。

外部存儲器接口靈活性

在某些應(yīng)用中,MCU外部存儲器接口支持多種存儲器類型同時最小化器件引腳數(shù)量至關(guān)重要。常見的組合是用于程序存儲的Flash和用作工作存儲器的SRAM。如果MCU上使用多個存儲器接口,則可能會在封裝中添加20個或更多引腳,從而增加了成本,功耗和電路板空間要求。一些MCU在外部存儲器控制器中提供了額外的靈活性,可以輕松適應(yīng)各種存儲器設(shè)備。例如,流行的Microchip PIC18F MCU系列提供了靈活的存儲器接口,可以擴展到多種器件類型。圖3顯示了使用單個外部總線連接標準閃存和標準SRAM的一種方法。在這種情況下,使用一些外部組件(兩個373鎖存器和一個138解碼器)來最小化MCU上使用的引腳數(shù)量。 (對于只需要一個373鎖存器的8位接口,也可以實現(xiàn)更簡單的實現(xiàn))。具有這種靈活性的外部存儲器接口允許“保存的”IO用于其他功能,最大化引腳效率,這是基于MCU的設(shè)計中最重要的元素之一。

基于MCU外部存儲器接口的系統(tǒng)設(shè)計

圖3:Microchip PIC18F MCU外部存儲器接口框圖。 (由Microchip Technology提供)

接口時序靈活性

除IO互連靈活性外,外部接口通常還需要一定的時序靈活性。例如,如果內(nèi)存慢于MCU時鐘周期,則可能需要插入等待狀態(tài)。理想情況下,可以為不同的外部存儲器塊分配不同的等待狀態(tài)特性。當外部接口不僅可用于標準存儲器而且可用于存儲器映射器外設(shè)(如液晶顯示器,模數(shù)轉(zhuǎn)換器數(shù)模轉(zhuǎn)換器)時,此功能更為重要。 Atmel ATmega MCU系列可以為外部存儲器空間分配兩個不同的等待狀態(tài)值。如下面的圖4所示,存儲器配置A允許外部存儲器被分成兩個扇區(qū) - 上部扇區(qū)和下部扇區(qū)。扇區(qū)大小可以有八個不同的值之一,以0x2000為增量從0x2000到0xE000調(diào)整上段和下段之間的分界線。

基于MCU外部存儲器接口的系統(tǒng)設(shè)計

圖4:Atmel ATmega64外部存儲空間。 (由Atmel提供)

將外部存儲器空間劃分為兩個扇區(qū)可以輕松地將具有較大等待狀態(tài)值的設(shè)備和具有較小等待狀態(tài)值的設(shè)備組合在一起。也許最重要的是,如果零等待狀態(tài)存儲器用于頻繁訪問的程序數(shù)據(jù),即使較慢的設(shè)備共享相同的存儲器總線,也可以使用零等待狀態(tài)值。這樣可以最大限度地降低MCU引腳要求,同時提高性能并節(jié)省功耗。

結(jié)論

MCU有時需要使用外部存儲器接口擴展可用的片上存儲器。了解這些接口的功能可以縮短設(shè)計時間,降低成本并提高系統(tǒng)性能。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • mcu
    mcu
    +關(guān)注

    關(guān)注

    146

    文章

    16681

    瀏覽量

    347905
  • 嵌入式
    +關(guān)注

    關(guān)注

    5046

    文章

    18832

    瀏覽量

    298779
  • 存儲器
    +關(guān)注

    關(guān)注

    38

    文章

    7366

    瀏覽量

    163113
收藏 人收藏

    評論

    相關(guān)推薦

    基于MCU系統(tǒng)外部存儲器接口配置

    除了 IO 互連靈活性之外,外部接口通常需要一定的時序靈活性。例如,如果內(nèi)存慢于 MCU 時鐘周期,則可能需要插入等待狀態(tài)。
    發(fā)表于 08-03 15:14 ?1128次閱讀
    基于<b class='flag-5'>MCU</b><b class='flag-5'>系統(tǒng)</b>的<b class='flag-5'>外部</b><b class='flag-5'>存儲器</b><b class='flag-5'>接口</b>配置

    Cyclone IV 器件中的外部存儲器接口

    本章節(jié)介紹了 Cyclone? IV 器件的存儲器接口管腳的支持以及外部存儲器接口的特性。除了大量供應(yīng)的片上
    發(fā)表于 11-14 10:12

    詳解多功能雙接口存儲器方案

    48Kbyte。同時除了實現(xiàn)外部的雙端口存儲器,還可以將加密芯片,外部RTC,外部WDT 等功能集成在一起實現(xiàn),使系統(tǒng)結(jié)構(gòu)更優(yōu)化,更簡潔。圖
    發(fā)表于 06-12 05:00

    一種基于TI新一代MSP430FR系列MCU的多功能雙接口存儲器設(shè)計

    ,接口靈活的多功能存儲器,用來替代傳統(tǒng)嵌入式系統(tǒng)中的EEPROM和RTC 等功能。1 前言從2011 年起,TI(德州儀器)公司先后推出了近20 款帶FRAM的MSP430 系列MCU
    發(fā)表于 06-13 05:00

    基于DSP的存儲器接口寬度調(diào)節(jié)設(shè)計

    TMS320C32的外部存儲器接口的特點  TMS320C32是一個32位微處理,它可以通過24位地址總線、32位數(shù)據(jù)總線和選通信號對外部
    發(fā)表于 06-14 05:00

    怎么使用AT32 MCU的SPIM作為外部存儲器的擴展功能

    AT32 SPIM Application Note描述了怎么使用AT32 MCU的SPIM作為外部存儲器的擴展功能。
    發(fā)表于 10-24 08:03

    如何選擇DSP芯片的外部存儲器?

    如何選擇DSP芯片的外部存儲器?DSP的速度較快,為了保證DSP的運行速度,外部存儲器需要具有一定的速度,否則DSP訪問外部
    發(fā)表于 04-07 08:45 ?1857次閱讀

    外部存儲器電路接口電路圖

    外部存儲器   為了滿足物流PDA的應(yīng)用需要,本系統(tǒng)采用Flash、SDRAM、NAND Falsh存儲器。   閃速存儲器(Flash
    發(fā)表于 11-13 14:52 ?3040次閱讀
    <b class='flag-5'>外部</b><b class='flag-5'>存儲器</b>電路<b class='flag-5'>接口</b>電路圖

    擴展MCU功能時,明智地使用外部存儲器接口

    單片機在許多嵌入式系統(tǒng)設(shè)計的關(guān)鍵要素,但往往附加功能都需要實現(xiàn)必要功能。在基于MCU的設(shè)計中,最受限制的因素之一是片上存儲器。越來越多的應(yīng)用需要更多的系統(tǒng)內(nèi)存比
    發(fā)表于 05-21 10:51 ?4次下載
    擴展<b class='flag-5'>MCU</b>功能時,明智地使用<b class='flag-5'>外部</b><b class='flag-5'>存儲器</b><b class='flag-5'>接口</b>

    TMS320VC5510外部存儲器接口于SBSRAM的系統(tǒng)級連接和寄存配置概述

    TMS320C55x(C55)外部存儲器接口(EMIF)支持無粘性接口高密度和高速同步突發(fā)靜態(tài)隨機存取存儲器(SBSRAM)。對于時鐘SBS
    發(fā)表于 05-04 08:51 ?13次下載
    TMS320VC5510<b class='flag-5'>外部</b><b class='flag-5'>存儲器</b><b class='flag-5'>接口</b>于SBSRAM的<b class='flag-5'>系統(tǒng)</b>級連接和寄存<b class='flag-5'>器</b>配置概述

    簡述 Stratix 10 外部存儲器接口作用

    Stratix 10外部存儲器接口指南
    的頭像 發(fā)表于 06-20 04:46 ?2445次閱讀
    簡述 Stratix 10 <b class='flag-5'>外部</b><b class='flag-5'>存儲器</b><b class='flag-5'>接口</b>作用

    Arria 10外部存儲器接口(EMIF)工具包

    Arria 10外部存儲器接口(EMIF)工具包
    的頭像 發(fā)表于 06-11 17:10 ?2212次閱讀
    Arria 10<b class='flag-5'>外部</b><b class='flag-5'>存儲器</b><b class='flag-5'>接口</b>(EMIF)工具包

    帶你回顧MCU上可用的外部存儲器接口配置

     本文將快速回顧現(xiàn)代 MCU 上可用的一些外部存儲器接口。這將幫助設(shè)計人員更有效地實現(xiàn)需要額外外部存儲
    發(fā)表于 08-05 15:12 ?3261次閱讀
    帶你回顧<b class='flag-5'>MCU</b>上可用的<b class='flag-5'>外部</b><b class='flag-5'>存儲器</b><b class='flag-5'>接口</b>配置

    外部存儲器是ROM還是RAM

    外部存儲器通常指的是計算機系統(tǒng)中除了主存(RAM)以外的存儲設(shè)備,如硬盤、固態(tài)硬盤(SSD)、USB閃存驅(qū)動、光盤等。它們主要用于長期
    的頭像 發(fā)表于 08-06 09:13 ?411次閱讀

    外部存儲器有哪些

    外部存儲器是指用于存儲數(shù)據(jù)的獨立設(shè)備,它們通常與計算機或其他電子設(shè)備連接,并提供額外的存儲空間,允許用戶在不改變主設(shè)備內(nèi)部存儲的情況下保存和
    的頭像 發(fā)表于 09-05 10:42 ?408次閱讀