3,586 research outputs found

    Circuit as Set of Points

    Full text link
    As the size of circuit designs continues to grow rapidly, artificial intelligence technologies are being extensively used in Electronic Design Automation (EDA) to assist with circuit design. Placement and routing are the most time-consuming parts of the physical design process, and how to quickly evaluate the placement has become a hot research topic. Prior works either transformed circuit designs into images using hand-crafted methods and then used Convolutional Neural Networks (CNN) to extract features, which are limited by the quality of the hand-crafted methods and could not achieve end-to-end training, or treated the circuit design as a graph structure and used Graph Neural Networks (GNN) to extract features, which require time-consuming preprocessing. In our work, we propose a novel perspective for circuit design by treating circuit components as point clouds and using Transformer-based point cloud perception methods to extract features from the circuit. This approach enables direct feature extraction from raw data without any preprocessing, allows for end-to-end training, and results in high performance. Experimental results show that our method achieves state-of-the-art performance in congestion prediction tasks on both the CircuitNet and ISPD2015 datasets, as well as in design rule check (DRC) violation prediction tasks on the CircuitNet dataset. Our method establishes a bridge between the relatively mature point cloud perception methods and the fast-developing EDA algorithms, enabling us to leverage more collective intelligence to solve this task. To facilitate the research of open EDA design, source codes and pre-trained models are released at https://github.com/hustvl/circuitformer

    AI/ML Algorithms and Applications in VLSI Design and Technology

    Full text link
    An evident challenge ahead for the integrated circuit (IC) industry in the nanometer regime is the investigation and development of methods that can reduce the design complexity ensuing from growing process variations and curtail the turnaround time of chip manufacturing. Conventional methodologies employed for such tasks are largely manual; thus, time-consuming and resource-intensive. In contrast, the unique learning strategies of artificial intelligence (AI) provide numerous exciting automated approaches for handling complex and data-intensive tasks in very-large-scale integration (VLSI) design and testing. Employing AI and machine learning (ML) algorithms in VLSI design and manufacturing reduces the time and effort for understanding and processing the data within and across different abstraction levels via automated learning algorithms. It, in turn, improves the IC yield and reduces the manufacturing turnaround time. This paper thoroughly reviews the AI/ML automated approaches introduced in the past towards VLSI design and manufacturing. Moreover, we discuss the scope of AI/ML applications in the future at various abstraction levels to revolutionize the field of VLSI design, aiming for high-speed, highly intelligent, and efficient implementations

    μ΄ˆλ―Έμ„Έ 회둜 섀계λ₯Ό μœ„ν•œ 인터컀λ„₯트의 타이밍 뢄석 및 λ””μžμΈ λ£° μœ„λ°˜ 예츑

    Get PDF
    ν•™μœ„λ…Όλ¬Έ (박사) -- μ„œμšΈλŒ€ν•™κ΅ λŒ€ν•™μ› : κ³΅κ³ΌλŒ€ν•™ 전기·컴퓨터곡학뢀, 2021. 2. κΉ€νƒœν™˜.타이밍 뢄석 및 λ””μžμΈ λ£° μœ„λ°˜ μ œκ±°λŠ” λ°˜λ„μ²΄ μΉ© 제쑰λ₯Ό μœ„ν•œ 마슀크 μ œμž‘ 전에 μ™„λ£Œλ˜μ–΄μ•Ό ν•  ν•„μˆ˜ 과정이닀. κ·ΈλŸ¬λ‚˜ νŠΈλžœμ§€μŠ€ν„°μ™€ 인터컀λ„₯트의 변이가 μ¦κ°€ν•˜κ³  있고 λ””μžμΈ λ£° μ—­μ‹œ λ³΅μž‘ν•΄μ§€κ³  있기 λ•Œλ¬Έμ— 타이밍 뢄석 및 λ””μžμΈ λ£° μœ„λ°˜ μ œκ±°λŠ” μ΄ˆλ―Έμ„Έ νšŒλ‘œμ—μ„œ 더 μ–΄λ €μ›Œμ§€κ³  μžˆλ‹€. λ³Έ λ…Όλ¬Έμ—μ„œλŠ” μ΄ˆλ―Έμ„Έ 섀계λ₯Ό μœ„ν•œ 두가지 문제인 타이밍 뢄석과 λ””μžμΈ λ£° μœ„λ°˜μ— λŒ€ν•΄ 닀룬닀. 첫번째둜 곡정 μ½”λ„ˆμ—μ„œ 타이밍 뢄석은 μ‹€λ¦¬μ½˜μœΌλ‘œ μ œμž‘λœ 회둜의 μ„±λŠ₯을 μ •ν™•νžˆ μ˜ˆμΈ‘ν•˜μ§€ λͺ»ν•œλ‹€. κ·Έ μ΄μœ λŠ” 곡정 μ½”λ„ˆμ—μ„œ κ°€μž₯ 느린 타이밍 κ²½λ‘œκ°€ λͺ¨λ“  곡정 μ‘°κ±΄μ—μ„œλ„ κ°€μž₯ 느린 것은 μ•„λ‹ˆκΈ° λ•Œλ¬Έμ΄λ‹€. κ²Œλ‹€κ°€ μΉ© λ‚΄μ˜ μž„κ³„ κ²½λ‘œμ—μ„œ 인터컀λ„₯νŠΈμ— μ˜ν•œ 지연 μ‹œκ°„μ΄ 전체 지연 μ‹œκ°„μ—μ„œμ˜ 영ν–₯이 μ¦κ°€ν•˜κ³  있고, 10λ‚˜λ…Έ μ΄ν•˜ κ³΅μ •μ—μ„œλŠ” 20%λ₯Ό μ΄ˆκ³Όν•˜κ³  μžˆλ‹€. 즉, μ‹€λ¦¬μ½˜μœΌλ‘œ μ œμž‘λœ 회둜의 μ„±λŠ₯을 μ •ν™•νžˆ μ˜ˆμΈ‘ν•˜κΈ° μœ„ν•΄μ„œλŠ” λŒ€ν‘œ νšŒλ‘œκ°€ νŠΈλžœμ§€μŠ€ν„°μ˜ 변이 λΏλ§Œμ•„λ‹ˆλΌ 인터컀λ„₯트의 변이도 λ°˜μ˜ν•΄μ•Όν•œλ‹€. 인터컀λ„₯트λ₯Ό κ΅¬μ„±ν•˜λŠ” κΈˆμ†μ΄ 10μΈ΅ 이상 μ‚¬μš©λ˜κ³  있고, 각 측을 κ΅¬μ„±ν•˜λŠ” κΈˆμ†μ˜ μ €ν•­κ³Ό μΊνŒ¨μ‹œν„΄μŠ€μ™€ λΉ„μ•„ 저항이 λͺ¨λ‘ 회둜 지연 μ‹œκ°„μ— 영ν–₯을 μ£ΌκΈ° λ•Œλ¬Έμ— λŒ€ν‘œ 회둜λ₯Ό μ°ΎλŠ” λ¬Έμ œλŠ” 차원이 맀우 높은 μ˜μ—­μ—μ„œ 졜적의 ν•΄λ₯Ό μ°ΎλŠ” 방법이 ν•„μš”ν•˜λ‹€. 이λ₯Ό μœ„ν•΄ 인터컀λ„₯트λ₯Ό μ œμž‘ν•˜λŠ” 곡정(λ°± μ—”λ“œ 였브 라인)의 변이λ₯Ό λ°˜μ˜ν•œ λŒ€ν‘œ 회둜λ₯Ό μƒμ„±ν•˜λŠ” 방법을 μ œμ•ˆν•˜μ˜€λ‹€. 곡정 변이가 μ—†μ„λ•Œ κ°€μž₯ 느린 타이밍 κ²½λ‘œμ— μ‚¬μš©λœ κ²Œμ΄νŠΈμ™€ λΌμš°νŒ… νŒ¨ν„΄μ„ λ³€κ²½ν•˜λ©΄μ„œ μ μ§„μ μœΌλ‘œ νƒμƒ‰ν•˜λŠ” 방법이닀. ꡬ체적으둜, λ³Έ λ…Όλ¬Έμ—μ„œ μ œμ•ˆν•˜λŠ” ν•©μ„± ν”„λ ˆμž„μ›Œν¬λŠ” λ‹€μŒμ˜ μƒˆλ‘œμš΄ κΈ°μˆ λ“€μ„ ν†΅ν•©ν•˜μ˜€λ‹€: (1) λΌμš°νŒ…μ„ κ΅¬μ„±ν•˜λŠ” μ—¬λŸ¬ κΈˆμ† μΈ΅κ³Ό λΉ„μ•„λ₯Ό μΆ”μΆœν•˜κ³  탐색 μ‹œκ°„ κ°μ†Œλ₯Ό μœ„ν•΄ μœ μ‚¬ν•œ ꡬ성듀을 같은 λ²”μ£Όλ‘œ λΆ„λ₯˜ν•˜μ˜€λ‹€. (2) λΉ λ₯΄κ³  μ •ν™•ν•œ 타이밍 뢄석을 μœ„ν•˜μ—¬ μ—¬λŸ¬ κΈˆμ† μΈ΅κ³Ό λΉ„μ•„λ“€μ˜ 변이λ₯Ό μˆ˜μ‹ν™”ν•˜μ˜€λ‹€. (3) ν™•μž₯성을 κ³ λ €ν•˜μ—¬ 일반적인 링 μ˜€μ‹€λ ˆμ΄ν„°λ‘œ λŒ€ν‘œνšŒλ‘œλ₯Ό νƒμƒ‰ν•˜μ˜€λ‹€. λ‘λ²ˆμ§Έλ‘œ λ””μžμΈ 룰의 λ³΅μž‘λ„κ°€ μ¦κ°€ν•˜κ³  있고, 이둜 인해 ν‘œμ€€ μ…€λ“€μ˜ 인터컀λ„₯트λ₯Ό ν†΅ν•œ 연결을 μ§„ν–‰ν•˜λŠ” λ™μ•ˆ λ””μžμΈ λ£° μœ„λ°˜μ΄ μ¦κ°€ν•˜κ³  μžˆλ‹€. κ²Œλ‹€κ°€ ν‘œμ€€ μ…€μ˜ 크기가 계속 μž‘μ•„μ§€λ©΄μ„œ μ…€λ“€μ˜ 연결은 점점 μ–΄λ €μ›Œμ§€κ³  μžˆλ‹€. κΈ°μ‘΄μ—λŠ” 회둜 λ‚΄ λͺ¨λ“  ν‘œμ€€ 셀을 μ—°κ²°ν•˜λŠ”λ° ν•„μš”ν•œ νŠΈλž™ 수, κ°€λŠ₯ν•œ νŠΈλž™ 수, 이듀 κ°„μ˜ 차이λ₯Ό μ΄μš©ν•˜μ—¬ μ—°κ²° κ°€λŠ₯성을 νŒλ‹¨ν•˜κ³ , λ””μžμΈ λ£° μœ„λ°˜μ΄ λ°œμƒν•˜μ§€ μ•Šλ„λ‘ μ…€ 배치λ₯Ό μ΅œμ ν™”ν•˜μ˜€λ‹€. κ·ΈλŸ¬λ‚˜ κΈ°μ‘΄ 방법은 μ΅œμ‹  κ³΅μ •μ—μ„œλŠ” μ •ν™•ν•˜μ§€ μ•ŠκΈ° λ•Œλ¬Έμ— 더 λ§Žμ€ 정보λ₯Ό μ΄μš©ν•œ νšŒλ‘œλ‚΄ λͺ¨λ“  ν‘œμ€€ μ…€ μ‚¬μ΄μ˜ μ—°κ²° κ°€λŠ₯성을 μ˜ˆμΈ‘ν•˜λŠ” 방법이 ν•„μš”ν•˜λ‹€. λ³Έ λ…Όλ¬Έμ—μ„œλŠ” 기계 ν•™μŠ΅μ„ 톡해 λ””μžμΈ λ£° μœ„λ°˜μ΄ λ°œμƒν•˜λŠ” μ˜μ—­ 및 개수λ₯Ό μ˜ˆμΈ‘ν•˜κ³  이λ₯Ό 쀄이기 μœ„ν•΄ ν‘œμ€€ μ…€μ˜ 배치λ₯Ό λ°”κΎΈλŠ” 방법을 μ œμ•ˆν•˜μ˜€λ‹€. λ””μžμΈ λ£° μœ„λ°˜ μ˜μ—­μ€ 이진 λΆ„λ₯˜λ‘œ μ˜ˆμΈ‘ν•˜μ˜€κ³  ν‘œμ€€ μ…€μ˜ λ°°μΉ˜λŠ” λ””μžμΈ λ£° μœ„λ°˜ 개수λ₯Ό μ΅œμ†Œν™”ν•˜λŠ” λ°©ν–₯으둜 μ΅œμ ν™”λ₯Ό μˆ˜ν–‰ν•˜μ˜€λ‹€. μ œμ•ˆν•˜λŠ” ν”„λ ˆμž„μ›Œν¬λŠ” λ‹€μŒμ˜ 세가지 기술둜 κ΅¬μ„±λ˜μ—ˆλ‹€: (1) 회둜 λ ˆμ΄μ•„μ›ƒμ„ μ—¬λŸ¬ 개의 μ •μ‚¬κ°ν˜• 격자둜 λ‚˜λˆ„κ³  각 κ²©μžμ—μ„œ λΌμš°νŒ…μ„ μ˜ˆμΈ‘ν•  수 μžˆλŠ” μš”μ†Œλ“€μ„ μΆ”μΆœν•œλ‹€. (2) 각 κ²©μžμ—μ„œ λ””μžμΈ λ£° μœ„λ°˜μ΄ μžˆλŠ”μ§€ μ—¬λΆ€λ₯Ό νŒλ‹¨ν•˜λŠ” 이진 λΆ„λ₯˜λ₯Ό μˆ˜ν–‰ν•œλ‹€. (3) λ©”νƒ€νœ΄λ¦¬μŠ€ν‹± μ΅œμ ν™” λ˜λŠ” λ² μ΄μ§€μ•ˆ μ΅œμ ν™”λ₯Ό μ΄μš©ν•˜μ—¬ 전체 λ””μžμΈ λ£° μœ„λ°˜ κ°œμˆ˜κ°€ κ°μ†Œν•˜λ„λ‘ 각 κ²©μžμ— μžˆλŠ” ν‘œμ€€ 셀을 움직인닀.Timing analysis and clearing design rule violations are the essential steps for taping out a chip. However, they keep getting harder in deep sub-micron circuits because the variations of transistors and interconnects have been increasing and design rules have become more complex. This dissertation addresses two problems on timing analysis and design rule violations for synthesizing deep sub-micron circuits. Firstly, timing analysis in process corners can not capture post-Si performance accurately because the slowest path in the process corner is not always the slowest one in the post-Si instances. In addition, the proportion of interconnect delay in the critical path on a chip is increasing and becomes over 20% in sub-10nm technologies, which means in order to capture post-Si performance accurately, the representative critical path circuit should reflect not only FEOL (front-end-of-line) but also BEOL (backend-of-line) variations. Since the number of BEOL metal layers exceeds ten and the layers have variation on resistance and capacitance intermixed with resistance variation on vias between them, a very high dimensional design space exploration is necessary to synthesize a representative critical path circuit which is able to provide an accurate performance prediction. To cope with this, I propose a BEOL-aware methodology of synthesizing a representative critical path circuit, which is able to incrementally explore, starting from an initial path circuit on the post-Si target circuit, routing patterns (i.e., BEOL reconfiguring) as well as gate resizing on the path circuit. Precisely, the synthesis framework of critical path circuit integrates a set of novel techniques: (1) extracting and classifying BEOL configurations for lightening design space complexity, (2) formulating BEOL random variables for fast and accurate timing analysis, and (3) exploring alternative (ring oscillator) circuit structures for extending the applicability of this work. Secondly, the complexity of design rules has been increasing and results in more design rule violations during routing. In addition, the size of standard cell keeps decreasing and it makes routing harder. In the conventional P&R flow, the routability of pre-routed layout is predicted by routing congestion obtained from global routing, and then placement is optimized not to cause design rule violations. But it turned out to be inaccurate in advanced technology nodes so that it is necessary to predict routability with more features. I propose a methodology of predicting the hotspots of design rule violations (DRVs) using machine learning with placement related features and the conventional routing congestion, and perturbating placed cells to reduce the number of DRVs. Precisely, the hotspots are predicted by a pre-trained binary classification model and placement perturbation is performed by global optimization methods to minimize the number of DRVs predicted by a pre-trained regression model. To do this, the framework is composed of three techniques: (1) dividing the circuit layout into multiple rectangular grids and extracting features such as pin density, cell density, global routing results (demand, capacity and overflow), and more in the placement phase, (2) predicting if each grid has DRVs using a binary classification model, and (3) perturbating the placed standard cells in the hotspots to minimize the number of DRVs predicted by a regression model.1 Introduction 1 1.1 Representative Critical Path Circuit . . . . . . . . . . . . . . . . . . . 1 1.2 Prediction of Design Rule Violations and Placement Perturbation . . . 5 1.3 Contributions of This Dissertation . . . . . . . . . . . . . . . . . . . 7 2 Methodology for Synthesizing Representative Critical Path Circuits reflecting BEOL Timing Variation 9 2.1 Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 2.2 Definitions and Overall Flow . . . . . . . . . . . . . . . . . . . . . . 12 2.3 Techniques for BEOL-Aware RCP Generation . . . . . . . . . . . . . 17 2.3.1 Clustering BEOL Configurations . . . . . . . . . . . . . . . . 17 2.3.2 Formulating Statistical BEOL Random Variables . . . . . . . 18 2.3.3 Delay Modeling . . . . . . . . . . . . . . . . . . . . . . . . 22 2.3.4 Exploring Ring Oscillator Circuit Structures . . . . . . . . . . 24 2.4 Experimental Results . . . . . . . . . . . . . . . . . . . . . . . . . . 26 2.5 Further Study on Variations . . . . . . . . . . . . . . . . . . . . . . . 37 3 Methodology for Reducing Routing Failures through Enhanced Prediction on Design Rule Violations in Placement 39 3.1 Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 3.2 Overall Flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 3.3 Techniques for Reducing Routing Failures . . . . . . . . . . . . . . . 43 3.3.1 Binary Classification . . . . . . . . . . . . . . . . . . . . . . 43 3.3.2 Regression . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 3.3.3 Optimization . . . . . . . . . . . . . . . . . . . . . . . . . . 46 3.3.4 Placement Perturbation . . . . . . . . . . . . . . . . . . . . . 47 3.4 Experiments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 3.4.1 Experiments Setup . . . . . . . . . . . . . . . . . . . . . . . 51 3.4.2 Hotspot Prediction . . . . . . . . . . . . . . . . . . . . . . . 51 3.4.3 Regression . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 3.4.4 Placement Perturbation . . . . . . . . . . . . . . . . . . . . . 57 4 Conclusions 61 4.1 Synthesis of Representative Critical Path Circuits reflecting BEOL Timing Variation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 4.2 Reduction of Routing Failures through Enhanced Prediction on Design Rule Violations in Placement . . . . . . . . . . . . . . . . . . . . . . 62 Abstract (In Korean) 69Docto

    Echo State Networks for Proactive Caching in Cloud-Based Radio Access Networks with Mobile Users

    Full text link
    In this paper, the problem of proactive caching is studied for cloud radio access networks (CRANs). In the studied model, the baseband units (BBUs) can predict the content request distribution and mobility pattern of each user, determine which content to cache at remote radio heads and BBUs. This problem is formulated as an optimization problem which jointly incorporates backhaul and fronthaul loads and content caching. To solve this problem, an algorithm that combines the machine learning framework of echo state networks with sublinear algorithms is proposed. Using echo state networks (ESNs), the BBUs can predict each user's content request distribution and mobility pattern while having only limited information on the network's and user's state. In order to predict each user's periodic mobility pattern with minimal complexity, the memory capacity of the corresponding ESN is derived for a periodic input. This memory capacity is shown to be able to record the maximum amount of user information for the proposed ESN model. Then, a sublinear algorithm is proposed to determine which content to cache while using limited content request distribution samples. Simulation results using real data from Youku and the Beijing University of Posts and Telecommunications show that the proposed approach yields significant gains, in terms of sum effective capacity, that reach up to 27.8% and 30.7%, respectively, compared to random caching with clustering and random caching without clustering algorithm.Comment: Accepted in the IEEE Transactions on Wireless Communication
    • …
    corecore