IMX6硬件设计指南与硬件启动
- 格式:pptx
- 大小:5.69 MB
- 文档页数:68
IMX6uboot的启动流程⽹上看了后,做了个记录,主要是⼀个流程,具体代码没有分析,有空再细看。
cpu在上电之后,它们会⼲些什么?答:检查电压⼤⼩,确定启动模式等。
简单的检查之后呢?答:⼀般从固化在cpu内部的rom⾥⾯执⾏⼀⼩段code。
这⼀⼩段code具体做了些什么呢?各个cpu⼚商会不同,具体我也不知道。
但是我们应该知道,这⼩段code必须完成确认启动模式,并初始化启动设备,搬移烧录在启动设备⾥⾯的代码到ddr⾥⾯。
ok,搬移了代码后,cpu如何识别代码?将doc,txt⽂件烧进去⾏么?答:当然不⾏,烧录的⽂件也是有格式要求的。
格式在哪⾥定呢?稍等,先要知道⽣成的uboot.bin⽂件需要有个指导⽂件,就是uboot.lds,它的作⽤是在编译过程中,决定各个可执⾏程序段的位置。
其代码如下:1 OUTPUT_FORMAT("elf32-littlearm", "elf32-littlearm", "elf32-littlearm")2 OUTPUT_ARCH(arm)3 ENTRY(_start)4 SECTIONS5 {6 . = 0x00000000;78 . = ALIGN(4);9 .text :10 {11/* WARNING - the following is hand-optimized to fit within */12/* the sector layout of our flash chips! XXX FIXME XXX */13 board/freescale/mx6q_sabreauto/flash_header.o (.text.flasheader)14 cpu/arm_cortexa8/start.o15 board/freescale/mx6q_sabreauto/libmx6q_sabreauto.a (.text)16 lib_arm/libarm.a (.text)17 net/libnet.a (.text)18 drivers/mtd/libmtd.a (.text)19 drivers/mmc/libmmc.a (.text)2021 . = DEFINED(env_offset) ? env_offset : .;22 common/env_embedded.o(.text)2324 *(.text)25 }2627 . = ALIGN(4);28 .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }2930 . = ALIGN(4);31 .data : { *(.data) }3233 . = ALIGN(4);34 .got : { *(.got) }3536 . = .;37 __u_boot_cmd_start = .;38 .u_boot_cmd : { *(.u_boot_cmd) }39 __u_boot_cmd_end = .;4041 . = ALIGN(4);42 _end_of_copy = .; /* end_of ROM copy code here */43 __bss_start = .;44 .bss : { *(.bss) }45 _end = .;46 }View Code代码咱不分析,只看.text :{/* WARNING - the following is hand-optimized to fit within *//* the sector layout of our flash chips! XXX FIXME XXX */board/freescale/mx6q_sabreauto/flash_header.o (.text.flasheader)......}它的第⼀要存储的⽂件是flash_header的内容。
Quick Start GuideBased on i.MX 6ULL Applications Processor2Figure 1: Main interfaces of i.MX 6ULL EVKi.MX 6ULL MIC USB OTG USB HOSTJTAG Arduino Ethernet x 2LCDNAND/QSPI NOREMV Bluetooth ® connector (bottom side)SD Boot Device Select SwitchMicroSD/eMMC SODIMM Interface Boot Mode Select Switch DDR3L DC IN: 5 V/4 A CANON/OFFSpeakerResetDebug USBABOUT THE EVALUATION KIT BASED ON i.MX 6ULLThe Evaluation Kit (EVK) based on i.MX6ULL introduces developers to the i.MX 6ULL applications processor. To speed up development, hardware design files, tools and board support packages (BSPs) for Linux® are available at/iMX6ULLEVK.There are some peripheral boards that work with the i.MX 6ULL EVK to provide additional capabilities such as resistive touch display, EMV and Bluetooth/Wi-Fi®connectivity. Refer to / iMX6ULLEVK for further information.34The following features are available with the EVK based on i.MX 6ULL applications processor:• i.MX 6ULL applications processor with a 900 MHz ARM ® Cortex ®-A7 core • 4 GB DDR3L SDRAM, 400 MHz • 256 MB QSPI NOR Flash • eMMC (unpopulated)• NAND flash (unpopulated)• M icroSD ® connector • SD connector• LCD expansion port connector • USB OTG connector • USB Host connector• 3.5 mm audio stereo headphone jack • Board-mounted microphone• L/R speaker connectors• Two 10/100 Mbit/s Ethernet connectors • CAN bus connector • Sensors including:- three-axis accelerometer - Digital compass - Gyroscope (unpopulated)• JTAG 20-pin 2.54 mm connector • Debug port for ARM Cortex-A7 core via USB micro-B connector • Bluetooth connectorFEATURES5GETTING STARTEDThis section describes how to use the evaluation kit and the required accessories to develop applications using the evaluation kit.1Unpacking the KitThe evaluation kit is shipped with the items listed in Table 1. Ensure the items are available in the i.MX 6ULL Evaluation Kit.ITEM DESCRIPTIONCPU board CPU board with i.MX 6ULL applications processor, memory, discrete powers and MicroSD card slot Base Board Peripherals and connectivity board Documentation Quick Start GuidePower Supply Output: 5 V/4 A, Plug: 2.1 mm x 5.5 mm USB Cable USB cable (micro-B to standard-A)Micro-SD cardBootable Linux imageTable 1: Contents of the i.MX 6ULL Evaluation Kit62Prepare AccessoriesThe following items in Table 2 are required to run the i.MX 6ULL Evaluation Kit.ITEMDESCRIPTIONLCD Module (optional)LCD8000-43T is the validated module, which has a 4.3 inch resistive touch screen and supports a resolution of up to 480x3(RGB)x272.Note: An LCD module is not a standard part of the evaluation kit.Table 2: Optional Equipment7ITEMDESCRIPTIONDocumentation• Schematics, layout and Gerber files • Quick Start Guide Software development tools Linux BSPsDemo imagesCopy of the latest Linux BSP images that are available to program on to the MicroSD cardTable 3: Download Software and Tools Contents8SETTING UP THE SYSTEM1Insert MicroSD CardInsert the MicroSD card into socket J301 on the CPU board (700-28617).2Connect USB Debug CableConnect the micro-B end of the supplied USB cable into debug port J1901 on the base board (700-28616). Connect the other end of the cable to a PC acting as a host terminal. If needed, the serial to USB drivers can be found at/products/mcu/Pages/USBtoUARTBridgeVCPDrivers.aspx Open the terminal window (i.e., Hyper Terminal or TeraTerm) and apply the following configuration:• Baud rate: 115200• Data bits: 8• Stop bit: 1• Parity: None•Flow control: None3Connect LCD Module (optional)Connect the FPC cable of LCD Module (LCD8000-43T) to the LCD connector J901 on base board (700-28616), which is bottom contact.Note: The LCD Module is not included in the kit. It is sold separately at /iMX6ULLEVK.4Connect Ethernet Cable (Optional)Connect an Ethernet cable to the right port of the Ethernet Jack J1501.5Connect Power SupplyConnect the plug of the 5 V power supply to the DC power jack J2001 on base board (700-28616) and slide power switch SW2001 to ON. When power is connected to the EVK, it will automatically begin the boot sequence.9Figure 3. SW601 setting for internal boot modeFigure 2. SW602 setting for internal boot mode BOOT PROCESS FOR LINUX IMAGE Boot Process• Change SW602 to D1:ON,D2:OFF (Refer to Table 4) to enter internal boot mode, and then switch SW601 to D1:OFF , D2:OFF , D3:ON, D4:OFF (Refer to Table 5) to boot from the MicroSD card, as shown in Figure 2 and Figure 3. After the board images are programmed and the boot switches are correctly configured, the system is ready to run.• Power on the EVK board.• During the boot process, there will be operating system status information scrolling on the terminal window of the PC (if connected). The Linux penguin images will initially appear in the upper left corner of the LCD screen.• When the boot process is complete, the Linux operating system (Yocto Project) will be displayed on the LCD screen.• To work from the terminal window on the host PC, press ‘Enter’ at the terminalwindow to get the command prompt. Account name: root, password none.DIP SWITCH CONFIGURATIONTable 4 shows the switch configuration of boot mode for i.MX 6ULL EVK. Internal boot is chosen as default.Table 5 shows the switch configuration of boot device for i.MX 6ULL EVK. MicroSD is chosen as default.D1/MODE1D2/MODE0BOOT MODE OFF OFF Boot From FusesOFF ON Serial DownloaderON OFF Internal BootON ON ReservedTable 4: i.MX 6ULL EVK DIP switch configuration (SW602)D1D2D3D4BOOT DEVICEOFF OFF ON OFF MicroSDOFF OFF OFF OFF QSPIOFF ON ON OFF EMMCON ON OFF ON NANDTable 5: i.MX 6ULL EVK DIP switch configuration (SW601)1011Button Functions Table 6 shows the functions of the push buttons and switches on the board.ITEMDESCRIPTIONSW2101Evaluation kit ON/OFF button• I n Yocto Project, short press and long press will only generate an interrupt, the usage could be defined by upper software.• Prolonged depress (>5 sec) will force an immediate hardware shutdown.• I f board is in the SHUTDOWN state, short press of the button will restart (boot) the system.• I f board is in the STANDBY state, short press of the button will bring the system out of standby (resume operations, no boot).SW2102Evaluation kit RESET button• Press of the button will reset the system and begin a boot sequence.SW2001Evaluation kit switch• S liding the switch to the ON position connects the 5 V power supply to the Evaluation Kit main power system.• S liding the switch to the OFF position immediately removes all power from the board.Table 6: EVK board button operations/iMX6ULLEVKNXP and the NXP logo are trademarks of NXP B.V. All other product or service names are the property of their respective owners. ARM and Cortex are registered trademarks of ARM Limited (or its subsidiaries) in the EU and/or elsewhere. All rights reserved. © 2012, 2014–2017 NXP B.V.Doc Number: IMX6ULLQSG REV 1 Agile Number: 926-29362 REV BSUPPORTVisit the i.MX community at .WARRANTY Visit /warranty forcomplete warranty information.。
IMX6UL ADC 硬件触发原理一、背景IMX6UL是一款由NXP半导体推出的高性能、低功耗的应用处理器。
该处理器具有丰富的外设接口和丰富的软件支持,适用于各种嵌入式系统设计。
其中,ADC(模数转换器)是IMX6UL处理器重要的外设之一,它可以用于对外部模拟信号的采集和转换。
二、IMX6UL ADC 概述IMX6UL中的ADC模块包含多个独立的ADC通道,每个通道可以独立进行模拟信号的采集。
ADC模块支持软件触发和硬件触发两种模式。
软件触发是通过编程的方式启动ADC采样,而硬件触发是通过外部信号触发ADC模块进行采样。
三、硬件触发原理1. 开启硬件触发模式在使用硬件触发模式前,需要通过配置寄存器将ADC模块切换到硬件触发模式。
具体的配置方法会根据不同的硬件评台而有所差异,通常需要设置相关寄存器来选择硬件触发模式并配置触发源。
2. 配置触发源硬件触发模式需要一个外部信号作为触发源,一般可以选择外部GPIO 信号、定时器触发信号或者其他外部信号作为ADC的触发源。
这需要在硬件电路设计时考虑,并将选择好的触发源连接到ADC模块的相应引脚上。
3. 触发采样当外部触发源产生触发信号时,ADC模块会在下一个时钟周期开始模拟信号的采样和转换。
在硬件触发模式下,ADC模块只有在接收到触发信号时才会进行采样,这样可以确保采样的时机和频率符合外部的要求。
4.数据处理采样完成后,ADC模块将采样得到的数字结果保存在相应的寄存器中,可以通过读取这些寄存器来获取最新的采样数据。
采样数据可以进一步送入处理器进行处理,如滤波、数据转换等。
四、应用场景硬件触发模式通常用于对模拟信号的精确定时采集,可以应用于实时控制系统、仪器仪表等场合。
一个温度控制系统需要对温度传感器的信号进行快速响应,就可以使用硬件触发模式来确保采样的时机和频率。
五、总结IMX6UL的ADC模块支持硬件触发模式,通过外部信号触发ADC模块进行采样,在某些应用场景下具有重要的意义。
摘要:本文意在介绍如何使用i.MX6系列微处理器设计和初始化DDR3。
本文将涉及原理图及PCB 布线设计规则、DDR3脚本(初始化代码)生成工具、DDR3板级校准和压力测试工具等内容。
飞思卡尔i.MX6平台DRAM 接口高阶应用指南-DDR3篇王林,黎铭安,王大东(飞思卡尔半导体)1DRAM设计注意事项飞思卡尔硬件应用团队创建了一个名为“HW Design Checking List for i.Mx6”的文档,分享i.Mx6硬件设计经验。
1.1原理图和布线设计规则设计i.MX6平台时必须遵循表1要求。
请参考以上链接的“HW Design Checking List for i.Mx6”文档了解详细信息。
设计人员应在设计前或设计时逐条检查这些项目。
设计人员必须逐条确认。
如有任何疑问或不确定之处,请寻求飞思卡尔技术支持人员的帮助。
如表2所示,“HW Design Checking List for i.Mx6”文档中包含一个名为“MX6DRAM Bus Length Check”的Excel 表格,设计者可以用来自行检查布线。
在粉色框内输入当前设计的线长参数后,如果布线违反规则,同一列内最底下的格子会变成红色。
2DDR3初始化脚本生成工具在本章中,我们将展示如何为具体设计生成DDR3初始化脚本。
由于DDR3初始化脚本有很多寄存器,配置时需要熟悉JESD79-3和电路板设计信息,因此为专用设计生成脚本是非常耗时的。
飞思卡尔应用团队总结了名为“i.Mx6DQSDL表1表3表2DDR3Script Aid”的文档,使这一工作变得轻松。
访问以下链接可获得最新的Excel 辅助工具:https:///docs/DOC-94917。
2.1如何使用脚本生成工具?目标设计原理图及其中所用的DDR3芯片数据手册都应准备妥当,以供参考。
如表3所示,在所有“橙色”和“蓝色”方格中正确输入数据。
2.1.1器件信息在芯片数据手册中可获得以下所有输入:制造商:在此行中键入芯片厂商名称。
D-CHIP i.MX6 开发板安装Android系统方法详细教程一、烧写系统●将i.MX6开发板通讯OTG与电脑的USB口连接;开发板OTG与电脑主机的USB口连接●将核心板上的2PIN拨码开关调为1:OFF,2:OFF。
核心板的2PIN拨码开关设置为全部关闭●在鼎芯科技下载的Android包对应的系统版本中运行相应的MfgTool2对系统进行系统烧写。
运行MfgTool2.exe程序未给i.MX6开发板通电时,软件为识别到设备的接入,显示为No Device Connected.给i.MX6开发板通电后,软件将会识别到设备的接入,并提示HID-compliant device.点击“Start”按钮,执行系统的烧写在软件对开发板烧写过程中,由于数据复制到eMMC存储芯片过程,系统将提示磁盘格式化提示,直接“取消”或者不予理会。
一直等到完成烧写并提示“Done”后,点击“Stop”退出软件,至此,系统已经烧写成功。
●完成烧写工作后,断开电源,并将核心板的2PIN拨码开关恢复原来状态1:ON,2:OFF将核心板的2PIN拨码开关设置为1:ON ;2:OFF状态●接入显示设备(LVDS显示屏)7寸LVDS屏幕(本屏幕作为产品选配件,需要额外购买)通过2x15排针将显示屏接入LVDS0接口接好的开发板显示屏(有木有一种帅帅的感觉?)●将i.MX6开发板的COM口与PC机电脑通讯COM口连接,用以和putty.exe进行数据交互。
开发板COM口连接PC机通讯COM口●运行putty.exe(通过网上百度搜索下载即可),实现通讯数据交互。
运行putty.exe程序在putty.exe主界面的“会话”窗口中设置如上图,“串行口”设置为您PC机COM口的端口号,“速度”处为152000,设置好以后直接按“打开”按钮进入数据侦听界面。
给i.MX6开发板接入电源,设备启动,PuTTY显示从COM口上传的数据信息,i.MX6开发板启动进入系统。
1章介绍2章启动配置SiRFatlasVI 支持多种启动介质,包括NAND flash 和SD卡以下的表格列出了各种由X_TEST_MODE[5:0]控制的启动模式,这些管脚内部没有上下拉电阻,所以在系统上电的时候没有默认值,建议使用一个0-10k 的上拉/下拉电阻。
使用电源为VDDIO_RTC。
3章供电系统VDD_core-- (5A) VDDIO--(2A) VDDIO_L—(1A) CDD_MEN—(3.5A) VCC_SYS5V-(5A) VDDIO-N,VDDIO_RTC,VSS_ADC,按照1A设计,VCC_SYS3V3 -(1A)其他的电源可以按照~1A设计滤波CSR推荐使用:17个100nF/0402 MLCC滤波电容对VDD_CORE进行滤波12个220nF/0402 MLCC电容对VDDIO_MEM其他的电源使用100nf的滤波电容进行滤波。
4章储存器特征支持DDR2/DDR3/LPDDR2器件16位数据模式支持高达512MB,A14和CS1同用.支持时钟为400MHZ的DDR2/DDR3支持时钟频率为333MHZ的LPDDR2.支持的DDR3的所有指令。
支持ODT功能工作模式数字锁相环锁环/失锁模式;DDR3/LPDDR2模式;低电压模式开关状态;原理图设计PCB layout 指导1,分组:数据组,地址组,2,滤波以及电源走线。
3,SI方面走线注意事项,3W原则,参考平面,阻抗控制等4 ,误差控制六层/八层板的 layout 指导测试点设计在接收端进行测试设计,尤其是对读,写网络的测试。
测试点必须放在靠近接收端,并且避免干扰。
差分对的测试点设计,在测试点附近放置地测试点/过孔,保证回流。
5章UART1对于使用NAND flash 和SD卡进行引导多媒体时,使用UART1下载非引导图像数据,这就意味着UART1必须用来做NAND flash和SD卡启动模型的调试接口UART1的TXD/RXD管脚可以和SB1的DP/DM管脚复用,当X_USBONL为低电平时UART1信号可以通过USB1端口这是通过判定是否使用USB(高电平,还是使用UART1(低电平),在这里USB只能是从机模式。
飞思卡尔i.MX6平台DRAM接⼝⾼阶应⽤指导-DDR3篇飞思卡尔i.MX6平台DRAM接⼝⾼阶应⽤指导-DDR3篇本⽂意于介绍基于i.MX6平台如何使⽤官⽅⼯具调试DDR3.以下内容会在本⽂中涉及:原理图及PCB版图设计规则,DDR3初始化代码⽣成⼯具,DDR3⾃校准和压⼒测试⼯具。
Contents1DRAM Design Consideration (2)2DDR3 initialization Script Generation Aid (3)3DDR Stress Test Tool (10)4Further Reading (19)1 设计DRAM 的注意事项飞思卡尔的硬件应⽤团队总结了⼀个名为 “HW Design Checking List for i.Mx6” 的⽂档来分享i.MX6硬件设计经验。
请通过以下链接来获得该⽂档: https:///doc/5cb1ce021eb91a37f0115c67.html /docs/DOC-938191.1 原理图和布线设计规则下表中的内容摘⾃“HW Design Checking List for i.Mx6”。
使⽤i.MX6平台进⾏设计时务必遵循⾥⾯的规则。
设计者应当逐条予以确认。
如有任何疑问或不确定之处,请寻求飞思卡尔的技术⽀持本们的帮助。
原理图检查清单 1i.Mx6和DDR 芯⽚的ZQ 管脚需要分别外加⼀个1%精度的240欧姆电阻到地 2提供⼀路低噪声并且等于50%NVCC_DRAM 电压值的电源给DRAM_VREF 管脚(更多细节请参考原⽂档) 3DRAM_RESET 管脚需要外接⼀个10 K 欧姆的电阻到地(更多细节请参考原⽂档) 4差分时钟端接设计规则(更多细节请参考原⽂档) 5 如果DDR3颗粒的数量少于等于四颗-PCB 顶⾯两颗底⾯两颗,建议使⽤T 拓扑结构。
如果PCB 单⾯需要部多于两颗DDR3颗粒,建议使⽤Fly-by 拓扑结构。
IAC-IMX6-Kit 嵌入式开发板硬件说明书版本号:V 1.02014年03月浙江启扬智能有限公司版权所有QIYANG TECHNOLOGY Co., LtdCopyright Reserved有任何技术问题或需要帮助,请联系:*********************** 第2页 共27页 购买产品,请联系销售:********************更多信息请访问: 版本更新记录有任何技术问题或需要帮助,请联系:*********************** 第3页 共27页 购买产品,请联系销售:********************目 录阅读前须知:本手册主要介绍该主板的硬件接口................................................................................................ 4 一、前言 . (4)1.1、公司简介: .............................................................................................................................................. 4 1.2、IAC-IMX6-Kit 开发/评估板的使用建议: ............................................................................................ 4 二、系统组成 .. (5)2.1、芯片概述 .................................................................................................................................................. 5 2.2、主板资源 .................................................................................................................................................. 6 三、接口功能 .. (8)3.1、基本接口功用说明 .................................................................................................................................. 8 3.2、跳线拨码设置 ........................................................................................................................................ 10 3.3、接口引脚定义 ........................................................................................................................................ 10 四、软件描述 ......................................................................................................................................................... 26 五、附注 .. (26)阅读前须知:本手册主要介绍该主板的硬件接口一、前言1.1、公司简介:浙江启扬智能科技有限公司位于美丽的西子湖畔,是一家专业研发,生产,销售高性能,低功耗,低成本,小体积嵌入式计算机主板,提供嵌入式硬件解决方案的高新技术企业。
正点原子i.mx6ull 核心板pmic_on_req电平-回复正点原子i.mx6ull核心板是一款功能强大的嵌入式处理器核心板,它具有多种应用场景,如工业控制、智能设备等。
在使用这个核心板时,我们经常会遇到一个问题,就是pmic_on_req电平的设置。
在本文中,我将一步一步回答关于这个问题的相关内容。
首先,让我们来了解一下pmic_on_req电平的概念。
pmic_on_req电平是指连接到主动电源管理集成电路(PMIC)的一个引脚,用于控制系统的供电开关。
当pmic_on_req电平为高电平时,表示需要开启供电,反之则表示需要关闭供电。
正点原子i.mx6ull核心板的pmic_on_req电平可以通过相应的引脚控制,但在使用前需要进行设置。
接下来,我们来一步一步回答如何设置正点原子i.mx6ull核心板的pmic_on_req电平。
第一步,了解pmic_on_req电平的引脚在正点原子i.mx6ull核心板的硬件设计中,pmic_on_req电平的引脚被标记为PMIC_ON_REQ。
你可以查阅核心板的硬件设计文档,找到这个引脚的具体位置。
第二步,确定pmic_on_req电平的电平正点原子i.mx6ull核心板的pmic_on_req电平通常可以设置为高电平或低电平。
具体的设置方式可以通过查找核心板的相关资料来确认。
例如,你可以查阅芯片手册、核心板的用户手册或相关的开发者社区来获取相关信息。
第三步,修改设备树文件正点原子i.mx6ull核心板的设备树文件是系统启动时用于配置硬件参数的文件。
我们可以通过修改设备树文件来设置pmic_on_req电平。
具体的修改步骤如下:1. 找到设备树文件的位置。
设备树文件通常位于/boot/dts/目录下,文件名以.dts或.dtsi为后缀,例如imx6ull-coreboard.dtsi。
2. 使用编辑器打开设备树文件。
3. 在文件中查找pmic_on_req引脚的配置。