02体验FPGA开发流程

这篇具有很好参考价值的文章主要介绍了02体验FPGA开发流程。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

FPGA 开发流程

标准的 FPGA 开发流程主要有以下几个步骤:
02体验FPGA开发流程,FPGA开发入门,fpga开发

  • 需求分析:做一个项目之前,首先需要对项目需求进行详细分析,弄明白项目所需要实现的功能
  • 系统设计:根据项目所需的功能进行系统架构设计,架构设计主要是确定将系统分为子模块,模块之间数据流怎么走,控制流怎么走,以及计算系统运行的带宽和评估系统的工作频率
  • 硬件选型:根据系统架构选择合适规模和性能的 FPGA 芯片,FPGA 器件选型是一个综合性的工作,和项目成本、FPGA 容量和性能、FPGA 器件熟悉程度等都有关系(这个步骤在学习时不会遇到,但是在实际做产品时会遇到)。
  • 绘制系统框图:确定系统内各个子模块的结构层次,梳理系统对外的输入输出信号和子模块之间的交互信号
  • 绘制波形图:根据该模块的功能并且结合芯片的数据手册或者接口协议,确定模块接口信号的时序关系,然后使用绘图软件绘制各个模块的时序波形图
  • 创建vivado工程:使用 FPGA 开发平台新建工程
  • 编写代码:使用代码编辑软件严格按照上面的波形图编写各模块的代码(可以使用FPGA 开发平台自带的编辑器,也可以使用外部编辑器)
  • 软件仿真:按照代码的输入激励需求,编写对应的仿真代码,然后使用仿真工具对编写的代码进行仿真
  • 分析与综合:对工程进行综合编译,通过观察综合编译生成的报告可以帮助避免最常见的设计错误,以便对设计进行分析和改进
  • 约束输入: 在 FPGA 开发平台对工程引脚进行约束,引脚约束完成后就可以进行布局布线与生成下载文件
  • 设计实现:就是工程布局和布线的过程,它的作用是将综合生成的逻辑网表配置到具体的 FPGA芯片上。布局布线完成后,就可以生成下载文件了,下载文件生成成功就可以进行下一步的上板验证
  • 上板验证及调试:连接好开发板与下载器,将生成的下载文件通过下载器下载到开发板,然后观察开发板的实物运行是否正常,如果上板实验现象正常。
    在开发过程中如果某一个步骤发现了问题可能需要返回到前面对应步骤,这样不断迭代,最终完成FPGA项目的开发

FPGA 工程管理

从上面的 FPGA 的开发流程可知,在 FPGA 开发的过程中会产生很多不同功能的文件,为了方便随时查找到对应文件,所以在开始开发设计之前对文件进行分类,便于后期后期文件的查找、管理、移植。在整个开发过程中注意会生成4种文件:

  • 开发过程中使用的辅助文档文件,如绘图软件绘制的波形图文件、一些重要的项目参考资料等
  • vavido工程文件,通过vavido工具创建工程时生成的文件,以及相应的约束文件
  • 软件代码,用于实现项目功能的代码,之所以把他单独从vavido工程文件中提出来的原因是因为我们要用第三方的仿真工具对代码进行仿真
  • 仿真工程与仿真文件,创建仿真工程时生成的文件,以及用于测试产品代码的仿真代码
    在正式开始一个项目前需要规划好相应的目录来存储相应的项目文件,如下是我的LED项目文件夹结构
    02体验FPGA开发流程,FPGA开发入门,fpga开发
    doc文件夹:存储开发过程中使用的辅助文档文件,如绘图软件绘制的波形图文件、一些重要的项目参考资料等
    project文件夹:存储vavido工程文件
    RTL文件夹:存储用于实现项目功能的代码,因为开发和仿真分别用不同的软件,所以源代码单独存放一个目录
    sim文件夹:存储仿真工程与仿真文件

按键控制LED

这里以一个简单的按键控制LED的项目来熟悉FPGA开发流程

需求分析

