FPGA Verilog视频笔记

最近抽空看了不少教学视频,简单整理一下

USB、以太网UDP通信虽然复杂,但是有专门芯片,具体FPGA代码就比较简单

SD卡、SDRAM较为复杂,但完全由FPGA驱动,相比之下代码就比较复杂

1_开发板综合测试(带GUI界面显示)_哔哩哔哩_bilibili

3 初识FPGA
1 FPGA是什么:与单片机异同、厂商、优势
2 应用领域及前景:通信、算法、嵌入式、前沿科技--5G无线、自动驾驶、AI、云计算
3 内部结构:框图


4 开发流程:流程图

4    开发板资源介绍

 电源:适配器、USB(小功率)、排针

CAN、WIRELESS、SD卡、IO、RGB TFT LCD、晶振、JTAG、USB转串口、32Mbyte SDRAM、数码管、喇叭、OLED 摄像头接口、光传感器、蜂鸣器、红外接收头、RTC时钟、单总线接口、LED、按键、电池、AD DA、音频输入输出、以太网、485、232、VGA、MCU LCD、FPGA、FLASH、EEPROM

​​​​​​6_软件篇_Quartus II 软件的使用

1 简介:Altera专用

2 开发流程:新建工程、设计输入、配置工程、分析综合、分配引脚、编译工程得到sof

3 流水灯实例:创建文件夹层次、新建工程、选择芯片型号、新建代码文件、编写代码、分析综合、Tab设置为4个字符   禁止保存备份文件、双用途引脚设置、分配引脚(对应qsf文件,也可直接修改qsf)、编译、下载sof(片内RAM,断电丢失)、sof转为jic、下载jic  擦除flash

​​​​​​P7_软件篇_SignalTap II软件的使用

1 简介:片上调试软件、内嵌逻辑分析仪;缺点--消耗FPGA资源

2 实例:打开qpf工程、打开signaltap;选择综合前信号、选择时钟、采样深度、保存为stp文件;编译、下载、采集波形;常用用法--触发方式、数据类型显示;禁止signaltap 节约资源 

P10_软件篇_Modelsim软件的使用_手动仿真

以流水灯为例,视频演示了完整的仿真过程,还有各种常用操作和设置

好久不用,直接看一遍视频就行

Modelsim工程后缀 .mpf

建立仿真工程-->添加文件-->编译通过-->开始仿真-->添加波形-->仿真

restart -f   run 5us  变量本身没有变化,修改文件且编译后快速重新仿真

功能仿真如下

时序仿真:拷贝网表文件.vo .sdo文件、altera_ver  cycloneive_ver文件夹,仿真工程添加.vo文件并编译,library添加两个文件夹。时序仿真如下,注意counter变化时刻与时钟沿不一致

P11_语法篇_Verilog简介

1 FPGA:传统数字电路-->PLD-->CPLD乘积项  FPGA查找表 、用户角度没区别;

2 HDL:中美Verilog、欧洲VHDL

3 Verilog:83年发明、1995、2001两版标准;原理图开发仅适合小规模;

P12_语法篇_Verilog基础语法

1 基础知识:逻辑值 0 1 X Z;进制 4‘b0101   4'd2   'o   4'ha  16’b1001_1010=16'h9A、默认32位标识符 定义模块名、端口名、信号名、区分大小写、建议小写 下划线 前后缀;

2 数据类型:寄存器--reg、默认初始值为X、数据存储单元。时序逻辑中reg对应触发器,组合逻辑中reg对应硬件接线;  线网--wire tri、不能储存值、默认初始值为高阻Z;  参数--parameter、常量。用于定义位宽、状态机、延迟大小、模块参数传递;

3 运算符:/只能整数除法;!非、~按位取反;?:条件运算符;左移位宽增加,右移位宽不变;拼接运算符。

P13_语法篇_程序框架

1 注释://       /* */

2 关键字:

 3 程序框架:基本单元 module;端口描述默认wire,除非明确写reg;

模块调用时,模块输出端必须连接wire类型

 

P14_语法篇_高级知识点

1 结构语句:initial一般用于测试文件;always--敏感列表、块语句。边沿触发常描述时序逻辑,电平触发常描述组合逻辑

2 赋值语句:= 阻塞赋值;<= 非阻塞赋值;

 

 3 条件语句:必须在过程块中使用。if、case

