1. 關於cpu和存儲器的連接
都會出現地址重復吧?
如果不想出現重復需要對a13-a19進行解碼再接存儲器CS
只用一根線一定會出現重復的
2. cpu與存儲器的連接圖怎麼畫
第一步:將16進制的地址碼轉換為2進制地址碼,確定其總容量
系統程序區:6000H~67FFH
6000:0110 0000 0000 0000
67FF:0110 0111 1111 1111
因為有16根地址線,所以排列為A0~A15
A15
A14
A13
A12
A11
A10
A9
A8
0 1 1 0 0 0 0 0
0 1 1 0 0 1 1 1
(後面的用不到了,做題的時候表格要體現<最好是全部都寫出>)
同理用戶程序區:6800H~6BFFH
A15
A14
A13
A12
A11
A10
A9
A8
0 1 1 0 1 0 0 0
0 1 1 0 1 0 1 1
第二步:選擇合適的晶元
RAM用來存儲當前運行的程序和數據,並可以在程序運行中反復的更改其內容,所以用戶程序一般選用RAM晶元,而ROM基本上存儲不變或基本不變的程序和數據,所以系統程序一般選用ROM晶元。
接下來就是選擇晶元大小的問題
系統程序區:A0~A10編碼從全0變為全1,一共11根地址線,也就是2k,8根數據線,系統程序區總容量2k x 8位,所以我們就選取一片2k x 8位的ROM晶元
用戶程序區:A0~A9編碼從全0變為全1,一共10根地址線,也就是1k,8根數據線,用戶程序區總容量為1k x 8位,但根據題干未給出1k x 8位的RAM晶元,此時我們需要進行位擴展(如果對於字擴展和位擴展不熟悉,就去找一下其他博客了解一下吧,或者評論我也可以),我們就選取2片1k x 4位的RAM晶元。
第三步:分配地址線畫圖
說明:
A0~A10接2k x 8位的ROM
A0~A9分別接1k x 4位的RAM
A11~A15作為片選線
38解碼器:A11、A12、A13分別連接A、B、C
G1 高電平(A14根據那個表可以看到始終為1->高電平)
G2A、G2B需要高電平工作(A15始終為高電平,但是連接的位置注意有個小圈圈哦–取反的是意思MREQ低電平有效)
輸出Y4、Y5(這個需要看連接A、B、C的A11、A12、A13的編碼,將其三位二進制轉換為十進制就是其下標)
就像這樣,當然你需要去看大量的題來看不同的38解碼器的連接情況。