logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

zynq7020+BMP2GRAY+linux+网口传输文件

本文介绍了基于AXI DMA的图像灰度处理系统实现过程。硬件部分采用24bit BMP图像通过DMA传输,经128位转24位转换后进入自定义灰度处理IP核,再转换为8位灰度数据写回24位BMP格式。软件配置包括:1)通过petalinux配置系统环境,启用SSH服务;2)安装AXI DMA驱动并修改设备树;3)测试阶段成功完成29MB BMP图像转换,耗时103ms。文中还记录了开发过程中遇到的U

文章图片
#linux#运维#服务器
zynq7020+axilite+DDS+platform driver+linux+UDP+PC显示波形

本文介绍了基于正点原子7020开发板的DDS信号发生器设计与实现。硬件部分使用AXI-Lite总线控制的DDS IP核,通过MATLAB生成正弦波查找表文件(sin256.mem和sin256.coe)。软件方面开发了Linux驱动程序和应用程序,支持DDS参数配置、数据缓存(输出到文件)和TCP流式传输功能。测试结果显示系统能生成1MHz正弦波,并通过千兆网口实现736Mbps的数据传输速率。文

文章图片
#linux#fpga开发#单片机
Linux Pcie(1)————pci子系统枚举硬件+edu-pci驱动安装

info qtree的设计目的就是只显示外设总线和设备(并不会看到CPU等设备的)main-system-bus (系统总线)├─ hpet (高精度事件定时器)├─ ioapic (I/O高级可编程中断控制器)├─ q35-pcihost (Q35 PCIe主桥)│ └─ pcie.0 (PCIe根总线)│ ├─ pcie-root-port (rp1, PCIe根端口)│ │ └─ rp1 (

文章图片
#linux#服务器
Linux Pcie (4)————e1000e驱动框架

* 头文件保护宏的命名规则是文件名全大写_后缀全大写,用下划线代替点号 *//* QEMU e1000e 对应 Intel 82574L,PCI ID 为 8086:10d3。*//* e1000e BAR0 是 128 KB MMIO 空间,本阶段只映射 BAR0。*//* 先只读安全寄存器,验证 MMIO 路径已经打通。*/

文章图片
#linux#运维#服务器
Linux PCIe(7)————e1000e网卡功能实现(上)

一个结构体(内核维护的),全称:套接字缓冲区(socket buffer)下图是对整体的结构的理解(可能会有不准确的地方),内核维护的这个sk_buff目的是为了,应对协议上以太网帧的复杂性诞生的有了这个sk_buff,驱动层就只需要处理这个sk_buff的结构体就行,否则的话,就会需要驱动层去适配各种各样的协议,徒增工作量罢了。

文章图片
#linux#网络#运维
Linux Pcie(3)————中断+DMA

** QEMU edu IRQ 寄存器。* 写 EDU_REG_IRQ_RAISE 会让设备产生中断,并把对应 bit 置入 IRQ_STATUS。* 中断处理函数必须把读到的 status 写回 EDU_REG_IRQ_ACK,否则中断不会被清掉。*///PCI 设备资源//IRQint irq;//DMA//并发 加锁//字符设备其中:- irq:Linux IRQ 号。- irq_done:

#linux#运维#服务器
Linux Pcie(1)————pci子系统枚举硬件+edu-pci驱动安装

info qtree的设计目的就是只显示外设总线和设备(并不会看到CPU等设备的)main-system-bus (系统总线)├─ hpet (高精度事件定时器)├─ ioapic (I/O高级可编程中断控制器)├─ q35-pcihost (Q35 PCIe主桥)│ └─ pcie.0 (PCIe根总线)│ ├─ pcie-root-port (rp1, PCIe根端口)│ │ └─ rp1 (

#linux#服务器
到底了