访问片外ROM/RAM的指令时序
发布时间:2014/6/4 20:29:34 访问次数:9923
MCS-51专门有两类可以访问片外存储器的指令:一类是读片外ROM指令,另一HEF4017BT类是访问片外RAM指令。这两类指令执行时所产生的时序除涉及ALE引脚外,还和PSEN、PO口、P2口和RD等引脚上的信号有关。
1.读片外ROM指令时序
首先把累加器A中的地址偏移量和DPTR中的地址相加,然后把16位“和地址”作为片外ROM地址,并从中读出该地址单元中的数据,送到累加器A。因此,累加器A在指令执行前为地址偏移量,指令执行后为片外ROM中的读出数据。指令执行中产生的时序如图3-15所示。
指令的详细执行过程如下:
(1) ALE信号在SIP2有效时,PSEN继续保持高电平或从低电平变为高电平无效状态。
(2) MCS-51在S2Pl时,把PC中高8位地址送到P2口引脚线上,把PC中低8位地址送到PO口引脚线上,PO口地址A7~AO在ALE下降沿被锁存到片外地址锁存器(如74LS373),P2口地址A15—A8 -直保持到S4P2,故它不必外接锁存器。
(3) PSEN在S3到S4Pl期间有效,选中片外ROM工作,并根据P2口和地址锁存器( 74LS373)输出地址读出MOVC指令的指令码,经PO口送到CPU的指令寄存器IR。
(4) MCS-51财指令寄存器IR中的MOVC指令码译码,产生执行该指令所需的一系列控制信号。
(5)在S4P2时,CPU先把累加器A中的地址偏移量和DPTR中的地址相加,然后把“和地址”的高8位送到P2口并把低8位送到PO口,其中PO口地址由ALE的第二个下降沿锁存到片外地址锁存器( 74LS373)。
(6) PSEN在S6到下个机器周期的SIP1期间第二次有效,并在S6P2时从片外ROM中读出由P2口和片外地址锁存器(74LS373)输出地址所对应ROM单元中的常数,该常数经PO口送到CPU累加器A。
上述指令执行过程表明,MOVC指令执行时分两个阶段:第一阶段是取指阶段,即根据程序计数器PC中的地址到片外ROM中取指令码;第二阶段是执行阶段,即对累加器A和DPTR中的16位地址进行运算,并按运算所得到的和地址去片外ROM取出所需的常数
送到累加器A。也就是说,MCS-51执行“MOVC A,@A+ROM存储器,第1次访问是从中读取“MOVC A,@A+DPTR”的指令码;第2次访问片外ROM存储器是要从中读出A+DPTR所指相应存储单元中的常数。
MCS-51专门有两类可以访问片外存储器的指令:一类是读片外ROM指令,另一HEF4017BT类是访问片外RAM指令。这两类指令执行时所产生的时序除涉及ALE引脚外,还和PSEN、PO口、P2口和RD等引脚上的信号有关。
1.读片外ROM指令时序
首先把累加器A中的地址偏移量和DPTR中的地址相加,然后把16位“和地址”作为片外ROM地址,并从中读出该地址单元中的数据,送到累加器A。因此,累加器A在指令执行前为地址偏移量,指令执行后为片外ROM中的读出数据。指令执行中产生的时序如图3-15所示。
指令的详细执行过程如下:
(1) ALE信号在SIP2有效时,PSEN继续保持高电平或从低电平变为高电平无效状态。
(2) MCS-51在S2Pl时,把PC中高8位地址送到P2口引脚线上,把PC中低8位地址送到PO口引脚线上,PO口地址A7~AO在ALE下降沿被锁存到片外地址锁存器(如74LS373),P2口地址A15—A8 -直保持到S4P2,故它不必外接锁存器。
(3) PSEN在S3到S4Pl期间有效,选中片外ROM工作,并根据P2口和地址锁存器( 74LS373)输出地址读出MOVC指令的指令码,经PO口送到CPU的指令寄存器IR。
(4) MCS-51财指令寄存器IR中的MOVC指令码译码,产生执行该指令所需的一系列控制信号。
(5)在S4P2时,CPU先把累加器A中的地址偏移量和DPTR中的地址相加,然后把“和地址”的高8位送到P2口并把低8位送到PO口,其中PO口地址由ALE的第二个下降沿锁存到片外地址锁存器( 74LS373)。
(6) PSEN在S6到下个机器周期的SIP1期间第二次有效,并在S6P2时从片外ROM中读出由P2口和片外地址锁存器(74LS373)输出地址所对应ROM单元中的常数,该常数经PO口送到CPU累加器A。
上述指令执行过程表明,MOVC指令执行时分两个阶段:第一阶段是取指阶段,即根据程序计数器PC中的地址到片外ROM中取指令码;第二阶段是执行阶段,即对累加器A和DPTR中的16位地址进行运算,并按运算所得到的和地址去片外ROM取出所需的常数
送到累加器A。也就是说,MCS-51执行“MOVC A,@A+ROM存储器,第1次访问是从中读取“MOVC A,@A+DPTR”的指令码;第2次访问片外ROM存储器是要从中读出A+DPTR所指相应存储单元中的常数。
上一篇:MCS-51指令的取指/执行时序
上一篇:读外部RAM指令时序
热门点击
- 访问片外ROM/RAM的指令时序
- 堆栈指针SP( Stack Pointor)
- 16位特殊功能寄存器sfr16
- PCB的元器件贴装位置有偏移,可用以下两种方
- 三极管的极限参数有集电极最大允许电流
- “黑焊盘”现象的产生原因
- 焊点形成过程
- I/O端口
- 程序执行过程
- 电气规则检查
推荐技术资料
- DS2202型示波器试用
- 说起数字示波器,普源算是国内的老牌子了,FQP8N60... [详细]