[Ample/Librarian] 특정 부품(part number)에 연결된 geometry목록을 LMS catalog에서 검색 / cfpi 이용

Version 4

    Board Station의 부품 정보를 관리하는 LMS Library는 CFPI(Catalog File Procedural Interface Manual) 를 이용하여 외부에서 접근할 수 있습니다.

     

    CFPI는 C언어 또는 Ample에서 사용할 수 있도록 구성되어 있는데, 이 예제에서는 Ample을 이용하여 LMS Library의 catalog entry에 접근하고, 필요한 정보를 가져오도록 꾸며 보았습니다.

     

    첨부된 Ample script는 CFPI에서 제공하는 함수와 Ample의 표준 함수들만을 이용하였으므로 Board Station의 어느 application에서도 사용할 수 있으나, 특히 LMS Catalog정보에 직접 접근하는 경로가 없는 Librarian에서 유용하게 사용할 수 있을 것입니다.

     

    Ample script를 실행하면 part number를 입력하는 창이 열립니다. 이 창에 LMS Catalog에 등록되어 있는 part number를 입력하면 해당 부품에 연결된 geometry의 목록을 transcript에 나열해 줍니다.

     

    CFPI에 대한 자세한 설명은 Board Station 설치시 제공되는 pdf 매뉴얼 중 cat_proc_if.pdf 에 수록되어 있습니다.

     

     

    사용방법)

    1. 첨부 파일에서 24번째 라인에 있는 MY_CATALOG_DIR_PATH 변수를 LMS Catalog들이 들어 있는 디렉터리로 변경합니다. (예:/cygdrive/c/LMS/sys/catalogs)

    2. 첨부 파일의 70~71번째 줄에 있는 $load_library() 함수와 $load_userware() 함수에서 읽어들이는 .dll 파일과 .ample 파일의 경로를 자신의 시스템에 맞도록 변경합니다.

    3. 임의의 Board Station application을 실행하고(예:Librarian), F11키 -> dofile 또는 MGC > Userware > Load 메뉴를 이용해 Ample script를 load합니다.

    4. 이제, F11키를 눌러 명령 입력 창을 띄우고 "get_geometries_by_partnumber()"를 입력하여 기능을 실행합니다.

    5. 기능이 정상 실행되면 Part Number를 입력하는 창이 열리고, 여기에 Part Number를 입력하여 진행하면 transcript창에 접근한 catalog들과 찾은 geometry들이 나열됩니다.

     

     

    실행 예)

    //  Note: Processing catalog files...

    //    audio_parts ... (22 entries)

    //    capacitor ... (283 entries)

    //    connector ... (320 entries)

    //    diode ... (82 entries)

    //    etc ... (70 entries)

    //    filter ... (246 entries)

    //    ic ... (457 entries)

    //    inductor ... (177 entries)

    //    oscillator ... (33 entries)

    //    resistor ... (421 entries)

    //    transistor ... (58 entries)

    //

    //  Note: Geom list of 'PN05204' - Format: geom (catalog)

    //    p2012_r   (catalog:resistor)

    //    p2012_f   (catalog:resistor)

     

     

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

    // 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.

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