Phytec中国的wiki
support@phytec.cn
热线:0755-61802110-803
本文主要参考
https://wiki.phytec.com/display/DEVCN/phyCORE-i.MX6
中的硬件手册,这是我们核心板很重要的文档,做硬件设计请一定仔细阅读,以及imx6的相关文档(Hardware Development Guide 和 Datasheet),如imx6q的:
1. 硬件相关资源
- 名称:
- 核心板:PCM-058 phyCORE-i.MX6
- PCB:1429
- 开发板:PBA-C-06 phyBOARD-Mira-i.MX 6
- 开发板PCB:1434
- 核心板尺寸图:核心板硬件手册 Figure 15&16
- 对应底板使用的插座:
- 70pin座子 REF-183457-03 (VM317) x 2
- 核心板连接器资料 / SOM connector infomation
- 引脚列表:核心板硬件手册 Table 3。
- 引脚顺序/方向:核心板硬件手册 Figure 4。
- phyCORE i.MX6 核心板引脚复用、与CPU引脚对照表,可实时搜索
- Altium Designer 器件库
- 核心板贴片图:
- 核心板dxf图/step 3D图
- 3D Step 文件,请右键另存为下载或者用下载工具。
- dxf图
- 开发板 PBA-C-06 phyBOARD-Mira-i.MX 6 贴片图:
- 开发板 PBA-C-06 phyBOARD-Mira-i.MX 6 dxf图/step 3D图
- 3D Step 文件,请右键另存为下载或者用下载工具。
- dxf图
2.外设上电时序
由于imx6芯片本身需要有一定顺序上电,也就对核心板外设的上电顺序有要求。
因此要求外设不能在核心板对部IO bank供电前,向核心板的IO口输出高电平。
如需要更详细的信息,请参考
imx6 datasheet 4.2.1 Power-Up Sequence
核心板硬件手册 4.3
http://www.phytec.eu/fileadmin/user_upload/downloads/Manuals/L-808e_2.pdf
我们有两个信号可以用于控制外部的电源
信号名 | 引脚 |
---|---|
VDD_3V3_LOGIC | B5 |
X_3V3_GOOD | C27 |
VDD_3V3_LOGIC是一个PMIC的3.3V输出,最大500mA电流输出,但不推荐作为外部的电源使用,可以作为IO的参考电源或者电平转换电路的供电电源。
X_3V3_GOOD是一个输出信号。
这两个输出都是高有效,意思是高的时候需要打开外设电源。
因此外设的电源需要用这两个信号来控制。
3.RESET电路
信号名 | 引脚 |
---|---|
X_nRESET | D32 |
这是一个reset输入/输出信号。
当用于reset输入时,低有效,拉低该信号则处理器复位。
作为输入时,它已经具有去抖10ms的功能。
当用于输出时,它可以用于reset在底板上的设备,这个信号会在核心板的所有电压OK后的2ms后,被释放拉高。
我们的reset功能由一些外围器件和DA9062共同实现。
https://www.dialog-semiconductor.com/products/da9062
该芯片具有很多功能,如电压监控等。
4.启动模式选择
启动有两个配置的引脚组。
一组为
信号名 | 引脚 | 核心板板载 |
---|---|---|
X_BOOT_MODE0 | C1 | 下拉 |
X_BOOT_MODE1 | D1 | 上拉 |
这一组为专门用于启动配置的引脚,具体配置方式和作用请参考 imx6的Reference Manual。
我们核心板由电阻配置的默认启动模式是Internal Boot(10b)。
另一组是在BOOT_MODE设为0或2时,会在上电时读取的启动配置
eFUSEs BOOT_CFGx[7:0]
引脚列表请参考我们硬件手册的 6.2 Boot Device Selection and Configuration 下面是手册的截图,请以手册为准。
在核心板原理图的最后一页可以找到板载的配置信息。下图来自核心板原理图:
下图为Mira开发板通过开关切换SD启动的电路。
BOOTCFG1[7:0] | BOOTCFG2[7:0] | BOOTCFG3[7:0] | BOOTCFG4[7:0] | |
---|---|---|---|---|
NAND 4/8Gb | 1000 0011 | 0011 0010 | 0000 0000 | 0101 1000 |
NAND 16/32Gb | 1000 0011 | 0011 0000 | 0000 0000 | 0101 1000 |
eMMC 板载eMMC | 0110 0011 | 0101 1000 | 0000 0000 | 0101 1000 |
SD Mira板SD卡 | 010x xxxx | xx10 0xxx | xxxx xxxx | xxxx xxxx |
板载 SPI Flash | 0011 xxxx | xxxx xxxx | xxxx xxxx | x101 1000 |
在imx6的reference manual的8.5章节,有关于这个配置的具体情况:
另外在 reference manual的8.9章节,描述了如果主启动失败后,会从SPI启动的配置。我们的核心板,默认是这样的配置。
这些引脚在生产时,可以通过烧写熔丝来使得imx6启动不依赖于这些引脚,但在开发时,推荐将这些信号做隔离从而可以选择启动方式。
启动引脚隔离电路举例 / Examples on boot pin isolation
熔丝的烧写可以由我们来完成,具体请联系我们业务部门。
5.网口电路接法
imx6在核心板集成了phy芯片,芯片型号为 KSZ9031RNX。
该phy是一个千兆的phy,在microchip的网站可以找到它的参考电路
http://www.microchip.com/DevelopmentTools/ProductDetails.aspx?PartNO=KSZ9031RNX-EVAL
其中h5007nl和SS-6488S-A-FLS-50的原理图:
虽然phy对LED引脚有上拉要求,但核心板有做隔离,因此不需要外部电路再做上拉,只需要接LED即可,开发板参考电路:
我们使用的千兆RJ45座子内部原理图:
百兆:
另外请参考
Micrel AN 31 - General PCB Design and Layout Guidelines
6.USB口注意事项
请详细阅读
Hardware Development Guide for i.MX 6QuadPlus, 6Quad, 6DualPlus, 6Dual, 6DualLite, 6Solo Families of Applications Processors
https://www.nxp.com/doc/IMX6DQ6SDLHDG
- VBUS需要外部提供5v
- 如果是OTG,VBUS需要芯片切换
- 所有的引脚包括VBUS需要用ESD保护器件,VBUS钳位到5.25v,其他3.3~3.5v
7.核心板已使用的/未引出的IO口
A.I2C3
使用的是i2c3,从SOC的R4和T3引出,并没有引出到SOM的外部接口。
该i2c接口接有EEPROM,PMIC。
信号名 | CPU引脚 | 核心板引脚 |
---|---|---|
I2C3_SCL | R4 | N/A |
I2C3_SDA | T3 | N/A |
B.SPI(ECSPI1)
ECSPI1用于连接板载的SPI flash。
信号名 | CPU引脚 | 核心板引脚 |
---|---|---|
ECSPI1_SS1(未引出) | G21 | N/A |
X_ECSPI1_MISO | F21 | B25 |
X_ECSPI1_MOSI | D24 | A23 |
X_ECSPI1_SCLK | C25 | A22 |
SPI_NOR_nWP/GPIO1_12(未引出) | B22 | N/A |
C.SD4
SD4接口用于连接EMMC,未引出。
信号名 | CPU引脚 | 核心板引脚 |
---|---|---|
SD4_DAT[0:7](未引出) | D18,B19,F17,A20,E18,C19,B20,D19 | N/A |
D.NAND接口
用于连接NAND
信号名 | CPU引脚 | 核心板引脚 |
---|---|---|
NANDF_D[0:7](未引出) | A18,C17,F16,D17,A19,B18,E17,C18 | N/A |
NANDF_CS[0:3](未引出) | F15,C16,A17,D16 | N/A |
NANDF_ALE(未引出) | A16 | N/A |
NANDF_CLE(未引出) | C15 | N/A |
NANDF_WP_B(未引出) | F16 | N/A |
NANDF_RB0(未引出) | B16 | N/A |
NANDF_RDN(未引出) | B17 | N/A |
NANDF_WRN(未引出) | E16 | N/A |
E.ENET的RGMII
核心板使用ENET的RGMII接口连接ksz9031提供网络接口。
信号名 | CPU引脚 | 核心板引脚 |
---|---|---|
RGMII_TXC(未引出) | D21 | N/A |
RGMII_RXC(未引出) | B25 | N/A |
RGMII_TD[0:3](未引出) | C22,F20,E21,A24 | N/A |
RGMII_RD[0:3](未引出) | C24,B23,B24,D23 | N/A |
RGMII_TX_CTL(未引出) | C23 | N/A |
RGMII_RX_CTL(未引出) | D22 | N/A |
X_ENET_MDC | V20 | B20 |
X_ENET_MDIO | V23 | B19 |
ENET_REF_CLK(未引出) | V22 | N/A |
X_ENET_TX_EN | V21 | B67 |
F.DSI接口
DSI接口未引出
信号名 | CPU引脚 | 核心板引脚 |
---|---|---|
DSI_CLK0 | H4,H3 | N/A |
DSI_D0 | G1,G2 | N/A |
DSI_D1 | H1,H2 | N/A |
DSI_REXT | G4 | N/A |
G.其他
其他未引出引脚
信号名 | CPU引脚 | 核心板引脚 | 用途 |
---|---|---|---|
SD2_CMD | F19 | N/A | PMIC gpio |
SD2_CLK | C21 | N/A | PMIC gpio |
SD2_DAT0 | A22 | N/A | |
SD2_DAT1 | E20 | N/A | ethernet phy reset |
SD2_DAT2 | A23 | N/A | eeprom wp gpio |
SD2_DAT3 | B22 | N/A | spi nor wp gpio |
CLK2 | D5,C5 | N/A | |
GPIO_2 | T1 | N/A | PMIC IRQ |
GPIO_4 | R6 | N/A | LED on SOM |
H.DRAM接口
用于连接DDR内存。
8.调试串口
默认的调试串口是uart2,bootloader 和 Linux kernel 都会使用这个接口。
信号名 | CPU引脚 | 引脚 |
---|---|---|
X_UART2_TX_DATA | E24 | B21 |
X_UART2_RX_DATA | E25 | A17 |
9.固定引脚接口列表
接口 | 核心板引脚 |
---|---|
LVDS[0:1] | C59,C60,C61,C62,C64,C65,C66,C67,C69,C70 D58,D59,D60,D61,D63,D64,D65,D66,D68,D69 |
MIPI_CSI | C30,C31,C33,C34,C35,C36,D27,D28,D29,D30 |
MIPI_DSI | 未引出 |
PCIE | C11,C12,C13,C14,D10,D11 |
SATA | C8,C9,D8,D9 |
USB | C19,C23,C24,D19,D20,D22 |
HDMI | C39,C40,C41,C42,D33,D34,D35,D37,D38 |
DRAM | 未引出 |
TAMPER | D70 |
10.LCD接法
lcd接法参考imx6数据手册的Table 60:
11.ENET信号电平
ENET这部分默认电平为2.5V,详细情况请阅读硬件手册。