实验一 一个简单的SOPC系统

合集下载

SOPC实验指导书

SOPC实验指导书

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的信息采集系统设计近年来,随着信息技术的快速发展,信息采集系统应用越来越广泛。

而基于SOPC的信息采集系统由于其高度集成化的技术结构和多种接口的灵活性,成为该领域中应用非常广泛的技术之一。

SOPC全称为System-on-a-Programmable-Chip,即可编程芯片系统,是一种基于FPGA(Field-Programmable Gate Array)的高度集成化设计。

SOPC技术可以将多种不同的外设集成到一个芯片上,形成一个完整的系统,并通过可编程逻辑的设计来实现多种功能。

因此,在信息采集系统设计中,SOPC技术可以实现数据采集、处理和存储等多种功能,从而提高系统的性能和可靠性。

在信息采集系统中,数据采集是最关键的一环。

SOPC技术通常通过集成多种接口实现数据采集。

例如,可选择使用模拟接口进行模拟信号的采集,使用数字接口采集数字信号,如I2C、SPI、UART等。

选择合适的接口并进行集成后,可以实现各种传感器信号的采集。

除了数据采集外,信息采集系统还需要对采集到的数据进行处理和存储。

SOPC技术同样可以支持数据处理和存储功能的实现。

例如,可通过集成处理器实现数据的实时计算,或者通过SD卡等存储介质实现数据的持久化存储等。

同时,基于SOPC的信息采集系统还支持通信接口的集成,可以通过网络等方式实现信息的传输和共享。

在系统设计过程中,还需要考虑硬件和软件的配合。

SOPC技术不仅可以支持硬件设计,还可以支持软件开发。

通过集成多种接口和软件支持,可以实现与外部设备的无缝连接和良好的用户交互体验。

总之,基于SOPC的信息采集系统具有很强的灵活性和适应性。

通过集成多种接口和处理器,可以实现多样化的功能,如数据采集、处理、存储和通信等。

同时,与外界的无缝连接和良好的用户交互体验也使得SOPC技术越来越受到关注,并被广泛应用于信息采集系统的设计中。

数据分析是一个广泛的概念,可以包括各种统计和计算方法,用于从数据中提取有意义的信息。

sopc 流水灯实验

sopc 流水灯实验

实验3、流水灯实验一、实验目的熟悉并行输入、输出内核提供从NiOSII软核处理器到通用输入/输出端口之间的寄存器映射接口。

二、实验环境PC机、Quartus II 13.0、Nios II三、实验内容按照书上介绍的方法和流程,完成H ello World 实验,包括N ios II 软核处理器系统的产生、编译、综合、Nios II EDS 工程创建、C 语言源文件的编辑及编译、配置目标F PGA 器件、下载观察实验结果四、实验步骤1、启动Quartus II 13.0,新建工程将其命名为l edsk,选择好目标芯片,然后设置没有用的引脚。

2、进入Tool-Qsys,进行如下图所示的硬件构架(1)从左侧组件库输入p io,双击添加组件并进行如下设置,并改名为l ed18_pio。

(2)双击led18_pio 组件中export 栏输入led18_pio,这是设置该组件外部硬件连接端口(注意点击自动分配地址和自动连接复位端口选项)。

(3)将文件保存命名为l ed18.qsys,点击g enerate 生成硬件。

3、添加q ip 文件,新建如图所示的b df(Block Schematic File)文件,编译分配引脚,再编译。

4、由Nios II C/C++菜单File-New- Nios II Application and BSP from Template 打开新工程设置窗口如下图所示。

找到led18.sopcinfo 文件,将软件工程命名为LED,并选择空白模板blank project.5、在L ED 文件夹下新建l ed.c 文件。

输入代码,Ctrl+s 保存。

Ctrl+b 进行全编译,编译完成进行,进行板上运行,观察结果。

五、实验心得与体会在这次实验中,主要是在NiosII上做出流水灯的实验,实验步骤大都与以往相同,在Quartus II上操作比较熟练。

但也有很多不足,下一次会注意本次试验中的问题。

《基于SOPC的目标跟踪系统设计》范文

《基于SOPC的目标跟踪系统设计》范文

《基于SOPC的目标跟踪系统设计》篇一一、引言随着科技的不断进步,目标跟踪系统在众多领域如安防监控、自动驾驶、军事侦察等得到了广泛应用。

