基于niosii的电流表电压表设计内容摘要:

贝时所占用的资源。 2 硬件开发:用 SOPC Builder 定义 NiosII 处理器系统,用 Quartus 软件定义器件、分配管脚并编译。 3 软件开发: C/C++程序开发,开发定制硬件的驱动程序,定制硬件平台为目标基于 Nios_II的电流 /电压表设计 6 进行编译连接。 4 下载到开发板上进行验证 5 成功完成 NiosII 系统设计 a 硬件开发流程 用 SOPC Builder 来选择合适的 CPU、存储器及外围器件,比如片内存储器、PIO、 UART 和片外存储器接口。 是用 QuartusII 软件选 取具体的器件,并对 SOPC Builder 生成 HDL 设计文件进行布局布线;再根据开发板分配 I/O 管脚。 编译完后生适合目标器件的网表。 可以使用下载电缆将配置文件下载到开发板上。 当校验硬件或时钟完毕时软件开发工作就可以开始了 b 软件开发流程 系统软件设计具体工作如下: 1 在用 SOPC Builder 系统集成软件进行硬件设计同时,局开始编写 C/C++软件,比如算法或控制程序。 用户可以使用现成的的软件库和开放的操作系统内核加快开发进程 2 在 NiosII IDE 中建立新的软件工程时, IDE 会根据 SOPC Builder 对系统的硬件配置自动定制 HAL(硬件抽象层)系统库。 这个系统库可以为程序和底层硬件的通信提供接口驱动程序 3 使用 NiosII IDE 编译调试软件 4 硬件以下到板上的基础上将软件下载到开发板上并在硬件上运行。 SOPC Builder 开发工具 SOPC 即 system on a programmable chip 是指用可编程逻辑技术把整个系统放到一块硅片上。 一方面它是片上系统 — 即由单个芯片完成整个系统的主要逻辑功能;另一方面,它是可编程系统,具有灵活的设计方式,可裁减 、扩充、升级,并具备软硬件在系统可编程的功能。 这项技术将 EDA、计算机设计、嵌入式系通、工业自动控制系统、 DSP及数字通信系统等技术融为一体。 SOPC Builder 简介 SOPC Builder 是 Altera 公司推出的一种可加快在 PLD 内实现嵌入式处理器相关设计的工具,其功能与 PC 应用程序中的引导模板( wizard)类似,旨在提高设计者的效率。 设计者可确定需要的处理器和参数,并据此创建一个处理器基于 Nios_II的电流 /电压表设计 7 的完整存储器映射设计者还可以选择所需的 IP 外围电路,如存储控制器、 I/O 控制器和定时 器等模块。 SOPC Builder 库中已有的组件包括: 处理器:包括片内处理器和片外处理器接口。 IP 及外设:包括通用的微控制器外设、通信外设,多种接口(存储器接口、桥接口、 ASSP、 ASIC), DSP IP 和硬件加速外设。 SOPC Builder 用户界面 打开 QuaratusII 的一个项目,选择 QuaratusII 工具栏( Tool 菜单)中的SOPC Builder选项,就启动了 SOPC Builder。 SOPC Builder 的用户界面包括系统元件( System contents)页,系统设置( More cpu Setting)页和系统生成页。 a 系统元件页 用户在系统元件页中定义所需的系统。 在他的模块池中包括了用户可获得的所有元件列表。 在模块表中列出的是用户已添加到系统中的模块。 当用户用 SOPC Builder 生成系统时,他就生成了一个系统模块,这个模块包含了用户所定义的所有元件和接口以及自动生成的总线(互联)逻辑。 模块表中列出的是用户添加到用户所设计的系统中的模块,包括桥、总线接口、 CPU、存储器接口、外围设备等。 此外,用户可以用模块表来描述以下一些项目: 连接的 主从特性 系统的地址映射 系统中断请求分配 控制共享从元件的优先权 系统元件页还包括以下一些附加选项: ( 1)器件系列( Device family):由用户从其件列表中选择用户的目标器件。 这项设置非常重要,因为 SOPC Builder 是利用所选器件的结构优势来产生系统逻辑的。 ( 2)系统的时钟频率:外围设备利用系统时钟来产生时钟分频或波特率等。 SOPC Builder的 buildin testbench 发生器还利用这项设置来产生用户所要求的频率。 基于 Nios_II的电流 /电压表设计 8 b 系统的设置项 当用户向所设计的系统中添加元件时,比如一个 NIOS 嵌入式处理器,在SOPC Builder 中就会出现一个系统设置( more cpu setting)的附加页。 这个附加页可以让用户用来设置一些附加的参数或者与系统中其它元件的相连关系。 比如,用户可以定义 cpu和存储器元件之间的相连关系指名哪一个用来做程序存储器,那一个用来做数据存储器的。 对于用到的系统设置页的元件, SOPC Builder 会对用户添加到系统中的这个元件的每种情况都生成一个系统设置页。 另外,处理器元件可能会有相关的的软件组成,并且会在这 一页中显示出来Altera在开发工具包中提供了多种软件组成,比如 tcp/ip 库。 c 系统生成页 系统生成也是用来生成系统的。 它包含一些选项,用户可以通过设置来控制生成的过程,比如,可以指定生成仿真工程。 如图 232所示 点击 generate 按钮来生成所设计的系统。 SOPC Builder 会生成一些项目: SDK( Software Development kid)软件开发工具包,只在 nios 系统中产生, niosII 不会生成此文件 系统中每一个元件的 HDL 文件 定成系统模块的 HDL 文件 仿真工程文件 日志( .log)文件 基于 Nios_II的电流 /电压表设计 9 图 232 系统生成页 3 硬件系统设计 硬件系统的配置 概述 SPI(串行外设接口 )接口 总线系统是一种同步串行外设接口,它可以使MCU 与各种外围设备以串行方式进行通信以交换信息。 SPI 的通信原理很简单,它以主从方式工作,这种模式通常有一个主设备和一个或多个从设备,需要至少 4 根线,事实上 3 根也可以(用于单向传输时,也就是半双工方式)。 也是所有基于 SPI 的设备共有的,它们是 SDI(数据输入), SDO(数据输出), SCK(时钟), CS(片选)。 ( 1) SDO – 主设备数据输出,从设备数据输入 ( 2) SDI – 主设备数据输入,从设备数据输出 ( 3) SCLK – 时钟信号,由主设备产生 ( 4) CS – 从设备使能信号,由主设备控制 基于 Nios_II的电流 /电压表设计 10 其中 CS是控制芯片是否被选中的,也就是说只有片选信号为预先规定的使能信号时(高电位或低电位),对此芯片的操作才有效。 这就允许在同一总线上连接多个 SPI 设备成为可能。 Nios系统的所有外设都是通过 Avalon 总线与 Nios CPU 相接的, Avalon总线是一种协议较为简单的片内总线, Nios通过 Avalon 总线与外界进行数据 交换。 Avalon 总线的特点有: ● 所有外设的接口与 Avalon 总线时钟同步,不需要复杂的握手 /应答机制。 这样就简化了 Avalon 总 线的时序行为,而且便于集成高速外设。 Avalon 总线以及整个系统的性能可以采用标准的同步时序分析技术来评估。 ● 所有的信号都是高电平或低电平有效,便于信号在总线中高速传输。 在 Avalon 总线中,由数据选择器 (而不是三态缓冲器 )决定哪个信号驱动哪个外设。 因此外设即使在未被选中时也不需要将输出置为高阻态。 ● 为了方便外设的设计,地址、数据和控制信号使用分离的、专用的端口。 外设不需要识别地址总线周期和数据总线周期,也不需要在未被选中时使输出无效。 分离的地址、数据和控制通道还简化了与片上用户自定义逻辑的连接。 选用本款 Altera 器件来进行设计的原因 ① CycloneII 是 Altera 公司推出的第二代产品,速度较快,逻辑资源丰富,是性价比很高的 FPGA器件之一。 DE1 开发板所采用的 EP2C20 器件,片上资源丰富,包括两个 CPU 软核,以及大量的 IP核,如 flash 控制器、SDRAM 及其控制器, PLL 等这正符合了我们系统的需求。 ② ALTERA DE1 开发板,资源非常丰富,包括 VGA、音频、 UART 和丰富的 GPIO,符合本系统的需求。 ③ 开发软件采用 和 NiosII 简单易用, SOPC Builder 是集成在 QuartusII 内部的 SOPC 系统级开发工具,利用它可方便的构建一个 SOPC 系统。 所带的 EDA工具具有丰富的调试资源,如综合器,仿真器和时序器。 Nios_II 处理器, SPI 串口的配置 过程 在 Qua。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。