FPGA目前行业现状是怎样的?
1、FPGA是软硬件开发是门槛最高的行业之一,FPGA采用HDL(硬件描述语言)直接从最底层开发算法,对工程师的要求极高,没有很好的方法,入门很难;
2、5G的发展,深度学习,自动无人驾驶的兴起,传统纯软件处理方式已经不能满足实时性要求,而FPGA的并行加速能力,是必然选择;
3、FPGA属于半导体行业无法缺少的一块,而国内半导体正处在蓬勃的发展阶段,各类高科技公司需求旺盛; 4、相比与其他工程师岗位,FPGA工程师待遇普遍不错,无线通信方向的工程师更是供不应求,大型通信公司从事无线通信开发的应届研究生年薪普遍达到30万,经验丰富的FPGA工程师更是千金难求。
我们为什么做这次众筹?
1、5G的兴起,无线通信方向必然是未来FPGA的开发热点;
2、国内FPGA无线通信领域的教材太少,且大部分教程仅流与形式,质量不高;
3、从事无线通信的开发软硬件成本极高,且国外开发的SDR售后差,售后周期长,我们入门就走过很多的弯路;
4、基于FPGA的无线通信开发门槛高,几乎涉及了FPGA开始的所有高级技巧:面积和速度的置换,矩阵的处理,数学运算等,学习基于无线通信的FPGA操作技巧,能使FPGA开发水平上升到一个更高的层次;
5、在这几年深度学习,自动无人驾驶等行业的FPGA招聘中,有无线通信开发经验的工程师往往会有更多的竞争优势;
希望这次众筹的课程能帮到大家什么?
本课程由浅入深,摒弃传统教程离散的模块呈述方式:讲解语法,工具的使用、IP的调用等。本教程以无线通信系统搭建为主线,从项目立项,需求确认,算法建模,编码,量产等多个环节讲解内容,涉及FPGA工具的安装,Verilog语言的学习,模块的划分,算法的定点等多个环节,实战讲解FPGA处理的:FFT,组帧,乒乓操作,矩阵变换,数学运算等多类处理技巧。总括全局,一览众山小。
众筹课程介绍
1、我们不想告诉大家怎么点亮流水灯,也不想讲些无关痛痒的业内共识,但我们相信通过本次课程的学习,大家对FPGA和无线通信的开发会站在一个更高的层次。
2、不仅仅翻译原始文档(国内的很多这种教程),尊重原厂文档并站在产品的角度开发FPGA。
3、一块配套教程并远低于其它FPGA SDR的开发板,并在后续持续推出兼容各类应用的底板。 4、FPGA原理图设计及审核。
6、ZYNQ平台的搭建;
7、PS和PL的调试技巧;
9、算法的定点;
10、各类矩阵的处理方法:相乘,相加;
11、FFT IP的仿真模型及使用;
12、AD9361的硬件设计及布局注意事项;
13、射频调试技巧及应用实例;
14、FCC,CE认证的一些常识;
本期众筹课程有哪些亮点?
1、通过本课程的学习,您将从最底层了解FPGA的构造,从系统层面从事FPGA相关工作的开发;
2、熟悉FPGA的各种处理技巧;
3、深入高速通信及无线通信的开发流程及技巧;
4、和国内多家FPGA原厂工程师深入交流;
5、MYMINIEYE将和大家一起畅聊这些年在北京,深圳等FPGA开发趣事和行业动态;
用户购买视频学习后,将会获得哪些收益?
1、不仅仅得到的是理论解答,从项目立项,芯片选型,开发验证等各个角度讲解产品的应用开发;
2、大量可直接使用的工程实践源码开放,matlab算法和和Modesim仿真一致;
3、中科院,紫光等一线工程师和您一起解决算法和代码问题,涉及无人机,VR等多行业应用的分享;
适用人群有哪些?
1、有志于从事FPGA开发和无线通信开发的在校大学生及教师等;
2、各类从事FPGA软件开发(如高级辅助驾驶,深度学习),想深入理解FPGA原理的工程师;
3、对数字信号处理感兴趣的FPGA开发工程师;
4、从事无线通信系统开发的公司,用于原型验证;
5、FPGA技术到了瓶颈,想要提升技能,找到更快突破口的工程师;
6、想了解和接触半导体行业的各位软硬件工程师们;
每个套装的详细课程大纲
|
无线系统简介及应用(直播内容) 1、SDR的前景 2、实现平台介绍 3、本平台框图架构介绍 4、FPGA与数字信号处理 | 内容简介: 1、在FPGA招聘中,为什么有无线通信开发经验的工程师会更受欢迎? 2、发起本套FPGA开发板众筹的初衷? 3、课程讲哪些内容,和传统教程的区别? 4、本次众筹开源哪些内容 5、资源及团队介绍? |
1.1 FPGA SOC系统简介(ZYNQ:7030) 1、应用场景介绍(图传,应急指挥,影像) 2、SOC系统软硬件资源; 3、系统平台系统架设计 4、FPGA的资源; 5、时钟系统; 6、机械尺寸; | 内容简介: 1、FPGA开发前期该怎样选择合适的器件? 2、SOC系统的优势? 3、Xilnx, altera, lat tice,国产FPGA的特点及定位? 4、为什么选择ZYNQ做无线通信开发?
|
1.2系统硬件设计(FPGA硬件,射频放进阶,提及此内容) 2、FPGA的硬件原理设计; 3、FPGA PCB审核及硬件调试; | 内容简介: 1、FPGA硬件设计有哪些坑? 2、FPGA原理图设计应该参考哪几个资料文档? 3、怎样确认FPGA的原理图设计没有问题? |
1.3 Veirlog 中的两个always 2、Vivado 使用安装,操作流程; 3、Vivado中的调试,debug; 4、30分钟讲解清串口通信
| 内容简介 1、Verilog写打印Hello world有多难? 2、Verilog学习最值得推荐的资料? 3、写代码是后应该注意的问题点? 4、代码规范? 5、选择哪个版本的工具进行工程的开发最合适? 6、工具的一些使用技巧? 7、软件License的获取? |
1.4 SOC系统的逻辑开发(ZYNQ PL介绍) 1、按键 led(IO); 2、时钟倍频,分频; 3、锁相环详解; 4、IP core调用,使用详解(datasheet解读)
| 内容简介: 1、在FPGA都有哪些可使用的资源,ZYNQ有什么不同之处? 2、FPGA设计中时钟资源的利用及时钟的规划? 3、IP Core和源语的使用? 4、哪些功能适合在PL端开发? |
1.5 SOC系统的软件开发(ZYNQ PS介绍) 1、Zynq系统框架介绍; 2、PS时钟树; 3、PS IO资源分配; 4、EMIO & MIO; 5、建PS系统; | 内容简介: 1、ZYNQ中都有哪些软件资源? 2、PS开发应该参考哪些资料? 3、ZYNQ的IO特点? 4、PS IO不够怎么办?
|
1.6 片内总线协议(2~3节课) 1、AXI发展 2、AXI4 3、AXI stream 4、AXI4 lite | 内容简介: 1、什么是AXI总线? 2、AXI总线的作用,相比于FPGA+ARM(外挂)的优劣势? 3、AXI Stream和AXI4 lite的协议差别及具体工程中的选择? |
1.7 复杂SOC系统的搭建及开发(一) 1、PL与PS组建系统;
|
|
1.8 复杂SOC系统的搭建及开发(二) 1、PS串口发送命令到PL; 2、AXI lite数据交互;
| 内容简介: 1、怎样搭建一个复杂SOC系统? 2、怎样实现PL和PS的数据交互? 3、AXI总线的操作?
|
1.9 Modelsim与vivado联合调试环境() 1、编译库 2、Vivado系统设置 3、实际跑一个仿真流程 | 内容简介: 1、怎样进行VIVADO和Modesim的联合调试及仿真? 2、怎样编译库? 3、实际仿真都会产生哪些文件,都有什么作用? |
|
2.1 zynq系统PS与PL互联 1、PL和PS交互方式; 2、调试技巧 3、总线大数据交互; 4、详解HP,GP(master/slave)模式,建交互系统工程; | 内容简介: 1、PL和PS的通信方式; 2、哪些适合在PL中实现,哪些更适合在PS中实现? 3、选择哪种接口方式更合适?
|
2.2 zynq上运行linux系统(一) 1、系统运行环境搭建 2、F***l生成 3、Bootbin生成 |
|
2.3 zynq上运行linux系统(二) 1、设备树生成 2、Uboot生成 3、内核修改 |
|
2.4 zynq上运行linux系统(三) 1、驱动 2、应用 | 内容简介: 1、从哪里得到开发linux需要的资料? 2、怎样选择合适的linux版本进行开发? 3、怎样完成完整的系统搭建? 4、Uboot的编译,FSBL编译,Kernel编译? 5、设备树的修改? 6、系统搭建中需要注意的问题? |
2.5 PS外设的操作; 1、1000M以太网的使用; 2、提供源码; 3、演示以太网通信;
| 内容简介: 1、怎样在zynq进行1000以太网开发? 2、1000M开发应注意哪些内容? |
2.6 DDR3的硬件设计 1、DDR3原理 2、DDR3硬件设计注意事项 | 内容简介: 1、DDR3设计该怎么选型? 2、怎样设计你的DDR3原理图? 3、DDR3布局布线中有哪些坑? 4、怎样验证你的DDR3布线是没有问题的? |
2.7 zynq系统的DDR3的操作(一) 1、DDR3控制器 |
|
2.8 zynq系统的DDR3的操作(二) 1、DDR3控制器 2、数据共享 | 内容简介: 1、地址映射方式? 2、DDR3的使用? 3、DDR3设计中要知道的几个公开的秘密 4、DDR3设计中数据的交互效率?
|
2.9 zynq系统的数据共享 1、DDR3仿真 2、DDR3 PL和PS的互操作; | 内容简介: 1、什么时候用PS端的DDR3会比较合适? 2、DDR3该怎样Debug? 3、怎么样去系统仿真DDR3? |
2.10 驱动代码(AD9361配置,开放源码) 1、AD936X配置流程 2、配置AD936X相关寄存器 3、相关小工具的使用 4、AD936X配置的源码
| 内容简介: 1、哪些寄存器需要特别关注? 2、怎样调节IOdelay? |
2.11 AD936X的硬件调试,AD936X的硬件设计 1、AD936X原理图设计; 2、射频器件的选型; 3、PCB布局布线;
| 内容简介: 1、射频的原理图及PCB布局需要注意? 2、晶振选择要注意什么? |
2.12 射频调试 1、射频调试
| 内容简介: 1、发送调试的应关注的指标? 2、接收调试手段及关注的指标? 3、怎样测试系统灵敏度?
|
2.13 FCC,CE认证 1、FCC,CE介绍;
| 内容简介: 1、产品出口欧美应注意的问题; 2、产品一致性问题; 3、品控及风险; |
|
3.1 无线通信算法介绍 1、无线通信系统的发展; 2、无线通信系统总括; 3、系统的关键技术点;
| 内容简介: 1、系统架构? 2、通信系统设计应该注意哪些问题? 3、COFDM应用场景?
|
3.2 扰码 1、扰码原理及matlab仿真; 2、扰码verilog; 3、数据仿真及比对;
| 内容简介: 1、扰码在通信系统的应用; 2、扰码的matlab仿真; 3、扰码Verilog代码的编写及Modesim代码的编写; |
3.3 交织 1、交织原理及matlab仿真; 2、交织verilog; 3、数据仿真及比对;
| 内容简介: 1、交织的种类及在通信系统中的作用; 2、矩阵变换的常用做法; 3、交织的Verilog的代码及Matlab仿真; |
3.4 调制及映射方式(QPSK,16QAM) 1、调制原理及matlab仿真; 2、调制verilog; 3、数据仿真及数据比对 | 内容简介: 1、通信系统的调制种类及应用场景; 2、QPSK,16QAM matlab代码仿真; 3、16QAM及QPSK Verilog代码及Modesim仿真 |
3.5 FFT:(2~3节课) 1、FFT 的Matlab算法原型验证; 2、FFT IP Core的使用技巧; 3、FFT的Verilog代码及仿真 | 内容简介: 1、FFT的调试技巧? 2、FFT设计中的一些坑? 3、FFT保护间隔用多长? |
3.6 数据组帧 1、数据组帧介绍
| 内容简介: 1、基带算法组帧的重要性? 2、组帧设计应注意的问题? 3、提供组帧的Verilog源码及Modesim仿真? |
3.7 滤波器(matlab仿真插值,抽取) 1、滤波器的设计; 2、Matlab源码及Verilog 源码
| 内容简介: 1、基带通信算法中改怎样设计滤波器 2、滤波器的作用 |
3.8 定点技巧(1~2节课) 1、定点技巧;
| 内容简介: 1、怎么实现浮点到定点 2、浮点到定点的评判标准是什么? 3、浮点到定点的Matlab模型 4、浮点到定点的Verilog代码及Modesim仿真 |
3.9FPGA与数学运算:DSP资源介绍 1、DSP硬件资源介绍
| 内容简介: 1、为什么在设计中不适用现成IP CORE实现相应数学运算? 2、ZYNQ中DSP48e的硬件结构及特点;
|
3.10 FPGA与数学运算: 1、DSP48e实现累加,乘加,加减的技巧
| 内容简介: 1、累加设计,乘减,加减verilog源码及Modesim仿真
|
3.11 FPGA与数学运算 1、数学运算中乘法,除法,求模的转换及技巧 | 内容简介: 1、什么时候要用乘法,什么时候需要将乘法做转换; |
3.12 系统同步----滑动累加 1、滑动累加的原理及代码
| 内容简介: 1、通信系统中数据同步的特点 |
3.13 LDPC编码(待定) 1、LDPC编码技术
| 内容简介: 1、Turbo,卷积等编码的特点; 2、LDPC编码的Verilog源码及Modesim仿真 |
开发板的详细介绍:
小眼睛FPGA无线通信开发板
XILINX(ZYNQ)+ADI(AD936X)高性能无线通信开发套件(众筹主板底板拥有4天线输出)
核心板:(众筹版本增加模式选择开关及标准电源接口)
FPGA:主芯片ZYNQ(XC7Z030-2FFG676I):
a) 内置双核Cortex-A9;
b) 125K Logic Cell逻辑资源,157K FF;
c) 9.3M存储资源;
d) 工业级,-2速度等级
e) PIN to PIN兼容更大规模XC7Z035,XC7Z045;
DDR3:两块2Gbit 高性能DDR3,速度达1066MBbps;
Flash: 256Mbit 4线QSPI Flash;
DC-DC:ADP5054ACPZ_1(ADI)
晶振:SIT1602BI-40.00M SIT1602BI-33.333.00M(SimTime)可编程高精度晶振
连接器:60pin高性能连接器(3个);
射频板(众筹版本版型略大,采用4天线,支持更多频段,布局更合理):