[Ample/Layout&Fablink] 선택된 via들의 정보 읽기 (Report기능으로 확인할 수 있는 정보 수집)

Version 3

    Ample을 이용하여 디자인 데이터로부터 정보를 끌어내려 할 때에 마땅한 function이 제공되지 않으면 정보에 접근하기가 어렵습니다.

     

    하지만, select -> report기능을 사용하여 확인할 수 있는 정보는, report창에 나타낼 수 있는 결과를 임시파일에 저장하여 그 내용을 읽는 방법으로 우회할 수 있습니다.

    이 예제에서는 Layout 또는 Fablink에서 선택된 via들의 정보를 report창을 거쳐 수집하도록 처리해 보았습니다.

     

    Via를 선택한 상태에서 report기능(화면 상단의 Report > Selected기능) 을 실행하면 다음과 같이 via에 대한 정보창이 열립니다. 아래의 예는 via 4개를 선택한 상태입니다.

     

    report_vias.jpg

     

    선택된 via와 관련하여 상당히 많은 정보가 들어 있는 것을 볼 수 있습니다.

    * 기록된 양식은 사용자가 보기 쉽도록 구성 되어 있어 파일로 저장했다가 Ample로 읽어들이려면 상당한 문자열 처리 구문이 필요할 수 있습니다.

     

    이 예제에서는 단순히 "Via"로 시작하는 line만을 처리하여 각 via들의 좌표와 layer span정보를 읽어들이고 transcript에 표시하도록 하였습니다.

     

    실행방법)

    1. Layout 또는 Fablink에서 PCB설계화면이 활성화된 상태로 F11키를 눌러 "dofile <파일이름>"을 입력하거나, 화면 상단의 MGC > Userware > Load 기능을 사용하여 Ample 파일을 load 합니다.

    2. 다시 PCB설계화면이 활성화된 상태로 F11키를 눌러 "get_selected_via_info()"를 입력하여 기능을 실행합니다.

     

    결과예)

    via_info.jpg

     

     

    //==========================================================================

    // DISCLAIMER OF WARRANTY:  Unless otherwise agreed in writing,

    // Mentor Graphics software and associated files are provided "as is"

    // and without warranty.  Mentor Graphics has no obligation to support

    // or otherwise maintain software.  Mentor Graphics makes no warranties,

    // express or implied with respect to software including any warranty

    // of merchantability or fitness for a particular purpose.

    //

    // LIMITATION OF LIABILITY: Mentor Graphics is not liable for any property

    // damage, personal injury, loss of profits, interruption of business, or for

    // any other special, consequential or incidental damages, however caused,

    // whether for breach of warranty, contract, tort (including negligence),

    // strict liability or otherwise. In no event shall Mentor Graphics'

    // liability exceed the amount paid for the product giving rise to the claim.

    //==========================================================================