SOPC实验报告

合集下载

sopc实验心得

sopc实验心得

sopc实验心得
在进行SOPC(系统级可编程器件)实验的过程中,我深刻体会到了它的强大和灵活性。

SOPC是一种基于现场可编程门阵列(FPGA)技术的系统设计方法,它将硬件与软件相结合,可以实现高度集成和可重构的设计。

在实验中,我首先学习了SOPC的基本概念和原理,了解了它的组成部分以及各个组件之间的连接方式。

然后,我利用Quartus II软件进行了仿真和综合,将设计的硬件描述语言(HDL)代码转化为FPGA可以理解的形式。

通过仿真,我可以预先验证设计的正确性,并对其进行修改和优化。

接着,我进行了FPGA的编程和配置,将设计好的逻辑电路加载到FPGA芯片中。

通过这一步骤,我可以将自己的设计直接在硬件上实现,并进行实时的测试和调试。

这种即时性和灵活性是SOPC的一个重要优点,它使得我们能够更加高效地进行系统级设计和验证。

在SOPC实验中,我还学习了使用Nios II软核处理器进行嵌入式系统设计。

Nios II是一款可编程的32位RISC处理器,可以根据需求进行定制和配置。

通过Nios II,我可以在FPGA上实现复杂的嵌入式系统,并编写C语言程序进行控制和操作。

总的来说,SOPC实验让我深入了解了系统级可编程器件的原理和应用。

通过实践,我学会了使用Quartus II软件进行FPGA设计和配置,掌握了硬件描述语言
和嵌入式系统的开发方法。

这些知识和技能对我未来的学习和工作都具有重要的意义,我相信在不久的将来,SOPC技术将会在各个领域得到广泛应用。

EDA技术——SOPC设计“hello world”

EDA技术——SOPC设计“hello world”

昆明理工大学信息工程与自动化学院学生实验报告( 201—201学年 第 学期 )课程名称:EDA 技术 开课实验室: 年 月 日 年级、专业、班 学号 姓名 成绩 实验项目名称 SOPC 设计“hello world ”实验 指导教师教师评语教师签名:年 月 日一、实验目的通过本实验具体学习SOPC 开发流程。

二、实验设备1、 带有windows 操作系统,quartusII ,niosII 软件的PC 机台。

2、 FPGA 实验箱及电源线,下载线。

三、实验要求熟悉SOPC 从定制cpu 到nios 软核内程序编写的整个流程。

四 实验原理利用QuartusII 中的SOPCbuilder 来定制cpu ,然后配合niosII ,来实现一个完整的嵌入式系统功能,这是不同于FPGA 的开发方式。

五、实验步骤1、 按照前面实验在QuartusII 中建立工程,在TOOLs 菜单中选择SOPC Builder ,如图 3.1。

图3.1 建立工程✧新工程名命名为SOPC。

✧建完这个工程后,首先建一个原理图文件。

✧File->new->Block Diagram/Schematic File,通过此操作建好一个原理图文件,如图3.2所示。

图3.2 建立原理图文件2、定制CPU,参照上图,有一个图标,点击它打开SOPC builder,打开后,在弹出的界面system name后填写名字,这里写的是cpu,自己可以起其他名字,然后点ok,如图 3.3。

图 3.3 SOPC builder 界面1) 构建处理器模块:处理器就是用来做解释程序,运算等操作,图中左栏可以看到,Nios II Processer选项,双击后弹出处理器的属性选项框,我们自己设置参数,来定制所需的处理器,如图 3.4。

图 3.4 处理器属性框✧这里为我们提供了三种类型的CPU,Nios II/e 占用资源最少600-800LEs,功能也最简单,速度最慢。

《SOPC技术》课程实验报告模板

《SOPC技术》课程实验报告模板

《SOPC技术》课程实验报告姓名:学号:班级:同组者:指导教师:高金定信息科学与工程学院2013-2014学年第一学期《SOPC技术》课程实验报告学生姓名:所在班级:指导教师:高金定老师记分及评价:一、实验名称实验1:基于LPM的正弦信号发生器的设计二、任务及要求【任务】在QuartusII平台上,采用查找表的设计方法,利用LPM兆功能模块,完成64点(8位)的正弦信号发生器的设计。