使用正点原子达芬奇 Pro 开发板上的 KEY0 按键来控制 LED0 灯亮灭。当按键 KEY0 被按下时,LED0 灯被点亮,当按键 KEY0 被弹起时,LED0 灯被熄灭。

硬件介绍

发光二极管的原理图如下所示,发光二极管LED0阴极连到 S8050(NPN三极管)的集电极上,阳极通过电阻与 3.3V 电压相连,三极管的基极与 FPGA 的V9脚相连。可以通过改变三极管的状态来控制 LED 的亮灭,当 FPGA 输出到为高电平时,三极管导通,LED 灯亮,当 FPGA 输出到为低电平时,三极管截止,LED 灯灭。
02体验FPGA开发流程,FPGA开发入门,fpga开发
02体验FPGA开发流程,FPGA开发入门,fpga开发
按键原理图如下所示,K0按键一端连接到FPGA的T4脚,另一端连接到地,同时FPGA的T4脚又通过电阻连接到1.5V电源,当按键按下时FPGA的T4脚通过按键与地相通,为低电平,当按键松开时FPGA的T4脚通过电阻与1.5v电源相通,为高电平。
02体验FPGA开发流程,FPGA开发入门,fpga开发02体验FPGA开发流程,FPGA开发入门,fpga开发

系统设计

因为按键控制LED非常简单,只需要一个模块就可以实现功能,所以本实验不需要模块划分、模块间交互信号梳理的步骤。

绘制系统框图

按键控制LED的系统框图如下:
02体验FPGA开发流程,FPGA开发入门,fpga开发
模块端口描述

----------------------------------
信号名	|位宽	|方向	|端口说明	
----------------------------------
KEY		|1		|输入	|按键
----------------------------------
LED		|1		|输出	|LED
----------------------------------

绘制波形图

按键按下时为低电平,弹起时为高电平,而LED却是高电平点亮,低电平熄灭,所以按键和LED的真值表如下:

-----------------
输入	|输出	|	
-----------------
KEY		|LED	|
-----------------
1		|0		|
-----------------
-----------------
0		|1		|
-----------------

所以按键控制LED的波形图(时序图)如下:
02体验FPGA开发流程,FPGA开发入门,fpga开发

创建Vivado工程

  1. 双击Vivado图标,打开Vivado软件
    02体验FPGA开发流程,FPGA开发入门,fpga开发
  2. 在Vivado软件选择Create Project创建工程
    02体验FPGA开发流程,FPGA开发入门,fpga开发
  3. 直接点击Next
    02体验FPGA开发流程,FPGA开发入门,fpga开发
  4. 输入工程名称(这里工程名称为led),选择存储路径(存储路径为LED项目下的projict文件夹),取消默认勾选了的Create Project subdirectory选项,然后点击Next,工程名称和路径均不能又中文等特殊字符,尽量使用英文、数字和下划线
    02体验FPGA开发流程,FPGA开发入门,fpga开发
  5. 选择RTL Project,然后点击Next
    02体验FPGA开发流程,FPGA开发入门,fpga开发
  6. 先不添加源代码文件,直接点击Next,后续在创建好的工程中添加
    02体验FPGA开发流程,FPGA开发入门,fpga开发
  7. 先不添加约束文件,直接点击Next,后续在创建好的工程中添加
    02体验FPGA开发流程,FPGA开发入门,fpga开发
  8. 选择芯片信号为xc7a35tfgg484-2,然后点击Next
    02体验FPGA开发流程,FPGA开发入门,fpga开发
  9. 点击Finish完成创建
    02体验FPGA开发流程,FPGA开发入门,fpga开发
  10. 创建完成后Vivado会自动打开工程
    02体验FPGA开发流程,FPGA开发入门,fpga开发

