Polaris-1은 총 4개의 프로세서(Empress 1개, Lucida 2개, ZaramDSP 1개)로 구성되어 있는 Heterogenous MPSoC 로 저는 이번 프로젝트에서 메인 프로세서의 캐시와 버스 인터페이스의 성능 개선 및 OpenVG 가속기 설계에 참여를 했습니다.
그래픽 경험이 없는 저에게 OpenVG 가속기는 처음 접해보는 새로운 분야이고, 이번 칩의 핵심 기능 이었기 때문에 많은 고생을 했던것 같습니다. 가속기에서 Tessellation 파트와 캐시와 버스 인터페이스 모듈을 담당했었는데 tessellation에서 오류가 있으면, 가속기 자체가 오동작을 하게 되고, 캐시와 버스 인터페이스에서 오류가 있으면 출력되는 영상에 문제가 생기기 때문에 검증 과정에서 이래 저래 끌려 다녔던것 같습니다.
OpenVG 가속기에 너무 치여서인지 메인 프로세서의 캐시 및 버스 인터페이스 성능 개선은 주 업무임에도 불구하고 약간 안일하게 작업을 진행했던것 같습니다. 이 세계에서 안일함은 바로 버그인데 역시나 특정 조건에서 캐시의 오동작이 지난주에 발견되었습니다. 덕분에 올해도 버그신을 전 피하지 못했습니다. ^^; (매년 버그를 만들다 보니 한해라도 설계한 모듈에서 버그가 없는 것이 저의 바램입니다.)
그래도 새로운 분야에 대한 경험과 입사 이후 개발된 프로세서들이 하나의 칩에 담겨져 있어 구석 구석 나의 손때가 묻어 있다고 생각하니 뿌듯하기만 합니다. 물론 팀원들과 회사 동료들이 있었기 때문에 이 정도 경험을 쌓을 수 있었겠지만요. 다음 주부터는 칩테스트를 하기 위하여 정신 없을테니 주말 동안 이런 뿌듯함을 오랫동안 즐겨야 겠습니다. ^.^~~
'SoC' 카테고리의 다른 글
돌덩어리가 되지 않게 하기 위하여... (0) | 2010.05.01 |
---|---|
AMBA 4 가 발표 되었네요. (0) | 2010.03.11 |
ADChips Core-A Platform (0) | 2009.11.05 |
벌써 1년... 집중하자!! (0) | 2009.10.13 |
지원 vs 개발 (0) | 2009.09.17 |