自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 异构计算关键技术之多线程技术(四)

最近遇到了一个项目,需要写一个用户态的测试程序(独立进程),用来测试FPGA PCIe DMA的性能。

2024-03-14 15:34:42 440

原创 异构计算关键技术之mmap(二)

最近在设计异构低时延交易系统,在调研新技术的时候,发现了mmap+dma的设计架构。

2024-03-05 13:50:42 956

原创 C++最佳实践之编译篇

在大型c/c++工程开发中,往往会涉及多级CMakeLists.txt的调用,并且调用方式错综复杂。

2024-02-23 16:16:47 1422 1

原创 高级FPGA开发之PCIe IP Core(三)

通过阅读PCIe spec文档,可以看到UltraScale+器件Integrated Block For PCI Express解决方案IP核是具备高带宽、高可缩放性和高可靠串行互联的解决方案

2024-02-20 11:22:52 1672

原创 量化交易开发之循环、多股策略语法(六)

量化交易开发之循环、多股策略语法

2024-02-18 17:04:01 556

原创 异构计算关键技术之mmap

mmap被广泛应用于提高读取性能。传统上,读取数据需要通过复制数据到用户空间,这一过程涉及系统调用和数据拷贝操作,消耗大量的CPU资源和时间。而通过使用mmap,用户可以直接在内存中读取文件,避免了这些开销。因此,在Ceph中使用mmap可以提高文件读取的效率。

2024-02-10 20:16:06 1063

原创 高级FPGA开发之基础协议PCIe(二)

当PCIe主设备(RC或者EP)访问目标设备的存储器空间时,使用non-posted总线事务向目标设备发出存储器读请求TLP,目标设备收到这个存储器读请求tlp后,使用存储器读完成tlp,主动向主设备传递数据。当主设备收到目标设备的存储器读完成tlp后,将完成一次存储器读请求。

2024-02-07 10:32:23 2295

原创 高级FPGA开发之基础协议PCIe

在PCIe的系统中,tlp包的包头的结构有许多部分是相似的,通过掌握这些常规的包头,能帮助理解在PCIe总线上各个设备之间如何进行数据的收发。

2024-02-03 21:59:21 2222 4

原创 异构计算关键技术之多线程技术(三)

多线程是指在程序中同时运行多个线程,每个线程都可以独立执行不同的代码段,且各个线程之间共享程序的数据空间和资源。

2024-02-01 14:22:23 1090

原创 量化交易开发之context与判断

context是一个回测系统建立的Context类型的对象,其中存储了如当前策略运行的时间点、所持有的股票、数量、持仓成本等数据。

2024-01-30 09:29:22 955

原创 量化交易开发之函数API

以前面策略代码为例进行讲解,讲解一下python中的函数知识。

2024-01-26 11:55:41 815

原创 量化交易开发之基本语法

本教程则是以量化的情景从零讲解python编程,所以将更适合想学做量化策略的人。

2024-01-22 16:14:00 461

原创 量化交易开发之基本框架

通过前面的文章,对量化交易有了一个基本的认识之后,我们开始学习量化交易。毕竟就像学习游泳,有些东西讲是讲不懂,必须要做过!

2024-01-19 17:13:14 407

原创 量化交易开发之初识量化

本系列课程将开启手把手保姆级实战课程,开发属于你自己的量化策略!!!

2024-01-19 13:59:45 365

原创 异构计算关键技术之多线程技术(二)

本系列文章将介绍异构计算涉及到的内存管理技术、DMA技术、线程技术等。结合实例代码进行详细讲解多线程、DMA scatter-gather list、PCIe TLP等核心技术。本章将介绍核心的基本概念:主要包括用户态的线程、进程技术。

2024-01-19 08:58:07 905

原创 异构计算关键技术之内存管理与DMA(一)

本系列文章将介绍异构计算涉及到的**内存管理技术、DMA技术**。结合驱动开发、FPGA/ASIC PCIe DMA engine的实例代码进行详细讲解多线程、DMA scatter-gather list、PCIe TLP等核心技术。、本章将介绍核心的基本概念:主要包括进程空间、页机制、DMA类型。

2024-01-12 15:53:40 1051

原创 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 1077 1

原创 Linux下PCI设备驱动开发详解(七)

本文主要介绍消息队列,即riffa.c和riffa.h文件。riffa是为了在内核中使用而编写的消息队列,用于同步中断和进程。

2024-01-03 14:19:26 1187

原创 Linux下PCI设备驱动开发详解(六)

一般来说,用模块方式编写PCI设备驱动,通常至少要实现以下几个部分:初始化设备模块、设备打开模块、数据读写模块、中断处理模块、设备释放模块、设备卸载模块。

2023-12-28 15:11:41 643

原创 Linux下PCI设备驱动开发详解(五)

我们将从用户态软件、内核态驱动、FPGA逻辑介绍一个通过PCI Express总线实现CPU和FPGA数据通信的简单框架。

2023-12-24 15:30:25 1221

原创 Linux下PCI设备驱动开发详解(四)

一般来说,用模块方式编写PCI设备驱动,通常至少要实现以下几个部分:初始化设备模块、设备打开模块、数据读写模块、中断处理模块、设备释放模块、设备卸载模块。

2023-12-19 10:08:10 1243

原创 Linux下PCI设备驱动开发详解(三)

在进行PCIe实际软硬件开发之前,我们要先非常清晰几个概念,这些概念可以让我们高屋建瓴,了解整个PCIe软硬异构系统如何运行的,以及PCIe驱动和PCIe device处在整个系统的什么位置,非常关键。

2023-12-14 16:32:33 1416

原创 Linux下PCI设备驱动开发详解(二)

PCI驱动包括PCI通用的驱动,以及根据实际需要设备本身的驱动。本文将详细介绍linux内核在PCI驱动初始化的行为。

2023-12-13 15:31:36 2085

原创 Linux下PCI设备驱动开发详解(一)

PCI总线是目前应用最广泛的计算机总线标准,而且是一种兼容性最强,功能最全的计算机总线。而linux作为一种开源的操作系统,同时也为PCI总线与各种新型设备互联成为可能。尤其被现在的异构计算GPU/FPGA、软硬结合新的方向广泛运用。

2023-12-08 22:29:23 1880 1

空空如也

空空如也

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

TA关注的人

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