传统的目标跟踪系统通常由硬件和软件组成,然而在复杂环境中,系统的处理能力和实时性面临巨大的挑战。

本文将探讨基于SOPC(System-on-a-Programmable-Chip,可编程芯片上的系统)的目标跟踪系统设计,以提高系统的性能和实时性。

二、SOPC技术概述SOPC是一种将处理器、存储器、外设等集成在单一可编程芯片上的技术。

通过SOPC技术,可以实现高度的系统集成和定制化,从而提高系统的性能和可靠性。

在目标跟踪系统中,SOPC 技术可以用于实现高性能的图像处理、数据传输和控制等功能。

三、目标跟踪系统设计(一)系统架构设计基于SOPC的目标跟踪系统设计主要包括硬件设计和软件设计两部分。

硬件设计包括处理器、存储器、摄像头等模块的选型和集成。

软件设计包括操作系统、图像处理算法、目标跟踪算法等的设计和实现。

(二)图像处理模块设计图像处理模块是目标跟踪系统的核心部分,其性能直接影响到系统的跟踪效果。

在SOPC平台上,可以通过硬件加速技术实现高性能的图像处理。

具体包括图像预处理、特征提取、背景建模等步骤。

(三)目标跟踪算法设计目标跟踪算法是用于确定目标位置的关键技术。

常见的目标跟踪算法包括光流法、均值漂移法、深度学习法等。

在SOPC平台上,可以根据具体应用场景和性能需求选择合适的算法,并对其进行优化和加速。

(四)控制与通信模块设计控制与通信模块负责整个系统的控制和数据传输。

在SOPC 平台上,可以通过可编程逻辑实现灵活的控制策略,并通过高速接口实现与其他设备的数据传输。

四、系统实现与优化(一)硬件实现在硬件实现方面,需要根据系统需求选择合适的处理器、存储器、摄像头等模块,并进行集成和调试。

同时,需要考虑功耗、散热等因素,以保证系统的稳定性和可靠性。

(二)软件实现与优化在软件实现方面,需要编写操作系统、图像处理算法、目标跟踪算法等程序,并进行优化和调试。

《基于SOPC的嵌入式系统架构及应用验证》范文

《基于SOPC的嵌入式系统架构及应用验证》范文

《基于SOPC的嵌入式系统架构及应用验证》篇一一、引言随着科技的不断进步,嵌入式系统在各个领域的应用越来越广泛。

SOPC(System on a Programmable Chip,可编程芯片上的系统)技术作为嵌入式系统的重要技术之一,其灵活性和可定制性使得它在各种应用场景中具有显著的优势。

本文将介绍基于SOPC的嵌入式系统架构及其应用验证。

二、SOPC的嵌入式系统架构1. 硬件架构SOPC的嵌入式系统架构主要包括可编程逻辑器件、处理器、存储器等硬件组件。

其中,可编程逻辑器件是实现系统定制化的关键,它可以根据需求进行灵活的配置。

处理器则是系统的核心,负责执行各种任务。

存储器则用于存储程序和数据。

2. 软件架构软件架构主要包括操作系统、驱动程序、应用程序等部分。

操作系统负责管理系统的硬件和软件资源,提供各种服务。

驱动程序则是连接硬件和软件的桥梁,它使得应用程序能够通过操作系统访问硬件资源。

应用程序则是用户直接接触的部分,它实现了系统的各种功能。

三、SOPC的嵌入式系统应用SOPC的嵌入式系统在各个领域都有广泛的应用,如通信、工业控制、医疗设备、消费电子等。

以工业控制为例,SOPC的嵌入式系统可以实现对工业设备的实时监控和控制,提高生产效率和产品质量。

在医疗设备中,SOPC的嵌入式系统可以实现对患者生理数据的实时采集和分析,为医生提供准确的诊断依据。

四、应用验证为了验证SOPC的嵌入式系统的性能和可靠性,需要进行应用验证。

应用验证主要包括以下几个方面:1. 功能性验证:验证系统是否能够正确实现预定的功能。

2. 性能验证:验证系统的性能是否达到预期的要求,如处理速度、功耗等。

3. 可靠性验证:验证系统的可靠性和稳定性,如长时间运行是否会出现故障。

