1. 程式人生 > >計算機組成原理補充——字,位擴充套件

計算機組成原理補充——字,位擴充套件

由於單片儲存晶片的容量總是有限的,很難滿足實際的需要,因此必須將儲存晶片連在一起才能組成足夠的容量。這個過程簡稱主存擴容。常見的擴容方式有:字擴充套件,位擴充套件,字位同時擴充套件
主存與CPU的連線通過資料匯流排,地址匯流排,控制匯流排與CPU相連線。如下圖所示:
在這裡插入圖片描述
其中:
地址線決定了CPU可定址的最大記憶體空間。
控制匯流排(讀寫)指出匯流排週期的型別和本次輸入輸出操作完成的時刻。
MDR:資料暫存器,用來存入記憶體中讀入/寫出的資訊。
MAR:地址暫存器,用來存放當前CPU訪問的記憶體單元地址

主存擴容

位擴充套件

位擴充套件是指增加儲存字長,例如,2片1K X4位的晶片,可以組成1K X 8位的儲存器。滿足下列條件時,採用位擴充套件的方式:

  • 只加長每個儲存單元的字長,而不增加儲存單元的數量
  • 晶片數=設計要求的儲存器容量/選擇晶片儲存器容量
  • 晶片之間採用並聯的方式

例如下題:

利用1K×4位的SRAM晶片,設計一個儲存容量為1K×8位的SRAM儲存器,問:需要晶片,地址線,資料線的數量各為多少?

分析:顯然從1K X 4 位 ——>1k X 8位,字長不變,只是位長髮生了變化。所以使用位擴充套件。所以,有:
(1)需要晶片數為:
(1K×8)/(1K×4)=2片
(2)需要地址線數為:
1k表明儲存單元個數,1k = 2^10,說明有10根地址線。
(3)需要多少根資料線?
需要組成8位的儲存器,8代表資料線的位數,每片晶片佔4根線即可實現位擴充套件。

字擴充套件

這種方式僅僅增加了儲存單元數,各單元位數不變。
如下題:
利用1K×8位的DRAM晶片,設計2K×8位的DRAM儲存器(字擴充套件),問需要晶片,地址線,資料線的數量各為多少?
解析:顯然從1K X 8 位 ——>2k X 8位,字數邊長,位數不變,應該選字擴充套件。
(1)需要幾片晶片?
d=(2K×8)/(1K×8)=2(片)
(2)需要多少地址線?
2K個儲存單元對應11根地址線
(3)需要多少資料線?
8位,即8條

字位同時擴充套件

這種方式是指即加長儲存單元的數量又增加各單元的位數,字位同時擴充套件的時候,先進行為擴充套件,在進行字擴充套件。


例如下題:

利用1K×4位的儲存晶片,組成4K×8位的儲存器。問需要晶片,地址線,資料線的數量各為多少?擴充套件過程如何?
解析
(1)共需幾塊晶片:
(4K×8)/(1K×4)= 4×2=8
(2)需要幾根地址線:
4K地址空間(儲存單元的個數),需要12根地址線
(3)需要幾根資料線:
8根。
(4)擴充套件過程:先進行位擴充套件,這個過程相當於分組,將2片1K×4位構成一組,利用位擴充套件,構成1K X 8位的完整儲存單元(如何構成,繼續往下看)。這樣一共可以分成四組。再將這些分組視為一個完整的儲存單元,進行字擴充套件。

主存與CPU的連線

我們前面剛剛講了理論上可以構成我們需要的晶片,那麼實際上如何通過那些地址線和資料線去連線主存與CPU呢?大致過程可以分成5步。

  1. 選擇合理的儲存晶片
    合理選擇晶片,是指選擇晶片的數量及其種類(即ROM還是RAM)。通常來說,ROM存放系統程式,標準子程式以及各類常數。RAM則是為使用者程式設計設定的。在考慮晶片數量的時候,儘量選擇使得連線簡單方便的晶片。
  2. 地址線的連線
    CPU的地址線通常要比儲存晶片的地址線數要多,常見的做法是:將CPU的低位與儲存晶片的地址線相連,CPU地址的高位一般用於擴充或者片選。例如CPU地址線為16位(A0-A15).1K X4位的儲存器晶片僅有10根地址線A9-A0這個時候就可以將CPU的低地址段A9-A0與晶片A9 - A0相連。
  3. 資料線的連線
    這裡跟地址線的連線不同,這裡要求資料線數一定要相同。,如果CPU資料線與儲存晶片的資料線不同,那麼要先進行位擴充套件再連線。
  4. 片選線的連線
    片選線的連線是CPU與儲存晶片能否正確工作的關鍵。儲存器由許多儲存晶片一起組成,哪一片被選中完全取決於該晶片的片選控制端CS能否接受CPU的片選有效訊號.。而片選的有效訊號由與CPU的訪問控制訊號MREQ有關。
  5. 讀寫命令線
    讀寫線一般直接與儲存晶片的讀/寫控制端相連,高電平為讀,低電平為寫

