打印
[i.MX]

对引脚复用中的菊花链等一些疑问?

[复制链接]
1611|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
本帖最后由 chaoswosting 于 2014-10-5 15:43 编辑

     最近在看 i.MX_6Quad_6Dual_Reference_Manual_(Rev_D).pdf 文档中的第四章 “Chapter 4
External Signals and Pin Multiplexing”。 全章只有四个表格,但是我对这几个表格中的某几个列不太理解,希望大侠帮忙指点一下!!

     对每个表的介绍。


紧接着就是4张表。
表一:

表二:

表三:

表四:


表格如上图,问题也有数字标明。

问题一:表二中一个port对应于两个pad,这个怎么理解?
问题二:表三中的 protocol 指的是什么?
问题三:表三中 IN Pin 代表的是内部的引脚名?
问题四:表三中哪里体现了“Daisy Chain”这个链?
问题五:表四中“Daisy Chain”跟表三中的是否是一个东西?

希望各位能根据自己的理解给点指点,先谢谢了!





QQ截图20141005153115.png (80.69 KB )

QQ截图20141005153115.png

相关帖子

沙发
FSL_TICS_Rita| | 2014-10-8 09:39 | 只看该作者
楼主你好,请耐心等待哈,你这里问了好几个问题,我确认完后给你一一回复哈。

使用特权

评论回复
板凳
aeromoon| | 2014-10-8 11:08 | 只看该作者
关于"daisy chain"可以参考BSP porting guide中关于寄存器的描述:
"Daisy Chain" control registers (IOMUXC_<Instance_port>_SELECT_INPUT)-
control the input path to a module when more than one pad may drive the module's
input。另外可以参考RM手册,其中有关于DAISY CHAIN 的描述,具体应该在IOMUX那一章里,37.3.3 Daisy chain - multi pads driving same module input pin

比如你要用到AUD4_RXD这个信号,其芯片外部显示的管脚名(也就是PAD名)有DISP0_DAT23或者SD2_DAT0这两个管脚可以当做AUD4_RXD来使用(首先要用到管脚的MUX功能,然后通过"Daisy Chain" control registers指定要用哪个PAD作为AUD4_RXD这个信号使用),也就是说有两个外部管脚对应到AUD4_RXD这个信号上,一个PORT对应两个PAD。
附件有个图,你看一下:

daisy chain.png (36.91 KB )

daisy chain.png

使用特权

评论回复
地板
aeromoon| | 2014-10-8 11:28 | 只看该作者
问题一:一个内部信号输入(AUD4_RXD),连接到两个外部管脚(也就是PAD名DISP0_DAT23,SD2_DAT0),可以通过DAISY CHAIN寄存器来选择使用哪个PAD作为AUD4_RXD的信号输入。
问题二,问题三:不清楚
问题四:跟问题一差不多,一个PORT对应的几个PAD。比如AUD4_TXD这个port , 可以选择SD2_DAT2作为AUD4_TXD用,也可以选择DISP0_DAT21作为AUD4_TXD用。
问题五:表四中的“Daisy Chain”指的是一个PAD对应的几个Daisy Chain寄存器。

使用特权

评论回复
5
FSL_TICS_Rita| | 2014-10-8 13:33 | 只看该作者
感谢3楼朋友的热心回答啊,正解,赞~~

使用特权

评论回复
6
chaoswosting|  楼主 | 2014-10-8 21:52 | 只看该作者
aeromoon 发表于 2014-10-8 11:28
问题一:一个内部信号输入(AUD4_RXD),连接到两个外部管脚(也就是PAD名DISP0_DAT23,SD2_DAT0),可以通 ...

非常感谢详细的解答,我要好好再看一下芯片手册来理解一下。

使用特权

评论回复
7
chaoswosting|  楼主 | 2014-10-8 22:06 | 只看该作者
aeromoon 发表于 2014-10-8 11:08
关于"daisy chain"可以参考BSP porting guide中关于寄存器的描述:
"Daisy Chain" control registers (IOMU ...

还有一个问题需要请问一下,MUXC寄存器中第4位 SION 位的作用是什么呢? 只是在调试的时候才会用到的吧?

使用特权

评论回复
8
aeromoon| | 2014-10-9 09:42 | 只看该作者
chaoswosting 发表于 2014-10-8 22:06
还有一个问题需要请问一下,MUXC寄存器中第4位 SION 位的作用是什么呢? 只是在调试的时候才会用到的吧? ...

你在RM手册中IOMUXC 那一章 随便搜一个比如IOMUXC_SW_MUX_CTL_PAD_SD2_DATA2寄存器,看一下SION的说明,其中第已经说的很明确了:
Force the selected mux mode input path no matter of MUX_MODE functionality.
1 ENABLED — Force input path of pad SD2_DAT2.
0 DISABLED — Input Path is determined by functionality of the selected mux mode (regular).
正常SION这个位的值默认为0,那么这个管脚的功能就以下面MUX_MODE中的值决定,比如MUX_MODE的值为“001”那么这个管脚就被用作ECSPI5_SS1,说白了默认就是可以使用管脚的复用功能(MUX MODE),这个管脚除了当做SD2_DAT2来用也可以通过MUX_MODE选择用作其他管脚使用。
如果SION这个位值设置为1,那么强制这个管脚的功能为SD2_DAT2,无论你下面MUX_MODE怎么设置,这个管脚都智能用作SD2_DAT2,与MUX_MODE无关了。
至于你说的是不是调试用,我就不清楚了。

使用特权

评论回复
9
chaoswosting|  楼主 | 2014-10-12 17:37 | 只看该作者
aeromoon 发表于 2014-10-9 09:42
你在RM手册中IOMUXC 那一章 随便搜一个比如IOMUXC_SW_MUX_CTL_PAD_SD2_DATA2寄存器,看一下SION的说明, ...


    非常感谢你这么热心的回复,又重新看了一遍代码和手册,现在基本上都明白了,不过对这个SION位还是不能理解。
    到目前为止,都没遇到过需要自己修改寄存器的配置的情况,都是使用代码里面配置好的。所以不理解好像也不影响使用。

在手册中找了几处SION的说明



     在“SW Loopback through SION Bit”中介绍的是 “ force the input path to be active (ipp_ibe==1'b1) regardless of the value driven by the corresponding module.”,这个input path指的是什么?我理解好像就是Daisy Chain选择的哪个pads!
     在第一张图中,ALT0、ALT2、ALT4和ALT6模式下,在代码里面SION都会被设置为1,对你这句话
“说白了默认就是可以使用管脚的复用功能(MUX MODE),这个管脚除了当做SD2_DAT2来用也可以通过MUX_MODE选择用作其他管脚使用。
如果SION这个位值设置为1,那么强制这个管脚的功能为SD2_DAT2,无论你下面MUX_MODE怎么设置,这个管脚都智能用作SD2_DAT2,与MUX_MODE无关了”
不是很理解,SD2_DAT2是一个pad的名字,而IOMUXC寄存器是把SD2_DAT2配置成 ECSPI5_SS1 、**或者gpio模式,你说的”这个管脚都智能用作SD2_DAT2“是什么意思呢? 对这个实在不能理解。
     




使用特权

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

本版积分规则

27

主题

180

帖子

1

粉丝