★ Source Insight 에서 파일내부 검색 방법
ㆍ Project 의 다운드롭 메뉴에서 Add and Remove project FILE 에서 목록을 추가한 후
ㆍ Ctrl +Shift + F 로 추가한 목록 전체 파일에서 찾고자하는 소스를 찾을 수 있다.
ㆍ Options 에서 Project Wide 를 체크 후 검색
★ ARM 메모리 구축의 해석
[ 큰 구조 ]
< Makefile >
ㆍ cstartup.S 가 가장먼저 실행된다.
(컴퓨터를 켤 때 바이오드가 실행되는 것과 유사하다. )
ㆍcstartup.s 는 stack 메모리 위치를 만들어 lowlevel.c 를 실행시킨다.
ㆍ lowlevel.c 가 ARM 을 켠다.
ㆍ그후 main.c 가 실행되어 무한루프된다.
( os가 꺼지면 안되는것처럼 main.c 도 무한 실행 되어야 한다. )
[ 세부 구조 ]
< cstartup.S >
ㆍ TOP_OF_MEMORY 는 stack메모리의 끝점을 나타낸다.
ㆍ AT91SAM7S256.h 파일 내부 AT91C_ISRAM + AT91C_ISRAM_SIZE 의 의미는
스팩에서의 SRAM메모리 주소값을 나타내며 AT91SAM7S256.h 내부에
아래와 같이define 되어 있다.
< AT91SAM7S256.h >
ㆍSRAM Size = 0x0001 0000 / 1024 = 64k
< 스팩 >
< 위 ISRAM 을 나타내는 스팩 메모리표 >
< cstartup.S >
ㆍremap 이 일어나면 메모리 상에서 SRAM 이 Flash 위로 올라간다.
< cstartup.S >
ㆍ위 의 코드는 SRAM 메모리상에 data영역과 bss영역을 구축한다.
< Makefile >
ㆍ위 소스에서 data 영역은 0x200000 번지에 배치하고 Text영역을
0x201000 에배치한다.
ㆍ지금까지의 설명은 ARM의 메모리 구축에대한 계념이다.
ARM은 os가 없음으로 코드를 통해 메모리 영역을 위에 설명한
과정을 통해 메모리를 구축한다.
※ 용어 설명
ㆍintel : EIP ( Instrution Pointer )
ㆍARM : PC (Program Counter )
ARM 자료 ( 각 레지스터의 기능 / ARM LED 제어 ) [20120709] (0) | 2016.11.15 |
---|---|
ARM 자료 ( PMC / PIO ) [20120706] (0) | 2016.11.15 |
ARM ( 스팩 보는법 / 사용 방법 기초 ) [20120625] (0) | 2016.11.15 |
ARM ( 스팩해석 ) [20120529] (0) | 2016.11.14 |
AT91SAM7S256 BOARD( ARM ) [20120525] (0) | 2016.11.14 |