基于FPGA的CARRY4 抽头延迟链TDC延时仿真

基于FPGA的CARRY4 抽头延迟链TDC延时仿真

基于FPGA的CARRY4 抽头延迟链TDC延时仿真

1 摘要

基于 FPGA 的 CARRY4 抽头延迟链 TDC,核心是利用 Xilinx FPGA 中 CARRY4 进位单元的固定、低抖动级联延迟构建抽头延迟线,通过锁存信号传播位置实现亚纳秒级时间测量,单级进位延迟约 10–30 ps,级联后可覆盖更大时间量程并结合粗计数拓展动态范围。TDC设计利用FPGA的专用进位链硬件,实现了亚纳秒级的时间测量精度,这是传统数字方法无法达到的。虽然需要校准,但其性能优势和数字集成的便利性使其成为高精度时间测量的首选方案。

2 CARRY4 核心结构与抽头延迟链原理

2.1 CARRY4 单元结构(Xilinx 7 系列 / UltraScale)
每个 CARRY4 包含 4 个 MUXCY 进位选择器与 4 个 XORCY 异或门,形成 4 级进位链,CIN 为进位输入,COUT 为级联输出,CO0–CO3 为 4 个抽头输出,可引出每级进位节点信号。级联方式:上一级 CARRY4 的 COUT 接下一级 CIN,形成连续延迟链;抽头 CO0–CO3 分别连接 D 触发器,由停止信号(Stop)或全局时钟同步锁存。

在这里插入图片描述

2.2. 抽头延迟链 TDC 工作原理
①起始信号(Start)从链首 CIN 注入,沿 CARRY4 级联路径以固定延迟传播。
②停止信号触发所有抽头处的 D 触发器锁存当前传播状态,形成 “温度计码”。
③温度计码经编码器转换为二进制细时间值 T_fine,结合粗计数器(如系统时钟计数)得到总时间 T_total=T_coarse+T_fine。

在这里插入图片描述

)

3 Xilinx FPGA CARRY4 单元核

3.1 CARRY4的工作原理
PGA的CARRY4进位单元,每个CARRY4的COUT连接到下一个CARRY4的CIN,这样级联起来,形成延时链。

CYINIT → MUXCY0 → CO[0] → MUXCY1 → CO[1] → MUXCY2 → CO[2] → MUXCY3 → CO[3] ↗ ↗ ↗ ↗ ↗ ↗ ↗ ↗ DI[0] S[0] DI[1] S[1] DI[2] S[2] DI[3] S[3] 

模拟内部结构

`timescale 1ps/1ps module CARRY5( output [3:0] CO, output [3:0] O, input CI, input CYINIT, input [3:0] DI, input [3:0] S ); // 模拟Xilinx CARRY4的行为 reg [3:0] co_int; always @* begin // 传播延迟:每个CARRY4约10ps #10; // CARRY4逻辑 co_int[0] = (CYINIT & S[0]) | (CI & S[0]) | DI[0]; co_int[1] = (co_int[0] & S[1]) | DI[1]; co_int[2] = (co_int[1] & S[2]) | DI[2]; co_int[3] = (co_int[2] & S[3]) | DI[3]; end assign CO = co_int; assign O = co_int; endmodule 

3.2 Xilinx FP

Read more

在 Mac Mini M4 上本地跑大模型(Ollama + Llama + ComfyUI + Stable Diffusion | Flux)

在 Mac Mini M4 上本地跑大模型(Ollama + Llama + ComfyUI + Stable Diffusion | Flux)

Mac Mini M4 配备了苹果自家研发的 M1/M2/M4 芯片,具有强大的处理能力,能够支持本地跑一些大模型,尤其是在使用如 Ollama、Llama、ComfyUI 和 Stable Diffusion 这类 AI 相关工具时,性能表现非常好。本教程将指导你如何在 Mac Mini M4 上本地部署并运行这些大模型,涵盖从环境搭建到使用的全流程。 一、准备工作 1. 确保系统更新 确保你的 macOS 版本已更新到最新的版本(例如 macOS 13.0 以上),这将确保兼容性和性能。 安装 Homebrew(macOS 包管理工具) Homebrew 是 macOS 上非常流行的包管理工具,它帮助你方便地安装各种软件。在终端中输入以下命令来安装

解决VsCode远程服务器上Copilot无法使用Claude的问题

最近在用vscode中的GitHub copilot,发现无法使用claude系列的模型 很多小伙伴知道要开代理,开往带你以后claude确实会出来,本地使用没有任何问题,但是如果使用远程服务器ssh,claude系列的模型就消失了,参考这篇博客https://blog.ZEEKLOG.net/qq_40620465/article/details/152000104 按照博主的方法,需要加一个改动,在设置远程服务器(注意不是“用户”)的setting.json时需要加入"http.useLocalProxyConfiguration": true, 完成后再重启vscode,claude就有了:

n8n 集成飞书机器人完整实战指南:从零到一的踩坑之路

n8n 集成飞书机器人完整实战指南:从零到一的踩坑之路

n8n 集成飞书机器人完整实战指南:从零到一的踩坑之路 前言 本文记录了近期项目中在 Docker 环境下使用 n8n 集成飞书机器人踩坑的完整过程,包括遇到的各种坑点和解决方案。希望能帮助后来者避免重复踩坑。 项目背景 我们的目标是将一个 n8n 销售助手工作流集成到飞书聊天中,实现: * 用户在飞书群聊或私聊中@机器人 * 机器人接收消息并调用 AI 模型处理 * 返回个性化的销售建议 环境架构 飞书客户端 → 飞书开放平台 → WebSocket → n8n → PostgreSQL ↓ OpenAI API 对应的n8n业务流 技术栈 * n8n: 1.111.0 (Docker 部署) * PostgreSQL: 16 * Nginx: 反向代理 * 飞书开放平台: 企业自建应用 * 社区包: n8n-nodes-feishu-lark 踩坑记录与解决方案 坑0:Webhook 方式的深度陷阱(

VRCT智能翻译工具:打破VRChat语言壁垒的终极解决方案

你是否曾在VRChat的国际房间中,因为听不懂其他玩家的语言而感到孤立?你是否渴望与来自世界各地的VR爱好者自由交流,却苦于语言障碍?VRCT智能翻译工具正是为这样的场景而生,这款革命性的跨语言沟通助手正在重新定义VR社交的边界。 【免费下载链接】VRCTVRCT(VRChat Chatbox Translator & Transcription) 项目地址: https://gitcode.com/gh_mirrors/vr/VRCT 三大技术突破重塑VR社交体验 实时语音识别技术革新 VRCT采用前沿的神经网络算法,能够准确捕捉并转换麦克风输入和扬声器输出的音频内容。系统内置智能降噪模块,即使在嘈杂的虚拟环境中也能保持高识别率。通过src-python/models/transcription/目录下的语音处理模块,实现毫秒级响应速度。 多语言互译引擎优化 支持英语、中文、日语、韩语等多种语言间的精准互译。基于src-python/models/translation/目录下的翻译设置文件,系统能够理解不同语言的语法结构和文化背景,确保翻译结果的自然流畅。 VRCh