字,位擴充套件在CPU連線中的區別

問,在位擴充套件和字擴充套件中,CS分別是如何連線的?
答:在位擴充套件中所有片的CS連在一起,而字擴充套件則是採用將多出的地址線用來片選(通常CPU的位地址與晶片地址相連,高位用於片選)。
這裡舉個例子,假設兩個4位的晶片構成一個8位的儲存單元,,肯定是要將所有的晶片一同訪問才能訪問到8位。即兩個晶片要一起選,所以也就意味著所有的CS都連在一起。但是字拓展中,是兩個8位的儲存單元,每次操作只能對其中的一個晶片單元操作,就是到底要選擇哪個晶片的問題。(認真看看我手繪的圖應該就懂了)

問:那資料線如何連線?
答,在位擴充套件時,每個晶片的資料線分為低位高位連線。但是字擴充套件中每個晶片都和所有的資料線進行連線。

圖解字擴充套件和位擴充套件

其實一開始學這個有點懵主要是書上給的例項都是立體圖,大家不好觀察,那麼我手繪了一下大致的過程(手殘莫嫌棄哈)。
例子我們還用之前提到的,現在我們用下圖表示1K x 4 位的晶片:
在這裡插入圖片描述
位擴充套件是增加位長,連線方式是並聯
在這裡插入圖片描述
字擴充套件是字長,連線方式是串聯(下圖中最後一個數字是2047,我拍完照才發現,就不重畫了,這裡糾正一下):
在這裡插入圖片描述
所以很容易得出字為同時擴充套件的圖片,我就不畫了。

————————————_——————_

另外附加一張CPU與主存的連線圖

在這裡插入圖片描述


由於單片儲存晶片的容量總是有限的,很難滿足實際的需要,因此必須將儲存晶片連在一起才能組成足夠的容量。這個過程簡稱主存擴容。常見的擴容方式有:字擴充套件,位擴充套件,字位同時擴充套件
主存與CPU的連線通過資料匯流排,地址匯流排,控制匯流排與CPU相連線。如下圖所示:
在這裡插入圖片描述
其中:
地址線決定了CPU可定址的最大記憶體空間。
控制匯流排(讀寫)指出匯流排週期的型別和本次輸入輸出操作完成的時刻。
MDR:資料暫存器,用來存入記憶體中讀入/寫出的資訊。
MAR:地址暫存器,用來存放當前CPU訪問的記憶體單元地址

主存擴容

位擴充套件

位擴充套件是指增加儲存字長,例如,2片1K X4位的晶片,可以組成1K X 8位的儲存器。滿足下列條件時,採用位擴充套件的方式:

  • 只加長每個儲存單元的字長,而不增加儲存單元的數量
  • 晶片數=設計要求的儲存器容量/選擇晶片儲存器容量
  • 晶片之間採用並聯的方式

例如下題:

利用1K×4位的SRAM晶片,設計一個儲存容量為1K×8位的SRAM儲存器,問:需要晶片,地址線,資料線的數量各為多少?

分析:顯然從1K X 4 位 ——>1k X 8位,字長不變,只是位長髮生了變化。所以使用位擴充套件。所以,有:
(1)需要晶片數為:
(1K×8)/(1K×4)=2片
(2)需要地址線數為:
1k表明儲存單元個數,1k = 2^10,說明有10根地址線。
(3)需要多少根資料線?
需要組成8位的儲存器,8代表資料線的位數,每片晶片佔4根線即可實現位擴充套件。

字擴充套件