正弦信号发生器结构框图如下:【要求】1.数据存储ROM和地址信号发生器均由LPM模块实现。

2.在Quartus II软件上进行时序仿真。

3.利用Signal Tap II嵌入式逻辑分析仪进行在线测试与分析。

(此步需使用实验箱,并且要确保实验箱与电脑处于在线可下载状态)【思考】1.编写DAC0832数模转换程序,利用示波器观察输出信号波形。

2.如何在此基础上设计方波、三角波等信号发生器?如何实现波形幅度等参数可调?三、实验程序(原理图)四、仿真及结果分析五、硬件验证1、选择模式:2、引脚锁定情况表:六、小结《SOPC技术》课程实验报告学生姓名:所在班级:指导教师:高金定老师记分及评价:一、实验名称实验2:基于DSP Builder正弦信号发生器的设计二、任务及要求【任务】采用DSP Builder系统建模的方法,设计正弦信号发生器,要求采用查找表的方法,完成正弦信号发生器模块的建模、仿真。

Signal Compiler【要求】:1.完成模型构建及仿真,得到如下波形图。

2.将模型转换成VHDL硬件描述语言,利用Modelsim软件进行RTL仿真。

3.再在Quartus II软件上进行编译、时序仿真与时序分析。

4.利用Signal Tap II嵌入式逻辑分析仪进行在线测试与分析。

(此步需使用实验箱,并且要确保实验箱与电脑处于在线可下载状态)三、仿真模型及参数四、仿真及结果分析五、小结《SOPC技术》课程实验报告学生姓名:所在班级:指导教师:高金定老师记分及评价:一、实验名称实验3:基于DSP Builder的FIR数字低通滤波器的设计二、任务及要求【任务】:调用DSP Builder模块,设计FIR低通数字滤波器,完成建模与仿真。

SOPC实验讲稿

SOPC实验讲稿

2、实验内容
本实验通过使用 NiosII SDK Shell 、 QuartusII 和 SOPC Builder 共同建立
本开发板的目“ UP_AR2000_board ”。 然后新建工程“ USB_test ”,使用
SOPC Builder 定制一个标准的 NiosII 系统,该系统是“ UP_AR2000_board ” 为目标板建立的。从而完成硬件开发。用QuartusII 分配管脚,编译、生成 sof 文件。然后,使用 NiosII IDE 移植 uClinux 操作系统、 编译、 烧写。 建立根 文件系统编译、 烧写。 建立应用程序工程, 编译生成 .exe 文件。把 exe 文 件拷贝到根文件系统中的 bin 文件夹下。 再重新编译根文件系统, 烧写。 最 后 sof 文件。 运行通过超级终端我们就可以运行位于 bin 文件夹下的应用程 序命令了。
2在sopcbuilder上完成niosii硬件系统配置然后完成硬件系统生成3在quartusii上完成硬件引脚的添加与硬件锁定综合3在quartusii上完成硬件引脚的添加与硬件锁定综合4在niosiiide上完成中建立的linux内核工程和linux根文件系统工程然后新建应用工程5添加应用程序到应用工程
仿真波形图
4、实验要求 (1)记录调试与验证的结果 (2 )记录实验过程中出现的问题及解决办法
(3) 实验结束,保持实验室整洁
实验二
1、实验目的
LED实验
(1)学习使用 SOPC Builder 定制 一个最小NiosII 硬件系统的设计。
(2)学习使用 NiosII IDE 软件完成应用程序开发。
(6)将实验箱的JTAG与主机连接好,在Quartus II完成 .sof文件编程, 在NiosII上运行硬件调试,观察实验箱上LED的显示 (7)对 makefile 进行修改, 保存。指定 Rules.mak 的路径。改为: TOPDIR=E:\example\cheng\example\USB_test\software\Linux_app1

SOPC实验报告

