1 / 42

FPGA 和 SOPC 应用 ——SOPC 系统

FPGA 和 SOPC 应用 ——SOPC 系统. 华中科技大学启明学院电工电子科技创新中心 王贞炎. 内容. SOPC 和 Nios2 介绍 SOPC 系 统( Nios2 处理器系统)设 计 Nios2 处理 器 ( 含 JTAG 调试接 口 ) System ID JTAG-UART 易失性存储器 非易失性存储器 PIO 在 Quartus 工程中使用 Nios2 处理器系统. SOPC 和 Nios2 介绍. SOPC System On Programmable Chip 使用 Quartus 中的 SOPC Builder 工具设计

Télécharger la présentation

FPGA 和 SOPC 应用 ——SOPC 系统

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. FPGA和SOPC应用——SOPC系统 华中科技大学启明学院电工电子科技创新中心 王贞炎

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

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

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

  5. 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……

  6. 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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  23. SOPC系统设计 • 添加CFI控制器

  24. SOPC系统设计 • 添加CFI控制器

  25. SOPC系统设计 • 为CFI控制器添加Tri-state Bridge

  26. SOPC系统设计 • 为CFI控制器添加Tri-state Bridge

  27. SOPC系统设计 • 添加PIO

  28. SOPC系统设计 • 添加PIO

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

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

  31. 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的空间

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

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

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

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

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

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

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

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

  40. 使用SOPC系统 • 连接好的系统 • 注意Flash地址的连接——DE0使用的Flash芯片为16位数据,其地址为(16bit)地址,而Nios2系统给出的地址为字节地址 • 注意复位信号的连接

  41. 使用SOPC系统 • 采用tcl脚本分配引脚(Tools – TclScripts)

  42. 使用SOPC系统 • 编译

More Related