SOPCNIOSII开发流程(精)
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
© 2007 Terasic Corporation
SOPC/NIOS II 開發流程
硬體開發流程
Quartus II
New Project (.qpf)
SOPC Builder
Add Processor
Add Controllers Component Connect Code Generate (.v) Top Design (.v) Pin Assignment (.qsf) Compile (.sof)
元件 以Address 來 定址所要 Access 的元件
10
SOPC/NIOSII 設計與實作課程
© 2007 Terasic Corporation
SOPC Example
11
SOPC/NIOSII 設計與實作課程
© 2007 Terasic Corporation
SOPC Builder 輸出
– HDL Source File – 硬體描述檔(.PTF)
7
SOPC/NIOSII 設計與實作課程
© 2007 Terasic Corporation
SOPC Builder 介面
元件區
系統建構區
8
SOPC/NIOSII 設計與實作課程
© 2007 Terasic Corporation
SOPC 建構流程
3
SOPC/NIOSII 設計與實作課程
© 2007 Terasic Corporation
NIOS II 版本
• 版本
• 軟體相容性
– Binary Code Compatible (No changes required when CPU version is changed.)
4
SOPC/NIOSII 設計與實作課程
14
SOPC/NIOSII 設計與實作課程
© 2007I IDE(2)
• OS:
– None-OS – MicroC/OS2
• Software Component:
– Standard C Library – TCP/IP Stack – Zip Read-Only File System – Host Based File System
main()
Application Code
17
SOPC/NIOSII 設計與實作課程
© 2007 Terasic Corporation
NIOS II IDE C/C++介面
Debug Run 介面切換
Project Management
Editor
outline
Console
18
SOPC/NIOSII 設計與實作課程
• 目的:
– 將完整的電子系統, 整合在一顆FPGA 內 (All in one!)
• 優點:
– 有彈性, 容易修改與擴充系統
2
SOPC/NIOSII 設計與實作課程
© 2007 Terasic Corporation
NIOS II
• • • • • • • • Altera 第二代Processor Soft-Core 32-bit RISC Royalty-Free 支援Altera 全系列FPGA 依速度, 有三種版本可供選擇 支援Instruction/Data Cache 支援JTAG Debug 可自訂指令
• 以 “系統名稱”來命名HDL Top Source File & 硬體描述檔.PTF
• Example:系統名稱 = “DE2_70_SOPC” – Top: DE2_70_SOPC.v – PTF: DE2_70_SOPC.ptf
12
SOPC/NIOSII 設計與實作課程
© 2007 Terasic Corporation
15
SOPC/NIOSII 設計與實作課程
© 2007 Terasic Corporation
NIOS II System
使用者 產生
NIOS II IDE 產生
SOPC 產生
16
SOPC/NIOSII 設計與實作課程
© 2007 Terasic Corporation
NIOS II System Boot Sequence
Connection
系統建構區
Generate
9
SOPC/NIOSII 設計與實作課程
© 2007 Terasic Corporation
SOPC 系統設定
• MM架構(MemoryMapped) • 設定元件: – Name – Clock – Address – IRQ – 之間的連接關係
System Interconnect Fabric
Breakpoint
Console Window
Disassembly Trace
19
– HAL (Hardware Abstraction Layer).功能: 控制硬體的 Software Library – SYSTEM.h: 定義SOPC 內每個元件的name, base address, IRQ number… 等資訊.
• 執行檔的副檔名為.ELF (Executable and Linkable Format)
SOPC/NIOSII 設計與實作課程
© 2007 Terasic Corporation
SOPC/NIOS II 開發流程
• SOPC/NIOS II • 開發流程 • 開發工具
1
SOPC/NIOSII 設計與實作課程
© 2007 Terasic Corporation
SOPC
• 全名:
– System On a Programmable Chip
© 2007 Terasic Corporation
NIOS II IDE Debug 介面
Debug Trace Control Bar Calling Stack Variable/Register Inspect
C-Level Trace F6: Step Over F5: Step Into
1. 從元件區挑選元件, 一一加入系統建構區 2. 於系統建構區設定: 每個元件的Clock, Address, IRQ, 以及元件間的Connection. 3. 按 “Generate” 產生Source Files
Component Name/Description
Address IRQ
元件區
CRT0.S
RESET
Initialise caches, BSS, stack pointer, global pointer
alt_main
Initialize interrupt system and setup call to main
alt_sys_init
Initialize HAL devices
.PTF 硬體描述檔
軟體開發流程
NIOS II IDE
New Project Project Configure Coding (.c/.cpp) Compile/Linker
DE2_70 Board
HAL & system.h Execute Code (.elf)
5
SOPC/NIOSII 設計與實作課程
© 2007 Terasic Corporation
SOPC/NIOS II 開發工具
• SOPC Builder • NIOS II IDE
6
SOPC/NIOSII 設計與實作課程
© 2007 Terasic Corporation
SOPC Builder
• • • • • Quartus 附屬工具之一 用於快速(幾分鐘!)建立SOPC 內建60個以上的IP, 含Processor 圖形操作介面 自動產生SYSTEM code:
NIOS II IDE 介紹
13
SOPC/NIOSII 設計與實作課程
© 2007 Terasic Corporation
NIOS II IDE(1)
• NIOS II Processor 的C/C++整合開發環境 • 包含Editor, Compile/Link, Download, Debug 功 能 • 依硬體描述檔PTF, 自動產生HAL & SYSTEM.h
SOPC/NIOS II 開發流程
硬體開發流程
Quartus II
New Project (.qpf)
SOPC Builder
Add Processor
Add Controllers Component Connect Code Generate (.v) Top Design (.v) Pin Assignment (.qsf) Compile (.sof)
元件 以Address 來 定址所要 Access 的元件
10
SOPC/NIOSII 設計與實作課程
© 2007 Terasic Corporation
SOPC Example
11
SOPC/NIOSII 設計與實作課程
© 2007 Terasic Corporation
SOPC Builder 輸出
– HDL Source File – 硬體描述檔(.PTF)
7
SOPC/NIOSII 設計與實作課程
© 2007 Terasic Corporation
SOPC Builder 介面
元件區
系統建構區
8
SOPC/NIOSII 設計與實作課程
© 2007 Terasic Corporation
SOPC 建構流程
3
SOPC/NIOSII 設計與實作課程
© 2007 Terasic Corporation
NIOS II 版本
• 版本
• 軟體相容性
– Binary Code Compatible (No changes required when CPU version is changed.)
4
SOPC/NIOSII 設計與實作課程
14
SOPC/NIOSII 設計與實作課程
© 2007I IDE(2)
• OS:
– None-OS – MicroC/OS2
• Software Component:
– Standard C Library – TCP/IP Stack – Zip Read-Only File System – Host Based File System
main()
Application Code
17
SOPC/NIOSII 設計與實作課程
© 2007 Terasic Corporation
NIOS II IDE C/C++介面
Debug Run 介面切換
Project Management
Editor
outline
Console
18
SOPC/NIOSII 設計與實作課程
• 目的:
– 將完整的電子系統, 整合在一顆FPGA 內 (All in one!)
• 優點:
– 有彈性, 容易修改與擴充系統
2
SOPC/NIOSII 設計與實作課程
© 2007 Terasic Corporation
NIOS II
• • • • • • • • Altera 第二代Processor Soft-Core 32-bit RISC Royalty-Free 支援Altera 全系列FPGA 依速度, 有三種版本可供選擇 支援Instruction/Data Cache 支援JTAG Debug 可自訂指令
• 以 “系統名稱”來命名HDL Top Source File & 硬體描述檔.PTF
• Example:系統名稱 = “DE2_70_SOPC” – Top: DE2_70_SOPC.v – PTF: DE2_70_SOPC.ptf
12
SOPC/NIOSII 設計與實作課程
© 2007 Terasic Corporation
15
SOPC/NIOSII 設計與實作課程
© 2007 Terasic Corporation
NIOS II System
使用者 產生
NIOS II IDE 產生
SOPC 產生
16
SOPC/NIOSII 設計與實作課程
© 2007 Terasic Corporation
NIOS II System Boot Sequence
Connection
系統建構區
Generate
9
SOPC/NIOSII 設計與實作課程
© 2007 Terasic Corporation
SOPC 系統設定
• MM架構(MemoryMapped) • 設定元件: – Name – Clock – Address – IRQ – 之間的連接關係
System Interconnect Fabric
Breakpoint
Console Window
Disassembly Trace
19
– HAL (Hardware Abstraction Layer).功能: 控制硬體的 Software Library – SYSTEM.h: 定義SOPC 內每個元件的name, base address, IRQ number… 等資訊.
• 執行檔的副檔名為.ELF (Executable and Linkable Format)
SOPC/NIOSII 設計與實作課程
© 2007 Terasic Corporation
SOPC/NIOS II 開發流程
• SOPC/NIOS II • 開發流程 • 開發工具
1
SOPC/NIOSII 設計與實作課程
© 2007 Terasic Corporation
SOPC
• 全名:
– System On a Programmable Chip
© 2007 Terasic Corporation
NIOS II IDE Debug 介面
Debug Trace Control Bar Calling Stack Variable/Register Inspect
C-Level Trace F6: Step Over F5: Step Into
1. 從元件區挑選元件, 一一加入系統建構區 2. 於系統建構區設定: 每個元件的Clock, Address, IRQ, 以及元件間的Connection. 3. 按 “Generate” 產生Source Files
Component Name/Description
Address IRQ
元件區
CRT0.S
RESET
Initialise caches, BSS, stack pointer, global pointer
alt_main
Initialize interrupt system and setup call to main
alt_sys_init
Initialize HAL devices
.PTF 硬體描述檔
軟體開發流程
NIOS II IDE
New Project Project Configure Coding (.c/.cpp) Compile/Linker
DE2_70 Board
HAL & system.h Execute Code (.elf)
5
SOPC/NIOSII 設計與實作課程
© 2007 Terasic Corporation
SOPC/NIOS II 開發工具
• SOPC Builder • NIOS II IDE
6
SOPC/NIOSII 設計與實作課程
© 2007 Terasic Corporation
SOPC Builder
• • • • • Quartus 附屬工具之一 用於快速(幾分鐘!)建立SOPC 內建60個以上的IP, 含Processor 圖形操作介面 自動產生SYSTEM code:
NIOS II IDE 介紹
13
SOPC/NIOSII 設計與實作課程
© 2007 Terasic Corporation
NIOS II IDE(1)
• NIOS II Processor 的C/C++整合開發環境 • 包含Editor, Compile/Link, Download, Debug 功 能 • 依硬體描述檔PTF, 自動產生HAL & SYSTEM.h