单片机控制的动态数据缓存器的DRAM刷新过程与管理

动态存储器的一个显著特点就是存储的数据具有易失性,必须在规定时间内对其刷新 。在本系统中采用8031的定时器1定时中断实现对DRAM的刷新 。其定时中断刷新的程序如下:
 
刷新时,先将Tl置1,在DEC70H语句的取指周期,8031从外部程序存储器EPROM取指令,PSEN有效,此时Tl为高,使RAS有效;同时,存储指令的EPROM地址也送到了地址线上,其低9位也作为行地址同时送给DRAM,实现对DRAM-行的刷新 。由于DEC 70H语句是对内部RAM的操作,此时地址线上不会有其他地址,连续执行OlOOH条DEC 70H语句(0200H个字节),可实现对1 MBDRAM的刷新(1 MB DRAM需9位刷新地址) 。
进入中断程序,立即重设定时器1参数并打开定时器,使定时连续 。定时器1的计数输入信号来自内部的时钟脉冲,计数速率是振荡器频率的1/12 。若用12MHz石英晶体作振荡器,则计数速率为1MHz 。设定时参数为FFFFH - F63BH一09C4H,则定时刷新周期为2.5 ms 。目前一般1 MBDRAM刷新周期为16 ms,所以定时参数值还可设置得大些 。
数据缓存器管理
【单片机控制的动态数据缓存器的DRAM刷新过程与管理】数据缓存器的管理可采用循环队列的方式 。由主程序向上位机发送数据,并根据队列的头尾指针位置及前后标志判断队列的情况,利用中断接收新数据和刷新DRAM 。这种边接收、边发送的运行方式可使缓存器保持高效率 。刷新DRAM的中断源级别应高于接收数据的中断申请,以保证DRAM的按时刷新 。

    推荐阅读