這種方式僅僅增加了儲存單元數,各單元位數不變。
如下題:
利用1K×8位的DRAM晶片,設計2K×8位的DRAM儲存器(字擴充套件),問需要晶片,地址線,資料線的數量各為多少?
解析:顯然從1K X 8 位 ——>2k X 8位,字數邊長,位數不變,應該選字擴充套件。
(1)需要幾片晶片?
d=(2K×8)/(1K×8)=2(片)
(2)需要多少地址線?
2K個儲存單元對應11根地址線
(3)需要多少資料線?
8位,即8條

字位同時擴充套件

這種方式是指即加長儲存單元的數量又增加各單元的位數,字位同時擴充套件的時候,先進行為擴充套件,在進行字擴充套件。
例如下題:

利用1K×4位的儲存晶片,組成4K×8位的儲存器。問需要晶片,地址線,資料線的數量各為多少?擴充套件過程如何?
解析
(1)共需幾塊晶片:
(4K×8)/(1K×4)= 4×2=8
(2)需要幾根地址線:
4K地址空間(儲存單元的個數),需要12根地址線
(3)需要幾根資料線:
8根。
(4)擴充套件過程:先進行位擴充套件,這個過程相當於分組,將2片1K×4位構成一組,利用位擴充套件,構成1K X 8位的完整儲存單元(如何構成,繼續往下看)。這樣一共可以分成四組。再將這些分組視為一個完整的儲存單元,進行字擴充套件。

主存與CPU的連線

我們前面剛剛講了理論上可以構成我們需要的晶片,那麼實際上如何通過那些地址線和資料線去連線主存與CPU呢?大致過程可以分成5步。

  1. 選擇合理的儲存晶片
    合理選擇晶片,是指選擇晶片的數量及其種類(即ROM還是RAM)。通常來說,ROM存放系統程式,標準子程式以及各類常數。RAM則是為使用者程式設計設定的。在考慮晶片數量的時候,儘量選擇使得連線簡單方便的晶片。
  2. 地址線的連線
    CPU的地址線通常要比儲存晶片的地址線數要多,常見的做法是:將CPU的低位與儲存晶片的地址線相連,CPU地址的高位一般用於擴充或者片選。例如CPU地址線為16位(A0-A15).1K X4位的儲存器晶片僅有10根地址線A9-A0這個時候就可以將CPU的低地址段A9-A0與晶片A9 - A0相連。
  3. 資料線的連線
    這裡跟地址線的連線不同,這裡要求資料線數一定要相同。,如果CPU資料線與儲存晶片的資料線不同,那麼要先進行位擴充套件再連線。
  4. 片選線的連線
    片選線的連線是CPU與儲存晶片能否正確工作的關鍵。儲存器由許多儲存晶片一起組成,哪一片被選中完全取決於該晶片的片選控制端CS能否接受CPU的片選有效訊號.。而片選的有效訊號由與CPU的訪問控制訊號MREQ有關。
  5. 讀寫命令線
    讀寫線一般直接與儲存晶片的讀/寫控制端相連,高電平為讀,低電平為寫

字,位擴充套件在CPU連線中的區別

問,在位擴充套件和字擴充套件中,CS分別是如何連線的?
答:在位擴充套件中所有片的CS連在一起,而字擴充套件則是採用將多出的地址線用來片選(通常CPU的位地址與晶片地址相連,高位用於片選)。
這裡舉個例子,假設兩個4位的晶片構成一個8位的儲存單元,,肯定是要將所有的晶片一同訪問才能訪問到8位。即兩個晶片要一起選,所以也就意味著所有的CS都連在一起。但是字拓展中,是兩個8位的儲存單元,每次操作只能對其中的一個晶片單元操作,就是到底要選擇哪個晶片的問題。(認真看看我手繪的圖應該就懂了)

問:那資料線如何連線?
答,在位擴充套件時,每個晶片的資料線分為低位高位連線。但是字擴充套件中每個晶片都和所有的資料線進行連線。

圖解字擴充套件和位擴充套件

其實一開始學這個有點懵主要是書上給的例項都是立體圖,大家不好觀察,那麼我手繪了一下大致的過程(手殘莫嫌棄哈)。
例子我們還用之前提到的,現在我們用下圖表示1K x 4 位的晶片:
在這裡插入圖片描述
位擴充套件是增加位長,連線方式是並聯
在這裡插入圖片描述
字擴充套件是字長,連線方式是串聯(下圖中最後一個數字是2047,我拍完照才發現,就不重畫了,這裡糾正一下):
在這裡插入圖片描述
所以很容易得出字為同時擴充套件的圖片,我就不畫了。

————————————_——————_