* 경로는 로컬이든, 공유폴더든 상관 없다.라이브러리 관리자는 작업을 완료하고 결과 release 심볼만 위에서 구축한 환경으로 보내면 되기 때문이다.
아래와 같은 IC심볼 74LVT574를 만들어본다.
(datasheet 다운로드)
데이터 시트를 보면 LOGIC SYMBOL이 있고, 아래 심볼으로 제작해본다.
0. Project manager 프로그램 실행.
1. 라이센스 선택하기.
Allegro PCB Librarian을 사용하기 위해서는 "Allegro Managed Library Authoring" 라이센스 옵션이 필요
2. Create Library Project 클릭하여 라이브러리 프로젝트 생성
<생성된 파일 분석하기>
cds.lib를 열어보면, DEFINE으로 자동정의가 되어있는데,자동으로 생성된 worklib가 [내프로젝트명_lib] 으로 정의된 것이다.
worklib를 열어보면 아래 두 폴더가 있는데, 파트 심볼 생성후 배치 테스트를 하기 위한 dummy_root_design폴더가 있다.
모든 프로젝트를 생성하면 각각의 Project Manager파일 (.cpm)이 생성된다. design_library는 재활용성을 위한 객체화를 위해 만든 프로젝트는 자기 자신을 라이브러리화 시킨다. 그리고 library는 향후 불러오거나 활용하거나 할 때 객체화한 자신을 포함 한 다른 라이브러리들을 Include하여 뒤에 추가한다.
Allegro PCB Librarian Flow가 선택되면 아래와 같이 화면이 변경 되고, 현재 어떤 Flow를 설계중인지 상단의 Flows를 보고 확인 가능하다
3. Library Explorer 실행 및 확인
4. 새로운 라이브러리 class 만들기, Rename 이름 바꾸기
5. Part Developer를 실행 시킨다. (2가지 방법)
6. 새로운 Cell을 생성한다. (ic의 새 파트를 만드는 예시)
* 하나의 파트에 대해 생각해 보면, 회로 설계도의 복잡도에 따라 회로 설계 심볼모양이 여러개(homogeneous, heterogeneous )가 있을 수 있고, Footprint의 모양도 Dip, SMD, BGA 등 여러 모양이 있을 수 있고 회사의 재고나 유통과정 가격변동에 따라 여러 제조사의 Footprint를 미리 만들어놓고 유연하게 대응을 할 수 있을 것이다.
(모든상황에 유연하게 대처할 수 있는 파트를 만들 수 있도록하는 Cadence의 철학을 이해하는것이 중요하다.)
* Cadence에 철학에 걸 맞게, 여기서 중요한 3가지는 아래와 같다.
Packages : 해당 파트의 Physical적인 Footprint 정보이다.
Symbols : 해당 파트의 Logical적인 Schematic Symbol 이다.
Part Table Files : 해당 파트의 속성 값들, BOM등 detail한 정보를 담는 부분이다.
여기서는 하나의 Symbol을 사용하며 DIP타입과 SOIC타입의 Footprint를 사용한다는 가정하에 만들어 본다.
또한 Package를 등록하면서 알게되는 Pin의 정보를 바탕으로 역으로 Symbol을 자동생성 시키는 기능을 사용한다.
7. 파트 패키지와 심볼 만들기
Footprint는 Cadence 내장 풋프린트인, DIP20_3 과 SOIC20_3 을 사용한다.
값들은 정해져 있지 않으므로 ?로 둔다. 나중에 회도로에서 Annotate 등을 통해 값들이 할당된다.
16. 저장 및 Export 하기
16-1. 저장
16-2. 완성본 Export 하기
16-2-1. Library Explorer 실행
16-2-2. 만든 디렉터리 파일 확인
16-2-3. Export하기
* 테스트 및 개발이 끝나 배포할 폴더는 "Golden"이라고 한다. 그래서 "Golden_version"으로 명명
결과 확인
17. 파트가 잘 찍히는 지 테스트 해보기
17-1. DE-HDL Schematic page를 연다.
17-2. 부품추가 - 내가만든 라이브러리 선택 (그러면 아래 2가지 package 타입이 나온다)
각 패키지를 선택하면 바로 display된다.
17-3. 부품배치
(알아두기) 이 부품 배치 회로도는 맨 처음 root_dummy_design에 배치된 것으로, 어떤 기능을 하기보다 테스트로 쓰는 dummy design에 배치한 것이다.
* (결과)
이제 테스트를 통한 수정 등을 마치고 해당 완성된 심볼을 라이브러리 관리자는 모든설계자가 사용할 수 있도록 배포를 해야 할 것이다. 라이브러리 관리자는 테스트를 마친 라이브러리 심볼을 Golden_version 으로 명명했고, 이제 74lvt574를 공용폴더로 옮기면 된다.
이제 공용 배포용 라이브러리에 저장된 74lvt574는 여러 설계자가 접근하여 해당 라이브러리를 사용할 수 있다.
DE-HDL은 트리형 디렉터리 구조로 모두 readable하게 파일들이 쪼개져 있다.
모든 프로젝트는 Project Manager를 포함 하고 있으므로 실행시킬 때는 Project Manager로 실행한 후 flow에서 선택해야 열 수 있다.
Cadence의 Allegro는 회로 설계부터 PCB설계까지 모든 부분을 망라한 Front to Back 의 철학으로 설계되었다.
또한 단순 개인사용자를 염두하기보다 거대한 조직의 흐름을 중점으로 설계되어진 툴이다.
그러한 면에서는 똑같은 Schematic회로 설계지만, OrCAD Capture는 개인 및 소규모 팀을 위한 툴로 다른 Tool이다.
Allegro Design Entry HDL (=옛날 명 Concept HDL)
Allegro 라인으로 위와 같은 구조로 진행하게 되는데, 라이브러리를 설계하고, 그 심볼을 바탕으로 회로설계를 한 후 최종적으로 PCB설계를 하도록 진행한다.(물론 중간에 시뮬레이션도 포함)
Allegro의 통합된 툴은 회로 설계와 PCB의 데이터 교환에서도 소통이 원활히 진행할 수 있도록 한다. (심볼의 변경, Footprint변경, back annotation 등등)
라이브러리 설계자
사내에서 사용 할 라이브러리 즉, 사내에서 사용하는 심볼, 속성 DB 관리, 재고의 유무(BOM), 구매가능여부, 사용가능 여부등을 고려하여 집중적으로 관리하는 인원 및 팀이 있어야 한다.
회로 설계자
해당 제한된 라이브러리를 가지고 회로 설계(Logical Schematic Design)를 하는 인원 팀이 있어야 한다. 물론 Pspice의 시뮬레이션을 진행하며 원하는 논리적 신호를 만들며 회로설계 진행한다. 이때 PCB설계자들을 위해 Constraint Rule을 정해서 보낼 수 있다.
PCB 설계자
회로 설계자가 제공한 Netlist의 정보를 받아 PCB설계까지 이루어져야 제품이 완성될 수 있다. PCB설계자는 Constraint Rule에 맞춰 설계를 진행하고, Allegro Sigrity 프로그램을 이용하여 EMI, SI/PI 시뮬레이션을 진행하며 배치, 배선 등을 수정하며 산업계가 요구하는 안전관리 요건에 맞춰 진행한다. 여기서 수정된 소자 및 값 등은 깔끔하게 Back annotating이 가능하여 다시 회로설계에 반영해서 반복적인 디버깅으로 회로설계자와 혼란없는 설계를 진행한다.
Cadence Allegro는 어떤 설계의 flow를 project 단위로 통합하여 관리하는데 그 툴은 Project manager 이다.
크게 Allegro 라인의 설계 tool은 대표적으로 아래와 같다.
라이브러리 설계 : Allegro PCB Librarian
회로 설계 : Allegro Design Entry
PCB 설계 : Allegro PCB Designer (+padstack editor)
Allegro Design Entry와 Allegro PCB Editor 프로그램이 유기적으로 연동되며 논리적인 회로 설계단의 Project는 여러개의 Project들이 묶여 하나의 최상의 Root Project를 이룰 수 있다.
이를 구축하기 위한 기본적인 환경 세팅을 해본다.
전사적인 회사의 내부망을 Company_Site로 두면, 그 안에서 또 설계자들이 접근할 수 있는 하나의 Site 또는 서버가 있어야 서로의 데이터를 주고 받고 공유하며 일을 진행 할 수 있다. 이 환경변수를 Cadence에서는 CDS_SITE로 지정하여 사용하도록 한다.
라이브러리 관리자는 라이브러리를 제작하고 테스트한 후 최종 완성본을 CDS_SITE\cdssetup\library 폴더에 저장하며 설계자들은 해당 라이브러리만 사용할 수 있도록 제한하며 임의 수정을 막기 위해 Read Only 권한을 둔다. 반면 라이브러리 관리자는 해당 라이브러리를 저장하고 필요시 수정하여 배포해야 함으로 Read와 Write권한을 갖도록 한다.
반응형
Allegro Design Entry HDL을 사용하기 위한 환경을 구축하기 위해 아래와 같이 환경 세팅을 진행한다.