精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

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

3天內不再提示

C語言指針存在SRAM里面嗎

云深之無跡 ? 來源:云深之無跡 ? 2024-06-04 10:28 ? 次閱讀

應該有可以回答的上來的,但是大部分應該是回答不上來。標題的回答也不對。

0e653602-219c-11ef-91d2-92fbcf53809c.png

計算機內存里面分這么幾種數據

存在SRAM里面,嗯?內存?對也不對,大家覺得內存條應該很快了吧?不,不快。

0e854be0-219c-11ef-91d2-92fbcf53809c.png

我的電腦里面有三種cache,可以看到L1最小,L3最快

0eab88fa-219c-11ef-91d2-92fbcf53809c.png

大小

量相差很大

0ef7ba86-219c-11ef-91d2-92fbcf53809c.png

這是我自己電腦的實測,最慢的反而是內存,算完是58.49G/s,L1居然到了2K G這個速度,L3是內存的大概3倍多。看時間L1和內存的時間是100倍。

就先記?。篎LASH用來存儲程序的,SRAM是用來存儲運行程序中的中間變量。

然后SRAM有個別的名字叫緩存,這聽懂了吧?

SRAM是靜態隨機存取存儲器。它是一種具有靜止存取功能的內存,不需要刷新電路即能保存它內部存儲的數據。

RAM掉電數據會丟失,RW-data是非0初始化的數據,已初始化的數據需要被存儲在掉電不會丟失的FLASH中,上電后會從FLASH搬移到RAM中。

SRAM是訪問時間短的片上存儲器,DRAM是訪問時間長的片外存儲器。因此SRAM 比DRAM 快。

DRAM 的存儲容量更大,而SRAM 的尺寸更小。SRAM很貴,而DRAM 很便宜。

0f2bd884-219c-11ef-91d2-92fbcf53809c.png

DRAM簡單,電容充電就是有1了

0f4d2b1a-219c-11ef-91d2-92fbcf53809c.png

讀取的時候還得一個放大器讀取?

0f6dade0-219c-11ef-91d2-92fbcf53809c.png

電容這玩意兒漏電啊,要不停的刷新,不然一會兒就沒電荷了

0f982098-219c-11ef-91d2-92fbcf53809c.png

SRAM,是兩個與門一個RS觸發器,1bit的儲存確實很復雜

10029b4e-219c-11ef-91d2-92fbcf53809c.png

要保證上下輸入不一致,還得加一個二極管取反,這東西就是鎖存器了

10212172-219c-11ef-91d2-92fbcf53809c.png

可以看到應該是有兩塊SDRAM

103cf96a-219c-11ef-91d2-92fbcf53809c.png

105595e2-219c-11ef-91d2-92fbcf53809c.png

大概是這樣的

LPDDR4是新一代面向移動設備的低功耗內存,它屬于SDRAM家族的存儲器產品。

SDRAM是同步動態隨機存取存儲器的縮寫,而SRAM是同步隨機存取存儲器的縮寫。它們的最大區別在于,SDRAM必須被外部時鐘同步刷新,而SRAM則不需要刷新。 雖然SRAM速度更快,讀寫時間也更短,但SRAM的成本較高,所以在存儲器容量較小的情況下,通常使用SRAM,而對于大容量存儲器,則使用SDRAM。 同步(Synchronous )是指內存工作需要同步時鐘,內部的命令的發送與數據的傳輸都以它為基準 動態(Dynamic )是指存儲陣列 需要不斷的刷新來保證數據不丟失 隨機(Random )是指數據不是線性依次存儲,而是自由指定地址進行 數據讀寫SDRAM具有空間存儲量大、讀寫速度快、價格相對便宜等優點。 然而由于SDRAM內部利用電容來存儲數據,為保證數據不丟失,需要持續對各存儲電容進行刷新操作;同時在讀寫過程中 需要考慮行列管理、各種操作延時等,由此導致了其控制邏輯復雜的特點。 SDRAM 內部可以理解為一個存儲陣列,表格中的每一個單元格可以類比為存儲陣列的單個存儲單元。若想要實現存儲陣列中的某一存儲單元的數據讀寫操作,我們要通過行地址(Row Address)和列地址 (Column Address)(先行后列)精確定位到這一存儲單元,進而進行數據的讀寫操作,這就是所謂的隨機地址存取.

1086a178-219c-11ef-91d2-92fbcf53809c.png

就是這樣

10a91d0c-219c-11ef-91d2-92fbcf53809c.png

我找了一個FSMS接口的圖看看

10cdedbc-219c-11ef-91d2-92fbcf53809c.png

這里翻出ESP32的手冊看看

片內SRAM:大?。?12 KB 關系:片內SRAM = IRAM (192KB ) + DRAM( 328KB )IRAM :作用:存儲關鍵代碼。 1.中斷處理程序。注冊中斷處理程序時使用了 ESP_INTR_FLAG_IRAM,則中斷處理程序必須要放入 IRAM。 2.可將一些時序關鍵代碼放入 IRAM,以減少從 flash 中加載代碼造成的相關損失。 3.以上兩點為鏈接器自主操作,官方也提供接口,可以通過程序來聲明函數,可以將 IRAM_ATTR 宏用作屬性,直接將程序存儲在這部分空間。 函數中的字符串或常量可能沒有自動放入 RAM 中,這時可以使用 DRAM_ATTR 屬性進行標記,或者也可以使用鏈接器腳本方法將它們自動放入 RAM 中。

