实验04_SOPC_PIO读写应用S
- 格式:pptx
- 大小:2.47 MB
- 文档页数:25
SOPC实验指导书电信学院实验中心目录第一章EL-SOPC4000实验系统的资源介绍 (1)一、系统功能概述 (1)二、系统硬件资源 (2)三、特别说明 (11)第二章数字可编程设计实验 (12)实验一组合逻辑3-8译码器的设计 (12)第三章基于NIOS的软核设计实验 (23)实验一 Nios软核的设计 (23)实验二外设模块的设计 (27)实验三 SOPC应用系统的生成 (40)实验四 Nios II软核验证以及Nios II IDE软件的介绍 (46)实验五 SOPC系统的PIO验证 (52)实验六基于NIOS的交通灯实验 (55)实验七 7段数码管显示实验 (59)实验八按键及拨码开关实验 (61)实验九 16×16 LED点阵实验 (62)实验十 UART与PC机通信实验 (64)第一章EL-SOPC4000实验系统的资源介绍一、系统功能概述EL-SOPC4000实验箱是集EDA 和SOPC 开发为一体的综合性实验箱,它不仅可以独立完成各种EDA 设计,也可以完成多种SOPC开发。
主CPU适配器E-PLAY-SOPC配合EL-SOPC4000底板,可完成各种基本的EDA实验。
在实验板上有丰富的外围扩展资源,有常用的按键,拨码开关,LED灯,蜂鸣器,交通灯,16x16点阵,数码管,4x4矩阵键盘,AD/DA,CAN功能单元,RS232,RS485,可调时钟输出。
实验板上还集成了一个8寸的VGA接口的液晶屏,可完成视频图像的显示。
由于CPU 适配器E-PLAY-SOPC本身具有E_PLAY接口,只需提供电源即可独立完成功能测试,也可控制用户开发的E_PLAY接口模块。
由于EL-SOPC4000底板加入了两路E_LAB外扩接口,可以配合公司现有的多种E_LAB模块,来完成大学生毕业设计、电子设计竞赛、及创新设计,同时该系统也是从事教学及科研的广大教师和工程师们的理想开发工具,具有极高的灵活性,开放性和可开发性。
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技术将会在各个领域得到广泛应用。
实验四外部IO中断和外扩RAM使用一、实验目的1. 熟悉DSP中GPIO的配置。
2. 掌握IO口中断的配置。
3. 学习如何将程序代码和数据存入外扩RAM中。
二、实验内容1. 使用CCS配置DSP中GPIO19为下降沿触发中断,并在中断中开启定时器中断并开始计数。
2. 使用#pragma DATA_SECTION()和#pragma CODE_SECTION() 函数将代码和数据存入指定外扩RAM中。
三、实验基本原理1.GPIO中断实验GPIO的主要寄存器包括GPIO复用寄存器(GPxMUXn)、GPIO限制控制寄存器(GPACTRL、GPBCTRL)、GPIO限制选择寄存器(GPxQSELn)、GPIO方向寄存器(GPxDIR)、GPIO上拉禁用寄存器(GPxPUD)、GPIO数据寄存器(GPxDAT)、GPIO置位、清零、翻转寄存器(GPxSET、GPxCLEAR、GPxTOGGLE)、GPIO外部中断源选择寄存器(GPIOXINTnSEL和GPIOXNMISEL)、GPIO低功耗唤醒源选择寄存器(GPIOLPMSEL)。
对上述寄存器中特定寄存器的特定位进行赋值后,可以做到GPIO输入输出属性的配置及中断引脚、中断条件的配置等。
若需用I/O口作为外部中断源的输入引脚,则需配置GPIOINTxSEL和GPIOXNMISEL寄存器来指定I/O口。
2.外扩RAM使用实验XINTF模块用到了两个时钟:XTIMCLK和XCLKOUT,图给出了这两个时钟和CPU 时钟SYSCLKOUT的关系。
对XINTF区域的访问都是基于内部XINTF时钟(XTIMCLK)。
配置XINTF时,用户必须配置内部时钟XTIMCLK与SYSCLKOUT的比率关系。
通过配置XINTCNF2寄存器,可以将XTIMCLK频率设置成等于SYSCLKOUT或SYSCLKOUT的1/2。
XINTF寄存器包括XINTF时序寄存器(XTIMING0/6/7)、XINTF配置寄存器。
实验四 Nios II 嵌入式处理器一、实验要求:1、实现一个由Nios II控制的由18个发光二级管组成的流水灯效果;2、为了点亮LED灯,程序运行速度不要太快,需要进行适当延时。
二、实验目的:1,掌握基于SOPC Builder和Nios SBT实现嵌入式系统的硬件、软件设计过程;2,学会根据需求定制一个Nios II硬件系统,并在此基础上编写应用程序。
三、实验原理和实验内容:1、SOPC技术SOPC(System On a Programmable Chip)是指用可编程逻辑技术把整个系统放到一块硅片上。
它是一种特殊的嵌入式系统。
一方面,它是片上系统(SOC),即由单个芯片完成整个系统的主要逻辑功能;另一方面,它是可编程系统,具有灵活的设计方式,可裁减、扩充、升级,并具备软硬件在系统可编程的功能。
这项技术将EDA、计算机设计、嵌入式系统、DSP等技术融为一体。
SOPC 结合了SOC 和PLD、FPGA 各自的优点,一般具备以下基本特征:至少包含一个嵌入式处理器内核;具有小容量片内高速RAM 资源;丰富的IP Core资源可供选择;足够的片上可编程逻辑资源;处理器调试接口和FPGA 编程接口;可包含部分可编程模拟电路;单芯片,低功耗,微封装。
随着EDA 技术的发展和大规模可编程器件性能的不断提高,SOPC 技术已被广泛应用于许多领域。
首先,SOPC 在极大提高了许多电子系统性能价格比的同时,还开辟了许多新的应用领域,如高端的数字信号处理、通信系统、软件无线电系统的设计、微处理器及大型计算机处理器的设计等等;同时,由于SOPC 具有基于EDA 技术标准的设计语言与系统测试手段、规范的设计流程与多层次的仿真功能以及高效率的软硬件开发与实现技术,使得SOPC 及其实现技术无可争议地成为现代电子技术最具时代特征的典型代表。
与基于ASIC 的SOC 相比,SOPC 具有更多的特点与吸引力:开发软件成本低,硬件实现风险低,产品上市效率高,系统结构可重构及硬件可升级等,它还具有设计者易学易用、高附加值、产品设计成本低等优势。
黑龙江科技大学SOPC设计基础实验报告学院:黑龙江科技大学学号: ********** 姓名:实验一开发软件使用练习一实验目的实验目的:掌握基于SOPC硬核处理器的设计流程。
二实验设备安装Quartu II的PC、实验箱三实验内容1 添加SOPC硬核1,.创建一个工程,取名。
2.添加.bdf文件,取名和工程名同名。
3.在Tools菜单下打开SOPC Builder。
4.创建系统,取名NIOS2,选择使用Verilog语言。
5.设置系统主频和指定FPGA。
6.加入NIOS2 CPU模块,选择型号,并设置相关参数。
7.依次添加定时器、Butoon PIO、LCD控制器、外部RAM和Flash接口、外部RAM和Flash总线、JTAG UART接口,并将这些模块命名成自己熟悉的名字。
8.分配IP模块的地址和中断号9.配置NIOS2 系统10.生成NIOS2并加入到工程中2 创建PLL器件由于Sdram的时钟是由fpga提供的,所以要创建一个PLL器件来实现对时钟的控制,Quartus II提供了Megawizard Plug-In Manager工具对Plug-In器件以及IP Core进行创建和管理,在Megawizard Plug-In Manager中可以创建各种逻辑门电路以及存储器件。
选择Tools/Megawizard Plug-In Manager点击“Next”,进入Manager,选择“IO/ALTPLL”,选择输出文件类型为“VHDL”,选择输出文件的名字“mypll”点击“Next”,选择器件的速度为8,输出的频率为50MHz,其它设置不变。
点击“Next”,去掉复位、使能等选项点击“Next”,进入Clock c0的设定。
改变“Enter output clock frequency”为50MHz点击“Next”,进入Clock c1的设定,不作改变点击“Next”进入Clock e0的设定。
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实验3.1使用niosⅱ ide建立用户程序1.创建一个新的c/c++应用工程执行下面的步骤来创建一个新的c/c++应用工程:1. 启动niosⅱ ide。
选择【开始】??【程序】??【altera】??【quartusⅱ 5.0】??【nios ⅱ development kits 5.0】??【niosⅱ ide】启动niosⅱ ide。
也可以通过图1.1直接点击ⅱ ide。
按钮来启动nios图1 启动niosⅱ ide2.如果出现workspace launcher对话框,单击设置工作空间为quartusⅱ工程的文件夹,如图2所示,这样便于管理。
如果是第一次进入工作区,niosⅱ ide会先弹出一个欢迎界面,此时点击右上角的workbench图标,就可以进入niosⅱ ide编辑界面。
图2设置ide工作空间3.如图3所示,选择【file】??【new】??【c/c++ application】来打开新建c/c++工程向导,如图4所示。
图3打开新建c/c++工程向导1图4新建c/c++工程向导4.单击select target hardware右侧的按钮打开select target hardware窗口,选择led_nios2_system.ptf文件,即指向当前硬件设计系统,如图5所示。
图5选择硬件目标文件5.选择select project template列表中的hello_led。
name栏中自动更新为hello_led_0,确认选中use default location栏,如图6所示,单击完成工程创建。
2图6完成设置后的工程向导向导中的select project templates一栏中是已经设计好的软件工程,用户可以选择其中的一个,把它当作模板来创建自己的工程。
当然也可以选择blank project(空白工程),完全由用户写所有的代码。
本实验选取了hello_led工程,然后在此基础上进行适当的修改,一般情况下这比空白工程更加容易,也更方便。
存储器读写实验实验总结
存储器读写实验是一种常见的电子实验,通过这个实验,我们可以了解存储器的读写原理以及存储器的工作方式。
本次实验中,我们使用了Arduino UNO开发板和24C02 EEPROM存储器芯片,下面对实验进行总结。
实验目的:
本次实验的目的是了解存储器的读写原理、存储器芯片的类型、接口方式、存储器操作等基本概念,并通过实验掌握使用Arduino控制EEPROM存储器读写操作的方法。
实验步骤:
1. 准备材料,包括Arduino UNO开发板、24C02 EEPROM存储器芯片、杜邦线等。
2. 将EEPROM存储器芯片与Arduino开发板连接,具体连接方式可以参考实验指导书。
3. 编写程序,在程序中定义存储器读写操作所需的引脚和操作函数。
4. 将程序烧录到Arduino开发板中。
5. 运行程序,进行存储器读写操作。
实验结果:
我们通过实验成功地实现了对EEPROM存储器芯片的读写操作,确认了存储器
芯片的工作状态和数据存储情况。
通过查看串口输出信息,我们可以看到读取的数据和写入的数据以及相应的内存地址信息。
实验体会:
本次实验让我们更加深入地了解了存储器的读写原理和存储器芯片的类型、接口方式、存储器操作等基本概念。
同时,我们通过实验也掌握了使用Arduino控制EEPROM存储器读写操作的方法,对我们今后的学习和工作都将有很大帮助。
总之,存储器读写实验是一项非常有意义的实验,通过实验的学习,我们可以更好地理解存储器的工作原理,为今后的学习和工作打下坚实的基础。