計算機組成原理-存儲器


1. 存儲器的定義與作用

存儲器是計算機系統中用于存儲程序、數據和中間結果的硬件設備,是計算機五大核心部件之一。

  • 核心功能
    • 提供數據的 臨時或永久存儲 能力。
    • 支持CPU按需快速存取指令和數據,是程序運行的物理基礎。

2. 存儲器的分類

(1) 按存取方式分類
  • 隨機存取存儲器(RAM)
    • 可讀可寫,斷電后數據丟失(易失性)。
    • 包括 DRAM(動態RAM,如DDR內存)SRAM(靜態RAM,如CPU緩存)
  • 只讀存儲器(ROM)
    • 通常只讀,斷電后數據保留(非易失性)。
    • 包括 Mask ROM、PROM、EPROM、EEPROM 及現代 Flash存儲器(如SSD)
(2) 按用途分類
  • 主存儲器(內存)
    • 直接與CPU交互,存儲當前運行的程序和數據(如DRAM)。
  • 輔助存儲器(外存)
    • 長期保存數據,速度較慢(如硬盤、SSD、光盤)。
  • 高速緩存(Cache)
    • 位于CPU內部或附近,加速CPU對高頻數據的訪問(如L1/L2/L3緩存)。
(3) 按存儲介質分類
  • 半導體存儲器:RAM、ROM、Flash。
  • 磁存儲器:硬盤、磁帶。
  • 光存儲器:CD、DVD、藍光。

3. 存儲器的層次結構

計算機系統采用 多級存儲體系,平衡速度、容量與成本:

  1. 寄存器:位于CPU內部,速度最快,容量最小(納秒級訪問)。
  2. 高速緩存(Cache):SRAM實現,容量KBMB級,訪問時間110ns。
  3. 主存(內存):DRAM實現,容量GB級,訪問時間10~100ns。
  4. 輔存(外存):硬盤/SSD,容量TB級,訪問時間ms級。

設計目標:通過層次化設計,使系統整體接近最高層速度,同時擁有最底層容量。


4. 主存儲器的組成與工作原理

(1) 主存的基本結構
  • 存儲體:由存儲單元(如1字節)組成的矩陣,每個單元有唯一地址。
  • 地址寄存器(MAR):存放CPU訪問的存儲單元地址。
  • 數據寄存器(MDR):暫存從存儲單元讀取或寫入的數據。
  • 讀寫控制電路:根據CPU命令控制數據的輸入/輸出。
(2) 讀寫過程
  • 讀操作
    1. CPU將地址送入MAR。
    2. 控制電路選中對應存儲單元,數據傳入MDR。
    3. CPU從MDR讀取數據。
  • 寫操作
    1. CPU將地址送入MAR,數據送入MDR。
    2. 控制電路將MDR數據寫入對應存儲單元。

5. 存儲器的性能指標

  • 容量:可存儲的二進制位數(如8GB內存)。
  • 存取時間(Access Time):從發出讀寫命令到完成操作的時間。
  • 存取周期(Cycle Time):連續兩次獨立存取操作的最小間隔時間(存取時間+恢復時間)。
  • 帶寬(Bandwidth):單位時間傳輸的數據量(如DDR4-3200帶寬25.6GB/s)。
  • 功耗:動態功耗(讀寫時)與靜態功耗(待機時)。

6. 高速緩存(Cache)的工作原理

(1) 緩存的作用

利用 局部性原理(時間局部性+空間局部性),將CPU近期可能訪問的數據從主存復制到緩存,減少訪問主存次數。

(2) 緩存映射方式
  • 直接映射:主存塊固定映射到緩存的某一位置,沖突率高但實現簡單。
  • 全相聯映射:主存塊可映射到緩存任意位置,沖突率低但查找復雜。
  • 組相聯映射:緩存分組,主存塊映射到特定組內的任意行(如4路組相聯)。
(3) 替換算法
  • 先進先出(FIFO):替換最早進入的塊。
  • 最近最少使用(LRU):替換最久未被訪問的塊。
  • 隨機替換(Random):隨機選擇替換目標。

7. 輔助存儲器的典型技術

  • 機械硬盤(HDD)
    • 通過磁頭在旋轉磁盤上讀寫數據。
    • 容量大、成本低,但速度慢(尋道時間+旋轉延遲)。
  • 固態硬盤(SSD)
    • 基于NAND Flash芯片,無機械部件,速度快、抗震動。
    • 壽命受限于擦寫次數(P/E Cycle),需磨損均衡算法。
  • 光盤
    • 利用激光讀寫(如CD-ROM、DVD-RW),適合長期存檔。

