主要内容

开始使用针对英特尔SoC设备

这个例子展示了如何使用硬件软件合作设计工作流眨眼led在不同频率上的箭头®SoCKit®评估工具。

介绍

这个例子是一个循序渐进的指南,可以帮助你使用HDL编码器™软件生成一个定制的HDL IP核在箭头闪烁LED SoCKit评估工具,并展示了如何使用嵌入式程序员®生成C代码运行在ARM®处理器来控制LED闪烁频率。

您可以使用MATLAB®和Simulink®设计金宝app、模拟,并验证您的应用程序,执行与算法假定场景,和优化参数。你可以准备你的设计的硬件和软件实现的阿尔特拉气旋V SoC系统决定哪些元素将执行的可编程逻辑,并将运行在ARM cortex - a9系统元素。

使用这个示例中所示的引导工作流,您可编程序逻辑自动生成HDL代码使用HDL编码,生成C代码的手臂使用嵌入式编码器,并实现英特尔SoC的设计设备。

在这个工作流程中,您执行以下步骤:

  1. 设置您的英特尔SoC硬件和工具。

  2. 分区设计的硬件和软件实现。

  3. 生成一个使用高密度脂蛋白HDL IP核心工作流的顾问。

  4. IP核心融入一个英特尔英特尔SoC硬件转换频率的项目和计划。

  5. 生成一个软件界面模型。

  6. 从软件界面生成C代码模型和ARM cortex - a9处理器上运行它。

  7. 调整参数和捕获结果英特尔SoC硬件使用外部模式。

有关更多信息,请参阅其他更高级的例子,和高密度脂蛋白编码器和嵌入式编码文档。

需求

  1. 英特尔第四的总理,支持版本中列出金宝appHDL编码文档

  2. 英特尔SoC嵌入式设计套件

  3. 箭头SoCKit气旋V SoC评估工具

  4. 高密度脂蛋白编码器为金宝app英特尔SoC设备支持包

  5. 嵌入式编码器为英特尔SoC设备金宝app支持包

建立了英特尔SoC硬件和工具

1。设置箭头SoCKit评估工具如下图所示。了解更多关于箭头SoCKit硬件设置,请参阅文档。

1.1设置SW4开关(JTAG链选择)如下图所示。位置1:;职位2:。这个配置包括HPS JTAG链,绕过HSMC。

1.2设置JP2如下图所示调整FPGA的I / O标准/ HSMC别针。短销5和6设置I / O电压为2.5 v。

1.3设置J17——J19如上图所示,HPS从SD卡。J17:短针1和2;J18:短针1和2;J19:短针2和3。

1.4设置J15——J16如上图所示为HPS时钟设置。J15:短针2和3;J16:短针2和3。

1.5设置送回背面板如下图所示。这个开关设置FPGA配置模式。设置所有6的位置。

1.6你的电脑连接到USB UART连接器使用微型USB电缆。确保你的USB设备驱动程序,比如FTDI USB UART,安装正确。如果不是,在线搜索驱动程序并安装它们。

1.7连接你的电脑和箭头SoCKit董事会使用以太网电缆。

2。安装高密度脂蛋白编码器和嵌入式编码支持英特尔SoC设备包如果你没了。金宝app开始安装程序,去MATLAB将来发布并单击附加组件>有硬件支持包金宝app。有关更多信息,请参考金宝app支持包安装文档

3所示。确保您使用SD卡的图像提供的嵌入式编码为英特尔SoC设备支持包。金宝app如果你需要更新你的SD卡图片,请参考硬件设置部分这个文档。

4所示。设置箭头SoCKit硬件连接在MATLAB命令窗口输入以下命令:

h = alterasoc

alterasoc登录功能硬件通过串行通讯端口和运行ifconfig命令来获得董事会的IP地址。这个函数也测试以太网连接。

