杂记:Atmel sama5d3 Bus Matrix (MATRIX)

来源:互联网 发布:windows10 mysql 启动 编辑:程序博客网 时间:2024/06/16 17:07
Bus Matrix (MATRIX)
概述
MATRIX实现了多层ahb,基于ahb-lite协议,使能多主控ahb和从ahb可以同时运作
最多有16个主控,16个从
正常的延迟是一个周期,没有延迟的情况是从控已经与默认主控相连了
MATRIX与aph相适应


sama5d3的MATRIX有15个主控,各个互不影响,当然是连接不同的从控时候
每个主控有自己的解码器,有相同的解码规则


Master 0 Cortex A5
Master 1, 2, 3 DMA Controller 0
Master 4, 5, 6 DMA Controller 1
Master 7 GMAC DMA
Master 8, 9 LCDC DMA
Master 10 UHP EHCI DMA
Master 11 UHP OHCI DMA
Master 12 UDPHS DMA
Master 13 EMAC DMA
Master 14 ISI DMA


sama5有13个从控,每个从控有自己的仲裁器,各自不同


Slave 0 Internal SRAM0
Slave 1 Internal SRAM1
Slave 2 NFC SRAM
Slave 3 Internal ROM
Slave 4 Soft Modem (SMD)
Slave 5 USB Device High Speed Dual Port RAM (DPR)
Slave 5 USB Host OHCI registers
Slave 5 USB Host EHCI registers
Slave 6 External Bus Interface/NFC
Slave 7 DDR2 Port0
Slave 8 DDR2 Port1
Slave 9 DDR2Slave 10 DDR2 Port3
Slave 11 Peripheral Bridge 0
Slave 12 Peripheral Bridge 1 Port2


理论上所有主控可以连接所有从控,但有些没有意义所以被禁止


特点:
ahb-lite 兼容接口
32bit或者64bit数据总线
apb兼容接口
可配置主控从控数量最多16个
独立的解码器主控
提供一些boot内存即便没有remap
独立的remap功能
32 64 128 256 字的brust ahb限制
从控的仲裁机制 Round-Robin 和Fixed Priority
从控的默认主控 没有,上次的主控,固定的主控
可预测的延迟
主从连接延迟为一周期或没有
总线锁
Master Number Forwarding to Slaves
每个从控有特定的功能寄存器
写保护




解码器提供每个ahb主控内存映射,每片内存可以分配到多个从控
Master Remap Control Register (MATRIX_MRCR),使能每个主控独立重映射


本次连接完结,如果没有其他请求,则从控连接到默认主控
没有,上次的主控,固定的主控
通过配置 Slave Configuration Registers的DEFMSTR_TYPE and FIXED_DEFMSTR.




多个主控请求一个从控,每个从控的仲裁器开始仲裁
Round-robin Arbitration (default)
Fixed Priority Arbitration
仲裁在下列情况发生
空闲
单控
一次burst的最后
槽计数到期




防止从控被独占太久,可以出发重新仲裁Undefined Length Burst Type (ULBT)


不限(1k) 1 4 8 16 32 64 128 burst限制
不鼓励用低于16的,最好用默认的值256个字128个双字
ULBT field of the Master Configuration Registers (MATRIX_MCFG).设0可以省点


计数器递减SLOT_CYCLE field of the related Slave Configuration Register (MATRIX_SCFG)
倒计时为零出发重新仲裁
默认最好不用,可能引起错误


优先级池
高优先先用,同优先级轮流用,低优先级等空隙

0 0