8. 新型存儲器技術

  • 3D NAND Flash:通過堆疊存儲單元提升容量(如176層堆疊技術)。
  • 相變存儲器(PCM):利用材料相變特性實現高速非易失存儲。
  • 磁性存儲器(MRAM):結合磁阻效應,兼具高速與非易失性。
  • 存算一體(In-Memory Computing):在存儲器內部直接完成計算,減少數據搬運。

9. 存儲器的應用場景

  • 內存數據庫(如Redis):依賴大容量DRAM加速數據查詢。
  • AI訓練:GPU顯存(如HBM2)提供高帶寬支持大規模矩陣運算。
  • 嵌入式系統:NOR Flash存儲啟動代碼,SRAM作運行內存。
  • 數據中心:NVMe SSD加速云存儲,磁帶庫用于冷數據備份。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/76769.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/76769.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/76769.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

單片機領域中哈希表

以下是單片機領域中哈希表的實際應用及編程實例: 1.哈希表在單片機中的實際應用場景 ? 命令解析:在單片機通信中,經常需要解析接收到的命令。使用哈希表可以快速地將命令字符串映射到對應的處理函數,提高命令解析的效率。 ? 數…

算法思想之位運算(一)

歡迎拜訪:霧里看山-CSDN博客 本篇主題:算法思想之位運算(一) 發布時間:2025.4.12 隸屬專欄:算法 目錄 滑動窗口算法介紹六大基礎位運算符常用模板總結 例題位1的個數題目鏈接題目描述算法思路代碼實現 比特位計數題目鏈接題目描述…

封裝Tcp Socket

封裝Tcp Socket 0. 前言1. Socket.hpp2. 簡單的使用介紹 0. 前言 本文中用到的Log.hpp在筆者的歷史文章中都有涉及,這里就不再粘貼源碼了,學習地址如下:https://blog.csdn.net/weixin_73870552/article/details/145434855?spm1001.2014.3001…

全星APQP軟件:為用戶提供高效、合規、便捷的研發管理體驗

全星APQP軟件:為用戶提供高效、合規、便捷的研發管理體驗 為什么選擇全星APQP軟件系統? 在汽車及高端制造行業,研發項目管理涉及APQP(先期產品質量策劃)、FMEA(失效模式與影響分析)、CP&#x…

CTF--網站被黑

一、原題: (1)提示:網站被黑了 黑客會不會留下后門 (2)原網頁: 二、步驟: 1.在終端掃描網址: 2.掃描后發現:shell.php 3.輸入網址:http://117.…

入門到精通,C語言十大經典程序

以下是十個經典的C語言程序示例&#xff0c;這些程序涵蓋了從基礎到稍復雜的應用場景&#xff0c;適合初學者和有一定基礎的開發者學習和參考。 1. Hello, World! 這是每個初學者學習編程時的第一個程序&#xff0c;用于驗證開發環境是否正確配置。 #include <stdio.h>…

神經網絡入門—自定義神經網絡續集

修改網絡 神經網絡入門—自定義網絡-CSDN博客 修改數據集&#xff0c;yx^2 # 生成一些示例數據 x_train torch.tensor([[1.0], [2.0], [3.0], [4.0]], dtypetorch.float32) y_train torch.tensor([[1.0], [4.0], [9.0], [16.0]], dtypetorch.float32) 將預測代碼改為&…

【browser-use+deepseek】實現簡單的web-ui自動化

browser-use Web-UI 一、browser-use是什么 Browser Use 是一款開源Python庫&#xff0c;專為大語言模型設計的智能瀏覽器工具&#xff0c;目的是讓 AI 能夠像人類一樣自然地瀏覽和操作網頁。它支持多標簽頁管理、視覺識別、內容提取&#xff0c;并能記錄和重復執行特定動作。…

Vue--常用組件解析

綁定事件v-on和按鍵修飾符 v-on:click 表示在button元素上監聽click事件 簡寫&#xff1a;click enter space tab 按鍵修飾符 keyup是用戶松開按鍵才觸發 keydown是在用戶按下按鍵時立即觸發 代碼展示&#xff1a; <!DOCTYPE html><html lang"en" xml…

《JVM考古現場(十八):造化玉碟·用字節碼重寫因果律的九種方法》