SOPC实验报告

SOPC系统设计技术实验报告姓名:学号:院系: 信息科学与工程学院专业:电子科学与技术指导老师:完成日期: 2015年04月25日实验二、NIOSII实现串口收发数据及LCD显示一、实验目的(1)进一步熟悉Quartus II、SOPC Builder、NIOS II IDE的操作;(2)掌握SOPC硬件系统及NIOS II软件的开发流程。

二、实验内容(1)、实验平台:硬件:PC级、SmartSOPC+教学实验开发平台;软件:Quartus II 9.0, SOPC Builder 9.0, NIOS II IDE 9.0。

(2)、实验内容:建立包含SDRAM、JTAG_UART、Timer、LCD的NIOS II处理器系统,通过JTAG_UART从IDE的控制端窗口读取输入值N,计算1至N的累加值,并将计算结果及计算花费时间的显示在LCD中。

三、实验步骤3.1硬件设计根据实验内容,可以得出本次实验的硬件结构图如图3.1所示:图3.1 硬件设计结构图具体硬件设计步骤如下:1)、在Quartus II中建立一个工程命名为:smallCore,器件设置为EP3C55F484C8;2)、以原理图输入方式建立空白顶层模块,并保持;3)、打开SOPC Builder,命名SOPC系统名称为nios2system,开始建立NIOS II 系统。

4)、双击SOPC Builder主界面左侧中的“Nios II Processor”,出现Nios II CPU 的配置向导对话框,如图1.4所示,在这里可以有三种Nios II CPU选择,我们选择快速型的Nios II/f,不使用硬件乘法器及除法器。

然后单击Next进入下一步配置;Instruction Cache项中选择2 Kbytes,在Data Cache项中选择512 Bytes,单击Next 进行下一步配置;在“Advanced Features”和“MMU and MPU Settings”选项卡中选择默认参数,然后单击Next,到了“JTAG Debug Module”选项卡,如图1.6所示。

sopc课程设计

sopc课程设计

SoPC课程设计(报告)题目:液晶控制显示器学院:电子工程学院系部:微电子学系专业:集成电路设计与集成系统班级: 1002 学生姓名:曹松松指导教师:曾泽沧起止时间: 2013年6月17日——2013年6月28日目录1 课程设计要求 (2)基本要求 (2)2 实验使用平台 (2)3 题目:选题2 (2)4 课程设计总结 (5)5 附件 (5)1课程设计要求基本要求课程设计要求所有题目采用Quartus II 工具提供的图形输入或者VerilogHDL语言输入方式作为电路设计工具,在NiosII上采用C语言实现编程,自定向下正向设计方法,先设计硬件系统,再进行软件编程,能够生成正确的FPGA下载代码和NiosII执行的软件代码。

硬件功能仿真和时序仿真采用第三方工具(建议为:modelsim),综合与布局布线工具为:Quartus II,SOPC Builder建立软件运行环境,具体要求为:1)根据课设题目,进行总体设计方案(10分);2)硬件电路顶层设计、模块划分、引脚定义(10分);3)电路设计及NiosII设计,提交电路设计源代码或电路图(10分);4)综合与布局布线,提交综合与布局布线报告(10分);5)FPGA下载代码和引脚分布(10分);6)软件总体设计及画出流程图(10分);7)程序设计,提交程序代码(10分);8)程序编译下载及仿真调试(10分)。

2实验使用平台实验平台使用Altera的DE2开发板,开发工具使用Altera的Quartus II和Nios II IDE。

3 题目:选题2在字符型液晶显示器上移动显示“XIAN UNIVERSITY POST AND TELECOMMUNICATIONS YOUR NAME 2013-6”,要求FPGA 设计硬件,内嵌NiosII,液晶显示采用软件实现。

1)根据课设题目,进行总体设计方案;(10分)此次sopc课程设计选题2,题目相对比较简单。

sopc8 段数码管显示实验

sopc8 段数码管显示实验

实验2、8 段数码管显示实验1、实验目的学习并行输入/输出(PIO)内核是如何提供从N ios II 软核处理器到通用输入/输出端口之间的寄存器映射接口。

