1. 서 론
공정 기술의 발달로 인해 PCB에 존재하는 소자들과 신호선들의 밀집도가 증가하고, USB, DDR, HDMI 등의 디지털 인터페이스 규격에서 점차 신호의 속도가 증가하고 있는 추세이다. 이로 인해 PCB 내에 신호 반사와 간섭 등에 의한 신호 왜곡 및 잡음들이 존재하고, 공급전력을 줄이는 추세로 인해 잡음에 취약하게 되었다. 이러한 현상들은 SI/PI (Signal Integrity/Power Integrity) 분석의 필요성을 부각시킨다[1].
SI/PI 분석은 PCB 개발 과정 중 설계, 검사 두 가지 단계에서 수행된다. 설계 단계에서 수행되는 SI/PI 분석은 시뮬레이션을 기반으로 하는 분석으로 SI/PI 문제가 발생하는 것을 미리 예측하는데 목적이 있다. 검사 단계에서 수행되는 SI/PI 분석은 제작된 제품의 측정을 기반으로 하는 분석으로 실제 SI/PI 문제가 발생하는지 확인하는데 목적이 있다.
측정 기반의 SI/PI 분석은 하자 없는 제품을 출고하기 위해 반드시 거쳐야 하는 단계로 논란의 여지가 없다. 반면, 시뮬레이션 기반의 SI/PI 분석은 반드시 수행해야 할 과정은 아니다. 그럼에도 불구하고, 시뮬레이션 기반의 SI/PI 분석을 도입하고 있는 이유는 설계 단계에서 SI/PI 문제의 예측 프로세스가 가능하기 때문이다[2]. 이로 인해 제조비용을 줄일 수 있고 빠른 수정을 통해 개발 시간을 단축할 수 있다. 게다가, 최근에 출시되는 시뮬레이션 툴들은 정확도가 매우 높아서 측정치와의 오차가 매우 작기 때문에 신뢰도가 높은 방법이다. 이러한 이점들은 CAE 업무에 매우 큰 재무 효과를 가져온다.
그러나 시뮬레이션 기반의 SI/PI 분석을 수행함에 있어서 몇 가지의 애로 사항이 존재한다. 첫 번째는 시뮬레이션 툴들에 대한 사용자 활용성이 매우 낮다. 이러한 툴들은 일반적으로 SI/PI 분석에 관련된 많은 이론들이 접목되어 있기 때문에 관련된 전문 지식이 없으면 사실상 사용하기가 매우 어렵다. 두 번째는 하나의 제품에 대해서 SI/PI 분석을 완료하기까지 많은 시간이 소요된다. 그 이유는 분석 대상이 매우 많을 뿐만 아니라 각각의 분석 과정이 복잡하고 복합적이기 때문이다. 세 번째는 워크스테이션과 같은 고사양의 PC가 필요하다. SI/PI에 적용되는 시뮬레이션은 매우 많은 연산량과 대용량의 메모리가 요구된다. 네 번째는 데이터의 관리가 어렵다. 해석에 필요한 데이터들의 양은 매우 방대하기 때문에 실무자들 간에 데이터 공유가 취약하다[3].
본 논문에서는 이러한 문제점들에 초점을 맞추어 SI/PI 분석 자동화에 최적화 된 수행 절차와 이를 기반으로 하는 C/S(Client/Server) 구조의 SI/PI 분석 자동화 시스템을 구축하였다. SI/PI 분석 과정은 반복 작업이 많은 비중을 차지하고, 시뮬레이션 툴에서의 중복되는 설정들이 다양한 형태로 존재할 뿐만 아니라 동일한 결과를 추출하기 위해서는 동일한 데이터를 적용해야 한다. 그러므로 복잡하고 반복되는 작업들을 쉽고 빠르게 처리할 수 있는 자동화와 적은 비용으로 고사양의 PC 성능을 구현하면서 데이터들을 통합 관리할 수 있는 C/S 구조의 시스템은 SI/PI 분석 과정의 애로 사항들을 해결하기에 매우 적합하다.
2. 본 론
2.1 시뮬레이션 기반의 SI/PI 분석 과정과 자동화
기존 웹 기반의 환경은 주로 CAD 환경 또는 설계 데이터 관리 등의 목적으로 다양하게 제공되고 있으나, 본 논문에서 제안하는 시스템은 웹 기반의 PCB EM 분석 자동화를 통한 SI/PI 분석과 문서 추출 자동화에 중점을 두고 있다.
2.1.1 포트 설정 자동화
SI/PI 분석에서 가장 먼저 수행되어야 할 작업은 분석 신호선들에 대한 모델을 생성하는 것이다. 분석을 위한 모델을 생성하는 방법은 매우 복잡한 구조의 PCB의 경우 전송선로 방정식과 EM 분석이 결합된 상용 EM 분석 툴을 이용한 시뮬레이션이 대표적이며 이 때 고주파 대역의 정확한 분석 모델 추출이 중요하다[2]. EM 시뮬레이션을 하기 위해서는 분석 신호선에 대한 포트를 설정해야 한다. 보통 하나의 신호선은 송신부와 수신부가 존재하기 때문에 최소 2개 이상의 포트 설정이 필요하다. 포트의 위치는 소자들의 핀의 위치와 일치하는데, PCB 아트웍 데이터에는 소자들의 핀 위치 정보가 존재한다. 그러므로 핀의 명칭으로부터 핀 위치를 찾아내서 포트를 설정하는 과정을 자동화할 수 있다.
본 논문에서는 포트 설정의 자동화를 위해 그림 1과 같이 선택한 신호선으로 부터 포트를 결정하는 과정을 제안하였다. 이 과정에는 분석 신호선에 저항, 인덕터, 커패시터와 같은 수동소자가 연결되어 있을 경우, 이와 연결된 다른 신호선을 자동으로 찾아가는 기능이 포함되어 있다. 신호선에 필터나 클램프와 같은 특수한 회로가 연결된 경우를 제외한 대부분의 신호선들은 제안한 과정을 통해 자동으로 포트를 설정할 수 있기 때문에 이 과정을 적용하여 아트웍 데이터의 구문 분석 및 상용 EM 분석 툴 상의 자동 포트 설정 기능을 개발하였다.
그림 1자동 포트 설정을 위한 과정 Fig. 1 Flow chart for port auto-setup.
2.1.2 EM 시뮬레이션 자동화
포트 설정이 완료된 후, 설계된 신호선에 대한 EM 시뮬레이션을 수행한다. 시뮬레이션 결과는 S-파라미터나 등가회로 모델과 같은 분석 신호선들에 대한 전기적 모델로 추출한다. PCB에 대해 전기적 모델 추출을 위한 상용 EM 시뮬레이션 툴은 ANSYS사의 SIwave를 사용하였다. 상용 툴을 사용함에 있어 메쉬와 해석 주파수, 경계 조건, 수렴도 등 많은 조건들에 대한 설정이 선행되어야 하므로, 본 시스템에서 상용 EM (Electro-Magnetic) 분석 툴에서 제공되는 스크립팅 언어를 이용해 시뮬레이션에 필요한 셋팅을 자동 수행하도록 하였으며, 분석에 필요한 주파수 범위 및 조건 파라미터들은 신호선의 디지털 규격에 따라 미리 저장된 최적 파라미터가 적용되도록 구축하였다. 이로써 EM 시뮬레이션에 대한 충분한 지식이 없는 사용자도 쉽게 사용할 수 있으며, 사용자의 셋업 오류에 의한 문제도 제거된다.
2.1.3 회로 시뮬레이션 자동화
회로 시뮬레이션은 신호 전송 규격을 반영한 입력 신호에 따라 출력 신호를 예측하기 위해 수행된다. 이 단계에서는 EM 시뮬레이션을 통해 얻은 신호선 등가 모델에 입력 신호와 전원 및 부하 등의 주변 회로들을 연결한 후 시간영역과도(Transient) 해석을 통해 출력 신호 파형의 시뮬레이션 결과를 얻는다[4]. 그림 2(a)는 시뮬레이션을 위한 분석 회로도의 예를 보여준다. 이 예에서, S-파라미터는 신호선 등가모델에 해당하고, Driver, Receiver 1, Receiver 2는 주변회로에 해당한다. 고속 신호 시간영역 과도해석의 대표적인 툴로는 ANSYS사의 Designer-SI와 Synopsys사의 HSPICE가 있다. 이 툴들은 그림 2(b)에서 볼 수 있듯이 텍스트 기반의 회로인 네트 리스트를 인식한다. 텍스트 기반의 회로는 도형과 글자 모양, 선과 같은 불필요한 요소들이 없기 때문에 회로의 자동 생성이 용이하고, 복잡도가 낮기 때문에 자동화 과정에서 예상치 못한 오류가 발생할 확률이 적으며, 별도의 프로그램이나 툴이 필요하지 않기 때문에 범용성이 크다. 그러므로 여기에서는 회로 시뮬레이션 자동화를 위해 네트 리스트 해석 방법을 적용하였고, 네트 리스트 구성에 필요한 파라미터들을 자동화 프로그램에서 입력받아 네트 리스트가 자동으로 생성될 수 있도록 하였다. 이 때, 고속 신호의 파형분석에 필요한 셋업 파라미터들은 시스템에 미리 저장된 최적 파라미터를 사용하게 되어 일정한 수준의 분석 정확도를 유지할 수 있도록 구축되었다.
그림 2분석 신호선과 주변회로의 예. (a) 분석 회로도 (b)네 트 리스트 Fig. 2 Example of analyzed signal line and peripheral circuits. (a)Analyzed circuit. (b)Net list.
2.1.4 수신 신호의 Pass/Fail 판별 자동화
수신된 파형 결과의 평가는 USB/DDR/HDMI 등의 평가 규격에 정해진 조건을 만족하는지를 수치화하여 Pass/Fail을 판별하는 방법으로 수행되어야 한다. 이것은 그림 3에서 보여주는 Eye Diagram과 Eye Mask를 이용해 수행되었다. 고속 신호 전송에서 규정하는 Eye Mask 및 시간 측정 규정에 의해서 신호의 문제없음을 판별하게 되며, Eye Mask를 포함한 Eye Diagram 결과를 통해 신호의 지터, 잡음 마진, 상승/하강 시간, 기울기, 오버슈트 등의 디지털 신호 채널 평가 항목들을 종합적으로 판단하여야 한다[5,6]. 이 때 많은 양의 파형 결과로부터 각 평가 항목에 대한 수치를 측정하고 항목에 따라 충분한 마진(margin)이 확보되는지를 판별하는 과정도 수동으로 하게 되면 많은 시간과 측정 오류의 문제가 있으므로, 자동화 시스템에서 결과 분석 및 판별에 대한 자동화 프로세스를 구축하였다.
그림 3아이 선도 및 아이 마스크 Fig. 3 Eye Diagram and Eye Mask.
2.1.5 결과 문서 작성 자동화
일반적으로, 최적의 성능을 갖는 신호선을 설계하기 위해 신호선 구조, IBIS 버퍼 모델, 동작 속도 등 다양한 요소들을 변경하면서 여러 번의 SI/PI 분석이 진행된다. 이 과정에서 축적되는 많은 양의 분석 결과들은 문서를 작성함에 있어서 긴 시간을 요구한다. 그러므로 문서 작성을 자동화하는 것은 업무 효율 면에서 매우 효과적이다. 문서 자동화에 대한 방안으로는 마이크로소프트사에서 제공하는 객체 연결 및 삽입(OLE) 기능을 사용할 수 있다. 이 기능은 문서 프로그램으로 많이 사용되고 있는 MS-Office 제품의 제어를 가능하게 한다. 따라서 본 논문에서는 객체 연결 및 삽입 기능을 통해 다량의 분석 결과들에 대한 문서를 사용자가 원하는 양식으로 자동 생성하는 것이 가능하도록 하였다.
2.2 SI/PI 분석 자동화 수행 절차
어떠한 과정을 자동화함에 있어서, 사용자의 중간 개입이 많으면 다른 업무를 병행할 수 있는 자동화의 이점이 사라지고, 사용자의 조작이 많으면 업무 시간을 단축할 수 있는 효율이 떨어진다.
이것은 자동화의 의미를 퇴색시킨다. 그러므로 사용자의 중간 개입과 조작을 최소화하는 것이 항상 고려되어야 한다. 특히, 여러 단계를 거치고 많은 설정들이 필요한 SI/PI 분석의 자동화는 더욱 그러하다.
그림 4는 이러한 점들을 고려하여 구성한 SI/PI 분석 자동화의 수행 절차를 보여준다. 이 수행 절차는 사전 정보 입력 단계와 SI/PI 분석 단계로 구분된다. 첫 번째 단계는 분석에 필요한 모든 정보를 입력하는 단계로서, 사용자의 조작을 최소화하는 것이 중요하다. 그래서 중복되거나 다른 정보들의 조합으로 유추할 수 있는 입력 정보와 설정들을 제외하였다. 더욱이, 제외되지 않은 입력 정보와 설정들에 대해서는 매우 간단하게 조작할 수 있도록 선택형으로 구성하였다. 그 결과, 이 단계는 PCB 아트웍 연결부터 시뮬레이션 조건 설정까지 총 7 가지의 선택형 입력 항목으로 구성되어 매우 간단하고 작은 수의 조작만으로 수행될 수 있다. 두 번째 단계는 자동으로 SI/PI 분석이 수행되는 단계로서, 사용자가 자동화 과정 중 개입하는 상황을 최소화하는 것이 중요하다. 이러한 상황이 발생하는 원인은 크게 두 가지가 있다. 하나는 분석에 필요한 정보를 입력하는 경우인데, 여기에서는 미리 저장된 각 규격의 셋업 파라미터 입력 정보를 참조하도록 구성함으로써 이러한 경우가 발생하지 않도록 하였다. 다른 하나는 버그나 오류와 같은 예외상황이 발생하는 경우이다. 이것은 자동화 절차를 줄이는 것으로 발생 확률을 낮출 수 있다. 적은 수의 자동화 절차는 자동화 알고리즘이 간단해지기 때문에 버그나 오류를 쉽게 발견하고 수정할 수 있다. 그림4의 두 번째 단계를 구성하고 있는 8가지의 절차들은, 이러한 점을 고려하여 불필요하거나 중요도가 작다고 판단되는 절차들을 제외한, SI/PI 분석의 가장 기본적인 절차들이다. 그러므로 그림 4에서 제안된 절차들은 SI/PI 분석 자동화의 가능성과 이러한 관점들을 충분히 제공할 수 있게 된다.
그림 4SI/PI 분석 자동화를 위한 수행 절차도 Fig. 4 Flow chart for SI/PI analysis automation.
2.3 C/S 구조의 SI/PI 분석 자동화 시스템 구축
SI/PI 분석 과정에서 EM 시뮬레이션과 회로 시뮬레이션은 많은 양의 연산을 필요로 하기 때문에 해석 시간이 매우 길다. 그래서 대부분의 시뮬레이션 툴들은 워크스테이션과 같은 고사양의 PC 성능을 요구한다. 그러나 이러한 PC는 매우 고가여서 다수의 PC를 보유하기 어려울 뿐만 아니라 발열, 소음 등의 PC 유지 관리도 매우 까다롭다. 게다가 아트웍, IBIS 등 해석에 필요한 데이터들은 소자, 네트, 모델에 해당하는 정보들을 포함하고 있는데, 그 종류들이 매우 다양할 뿐만 아니라, 그 수와 양 또한 매우 방대하다. 실무자들간에 이러한 데이터들을 매번 공유해야 하지만, 방대한 양으로 인해 데이터 관리가 어렵고 잘못된 공유로 인해 실무자들 간에 분석 결과의 오차를 유발할 가능성이 매우 높다. 이러한 문제들의 해결 방안으로 그림 5와 같이 C/S 구조의 SI/PI 분석 자동화 시스템을 제안하였다. 이 자동화 시스템은 그림 4에서 보여준 수행 절차를 기반으로 구성되었다. 클라이언트는 SI/PI 분석에 필요한 정보들과 설정들을 입력할 수 있도록 UI를 제공하고 입력 받은 데이터들을 SI/PI 분석에 적용할 수 있도록 가공하는 역할을 담당한다. 서버는 클라이언트로부터 제공되는 데이터들을 기반으로 SI/PI 분석 과정을 자동으로 수행한다. EM 시뮬레이션과 회로 시뮬레이션은 서버에서 수행되기 때문에 서버 PC는 고사양의 PC를 사용해야 하지만, 여러 대의 클라이언트 PC는 고사양의 PC를 사용할 필요가 없다. 대신에, 서버에 시뮬레이션을 요청함으로써 고사양의 PC를 사용한 효과를 얻을 수 있다. 게다가 DB(Data Base)가 서버에 구축되어 있기 때문에 방대한 양의 데이터들을 관리하는 것이 용이하다. 그러므로 이 C/S 구조는 고사양의 PC를 사용하는 것과 같은 효과를 얻을 수 있을 뿐만 아니라, 데이터 통합 관리에 대한 요구를 충족시키기 쉽게 해준다.
그림 5C/S 기반의 SI/PI 분석 자동화 시스템 Fig. 5 SI/PI analysis automation system based on C/S structure.
2.4 SI/PI 분석 자동화 프로그램 및 수행 결과
제안한 SI/PI 분석 자동화 시스템을 적용하여 USB2/3, DDR2/3, HDMI에 대한 SI/PI 분석 자동화 프로그램을 구축하였다. 그림 6(a)는 DDR2/3의 SI/PI 자동 분석을 위한 UI(User Interface)를 보여준다. 아트웍에서 DDR에 대한 Net을 분류하여 UI 상에 명시하였다. 사용자는 분류된 Net에서 해석을 원하는 Net을 선별할 수 있다. IBIS 파일은 아트웍에서 사용된 IC에 해당하는 버퍼 모델 정보를 담고 있는데, UI에서 이 IBIS 파일을 연결하여 IC의 특성을 시뮬레이션에 반영할 수 있도록 하였다. 또한 본 시스템에서는 아트웍 CAD 파일의 핀 정보와 IC정보를 분석하고 신호 연결 네트의 이름을 분석하여 이를 연결하는 네트 리스트의 작성을 자동으로 수행하는 알고리즘을 구현하였다. 또한, 그림 6(b)와 같은 옵션 UI를 통해 DDR2/3에 대한 옵션을 설정할 수 있다. 이 옵션 기능은 JEDEC 표준을 반영하였는데, 이 옵션의 설정값은 시뮬레이션 조건 및 평가 방법의 기준이 된다.
그림 6SI/PI 분석 자동화 프로그램 (a)DDR2/3의 SI/PI 분석을 위한 UI (b)JEDEC 표준(JESD79E,JESD79-3)을 기반한 DDR2/3 옵션 Fig. 6 SI/PI analysis automation program. (a)DDR2/3 UI for SI/PI analysis, (b)JEDEC standard(JESD79E, JESD79-3)-based DDR2/3 option.
이와 같은 UI를 통해 해석에 필요한 정보들을 입력받은 후, 시뮬레이션을 자동으로 수행할 수 있다. EM 해석과 회로해석은 각각 Ansys 사의 SI-wave와 Designer-SI를 사용하여 수행되었으며, 구축된 해석 프로그램에서 제공하는 VB 스크립트 기능을 사용하여 시뮬레이션이 자동으로 수행될 수 있도록 하였다.
그림 6과 같이 UI를 통해 시뮬레이션을 수행하면 해석 환경 및 결과에 대한 문서가 자동으로 작성된다. 그림 7은 DDR2/3의 SI/PI 분석 결과에 대하여 자동 생성된 문서의 예를 보여준다. 이 문서는 MS-Word를 이용해 자동 생성되었고, 해석 결과를 수치화하여 표로 나타냄으로써 정량적인 평가가 가능하고 디지털 신호 평가에 유용한 Eye-Diagram 그래프를 첨부하여 SI에 대한 정성적인 평가 또한 가능하게 하였다. 이 문서는 사용자가 원하는 양식으로 자동 생성이 가능하다.
그림 7DDR2/3의 SI/PI 분석에 대한 문서 자동 생성 결과 Fig. 7 Result of automatic documentation for SI/PI analysis of DDR2/3.
DDR 메모리 채널의 경우 신호를 송신하는 버퍼의 전류 크기에 따른 칩 내부 옵션과 수신하는 버퍼의 ODT (On-Die-Termination) 옵션에 따라 분석 경우의 수가 채널 당 36개 이상의 경우가 발생하여 이에 대해 자동화 리포트 시스템을 사용하지 않으면 각각의 분석 결과를 추출하는데 일반적으로 2∼3주의 분석 시간과 리포트 작성이 소요될 수 있다. 이에 대해 본 자동화 시스템을 사용하여 모든 경우의 결과문서를 추출하는데 2∼3시간 정도 소요되었으며, 이로부터 매우 효과적으로 SI 분석이 가능하고 결과문서를 추출하는데 걸리는 시간을 획기적으로 줄일 수 있음을 확인할 수 있다.
3. 결 론
본 논문에서는 전자장 PCB 분석과 연동한 SI/PI 분석 자동화 프로세스를 연구하고 구축하였다. 제안된 SI/PI 분석 자동화 프로세스는 반복 작업이 많은 CAE 업무의 효율을 높이는 데 매우 효과적인 방법임을 확인하였다. 본 논문에서 제시한 분석 시스템과 자동 스크립트를 통해 SI/PI 분석이 효과적으로 자동화될 수 있음을 보였으며, 이는 회로 및 PCB 상의 SI/PI에 관한 문제를 해결하고자 하는 기술자들로 하여금 SI/PI 해석에 드는 노력, 시간 및 비용을 획기적으로 줄일 수 있게 할 것으로 크게 기대된다. 뿐만 아니라 본 논문을 통해 개발된 자동화 방식에는 해석 결과에 대한 문서를 정리하고 추출하는데 걸리는 시간을 획기적으로 줄여 줌으로써 업무 효율을 극대화 해 줄 수 있는 기능을 포함한다.
References
- Stephen H Hall, et al., High-Speed Digital System Design, John Wiley & Sons, Inc., 2000.
- Eric Bogatin, Signal and Power Integrity Simplified, Prentice Hall, 2nd edition, 2009.
- Gangadhar Konduri, "A Collaborative Environment for Distributed Web-based CAD", Indian Institute of Technology, Kharagpur, 1997.
- Madhavan Swaminathan, A. Ege Engin, Power Integrity Modeling and Design for Semiconductors and Systems, Prentice Hall, 2007.
- Tom Granberg, Digital Techniques for High-Speed Design, Prentice Hall, 2004.
- JEDEC Standard JESD79-2, DDR2 SDRAM Specification, Sep. 2003.