- 1、本文档共12页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2-5 时序分析
2-5 時序分析
以下將就下列時序分析MCS-51的動作,包括:
.MCS-51的指令提取週期
.MCS-51外部程式記憶體(ROM)指令提取週期
.MCS-51外部資料記憶體(RAM)資料讀取週期
.MCS-51外部資料記憶體(RAM)資料寫入週期
.MCS-51輸入/出埠讀/寫週期
.MCS-51的指令提取週期:
MCS-51每一個機械週期包括了六個狀態(12個clock),操作碼讀取週期是在S1,然後再視操作碼決定是否要在讀取其它運算元。
a. 1-byte,1-cycle 的指令(例:INC A)
2-bytes,1-cycle的1指令(例:ADD A,#data)
1-byte,2-cycle的指令(例:INC DPTR)
1-byte,2-cycle的指令(例:MOVX A,@Ri)
.MCS-51外部程式記憶體(ROM)指令提取週期:
這裡將介紹使用外部程式記憶體時,有關的匯流排及控制訊號的變化,並以實例解說,各相關訊號的變化關係,使用外部記憶體時,其動作時序可分為,有執行外部資料讀取指令(MOVX),和一般的指令之執行週期,如下:
提取指令時不含資料讀取指令(MOVX)
即執行非MOVX之指令時
ALE:由”Hi”變”Lo”時,用來閂鎖位址匯流排的低位元組。
PSEN:為”Lo”時,用來致能外部程式記憶體(ROM)的資料輸出(此時的資料為程式指令的機械碼),以便資料匯流排在S1與S4週期時,能讀取記憶體上的指令的機械碼。
RD:因為沒有讀取外部資料指令(MOVX),所以始終保持為”Hi”。
P2:輸出程式指令機械碼所在的記憶體位址之高位元組。
P0:.在S2與S5的時候,當位址匯流排使用,此時輸出位址之低位元組,並由ALE送出閂鎖訊號,以便在S4與S1的時候讀入指令。
.在S4與S1時,P0表示資料匯流排,此時讀入程式記憶體中的指令。
以下將以實際的程式片段來解釋,當CPU要執行一指令時,其匯流排的動作順序,例如有一片段程式如下:
TIMER: 經組譯後的機械碼 記憶體位址 機械碼
PUSH A 0015H C0 E0
PUSH PSW 0017H C0 D0
CLR EA 0019H C2 AF
CLR TRO 001BH C2 BC
... ...
此程式經組譯、連結後,載入到外部記憶體。
當CPU開始執行TIMER這個副程式時,即從記憶體位址0015H開始執行,此時在MCS-51上的相關匯流排動作如下:
動作順序:
在第一機械週期的S1,讀入指令的操作碼C0H
因為機械碼C0H是一個PUSH的指令,所以必須再讀入一個目的位址,所以在S2時P2和P0會再送出下一個資料的位址(0016H),P2(00H)和P0(16H),ALE將P0的值閂鎖住;
在S3的時候PSEN送”Lo”以致能外部記憶體的資料輸出,此時在P0將可讀取外部(ROM)的資料E0H,此為指令的目的位址,而CPU再根據所讀入的操作碼和目的位址C0H和E0H去執行 PUSH A的動作;
而在S4的時候P2和P0會送出下一個指令的記憶體所在位址0017H,P2(00H)和P0(17H),ALE將P0的值閂鎖住;
在S6的時候PSEN送”Lo”以致能外部記憶體的資料輸出,以便在下一個機械週期的S1時,能順利讀取下一個指令的操作碼。
而第二機械週期則是另一個指令POP PSW,在執行時的動作時序。
提取指令時含資料讀取指令(MOVX)
即執行MOVX之指令時
ALE:由”Hi”變”Lo”時,用來閂鎖位址匯流排的位元組。
PSEN:為”Lo”時,用來致能外部程式記憶體(ROM)的資料輸出(此時的資料為程式指令)。
RD:用來致能外部記憶體的資料輸出。
P2:.在第一機械週期時,輸出程式指令所在的記憶體位址之高位元組。
.在第一機械週期時:
如為:MOVX @Ri,此時輸出P2暫存器內的值。
如為:MOVX @DPTR,此時輸出資料位址之高位元組。
P0:.在第一機械週期的S2,當位址匯流排使用,此時輸出指令位址之低位元組,並由ALE送出閂鎖訊號,以便讀入指令。
.在第一機械週期的S3與S4之間當資料匯流排,此時讀入程式記憶體中的指令。
.在第一機械週期的S5時,當位址匯流排使用,此時輸出資料位址之低位元組,並由ALE送出閂鎖訊號,以便讀入資料。
.在第二機械週期的S2與S3之間當資料匯流排,此時讀入資料記憶體中的資料。
以下將以實際的程式片段來解釋,當CPU要執行一讀取外部資料指令時(MOVX),其匯流排的動作順序,例如有一片段程式如下:
經組譯後的機械碼 記
您可能关注的文档
- 1041-2高二设计概论 - 宜兰高商.doc
- 104学年度高级中等学校智障鉴定摘要表0930 - 台北市北区特殊 .doc
- 104 学年度第一学期班亲会104 学年度第一学期班亲会104 学年度第 .pdf
- 104学年度四技课程总表 - 南开科技大学文化创意与设计系.pdf
- 105 年度人事行政研究发展征文奖励得奖作品建议事项‘供各 - 高师大.pdf
- 104-5-15新鲜人职涯选择与面试技巧研习〈讲座〉 - 水里商工.ppt
- 105年县孝慈楷模推荐表.doc
- 105 下银发族生活规划期末考重点整理(汇整刘文端老师提供重点节录 .pdf
- 105 年公务人员特种考詴司法人员考詴詴题.pdf
- 106学年度商业管理群专业科目(一)统一入学测验 .doc
文档评论(0)