$\require{mediawiki-texvc}$

연합인증

연합인증 가입 기관의 연구자들은 소속기관의 인증정보(ID와 암호)를 이용해 다른 대학, 연구기관, 서비스 공급자의 다양한 온라인 자원과 연구 데이터를 이용할 수 있습니다.

이는 여행자가 자국에서 발행 받은 여권으로 세계 각국을 자유롭게 여행할 수 있는 것과 같습니다.

연합인증으로 이용이 가능한 서비스는 NTIS, DataON, Edison, Kafe, Webinar 등이 있습니다.

한번의 인증절차만으로 연합인증 가입 서비스에 추가 로그인 없이 이용이 가능합니다.

다만, 연합인증을 위해서는 최초 1회만 인증 절차가 필요합니다. (회원이 아닐 경우 회원 가입이 필요합니다.)

연합인증 절차는 다음과 같습니다.

최초이용시에는
ScienceON에 로그인 → 연합인증 서비스 접속 → 로그인 (본인 확인 또는 회원가입) → 서비스 이용

그 이후에는
ScienceON 로그인 → 연합인증 서비스 접속 → 서비스 이용

연합인증을 활용하시면 KISTI가 제공하는 다양한 서비스를 편리하게 이용하실 수 있습니다.

타이밍 구동 FPGA 분석적 배치
Timing Driven Analytic Placement for FPGAs 원문보기

Journal of the Institute of Electronics and Information Engineers = 전자공학회논문지, v.54 no.7 = no.476, 2017년, pp.21 - 28  

김교선 (인천대학교)

초록
AI-Helper 아이콘AI-Helper

FPGA 배치 툴 연구는 학계에서도 단순한 가상 아키텍처 모델 가정에서 벗어나 상용 툴처럼 캐리체인이나 광폭함수 멀티플렉서, 메모리/승산기 블록 등의 성능 및 밀도를 향상시키는 소자들을 포함하는 현실적인 모델을 적용하기 시작하였다. 이 때 발생하는 실제적 이슈들을 다룬 사전 패킹, 다층 밀도 분석 등의 기법이 초기 분석적 배치 (Analytic Placement)에 적용되어 밀도를 분산시키면서 배선 길이를 효과적으로 최소화한 연구가 앞서 발표된 바 있다. 더 나아가 궁극적으로는 타이밍을 최적화해야하기 때문에 많은 연구에서는 타이밍 제약 조건을 만족시키기 위한 기법들이 제시되고 있다. 그러나 초기 배치 후 진행되는 배치 적법화 및 배치 개선에서 주로 적용될 뿐 분석적 배치에서 이러한 타이밍 기법을 적용한 사례는 거의 없다. 본 논문에서는 사전 패킹 및 다층 밀도 분석 등의 기법이 구현된 기존 분석적 배치에 타이밍 제약 조건 위반을 검출하고 이를 최소화하는 기법을 결합하는 방안을 소개한다. 먼저 정적 타이밍 검증기를 집적하여 배선 길이가 최소화된 기존 배치 결과의 타이밍을 검사해 보았으며 위반을 감소시키기 위해 신호 도착 시간 (Arrival Time)을 최소화하는 함수를 분석적 배치의 목적 함수에 추가하였다. 이 때 각 클록마다 주기가 다를 수 있기 때문에 각 클록별로 함수를 따로 계산해 합산하는 방안이 제안되었다. 또한, 위반이 없는 클록 도메인의 신호 경로들도 불필요하게 단축될 수 있기 때문에 음수 슬랙 (Negative Slack)을 계산하여 이를 최소화하는 함수를 추가로 제안하여 비교하였다. 영역 분할 기법 (Partitioning)을 기반으로 배선 길이를 최소화하는 기존 배치 적법화를 그대로 사용한 후 타이밍 검증을 통해 초기 분석적 배치 단계에서 타이밍 개선 효과를 분석하였다. 배치 적법화 시 추가적인 타이밍 최적화 기법이 사용되지 않았기 때문에 타이밍 개선이 있다면 이것은 전적으로 분석적 배치의 목적 함수개선에 의한 효과이다. 12개 실용예제에 대해 실험한 결과, 목적 함수에 도착 시간 함수가 적용되었을 때 그렇지 않았을 때보다 최악 음수 슬랙 (Worst Negative Slack)이 평균 약 15% 정도 감소되었으며 음수 슬랙 함수가 적용되었을 때 이보다 약 6%정도 추가로 더 감소됨을 확인하였다.

