80C186XL16位嵌入式微处理器是Intel公司在嵌入式微处理器市场的上导产品之一,已广泛应用于电脑终端、程控交换和工控等领域。在该嵌入式微处理器片内,集成有DRAM RCU单元,即DRAM刷新控制单元。RCU单元可以自动产生DRAM刷新总线周期,它工作于微处理器的增益模式下。经适当编程后,RCU将向将处理器的BIU(总线接口)单元产生存储器读请求。对微处理器的存储器范围编程后,BIU单元执行刷新周期时,被编程的存储器范围片选有效。
存储器是嵌入式计算机系统的重要组成部分之一。通常采用静态存储器,但是在系统需要大容量存储器的情况下,这种方式将使成本猛增。如果采用DRAM存储器,则可以大幅度降低系统设计成本;但DRAM有复杂的时序要求,给系统设计带来了很大的困难。
为了方便地使用DRAM,降低系统成本,本文提出一种新颖的解决方案:利用80C186XL的时序特征,采用CPLD技术,并使用VHDL语言设计实现DRAM控制器。
2019-7-29 15:41:02
三、80C186XL RCU单元的编程
要使DRAM正常工作,就必须对80C186XL中与DRAM刷新有关的寄存器进行正确编程。这些寄存器包括:刷新时钟间隔寄存器(RFTIME寄存器)、刷新基地址寄存器(RFBASE寄存器)和刷新控制寄存器(RFCON寄存器)。
刷新时钟间隔寄存器(RFTIME寄存器)的编程公式为:Trefresh×fcpu/(Rrow+Rrows×补偿因子)。V53C8258的技术参数规定,其刷新周期Trefresh为8ms,存储阵列行数Rrows为512。考虑到RCU取得总线控制权的延时,补偿因子取0.05。因此,微处理器在fcpu=20MHz工作频率下,RFTIME寄存器的取值为:0.008×20×10 6/(512+512×0.05),约为297.
刷新基地址寄存器(RFBASE寄存器)的编程。该寄存器的高7位,规定了DRAM容量大小。系统使用两片V53C8258情况下,RFBASE的取值为00H,DRAM占用微处理器的存储空间的00000H~7FFFFH(512KB)。
最后通过将刷新控制寄存器(RFCON寄存器)的REN位置位,来启动刷新控制单元。
若使用80C186XL的节电模式,则要求重新编程这些值。在写节电控制寄存器前,必须先用要时钟分频值去除原先设置在刷新间隔寄存器的值,来重新设置寄存器。
三、80C186XL RCU单元的编程
要使DRAM正常工作,就必须对80C186XL中与DRAM刷新有关的寄存器进行正确编程。这些寄存器包括:刷新时钟间隔寄存器(RFTIME寄存器)、刷新基地址寄存器(RFBASE寄存器)和刷新控制寄存器(RFCON寄存器)。
刷新时钟间隔寄存器(RFTIME寄存器)的编程公式为:Trefresh×fcpu/(Rrow+Rrows×补偿因子)。V53C8258的技术参数规定,其刷新周期Trefresh为8ms,存储阵列行数Rrows为512。考虑到RCU取得总线控制权的延时,补偿因子取0.05。因此,微处理器在fcpu=20MHz工作频率下,RFTIME寄存器的取值为:0.008×20×10 6/(512+512×0.05),约为297.
刷新基地址寄存器(RFBASE寄存器)的编程。该寄存器的高7位,规定了DRAM容量大小。系统使用两片V53C8258情况下,RFBASE的取值为00H,DRAM占用微处理器的存储空间的00000H~7FFFFH(512KB)。
最后通过将刷新控制寄存器(RFCON寄存器)的REN位置位,来启动刷新控制单元。
若使用80C186XL的节电模式,则要求重新编程这些值。在写节电控制寄存器前,必须先用要时钟分频值去除原先设置在刷新间隔寄存器的值,来重新设置寄存器。
举报
2019-7-29 15:41:08
四、结束语
现在DRAM、CPLD的价格非常低,这样设计者有机会在嵌入式计算机系统设计中考虑采用DRAM。80C186XL嵌入式微处理器广泛应用于嵌入式计算机、程控通信和工业控制系统中,具有良好的性价比,其性能和功能是80C31、80C196等单片机无法比拟的,并能充分利用大量的PC平台软件。本解决方案已在家庭电子证券产品中采用,获得了良好的经济效益和社会效益。
掌握CPLD技术和VHDL语言设计技巧是提升产品技术含量的重要途径。上述CPLD还留在一些引脚和内部资源未使用,只要设计者将VHDL源代码稍微作一些修改,就可以用这些引脚控制新增加的DRAM,提供总线准备输出信号或DMA响应信号。
如果采用引脚数和宏单元较多的XC9672或XC95108CPLD,就可以将D触发器(74HC74)、多路地址切换器(74HC157)、数据收发器(74HC245)和地址总线锁存器(74HC373)等其它分立逻辑器件的功能全部集成到CPLD中,这样系统集成度和可靠性将更加提高。
四、结束语
现在DRAM、CPLD的价格非常低,这样设计者有机会在嵌入式计算机系统设计中考虑采用DRAM。80C186XL嵌入式微处理器广泛应用于嵌入式计算机、程控通信和工业控制系统中,具有良好的性价比,其性能和功能是80C31、80C196等单片机无法比拟的,并能充分利用大量的PC平台软件。本解决方案已在家庭电子证券产品中采用,获得了良好的经济效益和社会效益。
掌握CPLD技术和VHDL语言设计技巧是提升产品技术含量的重要途径。上述CPLD还留在一些引脚和内部资源未使用,只要设计者将VHDL源代码稍微作一些修改,就可以用这些引脚控制新增加的DRAM,提供总线准备输出信号或DMA响应信号。
如果采用引脚数和宏单元较多的XC9672或XC95108CPLD,就可以将D触发器(74HC74)、多路地址切换器(74HC157)、数据收发器(74HC245)和地址总线锁存器(74HC373)等其它分立逻辑器件的功能全部集成到CPLD中,这样系统集成度和可靠性将更加提高。
举报