Category Archives: SoC & IP design

끊임 없는 삽질..

약간 정신이 없는 상태에서 일을 했더니만 결국은 삽질로 빠지는 경우가 많습니다.


오늘의 삽질은 perl 에서 ord의 사용에 관한 것이지요.


그 동안 compiler에 의하여 생성된 elf 파일을 objcopy utility로 binary file을 생성하고, 이걸 perl에서 $hexval = ord(getc(INHANDLE)); 과 같은 방법으로 verilog HDL에서 읽을 수 있는 파일 형식(readmemh()를 이용하는 거죠..)으로 변경해서 사용해 왔는데, 오늘 갑자기 이걸 sub routine으로 만들고 돌렸더니만 값이 이상하더군요.


그래서 해당 서브 루틴을 따로 빼서, 프로그램을 돌려 봤더니만 정상! @_@


한참을 헤매다가, Perl/Tk의 GUI에서 한글을 사용하기 위해서use encoding ‘utf-8’을 사용했다는 것을 깨달았습니다. ord는 encoding이 없을때는 binary를 hex값으로 바꿀때 상당히 유용하지만(ascii를 return하기 때문이지요), unicode setting에서는 binary를 해석해서 128보다 큰 값이면 unicode로의 변환을 시도하는 거죠 ㅠㅠ;


결국은 mwultong님의 blog에 있는 hex code conversion 부분의 코드를 일부 차용하여 프로그램을 변환 프로그램을 돌렸습니다.


buf16Array = unpack “C*”, $buf16; # 이 부분이 핵심이죠.. ^^;


역시 뭔가를 가정하고 만드는 건 좀 위험한 생각이었던거 같습니다. 저 프로그램에서 unicode를 사용하게 될 것이라고는 전혀 생각하지 않았었으니까요.. 실용주의 프로그래머라는 책을 보면 unicode를 항상 고려하라고 하던데, 이 규칙을 위배한 것이 문제겠지요.

여하튼, 심각한 삽질하지 않고 끝나서 다행입니다요~잇힝~
사용자 삽입 이미지

Technorati : , ,

Android, 환경의 변화

Google에서 발표한 Linux 기반의 Opensource Handset Platform인 Android를 이용한 첫번째 휴대폰의 prototype이 나왔다고 합니다. [http://www.engadget.com/photos/google-attacks-android-at-mobile-world-congress-1/]


많은 분들이 알고 계시듯이, Android는 Linux Kernel에 기반을 두고 있고, Application Layer의 경우 Java기반을 많이 두고 있습니다. 현재까지는 전체의 source code가 완전히 공개된 것도 아니고 전반적인 영향력을 평가하기는 이르지만, 그간 각사의 Platform에 편향되어 있던 휴대폰 개발 환경이 공개 형태로 진행됨으로써, 많은 application developer가 휴대폰 개발에 참가할 수 있을 것이라는 것을 예상해 볼 수 있습니다.


이러한 경향은 소프트웨어 뿐 아니라 하드웨어 개발에도 그대로 적용됩니다. Open Source 정책을 취하고 있으므로, 어떤 프로세서/SoC이던지 Android를 위한 kernel을 효과적으로 포팅하고 middleware에 대한 지원을 강화한다면, world wide market에서의 경쟁력을 갖출 수 있는 기반이 마련될 수 있겠지요.


많은 SoC 개발사(특히 휴대폰을 타켓으로 하는)의 경우 표준화된 O/S의 적용이 전반적인 개발 효율을 높이는데 유용하다는 것을 이미 인지하고 있었지요. Android의 영향력이 국내에까지 확대되어 표준화된 O/S의 지위를 얻을지, 혹은 Microsoft의 Windows Mobile이 국내의 대세로 자리 잡을지 상당히 궁금해지는군요.


여하튼, 저희와 같은 프로세서 회사의 입장으로써야 접근성의 문제등을 고려했을 때 Android의 공개가 상당한 기회이자, 위기가 되는 사건(?)이라 생각되는 군요.



[introduing Android]





[Androidology – Part 1 of 3 – Architecture Overview]





[Androidology – Part 2 of 3 – Application Lifecycle]





[Androidology – Part 3 of 3 – APIs]


Technorati : ,

Open Verification Methodology 공개!

VMM에 맞은 편에 존재하던 mentor의 AVM이 있었습니다만, 무게감이 떨어지는 듯 했었지요.

얼마전에 Cadence와 Mentor가 같이 OVM을 위하여 작업을 한다는 이야기가 솔솔 흘러나왔고, Synopsys의 합류를 권장했지만 거절당했다는 이야기도 있었지요. 그 OVM이 공개되었군요.. (언제 공개된거지?)
음.. 뉴스란을 보니 얼마되지는 않은것 같습니다만.

관심 있으신 분들은 다운 받아서 사용해 보신 후에 소감을 ^^;

http://www.ovmworld.org/


Technorati : ,