最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 正文

ARM_L2C_310_Note

来源:动视网 责编:小OO 时间:2025-10-07 23:42:52
文档

ARM_L2C_310_Note

2011-04-06L2Cnoteimportantfeature1.L2Cavailablesizefrom16KBto8MB2.8/16-wayassociativity3.fixedlinelengthof32bytes/8words/256bits4.interfacetoDATARAMisbytewritable5.supportbankingonDATARAM6.supportsalloftheAXIcachemodes(bitinterface):---write-throu
推荐度:
导读2011-04-06L2Cnoteimportantfeature1.L2Cavailablesizefrom16KBto8MB2.8/16-wayassociativity3.fixedlinelengthof32bytes/8words/256bits4.interfacetoDATARAMisbytewritable5.supportbankingonDATARAM6.supportsalloftheAXIcachemodes(bitinterface):---write-throu
2011-04-06

L2C note

important feature

1. L2C available size from 16KB to 8MB

2. 8/16-way associativity

3. fixed line length of 32 bytes/8 words/256 bits

4. interface to DATA RAM is byte writable

5. support banking on DATA RAM

6. supports all of the AXI cache modes(bit interface):

--- write-through and write-back

--- read allocate, write allocate, read and write allocate

7. Force write allocate option to always have cacheable writes allocated to L2 cache,

For processors not supporting this mode.

8. Normal memory non-cacheable shared reads --> cacheable non-allocatable.

Normal memory non-cacheable shared writes --> cacheable write-through no write-allocate.

Option: shared override. ?

9. Trustzone support.

Non-Secure(NS) tag bit used to determine securitylevel of evictions to L3.

10. Critical word first linefill

11. Pseudo-Random/round-robin victim selection policy.

12. 4X256b Line Fill Buffers(LFBs) shared by the master ports.

2X256b Line Read Buffers(LRBs) for each slave port.

3X256b Eviction Buffers(EBs)

3X256b Store Buffers(STBs)

13. outstanding access on slave/master ports

14. Prefetching capability

15. Wait, latency, clock enable, parity, error support at the RAM interfaces.

16. L2 cache event monitoring.( SPNIDEN is configured HIGH)

17. Address filtering

18. AXI master and slave interface attributes:

2x master ports

---- write issue 12 , 6 evictions/ 6 writes from STB

---- read issue 11 , 8,4 per master port, prefetches or reads from slave ports

3 reads from STB

---- combined issuing 23

---- Write ID width/Read ID width defined on slave ports

1x master port

---- write issue 12 , 6 evictions/ 6 writes from STB

---- read issue 7 , 4 prefetches or reads from slave ports

3 reads from STB

---- combined issuing 19

---- Write ID width/Read ID width defined on slave ports

2x slave & 2x master ports

---- write acceptance 6 , 3 per slave port

---- read acceptance 16 , 8 per slave port

24 , 12 per slave port for sequential accesses, when enable double linefill feature

---- combined issuing 22 / enable the double linefill feature to increase this value.

---- wirte interleave depth 2 , 1 per slave port

---- read data recorder depth 16

---- Write ID width/Read ID width defined by pl310_AXI_ID_MAX, (default is 6)

2x slave & 1x master ports

---- write acceptance 6 , 3 per slave port

---- read acceptance 12 , 6 per slave port

16 , 8 per slave port for sequential accesses, when enable double linefill feature

---- c

ombined issuing 18 / enable the double linefill feature to increase this value.

---- wirte interleave depth 2 , 1 per slave port

---- read data recorder depth 12

---- Write ID width/Read ID width defined by pl310_AXI_ID_MAX, (default is 6)

1x slave & 1x master ports

---- write acceptance 3

---- read acceptance 8

12 for sequential accesses, when enable double linefill feature

---- combined issuing 11 / enable the double linefill feature to increase this value.

---- wirte interleave depth 1

---- read data recorder depth 8

---- Write ID width/Read ID width defined by pl310_AXI_ID_MAX, (default is 6)

19. inputs are sampled on rising edges of CLK only when INCLKEN is HIGH

outputs are updated on rising edges of CLK only when OUTCLKEN is HIGH

