기업들은 제조 공정을 모니터링하기 위해 종종 오래된 통계적 공정 관리(SPC) 소프트웨어에 의존합니다. 업계에서는 다른 수많은 SPC 프로그램도 사용하고 있지만, 기업들은 사용자의 데이터 분석 및 표현을 어렵게 만드는 구형 프로그램을 고수하는 경우가 많습니다.
이 포스터는 반도체 산업에서 대량 웨이퍼 생산에 일반적으로 사용되는 퍼니스의 필름 두께 데이터를 나타내는 SPC 차트를 만드는 방법을 제시합니다. 이러한 대량 생산 퍼니스에는 두께 결과에 영향을 미칠 수 있는 다양한 요소가 있습니다. JMP Graph Builder에서 이 정보를 전달하는 데는 다음과 같은 여러 가지 이점이 있습니다.
JMP는 정보를 쉽게 표시하고 문제를 식별하는 데 뛰어난 상호 작용성을 갖추고 있으므로 엔지니어가 더욱 자신 있게 결정을 내리는 데 도움이 됩니다.
안녕하세요. 저는 코디 샌드퀴스트입니다. 텍사스 오스틴에 있는 NXP에서 프로세스 엔지니어로 일하고 있습니다. 몇 년 전 JMP 스크립팅을 처음 접했는데, 쉽지 않은 도전이었지만, 제 일상 업무에 정말 유용하다는 것을 알게 되었습니다. 오늘 제가 준비한 것은… SPC(통계적 공정 제어)를 위해 JMP를 사용하여 인터페이스를 만든 것입니다.
제조업에 종사하는 사람이라면 누구나 SPC가 무엇인지 잘 알고 계실 겁니다. 저도 여러 가지 SPC 시스템을 사용해 봤는데, 어떤 시스템은 다른 시스템보다 뛰어나지만, 모두 나름대로의 장점이 있습니다. 모두 어떤 면에서는 부족하거나, JMP처럼 정보를 빠르게 전환하거나 상호작용하는 기능이 부족합니다.
오늘 제가 여러분께 드리는 것은 SPC 차트와 JMP를 만들어 엔지니어링 관련 의사 결정을 더욱 빠르게 내리고 정보를 공유하는 방법입니다. 시중에 나와 있는 일부 SPC 프로그램의 문제점 중 하나는, NXP 등급을 매기는 데 사용하지 않는 방식을 그대로 적용하면, 상당히 오래된 SPC 시스템을 사용하게 된다는 것입니다. 저는 직장에서도 이 시스템을 사용하고 있습니다.
이 용광로에 대해 간단히 말씀드리자면, 저희는 대형 수직 용광로를 사용하는데, 최대 150개의 생산 웨이퍼를 수용할 수 있습니다. 이는 중요한 사항이며, 6개 로트(lot)를 수용합니다. 로트당 웨이퍼는 25개이고, 용광로에는 여러 구역이 있습니다. 저희는 각 구역에 테스트 웨이퍼 모니터를 설치하여 용광로의 한 배치뿐만 아니라 각 구역 전체의 필름 두께를 추적합니다.
제가 사용하는 SPC 프로그램은 우선 한 번에 하나의 용광로만 표시합니다. 하지만 모든 용광로를 같은 차트에 표시하여 특정 용광로가 눈에 띄는지 확인하는 것이 더 좋습니다. 개별 구역의 두께를 표시하는 것이 아니라 모든 구역의 평균을 표시합니다. 한 구역에 개별적인 문제가 있는 경우, 이 SPC 프로그램만 고집한다면 그 문제를 파악하기가 정말 어렵습니다.
이 외에도 문제를 일으키는 다른 일반적인 요인들을 분석하는 것은 매우 어렵습니다. 여기에는 배치당 생산 로트 수가 포함될 수 있습니다. 웨이퍼가 25개와 150개로 다른 경우, 로드 크기가 다르면 두께 결과가 달라질 수 있습니다. 두께를 측정하는 계측 장비의 품질이 좋지 않았을 수 있으며, 계측 장비의 성능이 떨어지는 것은 드문 일이 아닙니다. SPC 시스템만 고집한다면 이러한 정보를 확인하기 어려울 때가 있습니다.
JMP 스크립팅을 사용하여 모든 용광로를 하나의 그래프에 표시할 수 있는 맞춤형 대시보드를 만들었습니다. 용광로 위치별로 표시할 수 있습니다. 용광로 상단, 하단 등 각 위치에서 어떤 일이 일어나고 있는지 확인할 수 있습니다.
다시 한번, 제가 언급했던 또 다른 점은 여러 공통적인 요인에 대해 다른 문제가 있는지 확인할 수 있다는 것입니다. 계측학에서 측정한 값일 수도 있고, 로드 크기일 수도 있습니다. 심지어 이 표에 웨이퍼 공급업체 정보와 같은 다른 정보를 결합하여 새로운 웨이퍼 공급업체가 추가되었고, 그곳에서 두께 편차를 유발하는 요인이 있는지 확인할 수도 있습니다. 제가 말씀드리는 이러한 기능들은 JMP를 사용하기 훨씬 쉽게 만들어 주고, 일반적인 SPC 프로그램보다 더 많은 기능을 제공합니다.
제가 이렇게 설정한 방식은 원하는 공정 레시피를 빠르게 찾는 것을 좋아합니다. 레시피에 익숙하지 않으시다면, 다양한 두께 목표가 있는 다양한 유형의 공정이 있다는 것을 알려드리고 싶습니다. 저는 원하는 공정 레시피를 빠르게 파악하고, 그 레시피를 찾고 싶습니다. 그래서 이름을 입력하고 "확인"을 누르기만 하면 되는 팝업 창을 만들었습니다.
그러면 해당 이름을 가져와서 해당 프로세스에 대한 하나의 파일과 일치시킵니다. 해당 프로세스 레시피 이름에 대한 두께 제한 및 목표까지 필터링합니다. 원시 두께 파일이 있습니다. SPC 시스템의 데이터에는 여러 레시피의 두께 데이터가 있습니다. 다시 입력하고 원하는 레시피로 필터링하면 이 모든 내용이 Graph Builder에 표시됩니다.
Graph Builder는 제가 또 애용하는 앱인데, 상호작용이 매우 활발합니다. 두 차트가 나란히 배치된 것을 보실 수 있을 겁니다. 위쪽에는 용광로가 하나 있고, 아래쪽에는 여러 용광로가 있는데, 각 구역의 데이터를 표시할 수 있습니다. 실제로 이 차트는 평균 두께뿐만 아니라 표준 편차, 그리고 각 구역의 범위까지 계산할 수 있도록 설정되어 있습니다. 그래서 이런 식으로 사용자 정의도 가능합니다.
계측 장비나 부하 크기 같은 일반적인 요인을 기준으로 필터링하고 싶다면, 해당 요인들을 빠르게 필터링할 수 있습니다. 개별 용광로별로도 필터링할 수 있죠. 네, 물론 장점은 사용자 정의가 더 쉽고, SPC 차트를 만드는 데 더 큰 유연성이 있다는 것입니다. 또한, 변동을 유발하는 다양한 요인을 빠르게 분석하고 이를 화면 캡처하여 다른 사람들에게 전달하여 해결책을 찾거나, 특정 구역에서 문제가 발생하여 조정이 필요한 경우 바로 적용할 수 있습니다.
이 방법의 유일한 단점은 두께 데이터를 직접 가져와서 CSV 또는 텍스트 파일로 저장해야 한다는 것입니다. 이상적으로는 NXP의 데이터베이스에 직접 연결할 수 있으면 좋겠지만, 제게는 그럴 권한이 없습니다. JMP의 잘못은 아니지만, 제 회사에서는 그렇게 할 수 있는 권한이 없습니다.
스크립트에 대해 좀 더 자세히 설명하자면, 긴 스크립트와 각 항목을 하나하나 살펴보는 게 그렇게 신나는 일은 아니라는 걸 알지만, 아주 간단하게 핵심 요점과 작동 방식에 집중하겠습니다. 앞서 언급했듯이, 여러 공정 레시피의 두께 데이터를 모두 가져와야 하는 원시 두께 파일이 있습니다. 또한 SPC 제한과 목표가 있는 다른 파일을 저장하고 JMP의 모달 함수를 사용하여 팝업 창을 띄웁니다. 팝업 창입니다. 원하는 레시피 이름을 입력하면 원시 두께 파일과 파일, 제한에 대한 정보가 필터링됩니다.
여기에서 한계와 목표가 변수로 저장되고, 이 변수는 나중에 그래프 빌더에서 해당 선, 목표 및 한계, 그리고 증분과 크기를 생성하는 데 사용됩니다. 이는 JMP 스크립팅의 유연성을 보여주는데, 이 데이터 파일에서 모든 행이 동일하지 않다는 것입니다. 각 개별 배치는 다를 수 있습니다. 테스트 웨이퍼 모니터에는 웨이퍼가 두 개 있고 상단 및 하단 영역에서 실행됩니다. 때로는 웨이퍼가 세 개, 때로는 웨이퍼가 다섯 개 있습니다. 따라서 한 행에는 두 개의 열이 채워지고, 다른 행에는 세 개, 또 다른 행에는 다섯 개가 채워지며 매번 변경됩니다.
일련의 if 문을 사용하면, 여기서도 자세히 설명하지는 않겠지만, 일련의 if 문을 사용하면 어떤 열이 채워졌는지, 각 셀이 참조하는 개별 영역이 무엇인지 식별할 수 있으므로 올바른 위치에 할당할 수 있으므로 실수나 혼란이 없고 Graph Builder에 표시할 때 잘못된 영역에 표시되는 일이 없습니다.
Graph Builder에서 스크립트를 종료하는 방법에 대한 간단한 설명을 덧붙이자면, 해당 변수들은 Graph Builder에 배치되어 선을 만들고, Graph Builder를 사용자 정의하여 원하는 방식으로 정보를 표시할 수 있습니다. 제가 직장에서 겪었던 문제 해결의 간단한 예로, 저희 주요 SPC 차트인 SPC에서 공정 레시피 중 하나에 사용되는 용광로 하나가 표준 편차에 문제가 있는 경우가 있었습니다. 저희 SPC 시스템은 세부 정보를 제대로 표시하지 않는다는 점을 기억하세요.
JMP 스크립트를 사용하여 모든 구역에 대한 정보를 분할할 수 있었고, 가장 아래 구역에서는 이중 모드가 관찰되었습니다. 즉, 두 가지 모드가 동시에 발생하는 것입니다. 그런 다음 개별 용광로를 필터링하여 해당 용광로만 표시하고, 몇 가지 공통적인 요소를 기준으로 필터링했습니다. 이 경우에는 로드 크기였습니다. 6개 로트 로드는 다시 말해, 전체 배치를 의미하며, 용광로가 150개의 생산 웨이퍼로 완전히 가득 찼다는 의미입니다. 이를 통해 문제의 원인을 정확히 파악할 수 있었습니다.
문제는 전체 생산 배치를 처리하는 용광로의 맨 아랫부분에서 발생했고, 범위가 급증했습니다. 그런 다음 계측기에서 얻은 좌표와 이를 결합하여 웨이퍼 맵을 만들고, 웨이퍼의 어느 부분, 용광로의 어느 부분에서 문제가 발생하는지 자세히 조사할 수 있었습니다.
이 정보를 장비 기술자들과 공유함으로써, 저희는 용광로의 문제 발생 지점을 정확히 파악하고 조치를 취하여 부품을 교체하고 용광로를 다시 양호하고 안정적인 상태로 복원하겠습니다. 간단한 예시일 뿐이며, 시간 내주셔서 감사합니다. 이 정보가 도움이 되셨기를 바라며, 컨퍼런스에서 뵙겠습니다.