[精选]第5章NiosII外围设备.pptx
《[精选]第5章NiosII外围设备.pptx》由会员分享,可在线阅读,更多相关《[精选]第5章NiosII外围设备.pptx(101页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第5章章 Nios II 外外围设备-SOPC技术与应用周立功 等编著主要内容本章介绍了Nios II处理器常用外围设备(Peripherals)内核的特点、配置以及软件编程,供读者在使用这些外设定制Nios II系统时查阅。这些外设都是以IP核的形式提供给用户的,用户可以根据实际需要把这些IP核集成到Nios II系统中去。主要介绍:硬件结构;内核的特性核接口;SOPC Builder中各内核的配置选项;软件编程。第5章 目录v5.1 并行输入/输出(PIO)内核v5.2 SDRAM控制器内核v5.3 CFI(通用Flash)控制器内核v5.5 EPCS控制器内核v5.5 定时器内核v5.
2、6 UART内核v5.7 JTAG_UART内核v5.8 SPI内核v5.9 DMA内核5.10 带Avalon接口的互斥内核5.11 带Avalon接口的邮箱内核5.12 System ID内核第5章 目录v5.1 并行输入/输出(PIO)内核v5.2 SDRAM控制器内核v5.3 CFI(通用Flash)控制器内核v5.5 EPCS控制器内核v5.5 定时器内核v5.6 UART内核v5.7 JTAG_UART内核v5.8 SPI内核v5.9 DMA内核5.10 带Avalon接口的互斥内核5.11 带Avalon接口的邮箱内核5.12 System ID内核5.1 并行输入/输出内核并行
3、输入/输出内核(PIO内核)提供Avalon从控制器端口和通用I/O口间的存储器映射接口。PIO内核提供简单的I/O访问用户逻辑或外部设备,例如:控制LED读取开关量控制显示设备配置并且与片外设备通信说明:说明:1.SOPC Builder中提供了PIO内核,可以很容易将PIO内核集成到SOPC Builder生成的系统中。2.通用I/O端口既连接到片内逻辑又连接到外部设备的FPGA I/O管脚。5.1 并行输入/输出内核vPIO内核简介最多32个I/O端口CPU内核PIO内核寄存器Nios II 系统PIO内核Pio31Pio30Pio29Pio3Pio2Pio1Pio0Pio7Pio6Pi
4、o5Pio5Pio3Pio2Pio1Pio0PIO内核端口数可设置每个Avalon接口的PIO内核可提供32个I/O端口且端口数可设置,用户可以添加一个或多个PIO内核。CPU通过I/O寄存器控制I/O端口的行为。I/O口可以配置为输入、输出和三态,还可以用来检测电平事件和边沿事件。CPU通过寄存器控制I/O端口行为PIO内核结构框图5.1 并行输入/输出内核vPIO内核寄存器描述偏移量寄存器名称R/W(n-1)2100数据寄数据寄存器存器读访问R读入输入引脚上的逻辑电平值写访问W向PIO输出口写入新值1方向寄存器方向寄存器R/W控制每个I/O口的输入输出方向。0:输入;1:输出。2中断屏蔽寄
5、存器中断屏蔽寄存器 R/W使能或禁止每个输入端口的IRQ。1:中断使能;0:禁止中断。3边边沿捕沿捕获获寄存器寄存器 R/W当边沿事件发生时对应位置1。注:注:该寄存器是否存在取决于硬件的配置。如果该寄存器不存在,那么读寄存器将返回未定义的值,写寄存器无效。写任意值到边沿捕获寄存器将清除所有位为0。“该寄存器是否存在取决于硬件的配置。如果该寄存器不存在,那么读寄存器将返回未定义的值,写寄存器无效。”5.1 并行输入/输出内核v PIO内核配置选项双击5.1 并行输入/输出内核v PIO内核配置选项Basic Settings 选项卡I/O口宽度口宽度:可设置为132的任何整数值。Directi
6、on中文描述Bidirectional(tri-state)ports双向(三态)端口Input ports only仅为输入端口Output ports only仅为输出端口Both input and output ports输入和输出端口5.1 并行输入/输出内核v PIO内核配置选项Basic Settings 选项卡Direction中文描述Bidirectional(tri-state)ports双向(三态)端口Input ports only仅为输入端口Output ports only仅为输出端口Both input and output ports输入和输出端口5.1 并行输
7、入/输出内核v PIO内核配置选项Input Options 选项卡边沿捕获寄存器中断寄存器Rising Edge:上升沿Falling Edge:下降沿Either Edge:上升或下降沿Level:输入为高电平且中断使能,则PIO内核产生一个IRQ。Edge:边沿捕获寄存器相应位为1且中断使能,则PIO内核产生一个IRQ。说明:当指定类型的边沿在输入端口出现时,边沿捕获寄存器对应位置1。说明:中断只有高电平中断,如果希望低电平时中断,则需在该I/O输入引脚前加一个“非”门。5.1 并行输入/输出内核v PIO内核配置选项Simulation 选项卡当需要对外进行仿真时,要设置simulat
8、ion选项卡。5.1 并行输入/输出内核v软件编程PIO内核提供了对硬件进行寄存器级访问的文件。Altera_avalon_pio_regs.h该文件定义了内核的寄存器映射并提供硬件设备访问宏定义。可通过阅读上述文件以熟悉PIO设备的软件访问方法,但不应该修改文件。第5章 目录v5.1 并行输入/输出(PIO)内核v5.2 SDRAM控制器内核v5.3 CFI(通用Flash)控制器内核v5.4 EPCS控制器内核v5.5 定时器内核v5.6 UART内核v5.7 JTAG_UART内核v5.8 SPI内核v5.9 DMA内核5.10 带Avalon接口的互斥内核5.11 带Avalon接口的
9、邮箱内核5.12 System ID内核5.2 SDRAM控制器内核vSDRAM控制器内核概述SDRAM控制器内核提供一个连接片外SDRAM芯片的Avalon接口,并可以同时连接多个SDRAM芯片。SDRAM控制器内核具有不同数据宽度(8、16、32或65位)、不同内存容量和多片选择等设置。SDRAM控制器不支持禁能的时钟模式。SDRAM控制器使cke引脚永久地有效。5.2 SDRAM控制器内核vSDRAM控制器内核概述PPL(片内锁相环):通常用于调整SDRAM控制器内核与SDRAM芯片之间的相位差。Avalon三态桥:SDRAM控制器可与现有三态桥共用引脚,这用能减少I/O引脚使用,但将降
10、低性能。fMAX(最高时钟频率):目标FPGA的系列和整个硬件设计都会影响硬件设计可实现的最高时钟频率。5.2 SDRAM控制器内核 SDRAM内核配置选项可直接选择预定义的SDRAM芯片型号,对话框将自动改变下面两个选项卡的值来匹配指定配置。Memory Profile:用于指定SDRAM的结构。5.2 SDRAM控制器内核数据宽度 允许值:8、16、32、64 默认值:32 描述:该值确定dq总线(数据)和dqm总线(字节使能)的宽度。具体数值请查阅SDRAM数据手册。5.2 SDRAM控制器内核结构设置片选 允许值:1、2、4、8 默认值:1 描述:独立芯片的数目在SDRAM子系统中选择
11、。通过使用多个片选信号,SDRAM控制器可组合多个SDRAM芯片为一个存储器子系统。5.2 SDRAM控制器内核结构设置区 允许值:2、4 默认值:4 描述:区的数目,该值确定连接到SDRAM的ba总线(区地址)宽度。具体数值请查阅SDRAM数据手册。5.2 SDRAM控制器内核地址宽度设计行 允许值:11、12、13、14 默认值:12 描述:行地址位的数目。该值确定addr总线的宽度。具体数值请查阅SDRAM数据手册。5.2 SDRAM控制器内核地址宽度设计列 允许值:=8,且小于行的值 默认值:8 描述:列地址位的数目。例如,SDRAM排列为4096行、512(29)列,所以列的值为9。
12、具体数值请查阅SDRAM数据手册。5.2 SDRAM控制器内核通过三态桥共用管脚允许值:是、否默认值:否 描述:当设为No时,所有管脚都专用于SDRAM芯片。当设为Yes时,addr,dq和dqm管脚在系统内可与三态桥共享。5.2 SDRAM控制器内核包括系统测试台的功能存储模块允许值:是、否默认值:是 描述:当打开选项时,SOPC Builder创建SDRAM芯片的功能仿真模型。该默认的存储器模型加速创建的过程和检验使用SDRAM控制器的系统。5.2 SDRAM控制器内核 SDRAM内核配置选项Timing:根据在SDRAM芯片数据手册中提供的参数来设置芯片的时序规范5.2 SDRAM控制器
13、内核CAS等待时间允许值:1、2、3默认值:3 描述:从读命令到数据输出的等待时间(以时钟周期计算)。5.2 SDRAM控制器内核初始化刷新周期允许值:1-8默认值:2 描述:复位后,该值指定SDRAM控制器将执行多少个刷新周期作为初始化序列的一部分。5.2 SDRAM控制器内核每隔一段时间执行一个刷新命令允许值:-默认值:15.625us 描述:该值指定SDRAM控制器多久刷新一次SDRAM。典型的SDRAM每65ms需要5,096刷新命令,通过每65ms/5,096=15.625us执行一个刷新命令来符合这个要求。5.2 SDRAM控制器内核在初始化前、上电后延时允许值:-默认值:100u
14、s 描述:从稳定的时钟和电源到SDRAM初始化的延时。5.2 SDRAM控制器内核刷新命令(t_rfc)的持续时间允许值:-默认值:70ns 描述:自动刷新周期。5.2 SDRAM控制器内核预充电命令(t_rp)的持续时间允许值:-默认值:20ns 描述:预充电命令周期。5.2 SDRAM控制器内核ACTIVE到READ或WRITE延时允许值:-默认值:20ns 描述:ACTIVE到READ或WRITE延时。5.2 SDRAM控制器内核访问时间(t_ac)允许值:-默认值:5.5ns 描述:时钟边沿的访问时间。该值由CAS的等待时间决定。5.2 SDRAM控制器内核写恢复时间(t_wr,无自动
15、预充电)允许值:-默认值:15ns 描述:如果执行了明确的预充电命令,写恢复。该SDRAM控制器总是执行明确的预充电命令。5.2 SDRAM控制器内核v软件编程当通过Avalon接口访问时,SDRAM控制器操作起来像简单的SRAM存储器,没有可配置的软件设置,没有存储器映射的寄存器。处理器访问SDRAM控制器不需要软件驱动程序。5.2 SDRAM控制器内核vSDRAM应用一个带32位数据总线的128Mbit SDRAM芯片5.2 SDRAM控制器内核vSDRAM应用两个带16位数据总线的65Mbit SDRAM芯片5.2 SDRAM控制器内核vSDRAM应用两个带32位数据总线的128Mbit
16、 SDRAM芯片第5章 目录v5.1 并行输入/输出(PIO)内核v5.2 SDRAM控制器内核v5.3 CFI(通用Flash)控制器内核v5.4 EPCS控制器内核v5.5 定时器内核v5.6 UART内核v5.7 JTAG_UART内核v5.8 SPI内核v5.9 DMA内核5.10 带Avalon接口的互斥内核5.11 带Avalon接口的邮箱内核5.12 System ID内核5.3 CFI控制器内核vCFI控制器内核综述对于Nios II处理器,Altera为CFI控制器提供硬件抽象层(HAL)驱动程序。驱动程序提供了遵循CFI接口规范的Flash存储器的通用访问函数。因此,用户不
17、需要写任何代码就可以访问遵循CFI接口规范的Flash器件。5.3 CFI控制器内核vCFI控制器内核综述CFI控制器框图5.3 CFI控制器内核 CFI控制器内核设置CFI控制器框图Attributes:用于完成Presets、size和 Board Info这3个选项的设定。Presets:选择预设好的CFI Flash。Size:地址宽度:Flash地址总线宽度。数据宽度:Flash数据总线宽度。Board Info:用于映射CFI控制器目标系统板元件的已知芯片。5.3 CFI控制器内核 CFI控制器内核设置CFI控制器框图Timing:用于完成时序设置,包括建立时间、等待周期、保持时间
18、等。Setup:chipselect有效后,read或write信号有效前所需的时间。Wait:每次数据传输过程中,read或write信号需要保持的时间。Hold:write信号无效后,chipselect信号无效前所需要的时间。Units:用于Setup、Wait和Hold值的时间单位,可以是ns、us、ms和时钟周期。5.3 CFI控制器内核v软件编程Avalon主控制器可以直接读Flash芯片。对于Nios II处理器用户,Altera提供HAL系统库驱动程序和API函数来支持对Flash存储器的擦除和写操作。第5章 目录v5.1 并行输入/输出(PIO)内核v5.2 SDRAM控制器
19、内核v5.3 CFI(通用Flash)控制器内核v5.4 EPCS控制器内核v5.5 定时器内核v5.6 UART内核v5.7 JTAG_UART内核v5.8 SPI内核v5.9 DMA内核5.10 带Avalon接口的互斥内核5.11 带Avalon接口的邮箱内核5.12 System ID内核5.5 EPCS控制器内核vEPCS控制器内核综述Altera EPCS 串行配置器件(EPCS1和EPCS5),它可用于存储程序代码、非易失性程序数据和FPGA配置数据。带Avalon接口的EPCS设备控制器内核(“EPCS控制器”)允许NiosII系统访问Altera EPCS串行配置器件。Alt
20、era提供集成到NiosII硬件抽象层(HAL)系统库的驱动程序,允许用户使用HAL应用程序接口(API)来读取和编写EPCS器件。5.5 EPCS控制器内核vEPCS控制器内核综述EPCS控制器可用于:在EPCS器件中存储程序代码。存储非易失性数据。管理FPGA配置数据。5.5 EPCS控制器内核vEPCS控制器内核综述EPCS控制器结构框图Boot-LoaderROMEPCS控制器配置存储空间通用存储空间EPCS配置器件Avalon总线NiosIICPU片内外设Altera FPGA存储FPGA配置数据剩余空间可用于存储用户非易失性数据。1KB的片内存储器5.5 EPCS控制器内核v软件编
21、程Altera提供的HAL Flash设备驱动程序已经完全屏蔽了Flash的硬件访问细节,访问EPCS Flash的软件编程和访问CFI Flash的软件编程完全一样。EPCS控制器提供了硬件的底层接口和HAL驱动程序。5.5 EPCS控制器内核v软件编程定义集成到HAL系统库所需的驱动程序的头文件和源文件。Altera_avalon_epcs_flash_controller.h通过直接控制EPCS设备来进行读写操作的头文件和源文件。Altera_avalon_epcs_flash_controller.cepcs_commands.hepcs_commands.c第5章 目录v5.1 并行
22、输入/输出(PIO)内核v5.2 SDRAM控制器内核v5.3 CFI(通用Flash)控制器内核v5.4 EPCS控制器内核v5.5 定时器内核v5.6 UART内核v5.7 JTAG_UART内核v5.8 SPI内核v5.9 DMA内核5.10 带Avalon接口的互斥内核5.11 带Avalon接口的邮箱内核5.12 System ID内核5.5 定时器内核v定时器内核综述定时器是挂载在Avanlon总线上的32位定时器,特性如下:两种计数模式:单次减1和连续减1计数模式定时器到达0时产生中断请求(IRQ);可选择设定为看门狗定时器,计算到达0时复位系统;可选择输出周期性脉冲,在定时器计
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 精选 NiosII 外围设备
限制150内