存儲體與MAR
① 【計算機組成原理】存儲器設計問題
1、要考慮速度問題,即CPU和存儲器之間的速度;
2、容量問題,CPU的訪問地址線要能夠足夠存儲單元用。
3、成本問題,要適合要設計的系統,成本要低;
4、可靠性問題
5、存儲器類型,選用eeprom還是flash rom,還是EPROM等等
第一問:ROM需要6個,先用兩個組成2K*8一組,再用3組組成6K*8的ROM;RAM需要4個晶元組成2K*8.總計8K,所以需要13條地址線。片選信號,CPU的WR RD分別連接RAM晶元的EN ,OE ; EA連接ROM的OE。
晶元數量的計算方法為 數量n =ROM或RAM的總容量/ROM或RAM單個晶元的容量
② CPU中的MAR MDR中英文全稱是什麼
MAR的英文全稱為Memory Address Register,其中文名為地址寄存器。
MDR的英文全稱為Memory Data Register,其中文名為數據寄存器。
MAR(地址寄存器)的作用是:用來存放預訪問的存儲單元的地址,其位數對應存儲單元的個數。
MDR(數據寄存器)的作用是:是存儲器數據寄存器,用來存放從存儲體某單元取出的代碼。
(2)存儲體與MAR擴展閱讀:
計算機指令執行過程:
程序中第一條指令的地址置於PC 中,根據PC 取出第一條指令,經過解碼、執行步驟等,控制計算機各功能部件協同運行,完成這條指令的功能,並計算下一條指令的地址。用新得到的指令地址繼續讀出第二條指令並執行,直到程序結束為止。
下面以取數指令(即將指令地址碼指示的存儲單元中的操作數取出後送至運算器的ACC 中)為例進行說明,其信息流程如下:
1、取指令:PC 一>MAR—>M—>MDR—>IR
根據PC 取指令到IR, 將PC 的內容送MAR, MAR 中的內容直接送地址線,同時控制器將讀信號送讀/寫信號線,主存根據地址線上的地址和讀信號,從指定存儲單元讀出指令,送到數據線上, MDR 從數據線接收指令信息,並傳送到IR 中。
2、分析指令:OP(IR)—>CU 指令解碼並送出控制信號。控制器根據IR 中指令的操作碼,生成相應的控制信號,送到不同的執行部件。在本例中, IR 中是取數指令,因此讀控制信號被送到匯流排的控制線上。
3、執行指令: Ad(IR)—>MAR—>M—>MDR—>ACC 取數操作。將IR 中指令的地址碼送MAR, MAR 中的內容送地址線,同時控制器將讀信號送讀/寫信號線從主存指定存儲單元讀出操作數,並通過數據線送至MDR, 再傳送到ACC 中。
此外,每取完一條指令,還需為取下一條指令做准備,形成下一條指令的地址,即(PC)+1 —> PC 。