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.
我将尝试澄清有关 AM263x 上的 GPMC 存储器控制器的几点。 具体而言、可以处理多少存储器? 数据表显示我们可以寻址高达4MB 的数据、但根据不同模式的地址行和数据行数量、我们应该能够寻址更多的数据。 需要说明。 下面以 红色突出显示了几个问题。
通用存储器控制器(GPMC)
–具有22位地址总线的16位并行数据总线
–高达4MB 的可寻址存储器空间
Q1)这不是8MB 的可寻址存储器?
表6-64汇总。 GPMC0信号说明
GPMC 引脚 |
多路复用模式 |
非多路复用模式 |
A21.-A11. |
未使用 |
A21.-A11. |
A10..A1. |
A26.A17. |
A10..A1. |
A0 |
未使用 |
A0 |
AD15.AD0 |
A16..1 / D15.D0 |
D15.D0 |
|
26条地址线 16条数据线 |
-22条地址线 16条数据线 |
Q2)在多路复用模式下、我们有26条地址线和16条数据线、这不是64M 字(128M 字节)吗?
Q3)在非多路复用模式下、我们有22条地址线和16条数据线、这不是4M 字(8M 字节)? 重复以上 Q1
总表13-165. GPMC 引脚复用选项(无关 NAND 列)
GPMC 引脚 |
复用地址数据32位器件 |
复用地址数据16位器件 |
非复用地址数据16位器件(不完整的28位地址范围) |
非复用地址数据8位器件 (不完整的28位地址范围) |
A22.-A11. |
未使用 |
未使用 |
A22.-A11. |
A22.-A11. |
A10..A1. |
未使用 |
A26.A17. |
A10..A1. |
A10..A1. |
A0 |
未使用 |
未使用 |
未使用 |
A0 |
AD31.AD26. |
D31.-D26. |
未使用 |
未使用 |
未使用 |
AD25..AD16 |
A27.A18 / D25..D16 |
未使用 |
未使用 |
未使用 |
AD15.AD8. |
A17.A10 / D15.D8 |
A16..A9/D15..d8 |
D15.D8. |
未使用 |
AD7..AD0 |
A9..A2/D7..D0 |
A8.A1/D7.D0 |
D7..D0 |
D7..D0 |
|
26个地址行 32条数据线 |
26个地址行 16条数据线 |
22个地址行 16条数据线 |
23条地址线 8条数据线 |
可寻址大小 |
256M 字节? *限制为128MB |
128M 字节? |
8Mb? |
8Mb? |
Q4)这些基于地址行和数据行数的可寻址大小计算有什么问题?
* TRM 的注释
Q5)在图中、它引用了 AD[31-16]、这些引脚名称不存在、假设它们是 A[31-16]。
Brad、您好!
我认为产生这种混淆的原因是数据表没有规定可寻址4MB 适用于非多路复用操作模式、因为地址和数据之间不会多路复用数据线、因此您只有22条地址线。 但是、在具有23条地址线路和8位数据的非多路复用模式下、在非多路复用模式下、最大可寻址范围约为8MB。 详细了解您的问题:
Q1-Q3)假设这是非多路复用操作模式、则4MB 正确。 2^22 = 4MB 可寻址范围。 由于上述原因、在这种情况下不考虑数据线
Q2)您在这个26位地址和16位字中是正确的->(2^26)* 2字节= 128MB
问题4)
Q5)是的、正确、这些引脚名称不存在。 图片引用了这样一个事实、即地址范围的前16位将在地址和数据线路之间复用、因为这是一个 AD 复用存储器操作的方框图。 我明白为什么这会令人困惑、我将努力使该方框图在 TRM 的未来修订中更易于理解
下面也是对 AM64器件的类似问题的帖子、我认为您可以将其用作参考、以便更好地了解不同 GPMC 模式下的寻址范围。 AM263x 和 AM64x 共享相同的 GPMC IP、因此给出的答案标记在本例中也适用:
AM6442:GPMC 非多路复用地址数据-处理器论坛-处理器- TI E2E 支持论坛
我希望这些信息对您有所帮助、如果您有任何疑问、请随时联系我们。
最棒的
Daniel
Daniel:
感谢您的回答。 如果您不介意、我有几个后续评论/问题、只需在进行电路板设计之前确定即可。 您能否确认以下内容
1)根据存储器映射的定义、整个 GPMC 地址空间(全部四个芯片选择组合在一起)为128MB。
2) 2)对于各种模式、以下是我们在单芯片选择上可以具有的最大存储器大小。
**我仍然不清楚为什么在非复用16位设备模式下我们只能使用4MB?
谢谢
Brad、您好!
[引用 userid="6450" URL"~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1186065/am2634-gpmc-addressing-questions/4469212 #4469212]1)根据存储器映射的定义、整个 GPMC 地址空间(全部四个芯片选择组合在一起)为128MB。正确、这个空间在所有四个芯片选择之间共享
[引用 userid="6450" URL"~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1186065/am2634-gpmc-addressing-questions/4469212 #4469212"]2) 2)对于各种模式、以下是我们在单芯片选择上可以具有的最大存储器大小。
**我仍然不清楚为什么在非复用16位设备模式下我们只能使用4MB?
[/报价]16位非多路复用模式实际上不会使用器件中的所有23条可用地址线路、因为 A0仍然未使用、因此您需要22条地址线路、而不是23条、您需要访问完整的8MB 存储器区域。 TRM 显示以下内容:
表13-165的脚注解释了 A0只用于有效寻址非多路复用存储器上的8位器件、因为它充当器件系统字节地址线。 有关详细信息、请参阅第13.3.1.4.7.1节的第一个要点、即 TRM 的芯片选择基址和区域大小:
拥有22条地址线路只允许您在非多路复用协议中访问4MB。 2^22 = 4MB 可寻址范围。
希望这有助于澄清问题。
最棒的
Daniel