簡易檢索 / 詳目顯示

研究生: 林瑛萍
論文名稱: CPU 設計與教學之FPGA 硬體平台製作—以MIPS 為例
FPGA Platform for CPU Design and Educational Training Using MIPS
指導教授: 張吉正
Chang, Chi-Jeng
黃奇武
Huang, Chi-Wu
學位類別: 碩士
Master
系所名稱: 工業教育學系
Department of Industrial Education
論文出版年: 2005
畢業學年度: 93
語文別: 中文
論文頁數: 131
中文關鍵詞: FPGAVHDL中央處理器(CPU)設計MIPS
論文種類: 學術論文
相關次數: 點閱:422下載:149
分享至:
查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報
  • 本研究用VHDL硬體描述語言,做精簡指令集MIPS CPU設計為主體,
    經模擬(Simulation)完成之CPU電路下載至FPGA(Field Programmable Gate
    Array),加入I/O介面控制電路設計,再與I/O電路實體連接,以完成整體設
    計架構,並發展部分實作教材,可供教師在計算機組織與設計相關科目之
    教學參考。CPU與I/O介面控制電路之設計與規劃,是計算機組織與設計課
    程之重點。
    目前相關之“計算機組織與設計”教科書僅止於對設計概念與控制流程
    作介紹,本研究進一步將其設計理念與流程控制作成電路,且在FPGA之
    實驗平台作驗證,讓CPU設計從構想、設計至實際電路製作能一氣呵成。
    學生藉由這些相關單元的學習,不僅能了解CPU內部架構與資料流向和控
    制,且能結合外部相關硬體電路的模組設計,充實本身對計算機硬體設計
    之知能。
    VHDL為業界經常使用於電路設計之工具軟體,MIPS CPU亦是業界主
    流的microcontroller之一,讓學生及早並熟悉這些工具來設計實用的CPU,
    將更進一步縮短教育界與產業界之技術差距。
    本研究除此上述目標之外,參考相關學術文獻、技術文件,發展教學
    及部分實作教材,並設計符合研究所需之FPGA實驗平台,以幫助設計成
    品之驗證與實作需要。期能以由淺入深的教學與實作歷程,提供教師在相
    關計算機組織與設計教學的參考。

    This research used VHDL to design a MIPS-like CPU and the related I/O
    interface as well as device driver circuits. They were downloaded to a FPGA
    platform for various function verifications. Most textbooks about “computer
    architecture and design” are concerned with the instruction to the design
    concepts and design flows, no practical circuit design and implementation are
    involved, partially due to their large complicated circuitries. This research
    offers such practical design and circuit implementation to make the design
    concepts from textbooks become some realized products.
    VHDL is a popular hardware design tool used in industries. MIPS CPU is
    also a microcontroller extensively used for many applications in industries.
    Students use popular design tool to design a practical CPU in industries would
    truly decrease the technical gaps between schools and industries.
    The VHDL circuit design procedure, synthesis, and FPGA chip
    implementations were listed in the appendixes. The FPGA hardware circuit
    board design and I/O device interface were also described steps by steps. They
    might be offered as some references for teaching the course concerning
    “computer architecture and design”.

    謝誌....................................................................................................................I 中文摘要............................................................................................................ II ABSTRACT...................................................................................................... III 目錄...............................................................................................................IV 圖目錄...............................................................................................................VI 表目錄...............................................................................................................IX 第一章緒論....................................................................................................... 1 第一節研究背景與動機.............................................................................. 1 第二節研究目的與問題.............................................................................. 5 第三節研究方法與步驟.............................................................................. 7 第四節研究範圍與限制.............................................................................. 9 第五節名詞解釋........................................................................................ 10 第二章文獻探討............................................................................................. 13 第一節大專院校電機電子群專業能力分析探討.................................... 13 第二節HDL 硬體描述語言....................................................................... 14 第三節計算機組織與設計教學相關文獻................................................ 17 第三章MIPS CPU 規劃設計.......................................................................... 25 第一節MIPS CPU 相關知識..................................................................... 25 第二節MIPS CPU 模組規劃..................................................................... 30 第四章MIPS CPU 模組設計.......................................................................... 35 第一節資料路徑........................................................................................ 35 第二節控制單元........................................................................................ 40 第五章I/O 介面控制模組規劃與設計........................................................... 45 第一節輸入單元模組................................................................................ 45 第二節輸出單元模組................................................................................ 47 第六章實驗平台規劃及系統測試................................................................. 51 第一節實驗平台規劃................................................................................ 51 第二節系統測試........................................................................................ 52 第七章結論與建議......................................................................................... 57 第一節結論................................................................................................ 57 第二節建議................................................................................................ 57 參考文獻........................................................................................................... 59 附錄A MIPS CPU 指令集格式.................................................................... 63 附錄B MIPS CPU 設計及I/O 控制之教學與實作範例教材................... 65 附錄C FPGA 實驗平台實體圖.................................................................. 121

    [1] A. A. Sagahyroon, “From AHPL to VHDL: a course in hardware
    description languages,” Education, IEEE Transactions on ,Volume:
    43 , Issue: 4 , Nov. 2000. Pages:449 – 454.
    [2] B. Box, “Field programmable gate array based reconfigurable
    preprocessor,” Aerospace and Electronics Conference, Proceedings of
    the IEEE 1994 National, 23-27 May 1994, vol.1, pp 427-434.
    [3] B. L. Hutchings, “ASICs, processors, and configurable computing,”
    System Sciences, 1997, Proceedings of the Thirtieth Hawaii International
    Conference on , Volume: 1 , 7-10 Jan. 1997, vol.1, pp 719.
    [4] Chi-Jeng Chang, C-Y Huang, H-C Su, Z-Y Huang, Y-P Lin , “FPGA
    Application in Computer Design by Using Group Instruction Driven
    Approach for Educational Training,” 1st North-East Asia International
    Conference on Engineering and Technology Education, November 10,
    2003. pp.73-76.
    [5] C. G. Harrison, P. L. Jones, “Experiences with FPGA teaching,” The
    Teaching of Digital Systems (Digest No. 1998/409), IEE Colloquium on ,
    18 May 1998, pp 3/1-3/4.
    [6] D. D. Lee, S. I. Kong, M. D. Hill, G. S. Taylor, D. A. Hodges, R. H. Katz,
    D. A. Patterson, “A VLSI chip set for a multiprocessor workstation. I. An
    RISC microprocessor with coprocessor interface and support for
    symbolic processing,” Solid-State Circuits, IEEE Journal of , Volume:
    24 , Issue: 6 , Dec. 1989. Pages:1688 – 1698.
    [7] D. M. Perkins, P. C. M. Burton, “Teaching ASIC design with FPGAs,”
    ASIC Conference and Exhibit, 1992., Proceedings of Fifth Annual IEEE
    International , 21-25 Sept. 1992. pp 271-274.
    [8] Dr. Michael G. Wahl, “Computer Architecture CS 3339,”
    http://iseran.rs.uni-siegen.de/cs_3339/index_ca.html
    [9] D. W. Bouldin, “Experiences teaching synthesis of FPGAs and testable
    ASICS,” Microelectronic Systems Education, 1997. MSE '97.Proceedings., 1997 IEEE International Conference on , 21-23 pp 85-86.
    [10] G. Walters, E. King, R. Kessinger, R. Fryer, “Processor design and
    implementation for real-time testing of embedded systems,” Digital
    Avionics Systems Conference, 1998. Proceedings, 17th DASC. The
    AIAA/IEEE/SAE , Volume: 1 , 31 Oct.-7 Nov. 1998, vol.1, pp B44/1
    -B44/8.
    [11] H. Ochi, “ASAver.1: an FPGA-based education board for computer
    architecture/system design,” Design Automation Conference 1997.
    Proceedings of the ASP-DAC '97. Asia and South Pacific, 28-31 Jan.
    1997, pp 157-165.
    [12] I.Tomek, “The Foundations of Computer Architecture and Organization,”
    Rockville, MD: Computer Science, 1990.
    [13] J. D. Luker, V. B. Prasad, “RISC system design in an FPGA,” Circuits
    and Systems, 2001. MWSCAS 2001. Proceedings of the 44th IEEE 2001
    Midwest Symposium on , Volume: 2 , 14-17 Aug. 2001, vol.2, pp
    532-536.
    [14] J. H. Novak, E. Brunvand, “Using FPGAs to prototype a self-timed
    floating point co-processor,” Custom Integrated Circuits Conference,
    Proceedings of the IEEE 1994 , 1-4 May 1994, pp 85-88.
    [15] J. Smith. Douglas, “HDL Chip Design,” HDL Modeling Capability p.10,
    picture 1.5 :Doone Publications. Madison, AL, USA, 1996.
    [16] Li. Yamin, Chu. Wanming, “Aizup-a pipelined processor design and
    implementation on XILINX FPGA chip,” FPGAs for Custom Computing
    Machines, 1996. Proceedings. IEEE Symposium on , 17-19 April 1996,
    pp 98-106.
    [17] Mark Hooland, “Harnessing FPGAs for Computer Architecture
    Education,” Master of Science In Electrical Engineering, University of
    Washington, 2002.
    [18] M. Morris Mano , Charles R. Kime, “Logic and Computer Design
    Fundamentals (2nd Edition),” New Jersey:Prentice Hall International,
    Inc., 2000.
    [19] M. Pearson, D. Armstrong, T. McGregor, “Design of a processor to
    support the teaching of computer systems,” Electronic Design, Test and
    Applications, 2002. Proceedings. The First IEEE International Workshop
    on , 29-31 Jan. 2002, pp 240-244.
    [20] N. L. V. Calazans, F. G. Moraes, “Integrating the teaching of computer
    organization and architecture with digital hardware design early in
    undergraduate courses,” Education, IEEE Transactions on , Volume:
    44 , Issue: 2 , May 2001. Pages:109 – 119.
    [21] R. B. Brown, R. J. Lomax, G. Carichner, A. J. Drake, “A Microprocessor
    Design Project in an Introductory VLSI Course,” Education, IEEE
    Transactions on , Volume: 43 , Issue: 3 , Aug. 2000 .Pages:353 – 361.
    [22] R. D. Wittig, P. Chow, “One Chip: an FPGA processor with
    reconfigurable logic,” FPGAs for Custom Computing Machines, 1996.
    Proceedings. IEEE Symposium on , 17-19 April 1996, pp 126-135.
    [23] S. Palnitlear, “Verilog HDL,” Englewood Cliffs, NJ: Prentice-Hall, 1996.
    [24] W. D. Richard, D. E. M. Taylor, D. M. Zar, “A capstone computer
    engineering design course,” Education, IEEE Transactions on , Volume:
    42 , Issue: 4 , Nov. 1999. Pages:288 – 294.
    [25] XAPP173(V1.1) “Using Block SelectRAM+ Memory in Spartan-Ⅱ
    FPGAs,” http://direct.xilinx.com/bvdocs/appnotes/xapp173.pdf
    [26] XAPP258(V1.3) “FIFOs Using Vertex-Ⅱ Block RAM,”
    http://direct.xilinx.com/bvdocs/appnotes/xapp258.pdf
    [27] XAPP464(V1.0) “Using Look-Up Tables as Distributed RAM in
    Spartan-3 FPGAs,”
    http://direct.xilinx.com/bvdocs/appnotes/xapp464.pdf
    [28] Xilinx Inc., “Homepage,” http://www.xilinx.com/.
    [29] Y. Nakamura, K. Hiraki, “Highly fault-tolerant FPGA processor by
    degrading strategy,” Dependable Computing, 2002. Proceedings. 2002
    Pacific Rim International Symposium on , 16-18 Dec. 2002, pp 75-78.
    [30] Yu-Tsang Chang, Yu-Te Chou, Wei-Chang Tsai, Jiann-Jenn Wang,
    Chen-Yi Lee, “FPGA education and research activities in Taiwan,”Field-Programmable Technology, 2002. (FPT). Proceedings. 2002 IEEE
    International Conference on , 16-18 Dec. 2002. Pages:445 – 448.
    [31] 李中天,“以改良式3x3 遮罩為基礎的二值影像細線化之FPGA 設計
    與製作”,台灣師範大學工業教育所碩士論文,1995。
    [32] 林容益,“CPU/SOC 及周邊設計發展實作”,全華圖書公司,2003。
    [33] 林福璋,“以CPLD 為主之高工職校數位邏輯實習教材發展與設備設
    計之研究”,台灣師範大學工業教育所碩士論文,2001。
    [34] 林傳生,“使用VHDL 電路設計語言之數位電路設計”,儒林圖書公
    司,2000。
    [35] 張吉正、林建成,“FPGA 邏輯設計實驗”,宏友圖書公司,2001。
    [36] 黃文吉,“VHDL 基本程式寫作及應用”。儒林圖書公司,2002。
    [37] 鄭信源,“VHDL 數位電路設計—基礎篇”。儒林圖書公司,2003。
    [38] 鄭信源,“VHDL 數位電路設計—進階篇”。儒林圖書公司,2003。
    [39] 劉世勳,“技職教育電機電子群專業能力之銜接規劃研究”。台灣師範
    大學工業教育所博士論文,2002。
    [40] Dave Van Den Bout,國立交通大學資訊科學研究所超大型積體電路
    實驗室編譯。“Xilinx FPGA/CPLD 數位邏輯設計實習The Practical
    Xilinx Designer Lab Book”,全華圖書公司,1998。
    [41] David A. Patterson & John L. Hennessy,曾志光、鄭光近譯,“計算機
    組織與設計軟硬體介面”,碁峰資訊,2000。
    [42] Frank Vahid ,& Tony Givargis,王煌城譯, “嵌入式系統設計”。全華
    圖書公司,2003。
    [43] M. Morris Mano ,& Charles R. Kime,江昌皚、范丙林譯,“邏輯與計
    算機設計”,東華書局,2000。
    [44] Tom Riordan, “64 位元MIPS 處理器的起源與發跡:嵌入元件之探
    討”,http://www.mips.com.tw/whitepapers/genesis.pdf

    QR CODE