| 研究生: |
張欽堯 Chang, Chin-Yao |
|---|---|
| 論文名稱: |
具先進傳輸架構之平台式晶片系統之設計與測試 Design and Test of Platform-Based SOC with Advanced On-Chip Communication Architectures |
| 指導教授: |
李昆忠
Lee, Kuen-Jong |
| 學位類別: |
博士 Doctor |
| 系所名稱: |
電機資訊學院 - 電機工程學系 Department of Electrical Engineering |
| 論文出版年: | 2013 |
| 畢業學年度: | 101 |
| 語文別: | 英文 |
| 論文頁數: | 111 |
| 中文關鍵詞: | 晶片上傳輸架構 、系統匯流排 、系統晶片測試平台 、亂序傳輸 、匯流排死結 |
| 外文關鍵詞: | on-chip communication architecture, system bus, SOC test platform, out-of-order transaction, bus deadlock |
| 相關次數: | 點閱:181 下載:0 |
| 分享至: |
| 查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報 |
由於製程技術持續地進步,單位面積中能整合的電晶體數目越來越多,這意味著電路設計者得以在同樣的面積中設計邏輯閘數目更多且功能更為強大的電路系統。為了增進大型電路系統的設計效率,設計者往往以矽智財來建立平台式設計,以於平台上實現所需的系統應用。在平台式設計中,矽智財之間資料的轉移與交換是影響整體系統效能最重要的因素之一。特別是在多核心系統中,多個處理核心往往需要大量的資料交換,這很有可能導致資料交換成為整體系統效能的瓶頸。因此,平台式設計中資料傳輸的晶片上傳輸架構,例如系統匯流排或網路晶片,就顯得格外重要。
平台式設計與晶片上傳輸架構相關之議題為數眾多,本論文針對其中三項與設計和測試相關之重要議題進行分析與探討,並進而提出相對之設計與解決方法。第一個議題與晶片上傳輸之介面與架構相關。先進的系統匯流排標準與介面標準僅定義傳輸系統的介面訊號與傳輸型態,而傳輸系統的電路架構則留予電路設計者自行設計,所以電路設計者較過去有更多的自由來決定採用共享式匯流排、多層次匯流排、縱橫匯流排或是網路晶片來實現資料交換的架構。因此,如何選擇高傳輸效率且兼具電路面積的晶片上傳輸架構之設計就顯得格外重要,此外若矽智財所採用的介面標準與晶片上傳輸架構採用的介面標準不同,亦會造成系統整合上的困難。在此論文中,我們針對先進之晶片上傳輸介面與傳輸型態來設計其傳輸架構,特別是能有效提升傳輸效率的亂序傳輸型態,使其能達到高傳輸效率。在我們的實驗結果中,相較於目前被廣泛使用的系統匯流排,我們僅須54%的面積就能提供相同的傳輸效率。此外我們亦提出能用以轉換不同先進介面標準的協定轉換器,以縮短系統整合所需的人力。
第二個議題為平台式系統單晶片之測試。在平台式系統單晶片中,許多矽智財電路皆深埋於系統晶片中而難以藉由晶片之外部接腳直接存取,導致測試時可控制性與可觀察性皆不足以達到高測試涵蓋率。目前已有許多研究提出能解決此問題的晶片上測試架構,然而這些測試架構所能提供的測試效率及其電路面積所造成的測試成本皆不盡相同。因此,如何有效地探索不同的測試架構進而提出能滿足所有測試需求且具最低測試成本的架構即為相當重要的議題。在此論文中,我們採用能有效幫助設計者解決系統層級議題的電子系統層級設計方法來解決系統單晶片之測試議題。我們首先提出系統層級的測試元件模型之設計,再利用這些測試元件模型快速地建立與模擬不同的測試架構,以達到測試架構探勘之目的。在我們的實驗結果中,相較於暫存器交換層級模型我們所提出的系統層級模型能加快模擬速度數千甚至數萬倍,而我們所提出的測試架構探勘方法亦能有效地尋找滿足測試需求且具最低測試成本的測試架構。
第三個議題為系統死結之議題。在支援亂序傳輸的系統匯流排中,我們可以透過資料的亂序回傳來達到較佳的傳輸效能。然而,亂序傳輸協定中仍存在著某些回傳順序的規範,這些規範可能會造成系統中一個傳輸等待另一個傳輸,當這樣的等待關係以一個循環的形式存在時,即造成系統死結。另外,在支援多目的地傳輸之網路晶片中,同樣可能因為封包的分支而造成數個封包間循環形式的等待,導致系統死結的發生。在此論文中,我們分別針對系統匯流排亂序傳輸之死結以及網路晶片中多目的地傳輸的死結問題進行分析與探討,並進而提出解決死結問題的方法及其電路。實驗結果證實我們的方法不但能有效地解決死結問題,而且還能提供較其他方法更高的傳輸效率。
As the VLSI process technology continues to advance, more and more transistors can be integrated into a chip, resulting in that designers can design systems with more logic gates and powerful functionalities. To increase the design efficiency of large and complexity systems, the platform-based design methodology that maps applications to components on a platform attract designers’ attention. In platform-based designs, data movement and transformation is of central importance. Especially in current designs that tend to integrate multiple processor cores into a system, data communication among these processor cores may become the bottleneck of overall system performance. Consequently, the on-chip communication architecture for data communication, such as on-chip buses or networks-on-chip, plays the key role in platform-based designs.
Plenty of issues are involved in on-chip communication and platform-based designs, and in this dissertation we focus on three essential and emerging ones. The first issue is design of on-chip buses and interface protocol converters. Some advanced communication protocols that facilitate parallel communications define communication interface and transaction types but leave communication architectures to designers. Designers thus have the freedom to implement the communication protocols using multi-layer, crossbar, networks-on-chip, or a combination of these designs to increase the communication parallelism. Consequently, designers of on-chip buses take more responsibility for overall system performance than usual. In addition, IP cores from different IP vendors may be wrapped with different interface protocols. As system integrators employ these IP cores to design an SOC system, they have to design adaptors or bridges to connect them to an in-house or public on-chip bus. Designing such adapters or bridges is not a difficult task, but the verification of the standard translation and compliance check is quite time consuming. In this dissertation, we propose an on-chip bus design for advanced communication protocols, especially the out-of-order facility, to achieve high communication efficiency. We also propose a protocol converter that translates different communication protocols to reduce effort of system integration. The experimental results show that the proposed bus design is quite efficient comparing with the most popular bus designers, and with our protocol converters IP cores are capable to be integrated with various bus systems.
The second issue is SOC testing. In platform-based SOC designs, many IP cores are embedded deeply, resulting in low controllability and observability. Lots of test architectures with various test parameters are proposed for SOC testing, resulting in various test performance and test cost. To evaluate test performance and test cost of these test architectures, we employ the Electronic System Level (ESL) design methodology that helps designers deal with system-level design issues to deal with test issues. We first propose transaction level models of test infra-structure and then construct the high-level test-structure to build the SOC test platform. With the advantages of the ESL design methodology, we can construct the SOC test platform with various parameters and simulate test procedures efficiently so as to explore the design space of the SOC test platform. Experimental results show that 3 to 4 orders of magnitude improvement on simulation speed can be achieved comparing with the RTL models, and the test time and area overhead of test architectures with various design parameters can be explored in just several minutes.
The third issue is about deadlocks. Out-of-order transactions that allow responses to be returned in an order different from their request order play an important role in communication improvement. However, a deadlock situation may occur if these transactions are not properly manipulated. Another scenario where a deadlock may occur is networks-on-chip supporting multicast routing. To deliver one packet to multiple destinations, packet duplication is efficient for communication. However, it may also cause deadlocks because circular hold-and-wait may occur among a set of duplicated packets. In this dissertation, we respectively analyze how a deadlock occurs in a bus supporting out-of-order transaction and in an NoC supporting multicast routing. We also respectively propose a method and its hardware implementation for deadlocks in the two scenarios. Experimental results show that the proposed methods avoid deadlocks and provide better communication efficiency than the previous work.
[1] K. Keutzer, S. Malik, A. R. Newton, J. M. Rabaey, and A. Sangiovanni-Vincentelli, “System-Level Design: Orthogonalization of Concerns and Platform-Based Design,” IEEE Trans. on Computer-Aided Design of Integrated Circuits and Systems, 19(12): pages 1523-1543, 2000.
[2] L. Li, M. Gao, Z. Cheng, D. Zhang, and S. He, “A New Platform-Based Orthogonal SoC Design Methodology,” Int’l Conf. on ASIC, pages 428-432, 2003.
[3] D. Densmore, R. Passerone, and A. Sangiovanni-Vincentelli, “A Platform-Based Taxonomy for ESL Design,” IEEE Design & Test of Computers, 23(5): pages 359-374, 2006.
[4] A. Sangiovanni-Vincentelli and G. Martin “Platform-Based Design and Software Design Methodology for Embedded Systems,” IEEE Design & Test of Computers, 18(6): pages 23-33, 2001.
[5] Advanced Microcontroller Bus Architecture (AMBA) Specification Rev 2.0 & 3.0, http://www.arm.com.
[6] Open Core Protocol (OCP) Specification, http://www.ocpip.org/home.
[7] Sonics Smart Interconnect, http://sonicsinc.com/products/
[8] Wishbone SoC Interconnect, http://opencores.org/opencores,wishbone
[9] Y. Zorian, E. J. Marinissen and S. Dey, “Testing embedded-core-based system chips,” IEEE Computer, 32(6): pages 52-60, June 1999.
[10] Y. Zorian, “Testing the monster chip,” IEEE Spectrum, 36(7): pages 54-60, July 1999.
[11] C.-Y. Chang, Y.-J. Chang, K.-J. Lee, J.-C. Yeh, S.-Y. Lin and J.-L. Ma, “Design of On-Chip Bus with OCP Interface,” Int’l Symp. on VLSI Design, Automation and Test, pages 211-214, 2010.
[12] C.-Y. Chang, Y.-J. Chang, K.-J. Lee, J.-C. Yeh, P.-J. Huang and Y.-H. Chu, “Design of OCP Wrappers and Protocol Converters for System Integration,” VLSI Design/CAD Symp., 2009.
[13] K.-J. Lee, C.-Y. Chang and J.-D. Wang, “On-Chip Test Platform Design at Electronic System Level,” VLSI Design/CAD Symp., 2008.
[14] K.-J. Lee, C.-Y. Chang and J.-D. Wang, “Constructing On-Chip Test Infra-Structure at Electronic System Level”, Workshop on RTL and High Level Testing, 2008.
[15] C.-Y. Chang, C.-Y. Hsiao, K.-J. Lee and A. Su, “Transaction Level Modeling and Design Space Exploration for SOC Test Architectures,” Asia Test Symposium, pages 200-205, 2009.
[16] K.-J. Lee, C.-Y. Chang, and I-J. Chen, “EPIDETOX: An ESL Platform for Integrated Circuit DEsign and TOol eXploration,” Int’l Conf. on Hardware/Software Codesign and System Synthesis, pages 381-384, 2011.
[17] W.-C. Huang, K.-J. Lee, C.-Y. Chang and Y.-H. Wu, “DASTEP: A Design Automation System for SOC Test Platform,” International Journal of Electrical Engineering, 14(3): pages 219-227, 2007.
[18] K.-J. Lee, T.-Y. Hsieh, C.-Y. Chang, Y.-T. Hong, W.-C. Huang, “On-Chip SOC Test Platform Design Based on IEEE 1500 Standard,” IEEE Transactions on VLSI Systems, 18(7): pages 1134-1139, 2010.
[19] W.-C. Huang, C.-Y. Chang and K.-J. Lee, “Toward Automatic Synthesis of SOC Test Platforms,” International Symposium on VLSI Design, Automation and Test, pages 1-4, 2007.
[20] W.-C. Huang, C.-Y. Chang and K.-J. Lee, “DASTEP: A Design Automation System for SOC Test Platform,” The 2nd International PhD Student Workshop on SOC, 2007.
[21] J.-W. Lin, C.-C. Wang, C.-Y. Chang, C.-H. Chen and K.-J. Lee, “Full System Simulation and Verification Framework,” International Conference on Information Assurance and Security, pages 165-168, 2009.
[22] K.-J. Lee, C.-Y. Chang, A. Su and S.-Y. Liang, “A Unified Test and Debug Platform for SOC Design,” International Conference on ASIC, pages 577-580, 2009.
[23] C.-Y. Chang and K.-J. Lee, “On Deadlock Problem of On-Chip Buses Supporting Out-of-Order Transactions,” accepted by IEEE Trans. on VLSI Systems.
[24] K.-J. Lee, C.-Y. Chang, and H.-Y. Yang, “An Efficient Deadlock-Free Multicast Routing Algorithm for Mesh-Based Networks-on-Chip,” accepted by Int’l Symp. on VLSI Design, Automation and Test, 2013.
[25] Y.-T. Kim, T. Kim, Y. Kim, C. Shin, E.-Y. Chung, K.-M. Choi, J.-T. Kong, S.-K. Eo, “Fast and Accurate Transaction Level Modeling of an Extended AMBA2.0 Bus Architecture,” Design, Automation, and Test in Europe, pages 138-139, 2005.
[26] G. Schirner and R. Domer, “Quantitative Analysis of Transaction Level Models for the AMBA Bus,” Design, Automation, and Test in Europe, 6 pages, 2006.
[27] C.-K. Lo and R.-S. Tsay, “Automatic Generation of Cycle Accurate and Cycle Count Accurate Transaction Level Bus Models from a Formal Model,” Asia and South Pacific Design Automation Conference, pages 558-563, 2009.
[28] N.Y.-C. Chang, Y.-Z. Liao and T.-S. Chang, “Analysis of Shared-link AXI,” IET Computers & Digital Techniques, 3(4): pages 373-383, 2009.
[29] PCI Special Interest Group, Hillsboro, Oregon, USA. PCI Local Bus Specification, Revision 2.0, April 1994.
[30] C.-W. Wang, C.-S. Lai, C.-F. Wu, S.-A. Hwang, and Y.-H. Lin, “On-chip Interconnection Design and SoC Integration with OCP,” Int’l Symp. on VLSI Design, Automation and Test, pages 25-28, 2008.
[31] David C.-W. Chang, I.-T. Liao, J.-K. Lee, W.-F. Chen, S.-Y. Tseng and C.-W. Jen, “PAC DSP Core and Application Processors,” Int’l Conf. on Multimedia and Expo, pages 289-292, 2006.
[32] L Cai and D. Gajski, “Transaction Level Modeling: An Overview,” Int’l Conf. on Hardware/Software Codesign and System Synthesis, pages 19-24, 2003.
[33] K. Lahiri, A. Raghunathan, and G. Lakshminarayana, “The LOTTERYBUS On-Chip Communication Architecture,” IEEE Trans. on VLSI Systems, 14(6): pages 596-608, June 2006.
[34] Synopsys, “DesignWare Verification IP,” http://www.synopsys.com/IP/VerificationIP/Pages/default.asp
[35] M. Radetzki and R. S. Khaligh, “Accuracy-Adaptive Simulation of Transaction Level Models,” Design, Automation and Test in Europe, pages 788-791, 2008.
[36] A. Kasuya and T. Tesfaye, “Verification Methodologies in a TLM-to-RTL Design Flow,” Design Automation Conference, pages 199-204, 2007.
[37] D. Shin, A. Gerstlauer, J. Peng, R. Domer and D. Gajski, “Automatic Generation of Transaction-Level Models for Rapid Design Space Exploration,” Int’l Conf. Hardware/Software Codesign and System Synthesis, pages 64-69, 2006.
[38] S. Pasricha, N. Dutt, M. Ben-Romdhane, “Extending the Transaction Level Modeling Approach for Fast Communication Architecture Exploration,” Design Automation Conference, pages 113-118, 2004.
[39] N. Dhanwwada, I.-C. Lin, and V. Narayanan, “A Power Estimation Methodology for SystemC Transaction Level Models,” Int’l Conf. Hardware/Software Codesign and System Synthesis, pages 142-147, 2005.
[40] IEEE Computer Society, “1500 IEEE Std. Testability Method for Embedded Core-based Integrated Circuits,” 2005.
[41] IEEE Computer Society, “1149.1 IEEE standard test access port and boundary-scan architecture,” 2001.
[42] A. Krstic, W.-C. Lai, L. Chen, K.-T. Cheng, and S.Dey, “Embedded Software-based Self-Testing for SoC Design,” Design Automation Conference, pages 355-360, 2002.
[43] J.-R. Huang, M. K. Iyer, and K.-T. Cheng, “A Self-Test Methodology for IP Cores in Bus-Based Programmable SoCs,” VLSI Test Symp., pages 198-203, 2001.
[44] M. Benabdenbi, A. Greiner, F. Pecheux, E. Viaud, and M. Tuna, “STEPS: Experimenting a New Software-based strategy for Testing SoCs Containing P1500-compliant IP Cores,” Design, Automation and Test in Europe, pages 712-713, 2004.
[45] C.-Y. Lo, C.-H. Wang, K.-L. Cheng, J.-R. Huang, C.-W. Wang, S.-M. Wang, and C.-W. Wu, “STEAC: A Platform for Automatic SOC Test Integration,” IEEE Trans. on VLSI Systems, 15(5): pages 541-545, May 2007.
[46] K.-J. Lee, C.-Y. Chu, Y.-T. Hong, “An Embedded Processor Based SOC Test Platform,” Int’l Symp. on Circuits and Systems, pages 2983-2986, 2005.
[47] S. K. Goel, E. J. Marinissen, A. Sehgal, and K. Chakrabarty, “Testing of SoCs with Hierarchical Cores: Common Fallacies, Test Access Optimization, and Test Scheduling,” IEEE Trans. on Computers, 58(3): pages 409-423, March 2009.
[48] S. K. Goel and E. J. Marinissen, “Cluster-Based Test Architecture Design for System-on-Chip,” VLSI Test Symp., pages 259-264, 2002.
[49] T.-Y. Hsieh, K.-J. Lee, and J.-J. You, “Test Efficiency Analysis and Improvement of SOC Test Platforms,” Asian Test Symp., pages 463-466, 2007.
[50] Metropolis. Available: http://embedded.eecs.berkeley.edu/metropolis/tools.html.
[51] Z. Wang, A. Herkersdorf, W. Haberl, and M. Wechs, “SysCOLA: A Framework for Co-Development of Automotive Software and System Platform,” Design Automation Conference, pages 37-42, 2009.
[52] V. Reyes, W. Kruijtzer, T. Bautista, G. Alkadi, and A. Nunez, “A Unified System-Level Modeling and Simulation Environment for MPSoC design: MPEG-4 Decoder Case Study,” Design, Automation and Test in Europe, pages 1-6, 2006.
[53] C. Jalier, D. Lattard, and G. Sassatelli, “A Flexible Modeling and Simulation Framework for Design Space Exploration,” Int’l Symp. on System-on-Chip, pages 1-4, 2008.
[54] J. Ceng, W. Sheng, J. Castrillon, A. Stulova, R. Leupers, G. Ascheid and H. Meyr, “A High-Level Virtual Platform for Early MPSoC Software Development”, Int’l Conf. on Hardware/Software Codesign and System Synthesis, pages 11-20, 2009.
[55] C. Helmstetter, V. Joloboff, and H. Xiao, “SimSoC: A full system simulation software for embedded systems,” Workshop on Open-source Software for Scientific Computation, pages 49-55, 2009.
[56] Y.W. Hau, M. Khalil-Hani and M.N. Marsono, “CODESL: A Framework for System-level Modelling, Co-simulation and Design-Space Exploration of Embedded Systems based on System-on-Chip,” Int’l Conf. on Intelligent Systems, Modeling and Simulation, pages 122-127, 2010.
[57] O. Ogawa, S. Noyer, P. Chauvet, K. Shinohara, Y. Watanabe, H. Niizuma, T. Sasaki, and Y. Takai, “A Practical Approach for Bus Architecture Optimization at Transaction Level,” Design, Automation and Test in Europe, pages 176-181, 2003.
[58] OpenESL. ttp://screamlabopensource.blogspot.com/
[59] Open SystemC Initiative: http://www.systemc.org/home/
[60] G. G. (Chris) Lee, Y.-K. Chen, M. Mattavelli, and E. S. Jang, “Algorithm/Architecture Co-Exploration of Visual Computing on Emergent Platforms: Overview and Future Prospects,” IEEE Trans. on Circuits and Systems for Video Technology, 19(11): pages 1576-1587, Nov. 2009.
[61] L.-Y. Chiou, Y.-S. Chen, C.-H. Lee, “System-Level Bus-Based Communication Architecture Exploration Using a Pseudoparallel Algorithm,” IEEE Trans. on Computer-Aided Design , 28(8): pages 1213-1223, 2009.
[62] A. T. Tran and B. M. Bass, “RoShaQ: High-Performance On-Chip Router with Shared Queues,” Int’l Conf. on Computer Design, pages 232-238, 2011.
[63] J. Shao and B. T. Davis, “A Burst Scheduling Access Reordering Mechanism,” Int’l Symp. on High Performance Computer Architecture, pages 285-294, 2007.
[64] J. Pang, L. Yang, L. Shi, T. Zhang, D. Wang, and C. Hou, “A Priority-Expression-Based Burst Scheduling of Memory Reordering Access,” Int’l Conf. on Embedded Computer Systems: Architectures, Modeling, and Simulation, pages 203-209, 2008.
[65] X. Xiao and J. J. Lee, “A True O(1) Parallel Deadlock Detection Algorithm for Single-Unit Resource Systems and Its Hardware Implementation,” IEEE Trans. on Parallel and Distributed Systems, 21(1): pages 4-19, January 2010.
[66] Silberschatz, Galvin and Gagen, Operating System Concepts7th Editing.
[67] T. S. Cummins, “Method and Apparatus for Detecting A Bus deadlock in An Electronic System,” United States Patent, US 6,292,910 B1, 2001.
[68] Technical Reference Manual of PrimeCell AXI Configurable Interconnect (PL300), ARM Limited.
[69] Synopsys Design Compiler, http://www.synopsys.com/Tools/Implementation/RTLSynthesis/Pages/default.aspx
[70] W. O. Cesário, D. Lyonnard, G. Nicolescu, Y. Paviot, S. Yoo, A. A. Jerraya, L. Gauthier, and M. Diaz-Nava, “Multiprocessor SoC platforms: a component-based design approach,” IEEE Design & Test of Computers, 19(6): pages 52–63, Nov./Dec. 2002.
[71] T. Bjerregaard and S. Mahadevan, "A survey of research and practices of Network-on-chip," ACM Computing Surveys, 38(1): pages 1-51, 2006.
[72] X. Lin, P. K. McKinley, and L. M. Ni, “Deadlock-free multicast wormhole routing in 2-D mesh multicomputers,” IEEE Trans. on Parallel and Distributed Systems, 5(8): pages 793-804, Aug. 1994.
[73] X. Lin and L.M. Ni, “Multicast communication in multicomputer networks,’’ IEEE Trans. on Parallel and Distributed Systems, 4(10): pages 1105-1117, Oct. 1993.
[74] M. Daneshtalab, M. Ebrahimi, S. Mohammadi, and A. Afzali-Kusha, “Low-Distance Path-Based Multicast Routing Algorithm for Network-on-Chips,” IET Computer & Digital Techniques, 3(5): pages 430-442, 2009.
[75] M. Ebrahimi, M. Daneshtalab, P. Liljeberg, and H. Tenhunen, “HAMUM – A Novel Routing Protocol for Unicast and Multicast Traffic in MPSoCs,” Euromicro Int’l Conf. on Parallel, Distributed and Network-Based Processing, pages: 525-532, 2010.
[76] W. Hu, Z. Lu, A. Jantsch, and H. Liu, “Power-efficient tree-based multicast support for Networks-on-Chip,” Asia and South Pacific Design Automation Conf., pages 363-368, 2011.
[77] N.E. Jerger, L.S. Peh, and M. Lipasti, “Virtual Circuit Tree Multicasting: A Case for On-Chip Hardware Multicast Support,” Int’l Symp. on Computer Architecture, pages 229-240, 2008.
校內:2018-07-30公開