编写代码

  1. 点击Vivado工程界面sources区域的加号打开添加/创建文件的向导
    02体验FPGA开发流程,FPGA开发入门,fpga开发
  2. 在向导中选择Add or create degsign sources,然后点击Next
    02体验FPGA开发流程,FPGA开发入门,fpga开发
  3. 点击Create File
    02体验FPGA开发流程,FPGA开发入门,fpga开发
  4. 文件名为led,代码路径工具需求选择(存储路径为led项目下的RTL文件夹),完成后点击Ok
    02体验FPGA开发流程,FPGA开发入门,fpga开发
    02体验FPGA开发流程,FPGA开发入门,fpga开发
  5. 然后点击Finish完成设计文件创建
    02体验FPGA开发流程,FPGA开发入门,fpga开发
  6. 在弹出的模块端口定义窗口中选择OK,可能会弹出对话框,若弹出也点OK
    02体验FPGA开发流程,FPGA开发入门,fpga开发
  7. 此时在sources的design sources下多了一个led文件
    02体验FPGA开发流程,FPGA开发入门,fpga开发
  8. 双击led文件,在编辑区中打开此文件
    02体验FPGA开发流程,FPGA开发入门,fpga开发
  9. 在led文件中输入如下内容,然后按CTRL + S保存
`timescale 1ns / 1ps	//仿真单位/仿真精度
//
// Company: 
// Engineer: 
// 
// Create Date: 2024/01/21 20:41:05
// Design Name: 
// Module Name: led
// Project Name: 
// Target Devices: 
// Tool Versions: 
// Description: 
// 
// Dependencies: 
// 
// Revision:
// Revision 0.01 - File Created
// Additional Comments:
// 
//

module led(                     
    input     key , //输入按键
    
    output    led   //输出led灯
);

//*****************************************************
//**                  main code
//*****************************************************

//上电按键默认高电平,led灯保持常灭
//按键被按下,按键值为低电平,led灯被点亮
assign led = ~key;    //将按键的值取反后赋值给led灯

endmodule

软件仿真

对 代码进行仿真之前,首先要编写对应的仿真文件(TestBench),TestBench 是用于验证功能模块的设计是否符合预期,其内容主要分为以下三个部分:

  • 向被测功能模块的输入接口添加激励
  • 对被测功能模块的顶层接口进行信号例化
  • 判断被测功能模块的输出是否满足设计预期
  1. 在LED项目文件夹下创建sim文件夹,用于存储仿真工程相关的文件,然后在sim文件夹下在创建td文件夹,用于存储TestBench文件,最后在tb文件夹中创建tb_led.v文件,用于编写测试所需的代码
    02体验FPGA开发流程,FPGA开发入门,fpga开发
  2. 打开tb_led.v文件,添加如下内容,然后进行保存
`timescale 1ns / 1ns        //仿真单位/仿真精度

module tb_led();

//reg define
reg           key;
//wire define
wire          led;

//信号初始化
initial begin
    key <= 1'b1;   //按键上电默认高电平

//key信号变化
    #200           //延迟200ns
    key <= 1'b1;   //按键没有被按下
    #1000  
    key <= 1'b0;   //按键被按下
    #600  
    key <= 1'b1;
    #1000  
    key <= 1'b0;
end

//例化led模块
led  u_led(
    .key          (key),
    .led          (led)
    );