"鴻蒙初判&#xff01;當前因果鏈突破十一維屏障——全體碼農修士注意&#xff0c;《JVM考古現場&#xff08;十八&#xff09;》即將渡劫飛升&#xff01;" 目錄 上卷陰陽交纏 第一章&#xff1a;混沌初開——JVM因果律的量子糾纏 第二章&#xff1a;誅仙劍陣改—…

前端vue 項目px轉為rem的自適應解決方案

postcss-pxtorem&#xff08;或是postcss-px2rem&#xff09; npm install postcss-pxtorem amfe-flexible --save-dev 在入口文件 main.js 中引入 amfe-flexible&#xff08;響應式適配&#xff09;&#xff1a; main.js import amfe-flexible // 自動設置 html 的 font-s…

基于時間序列分解與XGBoost的交通通行時間預測方法解析

一、問題背景與數據概覽 在城市交通管理系統中,準確預測道路通行時間對于智能交通調度和路徑規劃具有重要意義。本文基于真實道路傳感器數據,構建了一個結合時間序列分解與機器學習模型的預測框架。數據源包含三個核心部分: 道路通行數據(new_gy_contest_traveltime_train…

Day14:關于MySQL的索引——創、查、刪

前言&#xff1a;先創建一個練習的數據庫和數據 1.創建數據庫并創建數據表的基本結構 -- 創建練習數據庫 CREATE DATABASE index_practice; USE index_practice;-- 創建基礎表&#xff08;包含CREATE TABLE時創建索引&#xff09; CREATE TABLE products (id INT PRIMARY KEY…

【C++】繼承:萬字總結

&#x1f4dd;前言&#xff1a; 這篇文章我們來講講面向對象三大特性之一——繼承 &#x1f3ac;個人簡介&#xff1a;努力學習ing &#x1f4cb;個人專欄&#xff1a;C學習筆記 &#x1f380;CSDN主頁 愚潤求學 &#x1f304;其他專欄&#xff1a;C語言入門基礎&#xff0c;py…

Java 架構設計:從單體架構到微服務的轉型之路

Java 架構設計&#xff1a;從單體架構到微服務的轉型之路 在現代軟件開發中&#xff0c;架構設計的選擇對系統的可擴展性、可維護性和性能有著深遠的影響。隨著業務需求的日益復雜和用戶規模的不斷增長&#xff0c;傳統的單體架構逐漸暴露出其局限性&#xff0c;而微服務架構作…

Django3 - 開啟Django Hello World

一、開啟Django Hello World 要學習Django首先需要了解Django的操作指令&#xff0c;了解了每個指令的作用&#xff0c;才能在MyDjango項目里編寫Hello World網頁&#xff0c;然后通過該網頁我們可以簡單了解Django的開發過程。 1.1 Django的操作指令 無論是創建項目還是創建項…

2025阿里云AI 應用-AI Agent 開發新范式-MCP最佳實踐-78頁.pptx

2025阿里云AI 應用-AI Agent 開發新范式-MCP最佳實踐&#xff0c;包含以下內容&#xff1a; 1、AI 應用架構新范式 2、云原生API網關介紹 3、云原生API網關底座核心優勢 4、流量網關最佳實踐 5、AI 網關代理 LLM 最佳實踐 6、MCP網關最佳實踐 7、MSE Nacos MCP Server 注冊中心…

Pytorch深度學習框架60天進階學習計劃 - 第41天:生成對抗網絡進階(一)

Pytorch深度學習框架60天進階學習計劃 - 第41天&#xff1a;生成對抗網絡進階&#xff08;一&#xff09; 今天我們將深入探討生成對抗網絡(GAN)的進階內容&#xff0c;特別是Wasserstein GAN&#xff08;WGAN&#xff09;的梯度懲罰機制&#xff0c;以及條件生成與無監督生成…

大模型到底是怎么產生的?一文了解大模型誕生全過程

前言 大模型到底是怎么產生的呢? 本文將從最基礎的概念開始,逐步深入,用通俗易懂的語言為大家揭開大模型的神秘面紗。 大家好,我是大 F,深耕AI算法十余年,互聯網大廠核心技術崗。 知行合一,不寫水文,喜歡可關注,分享AI算法干貨、技術心得。 【專欄介紹】: 歡迎關注《…

五子棋(測試報告)

文章目錄 一、項目介紹二、測試用例三、自動化測試用例的部分展示注冊登錄游戲大廳游戲匹配 總結 一、項目介紹 本項目是一款基于Spring、SpringMVC、MyBatis、WebSocket的雙人實時對戰五子棋游戲,游戲操作便捷&#xff0c;功能清晰明了。 二、測試用例 三、自動化測試用例的…