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.

[参考译文] TMS320C6678:无法读取 C6678 PCIe 端点 PCIe 配置存储器(0x2180_0000)

Guru**** 2604225 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/646081/tms320c6678-unable-to-read-c6678-pcie-endpoint-pcie-config-memory-0x2180_0000

器件型号:TMS320C6678

您好!

我正在使用64位 PCIe 寻址处理基于 C6678的 PCIe 端点。 我无法从 C6678存储器映射中的0x2180_0000开始读取 PCIe 配置空间(通过条2/3)。  但是、我可以通过条0/1读取 PCIe 应用寄存器。

我的入库栏设置为:

initC6678PcieMemoryRegions:区域0:bar = 0x00000002、start = 0x380300000000、offset = 0x00800000
initC6678PcieMemoryRegions:区域1:bar = 0x00000004、start = 0x380280000000、offset = 0x8000000000
initC6678PcieMemoryRegions:区域2:bar = 0x00000000、start = 0x000000000、  offset = 0x00000000
initC6678PcieMemoryRegions:区域3:bar = 0x00000000、start = 0x000000000、  offset = 0x00000000

其中、IB_bars 0和1的起始地址分别设置为 PCIe bars 0/1和2/3的地址。

因此、IB_BAR (1)用于通过条4/5访问0x8000_0000及以上的 DDR 存储器、而 IB_BAR (0)用于访问地址小于0x8000_0000的所有存储器/寄存器。

我能够读取和写入特定于内核的 L2SRAM (即0x108x_xxxx |内核<< 24)、但在通过相同的 IB_BAR 读取 PCIe 配置时、读取全部返回0xFFF_FFFF。

例如、通过 IB_BAR (0)检索时 ROM 引导版本字符串的内容看起来正确:

ROM 引导版本字符串:
0x0000:0x76 0x31 0x2e 0x31 0x32 0x20 0x53 0x61 0x74 0x20 0x41 0x75 0x67 0x20 0x31 0x33 v1.12星期六8月13日
0x0010:0x20 0x31 0x35 0x3a 0x32 0x31 0x3a 0x30 0x37 0x20 0x32 0x31 0x31 0x20 0x69 15:21:07 2011 I
0x0020:0x32 0x63 0x20 0x6d 0x61 0x63 0x20 0x73 0x72 0x69 0x6f 0x20 0x70 0x63 0x65 2c Mac SRIO PCIe
0x0030:0x20 0x76 0x75 0x73 0x72 0x20 0x73 0x70 0x69 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 VUsr SPI…

是否可以从 PCIe 根复合体读取0x2180_00000处提供的 C6678 PCIe 配置信息?