endmodule
  1. 打开 Modelsim 工具来新建仿真工程双击桌面上的 Modelsim 软件图标,打开 Modelsim 软件
    02体验FPGA开发流程,FPGA开发入门,fpga开发
  2. 在 modelsim 中建立 Project,选择 File->New->Project
    02体验FPGA开发流程,FPGA开发入门,fpga开发
  3. 输入工程名称tb_led,选择工程路径为LED项目文件夹下创建sim文件夹
    02体验FPGA开发流程,FPGA开发入门,fpga开发
  4. 添加RTL代码和TestBench代码
    02体验FPGA开发流程,FPGA开发入门,fpga开发
    02体验FPGA开发流程,FPGA开发入门,fpga开发
    如果文件加多了可以选中文件,点击鼠标右键,在右键菜单中选择Remove from Project
    02体验FPGA开发流程,FPGA开发入门,fpga开发
    如果文件没添加完可以点击鼠标右键,选择Add to Project-》Existing File…添加文件
    02体验FPGA开发流程,FPGA开发入门,fpga开发
    文件添加完后如下所示
    02体验FPGA开发流程,FPGA开发入门,fpga开发
  5. 添加完成后就开始进行仿真文件编译了,编译的方式有两种:Compile Selected(编译所选)和Compile All(编译全部)。编译所选功能需要先选中一个或几个文件,执行该命令可以完成对选中文件的编译;编译全部功能不需要选中文件,该命令是按文件排列顺序对工程中的所有文件进行编译。这里选择全部编译
    02体验FPGA开发流程,FPGA开发入门,fpga开发
    编译通过后status会显示“√”表示的通过,如果出现了其他状态则需要根据编译提示修改代码
    02体验FPGA开发流程,FPGA开发入门,fpga开发
  6. 接下来配置仿真环境,在 ModelSim 菜单栏中找到**Simulate-》Start Simulation…**菜单并点击
    02体验FPGA开发流程,FPGA开发入门,fpga开发
    会弹出如下界面
    02体验FPGA开发流程,FPGA开发入门,fpga开发
    们在 Design 标签页面中选择 work 库中的 tb_led 模块,在 Optimization 一栏中勾选“Enable optimization”,然后点击右下角的“Optimization Options…”,在弹出的窗口中选择“Apply full visibility to all modules(full debug mode)”选项,成后依次点击两个窗口的“OK”进入仿真页面
    02体验FPGA开发流程,FPGA开发入门,fpga开发
    02体验FPGA开发流程,FPGA开发入门,fpga开发
  7. 鼠标右键单击“u_led”,选择“Add Wave”选项,将需要观察的信号添加波形图窗口中
    02体验FPGA开发流程,FPGA开发入门,fpga开发
    如果添加多了可在波形图窗口中选中需要信号,然后点击鼠标右键依次选择Edit-》Delete将其删除
    02体验FPGA开发流程,FPGA开发入门,fpga开发
  8. 开始进行仿真,仿真可通过以下几个控件来操作
    02体验FPGA开发流程,FPGA开发入门,fpga开发
    上图红框中的控件从左往右依次是:
  • 复位仿真
  • 设置仿真时间,此次仿真时间设置为10ns
  • 运行仿真,配合设置仿真时间一起使用,会按照设置仿真时长进行仿真
  • 继续仿真,在停止仿真后需要继续运行仿真,可以使用继续仿真按钮
  • 一直仿真,点击仿真复位后,再点击一直仿真,仿真会一直运行,直到点击 Stop 停止仿真
  • 中断当前编译或者仿真
  • 在下一步或者下一时间之前停止仿真
    点击运行仿真后的结果如下图所示,与真值表相符,仿真符合预期
    02体验FPGA开发流程,FPGA开发入门,fpga开发
    在工程波形时可以用下列控件缩放波形
    02体验FPGA开发流程,FPGA开发入门,fpga开发
    还可以使用下列控件来标记波形
    02体验FPGA开发流程,FPGA开发入门,fpga开发

分析与综合

接下来就可以在vivado中进行分析与综合了。

  1. 点击“Flow Navigator”窗口中的“Open Elaborated Design”按钮
    02体验FPGA开发流程,FPGA开发入门,fpga开发
    弹出来的对话框选择OK
    02体验FPGA开发流程,FPGA开发入门,fpga开发
    此时,Vivado 会编译 RTL 源文件并进行全面的语法检查
  2. 分析完成后Vivado 会在Messages窗口中给出相应的“Error”和“Warning”,如果没有错误还会新增了 Schematic(原理图)、Netlist(网表)等窗口
    02体验FPGA开发流程,FPGA开发入门,fpga开发
  3. 接下来点击“Flow Navigator”窗口中的“Run Synthesis”按钮钮,来对代码进行综合
    02体验FPGA开发流程,FPGA开发入门,fpga开发
    在弹出的窗口中选择OK即可
    02体验FPGA开发流程,FPGA开发入门,fpga开发
    这时可以看到在“Project Summary”窗口中显示正在综合
    02体验FPGA开发流程,FPGA开发入门,fpga开发
  4. 综合完成后会弹出如下窗口,选择cancel即可
    02体验FPGA开发流程,FPGA开发入门,fpga开发

