
In earlier columns, we introduced two of SoC Canvas’ product principles, GUI and Integrated Data.
A clear and intuitive GUI allows engineers to understand the design at a glance, and integrated data minimizes communication errors.
Conceptually, these ideas make sense.
But whether this is actually achievable is an entirely different technical challenge.
At the core of making this possible is our third principle, Consistency.
No matter how impressive the concept is, if the product is inconsistent or unreliable, people simply won’t use it.
I had experience with similar tools in the past and eventually had to abandon them.
The biggest reason was a lack of consistency, which ultimately dragged down the overall quality.
When people plan tools or automation projects, one word almost always comes up,
Automation.
But automation is often interpreted too simplistically
as in, “Let’s reduce the work I used to do by scripting or coding it.”
However, productivity does not increase just because part of the work is automated.
Because the essence of engineering work is not coding, it is thinking.
That thinking must be faithfully converted into results.
If you automate only the tasks without preserving the intent, you end up with fragmented scripts that require even more maintenance.
When consistency is missing, results deviate from what the designer originally intended, or unpredictable errors arise.
Debugging takes longer.
With multiple scattered scripts, it becomes unclear where the problem happened, forcing engineers to dig through every piece of code.
Even when results are produced, they cannot be fully trusted so more verification is required.
Work increases, not decreases.
Only when the entire dataset, scripts, and toolchain behave consistently as a unified system can a designer’s intent be accurately translated into the final design.
To achieve this consistency, SoC Canvas
structures its GUI to reflect how SoC engineers actually think,
enables all engineers across all design stages to access the same generated data, and
can produce and distribute every artifact required throughout the SoC design process.
This is the core engineering foundation of SoC Canvas.
It is also the reason our product philosophy has become reality
enabling anyone to design more chips with overwhelming ease and usability.
지금까지 SoC Canvas의 제품 철학 3가지 중 GUI와 Integrated Data에 대해 살펴봤는데요.
직관적인 인터페이스, GUI로 누구나 쉽게 이해할 수 있고,
Integrated Data로 모든 것을 처리하여 커뮤니케이션 오류를 최소화한다는 생각들을 할 수는 있습니다.
하지만, 이게 실제로 가능하냐는 것은 기술적으로 다른 문제입니다.
이걸 가능하게 하기 위해 가장 신경 쓴 부분이 바로 Consistency, 즉 일관성입니다.
아무리 컨셉이 좋아도, 퀄러티가 떨어지면 사용할 수 없습니다.
저도 예전에 이런 종류의 제품을 사용해본 경험이 있는데, 결국 실패했었습니다. 그 이유는 제품의 완성도가 높지 않았고, 그 중 가장 큰 이유가 Consistency 였습니다.
흔히 이런 제품이나 프로젝트를 기획할 때 떠올리는 단어가 있습니다.
자동화.
자동화라고 하면, 쉽게 “내가 하던 일을 스크립트나 소프트웨어로 줄이겠다”라는 접근으로 시작합니다.
하지만, 단순히 일을 자동화 하는 것만으로 생산성이 높아지는 것은 아닙니다. 일의 본질은 코딩이 아니라, 생각 그 자체이기 때문입니다.
이 생각이 그대로 결과물로 변환되어야 합니다.
이 부분을 놓치고 일 자체만을 자동화 하게 되면, 오히려 파편화된 스크립트 유지보수에 시간을 더 쓰게 됩니다.
일관성이 없으면 결과물이 생각한 것과 다르게 나오거나 오류가 발생하는데, 이렇게 되면 디버깅하는데 시간이 더 걸리게 됩니다. 여러개의 스크립트로 자동화가 되어 있으니, 어디서 오류가 발생했는지 찾기도 어렵습니다. 코드를 하나하나 다 뒤져봐야 하고, 결과물이 나와도 믿을 수도 없으니 검증을 훨씬 더 많이 해야합니다.
오히려 일이 늘어나고, 시간이 더 걸립니다.
전체 데이터, 스크립트, 소프트웨어가 하나로 연결되어 일관성이 있어야만, 설계자의 생각이 그대로 결과물로 변환이 될수가 있는 것입니다.
이 일관성을 위해 SoC Canvas는,
설계자의 생각을 그대로 그릴 수 있도록 SoC 설계에 필요한 기술을 반영하여 GUI를 구성했고,
생성한 데이터를 설계 각 stage의 모든 엔지니어들이 공유할 수 있으며,
설계과정에 필요한 모든 결과물을 생성합니다.
이것이 SoC Canvas의 핵심 엔지니어링 기술이고,
이를 통해 누구나 쉽게 사용할 수 있는 압도적 편의성으로 더 많은 칩을 만들겠다는 제품 철학이 현실이 될수 있었습니다.