我看芯片gpmc地址线只有11根。那如果我需要32M的norflash那怎么接线啊?
还有一个问题,如果SPL与uboot.img都从norflash启动,那首先ROM code起来之后,通过哪些方式能把SPL与uboot放在norflash里?能通过网口吗?
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
我看芯片gpmc地址线只有11根。那如果我需要32M的norflash那怎么接线啊?
还有一个问题,如果SPL与uboot.img都从norflash启动,那首先ROM code起来之后,通过哪些方式能把SPL与uboot放在norflash里?能通过网口吗?
AM335x的GPMC地址线不止11根啊,8bit 位宽接法时有28根,16bit位宽接法时有27根。最大可以接512MB的size。
建议你查看一下TRM手册的7.1 GPMC章节,里面的GPMC Pin Multiplexing Options框图描述的比较详细了,总得来说根据你用更多nor flash是8bit位宽还是16bit位宽,是想接成复用模式的,还是想非复用模式,有不同的接法。
首先,在使用norflash启动时候,因为norflash支持XIP,所以如果是跑linux的话,只需要编译出u-boot.bin文件,放入norflash运行即可。不是用MLO(SPL)和uboot.img。
你说到的把相关的image(u-boot.bin)放到norflash里面,有很多种方式,网口,usb口,SD卡,之类的都可以。思路是启动进入到了uboot里面后,直接写进去就可以了。如果是要量产的方式,建议你,可以参考下面这两个帖子里面的方法:
网口:http://www.deyisupport.com/question_answer/dsp_arm/sitara_arm/f/25/t/51935.aspx
usb口:http://www.deyisupport.com/question_answer/dsp_arm/sitara_arm/f/25/t/52381.aspx
你好:
很感谢你的回答,还有疑问:
1. AM335x的GPMC地址线总共是27根,其中包括15根数据地址复用线(GPMC_AD1~GPMC_AD15),目前我们用的16bit位宽的norflash,没有用nandflash,但有ddr3的外部RAM。如果norflash用32M或更大M的size,是不是必须要用复用模式,即用15根地址复用线(GPMC_AD1~GPMC_AD15)?
2. 我看到TRM里面定义,在配置lcd_data0~lcd_data15功能口时也设置在模式1中定义为地址线(共16根),这个与GPMC中连接地址是相同的吗?
1. 和你先理清一个概念:在AM335x,和DDR3这种外部的RAM对接的接口是EMIF, 和NORFLASH,NAND flash之类的接口是GPMC。感觉在你的回复中,DDR3的这种外部RAM和norflash搅合在一起了。所以,你选取的norlfash size大小和DDR3的大小没啥关系;再者和复用、非复用模式的选取也没有直接关系。
需要说明的一点是:对于NORFLASH,复用、非复用的选择,是基于你当期的pinmux分布来规划的,如果pin脚不够用,就使用复用的模式了,如果pin脚充裕,可能会选择非复用。两种模式相比,寻址空间是一样的。但是复用模式从硬件设计上多了一个锁存器。可以参考ICEv2的EVM板进行设计:http://processors.wiki.ti.com/index.php/AM335x_Industrial_Communications_Engine_Board_Design_Files
2. 对的,不过这只是GPMC的可选配置之一,还有另外一组可以配置,避开这种冲突。建议你先下载pinmux工具,规划好当前设计的pinmux,这种问题就比较容易解决了。