2004.10.21 15:03
     

C6711 Chip의 Cache는 상당히 복잡한 구조를 가지고 있는거 같다.

L1, L2 Cache 간의 coherence는 snoop 커맨드로 지들이 알아서 동기화를 하는거 같
다.
L2, external 간의 coherence는 지들이 알아서 하는게 아니라 내 책임이란다. ㅡ_ㅡ;;
쿨럭.. 그래서 다음과 같은 상황에서는 앞서 아래와 같이 먼저 하라고 권고한다.

periperal -> external ram dma transfer 후 CPU가 buffer를 읽어야 할때
-> L2 write back Invalidate
CPU가 buffer를 조작 후 external ram -> periperal로 Transfer 할때
-> L2 write back

글고 CPU와 EDMA간에 external memory를 통한 array transfer를 할 시, array는
-> cache line 크기의 배수
-> cache line 경계에 정렬
되어야 한댄다. ㅡ_ㅡ;;;

이제야 지난번에 내가 EDMA로 external memory -> external memory로 transfer
를 했을때, 안됬는지 이유를 대강(??)알겠다.
쿨럭..;; 복합적인 이유였군.. @ㅠ@/~~
Mittm

Android App

Posted by kkamagui

댓글을 달아 주세요

  1. ming 2016.08.19 09:54  댓글주소  수정/삭제  댓글쓰기

    저... 주인장님... 좋은 정보 감사합니다. 근데 혹시 본문의  periperal 이 어떤 의미로 사용된 것인지 알 수 있을까요? 그리고 해당 내용을 어디서 참조하셨는지 알려주시면 제게 큰 도움이 될 것 같습니다...ㅜㅜ 둘중에 하나라도 답변해 주신다면 정말 감사하겠습니다...

    • Favicon of https://kkamagui.tistory.com BlogIcon kkamagui 2016.08.30 11:23 신고  댓글주소  수정/삭제

      답변이 늦어서 죄송합니다. ㅠㅠ
      Peripheral은 주변장치라는 의미입니다. 제가 참고했던 문서는 TI의 DSP 관련 메뉴얼이었던 것 같습니다. ^^