微機——8086CPU


寫在前面

期末整理重點,留檔自用復習

第一章 8086CPU

物理地址計算

物理地址=段地址×16+偏移地址

堆棧

堆棧范圍 SS:0000H~SS:(SP-1)

初始SP指向堆棧底

PUSH:SP=SP-2

POP:SP=SP+2

存儲器分體結構

8086訪問存儲器時,既要能傳送一個字,又要能傳送一個字節。因此把16位的存儲器分成兩個8位的存儲體來處理。

  • 奇地址體(高位)~BHE
  • 偶地址體(低位) A0

選擇引腳低電平有效

~BHE A0 使用數據線
0 0 D15 ~ D0
0 1 D15 ~ D8
1 0 D7 ~ D0
1 1 無效

存取操作時,都是從偶地址體開始。

因此存取一個字時,若從偶地址開始,進行一次操作;若從奇地址開始,進行兩次操作。

從奇地址開始存取時,對地址所在的偶地址讀兩次,分別取高位和低位,舍棄其他位。

所以無論是從奇地址還是從偶地址開始,都是讀取偶地址體開始。

image-20211224151336945

每個存儲體512K字節,共1MB

最小模式

最小模式包括1片8254、3片8282、2片8286、一個8086cpu

8284

時鍾發生器,連接CLK、READY、RESET,產生時鍾信號,同步READY和RESET信號

8282

鎖存器,實現時分復用,先把地址鎖存進8282,此時可以空出總線去存取數據,需要時再將地址輸出

~STB:下降沿觸發,有ALE給信號,鎖存允許

~OE=0, 開啟三態門,向外輸出,常接地

Q:為什么3片8282

A:因為A19 ~ A16 +~BHE + AD15 ~ AD0共21位,8282是8位,所以需要3片

8286

數據收發器,可以雙向傳輸數據

DIR(T):傳輸方向,接DT/~R發送/接收,

  • T=1:A→B
  • T=0:A←B

~OE:接 ~DEN,數據使能端

AD15 ~ AD0

image-20211224155710426

讀存儲器/寫存儲器/讀IO/寫IO時各引腳的值?

讀寫總線周期

總線周期:CPU訪問一次存儲器或IO的時間成為總線周期,一個總線周期分為4各時鍾周期

T1:8282鎖存地址

  • A19 ~ A16 +~BHE + AD15 ~ AD0 地址輸出
  • ALE 下降沿鎖存
  • M/~IO 選中存儲器或IO
  • DT/~R 發送/接收數據

T2:8286准備

  • AD15 ~ AD0高阻態浮空,准備傳輸數據
  • ~DEN 下降變低電平
  • ~RD/ ~WR 下降變低電平

T3:8286傳輸數據

  • 等待READY=1(准備好后開始傳輸)
  • AD15 ~ AD0輸出/輸入數據

T4:結束

  • 維持半個周期,后半個周期,各信號復位,數據從數據總線上撤出
  • 結束。
image-20211224162122982

最大模式

最大模式與最小模式的區別是CPU不直接控制8282和8286,因此最大模式下,有8288總線控制器用來向8282和8286發出信號;8289總線裁決器,用來判斷哪些信號由CPU發出哪些信號由8288發出


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM