新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 80C51原始IP核内部RAM的扩展方案

80C51原始IP核内部RAM的扩展方案

作者: 时间:2008-07-02 来源:单片机与嵌入式系统应用 收藏

  第一种情况:最高位为“1”时,说明高128字节(80H~FFH)作为一般来使用,此时把R0、R1中的地址赋给地址,同时置使能控制ram_write_en为“1”,实现对某一高位地址的写操作。还以85H为例,执行指令“MOV R0, #85H”, R0中内容变为85H,然后执行“MOV @RO,#33H”,此时R0用作间接,进行间接寻址,且中的字节最高位为“1”,对RAM区操作的地址就是间接中寄存的地址85H,从而实现对85H的数据存储。

本文引用地址:https://www.eepw.com.cn/article/85158.htm

  第二种情况:最高位为“0”时,说明只是对低128字节进行间接寻址操作,执行过程如一般8051。

  2 64 KB内部RAM的扩展设计

  通过对一个特殊移存器(选取84H,记为SRAM0)的软件配置,在高128字节内部RAM扩展设计的基础上,可以实现内部64 KB RAM的扩展。在对高128字节内部RAM的扩展设计中,通过对s_address_ram最高位进行判断,确定地址信号s_address1,进而作为内部RAM地址ram_address_out输出。以这个方法为基础,将ram_address_out改为16位长,SRAM0中内容与s_address1的值并置作为ram_address_out输出,即ram_address_out<= SRAM0&s_address1,可以实现对内部RAM 64 KB的扩展。此时对数据进行存取时,每次对84H赋值后,CPU对数据进行存取,对64 KB内部RAM的寻址,就相当于以SRAM0为页地址指针,以256字节为页深度进行页面寻址操作。相比较于以XRAM作为数据存储区,本设计有两个优势: 其一,除SRAM0中为全0的情况,其余地址空间均可直接寻址,而XRAM地址空间只能间接寻址,在进行大量数据反复存储调用时,可以缩短代码长度,有效提高执行速度;其二,由于内部数据传输指令MOV大多为单指令周期指令,而外部数据传输指令MOVX全部是双指令周期指令,所以在进行大量数据存取时,执行速度会有较大提高。

  3 软硬件仿真测试

  采用由Model技术公司开发的ModelSim SE 6.0进行功能仿真,利用Keil公司的Keil uVision2编写51汇编测试程序,编译产生可执行文件载入ROM进行功能测试,最终的仿真结果与Keil uVision2中编译执行结果相对照,验证设计功能的正确性。对设计的测试采取黑盒测试法,测试程序是已有的一些比较复杂的算法,如DES、AES。以DES为例,明密文存取、密钥生成、中间值暂存和结果都放在高128字节来处理,仅用到低128字节区的可位寻址区,密文地址空间为90H~97H ,明文地址空间为98H~9FH, 明文数据为38H、33H、32H、37H、31H、34H、32H、33H,密钥地址空间为80H~87H,密钥数据为00H、31H、31H、33H、34H、35H、36H、07H,最后将80H~87H和90H~97H地址空间中的数据结果送入地址空间48H~5FH中,如图2所示。

图2 Keil运行结果

  将二进制.dua可执行文件载入ROM,使用ModelSim对其进行功能仿真,结果如图3所示。

图3 ModelSim仿真结果

  两方结果对照:128~135这8个高位寄存数为:00H、00H、7EH、E1H、CCH、F0H、00H、8EH,144~159这16个高位寄存数为:26H、33H、21H、3DH、31H、0FH、1DH、4DH、00H、88H、1EH、5FH、E6H、E7H、21H、F1H,图中的160~163位, 是用于暂存32位圈子密钥的,这里不作详细介绍,通过对照可知结果正确。硬件实现采用Altera公司的CycloneII系列的EP2C35F672C6器件作为设计载体,在QuartusII 5.0下对系统进行编译综合下载,使用RS232串口,在每次复位时,对RAM的明文和初始密钥进行重新配置,利用串口输出验证结果。实验结果均正确。

  结语

  针对8051现有的RAM内部数据缓存不能满足实际应用要求的现况,本文给出了一种新的对内部RAM高128字节的扩展实现方案,并以此为基础,对内部RAM进行了64 KB的扩展设计;通过了相应的软、硬件仿真测试,验证了设计的正确性。

  参考文献

  [1] http://oregano.at/ip/ip12.htm.

  [2] 吴炳胜,王桂梅,等.单片机原理与应用[M]. 北京: 冶金工业出版社,2001.

  [3] 卢毅,赖杰.VHDL与数字电路设计[M]. 北京:科学出版社.2001:99139.


上一页 1 2 下一页

关键词: IP核 RAM 80C51 寄存器

评论


相关推荐

技术专区

关闭