自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 收藏
  • 关注

原创 程序的编译、加载、运行

0、shell用fork创建一个新进程,用来执行该程序1、系统调用exec(使用加载器loader),请求内核加载可执行文件。2、解析ELF头,获取入口点、加载的段、依赖的库3、内核释放当前进程的代码段、数据段和堆栈段,关闭所有文件描述符。4、根据ELF头,将代码段、数据段加载(复制)到进程地址空间,初始化堆栈。5、根据ELF头,判断是否为动态链接。如果是,运行动态链接器加载共享库,完成共享库和程序的链接工作。如果共享对象有初始化代码(在.init段。

2025-03-18 16:07:29 593

原创 linux驱动开发(一)——驱动模型

但对于没有物理总线的设备内核将不会为它们创建相应的驱动总线,为了使这部分设备的驱动开发也能够遵循设备驱动模型,Linux内核引入了一种。设备号:主设备号(前12位, cat /proc/devices查询),次设备号(后20位)。总线会把 platform_device 结构体传入驱动,作为驱动probe函数的参数,获取设备树中的所有信息。总线会把 platform_device 结构体传入驱动,作为驱动probe函数的参数,获取设备树中的所有信息。(dev.c 和 dri.c)。

2025-02-28 17:01:25 851

原创 linux 内核启动过程与机制

解压最先进行:zImage(小内核,小于512KB)或bzImage(大内核,大于512KB)使用头部自解压。一旦解压完成,控制权会被移交给解压后的。之后,根据 vmlinux文件的链接脚本(vmlinux.lds) 分析过程。1、内核引导阶段2、内核初始化阶段从start_kernel函数开始,内核进入C语言部分,完成内核的大部分初始化工作。(只列举部分)kernel_init函数将完成,并调用init_post函数启动用户进程。

2025-02-12 10:12:20 420

原创 ebaz4205部署Yolo(七)—— PS控制部分

1、​我们看到执行的命令是g++ -c -o yolo_acc.o yolo_acc.cpp显然不对,问题是Makefile没有对C和C++的编译进行区分,导致无法正常使用.cpp文件的编译命令。2、​删除define,交叉编译工具已经define过了3、暂未看懂赛灵思浮点运算器 IP 核不提供 ARM 架构的仿真模型。自动定义 HLS_NO_XIL_FPO_LIB 以避免对该库的依赖,尽管某些函数的位精确仿真已不再可能。您可以在包含任何其他文件之前自行添加此定义,从而使此警告消失。

2024-09-12 22:51:00 734

原创 ebaz4205部署Yolo(四)—— 卷积加速测试(裸机与linux)

模型:已配置训练完成的yolo模型(主要是用于参考,比对),训练完的模型量化后的参数文件。硬件加速IP核:conv层参考案例最终资源消耗情况:暂无。

2024-08-29 20:23:00 916

原创 ebaz4205开发板rootfs初始化问题

系统:debian。

2024-08-28 22:54:50 638

原创 ebaz4205部署Yolo(六)—— 图像采集和推流(仅裸机)

通过高速接口连接至zynq,通过zynq读写内存中的视频数据,输出至stream to video_out。改ov5640驱动中的寄存器配置,配置输出1080p的参数。xsa导入vitis,platform设备树工程,在main.c中配置vdma,编译。MM2S_VDMACR[3]=1,使能主、从通道之间的Genlock同步。摄像头输入:视频数据1024*720(可配置)、同步信号、像素时钟。使用外置的 DDR3 存储器作为帧缓存(显存),来避免视频割裂。输入:同步信号、像素时钟(pclk)、视频数据。

2024-08-21 22:44:00 1236

原创 ebaz4205部署Yolo(三)—— HLS加速神经网络策略

1、LUT:查找表,来实现组合逻辑电路的功能2、FF 触发器3、BRAM:block ram 嵌入fpga内部。BRAM可以用来实现多种不同位宽和深度的RAM/ROM/FIFO。相比于DRAM这种分布式的ram,Bram只存了1 bit也要占用一个BRAM。4、DSP:高位加法和乘法主要是由DSP数字信号处理器承担。

2024-08-13 17:01:28 1245

原创 ebaz4205部署Yolo(二)—— HLS 学习(vitis学习)

①定义top函数②定义tb文件(包含测试向量)③设置器件型号④定义端口输入时钟⑤定义输出配置(默认:导出IP、语言verilog)

2024-07-27 10:14:39 448

原创 ebaz4205部署Yolo(一)—— linux系统搭建

zynq的linux系统手工制作全过程

2024-07-17 22:26:46 1693 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除