
FPGA
文章平均质量分 71
Lightning-py
这个作者很懒,什么都没留下…
展开
-
Kernel Bypass(内核旁路)-将网络数据包的收发和处理从操作系统内核转移到用户态
网络协议栈是计算机网络中的重要组件,负责处理网络数据包在不同协议层之间的传递和处理。常见的网络协议栈有以下几种:1. 基于内核的协议栈:操作系统内核实现的网络协议栈,如Linux的TCP/IP协议栈。2. 用户空间协议栈:网络协议栈的部分或全部功能移植到用户空间,如DPDK、Netmap、XDP等。3. FPGA协议栈:基于FPGA硬件实现的网络协议栈,如NetFPGA、PacketShader等。原创 2023-07-17 17:50:03 · 1368 阅读 · 0 评论 -
专用集成电路(ASIC)-通用集成电路(CPU,GPU)
ASIC是一种为特定任务优化的高性能、低功耗芯片,广泛应用于加密、网络、人工智能、图像处理等领域。尽管ASIC的设计和制造成本较高,但其在特定任务中的性能优势使其成为许多高性能系统的核心组件。随着技术的发展,ASIC在AI、5G和自动驾驶等领域的应用前景广阔。原创 2025-02-17 19:53:35 · 1127 阅读 · 0 评论 -
DPU测试-需要掌握的知识
DPU(Data Processing Unit)板卡是一种专门用于加速数据处理任务的硬件设备,通常用于高性能计算、网络加速、存储加速和人工智能等领域。原创 2025-02-17 19:04:19 · 669 阅读 · 0 评论 -
硬件-IOMMU
IOMMU(Input-Output Memory Management Unit 输入/输出内存管理单元)是一种硬件功能,用于管理设备对系统内存的访问。它通过将设备的DMA操作映射到特定的内存区域,增强了系统的安全性和稳定性,防止设备越界访问内存。:某些依赖IOMMU的虚拟化技术(如VT-d)可能无法正常工作。:设备可能直接访问任意内存区域,增加安全风险。:限制设备只能访问指定内存区域,防止越界访问。:减少地址转换开销,适合对性能要求高的场景。:地址转换会增加延迟,影响性能。原创 2025-02-08 11:28:00 · 481 阅读 · 0 评论 -
Verilog编程规范、示例
input:定义模块的输入信号,可以是wire类型或其他类型,表示外部输入的信号。output:定义模块的输出信号,通常是wire或reg类型,表示模块输出到外部的信号。inout:用于双向信号,可以同时作为输入和输出,根据外部控制信号的状态决定其行为。parameter定义一个常量值,建议全部字母大写,并用来定义有实际意义的常数,如单位延时、版本号等。input wire [WIDTH-1:0] data_in, // 输入数据,宽度由 parameter 决定。原创 2024-11-08 16:12:04 · 1231 阅读 · 0 评论 -
Verilog的注释、关键字、程序框架
module:用于定义一个模块,是Verilog程序的基本单元。endmodule:用于结束一个模块的定义。input:声明输入端口,用于接收来自外部模块或其他实例的数据。output:声明输出端口,用于将模块内部的数据发送给外部模块或其他实例。inout:声明双向端口,既可以用作输入端口,也可以用作输出端口,通常用于需要双向通信的场合。原创 2024-11-08 11:28:32 · 1154 阅读 · 0 评论 -
Verilog基础知识-运算符
&、|、^、~位运算符的优先级通常最低,但高于括号和赋值运算符(在表达式中,位运算符的优先级可能会受到其他因素的影响,如结合性或括号的使用)。:=、+=、-=、*=、/=、%=、|=、^=、&=、>>=、原创 2024-11-08 11:11:45 · 1123 阅读 · 0 评论 -
Verilog基础知识-数据类型
枚举数据类型使用enum关键字定义,可以表示一组固定的值,如颜色、星期等。参数化数据类型使用parameter或localparam关键字定义,可以在模块实例化时传递和修改参数。自定义类型使用typedef关键字可以定义用户自定义的数据类型,如自定义的结构体、枚举等。原创 2024-11-08 10:08:07 · 1054 阅读 · 0 评论 -
Verilog基础知识-数字进制格式
Verilog数字常量可以使用不同的进制格式进行表示,包括二进制、八进制、十进制和十六进制。原创 2024-11-07 11:29:57 · 930 阅读 · 0 评论 -
Verilog基础知识-标识符
标识符(identifier)用于定义模块名、端口名、信号名等。原创 2024-11-07 11:20:45 · 424 阅读 · 0 评论 -
Verilog基础知识-逻辑值
在 Verilog 中,逻辑值用于表示数字电路中的状态。原创 2024-11-07 11:06:51 · 748 阅读 · 0 评论 -
Alveo 概念拓扑结构
在 Alveo 加速卡中,涉及到的概念拓扑结构主要包括 Alveo 卡上的各个关键组件以及与主机系统之间的通信结构。原创 2024-03-08 15:33:00 · 785 阅读 · 0 评论 -
Alveo U200 和 U250 数据中心加速器卡硬件原理图
在 U200 中,PCIe 接口用于与主机系统通信,以便通过 PCIe 总线与 FPGA 进行数据交换和控制。在 U200 中,DDR 用于存储 FPGA 运行时所需的数据和程序等。闪存:闪存是一种非易失性存储器,用于存储 FPGA 的配置文件和其它的固件。在 U200 中,闪存用于存储 FPGA 的逻辑配置文件,以便在开机时加载并初始化 FPGA。维护端口:维护端口是一种特殊的串行通信接口,用于与 U200 进行调试和配置。时钟:U200 中包含多个时钟源,用于为 FPGA 和其他器件提供时钟信号。原创 2024-03-08 15:15:39 · 1144 阅读 · 0 评论 -
Intel网卡
支持虚拟化相关的技术,如SR-IOV(Single Root I/O Virtualization)和VMDq(Virtual Machine Device Queues),以提高在虚拟化环境下的性能和管理效率。:支持不同的以太网速率,如千兆以太网(Gigabit Ethernet)、万兆以太网(10 Gigabit Ethernet)甚至更高速率,或者无线网络速率(如Wi-Fi 6)。Intel的不同配置网卡可能会支持各种不同的功能,具体功能取决于网卡型号和规格。原创 2024-03-01 17:53:31 · 464 阅读 · 0 评论