| 标题 | 阅读 | 评论 | 转发 | 发布日期 | |
|---|---|---|---|---|---|
| 论函数调用约定 | 995 | 0 | 0 | 2009-09-22 | |
| 使用CPU时间戳进行高精度计时 | 1236 | 0 | 0 | 2009-09-22 | |
| 基于AT89C52单片机的SD卡的读写设计 | 1106 | 0 | 0 | 2009-09-22 | |
| AVR的SD卡接口程序 | 1026 | 0 | 0 | 2009-09-22 | |
| SD卡读取程序 | 2619 | 0 | 0 | 2009-09-22 | |
| D卡注意事项 | 1537 | 0 | 0 | 2009-09-22 | |
| 于滤波电容、去耦电容、旁路电容作用 | 1187 | 2 | 0 | 2009-09-22 | |
| ARM映像文件简介及简单的初始化C运行环境 | 1647 | 0 | 0 | 2009-09-22 | |
| 怎样将1个子程序段定位在1个固定的地址位置 | 1143 | 0 | 0 | 2009-09-22 | |
| 谈谈在keil下的代码定位 | 5110 | 0 | 0 | 2009-09-22 | |
| SP和IAP的区别 | 848 | 0 | 0 | 2009-09-22 | |
| 关于__irq 的使用 | 649 | 0 | 0 | 2009-09-22 | |
| PC2000中断嵌套设计 nesting of interrupts in LPC2000 | 1443 | 0 | 0 | 2009-09-22 | |
| ARM处理器的SWI异常中断响应过程 | 1969 | 0 | 0 | 2009-09-22 | |
| LPC中的中断处理小结 | 2623 | 0 | 0 | 2009-09-22 | |
| ARM 软件中断原理 | 2727 | 0 | 0 | 2009-09-22 | |
| CodeWarrior的prm文件 | 2880 | 0 | 0 | 2009-09-22 | |
| 软件抗干扰经验之五:10种软件滤波方法 | 1024 | 0 | 0 | 2009-09-22 | |
| 软件抗干扰经验之四:话说指令冗余技术 | 1325 | 0 | 0 | 2009-09-22 | |
| 软件抗干扰经验之一:用“软件陷阱+程序口令”对付PC指针的弹 | 1110 | 0 | 0 | 2009-09-22 |
config20102009-11-19 20:07
外设fpga做的8k的memory,用arm9去读写它,在linux2.6系统下;这样做对吗?
实际地址映射到虚拟内存中,用得到的虚拟地址去读写。
地址总线:a1-a14 数据总线:d0-d15
#define FPGA_BASE_ADDR (0x18000000)//片选为nGCS3
#define BWSCON (0x48000000)
#define BANKCON3 (0x48000010)
#define IP_SIZE (0x1FFF)//13根地址线8K的物理空间
static void *bwscon,*bankcon3,*fpga_base_addr;
bwscon = ioremap_nocache(BWSCON,0x0000004);
bankcon3 = ioremap_nocache(BANKCON3,0x0000004);
fpga_base_addr = ioremap_nocache(FPGA_BASE_ADDR,IP_SIZE);
writel(readl(bwscon)|0xD000,bwscon);
writel(0x7FFC,bankcon3);
for(i=0;i