2、实验环境PC机、Quartus II 13.0、Nios II EDS 13.03、实验内容按照书上介绍的方法和流程,完成8段数码管显示实验,包括N ios II 软核处理器系统的产生、编译、综合、Nios II EDS 工程创建、C 语言源文件的编辑及编译、配置目标F PGA 器件、下载观察实验结果。

4、实验步骤(1)启动Quartus II 13.0,新建工程将其命名为seg,选择好目标芯片,然后设置没有用的引脚。

(2)进入Tool-Qsys,进行如下图所示的硬件构架如上图双击seg7 组件中 export 栏输入 seg7_external 。

并将文件保存命名为 seg7.qsys ,点击 g enerate 生成硬件。

如图所示:(3)添加q ip 文件,新建如图所示的b df(Block Schematic File)文件,编译分配引脚,(注意引脚名的规范书写,有利于快速匹配引脚)再编译。

接着进入T ool-NIOSII SBT,选择你的工程目录作为你的工作空间,由N ios II C/C++菜单F ile-New- Nios II Application and BSP from Template 打开新工程设置窗口,找到seg7.sopcinfo 文件,将软件工程命名为SEG7,并选择空白模板blank project。

然后在S EG7 文件夹下新建s eg_pio.c 文件。

输入代码,Ctrl+s 保存,Ctrl+b 进行全编译,编译完成进行,进行板上运行,观察结果。

如run as 时出现如下错误,该问题是由于系统组件没有添加s ystem ID 组件。

将下方红圈处打勾即可。

5、实验心得与体会通过本次实验我基本了解了数码管显示的基本原理,但开始连接试验箱未成功。

实验七 SOPC 基础实验

实验七  SOPC 基础实验

实验七SOPC 基础实验SOPC即System-On-a-Programmable-Chip(可编程片上系统),本章通过一系列的实验,使学习者对SOPC的应用有较为深刻的认识,并对FPGA的仿真与设计环境有深入的了解,为进一步的工作奠定基础。

7.1 SOPC概述SOPC是PLD和ASIC技术融合的结果,它是一种特殊的嵌入式系统。

首先它是片上系统(SOC),即由单个芯片完成整个系统的主要逻辑功能;其次,它是可编程系统,具有灵活的设计方式,可裁减、可扩充、可升级,并具备软硬件在系统可编程的功能。

由于FPGA无论在逻辑门密度还是在运行频率等诸多方面都取得了长足进步,基于FPGA的嵌入式系统成为SOPC的热点。

目前已经可以把处理器软核、ASIC硬核、数字信号处理器件以及网络控制等各种数字逻辑控制器以IP核的形式集成到FPGA芯片里,构成嵌入式系统。

7.2 基本硬件设计实验嵌入式开发环境EDK是用于设计嵌入式处理系统的集成软件,是利用嵌入式PowerPC™硬处理器核和/或Xilinx MicroBlaze™软处理器核进行Xilinx平台FPGA设计时所需的全部技术文档和IP。

EDK包括硬件部分和软件部分:1. 硬件部分:Xilinx Platform Studio (XPS)XPS是设计嵌入式处理器系统硬件部分的开发环境和用户图形界面。

可使用底层系统生成器BSB(Base System Builder )创建XPS工程,BSB能够快速和有效地创建工程设计。

Xilinx推荐使用BSB向导来创建任何新的嵌入式设计工程,BSB能够满足你所有设计的需要,并且可以帮助你节省很多时间。

使用BSB创建XPS的过程如下:创建顶层工程文件(*.xmp File)选择板型选择和配置处理器选择和配置多重I/O口添加内部的外围设备设置软件观看系统摘要页2. 软件部分:Software Development Kit (SDK)SDK是综合的开发环境,是对XPS的补充,可用C/C++进行嵌入式软件应用的编写和验证。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

