MCS-51指令的取指/執(zhí)行時序
發(fā)布時間:2014/6/4 20:26:43 訪問次數(shù):1446
單片機執(zhí)行任何一條指令時都可以分為取指令階段和執(zhí)行指令階段。取指令階段簡稱取指階段,HEF4013BT單片機在這個階段里可以把程序計數(shù)器PC中的地址送到程序存儲器,并從中取出需要執(zhí)行指令的操作碼和操作數(shù)。指令執(zhí)行階段可以對指令操作碼進行譯碼,以產(chǎn)生一系列控制信號完成指令的執(zhí)行。圖3-14給出了MCS-51指令的取指/執(zhí)行時序。
由圖3-14可知,ALE引腳上出現(xiàn)的信號是周期性的,每個機器周期內(nèi)出現(xiàn)兩次高電平,出現(xiàn)時刻為SIP2和S4P2,持續(xù)時間為一個狀態(tài)S。ALE信號每出現(xiàn)一次,CPU就進行一次取指操作,但由于不同指令的字節(jié)數(shù)和機器周期數(shù)不同,因此取指令操作也隨指令不同而有小的差異。
按照指令字節(jié)數(shù)和機器周期數(shù),MCS-51的111條指令可分為單字節(jié)單周期指令、單字節(jié)雙周期指令、單字節(jié)四周期指令、雙字節(jié)單周期指令、雙字節(jié)雙周期指令和三字節(jié)雙周期指令6類,分別財應(yīng)于6種基本時序。為了弄清楚這些基本時序的特點,現(xiàn)將幾種主要時序作一簡述。
1.單字節(jié)單周期指令時序
這類指令的指令碼只有一個字節(jié)(如INCA指令),存放在程序存儲器ROM中,機器從取出指令碼到完成指令的執(zhí)行僅需一個機器周期,如圖3-14 (a)所示。
圖3-14 (a)中,機器在ALE第一次有效(SIP2)時從ROM中讀出指令碼,把它送到指令寄存器IR,接著開始執(zhí)行。在執(zhí)行期間,CPU -方面在ALE第二次有效(S4P2)時封鎖PC加“1”,使第二次讀操作無效;另一方面在S6P2時完成指令的執(zhí)行。
2.雙字節(jié)單周期指令時序
雙字節(jié)單周期指令時序如圖3-14 (b)所示,MCS-51在執(zhí)行這類指令時需要分兩次從ROM中讀出指令碼。ALE在第一次有效時讀出指令操作碼,CPU對它譯碼后便知道是雙字節(jié)指令,故使程序計數(shù)器PC加“1”,并在ALE第二次有效時讀出指令的第二字節(jié)(也使PC加“1”一次),最后在S6P2時完成指令的執(zhí)行。
3.單字節(jié)雙周期指令時序
單字節(jié)雙周期指令時序如圖3-14 (c)所示。這類指令執(zhí)行時,CPU在第一機器周期Sl期間從程序存儲器ROM中讀出指令操作碼,經(jīng)譯碼后便知道是單字節(jié)雙周期指令,故控制器自動封鎖后面的連續(xù)三次讀操作,并在第二機器周期的S6P2時完成指令的執(zhí)行。
單片機執(zhí)行任何一條指令時都可以分為取指令階段和執(zhí)行指令階段。取指令階段簡稱取指階段,HEF4013BT單片機在這個階段里可以把程序計數(shù)器PC中的地址送到程序存儲器,并從中取出需要執(zhí)行指令的操作碼和操作數(shù)。指令執(zhí)行階段可以對指令操作碼進行譯碼,以產(chǎn)生一系列控制信號完成指令的執(zhí)行。圖3-14給出了MCS-51指令的取指/執(zhí)行時序。
由圖3-14可知,ALE引腳上出現(xiàn)的信號是周期性的,每個機器周期內(nèi)出現(xiàn)兩次高電平,出現(xiàn)時刻為SIP2和S4P2,持續(xù)時間為一個狀態(tài)S。ALE信號每出現(xiàn)一次,CPU就進行一次取指操作,但由于不同指令的字節(jié)數(shù)和機器周期數(shù)不同,因此取指令操作也隨指令不同而有小的差異。
按照指令字節(jié)數(shù)和機器周期數(shù),MCS-51的111條指令可分為單字節(jié)單周期指令、單字節(jié)雙周期指令、單字節(jié)四周期指令、雙字節(jié)單周期指令、雙字節(jié)雙周期指令和三字節(jié)雙周期指令6類,分別財應(yīng)于6種基本時序。為了弄清楚這些基本時序的特點,現(xiàn)將幾種主要時序作一簡述。
1.單字節(jié)單周期指令時序
這類指令的指令碼只有一個字節(jié)(如INCA指令),存放在程序存儲器ROM中,機器從取出指令碼到完成指令的執(zhí)行僅需一個機器周期,如圖3-14 (a)所示。
圖3-14 (a)中,機器在ALE第一次有效(SIP2)時從ROM中讀出指令碼,把它送到指令寄存器IR,接著開始執(zhí)行。在執(zhí)行期間,CPU -方面在ALE第二次有效(S4P2)時封鎖PC加“1”,使第二次讀操作無效;另一方面在S6P2時完成指令的執(zhí)行。
2.雙字節(jié)單周期指令時序
雙字節(jié)單周期指令時序如圖3-14 (b)所示,MCS-51在執(zhí)行這類指令時需要分兩次從ROM中讀出指令碼。ALE在第一次有效時讀出指令操作碼,CPU對它譯碼后便知道是雙字節(jié)指令,故使程序計數(shù)器PC加“1”,并在ALE第二次有效時讀出指令的第二字節(jié)(也使PC加“1”一次),最后在S6P2時完成指令的執(zhí)行。
3.單字節(jié)雙周期指令時序
單字節(jié)雙周期指令時序如圖3-14 (c)所示。這類指令執(zhí)行時,CPU在第一機器周期Sl期間從程序存儲器ROM中讀出指令操作碼,經(jīng)譯碼后便知道是單字節(jié)雙周期指令,故控制器自動封鎖后面的連續(xù)三次讀操作,并在第二機器周期的S6P2時完成指令的執(zhí)行。
上一篇:MCS-51 單片機的對奇
上一篇:訪問片外ROM/RAM的指令時序
熱門點擊
- E2PROM
- 皂化作用
- PCB定位孔和夾持邊的設(shè)置
- 子程序調(diào)用與返回指令
- Sn系焊料與Ni/Au(ENIG)焊盤焊接的
- 典型表面組裝方式
- 片外 RAM
- PQFN焊盤設(shè)計結(jié)構(gòu)
- 三維堆疊POP (Package On Pa
- MCS-51指令的取指/執(zhí)行時序
推薦技術(shù)資料
- 頻譜儀的解調(diào)功能
- 現(xiàn)代頻譜儀在跟蹤源模式下也可以使用Maker和△Mak... [詳細]