soc FPGA(一)

基于小梅哥Altera SOC FPGA视频课程,基于Cyclone V SOC FPGA:https://www.bilibili.com/video/BV1dE411i7gN?from=search&seid=14910702332090064010&spm_id_from=333.337.0.0

背景知识扫盲

soc和sopc
soc FPGA(一)_第1张图片
sopc:由fpga编程的cpu,具有灵活性,但浪费资源,频率不高
soc FPGA(一)_第2张图片
soc和sopc的区别:soc的arm不能用作fpga,sopc的可以,
soc FPGA(一)_第3张图片
hps外设的引脚和fpga外设引脚重叠时,可以将hps数据给fpga,用fpga操控

soc开发工具

quatus版本要新
soc eds:是一个平台
soc FPGA(一)_第4张图片
DS-AE:跟keil一样
putty:将电脑系统和开发板上的系统连上

开发外设驱动程序其实简单 整个soc难点在软件驱动开发和platform promgramer上

GHRD工程简介 黄金硬件参考设计

一般设计 都是在黄金硬件设计上增减 避免错误

soc FPGA(一)_第5张图片

顶层模块讲解

soc FPGA(一)_第6张图片
soc-seystem函数由platform promgramer产生
soc FPGA(一)_第7张图片

platform programmer介绍

几个重要的IP核
soc FPGA(一)_第8张图片

1.clk_0

soc FPGA(一)_第9张图片
作用:设置时钟约束,给其他ip核分频

2.sysid_qsys

soc FPGA(一)_第10张图片
系统跟版本对应

led

soc FPGA(一)_第11张图片
PIO软IP,使用IP Catalog中的PIO(ParallelI/O)组件,设置为2位的仅输出型PIO,同时使能了独立位操作功能,用来驱动FPGA侧的两个LED灯,如图xxx所示:
de10有10位的输出
soc FPGA(一)_第12张图片

4.buttonpio

soc FPGA(一)_第13张图片

soc FPGA(一)_第14张图片

5.串口uart

soc FPGA(一)_第15张图片

6.spi

soc FPGA(一)_第16张图片
实际的值会小于设置的频率
soc FPGA(一)_第17张图片

7.i2c

soc FPGA(一)_第18张图片

8.图像IP

soc FPGA(一)_第19张图片

platform programmer ip连接

fpga和hps通信

之间有三座桥

hps中有avalon master 控制 所有avalon slave

h2f_axi_master 表示轻量级的传输 但控制一般外设都足够了

添加一个IP的步骤

详细参考:https://recclay.blog.csdn.net/article/details/105164906
(irq)timer中断的连接:在右侧

hps详细介绍

soc FPGA(一)_第20张图片点hps edit 可以对三个桥的宽度进行设置
soc FPGA(一)_第21张图片
当其他模块没有用到这个某坐桥时可以关断

当fpga需要用hps的ddr3时可以让fpga建设端口和hps相连,从而让fpga控制 ddr3

hps有ddr3
fpga没有
可以添加多个
soc FPGA(一)_第22张图片

soc FPGA(一)_第23张图片

IO口复用

详见上面链接
千兆以太网的接口被hps占用了,就把接口给fpga再通过fpga给hps
不需要考虑兼容性,不报错就能用
soc FPGA(一)_第24张图片

hps clock

hps的时钟

DS5编写程序并通过linux执行

soc FPGA(一)_第25张图片

使用gdbserver进行代码调试

soc系统可以用以太网接口和电脑相连,只要知道ip地址就可以通信而且速度很快
soc系统也可以和路由器相连,电脑也跟路由器相连,这样的通信速度很慢

电脑和soc连接:

通过网络传输文件:wincp软件快捷实现

使用gdbserver远程调试linux应用程序

gdb已经被ds官方删除了需要自己添加
调试步骤:
run-》debug configuration >c /c++ Application
soc FPGA(一)_第26张图片

bug:ds5没有connection选项,改为remote application

详细链接:远程调试的链接方法

gdbserver的实现原理

gdbserver linux版本下载::http://ftp.gnu.org/gnu/gdb/

你可能感兴趣的:(SOC,FPGA,fpga开发)