1 / 38

Nios2 小系统 —— 实验一 . 搭建 Nios2 小系统

Nios2 小系统 —— 实验一 . 搭建 Nios2 小系统. 华中科技大学启明学院电工电子科技创新中心 王贞炎. 实验内容. 实验名称 SOPC Builder 和 Nios2 处理器小系统的搭建 预备 知识 Quartus II 软件使用,单片机 / 微机原理 实验 目的 了解 SOPC 系统的一般结构,学会使用 SOPC Builder 软件搭建 Nios2 处理器小系统 实验 内容及 方法 学习 SOPC 系统和 Nios2 处理器的基础知识,学习 SOPC Builder 的使用 ;

Download Presentation

Nios2 小系统 —— 实验一 . 搭建 Nios2 小系统

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Nios2小系统——实验一. 搭建Nios2小系统 华中科技大学启明学院电工电子科技创新中心 王贞炎

  2. 实验内容 • 实验名称 • SOPC Builder和Nios2处理器小系统的搭建 • 预备知识 • QuartusII软件使用,单片机/微机原理 • 实验目的 • 了解SOPC系统的一般结构,学会使用SOPC Builder软件搭建Nios2处理器小系统 • 实验内容及方法 • 学习SOPC系统和Nios2处理器的基础知识,学习SOPC Builder的使用; • 使用SOPC Builder创建一个Nios2处理器小系统,包含处理器、调试器、存储系统和输入输出接口。

  3. 讲解内容 • SOPC和Nios2介绍 • SOPC系统(Nios2处理器系统)设计 • Nios2处理器(含JTAG调试接口) • System ID • JTAG-UART • 易失性存储器 • 非易失性存储器 • PIO • 在Quartus工程中使用Nios2处理器系统

  4. SOPC和Nios2介绍 • SOPC • System On Programmable Chip • 使用Quartus中的SOPC Builder工具设计 • SOPC系统里一般需要包含Nios2核——Nios2处理器系统 • Nios2处理器 • 软核(用户可配置)处理器 • 使用Nios2 SBT(Software Builder Tools)工具开发软件 • 命令行编译、链接、调试工具 • Eclipse for Nios2集成开发环境

  5. Flash CPU CPU I/O I/O I/O I/O I/O I/O SDRAM DSP DSP FPGA FPGA SOPC和Nios2 • SOPC的优点 用可编程逻辑器件代替外部设备

  6. Nios II CPU UART Cache GPIO Debug Avalon Switch Fabric On-Chip ROM Timer SPI On-Chip RAM SDRAM Controller FPGA SOPC和Nios2介绍 • Nios2处理器系统 • Nios2处理器核 • 片上设备(SOPC组件) • PIO、UART、SPI、Timer…… • 片上存储器(SOPC组件) • RAM • 片外存储器控制器(SOPC组件) • SDRAM控制器、DDR SDRAM控制器、CFI控制器、EPCS控制器…… • 片外存储器 • SRAM、SDRAM、DDR SDRAM、NorFlash、EPCS……

  7. UART 0 Timer 0 SPI 0 GPIO 0 DMA 0 MemoryInterface User-Defined SOPC和Nios2介绍 • 典型Nios2系统结构 Instr. On-Chip Debug Core Nios II CPU AddressDecoder Avalon Master/ Slave PortInterfaces Data InterruptController Wait StateGeneration Data inMultiplexer Off-Chip Software Trace Memory Master Arbitration Clock Domain Crossing DynamicBus Sizing Avalon Switch Fabric

  8. SOPC系统设计 • 设计流程

  9. SOPC系统设计 • 设计流程 • 使用Quartus软件建立FPGA工程 • 注意必要的设置,并添加时序约束文件 • 使用SOPC Builder工具设计SOPC系统 • 在FPGA工程中调用SOPC系统 • 在FPGA工程中编写其它逻辑 • 编译工程

  10. SOPC系统设计 • 启动SOPC Builder,为新建的SOPC系统命名

  11. SOPC系统设计 • 更改系统时钟频率,例如:66.666667MHz

  12. SOPC系统设计 • 添加Nios2处理器核 • Core Nios II 页

  13. SOPC系统设计 • 添加Nios2处理器核 • Cache and Memory Interfaces页保持默认 • Advanced Features页保持默认 • MMU and MPU Settings页保持默认

  14. SOPC系统设计 • 添加Nios2处理器核 • JTAG Debug Module 页

  15. SOPC系统设计 • 添加Nios2处理器核 • Custom Instructions 页保持默认

  16. SOPC系统设计 • 添加Nios2处理器核

  17. SOPC系统设计 • 添加System ID(用于软硬件同步)

  18. SOPC系统设计 • 添加System ID(用于软硬件同步)

  19. SOPC系统设计 • 添加JTAG UART(在JTAG调试接口上虚拟的串口)

  20. SOPC系统设计 • 添加SDRAM控制器

  21. SOPC系统设计 • 添加SDRAM控制器

  22. SOPC系统设计 • 添加EPCS控制器

  23. SOPC系统设计 • 添加PIO

  24. SOPC系统设计 • 添加完外设的Nios2系统

  25. SOPC系统设计 • 更改Nios2核的复位地址和异常地址 • 复位地址:启动或复位时处理器取指的初始地址,应设置到非易失性存储器 • 异常地址:系统异常向量表的初始地址,应设置到易失性存储器

  26. SOPC系统设计 • Nios2处理器系统与51单片机的存储空间区别 • 程序运行空间 • 51单片机的程序运行空间位于Flash存储器 • Nios2处理器运行速度快,取指和取数据速度快,一般的Flash不能满足其需求,因此需要像SRAM或SDRAM这样的速度较快的存储器作为程序运行空间 • Nios2处理器的异常向量位于程序运行空间的前端,因此指定异常向量的地址就是指定了程序运行空间 • 程序存储空间 • Nios2处理器采用SRAM或SDRAM作为程序运行空间,但是SRAM和SDRAM都是易失性的,因此还需要像Flash这样的非易失性存储器存储程序。上电复位时,Nios2处理器先将程序从存储空间复制到运行空间,然后再从运行空间中运行 • 地址空间 • 51单片机有诸如sfr、data、idata、xdata、code等存储空间,各存储空间独立编址 • Nios2处理器所有的存储器和外设的控制寄存器全部统一编址到2GB的空间

  27. SOPC系统设计 • 自动分配外设基地址(System - Auto-Assign Base Addresses)

  28. SOPC系统设计 • 生成SOPC系统

  29. 使用SOPC系统 • 添加新生成的SOPC模块

  30. 使用SOPC系统 • 为SDRAM的时钟添加PLL

  31. 使用SOPC系统 • 设置锁相环

  32. 使用SOPC系统 • 设置锁相环

  33. 使用SOPC系统 • 设置锁相环

  34. 使用SOPC系统 • 设置锁相环

  35. 使用SOPC系统 • 设置锁相环

  36. 使用SOPC系统 • 连接好的系统 • 注意添加引脚 • 注意复位按键和FPGA内部复位信号的连接

  37. 使用SOPC系统 • 采用tcl脚本分配引脚(Tools – Tcl Scripts) • 需事先在工程目录中准备好DE0Nano的引脚分配文件

  38. 使用SOPC系统 • 编译 • 编译整个工程,查看编译报告(Ctrl + R)

More Related