簡易檢索 / 詳目顯示

研究生: 吳昱廷
Wu, Yu-Ting
論文名稱: 直接對映式轉譯查詢緩衝器之軟體測試方法
A Software-Based Direct-Mapped TLB Test Methodology
指導教授: 陳中和
Chen, Chung-Ho
學位類別: 碩士
Master
系所名稱: 電機資訊學院 - 電腦與通信工程研究所
Institute of Computer & Communication Engineering
論文出版年: 2008
畢業學年度: 96
語文別: 中文
論文頁數: 52
中文關鍵詞: 軟體測試轉譯查詢緩衝器
外文關鍵詞: Test, Software-based, TLB
相關次數: 點閱:72下載:2
分享至:
查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報
  • 現今的處理器通常會使用虛擬記憶體以獲得更大的記憶體容量及讓程式共享記憶體。為了減少存取主記憶體的次數,處理器的記憶體系統會整合轉譯查詢緩衝器(TLB)以增進位址轉譯的效能。在測試這些記憶體系統,傳統上會使用內建式自我測試或是掃描鏈等可測試設計技術。然而,這些在電路中額外增加的測試電路將會影響TLB本身的效能,也會增加電路的面積負擔。因此,一種無傷害的測試方式可解決TLB的測試問題,稱為軟體測試方法。這種方法使用處理器本身的資源來測試TLB,因而不需要增加任何的測試電路或修改處理器的設計即可達到良好的測試效果。

    本論文中,我們針對一個相容於ARM的32位元處理器中的直接對映式TLB提出一個軟體測試方法。此處理器採用哈佛架構,因此會分成DTLB和ITLB。在TLB的記憶體元件,我們轉換用於Memory BIST的March演算法為指令的形式來測試,可完整測到DTLB常見的記憶體錯誤。在測試TLB的邏輯元件部分,我們針對TLB的暫存器轉移階層(RTL)描述來分類元件,並且根據各元件的架構特性來發展測試程式。我們所提出的測試方案在DTLB的邏輯部分可達到97.29%的錯誤涵蓋率,ITLB的邏輯部分可達到97.88%的錯誤涵蓋率。

    Modern processors usually use virtual memory technique. This scheme allows programs to own memory space larger than the physical memory, and lets processes share files and address space easily. In order to reduce the number of accesses to the main memory, the memory system of a processor usually integrates a translation look-aside buffer (TLB) to improve performance of address translation. Conventionally design-for-testability (DFT) techniques, such as scan chain and built-in self-test (BIST) mechanisms, are used for testing the TLB. However, the insertion of test circuits could cause performance degradation and area overhead. Hence, a software-based test methodology which uses processor resources to test the TLB can be used for high performance consideration. In this thesis, we propose a software-based test methodology for the direct-mapped TLB of an ARM-based processor. We translate March algorithm into executable instructions to test the memory part of the TLB. For the logic part of the TLB, we consider the register transfer level description of the components to develop the test programs. Based on the developed test programs, the logic part of the DTLB can achieve 97.29% fault coverage and the logic part of the ITLB can achieve 97.88% fault coverage while the memory part of the DTLB can achieve 100% fault coverage.

    Chapter 1 序論 1 1.1 研究動機 1 1.2 論文概要 1 1.3 內容編排 3 Chapter 2 背景知識與相關研究 4 2.1 背景知識 4 2.1.1 虛擬記憶體 4 2.1.2 直接對映式轉譯查詢緩衝器 6 2.1.3 記憶體錯誤模型 7 2.1.4 March演算法 9 2.2 相關研究 10 Chapter 3 所提出的軟體測試方案 14 3.1 轉譯查詢緩衝器的測試概念 14 3.2 元件分類 16 3.3 測試程式的發展流程 17 Chapter 4 記憶體元件的軟體測試方法 20 4.1 標籤記憶體(Tag Memory)的測試方法 20 4.2 資料記憶體(Value Memory)的測試方法 23 4.2.1 PPN欄位的測試 24 4.2.2 T欄位的測試 27 4.2.3 Domain欄位的測試 29 4.2.4 AP欄位的測試 32 4.2.5 C欄位的測試 33 4.2.6 B欄位的測試 36 Chapter 5 邏輯元件的軟體測試方法 39 5.1 有效單元(Valid Unit)的測試方法 39 5.2 標籤比較器(Tag Comparator)的測試方法 41 5.3 轉譯查詢緩衝器控制器(TLB Controller)的測試方法 42 Chapter 6 實驗結果與分析 43 6.1 錯誤模擬(Fault Simulation)的流程 43 6.2 個案研究:ARM相容處理器的TLB 45 6.2.1 記憶體元件的測試結果 45 6.2.2 邏輯元件的測試結果 46 Chapter 7 結論與未來展望 49 7.1 結論 49 7.2 未來展望 49 參考文獻 51

    [1] S. Kornauck, L. McNaughton, R. Gibbins, and B. N.-Dostie, “A High Speed Embedded Cache Design with Non-intrusive BIST,” in Proc. Int’l Workshop on Memory Technology, Design, and Testing, pp. 40-45, 1994.
    [2] C.-H. Chen, C.-K. Wei, T.-H Lau, and H.-W. Gao, “Software-Based Self-Testing With Multiple-Level Abstractions for Soft Processor Cores,” IEEE Trans. VLSI Vol. 15, No. 5, pp. 505-517, 2007.
    [3] H.-W. Kao, “Embedded Processor Verification using Particular Characteristics of Linux Operating System,” M.S. thesis, National Cheng Kung University, 2006.
    [4] C.-W. Yen, “A Software-Based Test Methodology for Direct-Mapped Data Cache,” M.S. thesis, National Cheng Kung University, 2007.
    [5] D. A. Patterson and J. L. Hennessy, “Computer Organization and Design: The Hardware/Software Interface,” Morgan Kaufmann, 2004.
    [6] ARM Architecture Reference Manual, http://www.arm.com/
    [7] ARM922T Technical Reference Manual, http://www.arm.com/
    [8] R. Dekker, F. Beenker, and L. Thijssen, “A Realistic Fault Model and Test Algorithms for Static Random Access Memories,” IEEE Trans. Computer, Vol. 9, No. 6, pp. 567-572, June 1990.
    [9] A. J. van de Goor, “Using march tests to test SRAMs,” IEEE Design & Test of Computers, Vol. 10, pp. 8-14, Mar. 1993.
    [10] A. J. van de Goor, “Testing Semiconductor Memories: Theory and Practice,” Wiley Publisher, 1991.
    [11] A. J. Van de Goor and Th. J. W. Verhallen, “Functional Testing of Current Microprocessor (applied to the Intel i860TM),” In Proceedings of the IEEE International Test Conference on Discover the New World of Test and Design, pp.684-695, 1992.
    [12] J. Sosnowski, “In System Testing of Cache Memories,” In Proceedings of the IEEE International Test Conference (Oct. 1995), pp.384-393, 1995.
    [13] S. M. Al-Harbi and S. K. Gupta, “A Methodology for Transforming Memory Tests for In-System Testing of Direct-Mapped Cache Tags,” In Proceedings of the 16th IEEE VLSI Test Symposium, 1998.
    [14] H.-M. Hsu, “Software-Based Test Methodology for Fully Associative Data Cache,” M.S. thesis, National Cheng Kung University, 2006.
    [15] S. R. Makar and R. J. McCluskey, “On the Testing of Multiplexer,” in Proc. Int’l Test Conf., pp. 669-679, 1988.
    [16] Cadence Inc., http://www.cadence.com/
    [17] RAMSES, Memory Failure Analysis Framework, https://larc.ee.nthu.edu.tw/~cthuang/proj/MTIF/memfis/
    [18] Synopsys Inc., http://www.synopsys.com/
    [19] TurboFault, Syntest Corp., http://www.syntest.com.tw/

    下載圖示 校內:2009-02-15公開
    校外:2009-02-15公開
    QR CODE