以 NIOS 為基礎的 SOPC 設計與實作

周博、邱衛東、陳燕、周學功、方茁

  • 出版商: 全華
  • 出版日期: 2005-11-29
  • 定價: $480
  • 售價: 9.0$432
  • 語言: 繁體中文
  • ISBN: 9572150464
  • ISBN-13: 9789572150467
  • 相關分類: Apple Developer

立即出貨 (庫存 < 4)

買這商品的人也買了...

商品描述

本書特色

SOPC(可程式單晶片系統)是以PLD取代ASIC,更加靈活、高效率的SOC解決方案。SOPC代表一種新的系統設計技術,也是一種初級的軟硬體協同設計技術。本書由淺入深地闡述Nios軟核處理器的CPU結構、匯流排傳輸模式以及相關週邊裝置。內容包括:SOPCBuilder開發環境、NIOSCPU結構、Avalon匯流排規範、軟體設計流程和方法、週邊裝置的組織與使用、中斷處理、除錯手段、高級特性及新版NIOSⅡ的特點等。適用從事硬體設計和系統開發的工程技術人員。

 

本書內容


第1章 緒 論
1.1    概 述 1-1
1.2    本書內容安排 1-5
1.3    設計步驟 1-6
1.4    支援NIOSCPU的FPGA型號 1-8

第2章 SOPCBuilder開發環境
2.1    建立QuartusⅡ專案 2-1
2.2    建立NIOS系統模組 2-5
2.2.1    建立新的.bdf 2-5
2.2.2    開始使用SOPCBuilder 2-7
2.2.3    系統主頻 2-8
2.2.4    加入CPU和IP模組 2-8
2.2.5    指定基底位址 2-21
2.2.6    配置NIOS系統 2-22
2.2.7    產生NIOS32並把它加入到設計中 2-24
2.2.8    把符號(symbol)加入到BDF檔案中 2-26
2.2.9    加入接腳和基本單元 2-26
2.2.10    命名接腳 2-29
2.2.11    進行最後連接 2-30
2.3    編譯(Compilation) 2-30
2.3.1    建立編譯器設置 2-31
2.3.2    指定元件系列(DeviceFamily)與型號 2-32
2.3.3    為元件接腳分配信號 2-34
2.3.4    確認接腳分配 2-34
2.3.5    指定設備與程式燒錄設置 2-35
2.3.6    指定配置檔類型 2-36
2.3.7    編譯使用者設計 2-36
2.4    程式燒錄(Programming) 2-39
2.4.1    配置FPGA 2-39
2.4.2    在NIOS系統上執行軟體 2-41

第3章 NIOSCPU結構
3.1  建立QuartusⅡ工程 3-1
3.1.1    指令匯流排主埠 3-3
3.1.2    資料匯流排主埠 3-3
3.1.3    緩存 3-4
3.1.4    移位元單元 3-4
3.1.5    乘法支援 3-5
3.1.6    中斷支援 3-6
3.1.7    NIOS片上除錯模組 3-6
3.1.8    開發環境 3-6
3.2    內部暫存器 3-7
3.2.1    通用暫存器檔 3-7
3.2.2    K暫存器 3-9
3.2.3    %r0(%g0)暫存器 3-9
3.2.4    程式計數器 3-9
3.2.5    控制暫存器 3-9
3.3    流水線 3-15
3.4    記憶體組織 3-17
3.5    定址方式 3-23
3.6    程式流程控制 6-27

第4章 Avalon匯流排規範
4.1 概 述 4-1
4.2    術語和概念 4-3
4.3    Avalon匯流排傳輸 4-8
4.3.1    主埠介面與從埠介面 4-9
4.3.2    Avalon匯流排時序 4-9
4.3.3    Avalon匯流排信號 4-10
4.3.4    並行多主埠的Avalon匯流排需考慮的事項 4-12
4.4    Avalon從埠傳輸 4-12
4.4.1    從傳輸的Avalon匯流排信號 4-13
4.4.2    Avalon匯流排上的從埠讀傳輸 4-14
4.4.3    在Avalon匯流排上的從埠寫傳輸 4-22
4.5    Avalon主埠傳輸 4-29
4.5.1    主傳輸的Avalon信號 4-29
4.5.2    Avalon匯流排上的基本主埠讀傳輸 4-31
4.5.3    Avalon匯流排上的基本主埠寫傳輸 4-33
4.6    高級Avalon匯流排傳輸 4-36
4.6.1    帶延遲的Avalon讀傳輸 4-36
4.6.2    流傳輸模式 4-46
4.6.3    Avalon匯流排控制信號 4-55
4.7    片外設備與Avalon匯流排的介面 4-58
4.7.1    從傳輸的Avalon三態信號 4-58
4.7.2    無延遲的Avalon三態從埠讀傳輸 4-60
4.7.3    帶固定延遲的Avalon三態從埠讀傳輸 4-62
4.7.4    Avalon三態從埠寫傳輸 4-65
4.8    Avalon匯流排位址對齊方式 4-67
4.8.1    地址對齊概述 4-67
4.8.2    為Avalon週邊裝置選擇位址對齊參數 4-68
4.8.3    靜態位址對齊 4-69
4.8.4    動態位址對齊 4-74
4.9    連接到外部設備 4-78

