CP15 레지스터에 대한 의문점...
글쓴이: 김승주 / 작성시간: 토, 2007/02/17 - 3:53오전
#######################################################
ldr r0, =0x2001 /* 모든 coprocessors에 접근을 허용한다 */
mcr p15,0,r0,c15,c1,0
nop
nop
nop
#########################################
안녕하세요..
PXA255를 공부 하던 중 의문점이 있어서 질문 올립니다..
모니터 프로그램 START.S 파일 내용중에.....
저 위에 값이 "0x2001" 이잖아요..
데이터 시트상 보면 "0x0001" 이 되어야 허용모드 아닌가요?
"0x2001" 이면 CP13을 "1" 값으로 한 것인데 왜 그런가 모르겠습니다;;
CP0 는 ALLOWED 모드이고
CP1 ~ CP13 까지는 ZERO 가 되어야 한다고 데이터 시트에
나와 있는데 왜 "0x2001"을 했는지 모르겠네요...
Forums:
CP15 는 하나의 레지스터가 아닙니다.
제가 PXA255을 잘 알지못해 확실한 답변은 못드리겠지만 ARM과 비슷하리라 생각하고 몇자 적습니다.
CP15 는 system control coprocessor 입니다.
CP15 는 c0 에서 부터 c15 까지 16개의 레지스터가 있습니다.
위 코드를 이해 하시기 위해서는 c15 레지스터에 대해 데이터 시트에서 다시 찾아보시기 바랍니다.
PS.

ARM 의 경우 http://www.arm.com/documentation/ARMProcessor_Cores/index.html 에서 Technical Reference Manual 들을 받아 볼 수 있는데 XScale 의 경우는 저런 문서를 어디서 찾아야 할지 알 수 없군요.
워낙 얄팍한 지식이라 많은 도움을 드리지 못하는군요.
------------------------------
댓글 달기