Versions Compared
Key
- This line was added.
- This line was removed.
- Formatting was changed.
This page provides specific information to consider before you start your Opal-6 design.
Please contact our support team with any questions you have during the design process and use our free design review when you have finished your design.
Starting a Design - using the IOMux tool
The i.MX6 can be confusing to design with as it uses a multiplexer to assign up to 8 different functions to each IO pin.
Freescale provides an IOMux tool (available on the i.MX6 "Software & Tools" tab, under "Software Development Tools -> Initialization/Boot/Device Driver Code Generation") which makes it easy to sort through these options.
For Opal-6 we have two IOMux files that we have generated for the Opal CPU Module and the Opal Development Kit:
- Opal-6 SoM IOMux File (in development)
- Opal-6 Development Kit IOMux File (in development)
In the case of the CPU Module file, this shows which pins have been used on the module and should be your starting point. All the pins NOT SELECTED are available on the interface for you to use in your design. The Development Kit file is a good reference to see which pins we used for the different functions in the kit.
The IOMux file you generate is also an excellent way to document your design, and is very useful for software developers when setting up Operating System images and device drivers.
Reference Designs
Where possible, we encourage you to use our development kit as a starting point for your design.
The advantages are:
- It minimizes software changes
- We are familiar with the circuit so can assist with debugging your design
- You have less design work to do!
We also encourage you to use the library symbols for the module, and development kit schematics, available from our web site.
Booting
Opal-6 boots from:
- On-board eMMC
- SD Card (SD2 controller)
- USB (for programming eMMC)
Other boot sources are possible, but not tested. Please contact use if you need something other than these options.
Several pins must be configured correctly in order for Opal to boot correctly. The following table includes the pins involved in the boot process and how they should be configured.
Signal | Boot Function | NAND Boot | SD Boot | |||
---|---|---|---|---|---|---|
BOOT_MODE0 |
| Main boot setting: | 11 Boot from USB
| |||
BOOT_MODE1 |
|
| 11 Boot from USB | |||
BOOT_CONFIG_1 | BOOT_CFG1[75] | 1 | 0 | |||
BOOT_CONFIG_2 | BOOT_CFG1CFG2[63] | 0 | 1 | |||
BOOT_CONFIG_3 | BOOT_CFG2[4] | |||||
BOOT_CONFIG_4 | BOOT_CFG2[5] | 0 | 0 (SD boot) | |||
BOOT_CONFIG_5 | BOOT_CFG2[6] |
Note |
---|
|
Connectors
Opal-6 uses 2 x 168-way Hirose FX10A-168S-SV.
The corresponding mating connector is: FX10A-168P-SV1(71).
Debug and Programming Connections
Even if you design does not need the following, we recommend you provide a way of accessing these connections in order to successfully debug during development and program during production.
Boot Switches | If your design boots from NAND flash, you should include at least the switch to enable USB boot for programming. Including switches to also allow SD boot will provide more options for programming during manufacture. |
---|---|
Serial Port | One serial port should be accessible for debug. UART4 is used on our development kit so should be your first choice. |
USB OTG Port | This port should be available in USB function mode if your design boots from NAND flash. This is required to program the flash. |
Ethernet | Ethernet is useful for download and debug, and required for Windows Embedded Compact designs. |
Layout Recommendations
The development kit schematics include layout recommendations and these should be added to your own design.
The development kit board is 8-layers and it is likely that you will need at least 6 layers - or more if your device includes a lot of I/O.
Warning |
---|
When creating a PCB footprint, ensure:
Failure to do the above may result in the connectors not being located correctly relative to each other. This will cause stress on the connector and solder joints will break or become unreliable |
Panel | ||
---|---|---|
| ||
|