91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

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

為什么單片機(jī)內(nèi)部的RAM這么少?

電子設(shè)計(jì) ? 來(lái)源:電子設(shè)計(jì) ? 作者:電子設(shè)計(jì) ? 2020-10-30 11:38 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

也許大家都注意到了,在過(guò)去的 20 多年的時(shí)間里,微控制器MCU)經(jīng)歷了跨越式的發(fā)展,這反映在很多方面,比如更高的系統(tǒng)時(shí)鐘、更多的外設(shè)模塊、更加便利的調(diào)試手段、32 位的內(nèi)核等等。但 MCU 內(nèi)部的數(shù)據(jù)內(nèi)存空間則始終在十幾 K(16~32KB)的左右徘徊,雖然有些基于 Cortex M4 核單片機(jī)有多達(dá) 265kB RAM 的型號(hào),但是在眾多單片機(jī)型號(hào)陣列中,它們是寥寥無(wú)幾。

那么,究竟什么原因使得單片機(jī)很容易擁有多達(dá)數(shù) MB 的程序 Flash 空間,而數(shù)據(jù)內(nèi)存只有那么小呢?

△ 小型封裝的 MCU

在所有影響單片機(jī)內(nèi) RAM 增加的原因中,一個(gè)基礎(chǔ)的問(wèn)題就是 RAM 會(huì)占用很多硅片面積,這也會(huì)直接引起芯片價(jià)格的增加。這是因?yàn)樵谕瑯拥墓杵?,占用硅片面積大會(huì)使得 MCU 數(shù)量就會(huì)減少,特別是在晶圓片的邊界部分造成更大的浪費(fèi)。禍不單行,面積大的 IC 也更會(huì)產(chǎn)生缺陷,使得成品率下降。

第二個(gè)原因就是制作 RAM 的工序復(fù)雜。可以通過(guò)不同手段優(yōu)化 RAM 生產(chǎn)工藝,但在制作 MCU 過(guò)程中, 同一芯片不可能經(jīng)歷過(guò)多的工序。有一些芯片加工服務(wù)廠(chǎng)商專(zhuān)門(mén)生產(chǎn) DRAM,這是利用特殊的半導(dǎo)體電容技術(shù)來(lái)極大減少 RAM 所占用的硅片面積。但 DRAM 需要通過(guò)不停刷新來(lái)維持其內(nèi)部數(shù)據(jù)。為了延遲 DRAM 單元保持?jǐn)?shù)據(jù)的能力,就要求晶體管漏電流小,這也會(huì)造成晶體管的運(yùn)行速度降低。這需要在速度和數(shù)量之間做折中,但這種折中工藝不利于制作高速邏輯電路。

△ IC 和晶片

此外,大容量 RAM 電路在后期的測(cè)試階段也會(huì)消耗大量的時(shí)間,從而增加生產(chǎn)的時(shí)間成本。所以,經(jīng)濟(jì)原因造成生產(chǎn) RAM 的專(zhuān)門(mén)廠(chǎng)商興起。

功耗是另外一個(gè)限制因素。單片機(jī)系統(tǒng)通常對(duì)功耗有限制,很多情況下,單片機(jī)通過(guò)進(jìn)入睡眠狀態(tài)來(lái)減少耗電量。普通的 SRAM 耗電量很小,通過(guò)備用電池往往可以工作很多年。但 DRAM 則需要通過(guò)不斷刷新來(lái)維持存儲(chǔ)的數(shù)據(jù)。一旦停止刷新,由于漏電流的存在,DRAM 的內(nèi)容在不到一秒鐘的時(shí)間內(nèi)就會(huì)消失。所以,單片機(jī)中不能夠使用 DRAM 而只能使用占用硅片面積更大的 SRAM。

在現(xiàn)代 CPU 技術(shù)中,往往在新品中保留數(shù)量較少的 SRAM 作為緩存(Cache),而將大容量的 DRAM 作為 CPU 外部的數(shù)據(jù)存儲(chǔ)空間。

