Table of Contents

아이지 시스템에서 나온 아이스 장비인 OPENICE32 A-900 을 이용해서 smdk2410 보드에 flash 를 r/w 하는 방법을 설명하고 있다.
ARM 에서 realview ice 가 있듯이, 아이지 시스템에서 자체개발한 디버거 장비라고 할 수 있다. 또한 smdk2410 보드가 아이지 시스템에서 제작된 보드이기 때문에 특별한 설정 없이도 손쉽게 flash 에 write 가 가능하다.

smdk 2410 보드 포팅하기 문서에서도 언급했지만, AMD flash 에 저장되어 있는 s3c2410x USB Downloader 부트로더가 지워질 경우에는 타겟보드를 부팅시킬 방법이 없다. 내가 만져봤던 보드들의 경우, 거의 jtag 포트를 제공해주었기 때문에 프린터 포트에 연결해서 부트로더를 올릴 수 있었다.
smdk2410 보드의 경우에는 따로 제공되는 jtag 포트가 없기 때문에, 부트로더를 올릴 수 있는 유일한 방법은 OPENICE 를 이용하는 방법 뿐이다.

준비운동 하기

http://www.aijisystem.com/english/product/download/openice32_A900_download.htm#A900 에서 A-900 의 Install Package 를 다운받아 설치한다.
설치하면 자동으로 생성되는 메뉴얼 PDF 파일을 잘 참고하기 바란다.
설치 후에 OPENICE 와 PC 를 USB 로 연결하여 드라이버를 설치한 후, RomUp.exe 실행시켜서 OPENICE 의 펌웨어 업그레이드를 한다.

FLASH Write 하기

타겟보드와 OPENICE 를 케이블로 연결하고, OPENICE 와 PC 를 USB 로 연결한다. 모두 전원을 연결한 뒤, FlashUp.exe 파일을 실행한다.
flash write 할 준비를 한다. 몇가지 옵션들을 지정해 주어야 하는데, 다음은 중요한 몇가지들이다.

Device smdk2410
RAM information Base 30000000
RAM information Size 04000000
Flash device Am29LV800BB
Data Width 16 bit
Erase Chip
Target Image file u241mon.bin
Set SMU 체크
Download 체크

옵션을 지정해주었다면, 'Flash → Program' 을 눌러서 write 한다.

NOR Flash Write 에러 발생시 대처법

이것은 순전히 필자의 경험을 바탕으로 작성한 글이다.
OPENICE 의 IDE 툴인 스파이더를 사용해서 디버깅을 하려고 디버깅 이미지를 (0x0) 번지에 올려보고 여러가지고 시도를 하던 중에, NOR Flash 에 있던 VPOS 이미지가 지워져 버렸다. 나는 다시 VPOS 이미지를 쓰기 위해, 점퍼 설정을 하고, 2410 테스트 프로그램을 이용해서 NOR Flash Write 를 시도했지만, Erase 하는 과정에서 에러가 발생해 버렸다.

Erase the sector : 0x80000000.
E : 80000000 = ffff0006
Blank Check Error!!!

몇 번을 다시 시도해보고, 심지어 AMD Flash 에 있는 프로그램을 다시 Write 해봤지만, 소용이 없었다.
지금 현재는 이 문제를 해결한 상태이긴 하지만, 아직도 정확히 어떤 원인으로 발생한 것인지는 잘 모르겠다.
단지 내가 시도해 본 것들을 적을 것이고, 이것 중에 아마 답이 있지 않을까 싶다.

  1. 앞에 문서에서 AMD Flash Write 하는 방법을 설명했는 데, 여기서는 점퍼 설정을 'Strata' 로 바꾸고, Flash 모델을 'INTEL_28F128J3A' 로 바꾸고, 다른 옵션들은 모두 동일한 상태로 'erase' 버튼을 클릭해서 지운다. 시간이 꽤 걸릴것이다. 'Erase complete!' 메세지가 나오면 성공이다. 만일 이때 시간이 지나도 응답이 없으면, 취소하고 아무 .bin 파일이나 지정하고 'program' 한다. 수행 도중에 분명히 오류가 날 것이다. 그러면, 다시 'erase' 버튼을 실행한다.
  2. AMD Flash 를 위에서 설명한 방법으로 다시 Write 한다.

모든 작업이 끝났다. 제대로 NOR Flash 가 동작하는지 확인해보자!!

AMD Flash Bootloader 에러 발생시 대처법

어느날 잘 사용하다가, NOR Flash 에 Write 하기 위해, 점퍼세팅을 바꾸고, AMD 로 부팅했다. 그런데, 알 수 없는 문자들과 키보드 입력이 먹지 않는 것이었다. 혹시 데이터가 깨졌나 싶어, OPENICE 로 새로 Write 를 했지만 결과는 마찬가지였다.

결국 문제는 파워(SMPS)가 문제였다. 다른 SMPS 로 연결 후에 켜보니 잘 동작했다. 기존의 쓰던 파워를 청소해주고 코드를 곧게 펴주니, 제대로 동작했다.