约束输入

  1. 点击“Sources”窗口中的“+”号,在弹出的窗口中选择“Add or create constraints”,然后点击Next
    02体验FPGA开发流程,FPGA开发入门,fpga开发
  2. 然后再点击“Create File”,在弹出的新窗口中的File name中输入led,再点击OK
    02体验FPGA开发流程,FPGA开发入门,fpga开发
  3. 再点击Finish完成创建
    02体验FPGA开发流程,FPGA开发入门,fpga开发
  4. 此时再“Sources”窗口的Constraints-》constrs 1下多了一个led.xdc的文件
    02体验FPGA开发流程,FPGA开发入门,fpga开发
  5. 双击打开led.xdc文件,输入如下内容,完成后进行保存
    02体验FPGA开发流程,FPGA开发入门,fpga开发
#IO 管脚约束
set_property -dict {PACKAGE_PIN T4 IOSTANDARD LVCMOS15} [get_ports key]
set_property -dict {PACKAGE_PIN V9 IOSTANDARD LVCMOS15} [get_ports led]

设计实现

  1. 点击“Flow Navigator”窗口中的“Run Implementation”按钮
    02体验FPGA开发流程,FPGA开发入门,fpga开发
    在弹出的界面中直接点击 OK 即可
    02体验FPGA开发流程,FPGA开发入门,fpga开发
  2. 实现完成后会弹出如下提示窗口,选择cancel即可
    02体验FPGA开发流程,FPGA开发入门,fpga开发

上板验证及调试

在下载程序之前,首先要先生成用于下载到器件中的比特流文件,该文件的后缀为“.bit”。

  1. 点击“Flow Navigator”窗口中的“Generate Bitstream”按钮,如下图所示
    02体验FPGA开发流程,FPGA开发入门,fpga开发
    在弹出的窗口中直接点击 OK
    02体验FPGA开发流程,FPGA开发入门,fpga开发
  2. 比特流生成完毕之后,Vivado 会弹出提示窗口,如下图所示
    02体验FPGA开发流程,FPGA开发入门,fpga开发
  3. 接下来点击“Flow Navigator”窗口中的“Open Hardware Manager”按钮
    02体验FPGA开发流程,FPGA开发入门,fpga开发
  4. 接着Vivado 就会打开 Hardware Manager,然后点击“Hardware Manager”子窗口中的“Auto Connect”按钮,再进行此步前需要对开发板进行上电,然后把仿真器连接到开发程序所用PC
    02体验FPGA开发流程,FPGA开发入门,fpga开发
  5. 在“Hardware Manager”子窗口中出现如下界面就表示 Vivado 就已经和板子连接成功了
    02体验FPGA开发流程,FPGA开发入门,fpga开发
  6. 选中xc7a35t_0,点击鼠标右键,再右键菜单中选择“Program Dewice…”,打开程序下载界面
    02体验FPGA开发流程,FPGA开发入门,fpga开发
  7. 再程序下载界面中选择刚才生成的bit文件(默认会选择好),然后点击OK
    02体验FPGA开发流程,FPGA开发入门,fpga开发
  8. 程序下载完成后,按下key0时led亮,松开时led灭,调试符合预期

程序固化

需要让程序每次开机能自动运行则需要对其进行固化文章来源地址https://www.toymoban.com/news/detail-820267.html

  1. 序约束文件中加入如下内容,添加这段原语的目的主要是为了让生成的 bit 流文件转换成固化文件后能够适用于 4bit 位宽的 SPI flash器件
