CME-M5 外部存儲器接口(EMIF)總線使用指南
一、EMIF總線概述
本文引用地址:http://www.j9360.com/article/145142.htm外部存儲器總線(EMIF, External Memory Interface)總線是京微雅格(CME)的8051硬核與FPGA之間的并行8位總線接口,主要的信號有6個,分別為:
- memaddr[22:0]:23位地址總線,對應8M地址空間;
- memdatao[7:0]:8位數據輸出總線;
- memdatai[7:0]:8位數據輸入總線;
- memrd:總線讀信號;
- memwr:總線寫信號;
- memack:總線應答信號;
與EMIF操作時序有關的8051的內部寄存器為CKCON寄存器,一般8051的初始化程序需要在主函數的初始化更改該寄存器的初始化值,以實現最快的總線訪問效率。
1. EMIF總線相關的MCU寄存器:CKCON
CKCON主要作用是設置存儲器地址總線memaddr[22:0]和讀寫memwr/ memerd信號的寬度,已實現對不同外設時序的操作,若寬度仍不夠,也可以通過memack實現硬件延時,理論上可以實現任意寬度的地址總線地址和讀寫信號。
CKCON寄存器的默認值為:0x71


通過設置CKCON的第4-6位,可以改變CPU的運行效率,最小值是001,不可設置為000;當設置為111,運行的效率最慢;所以推薦客戶在CPU開始運行就改變4-6位的值為001,以使CPU運行的效率最快。

通過設置CKCON的第0-2位,可以改變EMIF總線的memrd,memwr,memaddr的寬度,最小值是000,對應memrd,memwr,memaddr的寬度為1個時鐘周期;當設置為111時,對應memrd,memwr,memaddr的寬度為8個時鐘周期;所以推薦客戶在CPU開始運行就改變4-6位的值為000,以使EMIF總線訪問的效率最快。
所以推薦用戶在8051主程序程序一開始就改變CKCON的值為0x10。
評論