如何设计Connectcore 95和ConnectCore 8m mini的兼容板卡
当我们开始一款硬件设计时,最完美的方案就是在满足性能要求的情况下,尽可能有更多的模块可兼容贴片设计。这在ConnectCore系列产品是很方便的。不过当我们使用smartIOmux设计Connectcore 95和ConnectCore 8m mini时,会发现,怎么很多资源都看不到了?事实上,由于ConnectCore 95很新,相关的支持还在更新中,而由于8m mini有许多设计是放在开放板而非模块上,所以不能只从设计文件上看资源。
不过为了完美设计,通常需要创建三个设计文件,CC8m_mini, CC95和cc95_8m_mini,分别设计时,最终让三个设计文件的引脚不发生冲突即可。
举个粟子:
LVDS如何添加?
因为ConnectCore 8m mini是通过MIPI DSI接口来转LVDS和HDMI,当你选中兼容设计时,是看不到显示接口,但我们仍可以应用,因为cc8m mini和CC95的MIPI DSI焊盘接口完全一样,只不过CC95有原生的LVDS,所以在做兼容设计时,我们可以让CC8m mini使用DSI转LVDS,而对于CC95,用它原生的LVDS焊盘,或是也一样用MIPI转LVDS。特别是如果需要LVDS和HDMI双显示的情况下,使用一个MIPI DSI接口即可。如果我们想用原生的lvds,则在画板时可用一个通道选择开关控制来让哪种信号连到LVDS物理接口上。
CAN接口如何添加?
在Connectcore 8m mini上,CAN是通过桥接芯片来扩展的,而Cc95有原生的CAN FD,由上面的例子类似,我们只需添加原生CC95的CAN (在不选中兼容时可找到),而把CC8m mini的扩展的CAN接口和原生CC95的接口用同样的通道选择开关来控制连到物理CAN接口上
模拟量输入
CC8m mini没有处理器上的模拟量输入,它是使用协处理器的,在CC8m_mini的设计文件上添加模拟量输入,查看它分配到哪个焊盘,然后在CC95的设计文件中添加原生的模拟量输入,并配置两者同一个焊盘,在兼容设计文件中,为这些焊盘预留不会用的GPIO占用节点,最终以防止其它要用的接口和GPIO侵占到这些焊盘。
GPIO和其它接口选择
这是兼容设计文件的主要作用,它就是可以自动选择两种模块都有的接口并分配,只是这些接口焊盘不要侵占到上面这三种已经找出来的焊盘,而是只能用剩下可用的焊盘,这些接口就可以在两种模块的设备树中共同使用相同的节点。
在我们完成设计后,就可以用原生的CC8m mini设计文件和原生的CC95设计文件来各自处理贴片时的设备树驱动。