VGA 화면에 Image를 출력하기 위해서는 비디오 메모리가 필요하다.
현재 내가 갖고 있는 것 중에 쓸 수 있는 부품은 저번에 롬라이터를 살때 공짜로 딸려온 M27C256B UV EPROM 뿐이었다.

아무것도 모르던 난 ㅎㅎ EEPROM을 두개 사긴 했는데 serial interface를 사버린 것이었다. SCL, SDA 두핀으로 시리얼하게 어드레스를 줘야 하기 때문에 소프트웨어적인 컨트롤이 아니면 하드웨어로 설계하기 힘들다..

어쨋든, M27C256B를 TOP2004 Universal USB rom writer에 꽂고 TopWin을 실행하였다.

TopWin에서 Type을 눌러서 EPROM 타입을 선택하였다. ST사의 EPROM M27C256B를 선택하고 OK!

그리고 bin파일에 아래처럼 한번 만들어봤다. 작은 스마일이다.
음. 역시 중국제 프로그램 ㅋㅋ 폰트가 후져서 이건 스마일인지 알수가 없네.

딱 이렇게 그려보았다. 위와 아래에 한줄 나오고 동그라미 안에 웃는 얼굴.. (쩝 잘안보이네)

M27C256B는 UV EPROM이다. UV (Ultra Violet) 타입이기 때문에 칩 중간의 동그란 윈도우에 자외선을 쐬어주면 패턴이 지워져서 다시 쓸 수 있다. 근데 난 자외선 기가 없다. 듣기로는 형광등이나 날씨 좋은날 햇볕에 오래 두면 지워진다는데 나중에 한번 해봐야 겠다. ㅎㅎ;

아래는 DIP타입 M27C256B의 칩 핀 배열이다.

중요한 것은 Operating mode를 잘 설정하는 것인데 사용법은 무척 쉽다. Read 모드이니까 E핀과 G핀에 low를 연결하고 Vcc만 연결하면 된다. 그리고 어드레스 핀들인 A0~A14까지 주소를 주면 아까 내가 적어 놓은 메모리 내용이 Q0~Q7에 출력되게 된다.

저번에 만들어두었던 VGA test logic에서 Horizontal counter와 Vertical counter로 부터 4 bit씩 받아와서 EPROM의 A0~A3, A4~A7에 연결하고 나머지 주소들은 low로 연결해주었다.
그리고 Q0를 VGA의 R에 연결하였다.
실제는 너무 작아서 Horizontal/vertical counter의 두번째 자리비트 부터 연결했다. (2배 커진것이다)

오 이미지 나온다. ㅎㅎ...

음 이 기세를 몰아서 스마일을 키워봤다. 카운터의 상위비트들을 이용했다. ㅎㅎ

음. 어서 EEPROM을 사야겠다. EPROM은 한번 쓰고 다시 못쓰니까 HELLO라고 써보고 싶었는데.. ㅡㅡ... 못해봤다. 어쨋든 이것으로 VGA에서 ramdac를 제외하고는 대충 사용방법을 익힌것 같다.

'프로젝트 > CPU 설계' 카테고리의 다른 글

cpu isa design issue  (0) 2009.01.14
address/data bus issue  (2) 2008.12.22
compiler basic phase  (0) 2008.12.13
VGA programming  (2) 2008.12.09
about broneri homebrew computer  (0) 2008.12.04

+ Recent posts