P15_语法篇_状态机

1 概念:在有限个状态之间按一定规律转换的时序电路

 2 模型:moore是mealy的特例,密码锁为moore状态机。

 3 设计:四段论--状态空间定义  独热码译码逻辑简单、状态跳转、下个状态判断(组合逻辑  使用阻塞赋值)、各个状态下的动作

 组合逻辑线路延时导致数据偏移,可能导致下一级接收电路出错

P16_实战篇_流水灯

1 LED简介:发光二极管

2 硬件设计:管脚连接

3 实例:

 One more thing:直接在qsf文件中修改引脚配置,修改成功。

P17_实战篇__按键控制LED

1 按键简介: 轻触式按键、自锁式按键

2 硬件设计:按下为低电平,弹起高电平

3 软件设计:

 One more thing:

编译通过的quartus工程,打开工程时删除qsf,对于工程没有影响,会自动生成一个一模一样的qsf

关闭工程时删除qsf,重新打开工程编译失败,需要重新加载.v文件,重新选择FPGA型号,重新配置引脚,才能得到一样的现象

但是有下图的区别

P18_实战篇_按键控制蜂鸣器(按键消抖)

1 蜂鸣器简介:有源蜂鸣器(含振荡源,黑胶封闭、直接加电源可鸣叫)、无源蜂鸣器(无振荡源,能看到PCB,须加脉冲鸣叫)

2 按键消抖简介:机械按键抖动5-10ms。延时20ms采样 或 信号无抖动持续20ms

3 程序设计:

 一共三个源文件,设置顶层模块

 One more thing:

视频中的代码有缺陷,下图灰色部分delay_cnt赋值代码有时候不执行(SignalTapII实测发现,随机出现,概率很低),应该和异步信号检测有关,外部引脚使用前应该先打两拍

 

代码不执行分析:key某一时刻从0变为1,恰好与时钟上升沿时刻相近,不满足建立时间或保持时间,导致发生亚稳态,if(key_reg != key)上一个时钟上升沿key_reg、key都是0,下一个时钟上升沿key_reg、key都是1,delay_cnt赋值失败。类似图如下

P19_实战篇_触摸按键控制LED

1 触摸按键简介:电容式、电阻式、红外感应式、表面声波式。电容式最广泛。

 2 硬件设计:触摸芯片AR101,FPGA无需考虑防抖

 3 软件设计:经典边沿检测代码如下