谢谢!
Brad
 



  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!

    我已通知 RTOS 团队。 他们的反馈将直接发布在此处。

    此致、
    Yordan
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Yordan、您好!

    感谢您的回复-期待他们的回复!
    Brad

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    这里是另一个数据点...

    我将 IB_OFFSET (0)修改为0x2180_0000、而不是0x0080_0000、同时仍与 bar2/3关联。 执行此操作后、我仍然无法读取偏移量为0x0、0x4、0x310、0x1000和0x1050的 PCIe 配置寄存器。 所有读取返回0xFFF_FFFF
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!

    我对这个问题有些困惑。 C6678是 PCIe EP、什么是 PCIe RC? 您设置 C6678的入站转换、共有4个区域、共6个条。 条0专用于地址空间0、包括应用和配置寄存器。 在64位地址模式中、BAR0和 BAR1一起使用。 "但是、我可以通过条0/1读取 PCIe 应用寄存器。"。 C6678侧的条形码大小设置是多少? 在32位地址模式下、您能否读取配置寄存器?

    此致、Eric
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    尊敬的 Eric:

    是的、C6678是 PCIe EP。 PCIe RC 基于 Intel、运行 Windows Server 2012。 我们将 C6678配置为使用64位寻址引导至 PCIe 引导模式。 条2/3和4/5分别分配了2GB 的孔径。

    我没有尝试引导至32位 PCIe 寻址模式、因为它需要修改 FPGA (设置引导模式)以及调整驱动程序以进行32位寻址(中没有运行硬件的 Linux 盒)。

    以下是您请求的寄存器(定制板上有2个 C6678):

    C6678-0:
    --------------------------
    值 掩码
    BAR0:0xD0D00004 0xFFFFFF000
    Bar1:0x00000000 0x00000000
    Bar2:0x0000000C 0x80000000
    Bar3:0x00003803 0x00000000
    BAR4:0x8000000C 0x80000000
    Bar5:0x00003802 0x00000000

    C6678-1:
    --------------------------
    值 掩码
    BAR0:0xD0C00004 0xFFFFFF000
    Bar1:0x00000000 0x00000000
    Bar2:0x0000000C 0x8000000
    Bar3:0x00003802 0x00000000
    BAR4:0x8000000C 0x80000000
    Bar5:0x00003801 0x00000000

    我通过将0xFFF_FFF0写入 Blackhawk JTAG 仿真器内的每个条形来获得屏蔽值。 在为每个条写入高32位之前、先写入低32位、这说明了为什么高32位是0而不是 FS
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我尝试使用8位和16位读取(而不是32位读取)通过条形码2/3读取各种 PCIe 配置空间寄存器、这些读取分别返回0xFF 和0xFFFF。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    在 Code Composer Debug 视图中、我将存储器显示为64位值(TI 格式)。 然后、我使用64位值0xFFFFF_FFF_FFF_FFF0写入条形寄存器(从0x2180_1010开始)。 这些值与上述值没有变化:

    C6678-0:
    --------------------------
    值掩码
    BAR0:0xD0D00004 0xFFFFFF000
    Bar1:0x00000000 0x00000000
    Bar2:0x0000000C 0x8000000
    Bar3:0x00003803 0x00000000
    BAR4:0x8000000C 0x80000000
    Bar5:0x00003802 0x00000000

    C6678-1:
    --------------------------
    值掩码
    BAR0:0xD0C00004 0xFFFFFF000
    Bar1:0x00000000 0x00000000
    Bar2:0x0000000C 0x8000000
    Bar3:0x00003802 0x00000000
    BAR4:0x8000000C 0x80000000
    Bar5:0x00003801 0x00000000

    我希望每个条形码掩码的高32位都是0xFFFFF_FFFF,但它们都返回为0x0000_0000...
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    下面是我们的 DEVSTAT 寄存器的内容:

    DEVSTAT:0x0001_23C9

    LENDIAN:     0b1.       小 ENDIAN

    BOOTMODE[12:0]: 0x11E4      

    引导设备:0x4       PCIe 引导模式

    PCIe CFG:  0x3c       2048 MB、64位、bar2/3和 BAR4/5的条形图

    PCIESSMODE[1:0]:0b00       终点

    PCIESSEN:    0b1       PCIe 模块已启用

    PACLKSEL:    0b0       选择 PASSCLK

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我还检查了 C6678上的 CMD_STATUS 和 STATUS_COMMAND 寄存器:


    CMD_STATUS:0x0000_0005

    LTSSM_EN:      0b1 -启用 LTSSM
    OB_XLT_EN:     0b1 -启用出站地址转换
    IB_XLT_EN:     0b1 -启用入站地址转换
    POST_WR_ENABLE: 0b0 -禁用内部总线主控以使用 POSTED 写入命令(KeyStone 不适用)
    APP_RETRY:   0b0 -禁用返回所有传入 PCIe 事务并进行重试响应
    DBI_CS2:      0b0 -禁止写入条屏蔽寄存器


    STATUS_COMMAND:0x0810_0146

    IO_SP:        0b0 - KeyStone 器件不适用
    MEM_SP:       0b1 -启用存储器访问
    BUS_MS:       0b1 -启用总线代理
    PAR_ERR_RESP:   0b1 - PCIESS 正常响应奇偶校验错误
    SERR_EN:       0b1 -使能向 RC 生成错误消息
    INTx_DIS:      0b0 -启用 INTX 生成  
    INT_STAT:      0b0 -未接收到中断
    CAP_list:      0b1 - PCIe 始终为0b1
    DAT_PAR_ERROR:   0b0 -请求者无 R/W 奇偶校验错误
    SIG_TGT_ABORT:   0b1 -作为完成者的函数通过发出来终止请求
                 向请求者发送完成中止完成状态

    RX_TGT_ABORT:   0b0 -请求者未收到具有中止状态的完成
    RX_MST_ABORT:   0b0 -请求者未收到不受支持的请求的完成
                 状态
    SIG_SYS_ERROR:   0b0 -函数未收到 ERR_fatal 或 ERR_Nonfatal
    奇偶校验错误:   0b0 -函数接收到未中毒的 TLP

    唯一令人担忧的字段是 SIG_TGT_ABORT

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Eric:

    我正在等待您的反馈/意见。

    谢谢、
    Brad

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    是否有任何 TI 员工可以帮助我解决此问题?
    谢谢!
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    CMD_STATUS:0x0000_0005

    LTSSM_EN:      0b1 -启用 LTSSM

    OB_XLT_EN:     0b1 -启用出站地址转换

    IB_XLT_EN:     0b1 -启用入站地址转换

    您能否仔细检查这是否是拼写错误? 需要启用 OB。

    此致、Eric

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    尊敬的 Eric:

    未启用 OB_XLT_EN。 下面是使用 Blackhawk 仿真器的配置空间转储:

    0x2180_0000 4E30110100000005000000000000000000000000000100000000000000000000
    0x2180_0020 00000000000000000000000000000000 0000000000000000 00000000000000000000000000000000
    0x2180_0040 00000000000000000000000000000000 0000000000000000 00000000000000000000000000000000
    0x2180_0060 00000000000000000000000000000000 0000000000000000 00000000000000000000000000000000
    0x2180_0080 00000000000000000000000000000000 0000000000000000 00000000000000000000000000000000
    0x2180_00A0 00000000000000000000000000000000 0000000000000000 00000000000000000000000000000000
    0x2180_00C0 00000000000000000000000000000000 0000000000000000 00000000000000000000000000000000
    0x2180_00E0 00000000000000000000000000000000 0000000000000000 00000000000000000000000000000000
    0x2180_0100 00000000000000000000000100000001000000000000000000000000 0000000000000000
    0x2180_0120 00000000000000000000000000000000 0000000000000000 00000000000000000000000000000000
    0x2180_0140 00000000000000000000000000000000 0000000000000000 00000000000000000000000000000000
    0x2180_0160 00000000000000000000000000000000 0000000000000000 00000000000000000000000000000000
    0x2180_0180 000000000000000000000001000000000000000000000001 00000000 0000000100000001 00000001
    0x2180_01A0 000000000000000000000001000000000000000000000001 00000000 0000000100000001 00000001
    0x2180_01C0 00000000000000000000000000000000 0000000000000000 00000000000000000000000000000000
    0x2180_01E0 00000000000000000000000000000000 0000000000000000 00000000000000000000000000000000
    0x2180_0200 00000000000000000000000000000000 0000000000000000 00000000000000000000000000000000
    0x2180_0220 00000000000000000000000000000000 0000000000000000 00000000000000000000000000000000
    0x2180_0240 00000000000000000000000000000000 0000000000000000 00000000000000000000000000000000
    0x2180_0260 00000000000000000000000000000000 0000000000000000 00000000000000000000000000000000
    0x2180_0280 00000000000000000000000000000000 0000000000000000 00000000000000000000000000000000
    0x2180_02A0 00000000000000000000000000000000 0000000000000000 00000000000000000000000000000000
    0x2180_02C0 00000000000000000000000000000000 0000000000000000 00000000000000000000000000000000
    0x2180_02E0 00000000000000000000000000000000 0000000000000000 00000000000000000000000000000000
    0x2180_0300 0000000200000000000038030080000000000004800000000000380221800000
    0x2180_0320 00000000000000000000000000000000 0000000000000000 00000000000000000000000000000000
    0x2180_0340 00000000000000000000000000000000 0000000000000000 00000000000000000000000000000000
    0x2180_0360 00000000000000000000000000000000 0000000000000000 00000000000000000000000000000000
    0x2180_0380 0000211000000000000011110000000000062320000223400000000000000000
    0x2180_03A0 00000000000000000000000000000000 0000000000000000 00000000000000000000000000000000
    0x2180_03C0 00000000000000000000000000000000 0000000000000000 00000000000000000000000000000000
    0x2180_03E0 00000000000000000000000000000000 0000000000000000 00000000000000000000000000000000

    谢谢!
    Brad
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Eric:

    我已对驱动程序进行了修改、以在 C6678端点启用出站转换:

    C6678 CMD_STATUS (初始):0x00000005
    C6678 OB_SIZE (初始):  0x00000000

    C6678 CMD_STATUS (最终): 0x00000007
    C6678 OB_SIZE (最终):   0x00000000

    即使启用了出站转换、我仍然无法通过第2/3条访问 PCIe 配置空间-读取返回0xFFF_FFFF。

    谢谢、
    Brad

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!

    我查看了您的应用程序寄存器转储和入站转换设置、以及条形图掩码和条形图设置。 我认为应该使用 BAR0/1来访问配置。 为什么 BAR0/1是0xD0C0_0004? 如果0x0000_0004该怎么办?

    此致、Eric
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Eric:

    在 PCIe 用户指南(sprugs6d.pdf)中、BAR0、bar2和 BAR4中的低4位为:


    位  0:MEM_SPACE (0 =存储器栏、1 = I/O 栏)
    位2-1:类型(0b00 = 32位 bar、0b10 = 64位 bar)  
    位  3:预取

    所以、  


    BAR0/1 = 0x0000_0000_D0C0_0004 -> 64位存储器条
    bar2/3 = 0x0000_3802_0000_000c -> 64位可预取存储器条
    BAR4/5 = 0x0000_3801_8000_000c -> 64位可预取存储器条

    因此、条2/3和4/5都启用了预取位。 这可能是问题吗?

    谢谢、
    Brad

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    我建议使用 BAR0/1。 为什么您使用的是0xD0C0_0004而不是0x0000_0004? 在我们的 PCIe 驱动程序示例中、该条配置为无预取。 您也可以尝试使用 bar2/3或 bar4/5,其中的入站转换偏移为0x2180_0000。

    此致、Eric

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Eric:

    我建议使用 BAR0/1。

    由于 BAR0/1仅提供4KB 窗口、我需要使用 bar2/3或 BAR4/5来访问位于0x1000以上的配置空间寄存器(例如、STATUS_COMMAND 在 PCIe 配置空间中偏移为0x1004、而 BAR0/1不提供对该偏移的访问)

    为什么使用0xD0C0_0004而不是0x0000_0004

    0xD0C0_0004的条形是操作系统(在我的例子中为 Windows)分配给 C6678 PCIe 端点的值。 我无法更改此值。 此外、在 PCIe 枚举期间、操作系统会设置可预取类型和 MEM_SPACE 位。

    请注意、我将直接引导至 PCIe 引导模式。  我不是首先引导至 I2C 并加载引导参数或引导配置表-因此除了通过引导模式引脚提供的设置外、我不会修改 PCIe 引导模式设置的任何部分。

    您也可以尝试使用 bar2/3或 bar4/5,其中的入站转换偏移为0x2180_0000

    我已经尝试了偏移量为0x2180_0000的 bar2/3和 BAR4/5、这没有任何区别。  我还尝试了偏移0 (而不是0x80_0000)、这也没有帮助。

    一个有趣的新信息是(现在我能够在我的平台上初始化 DDR3)、现在我可以访问(读取和写入) DDR3存储器、其中 BAR4/5偏移设置为0x8000_0000。 因此、我不确定它是否与入站偏移有关。

    此致、
    Brad

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Eric:

    我测试了通过 bar2/3读取以下区域:

    DDR3 EMIF 配置:
    0x2100_0000: 读取返回的值为0xCCCCCC_CCCC
    0x2100_0004: 读返回0xCCCCCC_CCCC

    超链接配置:
    0x2140_0000: 读取返回的0xCCCC_CCCC
    0x2140_0004: 读取返回的值0xCCCCCC_CCCC

    PCIe 配置:
    0x2180_0000:读取返回0xFFF_FFFF
    0x2180_0004:读取返回0xFFF_FFFF

    队列管理器配置:
    0x3400_0000:读取返回0xCCCC_CCCC
    0x3400_0004:读取返回0xCCCC_CCCC

    超链接数据:
    0x4000_0000:读取返回的0xCCCC_CCCC
    0x4000_0004:读取返回的0xCCCC_CCCC

    PCIe 数据:
    0x6000_0000:读取返回的0xCCCC_CCCC
    0x6000_0000:读取返回的0xCCCC_CCCC

    我是否应该能够通过 PCIe 链路访问这些区域中的任何区域?  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!

    如果您可以使用 BAR4/5访问 DDR、那么使用 bar2/3访问 DDR 也不会出现问题、方法是更改入站偏移(请将 BAR4/5移至其他位置)。

    您使用 bar2/3访问大量外设寄存器、我认为您的试用是任意的、返回的数据是垃圾、访问不起作用。 但请注意、即使您的 PCIe 设置正确、您也不一定能够访问这些设置。 EMIF 为36位、需要36至32位映射;超链接寄存器需要加电、超链接数据需要建立链接等...

    请确保使用 bar2/3或 bar 4/5,您可以访问 MSMC、DDR 或全局 L2。 然后、对于 BAR0/1、您在哪里将条形码设置为4KB、您是否可以分配16KB 掩码?

    此致、Eric
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Eric:

    如果您可以使用 BAR4/5访问 DDR、那么使用 bar2/3访问 DDR 也不会出现问题、方法是更改入站偏移(请将 BAR4/5移至其他位置)。  

    是的、我可以同时使用 bar2/3和 BAR4/5来访问 DDR!

    您使用 bar2/3访问大量外设寄存器、我认为您的试用是任意的、返回的数据是垃圾、访问不起作用。 但请注意、即使您的 PCIe 设置正确、您也不一定能够访问这些设置。 EMIF 为36位、需要36至32位映射;超链接寄存器需要加电、超链接数据需要建立链接等...

    好的。 了解了一些外设寄存器集只有在启用后才能访问。  

    请确保使用 bar2/3或 bar 4/5,您可以访问 MSMC、DDR 或全局 L2。 然后、对于 BAR0/1、您在哪里将条形码设置为4KB、您是否可以分配16KB 掩码?

    是的、目前 bar2/3可以访问 MSMC 和 L2SRAM、而 BAR4/5可以访问 DDR3。  

    但是、如何将 BAR0/1的窗口大小修改为4KB 以上? 我认为这是由 ROM 引导加载程序完成的。 目前、我将直接引导至 PCIe 引导模式。  我的理解是、要进一步修改 PCIe 指示条窗口大小、需要引导至例如 I2C 引导模式、并提供引导参数和引导配置表、以便为32KB 窗口大小设置 BAR0/1掩码。

    即使"PCIe 引导模式参数表"(在 sps691e.pdf 中)也不提供设置窗口0大小-只有 Windows 1 (bar2/3)和2 (BAR4/5)可在此表中配置。  

    那么、我应该如何为32KB 窗口大小配置 BAR0/1?

    谢谢、
    Brad

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!

    抱歉、我忘记了您使用 ROM 中的 PCIe 引导模式。 当使用 bar2/3或 BAR4/5并指向0x2180_0000时、您是否可以读回 PCIe 寄存器的前4KB (即应用寄存器)、而不是下一个4KB (从0x2180_1000开始配置寄存器)?

    此致、Eric
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    尊敬的 Eric:

    不可以、当通过 bar 0/1访问时、我只能从0x2180_0000 - 0x2180_FFFC 读取。 使用 bar2/3或 BAR4/5访问同一区域会返回0xFFF_FFFF 进行读取。

    使用任何条形图(BAR0/1、bar2/3或 BAR4/5)时、我无法通过 PCIe 链路读取位置0x2180_1000 - 0x2180_7FFC 中的任何 PCIe 配置寄存器。 例如、我无法使用任何64位条读取0类和1类接头通用的配置寄存器、0类配置寄存器、1类配置寄存器、电源管理功能寄存器、MSI 寄存器、PCI 功能寄存器等

    谢谢、
    Brad
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Eric、

    我正在解决此问题。

    我们能够使用配置周期访问 PCIe 配置空间寄存器、我想这会违反 PCIe 规范、即能够在不使用配置周期的情况下访问/修改这些寄存器(例如、TLPS 至 bar2/3或 BAR4/5)。 我已确认可以通过指示条访问 MSMC、L2SRAM 和 DDR3

    谢谢、
    Brad