
The semiconductor design process is actually so complex and involves so much data that when there are many people, the sophistication increases, but communication inefficiency increases.
As The mythical man-month (Frederic P. Brooks, Jr.) well expressed, when there are many people, productivity does not continue to increase; rather, there comes a point where it decreases. This is a serious problem that is already being faced in places that design ultra-large chips.
If you think about why this happens when there are many people, it is because when there are many people, the amount of information that everyone has to give and receive increases exponentially.
When there are two people, you only need to talk to one person, but when there are five people, there are ten conversation combinations. As a result, misunderstandings and mistakes occur, resulting in data mismatches, and it takes a lot of time to find and eliminate them. In addition, when several people work on a project at the same time, there are frequent situations where someone has to wait and someone has to coordinate, which ultimately slows down the flow of work.
So, how can we solve design complexity while also solving data mismatches?
Design complexity should be solved by simplifying it into an abstracted picture, and a huge amount of data should be contained in the picture as information as one data.
And everyone should look at this data.
SOC Canvas was born from this background.
It can be designed through a GUI without code, includes all designable configurations, and allows all engineers to check the data in the form they want. I think this will dramatically increase the productivity of semiconductor design.
반도체 설계 프로세스는 실제로 너무 복잡하고 데이터가 많기 때문에,
사람이 많으면 정교함은 올라가지만, 의사소통의 비효율이 커지게 됩니다.
The mythical man-month(Frederic P. Brooks, Jr.)에서 잘 표현한 것처럼
사람이 많아진다고, 생산성이 계속 올라가는 것이 아니라, 떨어지는 시점들이 오게 됩니다. 특히나, 초대규모 칩을 디자인하는 곳에서는 이미 심각하게 겪고 있는 문제입니다.
그럼 사람이 많으면 왜 이러한 일이 일어나는지 생각해보면,
사람이 많아지면 모든 사람이 서로 주고 받아야 할 정보가 기하급수적으로 늘어나게 됩니다. 두 사람 일때는 한 명과만 대화하면 되지만, 5명일 때는 10개의 대화 조합이 생기게 되기 때문입니다.
그러다 보면 오해나 착오가 생기면서 데이터 미스매치가 발생하게 되고, 이를 찾아내고 없애는데 많은 시간이 소요됩니다.
거기다, 여러 명이 동시에 하나의 프로젝트를 하다 보면 누구는 기다리고, 누구는 조율해야 하는 상황이 자주 발생하게 되고, 결국 일의 흐름이 느려집니다.
그럼, 설계의 복잡도를 해결하면서, 데이터 미스매치도 해결하려면 어떻게 해야 할까요?
설계의 복잡도는 abstraction된 그림 형태로 단순화해서 해결하고, 방대한 양의 데이터는 정보의 형태로 그림 안에 하나의 데이터로 다 담아야 합니다.
그리고, 모두가 이 데이터를 쳐다보면 됩니다.
이런 배경에서 탄생한 것이 SOC Canvas입니다.
코드없이 GUI를 통해 설계할 수 있고, 설계 가능한 모든 configuration을 포함하며, 모든 엔지니어가 원하는 형태의 데이터를 확인할 수 있습니다.
이러면 반도체 설계의 생산성을 급격하게 높일 수 있을 것으로 생각합니다.
