前言
在很多以太网、SATA 或其他高速接口项目中,我们经常会接触到 CRC(循环冗余校验)。通常,工程师会通过网站或软件工具生成一整套带异或操作的组合逻辑来实现 CRC 算法,而不去深入理解其原理—
AdriftCoreFPGA芯研社 订阅号
致力于FPGA、数字IC分享
全部文章
-
-
前言 对于主机而言,FPGA-PCIe 设备通过其 BAR(Base Address Register)被识别和访问。主机必须通过读写 BAR 所映射的地址空间,才能与 FPGA-PCIe 正确通信。 -
前言 本系列不会从零讲PCIe,也不会照搬规范条款,标准文档已经够厚,这里更像是一份工程师视角下的PCIe手边笔记 , 以更简洁的方式记录PCIe的关键点。 TLP包 由于PCIe-DMA的实现始终在 -
这个脚本在多年之前我就想做出来的,算是很执念的一件事。但是无奈自己的tcl编程能力和Verdi相关指令行掌握的太弱了,尝试了几次都没有成功。而这次我决定借助大模型力量再试一次,所以对着DS描述了这个脚 -
前言 开源 AFX-SATA-DMA 控制器:高速存储接口的完整实现(附源码) SATA 的开源并不是我的主要目的。这个项目最初的出发点,其实是想借此验证和实践 cocotb 仿真的完整流程,以及构建
-
前言 在做 FPGA 存储接口实验 时,经常会遇到一个尴尬的情况:开发板自带的存储接口要么数量有限,要么干脆没有。而市面上自带 SATA 或 NVMe 的 FPGA 开发板本来就非常少见,就算有, -
很多FPGA/IC工程师擅长设计,但在仿真方面较为薄弱。我认为主要问题在于,完整的仿真实现学习成本较高,如学习UVM需要掌握大量新的内容。而单纯使用Verilog自仿又难以满足需求,以报文仿真为例, -
1前言 很多FPGA/IC工程师擅长设计,但在仿真方面较为薄弱。我认为主要问题在于,完整的仿真实现学习成本较高,如学习UVM需要掌握大量新的内容。而单纯使用Verilog自仿又难以满足需求,以报文仿真
-
前言 在上一篇文章中,我们提到相同协程是阻塞的,不同协程是并发的这一说法。然而,这种理解存在偏差,所以第一个现象并不像我们之前想象的那样。今天,我们将专门梳理协程的概念,深入剖析其本质,以纠正上次关于 -
前言 在使用 cocotb 编写测试时,很多人可能都会遇到一些让人困惑的现象:比如说,你明明在发送一帧完整数据之后,加了 await RisingEdge(clk) 想等待 5 个周期再发下一帧,但在 -
对于许多FPGA/IC工程师而言,设计实现游刃有余,验证仿真却常成短板——传统验证方法面临两难困局:学习UVM需投入大量时间成本,而纯Verilog自仿又会陷入重复造轮子的低效循环。以通信协议仿真为例 -
DMA与MMIO的读写操作均通过三种基本报文实现:MWr(写请求)、MRd(读请求)和CPLD(完成带数据)。 MMIO的读写机制较为简单:写操作直接发起一次MWr请求;读操作则先发起MRd请求,然后 -
• 前言 • SV的优劣 • 最方便的信号类型(logic) • 定义复杂信号的优雅方式(struct) • 最省心的状态机利器(enum) • 提前发现多驱 • 让数据结构更清爽的秘诀(type