Skip to main content
SoC Integration Solution
SoC Integration 3- SoC Integration Solution

February 26, 2026

Simply connecting wires, or wiring, can be automated with tools.
However, the tools don’t understand why they were connected that way or what meaning those wires hold.

A connection with meaning cannot be fully automated.
That is why SoC Integration is difficult.

So what should we do?

I believe there are two major directions to solving this problem:
1. Enable data to be viewed in a multidimensional way.
2. Automatically generate the information that emerges after connections are made.

First, viewing data multidimensionally means being able to examine the information embedded in a connection from multiple perspectives.

Let’s take a clock as an example.
On the surface, a clock connection appears to be a simple piece of wiring.

But behind it lies context:

What frequency is being connected?
Through which MUXes or dividers has it passed?
Which PLL or oscillator defines its root?
How is the control logic structured to manage it?

A wiring without this context, even if physically connected, is incomplete in design.
When all this information is properly reflected, a single wiring becomes a connection with design integrity.

The same goes for power and bus connections.
Within the overall system architecture, you need to be able to see in real time the significance of your integration.

SoC Canvas partially addresses this challenge.
It transforms connections from simple wiring into architectural relationships.
That is the first direction.

The second direction is the automatic generation of information after integration.

Integration does not end when wires are connected.
Even after connections are made, the chip still contains a large amount of integration-dependent information:

How is the address table structured?
Where are interrupts mapped?
What is the bandwidth of the bus architecture?
What is the total power of the integrated IPs?

All of this information is generated as a consequence of connection.

However, managing this manually doesn’t reduce the iteration loop;
rather, it increases the possibility of errors.

Related information needs to be linked and automatically generated.

In other words,
I believe that reducing the iteration loop by referencing or automatically generating information related to wiring is focus should be on the preceding
and following aspects of the wiring, not the wiring itself.

Integration is not about wiring.
It is about meaning.

And structuring and preserving that meaning
is the essence of ITDA Semiconductor’s Integration Solution.


단순히 선을 연결하는 일, 즉 wiring은 툴로 자동화 할 수 있습니다.
하지만 왜 그렇게 연결했는지, 그 선이 어떤 의미를 가지는지는 툴이 이해하지 못합니다.

의미를 가진 연결인 connection은 자동화를 할 수 없습니다.
그래서 SoC Integration이 어려운 것입니다.

그럼 어떻게 해야 할까요?

저는 문제를 해결하는데 크게 2가지 방향이 있다고 생각합니다.
1. 데이터를 입체적으로 확인할 수 있게 하고,
2. 연결이 된 이후의 정보를 자동 생성해주는 겁니다.

먼저, 데이터를 입체적으로 확인한다는 것은 connection이 가진 정보를 다방면에서 확인할 수 있어야 한다는 뜻입니다.

클럭으로 예를 들어보겠습니다.
클럭의 연결은 겉으로 보면, 하나의 wiring입니다.

하지만 그 안에는
연결된 주파수가 몇 GHz인지,
어떤 MUX나 Divider들을 거쳐 왔는지,
클럭 루트는 어떤 PLL 혹은 OSC를 사용하는지,
연결을 제어하는 제어부는 어떤 형태로 구성되어 있는지 같은 맥락이 담겨 있습니다.
이런 맥락이 빠진 wiring은 물리적으로 연결되어 있어도 설계적으로는 완성되지 않습니다.

이 모든 정보가 올바르게 반영되었을 때,
그 하나의 wiring은 디자인적 완결성을 가진 connection이 됩니다.

Power나 Bus도 마찬가지입니다.
전체 시스템 구성에서, 내가 integration하는 부분이 어떤 의미를 가지는지 실시간으로 확인할 수 있어야 합니다.

SoC Canvas는 이부분을 부분적으로 해결하고 있습니다.
연결을 단순한 wiring이 아니라 Architecture 관점에서 connection으로 보이게 만드는 것,
그것이 첫번째 방향입니다.

두번째 방향은 연결이 된 이후의 정보를 자동 생성해주는 것입니다.
Integration은 연결이 되었다고 해서 끝난 게 아닙니다.
연결이 된 이후에도 칩 안에는 Integration에 필요한 정보들이 많이 있습니다.

Address Table은 어떻게 되는지,
인터럽트는 어디에 연결되는지,
Bus 구조의 Bandwidth는 얼마나 되는지,
이 안에 있는 IP들의 Power 합이 얼마인지,
이 모든 정보는 connection의 결과로 생성됩니다.

하지만, 이걸 수작업으로 관리하면 Iteration Loop는 줄지 않고, 오히려 오류 가능성만 커집니다.
연관된 정보를 연동해서 자동으로 생성해줘야 합니다.

즉, wiring 자체를 자동화하는 것보다는,
wiring과 연관된 정보를 참조하거나 자동생성하여, Iteration Loop를 줄여주는 것이
저는 Integration Solution으로서 가치가 더 크다고 생각합니다.

wiring이 아니라,
wiring의 앞과 뒤에 더 집중해야 합니다.
Integration은 wiring의 문제가 아니라, 의미의 문제이기 때문입니다.
그리고 그 의미를 구조화하고 유지하는 것이
잇다반도체의 Integration Solution입니다.