打印

FPGA外设的架构设计

[复制链接]
1319|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
leasor|  楼主 | 2012-8-15 07:48 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
沙发
shell.albert| | 2012-8-15 09:02 | 只看该作者
使用FPGA可以自己定义的吧。
既然你使用了AHB、APB总线规范,那就按照它的时序来操作吧。

使用特权

评论回复
板凳
leasor|  楼主 | 2012-8-15 10:57 | 只看该作者
终于通了,申请加精,不过这是pc io的处理方式。

系统设计者的主要目的是提供对I/O编程的统一方法,但又不牺牲性能。为了达到这个目的,每个设备的I/O 端口都被组织成一组专用寄存器。CPU把要发给设备的命令写入控制寄存器(control register),并从状态寄存器(status register)中读出表示设备内部状态的值。CPU还可以通过读取输入寄存器(input register)的内容从设备取得数据,也可以通过向输出寄存器(output register)中写入字节而把数据输出到设备。

-----------------------------------------------------------
也就是说ram(或是sdram,本质上是一样,只不过针对不同的控制器),在ram控制器中有一张表(虚拟出来的),
0x1000 uart控制寄存器
0x1001 uart状态寄存器
0x1002~0x1021 uart tx寄存器
0x1022~0x1031 uart rx寄存器

这两种寄存器的读取方式稍有不同,由于控制和状态寄存器一般的数据量不太,所以采用映射的方式,如图1,而tx,rx寄存器有点大,有些mcu tx,rx的缓冲能达到512byte,所以采用通常的读写方式,对处理内核来说是一种负担,并且会造成处理资源的浪费,所有一般都dma的方式。如图2.



使用特权

评论回复
地板
GoldSunMonkey| | 2012-8-15 18:47 | 只看该作者
这是什么呢?

使用特权

评论回复
5
leasor|  楼主 | 2012-8-15 19:33 | 只看该作者
呵呵,处理内核都是通过对ram或是内存的读写,来实现对io控制器的读写。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

37

主题

163

帖子

0

粉丝