- 博客(24)
- 收藏
- 关注
原创 高级FPGA开发之PCIe IP Core(三)
通过阅读PCIe spec文档,可以看到UltraScale+器件Integrated Block For PCI Express解决方案IP核是具备高带宽、高可缩放性和高可靠串行互联的解决方案
2024-02-20 11:22:52
4339
原创 异构计算关键技术之mmap
mmap被广泛应用于提高读取性能。传统上,读取数据需要通过复制数据到用户空间,这一过程涉及系统调用和数据拷贝操作,消耗大量的CPU资源和时间。而通过使用mmap,用户可以直接在内存中读取文件,避免了这些开销。因此,在Ceph中使用mmap可以提高文件读取的效率。
2024-02-10 20:16:06
1196
原创 高级FPGA开发之基础协议PCIe(二)
当PCIe主设备(RC或者EP)访问目标设备的存储器空间时,使用non-posted总线事务向目标设备发出存储器读请求TLP,目标设备收到这个存储器读请求tlp后,使用存储器读完成tlp,主动向主设备传递数据。当主设备收到目标设备的存储器读完成tlp后,将完成一次存储器读请求。
2024-02-07 10:32:23
3240
原创 高级FPGA开发之基础协议PCIe
在PCIe的系统中,tlp包的包头的结构有许多部分是相似的,通过掌握这些常规的包头,能帮助理解在PCIe总线上各个设备之间如何进行数据的收发。
2024-02-03 21:59:21
3178
4
原创 异构计算关键技术之多线程技术(三)
多线程是指在程序中同时运行多个线程,每个线程都可以独立执行不同的代码段,且各个线程之间共享程序的数据空间和资源。
2024-02-01 14:22:23
1238
原创 量化交易开发之context与判断
context是一个回测系统建立的Context类型的对象,其中存储了如当前策略运行的时间点、所持有的股票、数量、持仓成本等数据。
2024-01-30 09:29:22
1262
原创 量化交易开发之基本框架
通过前面的文章,对量化交易有了一个基本的认识之后,我们开始学习量化交易。毕竟就像学习游泳,有些东西讲是讲不懂,必须要做过!
2024-01-19 17:13:14
709
原创 异构计算关键技术之多线程技术(二)
本系列文章将介绍异构计算涉及到的内存管理技术、DMA技术、线程技术等。结合实例代码进行详细讲解多线程、DMA scatter-gather list、PCIe TLP等核心技术。本章将介绍核心的基本概念:主要包括用户态的线程、进程技术。
2024-01-19 08:58:07
1135
原创 异构计算关键技术之内存管理与DMA(一)
本系列文章将介绍异构计算涉及到的**内存管理技术、DMA技术**。结合驱动开发、FPGA/ASIC PCIe DMA engine的实例代码进行详细讲解多线程、DMA scatter-gather list、PCIe TLP等核心技术。、本章将介绍核心的基本概念:主要包括进程空间、页机制、DMA类型。
2024-01-12 15:53:40
1484
原创 Linux下PCI设备驱动开发详解(八)
RIFFA的Linux驱动文件夹下有6个C源码文件,riffa_driver.c、riffa_driver.h、circ_queue.c、circ_queue.h、riffa.c、riffa.h。其中riffa.c和riffa.h不属于驱动源码,它们是系统函数调用驱动封装的一层接口,属于用户态应用程序的一部分。
2024-01-09 14:07:02
1663
3
原创 Linux下PCI设备驱动开发详解(七)
本文主要介绍消息队列,即riffa.c和riffa.h文件。riffa是为了在内核中使用而编写的消息队列,用于同步中断和进程。
2024-01-03 14:19:26
1883
原创 Linux下PCI设备驱动开发详解(六)
一般来说,用模块方式编写PCI设备驱动,通常至少要实现以下几个部分:初始化设备模块、设备打开模块、数据读写模块、中断处理模块、设备释放模块、设备卸载模块。
2023-12-28 15:11:41
1395
原创 Linux下PCI设备驱动开发详解(五)
我们将从用户态软件、内核态驱动、FPGA逻辑介绍一个通过PCI Express总线实现CPU和FPGA数据通信的简单框架。
2023-12-24 15:30:25
2101
原创 Linux下PCI设备驱动开发详解(四)
一般来说,用模块方式编写PCI设备驱动,通常至少要实现以下几个部分:初始化设备模块、设备打开模块、数据读写模块、中断处理模块、设备释放模块、设备卸载模块。
2023-12-19 10:08:10
1928
原创 Linux下PCI设备驱动开发详解(三)
在进行PCIe实际软硬件开发之前,我们要先非常清晰几个概念,这些概念可以让我们高屋建瓴,了解整个PCIe软硬异构系统如何运行的,以及PCIe驱动和PCIe device处在整个系统的什么位置,非常关键。
2023-12-14 16:32:33
2524
原创 Linux下PCI设备驱动开发详解(二)
PCI驱动包括PCI通用的驱动,以及根据实际需要设备本身的驱动。本文将详细介绍linux内核在PCI驱动初始化的行为。
2023-12-13 15:31:36
4304
2
原创 Linux下PCI设备驱动开发详解(一)
PCI总线是目前应用最广泛的计算机总线标准,而且是一种兼容性最强,功能最全的计算机总线。而linux作为一种开源的操作系统,同时也为PCI总线与各种新型设备互联成为可能。尤其被现在的异构计算GPU/FPGA、软硬结合新的方向广泛运用。
2023-12-08 22:29:23
3422
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人