SOPC系统设计技术实验报告姓名:学号:院系: 信息科学与工程学院专业:电子科学与技术指导老师:完成日期: 2015年04月25日实验二、NIOSII实现串口收发数据及LCD显示一、实验目的(1)进一步熟悉Quartus II、SOPC Builder、NIOS II IDE的操作;(2)掌握SOPC硬件系统及NIOS II软件的开发流程。

二、实验内容(1)、实验平台:硬件:PC级、SmartSOPC+教学实验开发平台;软件:Quartus II 9.0,SOPC Builder 9.0, NIOS II IDE 9.0。

(2)、实验内容:建立包含SDRAM、JTAG_UART、Timer、LCD的NIOS II处理器系统,通过JTAG_UART从IDE的控制端窗口读取输入值N,计算1至N的累加值,并将计算结果及计算花费时间的显示在LCD中。

三、实验步骤3.1硬件设计根据实验内容,可以得出本次实验的硬件结构图如图3.1所示:图3.1 硬件设计结构图具体硬件设计步骤如下:1)、在Quartus II中建立一个工程命名为:smallCore,器件设置为EP3C55F484C8;2)、以原理图输入方式建立空白顶层模块,并保持;3)、打开SOPC Builder,命名SOPC系统名称为nios2system,开始建立NIOS II系统。

4)、双击SOPC Builder主界面左侧中的“Nios II Processor”,出现Nios II CPU的配置向导对话框,如图1.4所示,在这里可以有三种Nios II CPU选择,我们选择快速型的Nios II/f,不使用硬件乘法器及除法器。

然后单击Next进入下一步配置;Instruction Cache项中选择2 Kbytes,在Data Cache项中选择512 Bytes,单击Next进行下一步配置;在“Advanced Features”和“MMU and MPU Settings”选项卡中选择默认参数,然后单击Next,到了“JTAG Debug Module”选项卡,如图1.6所示。

这里是选择JTAG调试接口,选择默认的模式Level 1,然后单击Next,到了“Custom Instruction”选项卡,也选择默认参数,最后单击Finish完成对Nios II CPU的配置。

5)、添加了Nios II CPU内核后,选中Module Name下的cpu_0,单击鼠标右键,在Rename 项中可以重命名cpu_0的名称为cpu,并在“Clock Settings”一栏中将clk_0名称改为clk。

6)、双击在SOPC Builder主界面左侧中的Bridges and Adapters→Memory Mapped→Avalon-MM Clock Crossing Bridge,出现Clock Crossing Bridge的配置向导对话框,在“Slave-to-Master FIFO”中的FIFO depth中选择64。

单击“finish”退出配置对话框,并重命名clock_crossing_0的名称为clock_crossing。

7)、双击在SOPC Builder主界面左侧中的Memories and Memory Controllers→SDRAM→DDR SDRAM High Performance Controller,出现DDR SDRAM High Performance Controller 的配置向导对话框。

修改“General Settings”选项卡的参数配置,参数修改如下:Speed grade:8PLL reference clock frequency:85Memory clock frequency:100Local interface clock frequency:full修改“Modify Parameters”: DDR SDRAM控制器参数,参数修改如下:Total Memory interface DQ width:16Memory vendor:otherColumn address width:98)、修改DDR SDRAM的控制器ddr_sdram_0的名称为ddr_sdram,并在ddr_sdram左侧中取消cpu.instruction_master和cpu.data_master中的实点,选择clock_crossing.m1的实点,将ddr_sdram控制器连接到Clock Crossing Bridge的m1中。

9)、双击在SOPC Builder主界面左侧中的Bridges and Adapters→Memory Mapped→Avalon-MM Pipeline Bridge,出现Pipeline Bridge的配置向导对话框,选择默认参数,单击“finish”添加到SOPC Builder中,并重命名pipeline_bridge_0为pipeline_bridge。

10)、双击在SOPC Builder主界面左侧中的Peripherals→Microcontroller Peripherals →PIO(Parallel I/O),出现PIO外设配置的对话框,在Wide一栏中选择8bit,在Direction 一栏中选择Output ports only,如图1.13所示,最后单击Finish完成对PIO的设置,此时在SOPC Builder中出现pio_0的外设,修改该名称为LED_PIO,并把LED_PIO外设连接到pipeline_bridge.m1上。