4. 兼容性验证:验证系统是否能够与其他设备或系统进行良好的兼容。

五、实验设计与实施为了进行应用验证,我们需要设计实验并进行实施。

实验设计应包括实验目的、实验环境、实验方法、实验数据等内容。

sopc实验指导书(1)

sopc实验指导书(1)

CON目录第一章实验箱简介 (2)第二章EDA实验单元 (5)实验一七人表决器 (5)实验二格雷码变换 (13)实验三BCD码加法器 (15)实验四四位全加器 (17)实验五四人抢答器 (19)实验六四位并行乘法器 (20)实验七设计基本触发器 (21)实验八设计74LS169计数器功能模块 (25)实验九步长可变的加减计数器 (27)实验十可控脉冲发生器 (28)实验十一正负脉宽数控调制信号发生器 (30)实验十二序列检测器 (32)实验十三四位并行流水乘法器 (34)实验十四出租车计费器 (37)实验十五多功能数字钟 (39)实验十六数字秒表 (41)实验十七频率计 (43)实验十八交通灯控制器 (45)实验十九数码锁 (47)实验二十VGA彩条发生器 (49)附录 (51)第一章实验箱简介EDA/SOPC实验箱是集EDA和SOPC开发为一体的综合性实验箱,它不仅可以独立完成几乎所有的EDA设计,也可以完成大多数的SOPC开发。

采用Altera公司的Cyclone系列的12万门FPGA为核心,整个系统采用模块化设计,各个模块之间可以自由组合,使得该实验箱的灵活性大大提高。

同时实验箱还提供了丰富的接口模块,供人机交互,从而大大增加了实验开发者开发的乐趣,满足了普通高等院校、科研人员等的需求。

开发工程师可以使用VHDL语言、Verilog HDL语言、原理图输入等多种方式,利用Altera公司提供的Quartus II及Nios软件进行编译,下载,并通过EDA/SOPC实验箱进行结果验证。

实验箱提供多种人机交互方式,如键盘阵列、按键、拨挡开关输入;七段码管、大屏幕图形点阵LCD显示;串口通信;VGA接口、PS2接口、USB接口、Ethernet接口等,利用Altera 公司提供的一些IP资源和Nios 32位处理器,用户可以在该实验箱上完成不同的SOPC设计。

EDA/SOPC实验箱提供的资源有:●Altera公司的EP1C6Q240C8,12万门级FPGA,另外可选配更高资源的FPGA●FPGA配置芯片采用可在线变成的EPC2,通过JTAG口和简单的跳线即可完成设计的固化●1个数字时钟源,提供48MHz、12MHz、1MHz、100KHz、10KHz、1KHz、100Hz、10Hz、2Hz和1Hz等多个时钟●1个模拟信号源,提供频率和幅度可调的正弦波、三角波和方波●两个串行接口,一个用于SOPC开发时的调试,另一个可以完成其它的通信●1个VGA接口●1个PS2接口,可以接键盘或鼠标●1个USB接口,利用PDIUSBD12芯片实现USB协议转换●1个Ethernet接口,利用RTL8019芯片实现TCP/IP协议转换●基于SPI接口的音频CODEC模块●1个输入、输出探测模块,供数字信号的观察●16个LED显示●8个拨挡开关输入●8个按键输入●1个4X4键盘阵列●8个七段码管显示●1个扬声器模块●1个交通灯模块●1个直流电机模块●1个高速AD和1个高速DA●240×128大屏幕图形点阵LCD显示●存储器模块提供256K×32Bit的SRAM和2M×8Bit的FLASHROM实验箱基本布局如下图1-1所示:图1-1 EDA/SOPC 试验箱系统布局下面就部分模块做简要介绍。

《基于SOPC的目标跟踪系统设计》范文

《基于SOPC的目标跟踪系统设计》篇一一、引言随着科技的进步和计算机视觉技术的不断发展,目标跟踪系统在各个领域中的应用日益广泛,包括安防监控、自动驾驶、人机交互等。

而SOPC(System on a Programmable Chip,可编程芯片上的系统)技术以其高度的集成性、灵活性和可定制性,为目标跟踪系统的设计提供了新的可能。

本文将探讨基于SOPC的目标跟踪系统设计,分析其设计原理、方法及实现过程。

