
The published Blackwell white paper does not contain any information on DFT.
However, mass production of chips without testing is impossible, and the complexity problem becomes much more serious at the DFT level, so I will talk about DFT.
As explained in the DFT Canvas story, from a DFT perspective, a chip can be broadly divided into logic, memory, and hard IP. While logic isn’t specifically categorized, it can be divided into pure logic, clock systems, and power system control.
For pure logic and memory, commercial tools like BIST and SCAN exist, as well as standardized methodologies. Therefore, even with complex design, SCAN and BIST can be easily implemented. These methodologies are well-developed. However, there’s no standardization for controlling clock systems and power systems from a DFT perspective. Inserting SCAN into clock systems and power systems can lead to malfunctions, requiring separate management.
Therefore, to design a DFT, the DFT system must be divided into four components: logic/memory, clock systems, power systems, and hard IP, as shown in the figure above. Let’s examine them in turn.
These days, hard IPs often have thousands of pins. These IPs typically require hundreds or more pins to be controlled in DFT mode.
High-end chips like Blackwell will likely have multiple IPs, requiring thousands of test pins per chip.
The problem here is that the SoC chip can only allocate around 100 I/O pins for testing at most. The design must be such that these 100 pins can test thousands of pins within the chip.
In terms of the clock system, Blackwell controls 24,000 CUDA cores with incredible precision, so there will be far more points under control than before. Therefore, a significantly larger number of clock controllers will have been added, and this increase in clock controllers inevitably increases complexity. Naturally, this will directly increase the complexity of the DFT structure that tests this clock controller structure.
This means that handling Blackwell’s clock controller requires direct control of tens to hundreds of points, a complexity comparable to designing a SCAN that tests hundreds of billions of flip-flops.
The Power System may not be as complex as the Clock System because it doesn’t have as fine a level of control, but given the sheer number of cores, it’s unlikely to be handled simultaneously. Therefore, the Power System will likely need to directly control at least dozens of points.
Blackwell likely controlled four systems: Logic, Clock, Power, and Hard IP in the same way.
Because controlling other systems in the same way is too difficult, it’s likely they used a standard system like IEEE1687.
However, unifying with a standard system doesn’t guarantee identical control of other systems.
For the actual standard protocol to work, the locations (ICL: Instrument Connectivity Language) must be precisely described, and the corresponding operations (PDL: Procedural Description Language) must also be described.
Then, DFT tools like Tessent, TestMAX, and Modus can use this information to configure systems like SIB (Segment Insertion Bit) and TAP (Test Access Port), which correspond to the DFT network configuration. Because this process is so complex and precise, an automated design system is necessary.
NVIDIA implemented this complex and sophisticated DFT, presumably using some kind of automated design method.
공개된 블랙웰 백서에는 DFT에 대한 내용이 없습니다.
하지만, 테스트 없이 칩을 양산하는 것은 불가능하고, DFT 레벨로 가면 복잡도의 문제는 훨씬 더 심각해지기 때문에 DFT 얘기를 해보려고 합니다.
DFT Canvas 이야기에서 설명 드렸던 것처럼 DFT 관점에서 칩은 크게 Logic, 메모리 그리고 Hard IP들로 나눌 수 있습니다. Logic은 상세하게 구분하지 않았지만, 순수한 Logic부분과 Clock System, 그리고 Power System제어 부분으로 나눌 수 있습니다.
순수한 Logic과 메모리는 BIST와 SCAN같은 상용화 툴들도 있고, 정형화된 방법론이 있기 때문에 아무리 복잡해도 SCAN과 BIST를 삽입하면 됩니다. 이에 대한 방법론은 잘 발달되어 있습니다. 하지만, Clock System과 Power System을 어떻게 DFT 관점에서 제어할지는 표준화 되지 않았습니다. Clock System과 Power System에 SCAN을 삽입하면, 오동작하기 때문에, 이 부분은 별도로 관리가 필요합니다.
따라서 DFT를 설계하려면 아래 그림에서 처럼 Logic/Memory, Clock System, Power System, Hard IP 이렇게 4가지 시스템으로 DFT시스템을 분리해야 합니다. 차례로 살펴보죠.
요즘 Hard IP는 핀이 수천개 넘는 것들도 있습니다. 이런 IP들은 DFT모드에서 제어가 필요한 핀이 보통 수백개 이상이죠.
블랙웰처럼 고사양칩에는 이런 IP들이 여러개일거라, 이런 경우에는 칩 하나에 테스트용 핀이 수천개가 필요하게 되는 것입니다.
여기서 문제는 SoC 칩 전체에서 테스트에 할당할 수 있는 I/O 핀이 많아야 100개 정도 뿐이라는 것입니다. 100개 정도의 핀으로 칩 내부의 수천개의 핀을 테스트 할 수 있도록 설계해야 합니다.
Clock System의 경우, 블랙웰은 2만 4천개의 CUDA core를 굉장히 세밀하게 제어하기 때문에 기존보다 훨씬 많은 포인트가 제어의 대상이 될 것입니다. 따라서 훨씬 더 많은 수의 Clock Controller 를 삽입했을 것이고, 이러한 Clock Controller의 증가는 복잡도를 높일 수 밖에 없게 됩니다. 당연히 이 Clock Controller 구조를 테스트하는 DFT 구조의 복잡도 상승과 직결될 수 밖에 없는 것이죠.
이 얘기는 블랙웰의 Clock Controller를 다루는 일은 수십~수백개의 포인트를 직접 컨트롤해야 된다는 의미이고, 이는 수백억개의 flip-flop을 테스트하는 SCAN을 설계 하는 것과 유사한 복잡도를 가진다는 의미입니다.
Power System의 경우는 Clock System 처럼 미세하게 제어하지는 않아 그만큼 복잡하진 않겠지만, core수가 워낙 많다 보니 한꺼번에 할수는 없을 것 같습니다. 따라서 Power System도 최소한 수 십개이상의 포인트를 직접 제어해야 할 겁니다.
블랙웰은 Logic, Clock, Power, Hard IP, 이렇게 4개의 시스템을 동일하게 제어했을 겁니다.
다른 시스템들을 동일하게 제어하는 것은 너무 어렵기 때문에, IEEE1687같은 표준 시스템으로 했을 것으로 추정됩니다.
하지만, 표준 시스템으로 통일한다고 다른 시스템들을 동일하게 제어할 수 있는 것은 아닌데요,
실제 표준 프로토콜이 동작할 수 있도록, 위치(ICL: Instrument connectivity language)를 정확하게 기술해줘야 하고 이에 대한 동작(PDL:Procedural description language)도 기술해줘야 합니다.
그러면 Tessent, TestMAX, Modus 같은 DFT 툴에서 이런 정보를 바탕으로 DFT 네트워크 구성에 해당하는 SIB (Segment insertion Bit), TAP (Test Access Port)같은 시스템을 구성할 수 있게 됩니다. 이런 과정은 매우 복잡하고 정교하기 때문에, 자동화 설계 시스템이 필요합니다.
엔비디아는 이 복잡하고 정교한 DFT를 구현하는데, 아마도 모종의 자동화된 설계 방법을 사용하였을 것으로 추정해봅니다.
