完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
1、SOC寄存器外设地址集合 之前,说明了,当外部需要增加寄存器的时候,需要更改总线互联模块。在总线互联模块中对于读数据和使能信号是每一个寄存器都有一个连线和总线互联模块相连的,如果寄存器比较少,似乎是没有什么问题。但是如果外接的寄存器有几千,几万个呢?那这一块的电路可真是不敢想象了,基本上做不出来,因为要做出来的话,面积太大了,你想象一下,一个多路选择器,有几千几万个输入,这怎么实现? 所以真正的SOC,肯定不能像我们之前说的那样设计,一个寄存器一个寄存器的考虑,而是要考虑整体。我们知道,SOC要驱动的其实是一个模块,比如串口模块,SDRAM模块,SPI模块等等。但是要驱动模块的话,是要去控制模块的寄存器。所以这个时候,使能信号不考虑给模块的每个寄存器,只考虑给模块,同样,读数据也是一样的,不考虑只给模块的每个寄存器,只考虑模块。按照这个思路下来,那使能信号电路和读数据电路是不是就要好设计了一些,因为一个SOC,模块就那么多,总线互联译码设计就比较容易了。那么怎么对对应的寄存器操作了,这个就交给模块自己来做就行了。 总线互联模块通过CPU发出的地址,判断该地址是属于哪个模块的,然后将对应模块的使能信号使能,将读数据选择连接到模块的读取数据线。模块检测有模块使能信号时,再根据CPU发出的地址信号,判断是对自己的哪一个寄存器进行操作,然后再进行操作。这样,就简化了总线互联的设计。
原作者:卢骏
|
|
基于米尔MYC-LR3576开发板的实时视频识别系统设计与实现
304 浏览 0 评论
飞凌嵌入式ElfBoard-文件I/O的深入学习之阻塞I/O与非阻塞I/O
466 浏览 0 评论
大神们,想知道你们都用什么ide编程调试器? Arduino IDE?还是 e2studio ?还有其他吗?哪个好用呢
580 浏览 0 评论
865 浏览 0 评论
837 浏览 0 评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-3 15:08 , Processed in 0.672707 second(s), Total 68, Slave 48 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