二、SOPC技术在目标跟踪系统中的应用SOPC技术是一种集成了处理器、存储器、外设及可编程逻辑的单芯片系统。

在目标跟踪系统中,SOPC技术可以提供强大的计算能力和灵活的硬件配置,以满足复杂的目标跟踪算法对计算资源和硬件接口的需求。

通过将目标跟踪算法与SOPC技术相结合,可以实现高效、实时的目标跟踪。

三、目标跟踪系统设计原理目标跟踪系统的设计主要包括硬件设计和软件设计两部分。

硬件设计主要涉及SOPC芯片的选型、电路设计、接口设计等;软件设计则包括目标跟踪算法的设计与实现、操作系统及驱动程序的开发等。

在硬件设计方面,需要根据目标跟踪系统的需求,选择合适的SOPC芯片,并设计相应的电路和接口,以保证系统的稳定性和可靠性。

在软件设计方面,需要针对目标跟踪算法进行优化和实现,以满足实时性的要求。

同时,还需要开发操作系统及驱动程序,以实现软硬件之间的良好交互。

四、目标跟踪系统设计方法基于SOPC的目标跟踪系统设计方法主要包括以下几个步骤:1. 需求分析:明确目标跟踪系统的应用场景、性能指标和功能需求。

2. 硬件选型与设计:根据需求选择合适的SOPC芯片,并设计相应的电路和接口。

3. 软件设计与实现:针对目标跟踪算法进行优化和实现,开发操作系统及驱动程序。

4. 系统集成与测试:将硬件和软件进行集成,进行系统测试和性能评估。

5. 优化与调试:根据测试结果进行优化和调试,提高系统的性能和稳定性。

五、实现过程及关键技术在实现基于SOPC的目标跟踪系统的过程中,需要掌握以下关键技术:1. SOPC芯片的选型与配置:根据系统需求选择合适的SOPC 芯片,并配置相应的硬件资源。

《基于SOPC的嵌入式系统架构及应用验证》范文

《基于SOPC的嵌入式系统架构及应用验证》篇一一、引言随着信息技术的迅猛发展,嵌入式系统已广泛应用于各类电子产品和系统中,发挥着日益重要的作用。

而系统级芯片(SOPC)的出现为嵌入式系统提供了新的解决方案。

SOPC将芯片上的各个功能模块集成在一个单一的芯片上,提高了系统的集成度和性能。

本文旨在探讨基于SOPC的嵌入式系统架构及其应用验证。

二、SOPC的嵌入式系统架构1. 硬件架构SOPC的嵌入式系统硬件架构主要包括处理器、存储器、接口和总线等部分。

其中,处理器是系统的核心,负责执行各种计算任务;存储器包括内存和外存,用于存储程序和数据;接口和总线用于连接各个硬件模块,实现数据的传输和交换。

2. 软件架构SOPC的嵌入式系统软件架构主要包括操作系统、中间件和应用软件等部分。

操作系统负责管理硬件资源,提供各种服务;中间件用于实现不同软件模块之间的通信和交互;应用软件则是根据具体应用需求开发的软件程序。

三、应用验证为了验证基于SOPC的嵌入式系统架构的有效性和可靠性,需要进行应用验证。

应用验证主要包括以下几个方面:1. 功能性验证功能性验证主要是验证系统的各项功能是否符合设计要求。

通过编写测试用例,对系统的各个功能进行测试,确保系统能够正常工作。

2. 性能验证性能验证主要是评估系统的性能指标,如处理速度、功耗等。

通过与同类产品进行对比,分析系统的性能优劣,为后续的优化提供依据。

3. 可靠性验证可靠性验证主要是通过模拟实际使用环境,对系统进行长时间的运行测试,以检验系统的稳定性和可靠性。

通过分析测试结果,找出潜在的问题和缺陷,为后续的改进提供依据。

四、应用领域及案例分析基于SOPC的嵌入式系统具有广泛的应用领域,如智能家居、工业控制、医疗设备等。

下面以智能家居为例,分析基于SOPC 的嵌入式系统的应用。

在智能家居系统中,SOPC的嵌入式系统负责控制各种智能设备的运行和通信。

通过与各种传感器和执行器相连,实现家居环境的智能监测和控制。

《基于SOPC的目标跟踪系统设计》范文

