안녕하세요?
저는 S3C6410과 DSP를 Dual Port Memory로 연결해서 통신을 하고 있습니다.
이렇게 통신을 할 때 6410에서 Write를 하면 문제가 없는데,
6410에서 읽는 경우 Cache가 개입해서 한 번 읽은 주소의 데이터는 다시 읽지를 않습니다.
DSP 측에서 DPRAM에 기록을 해도 전혀 ARM에서 읽을 수가 없습니다.
이런 경우 ARM의 Cache를 지우든지, 또는 DPRAM 연결 영역을 Cache 하지 않도록 하면 될 거 같은데
고수님의 도움을 바랍니다.
개발 환경 : Windows CE 6.0, TI DSP, Cypress DPRAM
ARM 쪽 연결 위지 : SROM Bank 5, Xm0CSn5
oemaddrtab_cfg.inc의 내용
; nCS1~nCS5, nCS0
;DCD 0x94000000, 0x18000000, 32 ; 32 MB SROM(SRAM/ROM) BANK 1 = LAN9215
;DCD 0x96000000, 0x20000000, 32 ; 32 MB SROM(SRAM/ROM) BANK 2
;DCD 0x98000000, 0x28000000, 32 ; 32 MB SROM(SRAM/ROM) BANK 3
DCD 0x96000000, 0x30000000, 32 ; 32 MB SROM(SRAM/ROM) BANK 4 = LAN9220
DCD 0x9C000000, 0x38000000, 32 ; 32 MB SROM(SRAM/ROM) BANK 5 = DPRAM
;DCD 0x9E000000, 0x00000000, 32 ; 32 MB SROM(SRAM/ROM) BANK 0
부디 지혜를 주세요.
감사합니다.