set_property CFGBVS VCCO [current_design]
set_property CONFIG_VOLTAGE 3.3 [current_design]
set_property BITSTREAM.GENERAL.COMPRESS true [current_design]
set_property BITSTREAM.CONFIG.CONFIGRATE 50 [current_design]
set_property BITSTREAM.CONFIG.SPI_BUSWIDTH 4 [current_design]
set_property BITSTREAM.CONFIG.SPI_FALL_EDGE Yes [current_design]
  1. 添加完成后点击Flow Navigator的Generate Bitstream重新生成bit文件。
    02体验FPGA开发流程,FPGA开发入门,fpga开发
  2. 工具栏找到 Tools,打开扩展框然后点击 Generate Memory Configuration File。
    02体验FPGA开发流程,FPGA开发入门,fpga开发
  3. 再器件编辑选项框(Create a configuration file to Program the device)按如下图进行配置,配置完成后点击OK
    02体验FPGA开发流程,FPGA开发入门,fpga开发
    Format:指的生成文件的格式,这里选择生成 MCS 文件
    Custom Memory Size(MB):指的是所用 flash 的容量大小,这里选 16(根据 flash 手册决定)
    Filename:这里编辑生成的 mcs 文件名称(包括路径),可以通过右边的三个点按钮选择 mcs 文件保存路径
    Interface:指的是所用 flash 的通信方式,这里选 SPIx4(根据flash芯片手册和原理图确定)
    Load bitstream files:这个选项勾上,然后添加你要生成 mcs 文件的原文件
    Write checksum:写校验
    Disable bit swapping:禁止位交换
    Overwrite:覆盖原文件
    Command:上面的配置所对应的tcl命令
  4. 生成完成后会出现下图提示信息,点击 OK 就行
    02体验FPGA开发流程,FPGA开发入门,fpga开发
  5. 点击Flow Navigator的Open Hardware Manager
    02体验FPGA开发流程,FPGA开发入门,fpga开发
  6. 再HARDWARE MANAGER 页面中点击自动连接图标,连接硬件,需要向给板子上电,然后将下载器连接到电脑
    02体验FPGA开发流程,FPGA开发入门,fpga开发
  7. 们选中器件 xc7a35t_0,点击右键,在弹出的菜单中选择Add Configuration Memory Device…
    02体验FPGA开发流程,FPGA开发入门,fpga开发
  8. 再弹出的界面中选择flash型号,可以通过上面的筛选条件进行过滤,这里选择 mt25ql128-spi-x1_x2_x4,然后点击 OK
    02体验FPGA开发流程,FPGA开发入门,fpga开发
  9. 完成后会出现下图所示的询问栏,点击 OK即可
    02体验FPGA开发流程,FPGA开发入门,fpga开发
  10. 然后会弹出烧写界面,选择对应的mcs文件和prm文件后点击OK,就开始进行烧写了
    02体验FPGA开发流程,FPGA开发入门,fpga开发
  11. 烧写完成后会会出现如下提示框,点击 OK即可
    02体验FPGA开发流程,FPGA开发入门,fpga开发
  12. 此时给板子重新上电则运行刚才烧写的程序
  13. 对于已经配置好的flah可以选中对应的flash点击鼠标右键,再弹出的菜单中选择Program Configuration Memory Device…打开烧写界面
    02体验FPGA开发流程,FPGA开发入门,fpga开发

