2000 ARMISS (ARM Instruction Simulator)

ARMISS (ARM Instruction Set Simulator) is developed for ARM7/ARM9 Compatible Processor Design.
ARMISS can run the binary image file from ARM compiler for compatibility test.
ARMISS is a cycle-accurate simulator to validate accurate pipelined operation and it also can be compiled to BFM (Bus Functional Model) for a System-on-Chip design.
It saves simulation time as it is hundred times the faster than Verilog RTL Simulation.

SoftARM is Graphic User Interface based on GTK+ (The GIMP Toolkit) which is connected to ARMISS through ARMISS via IPC (Inter-Process Communication). SoftARM also can be connected to Verilog Simulator via IPC to control and monitor the simulation.

1999 ARM7 Compatible Processor

In 1999, I led a project to develop the embedded processor design technology with the sponsorship of Korea Ministry of Science and Technology, Korea Ministry of Commerce, Industry and Energy.
In order to catch up the state-of-art technology, I designed the ARM7TDMI compatible processor first.
The behavioral compatibility is verified by developing the instruction set simulator, ARMISS and
prototyping with FPGA.

It was integrated to RamP processor which using the MML (Merged Memory Logic) process.
As the MML process is not developed for the commercial usage, there was no standard cell library. I developed not only the processor but also the standard cell library for it with the technology that I developed for IDEC library.

FPGA Prototype of ARM7 Compatible Processor

Die Photo of ARM7 Compatible Processor

일주일안에 죽이게 피아노치는 방법

싱어송라이터 전지한

싱어송라이터 전지한을 아시나요?
전 피터팬컴플렉스라는 밴드는 들어본 것 같긴해도 리더인 전지한씨나 그들의 노래는 알지 못했었습니다. 하지만, 오늘 부로 전지한씨를 존경하기로 했습니다.

일요일이지만 DB out을 앞두고 확인할 것들이 있어 출근했다가 습관처럼 접속한 올블로그 첫페이지에서 누구나 일주일안에 죽이게 피아노치는 방법 이란 제목을 발견하고 “세상에 그런게 어딨어?”라는 생각으로 클릭했습니다. 친절하게 동영상 강의까지 있어서 보다보니 끝까지 다 보았습니다.(시간상 좀 넘기긴 했습니다만…)

여섯살때부터 7년간 피아노를 배우고 또 그 이후로도 즐겨치면서 사실 단한번도 코드에 대해서 누군가에게 배워본 적이 없었습니다. 기타는 오랜 숙련자가 아니더라도 코드만 보고 금방 치는 것을 보고 피아노 코드북을 구입하고 코드가 나온 가요책을 보고 치곤 했지만 복잡한 코드들에서 막힌 적이 많이 있었습니다. 참 답답하지만 딱히 어디서 배우기도 마땅치않았지요. 화성학에 대해서 공부를 해야 피아노를 제대로 치겠구나하고 책을 샀지만 또 공부가 쉽진 않았구요.

그렇게 오래된 고민거리를 전지한씨가 한방에 날려주시는군요.
Edim7, C#mM7, Dsus4, B7(b6) 이런 복잡한 코드를 너무나 쉽게 알려주는 것을 보고나니 머리에 한방 제대로 맞은 기분입니다.

늘상 회로설계에 있어서도 기본이 제대로 되어있어야 응용이 가능하다고 강조하곤 하는데 음악에 대한 이론도 기본이 정말 중요하다는 것을 느낍니다. 기본이 갖춰져있으면 너무도 쉬울 수 있는 내용이 정말 어렵게만 느껴질 수 있음을 새삼 깨닫습니다.

핵심을 간파하는 능력도 대단하지만, 가장 뼈대가 되는 내용을 최대한 쉽게 표현하고 전달하는 것은 정말 존경스럽습니다. 예전에 ‘마이크로프로세서 설계 무작정 따라하기’라는 칼럼을 1년간 연재한 것이 생각납니다. 최대한 단순하고 쉽게 전달하고자 simplecore라는 프로세서를 만들었었지요. 경종민교수님의 권유로 책으로 쓰고 싶었는데 어떤 분의 반대로 쓰지못한게 여전히 아쉽습니다.

이 블로그를 통해 제가 혼자 끙끙대며 익혔던 내용들을 최대한 쉽게 풀어봐야겠습니다.

그나저나 아이키우느라 집에 피아노도 치워버렸는데… ㅋ

칩쟁이들의 모임등록

블로그를 다시 시작할 수 있게 가장 큰 계기를 만들어 준 사람은 babyworm님이다.
학교에 있을 때 SystemIC 2010이라는 정부 프로젝트를 함께 한 분인데,
말이 함께이지 서로 소속과 과제가 달라서 이름도 모르고 직접 만난적도 없다. ^^;
하지만, 모두 국산 마이크로프로세서를 개발하는 것이 임무였기에 그 당시엔 서로에게 관심을 갖을 수 밖에 없는 상황이었을 듯…

babyworm님은 명령어부터 모두 순수 국산인 EISC라는 마이크로프로세서를 개발하였고, 난 그때(1999년)도 그렇지만 지금도 전 세계를 꽉 잡고 있는 ARM프로세서와 명령서가 호환되는 프로세세를 개발하였다. ARM7와 ARM9을 개발하여 RamP라는 휴대용 3차원 그래픽 프로세서에 탑재하였다. (아래사진은 ARM9을 탑재한 RamP-4)

RamP-4 Mobile 3D Processor

RamP-4

baryworm님은 아직까지도 좋은 국산 프로세서를 개발하기위해 노력하고 계신 반면, 난 졸업 후 Display분야로 전공을 바꾸어 휴대용 LCD Driver IC를 개발하고 있다. 내가 척박한 국산 프로세서 시장에 쉽게 등 돌려버린게 반성될 만큼 babyworm님은 고군분투하고 계시다. 오랫동안 한 분야에 집중하신 만큼 예전에 내가 알던 EISC와는 많이 달라진 제품을 개발하고 계신 것 같다.

내가 다른분야로 선회하게된 것은 양산(Mass Production)이라는 것을 해보기 위해서이다. 학교에 있을 때 깨달은 것은 시제품(prototype)과 제품(product)의 차이는 매우 크다는 것이다. 제대로 된 기술을 터득하려면 반드시 양산 경험이 있어야한다고 생각했고, 이러한 경험을 얻기에 적당한 분야중 하나로 선택하게 된것이 바로 LCD Driver IC(줄여서 LDI 또는 DDI라고 함)이다. 또한 앞으로 DDI도 복잡한 알고리즘을 수행하는 SoC가 될 것이라는 판단에서였다.

직접 개발한 DDI가 적용된 LCD모듈

입사하고 첫 해, DDI의 Logic Block전체 설계를 맡아서 개발한 제품이 성공적으로 진행되어 이미 1,000만개 이상 팔았으니 목표를 어느정도 이루었고, 또 조금씩 DDI에도 화질개선 알고리즘이 적용되기 시작하였다.

본론으로 돌아와 블로그를 운영하게끔 직접적인 계기를 만들어주신 babyworm님이 만든 blog cafe에 내 블로그를 등록하였다. 앞으로 많은 칩쟁이들과 예비 칩쟁이들이 좋은 정보를 공유할 수 있는 공간이 되었으면 한다.