第5章 軟體設計流程和方法
5.1 軟體發展套件 5-1
5.1.1 軟體發展流程 5-2
5.1.2 SDK樹目錄簡介 5-4
5.1.4 NIOS庫函數 5-10
5.1.5 高階C語言支援 5-15
5.2 軟體發展常用命令 5-15
5.2.1 hexout2flash 5-17
5.2.2 nios_build 5-17
5.2.3 nios-console 5-19
5.2.4 nios-convert 5-20
5.2.5 nios-debug 5-21
5.2.6 nios-run 5-22
5.2.7 srec2flash 5-23

第6章 週邊裝置的組織與使用
6.1 SOPCBuilder與PTF檔 6-1
6.1.1 SOPCBuilder組成 6-1
6.1.2 PTF檔的兩種類型 6-3
6.1.3 SOPCBuilder設計流程 6-8
6.2 SOPCBuilder的週邊裝置 6-18
6.2.1 計時器 6-19
6.2.2 並列輸入輸出模組 6-25
6.2.3 非同步收發器(UART) 6-29
6.2.4 DMA控制器 6-42

第7章 中斷處理
7.1 中斷處理過程 7-1
7.1.1 異常處理的基礎知識 7-1
7.1.2 NIOS中斷處理基礎 7-2
7.1.3 NIOS中斷處理步驟 7-7
7.2 中斷處理的例子:UART收發程式 7-10
7.2.1 在NIOS系統中實作ISR 7-10
7.2.2 串列埠通信基礎 7-12
7.2.3 實作NIOSUARTISR 7-13
7.2.4 範例程式 7-16

第8章 除錯手段
8.1 GERMS監控程式 8-1
8.1.1 監控程式命令 8-2
8.1.2 GERMS引導過程 8-3
8.1.3 採用GERMS從快閃記憶體中引導系統 8-3
8.2 FS2公司的SystemAnalyzer 8-8
8.2.1 簡介 8-8
8.2.2 設置除錯器 8-10
8.2.3 使用除錯器 8-14
8.2.4 除錯命令列表 8-23
8.2.5 OCI除錯模組相關軟體副程式 8-33

第9章 高級特性
9.1 使用者自定義指令 9-1
9.1.1    使用者自定義指令的概念 9-2
9.1.2 硬體介面 9-2
9.1.3 軟體介面 9-8
9.1.4 加速效果 9-10
9.1.5 使用者自定義指令實例 9-11
9.2 並行多主設備匯流排結構 9-18
9.2.1 傳統匯流排結構 9-18
9.2.2 並行多主設備匯流排結構 9-19
9.3 NIOS嵌入式處理器設計的模擬 9-26
9.3.1 軟體配置 9-26
9.3.2 模擬設置 9-27
9.3.3 使用ModelSim進行模擬 9-34
9.3.4 分析模擬結果 9-37
9.3.5 增加或刪除波形圖信號 9-46
9.3.6 片外記憶體模擬 9-48

第10章 新版NIOSⅡ的特點
10.1 簡 介 10-1
10.2 處理器的實作 10-2
10.3 暫存器檔 10-3
10.4 算術邏輯單元 10-3
10.4.1 未實作的指令 10-4
10.4.2 使用者自定義指令 10-4
10.5 異常和中斷的控制 10-4
10.5.1 異常控制器 10-4
10.5.2 整合的中斷控制器 10-5
10.6 記憶體與I/O組織 10-5
10.6.1 指令和資料匯流排 10-6
10.6.2 緩存 10-8
10.6.3 位址映射 10-9
10.7 硬體輔助除錯模組 10-9

附錄A 組合語言指令及虛擬指令參考
符號說明 A-1
32位元指令集 A-2
IFS和SKPS指令的條件程式 A-7
組合語言虛擬指令與巨集 A-8

附錄B Altera2003年NIOS嵌入式軟核心處理器設計大賽獲獎單位
一、中國大陸部分 B-1
二、臺灣地區 B-49