11)、双击在SOPC Builder主界面左侧中的Peripherals→Debug and Performance→System ID Peripheral,直接在SOPC Builder中添加sysid的外设,修改sysid_0名称为sysid,并把sysid外设连接到pipeline_bridge.m1上。

12)、双击在SOPC Builder主界面左侧中的PLL→PLL,单击“Launch Altera’s ALTPLL MegaWizard”,出现PLL配置对话框1。

在“what is the frequency of the inclock0 input”一栏中设置输入的频率为50MHz,单击Next,进行下一步的设置。

在PLL配置对话框2中的“Lock output”中选择“Create ‘locked’ output”,PLL配置对话框的page3、4、5都选择默认参数,在page6中Clock Tap Settings一栏中选择“Enter output clock frequency”,将c0时钟输出为85MHz,单击Next,进行下一步的设置。

PLL配置对话框的page7-11都选择默认参数,在page12中单击“finish”退出PLL配置对话框,最后再单击“finish”退出。

在SOPC Builder中重命名pll_0为sys_pll,并把sys_pll外设连接到pipeline_bridge.m1上。

13)、在“Clock Settings”一栏中将sys_pll_c0名称改为system_clk,并在SOPC Builder 中的Clock一栏中为每一个外设选择合适的clock信号。

需要特别注意的是sys_pll中的s1时钟需要选择clk,clock_crossing中的s1需要选择system_clk,m1需要选择ddr_sdram_sysclk,ddr_sdram对应选择system_clk,ddr_sdram中的s1需要选择ddr_sdram_sysclk,其它的外设选择system_clk。

14)、添加JTAG_UART:使用缺省设置,命名为jtag_uart,对应system_clk,连接至pipeline_bridge;15)、添加Timer: Initial Period改为20ms,命名为sys_clock_timer, 对应system_clk,连接至pipeline_bridge;16)、添加Avalon-MM Tristate bridge: 使用缺省设置,命名为ext_bus,对应system_clk,连接至cpu;17)、添加zlg_avalon_lcd240_128: 命名为lcd240_128,对应system_clk,连接至ext_bus;18)、添加pio: 1位输出,output only, 命名为lcd_light,对应system_clk,连接至pipeline_bridge;19)、单击SOPC Builder菜单的system→Auto-Assign Base Address,进行自动分配地址,单击SOPC Builder菜单的system→Auto-Assign IRQs,进行自动分配中断号。

20)、双击SOPC Builder中的cpu,确认在Reset Address一栏中选择ddr_sdram,在Exception Address一栏中选择ddr_sdram。

完整的nios2系统如图3.2所示:图3.2 nios2系统构造图时钟设制如图3.3所示:图3.3 系统时钟设置图21)、生成系统。

在之前建立好的原理图文件中添加NIOS II 系统至顶层模块,保存原理图文件。

22)、定制delay_reset_block模块:原理图如图3.4所示:图3.4 delay_reset_block模块原理图23)、在smallCore原理图中添加delay_reset_block模块原理图,并且添加输入输出端口,得到系统原理图,如图3.5所示:图3.5系统原理图24)、在Quartus II主界面中选择Assignments→Device。

在“Available devices”一栏中选择“EP3C55F484C8”器件。

对器件和引脚进行配置。

配置项有:Unused Pins设置为:As input tri-stated;configuration device设置为:EPCS16;Default I/O standard配置为:3.3-V LVTTL电平;Dual-Purpose Pins中的所有引脚设置为“Use as regular I/O”。

25)、将DDR SDRM引脚约束文件中的“YES”改为“NO”,运行DDR SDRM引脚约束文件。

26)、对系统进行引脚分配:新建引脚约束文件:”set up.tcl”。

setup.tcl文件见附录。

运行set.up.tcl引脚约束文件。

27)、编译整个工程,编译成功之后将系统下载到 FPGA 中去。

相关文档
最新文档