l1d數據存儲器
A. 單片機的存儲器可以分為幾種
單片機的存儲器可分為程序存儲器(ROM)和數據存儲器(RAM)。
程序存儲器是專門用來存放程序和常數的。
數據存儲器是程序在運行中存放臨時數據的,掉電後數據即丟失,現在有些型號的單片機提供了EEPROM,可用來存儲掉電後需要保存的關鍵數據,如系統的一些設置參數。
B. 存儲器的分類及其各自的特點
存儲器(Memory)是現代信息技術中用於保存信息的記憶設備。其概念很廣,有很多層次,在數字系統中,只要能保存二進制數據的都可以是存儲器;在集成電路中,一個沒有實物形式的具有存儲功能的電路也叫存儲器,如RAM、FIFO等;在系統中,具有實物形式的存儲設備也叫存儲器,如內存條、TF卡等。計算機中全部信息,包括輸入的原始數據、計算機程序、中間運行結果和最終運行結果都保存在存儲器中。它根據控制器指定的位置存入和取出信息。有了存儲器,計算機才有記憶功能,才能保證正常工作。計算機中的存儲器按用途存儲器可分為主存儲器(內存)和輔助存儲器(外存),也有分為外部存儲器和內部存儲器的分類方法。外存通常是磁性介質或光碟等,能長期保存信息。內存指主板上的存儲部件,用來存放當前正在執行的數據和程序,但僅用於暫時存放程序和數據,關閉電源或斷電,數據會丟失。
存儲器的分類特點及其應用
在嵌入式系統中最常用的存儲器類型分為三類:
1.隨機存取的RAM;
2.只讀的ROM;
3.介於兩者之間的混合存儲器
1.隨機存儲器(Random Access Memory,RAM)
RAM能夠隨時在任一地址讀出或寫入內容。 RAM的優點是讀/寫方便、使用靈活;
RAM的缺點是不能長期保存信息,一旦停電,所存信息就會丟失。 RAM用於二進制信息的臨時存儲或緩沖存儲
2.只讀存儲器(Read-Only Memory,ROM)
ROM中存儲的數據可以被任意讀取,斷電後,ROM中的數據仍保持不變,但不可以寫入數據。
ROM在嵌入式系統中非常有用,常常用來存放系統軟體(如ROM BIOS)、應用程序等不隨時間改變的代碼或數據。
ROM存儲器按發展順序可分為:掩膜ROM、可編程ROM(PROM)和可擦寫可編程ROM(EPROM)。
3. 混合存儲器
混合存儲器既可以隨意讀寫,又可以在斷電後保持設備中的數據不變。混合存儲設備可分為三種:
EEPROM NVRAM FLASH
(1)EEPROM
EEPROM是電可擦寫可編程存儲設備,與EPROM不同的是EEPROM是用電來實現數據的清除,而不是通過紫外線照射實現的。
EEPROM允許用戶以位元組為單位多次用電擦除和改寫內容,而且可以直接在機內進行,不需要專用設備,方便靈活,常用作對數據、參數等經常修改又有掉電保護要求的數據存儲器。
(2) NVRAM
NVRAM通常就是帶有後備電池的SRAM。當電源接通的時候,NVRAM就像任何其他SRAM一樣,但是當電源切斷的時候,NVRAM從電池中獲取足夠的電力以保持其中現存的內容。
NVRAM在嵌入式系統中使用十分普遍,它最大的缺點是價格昂貴,因此,它的應用被限制於存儲僅僅幾百位元組的系統關鍵信息。
(3)Flash
Flash(閃速存儲器,簡稱快閃記憶體)是不需要Vpp電壓信號的EEPROM,一個扇區的位元組可以在瞬間(與單時鍾周期比較是一個非常短的時間)擦除。
Flash比EEPROM優越的方面是,可以同時擦除許多位元組,節省了每次寫數據前擦除的時間,但一旦一個扇區被擦除,必須逐個位元組地寫進去,其寫入時間很長。
存儲器工作原理
這里只介紹動態存儲器(DRAM)的工作原理。
工作原理
動態存儲器每片只有一條輸入數據線,而地址引腳只有8條。為了形成64K地址,必須在系統地址匯流排和晶元地址引線之間專門設計一個地址形成電路。使系統地址匯流排信號能分時地加到8個地址的引腳上,藉助晶元內部的行鎖存器、列鎖存器和解碼電路選定晶元內的存儲單元,鎖存信號也靠著外部地址電路產生。
當要從DRAM晶元中讀出數據時,CPU首先將行地址加在A0-A7上,而後送出RAS鎖存信號,該信號的下降沿將地址鎖存在晶元內部。接著將列地址加到晶元的A0-A7上,再送CAS鎖存信號,也是在信號的下降沿將列地址鎖存在晶元內部。然後保持WE=1,則在CAS有效期間數據輸出並保持。
當需要把數據寫入晶元時,行列地址先後將RAS和CAS鎖存在晶元內部,然後,WE有效,加上要寫入的數據,則將該數據寫入選中的存貯單元。
存儲器晶元
由於電容不可能長期保持電荷不變,必須定時對動態存儲電路的各存儲單元執行重讀操作,以保持電荷穩定,這個過程稱為動態存儲器刷新。PC/XT機中DRAM的刷新是利用DMA實現的。首先應用可編程定時器8253的計數器1,每隔1⒌12μs產生一次DMA請求,該請求加在DMA控制器的0通道上。當DMA控制器0通道的請求得到響應時,DMA控制器送出到刷新地址信號,對動態存儲器執行讀操作,每讀一次刷新一行。
C. CPU L1代碼緩存跟L1數據緩存有什麼區別
一級緩存可以分為一級數據緩存(Data Cache,D-Cache)和一級指令緩存(Instruction Cache,I-Cache)。
二者分別用來存放數據和對執行這些數據的指令進行即時解碼,而且兩者可以同時被CPU訪問,減少了爭用Cache所造成的沖突,提高了處理器效能。
目前大多數CPU的一級數據緩存和一級指令緩存具有相同的容量。
D. 關於DSP的內存空間,請高手解惑:
哈弗結構,分為數據空間和程序空間是指L1是由L1P(程序存儲器)和L1D(數據存儲器)兩個部分組成,由相互獨立匯流排來訪問其中的數據。
從圖上看到片上有256K x l6的Flash存儲器,34K x l6的SARAM存儲器.1K x 16 OTPROM和8K x l6的Boot ROM。
由於我是做c6000平台dsp開發,這幾個內存空間哪些能夠寫數據不太清楚,但至少的Flash存儲器和SARAM存儲器是能夠寫數據。
怎麼把數據寫到指定的內存空間里?可以使用#pragma DATA_SECTION偽指令來完成
E. 我想問問u盤是什麼存儲器
USB盤,簡稱U盤,另作優盤,是U盤的諧音,是外部存儲器,屬於FLASH類型的移動存儲設備,用於備份數據,方便攜帶,因為它也是快閃記憶體的一種,所以也叫閃盤,特點是小巧便與攜帶、存儲容量大、價格便宜。計算機把二進制數字信號轉為復合二進制數字信號(加入分配、核對、堆棧等指令)讀寫到USB晶元適配介面,通過晶元處理信號分配給EPROM2存儲晶元的相應地址存儲二進制數據,實現數據的存儲。EPROM2數據存儲器,其控制原理是電壓控制柵晶體管的電壓高低值,柵晶體管的結電容可長時間保存電壓值,也就是為什麼USB斷電後能保存數據的原因。U盤有USB介面,是USB設備。如果操作系統是Windows2000/XP/2003/Vista或是蘋果系統的話,將U盤直接插到機箱前面板或後面的USB介面上,系統就會自動識別。如果系統是98的話,需要安裝U盤驅動程序才能使用。
更多關於u盤是什麼存儲器,進入:https://www.abcgonglue.com/ask/a7ec1c1615825170.html?zd查看更多內容
F. 處理器的L1,L2,L3緩存大小影響什麼
首先解答什麼是緩存
緩存大小是CPU的重要指標之一,而且緩存的結構和大小對CPU速度的影響非常大,CPU內緩存的運行頻率極高,一般是和處理器同頻運作,工作效率遠遠大於系統內存和硬碟。實際工作時,CPU往往需要重復讀取同樣的數據塊,而緩存容量的增大,可以大幅度提升CPU內部讀取數據的命中率,而不用再到內存或者硬碟上尋找,以此提高系統性能。但是由於CPU晶元面積和成本的因素來考慮,緩存都很小。
L1 Cache(一級緩存)是CPU第一層高速緩存,分為數據緩存和指令緩存。內置的L1高速緩存的容量和結構對CPU的性能影響較大,不過高速緩沖存儲器均由靜態RAM組成,結構較復雜,在CPU管芯面積不能太大的情況下,L1級高速緩存的容量不可能做得太大。一般伺服器CPU的L1緩存的容量通常在32—256KB。
L2 Cache(二級緩存)是CPU的第二層高速緩存,分內部和外部兩種晶元。內部的晶元二級緩存運行速度與主頻相同,而外部的二級緩存則只有主頻的一半。L2高速緩存容量也會影響CPU的性能,原則是越大越好,現在家庭用CPU容量最大的是512KB,而伺服器和工作站上用CPU的L2高速緩存更高達256-1MB,有的高達2MB或者3MB。
L3 Cache(三級緩存),分為兩種,早期的是外置,現在的都是內置的。而它的實際作用即是,L3緩存的應用可以進一步降低內存延遲,同時提升大數據量計算時處理器的性能。降低內存延遲和提升大數據量計算能力對游戲都很有幫助。而在伺服器領域增加L3緩存在性能方面仍然有顯著的提升。比方具有較大L3緩存的配置利用物理內存會更有效,故它比較慢的磁碟I/O子系統可以處理更多的數據請求。具有較大L3緩存的處理器提供更有效的文件系統緩存行為及較短消息和處理器隊列長度。 www.jz5u.com
其實最早的L3緩存被應用在AMD發布的K6-III處理器上,當時的L3緩存受限於製造工藝,並沒有被集成進晶元內部,而是集成在主板上。在只能夠和系統匯流排頻率同步的L3緩存同主內存其實差不了多少。後來使用L3緩存的是英特爾為伺服器市場所推出的Itanium處理器。接著就是P4EE和至強MP。Intel還打算推出一款9MB L3緩存的Itanium2處理器,和以後24MB L3緩存的雙核心Itanium2處理器。
但基本上L3緩存對處理器的性能提高顯得不是很重要,比方配備1MB L3緩存的Xeon MP處理器卻仍然不是Opteron的對手,由此可見前端匯流排的增加,要比緩存增加帶來更有效的性能提升。
另外,關於原理
高速緩沖存儲器Cache是位於CPU與內存之間的臨時存儲器,它的容量比內存小但交換速度快。在Cache中的數據是內存中的一小部分,但這一小部分是短時間內CPU即將訪問的,當CPU調用大量數據時,就可避開內存直接從Cache中調用,從而加快讀取速度。由此可見,在CPU中加入Cache是一種高效的解決方案,這樣整個內存儲器(Cache+內存)就變成了既有Cache的高速度,又有內存的大容量的存儲系統了。Cache對CPU的性能影響很大,主要是因為CPU的數據交換順序和CPU與Cache間的帶寬引起的。
高速緩存的工作原理
1. 讀取順序
CPU要讀取一個數據時,首先從Cache中查找,如果找到就立即讀取並送給CPU處理;如果沒有找到,就用相對慢的速度從內存中讀取並送給CPU處理,同時把這個數據所在的數據塊調入Cache中,可以使得以後對整塊數據的讀取都從Cache中進行,不必再調用內存。
正是這樣的讀取機制使CPU讀取Cache的命中率非常高(大多數CPU可達90%左右),也就是說CPU下一次要讀取的數據90%都在Cache中,只有大約10%需要從內存讀取。這大大節省了CPU直接讀取內存的時間,也使CPU讀取數據時基本無需等待。總的來說,CPU讀取數據的順序是先Cache後內存。
2. 緩存分類
前面是把Cache作為一個整體來考慮的,現在要分類分析了。Intel從Pentium開始將Cache分開,通常分為一級高速緩存L1和二級高速緩存L2。
在以往的觀念中,L1 Cache是集成在CPU中的,被稱為片內Cache。在L1中還分數據Cache(I-Cache)和指令Cache(D-Cache)。它們分別用來存放數據和執行這些數據的指令,而且兩個Cache可以同時被CPU訪問,減少了爭用Cache所造成的沖突,提高了處理器效能。
在P4處理器中使用了一種先進的一級指令Cache——動態跟蹤緩存。它直接和執行單元及動態跟蹤引擎相連,通過動態跟蹤引擎可以很快地找到所執行的指令,並且將指令的順序存儲在追蹤緩存里,這樣就減少了主執行循環的解碼周期,提高了處理器的運算效率。
以前的L2 Cache沒集成在CPU中,而在主板上或與CPU集成在同一塊電路板上,因此也被稱為片外Cache。但從PⅢ開始,由於工藝的提高L2 Cache被集成在CPU內核中,以相同於主頻的速度工作,結束了L2 Cache與CPU大差距分頻的歷史,使L2 Cache與L1 Cache在性能上平等,得到更高的傳輸速度。L2Cache只存儲數據,因此不分數據Cache和指令Cache。在CPU核心不變化的情況下,增加L2 Cache的容量能使性能提升,同一核心的CPU高低端之分往往也是在L2 Cache上做手腳,可見L2 Cache的重要性。現在CPU的L1 Cache與L2 Cache惟一區別在於讀取順序。
3. 讀取命中率
CPU在Cache中找到有用的數據被稱為命中,當Cache中沒有CPU所需的數據時(這時稱為未命中),CPU才訪問內存。從理論上講,在一顆擁有2級Cache的CPU中,讀取L1 Cache的命中率為80%。也就是說CPU從L1 Cache中找到的有用數據占數據總量的80%,剩下的20%從L2 Cache讀取。由於不能准確預測將要執行的數據,讀取L2的命中率也在80%左右(從L2讀到有用的數據占總數據的16%)。那麼還有的數據就不得不從內存調用,但這已經是一個相當小的比例了。在一些高端領域的CPU(像Intel的Itanium)中,我們常聽到L3 Cache,它是為讀取L2 Cache後未命中的數據設計的—種Cache,在擁有L3 Cache的CPU中,只有約5%的數據需要從內存中調用,這進一步提高了CPU的效率。
為了保證CPU訪問時有較高的命中率,Cache中的內容應該按一定的演算法替換。一種較常用的演算法是「最近最少使用演算法」(LRU演算法),它是將最近一段時間內最少被訪問過的行淘汰出局。因此需要為每行設置一個計數器,LRU演算法是把命中行的計數器清零,其他各行計數器加1。當需要替換時淘汰行計數器計數值最大的數據行出局。這是一種高效、科學的演算法,其計數器清零過程可以把一些頻繁調用後再不需要的數據淘汰出Cache,提高Cache的利用率。
緩存技術的發展
總之,在傳輸速度有較大差異的設備間都可以利用Cache作為匹配來調節差距,或者說是這些設備的傳輸通道。在顯示系統、硬碟和光碟機,以及網路通訊中,都需要使用Cache技術。但Cache均由靜態RAM組成,結構復雜,成本不菲,使用現有工藝在有限的面積內不可能做得很大,不過,這也正是技術前進的源動力,有需要才有進步!
借鑒了網上經典答案整理而成,望有幫助
G. 電腦的內存 外存 l1 l2 都是些什麼意思 他們都是怎麼工作的呢
以下供你參考: 內存======》大部分形式的內存都是用來臨時儲存數據的。 CPU通過獨特的層級來訪問內存。無論數據是來自永久的儲存體(硬碟),還是輸入設備(鍵盤),大部分數據都會首先進入隨機存取存儲器(random access memory )/RAM。CPU然後會把需要訪問的數據塊儲存在高速緩存(cache)里,或者在寄存器(register)以一定指令的形式存在。我在後面將會談到cache和register(請參考小熊在線以前登的文章:「神奇的硬體:緩存是怎麼工作的」)。 你電腦裡面的所有組件,例如CPU、硬碟,還有操作系統,都是以團隊的形式協同工作的,而內存是團隊中最重要的元素之一。從你打開電腦的那刻開始,直到關閉電腦,你的CPU都在使用著內存。讓我們以典型的情節 來解釋這個問題: · 你啟動計算機 · 計算機從只讀存儲器/read-only memory(ROM)中裝載數據,接著執行加電自檢/power-on self-test(post)以確保所有主要的組件都可以正常工作。作為檢測的一部分,內存控制器會通過快速的讀/寫(Read/write)操作來檢查內存的地址,以確保內存晶元沒有損壞。Read/write 意味著數據被寫到一個位(bit)裡面,然後再會從bit中讀出來。 · 計算機從ROM裝載「基本輸入/輸出系統:basic input/output system(BIOS)。BIOS可以提供關於儲存設備,啟動次序,安全,Plug and Play(即插即用設備)能力等的基本信息,還有其它的項目。 · 計算機從硬碟把操作系統(OS)裝載到系統的內存。通常來說,只要電腦是開著的,操作系統的臨界部分都會保存在RAM裡面。這樣可以允許內存快速訪問操作系統,這樣可以增強整個操作系統的性能;還有獲得全部的功能。 · 當你打開某個應用程序的時候,它首先會被裝載到RAM。為了降低RAM的使用率,很多應用程序只是裝載程序的初始化要素,然後在根據使用的需要裝載其它的內容。 · 在應用程序裝載完成之後,應用程序打開的文件也會被裝載到RAM之後。 · 當你保存某個文件和關閉應用程序的時候,文件會被寫入到特殊的存儲設備;然後它和應用程序會被從RAM釋放出來。 在上面列舉的例子里,每次有東西被裝載或者打開,它都會被放置到RAM。這意味這它已經被放到了電腦的臨時處處內區域,以便CPU可以簡單地訪問信息。CPU從RAM請求需要的數據,然後在連續的周期把新的數據寫回到RAM。在大部分計算機里,發生在CPU和RAM之間的數據交換,每秒多達數百萬次。當一個應用程序被關閉之後,它和任何相關的文件都會被從RAM中清除(刪除),以便為儲存新的數據獲得更多的空間。如果這些文件沒有在清除之前被保存到永存體,它們將會丟失。 速度的需要 我們一直都對桌面電腦有這樣的疑問吧,「為什麼電腦需要如此多的內存系統呢?」典型的電腦有: · L1和L2 cache(一級和二級高速緩存) · 標准系統RAM · 虛擬內存 · 硬碟 為什麼有這么多存儲設備呢?這個問題的答案可以教給你很多關於內存的知識! 快速、強大的CPU為了最大化釋放它們的性能,需要迅速和方便地訪問大量的數據。如果CPU不能夠獲得它需要的數據,那麼它會停止並等待這些數據。現在運行在大約1GHz 的CPU能夠消耗大量的數據---潛力大約在數十億比特(byte)每秒。電腦設計師們面對的問題是,為了跟上1GHz CPU 速度所耗費的內存價格是非常昂貴的---比任何人提供的大量內存還要昂貴。 電腦設計師們通過使用「層級」(tiering)內存已經解決了該個問題---使用小量昂貴的內存,接著在它的後面使用大量沒有那麼昂貴的內存。 我們今天廣泛使用得最便宜的讀/寫 存儲器是硬碟。硬碟可以提供大量非昂貴,永久的存儲體。你可以用低廉的價格購買硬碟,並且即使從硬碟讀數MB的數據也僅需要花費極少的時間。因為硬碟的存儲空間是那麼的便宜和輕易獲得,它形成了CPU內存的最終層級,稱為虛擬內存。 接下來的水平層級是RAM。我們將會在「神奇的硬體:RAM(隨機存取存儲器)是怎麼工作的」一文里進行詳盡的介紹,但在這里要指出關於RAM的幾個重要的要點。 CPU 的位大小(bit size)指的是它在同時可以訪問RAM的多少比特數(byte)。 兆赫(MHz)是用於衡量CPU的處理速度,或者稱為時鍾周期(clock cycle),計算單位接下···
H. plc的d數據存儲器是什麼,mov代碼這個實在是搞不懂,求解釋一下,最好有梯形圖說明。
d是存放數據的,數據就是我們數學學的12345678910把這些數字存放在D中,使用的時候再拿出來用!mov傳送指令,把這個D裡面的數據傳到另一個D裡面去,每一個D都有自己的編號,如d1.d2.d3等等
I. 內存是介於外設和磁碟之間嗎
內存是介於外設和磁碟之間嗎?什麼是內存呢?在計算機的組成結構中,有一個很重要的部分,就是存儲器。存儲器是用來存儲程序和數據的部件,對於計算機來說,有了存儲器,才有記憶功能,才能保證正常工作。存儲器的種類很多,按其用途可分為主存儲器和輔助存儲器,主存儲器又稱內存儲器(簡稱內存),輔助存儲器又稱外存儲器(簡稱外存)。外存通常是磁性介質或光碟,像硬碟,軟盤,磁帶,CD等,能長期保存信息,並且不依賴於電來保存信息,但是由機械部件帶動,速度與CPU相比就顯得慢的多。內存指的就是主板上的存儲部件,是CPU直接與之溝通,並用其存儲數據的部件,存放當前正在使用的(即執行中)的數據和程序,它的物理實質就是一組或多組具備數據輸入輸出和數據存儲功能的集成電路,內存只用於暫時存放程序和數據,一旦關閉電源或發生斷電,其中的程序和數據就會丟失。
既然內存是用來存放當前正在使用的(即執行中)的數據和程序,那麼它是怎麼工作的呢?我們平常所提到的計算機的內存指的是動態內存(即DRAM),動態內存中所謂的「動態」,指的是當我們將數據寫入DRAM後,經過一段時間,數據會丟失,因此需要一個額外設電路進行內存刷新操作。具體的工作過程是這樣的:一個DRAM的存儲單元存儲的是0還是1取決於電容是否有電荷,有電荷代表1,無電荷代表0。但時間一長,代表1的電容會放電,代表0的電容會吸收電荷,這就是數據丟失的原因;刷新操作定期對電容進行檢查,若電量大於滿電量的1/2,則認為其代表1,並把電容充滿電;若電量小於1/2,則認為其代表0,並把電容放電,藉此來保持數據的連續性。
從一有計算機開始,就有內存。內存發展到今天也經歷了很多次的技術改進,從最早的DRAM一直到FPMDRAM、EDODRAM、SDRAM等,內存的速度一直在提高且容量也在不斷的增加。今天,伺服器主要使用的是什麼樣的內存呢?目前,IA架構的伺服器普遍使用的是REG
J. 什麼是L1緩存啊什麼是L2緩存啊
二級緩存是CPU性能的體現,像以前的P4的CPU,二級緩存都為1M,現在雙核心的為2M,之所有INTEL的CPU比AMD的CPU在制圖,處理數據方面快得多的原因也正在此,AMD的二級緩存基本上只有INTEL的一半。二級緩存是在和內存之間讀取數據的時候體現的,如果二級緩存不夠,那大量的數據就會堆積在內存里進行運算,所以速度就會大大降低,相反,如果二級緩存夠大,進入內存運算的數據就會相對的減少,所以二級緩存很重要,也是CPU的性能優越的指標。