//根据按键信号的上升沿判断按下了按键
assign  touch_en = (~touch_key_d1) & touch_key_d0;
always @ (posedge sys_clk or negedge sys_rst_n) begin
    if(sys_rst_n == 1'b0) begin
        touch_key_d0 <= 1'b0;
        touch_key_d1 <= 1'b0;
    end
    else begin
        touch_key_d0 <= touch_key;
        touch_key_d1 <= touch_key_d0;
    end 
end

P20_实战篇_数码管静态显示

1 数码管简介:静态显示--独立段显信号;动态显示--共用段显信号;

2 硬件设计:动态显示电路;

 

 3 程序设计:循环显示0~f

P21_实战篇_数码管动态显示

1 数码管驱动方式:动态扫描速度,扫描周期<1/24秒。视频中代码6ms刷新一遍,改为;24ms几乎看不出闪烁;60ms闪烁很明显;600ms、6s刷新显示明显异常;

2 硬件设计:同上节

3 程序设计:视频中说乘法和除法占用时间较长,需要低频的时钟。但实测50M的1个时钟就计算完毕

assign  data0 = data % 4'd10;               // 个位数		自动调用IP核
assign  data1 = data / 4'd10 % 4'd10   ;    // 十位数
assign  data2 = data / 7'd100 % 4'd10  ;    // 百位数		100对应7bit
assign  data3 = data / 10'd1000 % 4'd10 ;   // 千位数
assign  data4 = data / 14'd10000 % 4'd10;   // 万位数
assign  data5 = data / 17'd100000;          // 十万位数

P22_实战篇_PLL锁相环实验

1 PLL简介:倍频、分频、相位偏移、占空比

2 PLL IP使用:设置输入 输出时钟频率、例化;生成.qip  .v两个文件

3 PLL IP仿真:altera_mf.v

一个清爽的设置

P23_实战篇_RAM读写实验


1 RAM简介:可配置RAM ROM FIFO 移位寄存器、单口 双口RAM;M9K 8192bit
2 程序设计:单口RAM;极简时序;


3 IP核的使用:M9K优于LCs(选择自动,系统优先使用M9K)、SignalTap演示、In-System Memory Content Editor调试RAM

 32*8bit、单时钟、取消输出寄存、取消时钟使能信号、创建读使能

P24_实战篇_FIFO读写实验

1 FIFO简介:时钟不同、位宽不同,用于不同时钟域数据传输不同位宽接口匹配
2 程序设计:写入数据后读出、系统框图


3 IP核使用:详细演示FIFO-IP核用法、读写FIFO模块代码解读、SignalTap演示效果

 双时钟、前显模式

​​​​​​​

 

33 RGB-LCD第一讲 彩条显示
1 简介:液晶原理、像素 分辨率、行列扫描、像素格式RGB888、接口RGB MCU LVDS MIPI、IIC SPI支持触摸屏、接口原理图
2 时序:
3 程序设计:

34 RGB-LCD第二讲 彩条显示
1 简介:
2 时序:时间参数、黑边框原因、行显示时序、帧显示时序、更改电阻调整LCD分辨率 方向、管脚说明
3 程序设计:读LCD ID模块、时钟分频模块、LCD显示模块生成彩条、LCD驱动模块--最底层

35 RGB-LCD第3讲 彩条显示
读LCD ID模块:读取尺寸和分辨率
时钟分频模块:提供LCD时钟、2分频、4分频
LCD显示模块生成彩条:5个等分彩条
LCD驱动模块--最底层:兼容5种屏幕
RTL、效果演示

36 RGB TFT-LCD字符显示试验
1 RGB LCD字符显示简介:取模软件PCtoLCD用法
2 硬件设计:原理图、管脚分配
3 程序设计:系统框图、LCD显示模块--坐标计算
效果演示

P45_实战篇_EEPROM读写测试(第一讲:EEPROM简介)

1 EEPROM简介:寿命一般100万次;EEPROM--以字节为单位改写、结构复杂成本高、容量小、一般存储关键数据;FLASH--以扇区 块为单位擦除、结构简单成本低、容量大、一般存储大容量数据;

看原厂datasheet简介

 2 硬件设计:AT24C64  64Kbit

P46_实战篇_EEPROM读写测试(第二讲:IIC时序)

1 IIC通信协议:Inter-Integrated Circuit  内部集成电路总线、数据量小、距离短、主从通信;标准100Kbps、快速400Kbps、高速3.4Mbps;UART异步全双工、IIC同步半双工;看原厂datasheet写时序

P47_实战篇_EEPROM读写测试(第三讲:IIC时序)

原厂datasheet读时序

 

P48_实战篇_EEPROM读写测试(第四讲:程序设计)

试验任务:写入地址0-255并读取。

 端口划分

 驱动模块状态跳转图

注意避免下图状态,使用三态

//SDA控制
assign  sda     = sda_dir ?  sda_out : 1'bz;     //SDA数据输出或高阻
assign  sda_in  = sda ;                          //SDA数据输入

P49_实战篇_EEPROM读写测试(第五讲:程序设计)

4倍频,满足IIC时序要求

P50_实战篇_EEPROM读写测试(第六讲:程序设计)

通过4倍频时钟计数器实现IIC时序

本视频讲解IIC代码

仿真IIC模块,需要EEPROM仿真模型(时序复杂的一般官网会提供,较为简单的可以自己写或百度)

P51_EEPROM程序设计(第七讲:程序设计)

仿真IIC模块。主要观察scl、sda波形。

sda白色虚线为高阻

 sda红色为不定态,EEPROM模型不严谨,不影响仿真

P52_EEPROM程序设计(第八讲:程序设计)

讲解EEPROM读写模块和LED模块

烧写sof,看LED

P53_实战篇_环境光传感器实验

1 AP3216C简介:数字环境光传感器+距离传感器+红外传感器;IIC 400kHz;

 

 

 2 硬件设计:

 3 程序设计:数码管显示环境光强度, LED灯亮灭指示物体距离远近。

als_data = als_data_t * 6'd35 / 7'd100;		//*0.35

P54_实战篇_RTC实时时钟实验

1 PCF8653简介:和EEPROM、环境光传感器共用IIC总线;

 

 2 硬件设计:

3 程序设计:配置并显示时间,按键切换日期、时间;

P55_实战篇_AD-DA实验

1 PCF8591简介:4AD 1DA 1IIC;IIC独立于EEPROM、RTC、ALS/PS的另一条总线;8位,器件地址、状态寄存器、读写时序

 

 2 试验任务:先DA输出,后AD采样,显示在数码管上

3 硬件设计:

 4 程序设计:

P57_实战篇_SDRAM简介


1 存储器简介:存储器类型、SD同步 动态(电容充电)、容量大 速度快 便宜 控制复杂

 
2 SDRAM内部结构:L Bank 行列 存储单元、功能框图

 3 硬件设计:原理图、管脚分配

P58_实战篇_SDRAM操作时序(第一讲)

1 初始化:稳定期 预充电 刷新 模式寄存器设置、MRS tRSC

2 读写操作:行激活、tRCD、列读写、CL、数据输出 读、数据输入 写、tWR、

 P59_实战篇_SDRAM操作时序(第二讲)

2 读写操作:突发长度、数据掩码、读写预充电 tRP

上图应该是错了,但是历程的代码是对的, Datasheet如下图


3 刷新:动态、自动刷新 自刷新

 

P60_实战篇_SDRAM程序设计(第一讲)

1 试验任务:先写后读
2 系统框图:框图、RTL;输出给SD RAM芯片的时钟考虑硬件延时


3 程序设计:SDRAM控制器框图、初始化状态机、工作状态机

 

P61_实战篇_SDRAM程序设计(第二讲)

测试模块、led模块、FIFO模块--用户至SDRAM转换

P62_实战篇_SDRAM程序设计(第三讲)

SDRAM控制器:状态控制、命令控制、数据读写
状态控制模块、命令控制模块:最底层代码、对应芯片手册、有头文件、对应2个状态机图、操作指令
数据读写模块:最简单

72 SD卡简介
1 SD卡概述:安全数字卡、基于flash、MMC SD TF异同、SDSC SDHC SDXC容量级别、速度等级、SD TF 引脚定义 SDIO SPI、
2 SD卡常用命令:写命令格式、CMD0 8 17 24 55 ACMD41、返回R1 R3 R7
3 硬件设计:原理图、上拉电阻

73 SD卡操作时序
1 SPI接口与时序:同步全双工、4个引脚、通信模式3 时钟极性 相位
2 SD卡初始化:发送命令确认协议版本 卡类型;步骤--同步 复位 查版本号 发CMD55 发ACMD41;复位命令时序
3 SD卡读写操作:读写时序 数据块 数据头

74 SD卡程序设计1
1 试验任务:写入后读回512字节数据
2 系统框图:框图讲解
3 程序设计:顶层原理图、2路反向50MHz时钟、初始化状态机

75 SD卡程序设计2
数据产生代码解读;
核心 SD卡顶层控制模块源码解读--SD初始化代码

76 SD卡程序设计3
应该先看一遍代码,再看视频讲解或者不看视频
读SD卡模块、写SD卡模块:对比时序图讲代码;实验演示

77 SD卡图片显示--VGA
1 简介:SD卡事先存入BIN图片,FPGA读取并通过VGA显示;
2 试验任务:SD-->FPGA-->SDRAM-->VGA、两张图片循环显示
3 程序设计:系统框图、RTL、读取SD卡图片模块代码详解、img2lcd SD卡处理 WinHex、实验效果演示

78 SD卡图片显示--RGB
1 试验任务:SD-->FPGA-->SDRAM-->RGB LCD
2 程序设计:系统框图、分辨率 时钟异于VGA、实验演示、更改图片分辨率后再次演示

P80_实战篇_以太网简介

1 以太网概述:IEEE802.3;速度--标准10M、快速100M、千兆1G;RJ45引脚;


2 MII接口与时序:PHY芯片作用--并转串、自动协商;MII引脚、时序


3 硬件设计:MII转为RJ45

 冲突检测一般用在半双工,全双工时不需要

P81_实战篇_以太网通信协议(UDP)

 1 以太网数据格式:OSI底层4层、数据包、帧格式解析、帧间隙


2 IP协议:数据报格式解析、校验和算法


3 UDP协议:TCP UDP区别 UDP效率高适合Verilog实现 

 

P82_实战篇_以太网通信程序设计(第一讲)

1 试验任务:网口调试助手与FPGA通信、FPGA先收后发
2 系统框图:功能框图、顶层原理图、模块端口及功能

 
3 程序设计:收发状态机

P83_实战篇_以太网通信程序设计(第二讲)

顶层模块 eth_pc_loop简介
UDP模块udp:ip_send详细讲解源码

P84_实战篇_以太网通信程序设计(第三讲)

接收模块ip_receive、脉冲同步模块pulse_sync_pro 逐行解读源码
实验步骤、效果演示、网络调试助手、Wireshark

本机实测结果:PC先发后收,共5个字节

PC机MAC如下图

PC发送给FPGA如下

00 11 22 33 44 55(目的MAC,即FPGA-MAC) b4 b6 86 be 92 68(源MAC,即PC-MAC)          08 00(IP协议) 4(IPv4)5(首部长度) 00(一般服务)
00 21(总长度=33byte=IP 20+UDP 8+数据 5byte) bb 7c(标识) 00 00(允许分片,偏移=0) 40(生存时间64) 11(UDP=17=0x11) 00 00(首部校验和) c0 a8 0b 32(源IP地址 192.168.11.50) c0 a8 0b 7b(目的IP地址 192.168.11.123) 04 d2(源端口号1234) 04 d2(目的端口号1234) 00 0d(UDP长度13byte=UDP 8+数据 5byte) 98 1c(UDP校验和) 55 66 77 88 99(用户数据)

FPGA发送给PC如下

ff ff ff ff ff ff(目的MAC,广播) 00 11 22 33 44 55(源MAC,即FPGA-MAC)                                     08 00(IP协议)4(IPv4)5(首部长度) 00(一般服务)
00 21(总长度=33byte=IP 20+UDP 8+数据 5byte)01 78(标识) 40 00(  不分片,偏移=0)  40(生存时间64) 11(UDP=17=0x11) a1 56(首部校验和) c0 a8 0b 7b(源IP地址 192.168.11.123) c0 a8 0b 32(目的IP地址 192.168.11.50) 04 d2(源端口号1234) 04 d2 (目的端口号1234) 00 0d(UDP长度13byte=UDP 8+数据 5byte) 00 00(UDP校验和) 55 66 77 88 99 (用户数据)

66 77 88 99 66   77 88 99 66 77   88 99 66(为凑够18个字节而填充的13个字节)

P85_实战篇_以太网传输图片(VGA显示)

1 试验任务:上位机-->FPGA-->SDRAM-->VGA显示

640*480
2 程序设计 :系统框图、顶层模块eth_sdram_vga源码解读、32位转16位模块解读
img2lcdPC网络设置为巨型帧(突破1500字节的限制)、效果演示

P86_实战篇_以太网传输图片(RGB-LCD显示)


1 试验任务:PC机-->FPGA-->SDRAM-->LCD 800*480
2 程序设计:框图、顶层模块介绍


外设连接、img2lcd、效果演示、wireshark

尽管设置了巨型帧,但实际发的还是正常的帧。一共发了1500帧(视频中只发了不到100帧),每帧有效数据512字节。1500*512 = 768000 = 800*480*2

91 基于FFT IP核的音频频谱仪试验
1 频谱简介:时域 频域、声音示例、FFT简介 共轭对称
2 试验任务:音频WM8978-->IP核-->RGB LCD
3 程序设计:系统框图、RTL

92 基于FFT IP核的音频频谱仪试验-代码详解
顶层模块
音频:改为16位字长、只用1通道
FFT相关模块(FFT FIFO FFT控制 取模):数据流接口 sop eop、1帧128个数据、计算原码、sqrt IP核
FFT核需要破解

93 基于FIR IP核的低通滤波器试验
1 FIR滤波器简介:有限冲激响应、阶数+1=抽头数
2 试验任务:将上1个FFT试验进行低通滤波
3 程序设计:系统框图、添加FIR IP核 配置、quartus_map.exe、音频滤波效果演示

正点原子手把手教你学FPGA-基于达芬奇开发板 A7_哔哩哔哩_bilibili

1 综合测试
演示效果
数码管、流水灯、按键、触摸键、摄像头、LCD、HDMI、网口、USB、串口测试 SD卡 EEPROM RTC 蜂鸣器

74 USB通信试验
1 USB协议讲解:高速串行、应用软件-->系统软件-->USB控制总线、7种域、3类包、三大事务
2 硬件设计
3 程序设计

75 USB通信试验
1 USB协议讲解:IN事务、OUT事务、SETUP事务;4种传输模式;2个位-->7个域-->3个包-->3个事务-->4个传输
2 硬件设计:FT232芯片--电源模块、EEPROM接口、底层协议解析、FPGA接口模块、复位模块;引脚说明;USB2FIFO;典型电路
3 程序设计

76 USB通信试验
1 USB协议讲解:
2 硬件设计:
3 程序设计:时序图、源码解读 很简单、ATK-FUSB演示

正点原子FPGA实战篇之以太网_哔哩哔哩_bilibili

72 以太网简介

1 以太网概述:速度、RJ45引脚
2 MII接口与时序:PHY芯片作用、MII引脚、时序
3 硬件设计:MII转为RJ45

73 以太网通信协议UDP

1 以太网数据格式:OSI底层4层、数据包、帧格式解析、帧间隙
2 IP协议:数据报格式解析、校验和算法
3 UDP协议:TCP UDP区别 UDP效率高适合Verilog实现

74 以太网通信试验
1 试验任务:网口调试助手与FPGA通信、FPGA先收后发
2 系统框图:功能框图、顶层原理图、模块端口及功能
3 程序设计:收发状态机

75 以太网通信试验(源码讲解)
顶层模块 eth_pc_loop简介
UDP模块udp:ip_send详细讲解源码

76 以太网通信试验(源码讲解)
接收模块ip_receive、脉冲同步模块pulse_sync_pro 逐行解读源码
实验步骤、效果演示、Wireshark

77 以太网传输图片
1 试验任务:上位机-->FPGA-->SDRAM-->VGA显示
2 程序设计 :系统框图、顶层模块eth_sdram_vga源码解读、32位转16位模块解读
img2lcd、PC网络设置为巨型帧、效果演示

78 以太网传输图片 LCD
1 试验任务:PC机-->FPGA-->SDRAM-->LCD
2 程序设计:框图、顶层模块介绍
外设连接、img2lcd、效果演示、wireshark

79 以太网传输视频OV7725
1 视频传输简介:自定义帧头
2 试验任务:OV7725摄像头-->FPGA-->上位机
3 程序设计:系统框图、顶层模块介绍、图像数据封装模块介绍、RawNetCapture

80 以太网传输视频OV5640
1 试验任务:OV5640-->FPGA-->上位机
2 程序设计:系统框图、顶层模块介绍、效果演示

81 以太网音频互传WM8978
1 试验任务:2块FPGA打电话
2 程序设计:系统框图、顶层模块介绍、音频缓存收发模块介绍、效果演示

  • 3
    点赞
  • 46
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
作为一名FPGA工程师,你可以通过以下方法来进行学习和实践: 1. 首先,熟悉FPGA的基础语法和概念。这包括了理解数字电路和信号处理的基础知识,以及了解FPGA代码的规范写法。你可以参考引用中提到的方法,先学习基础语法,再扎实相关知识。 2. 掌握不同的FPGA设计方式。除了使用原理图设计方式,你还可以尝试使用描述语言(如Verilog)进行设计。Verilog已经在FPGA开发和IC设计领域占据了领导地位,可以更好地满足实际项目的需求。你可以参考引用中的内容,了解Verilog的基础知识和逻辑电路的表示方式。 3. 在实践中提高设计能力。通过实际的项目设计和实现,你可以进一步提高自己的FPGA工程能力。尝试使用不同的开发工具,熟悉开发流程和操作。在实践中,你可以学习解决实际问题的方法和技巧,提高自己的设计能力。 4. 注意资源的合理使用。在FPGA设计中,要慎用%和/运算符,因为它们可能会消耗大量的资源。如果你的FPGA有内嵌的硬件乘法器或者除法器,可以使用它们来代替%,/运算符。而对于乘或除2的倍数次的操作,可以使用位移运算符来代替,这样可以减少资源的消耗。参考引用中的内容了解更多关于资源消耗的注意事项。 总结起来,作为一名FPGA工程师,你需要熟悉FPGA的基础语法和概念,掌握不同的设计方式,通过实践不断提升自己的设计能力,并注意资源的合理使用。这样,你将能够更好地进行FPGA工程师的学习和实践。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值