《基于SOPC的目标跟踪系统设计》篇一一、引言随着科技的不断进步,目标跟踪系统在众多领域中发挥着越来越重要的作用,如安防监控、自动驾驶、智能机器人等。

SOPC (System on a Programmable Chip,可编程芯片上的系统)作为一种集成了处理器、存储器、外设接口等功能的可编程系统,为设计高效、灵活的目标跟踪系统提供了良好的平台。

本文将详细介绍基于SOPC的目标跟踪系统设计,包括其设计思路、关键技术及实现方法。

二、系统设计思路基于SOPC的目标跟踪系统设计主要分为以下几个步骤:需求分析、硬件设计、软件设计及系统集成。

首先,需求分析是系统设计的第一步。

我们需要明确目标跟踪系统的应用场景、性能指标及功能需求。

例如,在安防监控领域,我们需要设计一个能够实时监测、追踪并识别异常目标的系统。

其次,硬件设计是系统设计的核心部分。

我们需要在SOPC 平台上选择合适的处理器、存储器、外设接口等硬件资源,并根据需求进行配置和优化。

此外,还需要考虑硬件的功耗、稳定性及可扩展性等因素。

然后,软件设计是系统设计的另一重要部分。

我们需要编写相应的算法程序,实现目标检测、特征提取、目标跟踪等功能。

同时,还需要考虑软件的实时性、鲁棒性及可维护性等因素。

最后,系统集成是将硬件和软件进行整合,形成一个完整的系统。

在系统集成过程中,我们需要对硬件和软件进行调试和优化,确保系统的性能和稳定性达到预期要求。

三、关键技术基于SOPC的目标跟踪系统设计涉及的关键技术主要包括目标检测、特征提取和目标跟踪。

目标检测是目标跟踪系统的第一步,其主要任务是在图像或视频中检测出目标的位置。

常用的目标检测方法包括基于模板匹配的方法、基于背景减除的方法等。

特征提取是目标跟踪的关键技术之一,其主要任务是提取出目标的特征信息,如颜色、形状、纹理等。

这些特征信息将被用于后续的目标跟踪和识别。

常用的特征提取方法包括基于灰度的方法、基于边缘的方法等。

SOPC实验指导书1

SOPC实验指导书钮文良韩玺编著北京联合大学信息学院2007年12月6日目录第1章SOPC实验系统介绍 (3)1.1 系统硬件平台设计 (3)1.2 系统软件实验开发 (7)1.3 SOPC系统实验介绍 (8)第2章SOPC基本概念与基本原理 (10)2.1 SOPC技术 (10)2.2 基于FPGA嵌入IP软核的SOPC系统 (11)2.3 SOPC设计 (13)第3章SOPC设计开发案例 (14)3.1 Nios控制LED实验 (14)3.2 构建比较复杂的Nios II系统实验 .................................. 错误!未定义书签。

3.3 SOPC下μC/OS II操作系统移植实验............................ 错误!未定义书签。

3.4 Nios II控制下的UART串行接口通信实验 .................. 错误!未定义书签。

3.5 底板8×8点阵LED图形实验 ......................................... 错误!未定义书签。

3.6 VGA&SVGA接口显示器彩条信号发生器实验............ 错误!未定义书签。

3.7 按键控制数码管计数器实验 ........................................... 错误!未定义书签。

3.8 信号发生器设计实验 ....................................................... 错误!未定义书签。

3.9 底板键盘控制SOPC实验板数码管实验 ....................... 错误!未定义书签。

3.10 4位按键控制下的LED、数码管SOPC计数实验...... 错误!未定义书签。

3.11 基于SOPC的128*64 LCD显示实验 .......................... 错误!未定义书签。

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

实验一一个简单的SOPC系统一、实验目的1.学习Quartus II、SOPC Builder、Nios II IDE的基本操作;2.初步了解SOPC的开发流程,基本掌握Nios II软核的定制流程;3.掌握Nios II软件的开发流程;掌握软件的基本调试方法。

二、实验内容1.建立用于控制LED闪烁的简单SOPC系统;三、实验环境1.硬件:PC机、EDA/SOPC/DSP实验系统;2.软件:Quartus II 8.0,SOPC Builder 8.0,Nios II IDE 8.0。

