zoukankan      html  css  js  c++  java
  • nios ii小实验——第一个demo指导书

    1.新建工程:打开Quartus II 13.0,点击File->New Project Wizard,点击Next后可以看到如图2所示的对话框,选择工程路径给工程命名(注意:工程名必须和顶层模块名一致,否则编译会报错)。这里我们将工程名命名为lights


    2.选择器件:这里我们选择Cyclone II里头的EP2C35F672C6这个芯片。直接点击finish。至此我们完成了quartus II工程的建立。


    3.添加nios II 处理器:点击Tool->QsysQsys综合了之前的SOPCbuilder,打开后自动有时钟模块在里面了。在左上角的搜索栏中输入nios,点击Add(或双击)将nios II处理器添加到系统中,如图4所示,这里我们选择Nios II/eNios Ⅱ系列包括3种产品,分别是:Nios /f(快速)——最高的系统性能,中等FPGA使用量;Nios /s(标准)——高性能,低FPGA使用量;Nios /e(经济)——低性能,最低的FPGA使用量。


    4.添加on-chip memory:在左上角的搜索栏输入on-chip memory,点击Add添加,如图5所示,将Total memory size修改为8192Bytes。点击finish完成设置。On-chip memory用来跑软核程序的,太小的话可能会出现各种error,比如程序放不下了。


    5.添加PIO:与上两步类似,加两组PIO,一组为output,一组为input,如图6所示。PIO负责这个软核的输入输出管脚。


    6.添加JTAG UART:步骤同上,使用默认设置。负责烧录软件程序到单片机里。


    7.连线,这地方比较复杂

    clk与所有添加的组件都连上;

    clk_reset和所有的resetreset_n相互连接到一起;

    data_masteron-chip memorypio0pio1jtag都连上;

    instruction_masteron-chip memory连上;

    此处连线规则:如果是存储器这类的IP核,需要将其Slave端口同Nios IIdata_masterinstruction_master相连,而其他非存储器IP核则只需连接到Nios IIdata_master即可

    再将IRQ连上IRQ应该是中断等级;

    pio0(输入)重命名为Switches(右键rename)pio1改为LEDs(输出)双击SwitchesLEDsexternal_connection,将其接到片外

    连线完成后如下图。此时下面会报一堆错,不用急。


    8.双击nios2,将reset vector和exception vector指向onchip_memory,这样程序复位从RAM中走,便于调试,若是添加了epcs模块,则从flash中重启,最终程序完成后选择则可。


    9.分配地址:点击system->assignbase addresses给各个接口及组件分配地址。


    10.保存并生成系统(.v文件)

    点击file->save,命名为nios

    保证messages里头没有错误后,点击工具栏里头的generation生成搭建的系统。至此,我们完成了NIOSS II系统的搭建。



    11.将系统添加到工程中:选择project navigator中的Files,右键添加上一节中的文件到工程中。将niossythesis下的所有文件添加入工程中(或者只添加.Qsys经过试验也是可以的)。


    12.实例化:点击file->new,如图11所示,新建顶层模块对系统实例化。点击保存。



    13.导入管脚配置文件:点击assignment->importassignment将管脚配置文件导入。


    14.编译和配置:编译工程,通过后就可以将其配置到DE2开发板上了。至此,我们完成了硬件设计部分。



    15.打开Nios II Eclips:tools->Nios II software build tools for Eclipse,workspace选择你建立的quartus project的路径。


    16.新建工程:点击files->new->Nios IIApplication and BSP from Template,如图15所示。选择quartus II工程目录下的nios.sopcinfo文件。命名工程名为lights,使用默认设置点击finish。


    17.添加C代码:选择lights目录下的hello_world.c下的主函数main():int,将其内容修改为如图16所示,其中宏定义Switches和LEDs的地址到Qsys的system contents里头的base查找。



    18.修改设置:选中lights_bsp,右键选择properties->Nios II BSPProperties,将Reduced device drivers和Small C library选中,取消Support C++。点击OK。


    19.生成BSP:点击工具栏里头的NIOS II->BSPEditor->generate完成BSP的生成。


    20.建立工程:右击lights->Build Project,完成工程建立。

    21.运行:选择RUN->run as->Nios IIHardware。













  • 相关阅读:
    关于C++中的友元函数的总结
    一个使用动态链接库资源出错的难题
    如何在对话框中实现文件拖放功能
    VS2005设置可以在Release模式下调试 .
    6 Tips for Managing Property Files with Spring
    Linux命令行下SSH端口转发设定笔记_leo_百度空间
    Array properties in Spring Framework
    关于前端产品呈现形态及早期推进
    不要等离别的再珍惜,过好每一天啊
    Django snippets: uuid model field
  • 原文地址:https://www.cnblogs.com/mingmingruyue99/p/7202011.html
Copyright © 2011-2022 走看看