이 프로젝트는 NPU 디바이스와 그 리눅스 드라이버를 밑바닥부터 직접 만드는 것이다.
디바이스는 QEMU 안에 에뮬레이션 모델로 만들고, 드라이버는 그 디바이스를 잡는 accel 드라이버로 만든다.

레퍼런스로는 인텔 NPU 드라이버인 drivers/accel/ivpu를 삼았다. 헤더 포함 소스 코드가 1만 5천 줄 정도 되는데, 이 드라이버가 할 수 있는 건 전부 할 수 있게 만드는 게 목표다.
ivpu는 NPU 드라이버가 어떤 일들을 처리해야 하는지 파악하는 용도로만 보고, 코드는 전부 새로 짠다.
보면서 더 낫게 만들 수 있겠다 싶은 부분은 바꿔 볼 거고, 결국 ivpu랑 같은 방식을 택하게 되는 곳도 당연히 있을 수 있다.

이 시리즈는 그 과정을 남기는 개발 기록이다.
다 끝내고 정리해서 쓰는 게 아니라 작업하면서 그때그때 쓰는 거라, 삽질한 것도 그대로 남긴다.