到了这里,关于02体验FPGA开发流程的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • FPGA的基本开发流程

    FPGA是一种可编程逻辑器件,与传统的硬连线电路不同,它具有高度的可编程性和灵活性。FPGA的设计方法包括硬件设计和软件设计两部分,硬件设计包括FPGA芯片电路、存储器、输入输出接口电路等等,软件设计则是HDL程序开发,以及软硬件的联调。 本文主要介绍FPGA设计的基

    2024年04月13日
    浏览(47)
  • FPGA开发基本流程详解

    FPGA是一种可编程逻辑器件,与传统的硬连线电路不同,它具有高度的可编程性和灵活性。FPGA的设计方法包括硬件设计和软件设计两部分,硬件设计包括FPGA芯片电路、存储器、输入输出接口电路等等,软件设计则是HDL程序开发,以及软硬件的联调。 本文主要介绍FPGA设计的基

    2024年02月05日
    浏览(37)
  • 在fpga上开发音视频是一种什么体验?

    今天周末回公司解决了解码播放问题,最近周末也没啥事情,一般周六都会过去公司学习音视频开源项目(过去公司,主要是住的近,所以很方便!),待在家里也是无聊,所以就回去看开源项目,提升自己的视野和水平! 然后这里也分享一些关于音视频开发的一些感悟和日记

    2024年02月08日
    浏览(48)
  • Xilinx FPGA开发环境vivado使用流程

    第一步:点击Add Sources按钮 第二步:选择add or create design sources按钮,即添加设计文件 第三步:选择create file 文件新建完成后: 此时可以定义I/O端口,我们选择自己在程序中编写。 第四步:在编辑器中编写verilog程序 XDC文件里主要是完成管脚的约束,时钟的约束,以及组的约

    2024年02月03日
    浏览(62)
  • SOC FPGA介绍及开发设计流程

    目录 一、SoC FPGA简介 二、SoC FPGA开发流程 2.1 硬件开发 2.2 软件开发          SOC FPGA是在FPGA架构中集成了基于ARM的硬核处理器系统(HPS),包括处理器、外设和存储器控制器。 相较于传统的仅有ARM处理器或 FPGA 的嵌入式芯片,SOC FPGA既拥有ARM处理器灵活高效的数据运算和事务

    2024年02月15日
    浏览(43)
  • 【FPGA】Vivado开发流程(基于2018.3版本)

    基本流程:①设计定义 ②设计输入 ③分析综合 ④功能仿真 ⑤布局布线 ⑥分析性能   双击 Vivado图标即可启动 Vivado 软件。 ①Quick Start 组包含有 Create Project(创建工程) Open Project(打开工程)OpenExample Project(打开实例工程)。 ②Tasks 组包含有 Manage IP(管理 IP) Open Hardw

    2024年02月14日
    浏览(41)
  • 时序违例在FPGA开发流程的分析及解决,结合实际工程

    时序违例的解决可以分为几个阶段,布局前,布线前,布线后。我们从这几个阶段对时序违例进行分析以及提出解决方法。(参考ug1292和ug949)。时序违例包括建立时间违例和保持时间为例,主要关注建立时间违例,保持时间违例是由于组合逻辑太短和时钟偏移造成的,可以

    2024年02月12日
    浏览(47)
  • 【FPGA-DSP】第二期:DSP开发流程【全过程】

    目录 1. System Generator安装 1.1 system generator的安装 1.1.1 vivado安装System Generator 1.1.2  System Generator配置 1.3 启动 2. FPGA-DSP开发流程 2.1 FPGA-DSP 开发流程介绍 2.2 FPGA-DSP 实际开发流程 1. 软件启动  2. matlab编写 3. Simulink仿真  Simulink输入信号 乘法器   时延器 累加器 输出示波器设置

    2024年02月11日
    浏览(45)
  • 想学 fpga 开发该怎么入门?

    个人根据自己的一些心得总结一下fpga 需要掌握的基础知识,希望对你有帮助。 知识点: 1、数电(必须掌握的基础),然后进阶学模电, 2、掌握HDL(verilog或VHDL)一般建议先学verilog,然后可以学System Verilog和VHDL。 3、掌握FPGA设计流程/原理(推荐教材:FPGA权威指南、Altera

    2024年03月12日
    浏览(45)
  • FPGA_ZYNQ (PS端)开发流程(Xilinx软件工具介绍)

            针对不同的应用领域,Xilinx 公司设计开发了各种逻辑资源规模和集成各 种外设功能的Zynq SOC器件,包括专为成本优化的Zynq-7000平台,面向高性 能实时计算应用领域的 Zynq UltraScale+ MPSoC,面向射频通信的 ZynqUltraScale+ RFSoC,以及具备高度可扩展特性的自适应加速平台

    2024年01月16日
    浏览(65)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包