20. AXI ID width ['pl310_AXI_ID_MAX : 0] on slave ports

['pl310_AXI_ID_MAX + 2 : 0] on slave ports

e.g. pl310_AXI_ID_MAX = 5 slave ports [5:0] and master ports [7:0]

21. AXI locked transfer

--- non-cachealbe transfer, the access is forwarded to L3 through the master ports and is marked as locked.

--- cacheable transfer, a cache lookup is always performed. when miss, a linefill, non-locked, is requested on the master side.

write accesses always cause non-locked writes on the master side.

--- when a slave performing a locked sequence, cacheable or not, the other slave is stopped from accepting more transfers.

a locked transaction is stalled until all buffers are empty, including STB.

--- processor must ensure there is only one outstanding transaction across the read and write channels during a locked sequence.

--- if multiple locked transfers come in at the same time, they are permitted to proceed in a certain priority.

priority for transfers is lockS0 > S1.

--- a locked sequence must consist of solely non-cacheable/cacheable transactions. don't mix them.

--- don't support a locked sequence starting with one locked read and one locked write at the same time one the same slave port.

22. support cacheable and non-cacheable exclusive accesses but not provide an exclusive monitor.

system need implement external exclusive monitors.

--- chacheable exclusive access, implement monitors on slave side of the cache controller.

(aware of cache controller internal status, such as the shared override bit)

--- non-cacheable exclusive access, implement monitors on master side of the cache controller.

23. cache operation: AxCACHE[3:0] ---- WA RA C B

--- non-bufferable, non-cacheable on AXI transactions [0000]

--- bufferable only AXI transactions[0001]

---cacheable bu

t do not allocate AXI transactions[0010]

--- cacheable and bufferable, do not allocate[0011]

--- cacheable write-trhough, allocate on read AXI transactions. [0110]

--- cacheable write-back, allocate on read AXI transactions. [0111]

--- cacheable write-trhough, allocate on write AXI transactions. [1010]

--- cacheable write-back, allocate on write AXI transactions. [1011]

--- cacheable write-trhough, allocate on read and write AXI transactions. [1110]

--- cacheable write-back, allocate on read and write AXI transactions. [1111]

24. AyUSERSx[0] --- shareable attribute.

Only applies to Normal Memory outer non-cacheable transactions, [0010/0011]. For other values is ignored.

Share related operation controlled by Auxiliary Control register bit[13]/[22]

25.if cache controller receive cacheable fixed transactions, AWBURST/ARBUSRTSx = 00, the results are unpredictable.

---(if cacheable, address should be increased.

for fixed transactions, it is for repeated accesses to the same location,such as when loading or emptying a periperal FIFO.)

26. Force write allocate

--- Auxiliary Control Reg [24:23]

27. Data Ram usage with banking and without banking

e.g 16ways /16KB way size

Bit[8:0] are the LSB of the RAM address bus -- without banking

Bit[6:0] are the LSB of the RAM address bus -- with banking

the [6:5] of AXI address is Bank number

28. Disable cache controller operation, the address latency is 1T in the slave ports + 1T in the master ports.

29. Stroe buffer draining policy:

--- immediately drained if targeting device memory area.

--- drained as soon as full

--- drained at each strongly ordered read/write occurrence in slave ports.

--- If the three slots of the STB contrain data, the least recently access is drained.

--- If a hazard is detected with one STB slot, it is drained to resolve the hazard.

--- drained when a locked transaction is revcived by one slave port.

--- drained when a transaction targeting the configuration registers is receiverd by one slave port.

Merging takes place only when data is in STB and it is not draining.

STB has 3 data slots, which contain a 256-bit data line. Each data slots contains a byte-valid field,

which enables the control logic to determine the data line fill level.

30. Cortext-A9 Optimizations in 310 implements.

--- Early write response (ARUSERSx[11], Auxiliary Control Register bit[30]) it disabled by default and not compatible with AXI protocol

--- Prefetch hints ( ARUSERSx[8] as 1) it is not compatible with AXI protocol.

--- Full line of zero write ( ARUSERSx[10], Auxiliary Control Register bit[0) it disabled by default and not compatible with AXI protocol

1. enable Full line of zero in 310

2. turn on 310

3. enable Full line of zero in A9

when ARUSERSx[10] as High, don't support Strongly Ordered write access

--- Speculative reads of the Cortex-A9 MPcore processor (ARUSERSx[9], only for A9, not for another ARM CPU)

--- Stroe buffer device limitation (Auxiliary Control Register bit[11]) at the same time enable this configuration bit in A9.

31. Prefetching operation

--- internal instruction and data prefetch engine

--- Double linefill issuing

--- Prefetch droppin

32. Power modes

--- Run mode

--- Dynamic clock gating

--- standby mode (connect SCUIDLE to STOPCLK input of 310)

--- dormant mode (RAM is powered up but 310 is powered down)

--- shutdown mode

33. REGFILEBASE[31:12]of L1 page talbes provides the base address for control register.

32bit only/[1:0] == 00 / burst length = 0/ non Exclusive access/ignore write strobes/write to writable register while idle

disable L2 cache when writing control register

=========================================================================

Errata: r3p2

Cat3

1. 729815 the "high priority for SO and Dev reads" feature can cause Quality of Service issues to cacheable read transactions

2. 754670 a continous write flow can stall a read targeting the same memory area

3. 765569 prefetcher can cross 4KB boundary if offset is programmed with value 23 (not set Prefetch Control Register(bit[4:0] as 23)

文档

ARM_L2C_310_Note

2011-04-06L2Cnoteimportantfeature1.L2Cavailablesizefrom16KBto8MB2.8/16-wayassociativity3.fixedlinelengthof32bytes/8words/256bits4.interfacetoDATARAMisbytewritable5.supportbankingonDATARAM6.supportsalloftheAXIcachemodes(bitinterface):---write-throu
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top