Abstract AI-Helper 아이콘AI-Helper

Practical models for FPGA architectures which include performance- and/or density-enhancing components such as carry chains, wide function multiplexers, and memory/multiplier blocks are being applied to academic FPGA placement tools which used to rely on simple imaginary models. Previously the techn...

주제어

AI 본문요약
AI-Helper 아이콘 AI-Helper

* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.

문제 정의

  • 본 논문에서는 사전 패킹 및 다층 밀도 분석 등의 기법이 구현된 기존 분석적 배치에서 타이밍 제약 조건 위반을 검출하고 이를 최소화하는 기법을 결합하는 방안을 소개한다. 신호 도착 시간 (Arrival Time)을 최소화하는 함수를 분석적 배치의 목적 함수에 추가하되 각 클록마다 주기가 다를 수 있기 때문에 각 클록별로 함수를 따로 계산해 합산하는 방안이 제안되었다.
  • 분석적 초기 배치에서는 원래 배선 길이를 최소화하는 동시에 배치 밀도가 분산되도록 하는 주요 기능에 국한하고 신호 경로의 타이밍 최적화는 주로 배치 적법화나 반복적 배치 개선 단계에서 진행되어왔다. 본 논문에서는 정적 타이밍 검증기를 분석적 초기 배치에 집적시킨 후 신호 경로의 타이밍을 검증하면서 최적화하는 함수들을 목적 함수에 추가시킴으로써 타이밍 최적화 기능을 분석적 초기 배치 단계로 끌어 올리는 시도가 있었다. 이 과정에서 이미 알려진 도착 시간 최소화 함수를 다중 클록을 포함한 설계에도 적용할 수 있도록 개선하였고, 이 때 타이밍 위반이 없는 신호 경로까지 불필요하게 단축될 수 있는 비효율성을 개선하기 위해 최악 음수 슬랙을 최소화하는 함수도 제안하였다.
  • 이를 개선하기 위해 본 논문은 도착 시간 대신 음수 슬랙을 최소화하는 타이밍 함수를 제안한다. 이는 앞서 소개한 타이밍 목적 함수에서 식 (2)와 (3)을 다음과 같은 식 (2-1)과 (3-1)로 대체함으로써 간단히 구성할 수 있다.
본문요약 정보가 도움이 되었나요?

질의응답

핵심어 질문 논문에서 추출한 답변
분석적 배치는 비선형 최적화 기법을 이용하며, 목적함수를 사용하는 Conjugate Gradient (CG) Solver가 응용되는데 여기서 목적함수는 무엇으로 구성되어 있는가? 목적함수는 배선 길이 (length), 타이밍 (timing), 배치 밀도 (density), 장벽 (barrier), 그리고 무게 중심 변위 (cogd : Center of Gravity Displacement) 함수로 구성 된다. 목적 함수 내 다섯 가지 함수의 영향을 조정하기 위해 가중치 αl, αt, αd, αb, αc 가 사용되었다.
FPGA 설계에서 배선이란? 캐리 체인 및 광폭 입력 함수 구현에 사용되는 논리 단위 셀들은 멀티플렉서 및 전용 게이트들 간의 인접성을 만족시키기 위해 상대적 배치 위치가 미리 결정되며 이를 계속 유지해야 하므로 필수 전처리 패킹 과정 (Mandatory Pre-Packer)에서 먼저 그룹으로 패킹하여 그 그룹을 배치에서도 유지한다. 배선은 다양한 길이의 수평, 수직 연결선들 간에 위치한 스위치들의 연결 방향을 선택하여 슬라이스의 핀들을 서로 연결하는 경로를 만들어 내는 과정이다. 배치 배선 후에는 각 스위치들의 상태를 나타내는 비트들을 스트림 형태로 출력한 후 FPGA 칩에 로드할 수 있도록 한다.
타이밍의 검증 및 최적화를 위해 필요한 것은? 타이밍의 검증 및 최적화를 위해 정적 타이밍 검증기 (Static Timing Analyzer)가 필요하며 K-FPGA 과제에서 구현된 것은 표준화된 Liberty 형식으로 기술된 라이브러리 프리미티브 셀들의 지연 정보를 사용하여 회로의 타이밍을 계산하고 표준화된 SDC (Synthesis Design Constraint) 형식으로 기술된 제약 조건을 검사할 수 있다. 논리 합성, 배치 배선 등 각 설계 단계 후 타이밍을 검증하도록 개발되어 있었는데 이것을 분석적 배치에 집적하여 타이밍 최적화에 응용하였다.
질의응답 정보가 도움이 되었나요?

