跳转到主要内容

博客

FPGA建立时间与保持时间如何理解?

在 FPGA 的时序设计与分析中,建立时间(Setup Time)和保持时间(Hold Time)是保障数字电路稳定工作的核心时序参数

Xilinx FPGA 时钟之心:MMCME2_ADV 全面详解

今天,我们将剥开 IP 核的外壳,深入到底层原语(Primitive)层面,全方位解析 Xilinx 7 系列中最强大的混合模式时钟管理器——MMCME2_ADV。

Vivado增量编译,你用对了不?

Vivado增量编译包括增量综合和增量布局布线,增量布局布线最耗时,推荐设置增量布局布线,以有效降低编译时间。

DO‑254 物理测试如何支撑审查与取证?

这一篇,我们不再讲“怎么做测试”, 而是从审查与取证的角度,回答一个核心问题:DO‑254 物理测试,究竟是如何支撑审查通过的?


Vivado仿真加速有哪些方法?

vivado仿真真的很慢,所以FPGA开发一般都用modelsim仿真,这里分享一个vivado仿真加速的设置方法。

用 Python 写 FPGA IP!—— MyHDL 自定义中断生成器实践

使用 Python/MyHDL 创建自定义 FPGA IP,与 Vivado 集成,并通过 PYNQ 进行控制——实现软件上的简单硬件设计。

FPGA组合逻辑设计技巧分享3

两个 N 位二进制数相加,为防止溢出,应将和设置为 N+1 位。对于无符号 N 位二进制数,最大值为2^N - 1


FPGA组合逻辑设计技巧分享2

采用if语句描述组合逻辑时,对于不完备的if语句,即缺少else分支的if语句要格外关注,因为综合工具会将其视为锁存器。

FPGA组合逻辑设计技巧分享1:互斥条件分支优先使用 case 语句

尽管当用互斥条件指定if-elsif-else语句和case语句等效,两者都会被综合为多路选择器(MUX),不再具有优先级,但仍建议优先使用case语句

DO‑254 鲁棒性测试到底应该怎么做?

如果说前面的物理测试是在证明“它能正常工作”, 那么鲁棒性测试要证明的是: ——当一切不正常时,它依然是安全的。在 DO‑254 DAL‑A 项目中, 鲁棒性测试不是“加分项”,而是硬门槛。


KRS(Kria Robotics Stack):Zynq / FPGA 机器人开发,迈向完整 ROS 2 系统的一步

在这个示例项目中,使用 AMD Kria™ KV260 Vision AI Starter Kit 结合 TurtleBot3 Waffle 移动机器人平台 来构建一个真实可运行的 ROS 2 系统。

仿真为什么抓不到 CDC?

仿真没抓到 CDC, 那工程验证到底该信谁?这一篇,我们把这件事彻底讲清楚。


DO‑254 物理测试到底在“测什么”?

“我们已经做了板级测试,也在 FPGA 上跑过程序了, 这还不算物理测试吗?”如果你在 DO‑254 项目里问过、或被问过这句话,那么这一篇文章,就是写给你的。


亚稳态到底是什么?它真的有那么可怕吗?

如果你做过跨时钟域设计,那“亚稳态”这三个字一定不陌生。但奇怪的是:教科书里把它说得非常吓人  


从网络接口到 DMA,一套面向工程师的 FPGA 网络开发框架

Liberouter的Network Development Kit(NDK) 是一套专门用来快速开发 FPGA 加速网络应用的开源框架,是连接高速网络接口、FPGA 逻辑与主机处理器 的工程级利器。

跨时钟域为什么这么容易出问题?

做FPGA的,大多数人第一次被 CDC(Clock Domain Crossing)教育, 往往不是在仿真阶段,而是在系统已经交付之后。

KRS(Kratos Robotics Stack):让 Zynq / FPGA 机器人开发真正“跑”起来

在机器人与自主系统开发中,ROS 2 已经成为事实标准,但当它遇到 FPGA / Zynq / Kria 这类异构平台时,工程复杂度往往直线上升。

Verilog 经典教程(8)If语句和Case语句

这篇文章将讨论 verilog 中两个最常用的结构----if语句和case语句。

入门新手必读!Xilinx FPGA在线支持资源使用指南

FPGA设计人员可根据自身项目的设计类型与当前所处阶段,参考本文提供的各种网站资源,精准匹配适用的支持渠道,提高FPGA项目开发效率。

Xilinx FPGA硬件设计:器件管脚手册

我们在设计FPGA硬件电路板时,器件管脚手册是非常重要的参考文档,本文我们介绍如何在Xilinx官网下载Pinout管脚手册及如何应用该手册。