반응형

OrCAD/Allegro PCB Editor 옆에 Element를 쉽게 선택하고 수정하기 아래와 같이 위해 필터를 제공한다.

그런데 SKILL 코드로 이 필터를 컨트롤 할 수 있다. 또한 어떤 요소를 선택하기 위해서는 필수로 필터를 컨트롤 해주어야 한다. 

아래는 SKILL로 컨트롤할 때 필요한 String 타입의 키워드 이다. 옛버전 기준으로 되어있어 현재 버전에서 빠져있는 것들이 있다.

해당 항목 변수값. (Cadence SKILL User guide)

1. 선택 항목 활성화 및 비활성화 (t값을 리턴해야 정상동작완료)

skill t값 리턴
비활성화                              활성화

2. 모두 비활성화 시킨상태에서 Nets, Pins, Vias 만 활성화 시키기

결과

3.  2번 상태에서 Nets 체크박에서 체크표시하기(활성화)

결과

4. 모든 선택항목을 활성화 시킨 후, 체크박스 전부 체크하기

결과
(참고) Groups는 체크가 안된다.

5.  Nets, Pins, Vias, Shapes 활성화 시킨 후, Shapes 체크박스만 선택하기

6. 필터링한 값 확인 및 사용 ( axlGetFindFilter() 함수)

 

이제, 이렇게 해서 걸러낸 필터링 값을 확인하거나 뽑아서 사용하려면 axlGetFindFilter() 함수를 이용한다.

위에 5번에서 필터링한 값을 axlGetFindFilter()함수를 사용해본다.

결과

그러나 활성화 목록에 없지만, "BONDSMART" "DYNTHEMALS" 라는 2가지 목록이 디폴트로 앞에 따라나온다... 

 

(axlGetFindFilter 테스트)

역시 "BONDSMART" "DYNTHEMALS" 라는 2가지 목록이 디폴트로 앞에 따라나온다 이 2개 인자를 빼고 나머지 뒤 인자부터 선택하면 될 것이다.

 

 

 

혹시 위 함수를 테스트 하다가 오류가 발생한다면 아래 참조.

https://ansan-survivor.tistory.com/153

 

[Cadence SKILL] SKILL 언어 오류 발생 유형 / 주의사항

SKILL언어에서 띄어쓰기/공백(Space)는 중요한 요소임으로 주의한다. 1. E- *Error* eval: not a function 오류 발생 특히 함수(function)을 만들 때 아래와 같은 사항을 주의. 2. E- *Error* eval: unbound vari..

ansan-survivor.tistory.com

 

반응형
반응형

Capture 회로를 다 그리고 Netlist를 뽑으려고 하는데 아래와 같은 오류가 발생했다.

프로그램을 껐다가 다시 켜니까 해결되었다...

 

만약 이렇게 해결이 안된다면 아래 링크처럼 해보길 바란다.

https://ansan-survivor.tistory.com/163?category=390086

 

[OrCAD Capture & Pspice] OrCAD Capture 실행 시 에러/오류/오작동/버그

