-------------------------------------------------------------------------------------------------------------------------------------------
ultrafast design 방법
개념 : 설계 의 시작 부터 RTL, 클럭 핀, PCB 계획을 포함하여 설계 목적에 관심을 갖는게 중요하다.
각 설계 단계에서 설계를 적당히 정의하고 유효하는 것은 타이밍 마무리, 라우팅 마무리, 그리고 전력 이용 문제를
구현의 연이은 단계에서 줄어들게 한다.
각 설계 단계에서 설계 예산 즉, 면적, 전력, 타이밍을 살펴보는 것은 중요하다.
1) Elabaterd RTL : DRC 확인하기 RTL구문을 유효성 검사하기
2) 합성후 타이밍 분석하기 : 마스터 클럭과 관련되어 만들어진 클럭사이의 관계를 분석한다.
비동기 혹은 허위 경로로 선언되지 않는한 각 클럭의 상효 작용 시간은 지정된다.
3) 다음 단계로 나아가기 전에 바른 constraint를 사용하여 타이밍을 만족한다.
report_clock_networks
-> create_clock / create_generated_clock
report_clock_interaction
-> set_clock_groups / set_false_path
check_timing
-> I/O delays
report_timing_summary
-> Timing exceptions
타이밍 불만족시 : Cross-probe Instances in critical path In Netlist view and Elaborated view schematics
옵션과 HDL코드를 검토하고 합성을 실행한다.
4) Revision 제어 시스템으로 소스들을 관리하기
5) Xilinx IP를 업데이트하기
2장. 보드와 칩 계획하기
- IO와 clock 핀 위치 계획 (PCB 레이아웃 고려), 칩 용량, 또 다른 칩 대안 고려, 전력 및 디버깅 고려
<= 보드에서 칩의 방향 계획하기와 특정 핀에 신호들을 할당하기 ==> 전체 시스템 성능, 전력 소비, 설계 사이클 시간을 개선함.
- 보드 계획하기와 함께 IO 핀 계획하기를 권한다.
tip> place very high fanout, design-wide control signals towards the center of the device
For SSI technology devices, place the signals in the SLR located in the middle of the SLR
components they drive.
tips> HBM칩 설계하기
tips> XPE(Xilinx Power Estimator)를 이용하여 최악의 전력 분석하기
3장. 설계하기
- RTL 코딩, IP 구성, 관리, constraint할당
모듈 혹은 경계안의 critical path를 포함하는 출력신호는 레지스터화한다. (레지스터화가 안된 모든 경로는 rebuilt or flat된다.)
모듈 레벨에서 attributes을 적용한다.
플로우플랜 고려하기
• Partition logic to a particular SLR when using SSI technology devices.
• Close timing on a design when timing is not met using standard flows.
4장, 구현하기
- 디자인을 합성 및 구현을 위한 제일 나은 가용 옵션을 다룬다.
5장. 디자인 마무리하기
- 디자인의 타이밍을 끝내기 위해서 혹은 전력 소비를 줄이기 위해서 여러 설계 분석과 구현 기술을 다룬다.
하드웨어 검증 목적으로 설계에 디버그 로직을 추가하는 것을 고려한다.
*) Ultrafast 설계 방법 체크목록
- 설계 팀안에서 특정 역활을 목표로한다.
- 프로젝트 계획하기, 보드 및 디바이스 계획하기, IP와 서브 모듈 설계하기 그리고 최상위 설계의 마무리하기를
포함한 설계 절차동안 공통 질문과 권고 대응 행위를 포함한다.
- Documentatation 와 Training부에 설계 흐름 절차에 관련된 리소스 목록을 포함한다.
report_methodology : DRC 설계 방법 이용하기
<- elebrate단계 (RTL구문 유효성 검사( , 합성 단계(네트리스트와 constraint유효성 검사), 구현 단계(constraints와 타이밍의 유효성) 에서
DRC를 통해 규칙을 확인한다.