5。您可以选择使用以下配置测试串行连接使用一个程序(如腻子™。波特率:115200年;数据位:8;停止位:1;奇偶校验:没有一个;流控制:没有一个。你应该能够观察到Linux引导串行控制台登录时动力循环箭头SoCKit董事会。你必须在使用之前关闭这个串行连接alterasoc函数了。

6。设置英特尔第四的合成路径工具MATLAB命令窗口中使用以下命令。使用自己的第四的安装路径,当你运行该命令。

hdlsetuptoolpath (“ToolName”,“阿尔特拉第四的二世”,“路径”,“C: \ intelFPGA \ 18.0 \第四的\ bin64 \ quartus.exe);

分区设计的硬件和软件实现

英特尔SoC硬件软件合作设计工作流程的第一步是决定哪些部分你的设计来实现可编程逻辑,和哪些部分在ARM处理器上运行。

集团所有的块你想实现可编程逻辑原子子系统。这种原子子系统硬件软件分区的边界。所有模块在这个子系统将可编程逻辑上实现的,和所有的块外这个子系统将在ARM处理器上运行。

在这个例子中,子系统led_counter是硬件子系统。模型一个计数器,闪烁的led FPGA板。两个输入端口,Blink_frequencyBlink_direction、控制港口确定LED闪烁频率和方向。所有的块之外的子系统led_counter软件实现。

在仿真金宝app软件中,您可以使用滑块获得手动开关块调整硬件子系统的输入值。在嵌入式软件,这意味着ARM处理器控制生成的IP核心通过编写AXI接口访问寄存器。硬件子系统的输出端口,领导,连接到硬件。输出端口,Read_Back,可以用来读取数据处理器。

open_system (“hdlcoder_led_blinking_4bit”);

生成一个使用高密度脂蛋白HDL IP核心工作流的顾问

使用IP核心生成工作流在高密度脂蛋白工作流顾问可以自动生成一个可共享的和可重用IP核心模块从仿真软件模型。金宝app生成的IP核设计连接到嵌入式处理器的FPGA器件。高密度脂蛋白编码器从模型生成HDL代码块,和阿喜还生成HDL代码接口逻辑连接金宝app的IP核心的嵌入式处理器。HDL编码包所有生成的文件到一个IP核心文件夹。然后您可以生成的IP核与更大的FPGA嵌入式集成设计英特尔转换频率的环境。

1。启动IP核心代工作流。

1.1。打开HDL工作流的顾问hdlcoder_led_blinking_4bit / led_counter子系统通过右击led_counter子系统,并选择HDL代码>高密度脂蛋白工作流顾问

1.2。设定目标>设置目标设备和合成工具任务,为目标工作流程中,选择IP核心代

1.3。目标平台中,选择箭头SoCKit发展局。如果你没有这个选项,选择得到更多的打开安装程序支持包。金宝app在支持包安装程金宝app序,选择英特尔SoC支持包所提供的设备和按照说明安装程序来完成安装。

1.4。点击运行这个任务运行设置目标设备和合成工具的任务。

1.5设定目标>设置目标参考设计任务,选择默认的系统因为这个示例中,它是默认选中

1.6。点击运行这个任务运行设置目标参考设计的任务。

2。配置目标接口。

DUT的每个端口映射到IP核心目标接口之一。在本例中,输入端口Blink_frequencyBlink_direction被映射到AXI4接口,所以高密度脂蛋白编码器生成AXI接口访问的寄存器。的领导输出端口映射到一个外部接口,led通用(0:3)连接硬件英特尔SoC董事会领导。

2.1设定目标>设置目标接口任务,选择AXI4Blink_frequency,Blink_direction,Read_back

2.2选择led通用(0:3)领导

2.3设定目标>设置目标频率任务,选择50 MHz的频率作为目标

3所示。生成IP核。

生成的IP核心,右键单击生成RTL代码和IP核心任务和选择选择任务运行

4所示。生成并查看IP核心报告。

在您生成自定义的IP核之后,IP核心文件ipcore文件夹在您的项目文件夹。HTML生成定制的IP核报告一起定制的IP核。这份报告描述的行为和内容生成定制的IP核。

与英特尔集成IP核心转换频率的环境

在这个工作流的一部分,您将生成的IP核心插入嵌入式系统参考设计,生成一个FPGA比特流,下载比特流到英特尔SoC硬件。

参考设计是一个预定义的英特尔项目转换频率。它包含的所有元素的英特尔软件需要你的设计部署到英特尔SoC设备,除了生成自定义的IP核和嵌入式软件。

1。与英特尔集成转换频率环境,选择创建项目下任务嵌入式系统集成,然后单击运行这个任务。一个英特尔转换频率的项目和一个英特尔第四的项目生成,与项目对话框窗口中提供的链接。您可以选择打开项目看一看。

2。如果你有嵌入式编码人员许可,您可以生成一个软件界面模型的下一个任务,生成软件界面模型。软件界面模型的细节在下一节中解释的这个例子中,“生成软件界面模型”。

3所示。构建的FPGA比特流构建FPGA比特流的任务。确保外部运行构建过程选项是检查,所以英特尔合成从MATLAB工具将运行在一个单独的进程。等待合成工具完成外部命令窗口中运行的过程。

4所示。比特流生成后,选择项目目标设备的任务。选择下载编程方法下载FPGA比特流到英特尔SoC的SD卡,所以你的设计将会自动重新加载时动力循环英特尔SoC。点击运行这个任务英特尔SoC硬件编程的知识。

你程序FPGA硬件后,在你的英特尔SoC董事会领导开始闪烁。

接下来,您将生成C代码运行在ARM处理器来控制LED闪烁频率和方向。

生成一个软件界面模型

在高密度脂蛋白工作流顾问,在您生成的IP核心并将其插入到转换频率参考设计,您可以选择生成软件界面模型嵌入式系统集成>生成软件界面模型的任务。

软件界面模型包含您的设计在软件运行的一部分。它包括所有的块之外的HDL子系统,取代了HDL子系统和阿喜驱动程序块。如果你有嵌入式编码人员许可,您可以自动生成嵌入式代码从软件界面模型,在Linux上构建和运行可执行在ARM处理器上。生成的嵌入式软件包括AXI驱动代码,生成从AXI驱动块,控制高密度脂蛋白的IP核心。

运行生成软件界面模型任务,生成一种新的模式。任务对话框显示了模型的链接。

在生成的软件界面模型,“led_counter”子系统被替换为AXI驱动程序块产生ARM处理器和FPGA之间的接口逻辑。

英特尔SoC硬件上运行软件界面模型

在工作流的这一部分中,您将配置生成的软件接口模型,自动生成嵌入C代码,在ARM处理器上运行您的模型在英特尔SoC硬件在外部模式。

原型设计和开发一个算法,它是有用的监视和优化算法在硬件上运行。外部模式特性仿真软件支持此功能。金宝app在这种模式下,你的算法首先部署到ARM处理器在英特尔SoC硬件,然后与仿真软件模型主机通过以太网连接。金宝app

仿真软件模型的主要作用是调整和监控算法在硬金宝app件上运行。由于ARM处理器连接到高密度脂蛋白IP核心通过AXI接口,您可以使用外部模式来优化参数,从FPGA和捕获数据。

  1. 在生成模型,打开配置参数对话框。

  2. 选择解算器和“停止时间”设置为“正”。

  3. 硬件菜单,点击监视和优化按钮在模型将来发布在ARM处理器上运行您的模型在英特尔SoC硬件在外部模式。嵌入式程序员构建模型,英特尔SoC硬件下载臂可执行,执行它,连接模型英特尔SoC硬件上运行的可执行文件。

  4. 双击滑块获得块。更改滑块增益值,观察LED阵列的闪烁频率的变化对英特尔SoC硬件。双击手动开关块开关闪烁led的方向。

  5. 双击连接范围Read_back输出端口的输出数据和观察到FPGA IP核心捕获和发送回模型范围。金宝app

  6. 当你完成改变模型参数,单击停止按钮上的模型。观察系统命令窗口中打开前一步表明,模型已经停止了。在这一点上,你可以关闭系统命令窗口。

总结

这个例子展示了硬件和软件共同设计工作流帮助自动化部署英特尔SoC的MATLAB和Simulink设计设备。金宝app你可以探索的最佳方法分区和部署您的设计通过遍历工作流。

下面的图显示了高层工作流的照片你经历了在这个例子。了解更多关于硬件和软件共同设计工作流程,请参考HDL编码文档