void IRAM_ATTR gpio_isr_handler(void* arg) { const static DRAM_ATTR uint8_t INDEX_DATA[] = { 45, 33, 12, 0 }; const static char *MSG = DRAM_STR("I am a string stored in RAM"); }DRAM:作用兩個: 非常量靜態數據(.data 段)和零初始化數據(.bss 段)由鏈接器放入內部 SRAM 作為數據存儲。 這部分空間的使用是由鏈接器在對項目代碼編譯鏈接時,根據程序內容自動使用??臻g大小隨程序內部使用情況擴張。 官方也提供接口,可以通過程序聲明變量,直接使用這部分空間??梢詫?__NOINIT_ATTR 宏用作屬性,從而將數據放入 .noinit 部分。放入該部分的值在啟動時不會被初始化,在軟件重啟后也會保持值不變。

1129a1c0-219c-11ef-91d2-92fbcf53809c.png

最后我還測試了一下這個GPU

審核編輯:彭菁

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • sram
    +關注

    關注

    6

    文章

    763

    瀏覽量

    114631
  • 計算機
    +關注

    關注

    19

    文章

    7418

    瀏覽量

    87712
  • 內存
    +關注

    關注

    8

    文章

    2998

    瀏覽量

    73881
  • C語言
    +關注

    關注

    180

    文章

    7598

    瀏覽量

    136174

原文標題:C語言指針的值在哪里?在SRAM

文章出處:【微信號:TT1827652464,微信公眾號:云深之無跡】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    C語言入門教程-指針

    指針C語言中,指針被廣泛使用。所以要想完整地掌握C語言,您需要對
    發表于 07-29 11:30 ?656次閱讀

    C語言指針電子教程

    本資料是一份不錯的關于C語言指針的電子教程,希望對大家有所幫助... 指針簡介 指針C
    發表于 07-30 16:00 ?77次下載

    C語言中指針的介紹非常詳細

    C語言中指針的介紹非常詳細 C語言中指針的介紹非常詳細
    發表于 12-25 10:39 ?57次下載

    C語言_指針總結_經典講解

    C語言_指針總結_經典講解。
    發表于 01-06 13:47 ?10次下載

    C語言指針函數和函數指針詳細介紹

    C語言指針函數和函數指針詳細介紹。。。。。。。
    發表于 03-04 15:27 ?5次下載

    C語言指針跨函數訪問

    C語言指針跨函數訪問
    發表于 12-16 17:23 ?1次下載

    c語言函數指針定義,指針函數和函數指針的區別

     往往,我們一提到指針函數和函數指針的時候,就有很多人弄不懂。下面就由小編詳細為大家介紹C語言中函數指針,
    發表于 11-16 15:18 ?3613次閱讀

    C語言的精髓——指針詳解

    C語言的精髓——指針詳解
    發表于 11-30 14:43 ?17次下載

    為什么C語言要引入指針_引入指針的好處是什么

    讓你知道什么是 C語言 指針,為什么用指針,從此不在害怕指針。
    的頭像 發表于 07-28 10:12 ?2.2w次閱讀

    C語言中的指針(重點)超詳細

    C語言中的指針1、指針是什么2、指針指針類型2.1、指針
    發表于 01-13 14:10 ?11次下載
    <b class='flag-5'>C</b><b class='flag-5'>語言</b>中的<b class='flag-5'>指針</b>(重點)超詳細

    C語言進階】C語言指針的高階用法

    C語言進階】C語言指針的高階用法
    的頭像 發表于 08-31 13:24 ?2281次閱讀

    C語言中的懸空指針和野指針是什么意思?

    提起C語言大部分開發者很自然就會想到指針二字,沒錯,作為C的核心和靈魂,它的地位咱們就不再贅述了,今天我們想跟大家講的是指針中的兩個特有名詞
    的頭像 發表于 02-09 17:20 ?1065次閱讀

    詳解C語言指針底層基本原理

    說到指針,估計還是有很多小伙伴都還是云里霧里的,有點“知其然,而不知其所以然”。但是,不得不說,學了指針,C語言才能算是入門了。指針
    的頭像 發表于 04-06 10:43 ?1209次閱讀

    C語言指針用法

    C語言編程中善用指針可以簡化一些任務的處理,而對于一些任務(比如動態內存分配),必須要有指針才行的。也就是說精通C
    發表于 03-05 14:22 ?314次閱讀
    <b class='flag-5'>C</b><b class='flag-5'>語言</b>的<b class='flag-5'>指針</b>用法

    C語言指針學習筆記

    本文從底層內存分析,徹底讓讀者明白C語言指針的本質。
    的頭像 發表于 11-05 17:40 ?159次閱讀
    <b class='flag-5'>C</b><b class='flag-5'>語言</b><b class='flag-5'>指針</b>學習筆記