TI中文支持网
TI专业的中文技术问题搜集分享网站

GPMC-FPGA 问题

新项目需要用FPGA来管理16路串口中断,由于原理图上(如图),CS0接的FPGA(板子上只有SPIFLASH没有NANDFLASH),其他片子(16c554片选连接16C554)是由FPGA地址译码进行CS片选.

1.我想问一下,FPGA译码过程中是否需要把串口1-16的地址映射到GPMC空间?如果可以那么串口的地址范围怎样定义?

2.有关的CONFIG1-7_i配置如何配置

3.CS0接FPGA是否合适

Steven Liu1:

首先明确一点,你这套管理的方法,主要要解决的问题是使用FPGA和AM335x GPMC进行通信,可以通过同步或者异步的方式来进行通信。

1. 对于FPGA和AM335x的GPMC之间的通信,你先要做好地址映射。参考AM335x的datasheet的7.1GPMC章节,看GPMC_CONFIG7_i的寄存器配置,这里可以配置当前片选的地址映射区间。如果TRM手册上的不好懂,你可以看看我写的这个:http://blog.csdn.net/swallow71701/article/details/22793191

2. GPMC_CONFIG1~7里面配置的东西比较多,通信的方式、时序等等都在里面配置的,建议你对着TRM手册好好看一下寄存器说明,不难懂,只要耐心看。

3. 因为涉及到启动模式的支持问题,一般来说,片选0我们接nand flash或者nor flash比较多。在设置启动模式的时候,如果启动模式中有NAND,或者XIP,片选0会使能,Rom code会尝试和GPMC片选0上的设备进行通信。所以如果说,你不会使用NAND flash和NOR flash启动,而且,在芯片启动时,避开了NAND、XIP启动的模式(这样可以防止片选0被使能:如果你的FPGA可能会在你不想使能的时候被使能了,可能会有异常的结果),或者是做了这种应对的处理,使用CS0是可以的。

zai Jonathan:

回复 Steven Liu1:

1.现在我们这个通过异步读写的方式来访问FPGA 16C554。

2.有关于地址分配问题,我看了一下0x5000-0000这个是GPMC配置的地址,0x0000-0x1FFF-FFFF这个是512M external-memory地址,你说CS0起始地址是0x0000-0000 —– 0x0400-0000,在基址设置为0的情况下,我要用FPGA来控制16C544是不是需要把16C644的放到这个CS0里面,通过FPGA地址译码来片选控制16C544

leo chen:

回复 zai Jonathan:

通过FPGA译码比较好控制

zai Jonathan:

回复 leo chen:

是通过译码控制没错,我问的是是否应该把对应的串口地址放到GMPC 片选CS0里面?????哈哈

Steven Liu1:

回复 zai Jonathan:

看你前面的描述,意思是对的。补充几点:

1. 0x50000000这个地址是对GPMC模块本身进行配置的。0~0x1FFFFFFF这段是给GPMC操作对应片选的地址池的,GPMC和外面通信的数据是在这块地址空间进行操作。

2. 片选0的具体的操作地址,是靠你在GPMC_CONFIG_7_0寄存器里面的配置来定义的,应该是位于0~0x1FFFFFFF这段地址空间内的一个子集。

zai Jonathan:

回复 Steven Liu1:

非常感谢。

zai Jonathan:

回复 Steven Liu1:

现在CS0片选地址我这边已经定了,基址为0,片选大小是16MB,

uart1 0x0000-0000 —- 0x0000-0007

uart2 0x0000-0008 —- 0x0000-0010

………

uart16 0x0000-0078 —- 0x0000-007f

请问一下由于地址线的问题我只能设置串口的寄存器8个大小,因为16C544地址线就3根A2A1A0,8个足够了.

我想请问一下MMAP地址这样映射我这边是否有问题?还有就是之前MMAP定义的串口与串口之间我看每个UART都是8K大小。内核代码里我是否需要调整resource的值?如果需要调整在那里调整?

zai Jonathan:

回复 Steven Liu1:

你说的是对的,我现在的操作空间应该是0x0000-0000 0x000F-FFFF(16M).16C554地址和数据是分开的,所以直接操作里面的地址然后通过GPMC读低8位数据就可以了。GPMC总线操作方式里面我已经看了包括gpmc.c文件这个操作应该不是什么问题。

现在正在做整体的架构设计,所以有些东西还是要弄清楚。至于怎么操作需要等板子回来后调试才能知道,现在还没投板呢。

对你的回答非常感谢!~

赞(0)
未经允许不得转载:TI中文支持网 » GPMC-FPGA 问题
分享到: 更多 (0)