참고문헌 (12)

  1. ABC: A System for Sequential Synthesis and Verification. Berkeley Logic Synthesis and Verification Group, http://www.eecs.berkeley.edu/-alanmi/abc/abc.html, October, 2007. 

  2. V. Betz and J. Rose, "VPR: A New Packing, Placement And Routing Tool For FPGA Research," in Proceedings of the 7th International Workshop on Field-Programmable Logic and Applications. pp. 213-222, 1997. 

  3. N. Steiner, A. Wood, H. Shojaei, J. Couch, P. Athanas, M. French, "Torc: Towards Open-Source Tool Flow," in Proceedings of the 19th ACM/SIGDA International Symposium on Field Programmable Gate Arrays, pp. 41-44, February, 2010. 

  4. C. Lavin, M. Padilla, J. Lamprecht, P. Lundrigan, B. Nelson, and B. Hutchings, "RapidSmith: Do-It-Yourself CAD Tools for Xilinx FPGAs" in Proceedings of the 21st International Workshop on Field-Programmable Logic and Applications, pp. 349-355, September, 2011. 

  5. K. Kim, "Evaluation Toolkit for K-FPGA Fabric Architectures," Journal of the IEEK, vol. 49-SD, no. 4, pp. 157-167, April, 2012. 

  6. J. Cong and G. Luo, "Highly Efficient Gradient Computation for Density-Constrained Analytical Placement Methods," Proc. of the International Symposium on Physical Design, pp. 39-45, April, 2008. 

  7. K. Kim, "Pre-Packing, Early Fixation, and Multi-Layer Density Analysis in Analytic Placement for FPGAs," Journal of the IEEK, vol. 51, no. 10, pp. 96-106, October, 2014. 

  8. R. Pattison, Z. Abuowaimer, S. Areibi, G. Grewal, and A. Vannelli, "GPlace: A Congestion- Aware Placement Tool for UltraScale FPGAs," Proc. of International Conference of Computer Aided Design, November, 2016. 

  9. W. Li, S. Dhar, and D.Z. Pan, "UTPlaceF: A Routability-Driven FPGA Placer with Physical and Congestion Aware Packing," Proc. of International Conference of Computer Aided Design, November, 2016. 

  10. W.C. Naylor, R. Donelly, and L. Sha, "Non-Linear Optimization System and Method for Wire Length and delay Optimization for an Automatic Electric Circuit Placer," US Patent 6301693, October 2001. 

  11. Spartan-3 Generation FPGA User Guide, UG331, v1.6, Xilinx Inc., December 3, 2009. 

  12. D.J.C. MacKay, "MacOpt-a Nippy Wee Optimizer," http://www.inference.phy.cam.ac.uk/mackay/c/macopt.html, June, 2004. 

저자의 다른 논문 :

관련 콘텐츠

저작권 관리 안내
섹션별 컨텐츠 바로가기

AI-Helper ※ AI-Helper는 오픈소스 모델을 사용합니다.

AI-Helper 아이콘
AI-Helper
안녕하세요, AI-Helper입니다. 좌측 "선택된 텍스트"에서 텍스트를 선택하여 요약, 번역, 용어설명을 실행하세요.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.

선택된 텍스트

맨위로