有一些非??岬氖侄慰梢詫⒉煌a(chǎn)工藝的 RAM 和 MCU 制作工藝融合在一起,例如多芯片封裝技術(shù)(Multi-Chip Package),將 RAM 新品放在 MCU 芯片上面堆疊一起進(jìn)行封裝,這比在電路板上將 RAM 與 MCU 集成更加節(jié)省系統(tǒng)體積,也提高數(shù)據(jù)傳輸速率。

AMD 的帶有堆疊封裝的 MCU

最后一個(gè)原因,那就是在絕大多數(shù)單片機(jī)應(yīng)用的場(chǎng)合所需要的 RAM 的容量都比較少。比如在嵌入式控制領(lǐng)域,很多很多傳感器信息都可以用極少字節(jié)的數(shù)據(jù)來(lái)表示,用于控制的參數(shù)和控制邏輯占用數(shù)據(jù)空間也很少。

所以當(dāng)需要大量 RAM 的應(yīng)用出現(xiàn)的時(shí)候,往往就會(huì)直接采用集成有大容量 DRAM 的電路板來(lái)工作。通過(guò)外部集成大容量 RAM 芯片要遠(yuǎn)比 MCU 內(nèi)部集成的 RAM 更加經(jīng)濟(jì)。

除了前面的原因之外,單片機(jī)指令集也會(huì)限制 RAM 訪(fǎng)問(wèn)空間。比如 Microchip 公司的單片機(jī),PIC10LF320,是 12bit 的指令,它只能夠范圍 128 字節(jié)的 RAM 空間。對(duì)于 8031 單片機(jī),直接尋址的 RAM 空間也只有 128 字節(jié)。如果訪(fǎng)問(wèn)更大的外部存儲(chǔ)空間,則需要借助于執(zhí)行效率更低的間接指令。

單片機(jī)總線(xiàn)結(jié)構(gòu)分為 Harvard 結(jié)構(gòu)和 Von Neumann 結(jié)構(gòu),后者中,程序和數(shù)據(jù)存儲(chǔ)空間是在同一個(gè)訪(fǎng)問(wèn)空間中。如果單片機(jī)中集成了大量的 Flash 區(qū),那么留給數(shù)據(jù) RAM 空間訪(fǎng)問(wèn)地址就少了。

此外,高效的 C 語(yǔ)言編譯器,可以有效重復(fù)應(yīng)用有限的 RAM 空間完成所需要的任務(wù)。在復(fù)雜的應(yīng)用中,往往會(huì)采用多個(gè)單片機(jī)協(xié)同完成,這大大提高系統(tǒng)實(shí)時(shí)特性。巧妙的設(shè)計(jì)方案會(huì)避免嵌入式系統(tǒng)對(duì)大容量 RAM 的需求。所以,有人認(rèn)為,正是由于沒(méi)有大量需要高 RAM 容量的應(yīng)用要求,是造成現(xiàn)在單片機(jī)內(nèi)部 RAM 少的真正原因。

別忘了,早期那些令我們著迷的電子游戲,雖然有著炫酷的圖形界面,但它們連程序帶數(shù)據(jù)總共也只有 8k 字節(jié)的存儲(chǔ)空間,比如吃豆子游戲,太空入侵游戲等。讓我們向早期的這些極簡(jiǎn)風(fēng)格嵌入式編程人員致敬吧。

參考資料

[1]Why do microcontrollers have so little RAM?