OrCAD Capture로 회로를 그리거나 또는 시뮬레이션을 잘 하다가 갑자기 잘되었던 실행이 안되거나 버그가 발생하면 아래와 같은 방법을 시도해보면 좋다. 본인의 작업공간 (Cadence Default 작업공간 : C

ansan-survivor.tistory.com

 

반응형
반응형

SKILL로 Via이름.pad 파일이 Database에 존재하면 Via를 만들 수 있다.

필자는 커스텀 via를 만들어 보았다. 이름은 powerVia로 정했다.

 

1. 나만의 커스텀 via만들기 (powerVia)

Drill hole크기는 1mm 정함

그냥 대충 만들었다.

그리고 저장하여 이름을 powerVia.pad 로 정했다. (확장명은 .pad로 저장된다.)

그리고 불러올 수 있는 경로에 넣거나 또는 path를 수정한다. (아래 참조)

https://ansan-survivor.tistory.com/10

 

[PCB Editor] 내가 직접 만든 Footprint가 안보이거나 로드가 안될때,

경로: C:\SPB_Data\cdssetup\OrCAD_Capture\17.2.0 (17.2버전) 에 가보면 Capture.ini 파일이 있고, [Allegro Footprints]에 경로가 지정되어있는데, 본인의 경우, 직접만든 _my_pad 와 _my_symbols 폴더를 별도로..

ansan-survivor.tistory.com

2. 이제 Netlist를 뽑은 .brd 파일이 있다고 가정하자 그러면 Net이름들이 Database에 저장되어 있을 것이다.

    CM Rule에서 Physical - Net - All Layers를 보면 어떤 Net이름들이 있는지 알 수 있다.

    이중 GND 네트를 사용해볼 것이다. 또한 Net이름대신 nil을 넣어서 넣지 않을 것이다.

 

3. Via 만들기

 

사용법

 

리턴값을 자세히 보면 생성된 Via의 고유 DBID와 t 또는 nil 값을 리턴하는데.

생성한 위치가 Rule에 위반하여 DRC에러를 일으키는 경우 list의 2번째 인자에 t가 리턴된다.

net이름 gnd
2번째 인자 t리턴

 

생성위치 DRC에러 발생

반대로 위치가 Rule에 부합하다면, 2번째 인자는 nil을 리턴한다.

net이름 생략(nil)

 

2번째 인자 nil리턴

4. Show Element로 확인해보기

DRC가 생성된 Net는 GND로 만들었기에 아래와 같이 GND로 부여되어있다.

Net이름을 정의 하지 않았기에, not on net 라고 표시되어 있다.

반응형
반응형

설계를 할 때, 뭔가 Rule에 어긋나면 DRC마커를 띄어주어야 하고, 이에 대한 내용을 설명해야한다.

SKILL에서는 이를 지원한다.

아래 링크는 Cadence에서 DRC마커를 사용하는 예제동영상을 보여준다.

필자는 아주 기초적인 DRC마커를 띄우는 법을 포스팅해본다.

 

https://resources.pcb.cadence.com/vidyard-all-players/creating-drc-markers-in-the-pcb-editor-with-skill

 

Creating DRC Markers in the PCB Editor with SKILL

The PCB Editor SKILL API provides the axlDBCreateExternalDRC() to allow you to programmatically add DRC markers to the PCB Editor database.

resources.pcb.cadence.com

 

axlDBCreateExternalDRC("Story" 10:10 "drc error class/all" nil nil "50 mils")

첫번째는 원점기준 (45,45) 에 마커를 생성. drc error class의 하위 class인 all 에 생성한다.

두번째는 원점기준 (55,55) 에 마커를 생성. drc error class의 하위 class인 top 에 생성한다.

아래와 같이 옵션목록에 다음과 같은 Class와 subClass가 있다는 것을 알 수 있다. 이 class를 넣어줘야 한다.

결과.

DRC마커 - 마우스우클릭 -Show Element 하면, 아까 입력한 값들을 볼 수 있다.

반응형
반응형

Cadence SKILL 코드로 PCB Editor에서 Shape을 그릴 수 있다.

Shape을 그리기 위해서는 Closed(닫힌)된 형상이 필요하다. 그래서 Shape을 생성하기 전에 Path를 좌표로 그려 닫힌 형상을 만들어 주어야 한다. 그리고 나서 그 닫힌 형상을 채울지 비울지 선택이 가능하다.

 

1. 사각 Shape 만들기

 

아래 코드는 먼저 경로를 (5,5) -> (50,5) -> (50,50) -> (5,50) -> (5,5) 으로 사각형을 그리고,

그 내부를 채우는 코드이다.

만약 폐루프의 형상이 아닐경우 아래와 같은 오류가 발생한다.

"Shape boundary is illegal"

 

2. Void(빈공간)이 있는 Shape만들기

 

먼저 axlDBCreateOpenShape()함수로 외곽선을 Closed(닫힌)형상으로 만들고
그 내부에 axlDBCreateVoid() 또는 axlDBCreateVoidCircle()로 Void를 만들 수 있다.

결과 top층에 다음과 같이 그려짐.

 

(45,25)지점에 반지름 10짜리 생성
마름모가 생성됨.

이제 Void구간을 제외하고 Shape을 형성한다.

반응형
반응형

https://en.wikipedia.org/wiki/Surface-mount_technology

 

Surface-mount technology - Wikipedia

Surface-mount components on a USB flash drive's circuit board. The small rectangular chips with numbers are resistors, while the unmarked small rectangular chips are capacitors. The capacitors and resistors pictured are 0603 (1608 metric) package sizes, al

en.wikipedia.org

위 wiki 링크 참조.

 

SMD type 관련 용어들

 

SMD type 주로 사용되는 표준 사이즈 (Metric : mm단위 / Imperial : inch단위)

반응형
반응형

Cadence SKILL 코드로 PCB Editor에서 선(line), 원(Circle), Arc, 다각형 등 그리기를 할 수 있다.

 

1. 선(Line) 그리기

  Line은 시작지점과 끝지점, 두께, class/layer만 있으면 그릴 수 있다.

  아래 예제는 원점으로부터 (5,5) 지점부터 (40,40) 을 연결하는 두께 5mm 짜리를 top층에 라우팅한다.

  코드를 실행하면 return값으로 이 Line에 대한 DBID가 나오고, nil이 리턴되는데, nil은 정상작동 했다는 뜻이다.

  만약 t가 리턴이 된다면 DRC에러가 발생했다는 뜻이다.

결과

2. 원(Circle) 그리기

  Circle은 중심점과 반지름, 두께, class/layer만 있으면 그릴 수 있다.

  아래 예제는 중심점(30, 40)이고, 반지름이 2mm 이며, 두께가 0.5mm인 원을 bottom layer에 만든다.

  코드를 실행하면 return값으로 이 Line에 대한 DBID가 나오고, nil이 리턴되는데, nil은 정상작동 했다는 뜻이다.

  만약 t가 리턴이 된다면 DRC에러가 발생했다는 뜻이다.

3. 경로 지정하여 그리기

  이 예시에서는 선, 아크를 사용하여 여러 선과 아크를 어떻게 연결하는지 테스트 해보았다.

  axlPathStart()함수 -> axlDBCreatePath() 이 두 함수사이에 경로를 만들어서 그린다.

결과

 

반응형
반응형

OrCAD Capture 17.4 버전에서 새로 추가된 기능중, Search Providers 라는 기능이 생겼다.

이는 기존에 17.2버전 이하에서 번거롭게 웹페이지로 나가서 Ultra Librarian 사이트로 가서 다운받고 변환하고 하는 과정들을 생략하게 만들어준다. 여기서 Provider로 Ultra Librarian말고도 SamacSys라는 Provider를 추가로 선택할 수 있다. 부품이 없다면 서로 번갈아가면서 찾아보면 될 것이다.

(아래 17.2 버전에서 Ultra Librarian 사용방법)

https://ansan-survivor.tistory.com/32

 

OrCAD Capture IC회사의 라이브러리 파일(.OLB) 다운로드 하기 / 무료 심볼(Symbol)받기

Orcad Capture를 하다보면, 필요한 라이브러리 Symbol을 만들어 주어야 하는데, 이는 여간 귀찮은 일이다. 어차피 우리가 디자인하는 Symbol은 결국 IC회사에서 만든 Datasheet를 보고 만들어야 하는데, 이는 이미..

ansan-survivor.tistory.com

 

1. Place - Search Provider 선택

2. 아래와 같이 로그인 창이 뜨는데, 로그인은 단 한번만 하면 된다. Cadence와 Ultra Librarian 계정이 없다면 생성한다.

https://www.cadence.com/en_US/home.html

 

Cadence | Computational Software for Intelligent System Design™

Cadence is a leading EDA and Intelligent System Design provider delivering hardware, software, and IP for electronic design.

www.cadence.com

https://www.ultralibrarian.com/

 

Ultra Librarian

2. Download Unlimited access to FREE schematic symbols, PCB footprints, and 3D STEP models in your native CAD format.

www.ultralibrarian.com

3. 그럼 상단에 Search Provider창이 뜨고, 왼쪽 class로 부품 공급사를 선택할 수 있다. SamacSys나 Ultra Librarian 중 선택 가능, 둘다 체크하고 아래 텝을 선택해서 보면 된다.

상단 탭 생성
부품사 체크하기

 

두 공급사를 활성화 시켜 보면 됨.

4. 한번 Atmega128을 검색해본다.

  여기서 원하는 부품을 선택하면 된다. 오른쪽에 부품에 대한 스펙도 나와있으므로 참고하면 되고, Datasheet URL까지 제공한다.

부품사 SamacSys로 검색할때,
부품사 Ultra Librarian으로 검색할 때
Datasheet URL을 눌렀을 때, 새 창으로 다음과 같이 pdf를 보여줌

5. 이제 원하는 부품을 더블클릭 또는 오른쪽마우스-place part 를 선택한다. 그러면 자동으로 Schematic창으로 넘어가며 마우스 클릭하여 배치하면 된다. 심볼모양이나 Pin은 마찬가지로 마우스우클릭 - Edit Part로 수정하면 된다.

6. Property를 보면 Footprint가 등록되어있음을 알 수 있다. 그 외 여러 속성값들도 등록되어있다. 그러나 Operating_Temperature이라는 속성값에 특수문자가 깨져서 엉뚱한 글자가 들어가있는데, 혹시 한글로인한 모를 오류발생에 대비해 -40~85 이런식으로 수정하는게 좋을 것이다.

(풋프린트 보기)

Tip. 심지어 3D모델의 Step파일까지 등록되어있다. 한번 Netlist를 뽑아서 PCB Editor로 3D view를 해보았다.

 

 

8. 그러면 이 Capture part Symbol과 Footprint 정보는 어디에 저장이 되는가 경로를 따라가보면,

cdssetup - OrCAD_Capture - 17.4.0 - downloaded_parts 에 저장되어있다. 

이 폴더의 경로는 사용자환경변수에 저장되어있는데, 환경변수를 들어가는 방법은 아래처럼 치면 된다.

출처: https://somjang.tistory.com/entry/Windows%ED%99%98%EA%B2%BD%EB%B3%80%EC%88%98-%EC%84%A4%EC%A0%95-%ED%8E%98%EC%9D%B4%EC%A7%80-%EC%A0%91%EA%B7%BC-%EB%B0%A9%EB%B2%95?category=348812

그래서 따라가보면 아래와 같이 cdssetup 폴더가 있음을 알 수 있다.

Capture의 Part 심볼은 아래에 공급사별로 나뉘어져 저장되어있다.

PCB Footprint정보는 위에 allegropcb 폴더에 저장되어있다.

(주의) 아래와 같이 Preview에 Symbol과 Footprint가 뜨지 않는다면, 파트에 배치할 수 없으니, 다른 부품을 알아봐야 한다. 만약 더블클릭하면, 아래와 같은 오류가 발생한다.

반응형
1···156157158159160161162···181

+ Recent posts