四、实验操作方法(一)实验前准备新建工作目录exp1;新建工程exp1并设置未使用管脚为三态输入。

(二)建立顶层模块新建一个Schematic文件,并命名为exp1.bdf。

(三)使用SOPC Builder创建Nios II系统1.在Quartus II集成开发环境中选择Tools→SOPC Builder选项启动SOPC Builder。

图1-1 启动SOPC BuilderSOPC Builder启动后,显示Create New System对话框,如图1-2所示,输入系统名为ledsystem,注意此系统名不能与顶层模块(BDF文件)的文件名同名,否则就不能在顶层模块中插入该系统模块。

选择目标硬件语言为VHDL,系统生成后,SOPC Builder输出所选语言的设计文件。

单击OK,进入SOPC Builder图形界面。

图1-2 创建新系统2.指定目标FPGA和时钟设置在Target选项区域中的Device Family下拉列表框中选择SOPC实验箱上的FPGA系列,本实验为Cyclone II。

设置时钟频率为50MHz,与系统实际运行的时钟频率相匹配。

图1-3 设置目标FPGA和时钟3.添加Nios II处理器内核Nios II支持3种类型的CPU,根据应用要求和目标FPGA中的器件约束(逻辑资源),选择适合的CPU核。

本实验选择Nios II/s。

图1-4 Nios II Core选项卡单击Next,在Instruction Cache和Data Cache下拉列表框中选择各自Cache的容量,本实验指定指令Cache为2KB,不使用数据Cache。

图1-5 Cache & Tightly Coupled Memories选项卡单击Next,出现Advanced Features选项卡,不改变其中的设置。

单击Next,出现MMU and MPU Settings选项卡,也不改变其中的设置。

单击Next,出现如图1-6所示的JTAG Debug Module选项卡。

JTAG调试模块根据功能的不同,共分为4级。

本实验选择“Level 1”,支持软件断点调试。

图1-6 JTAG Debug Module选项卡单击Next,出现Custom Instructions选项卡。

该选项卡用于设置用户定制的指令。

本实验不使用用户指定的指令,不改变其中的设置。

单击Finish完成Nios II处理器的配置,生成一个带有JTAG调试接口的Nios II/s型CPU核。

在激活的元件窗口中将出现名称为cpu 的内核,如图1-7所示,右击此内核,然后选择Rename,可将其重新命名。

图1-7 添加Nios II核后的窗口4.添加片内存储器在可用元件列表中,双击Memory and Memory Controllers下的On-Chip Memory ( RAM or ROM ),出现片内存储器配置向导,如图1-8所示,指定存储器为ROM型,容量为2KB。

图1-8 片内存储器配置向导不要改变其他任何默认设置,单击Finish,在激活元件窗口出现名称为onchip_memory 的片内存储器,将其重命名为onchip_ROM。

采用相同的方法,添加一个1KB的onchip_RAM。

5.添加PIO在可用元件列表中,双击Peripherals组件下Microcontroller Peripherals下的PIO,出现PIO配置向导,如图1-9所示。

图1-9 PIO配置向导本实验只需控制一个LED,因此设置PIO宽度为1,并将其设置为仅输出模式。

单击Finish,在激活的窗口中出现名称为pio的PIO,将其重命名为LED_PIO。

6.添加系统ID外设如果系统包括系统ID外设,那么SOPC Builder生成Nios II系统时,将为该系统生成一个标识符(ID号),该标识符会被写入System ID寄存器中,供IDE编译器和用户辨别所运行的程序是否与目标系统匹配。

在可用元件列表中,双击Peripherals组件下Debug and Performance下的System ID Peripheral,即添加了系统ID。

System ID没有用户可配置的选项,所以不出现配置向导。

7.指定基地址和中断请求优先级SOPC Builder提供自动分配外设基地址和中断优先级的命令,如图1-10所示,由于本实验中所有外设都没有中断,所以不需要进行中断优先级分配。

图1-10 自动分配基地址和中断优先级8.设置Nios II复位和异常地址双击活动窗口中的cpu,在Core Nios II 选项卡下设置系统的复位地址和异常向量地址。

本实验在系统上电后,从内部ROM开始运行,异常向量表放在内部RAM中。

具体设置如图1-11所示。

