中科因仑“3+1”工程特种兵精英论坛
标题: AM335X nor flash启动设计注意要点 [打印本页]
作者: leixiaofeng 时间: 2015-5-23 14:40
标题: AM335X nor flash启动设计注意要点
[size=13.8461542129517px]1. 关于nor flash启动的信息
[size=13.8461542129517px]可以参考TRM的26.1.7.2 XIP Memory章节,在这里就不详述了。
[size=13.8461542129517px]2. 设计时注意点
[size=13.8461542129517px]由于AM335X的管脚有限,所以在应用中许多客户会考虑采用GPMC数据线/地址线复用的方式连接外部的nor flash。这样可以将GPMC_AD[15:0]即作为16bit数据线,又作为低16bit的地址线。
[size=13.8461542129517px]那在这种情况下,针对具体设计,需要注意哪些地方?
[size=13.8461542129517px]在上述应用中,GPMC_AD会从即作为16bit数据线,又作为低16bit的地址线;从TRM的Table 7-5. GPMC Pin Multiplexing Options表格中可以知道,GPMC_A[10:1]会作为nor flash的高位地址线。而GPMC_A[10:1]存在两种复用方式,即可以将AM335X的pinmux mode0的这一组pin复用为GPMC_A[10:1],也可以将另一组复用为GPMC_A[10:1]。
Signal
| ZCZ Pin Map(Pinmux mode0 )
| ZCZ Pin Map (Pinmux mode1 )
|
GPMC_A1
| V14
| R2
|
GPMC_A2
| U14
| R3
|
GPMC_A3
| T14
| R4
|
GPMC_A4
| R14
| T1
|
GPMC_A5
| V15
| T2
|
GPMC_A6
| U15
| T3
|
GPMC_A7
| T15
| T4
|
GPMC_A8
| V16
| U5
|
GPMC_A9
| U16
| R5
|
GPMC_A10
| T16
| V5
|
[size=13.8461542129517px]针对上述的两种连接,设计原理图时,需注意。
[size=13.8461542129517px](1)采用pinmux mode0组的连接时,需注意
[size=13.8461542129517px] (a)latch需要采用上升沿锁存的,而不能使用电平锁存的。这是由于AM335x内的ROM CODE在nor flash启动时,有一组固定的GPMC时序。
[size=13.8461542129517px] (b)高位地址线需要作下拉处理。由于ROM CODE在nor flash启动时,只对GPMC_AD[15:0]进行了初始化,而未对GPMC_A[10:1]进行。如果需要ROM CODE在启动初期时能够正确看到nor flash的地址空间,需要对高位地址线作下拉处理。
[size=13.8461542129517px]
[size=13.8461542129517px](2) 采用pinmux mode1的连接时,需注意
[size=13.8461542129517px]由于此时GPMC_A[10:1]与LCD_DATA复用,而LCD_DATA又在启动初期作为SYSBOOT管脚使用,在其管脚上会根据启动序列的选择存在相应的上下拉。这就与(1)中要求的nor flash启动初期需要对GPMC_A[10:1]一直保持下拉存在冲突。所以在这种应用下,需要增加一个bus transceiver对两者进行隔离。见下图。
[size=13.8461542129517px]
[size=13.8461542129517px]由于SYSBOOT的管脚状态只有在PORz的上升沿才会读取。而warm reset的输入管脚nRESET_OUT会在PORz完成后持续一段时间低电平,可参考TRM的Figure 8-19. PORz。所以可以通过此信号来作为Bus transceiver的控制信号。当nRESET_OUT为低时,根据SN74AVC32T245的逻辑,连接在总线上的信号会是A到B,期间PORz信号的上升沿触发时段,可以读取SYSBOOT的管脚状态。当nRESET_OUT持续一段时间低电平后,其电平会变为高,此时Bus transceiver则会将A侧的GPMC_A[10:1]与B侧SYSBOOT的上下拉隔离开。
欢迎光临 中科因仑“3+1”工程特种兵精英论坛 (http://bbs.enlern.com/) |
Powered by Discuz! X3.4 |