審核編輯 黃昊宇

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

    關(guān)注

    6076

    文章

    45506

    瀏覽量

    670955
  • RAM
    RAM
    +關(guān)注

    關(guān)注

    8

    文章

    1399

    瀏覽量

    120656
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    單片機(jī)mcu模塊,mcu單片機(jī)是什么意思,32位mcu單片機(jī)解析

    在嵌入式系統(tǒng)領(lǐng)域,MCU(Microcontroller,常簡(jiǎn)稱(chēng)單片機(jī))扮演著至關(guān)重要的角色。它并非普通意義上的計(jì)算機(jī),而是一種高度集成的微型芯片,內(nèi)部包含了CPU、存儲(chǔ)器(ROM/RAM)、多種
    的頭像 發(fā)表于 01-19 15:30 ?590次閱讀
    <b class='flag-5'>單片機(jī)</b>mcu模塊,mcu<b class='flag-5'>單片機(jī)</b>是什么意思,32位mcu<b class='flag-5'>單片機(jī)</b>解析

    單片機(jī)里的程序運(yùn)行方式

    :它是單片機(jī)內(nèi)部的核心部件,決定了單片機(jī)的主要功能特性,由運(yùn)算器和控制器兩大部分組成。 存儲(chǔ)器:8051單片機(jī)在系統(tǒng)結(jié)構(gòu)上采用了哈佛型,將程序和數(shù)據(jù)分別存放在兩個(gè)存儲(chǔ)器內(nèi),一個(gè)稱(chēng)為程序存儲(chǔ)器,另一個(gè)為
    發(fā)表于 01-16 06:57

    單片機(jī)解密是什么?

    芯片的其中一個(gè)類(lèi)。 單片機(jī)(MCU)一般都有內(nèi)部程序區(qū)和數(shù)據(jù)區(qū)(或者其一)供用戶(hù)存放程序和工作數(shù)據(jù)(或者其一)。為了防止未經(jīng)授訪(fǎng)問(wèn)或拷貝單片機(jī)機(jī)內(nèi)程序,大部分
    發(fā)表于 12-30 08:19

    為什么單片機(jī)芯片上需要多組VDD?

    單片機(jī)的芯片上,經(jīng)常會(huì)看到多個(gè)組VDD的設(shè)計(jì)。這樣的設(shè)計(jì)是為了保證 電源 穩(wěn)定性,同時(shí)減小信號(hào)的噪聲。本文將從單片機(jī)內(nèi)部的電路結(jié)構(gòu)、功耗、EMI/EMC等方面來(lái)探討為什么單片機(jī)芯片上需要多組VDD
    發(fā)表于 12-12 07:59

    單片機(jī)系統(tǒng)進(jìn)行擴(kuò)展時(shí)需要遵循的原則有哪些

    一個(gè)單片機(jī)應(yīng)用系統(tǒng)的硬件電路設(shè)計(jì)包含兩部門(mén)內(nèi)容:一是系統(tǒng)擴(kuò)展,即單片機(jī)內(nèi)部的功能單元,如ROM、RAM、I/O、定時(shí)器/計(jì)數(shù)器、間斷系統(tǒng)等不能知足應(yīng)用系統(tǒng)的要求時(shí),必需在片外進(jìn)行擴(kuò)展,選擇適當(dāng)?shù)男酒?/div>
    發(fā)表于 12-09 07:56

    單片機(jī)程序的執(zhí)行

    。 但是單片機(jī)上只有幾K的RAM,而flash一般有幾十K甚至1M,這個(gè)時(shí)候指令和數(shù)據(jù)都在內(nèi)存中嗎(這里指的內(nèi)存僅指RAM,因?yàn)镻C上我們常說(shuō)的內(nèi)存就是DDR RAM memory,
    發(fā)表于 12-04 06:20

    從代碼執(zhí)行看單片機(jī)內(nèi)存的分配

    是要求把取得的數(shù)送到A累加器,所以取出的數(shù)字經(jīng)內(nèi)部數(shù)據(jù)總線(xiàn)進(jìn)入A累加器,而不是進(jìn)入指令寄存器。至此,一條指令的執(zhí)行完畢! 單片機(jī)中PC=0002H,PC在CPU每次向存儲(chǔ)器取指或取數(shù)時(shí)自動(dòng)加1
    發(fā)表于 12-02 07:58

    單片機(jī)如何選擇復(fù)位方式?

    在數(shù)字電路領(lǐng)域,單片機(jī)的復(fù)位是確保其正常啟動(dòng)與運(yùn)行的重要環(huán)節(jié),復(fù)位功能主要是將單片機(jī)內(nèi)部狀態(tài)重置為初始狀態(tài),避免程序運(yùn)行過(guò)程中的混亂、跑飛或死機(jī)等問(wèn)題,使系統(tǒng)隨時(shí)準(zhǔn)備接受并執(zhí)行各種指令,復(fù)位方式將
    發(fā)表于 11-26 08:09

    請(qǐng)問(wèn)單片機(jī)RAM空間不夠用了怎么辦?

    單片機(jī)RAM空間不夠用了怎么辦?
    發(fā)表于 11-25 08:09

    第2章 點(diǎn)亮你的LED

    。 1.1?單片機(jī)內(nèi)部資源 在這里所講到的單片機(jī)內(nèi)部資源,和傳統(tǒng)單片機(jī)書(shū)籍中講單片機(jī)內(nèi)部結(jié)構(gòu)不同,這里講到的
    的頭像 發(fā)表于 10-13 15:52 ?531次閱讀
    第2章  點(diǎn)亮你的LED

    單片機(jī)燒錄原理是怎樣的?輝芒微單片機(jī)燒錄程序詳細(xì)步驟講解

    燒錄(Programming)就是把 .hex/.bin 文件里的機(jī)器碼搬運(yùn)進(jìn)單片機(jī)片內(nèi) Flash 的過(guò)程。輝芒微(FMD)單片機(jī)內(nèi)部有一塊 自舉 BootROM,上電時(shí)會(huì)先跑這段程序;如果檢測(cè)
    的頭像 發(fā)表于 09-17 16:14 ?2425次閱讀
    <b class='flag-5'>單片機(jī)</b>燒錄原理是怎樣的?輝芒微<b class='flag-5'>單片機(jī)</b>燒錄程序詳細(xì)步驟講解

    單片機(jī)采用什么電流控制

    單片機(jī)作為電子系統(tǒng)的控制核心,其電流控制涉及自身工作電流管理與外部設(shè)備電流驅(qū)動(dòng)兩個(gè)層面。由于單片機(jī)內(nèi)部電路的特性,其自身工作電流較小,而控制外部設(shè)備時(shí)需通過(guò)特定電路實(shí)現(xiàn)電流放大與調(diào)節(jié),以適配不同負(fù)載
    的頭像 發(fā)表于 07-30 10:07 ?757次閱讀

    單片機(jī)怎么燒程序

    單片機(jī)燒程序是將編寫(xiě)好的程序代碼寫(xiě)入單片機(jī)內(nèi)部存儲(chǔ)單元,讓單片機(jī)按照預(yù)設(shè)邏輯工作的過(guò)程,是單片機(jī)應(yīng)用開(kāi)發(fā)中不可或缺的環(huán)節(jié)。無(wú)論是簡(jiǎn)單的燈光控制程序,還是復(fù)雜的工業(yè)控制算法,都需要通過(guò)燒
    的頭像 發(fā)表于 07-23 11:47 ?1400次閱讀

    如何判斷感應(yīng)電機(jī)內(nèi)部結(jié)構(gòu)的故障?

    感應(yīng)電機(jī)作為現(xiàn)代工業(yè)中應(yīng)用最廣泛的動(dòng)力設(shè)備之一,其內(nèi)部結(jié)構(gòu)復(fù)雜,故障類(lèi)型多樣。準(zhǔn)確判斷感應(yīng)電機(jī)內(nèi)部結(jié)構(gòu)的故障,不僅關(guān)系到設(shè)備的正常運(yùn)行,還直接影響生產(chǎn)效率和安全性。本文將詳細(xì)介紹感應(yīng)電機(jī)內(nèi)部結(jié)構(gòu)故障
    的頭像 發(fā)表于 07-06 07:11 ?1120次閱讀

    單片機(jī)學(xué)習(xí)之GPIO

    分別配置成輸入或輸出模式2.外設(shè):指的是除CPU以外的外圍功能模塊,只不過(guò)這部分電路依舊被封裝在單片機(jī)內(nèi)部,比如IO,ADC,DAC,TIM等3.復(fù)位:把MCU恢復(fù)到最開(kāi)始的狀態(tài),比如說(shuō)我們把電腦重啟了
    發(fā)表于 03-26 14:53 ?0次下載