图1-11 设置复位地址和异常向量地址9.生成Nios II系统进行完上述步骤后,可以看到元件窗口如图1-12所示。

图1-12 系统组件图选择System Generation选项卡,单击Generate,系统生成开始。

生成过程一般需要几分钟,窗口会显示系统生成的过程。

当生成结束时,窗口中将显示一条消息“SUCCESS: SYSTEM GENERATION COMPLETED.”,如图1-13所示。

图1-13 系统成功生成将生成的系统保存后,单击Exit退出并返回到Quartus II软件。

(四)集成Nios II系统到Quartus II工程1.添加Nios II系统模块到Quartus II顶层模块由SOPC Builder生成Nios II系统时将输出一个ledsystem.bsf的文件,用添加元件的方法将ledsystem添加到顶层原理图中。

然后添加引脚和其他单元,最后生成的完整顶层模块图如图1-14所示。

图1-14 完整的顶层模块图2.分配FPGA 引脚。

3. 保存并完全编译硬件系统。

4. 将生成的exp1.sof 文件配置到目标FPGA 中,至此完成硬件系统的建立。

(五) 使用Nios II IDE 建立用户程序1. 启动Nios II IDE 。

2. 启动后选择File 下面的Switch Workspace 选项,将工作空间设置为前面建立的 Quartus II 工程的文件夹。

如图1-15所示。

图1-15 设置IDE 工作空间3. 如图1-16所示,选择【File 】››【New 】››【Nios II C/C++ Application 】来打开新 建C/C++工程向导,如图1-17所示。

图1-16 打开新建C/C++工程向导图1-17 新建C/C++工程向导4.单击Select Target Hardware右侧的Browse按钮打开Select Target Hardware窗口,选择ledsystem.ptf文件,即指向当前硬件设计系统,如图1-18所示。

图1-18 选择硬件目标文件5.选择Select Project Template列表中的hello_led。

Name栏中自动更新为hello_led_0,不选中Specify Location栏,使用其默认路径,如图1-19所示,单击Finish完成工程创建。

图1-19 完成设置后的工程向导向导中的Select Project Templates一栏中是已经设计好的软件工程,用户可以选择其中的一个,把它当作模板来创建自己的工程。

当然也可以选择Blank Project(空白工程),完全由用户写所有的代码。

本实验选取了hello_word工程,然后在此基础上进行适当的修改,一般情况下这比空白工程更加容易,也更方便。

创建工程后,在NiosⅡIDE工作台左侧的Nios II C/C++ Projects视图中显示两个新的工程:hello_word_0和hello_word_0_syslib。

hello_word_0是C/C++应用工程,而hello_word_0_syslib是描述ledsystem系统硬件细节的系统库。

打开hello_led.c,将其中的程序用下列程序清单替换,然后保存。

#include <stdio.h>#include"system.h"#include"altera_avalon_pio_regs.h"int alt_main (void){alt_u8 led = 1;alt_u32 i;while (1){led=1;IOWR_ALTERA_AVALON_PIO_DATA(LED_PIO_BASE, led);i = 0;while (i<5000000){i++;}led=0;IOWR_ALTERA_AVALON_PIO_DATA(LED_PIO_BASE, led);i=0;while (i<5000000){i++;}}return 0;}6.在Nios II IDE的Nios II C/C++ Projects选项卡中右击hello_world_0,在快捷菜单中选择System Library Properties。

如图1-20所示。

图1-20 系统库属性对话框该设置页包括有关程序与硬件相关的设置。

在Program memory下拉列表框中选择onchip_ROM,其余选择onchip_RAM,其他设置不变,单击OK返回IDE界面。

7.右击hello_world_0工程文件夹,选择Build Project来编译连接工程。

8.编译连接成功后,右击hello_world_0工程文件夹,选择Run As→Nios II Hardware 运行程序,也可以在菜单栏中选择Project→Run As→Nios II Hardware运行程序,将看到板上的LED指示灯不停闪烁。

注意,在目标板上运行程序前,要确保已经使用硬件系统对FPGA完成配置。

9.编译连接成功后,也可选择Debug As→Nios II Hardware来调试程序。

五、实验延伸及课后要求1.修改设计,使用PIO口控制8个LED进行流水灯显示。

2.撰写本次实验报告并在规定时间上交。

相关文档
最新文档