JESD204 ip核使用與例程分析(二)

JESD204 ip核使用與例程分析(二)

  • JESD204時鐘方案
  • 專用差分時鐘對
  • 例程分析
    • jesd204_0_transport_layer_demapper
    • jesd204_0_sig_chk
    • jesd204_0_clocking
    • jesd204_0 ip核
      • port
      • 寄存器
      • AXI-LITE寄存器配置
    • jesd204_phy ip核

JESD204時鐘方案

在這里插入圖片描述
圖3-1所示為最通用、靈活的時鐘解決方案。在圖中,refclk和glblclk均由同一外部時鐘芯片產生,進入FPGA后分別作為JESD204_PHY內部收發器的參考時鐘和JESD204 IP核的核時鐘。在這種方式下,參考時鐘和核時鐘完全物理上分離,它們可以運行在不同的時鐘頻率下而沒有相互限制。

唯一的限制就是參考時鐘的頻率值要根據收發器線速率的大小而選擇,核時鐘的頻率值則完全等于線速率的1/40倍。

假設線速率為6.25G,那么核時鐘的頻率值為6.25G/40=156.25MHZ,參考時鐘頻率也可選156.25MHZ

專用差分時鐘對

  input                   refclk0p,input                   refclk0n,input                   glblclkp,input                   glblclkn,
  • refclk0p/n 是SerDes專用參考時鐘,必須專用;
  • glblclkp/n 是FPGA內部邏輯的全局時鐘,強烈建議專用,以保證系統的穩定和可靠。最好專用

例程分析

vivado自帶例程,假設ADC分辨率為14bit,含2bit控制位;

jesd204_0_transport_layer_demapper

該模塊用于JESD204協議接收端的Transport Layer(傳輸層)解包。

  • 輸入為寬總線格式的串行接收數據(rx_tdata[255:0]),以及數據有效信號(rx_tvalid)。
  • 將輸入的256位數據流,按照JESD204協議格式,分離成8個通道(Channel 0~7),每個通道包含兩個采樣數據(sampl0、sampl1)和兩個控制位(cntrl0、cntrl1)。
  • 每個采樣數據為14位,每個控制信號為2位。
  • 對每個通道的數據和控制信號進行寄存,同步輸出到下一級模塊,便于后續數據處理和分析。
  • 通過ready_out信號,指示當前輸出數據是否有效。

在代碼移植,實現JESD204功能時不使用該模塊,自己拆分ADC接收到的數據

jesd204_0_sig_chk

  • 該模塊是JESD204示例工程中的信號校驗模塊,用于對接收到的多通道采樣數據和控制信號進行自動比對和校驗。
  • 輸入為8個通道的采樣數據(每通道2組采樣,每組采樣14位)和控制信號(每通道2個控制信號,每個2位)。

為什么每個通道兩組采樣?
每個通道有兩組采樣,是因為JESD204協議和IP核設計時,為了提高數據吞吐率和鏈路利用率,每個時鐘周期會打包傳輸多個采樣數據。這樣既能高效利用帶寬,也方便后續數據處理。

原因1:

  • JESD204協議在數據傳輸時,通常會將多個采樣數據打包在一個數據幀/多幀中,以提高鏈路利用率和吞吐率。
  • 在FPGA端,每個時鐘周期從IP核輸出的數據總線(如256位)往往包含了多個采樣點的數據,而不是單一采樣。

原因2:提升數據吞吐率

  • JESD204鏈路速率很高,單個采樣數據位寬較小(如8位、14位等)。
  • 每個時鐘周期傳輸多個采樣,可以充分利用總線帶寬,減少時鐘頻率壓力,提高系統效率。

jesd204_0_clocking

  • 接收兩組差分時鐘輸入信號:
    refclk_pad_p/n:SerDes(高速收發器)參考時鐘輸入
    glblclk_pad_p/n:FPGA全局時鐘輸入
    通過 Xilinx 的專用差分輸入緩沖器(IBUFDS_GTE2 和 IBUFDS)將差分時鐘信號轉換為單端時鐘信號,供后續電路使用。

  • 全局時鐘分布
    使用全局時鐘緩沖器(BUFG)對全局時鐘進行緩沖和分發

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/81978.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/81978.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/81978.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

微軟全新開源的Agentic Web網絡項目:NLWeb,到底是什么 ?

目錄 1、背景 2、NLWeb是什么? 3、NLWeb是如何工作的? 3.1 技術原理 3.2 對發布者的價值 3.3 核心團隊與合作伙伴 4、快速入門指南 5、延伸閱讀 Agentic:Agent的形容詞,Agentic指系統由大型語言模型(LLM&#…

前端性能優化的秘密武器:Preload 與 Prefetch 的深度解析

前端性能優化的秘密武器:Preload 與 Prefetch 的深度解析 在前端開發中,頁面加載速度直接影響用戶體驗和業務轉化率。而“資源預加載”技術,正是優化加載性能的核心手段之一。本文將深入淺出地講解 Preload 與 Prefetch 這兩項技術&#xff…

App Builder技術選型指南:從AI編程到小程序容器,外賣App開發實戰

在2025年快速迭代的技術生態中,開發者構建App的路徑愈發多樣化。本文以開發一個同城外賣App為例,對比當前主流的AI編程工具(如Cursor、GitHub Copilot、Trae)與小程序容器技術(如FinClip)的優劣勢、難易度及…

深度學習入門到實戰:用PyTorch打通數學、張量與模型訓練全鏈路?

本文較長,建議點贊收藏,以免遺失。更多AI大模型應用開發學習視頻及資料,盡在聚客AI學院。 一. 人工智能、機器學習與深度學習的關系 1.1 概念層次解析 人工智能(AI):使機器模擬人類智能的廣義領域 機器學…

windows服務器部署jenkins工具(一)

jenkins作為一款常用的構建發布工具,極大的簡化了項目部署發布流程。jenkins通常是部署在linux服務上,今天給大家分享的是windows服務器上如何搭建jenkins發布工具。 1.首先第一步還是看windows安裝docker 這篇文章哈,當然也可以不采用docke…

前端開發規范性利器系列之:ESLint

前言 我是一名從事低代碼平臺研發的前端CV程序猿,有幾十名像我一樣的小伙伴協同研發。在長期的多人協作和滾動迭代中,不出意外,代碼中會充斥各種“壞味道”,如代碼風格不統一、擴展性和靈活性降低等問題。我們是如何解決這些問題的…

數據結構知識點匯總

1、在數據結構中,隨機訪問是指能夠直接訪問任一元素,而不需要從特定的起始位置開始,也不需要按順序訪問其他元素。這種訪問方式通常不涉及遍歷。例如,數組(array)支持隨機訪問,你可以直接通過索…

ubuntu中上傳項目至GitHub倉庫教程

一、到github官網注冊用戶 1.注冊用戶 地址:https://github.com/ 2.安裝Git 打開終端,輸入指令git,檢查是否已安裝Git 如果沒有安裝就輸入指令 sudo apt-get install git 二、上傳項目到github 1.創建項目倉庫 進入github主頁,點擊號…

C#在 .NET 9.0 中啟用二進制序列化:配置、風險與替代方案

在 .NET 9.0 中啟用二進制序列化:配置、風險與替代方案 引言一、啟用二進制序列化的步驟二、實現序列化與反序列化三、安全風險與緩解措施四、推薦替代方案五、總結 引言 在 .NET 生態中,二進制序列化(Binary Serialization)曾是…

如何解決鴻蒙應用閃退問題

如何解決鴻蒙應用閃退問題 本文是一份面向 ArkTS/JavaScript/C 多語言開發者的綜合性排查與優化手冊,覆蓋 HarmonyOS/OpenHarmony 5.x 時代 常見閃退根因、診斷流程、調試技巧、CI 監控及線上防護方案,力爭幫你把 Crash 數量降到 …

【Java高階面經:微服務篇】4.大促生存法則:微服務降級實戰與高可用架構設計

一、降級決策的核心邏輯:資源博弈下的生存選擇 1.1 大促場景的資源極限挑戰 在電商大促等極端流量場景下,系統面臨的資源瓶頸呈現指數級增長: 流量特征: 峰值QPS可達日常的50倍以上(如某電商大促下單QPS從1萬突增至50萬)流量毛刺持續時間短(通常2-4小時),但對系統穩…

關于我對傳統系統機構向大模型架構演進的認知

最近這段時間在研究大模型,不可避免會接觸到架構。從我職業經歷一路走來,自然會拿著現有模型的架構和我之前接觸到的系統架構進行對比。今天就大模型的架構和傳統系統架構進行一下梳理,說一說我的見解。 在我眼里,傳統系統架構如…

圖片識別(TransFormerCNNMLP)

目錄 一、Transformer (一)ViT:Transformer 引入計算機視覺的里程碑 (二)Swin-Transformer:借鑒卷積改進 ViT (三)VAN:使用卷積模仿 ViT (四)…

性能測試、壓力測試、負載測試如何區分

一、前言:為何區分三者如此重要? “你們做過壓力測試嗎?”“系統性能測試做得怎么樣?”“負載測試的數據能分享一下嗎?” 在很多軟件開發與測試團隊的日常溝通中,“性能測試”“壓力測試”“負載測試”這…

工業路由器WiFi6+5G的作用與使用指南,和普通路由器對比

工業路由器的技術優勢 在現代工業環境中,網絡連接的可靠性與效率直接影響生產效率和數據處理能力。WiFi 6(即802.11ax)和5G技術的結合,為工業路由器注入了強大的性能,使其成為智能制造、物聯網和邊緣計算的理想選擇。…

紫光同創FPGA實現AD9238數據采集轉UDP網絡傳輸,分享PDS工程源碼和技術支持和QT上位機

目錄 1、前言工程概述免責聲明 2、相關方案推薦我已有的所有工程源碼總目錄----方便你快速找到自己喜歡的項目紫光同創FPGA相關方案推薦我這里已有的以太網方案本方案在Xilinx系列FPGA的應用方案 3、設計思路框架工程設計原理框圖AD輸入源AD9238數據采集AD9238數據緩存控制模塊…

如何修改服務器管理員賬號名和密碼(1)

命令解析sudo useradd -m -s /bin/bash 新用戶名 1. sudo 作用:以超級用戶(root)權限執行命令 為什么需要:創建用戶需要修改系統文件(/etc/passwd, /etc/shadow等),普通用戶沒有這個權限 替代方案:如果已經是root用戶&#xff0…

Linux shell 正則表達式高效使用

Linux正則表達式高效使用教程 正則表達式是Linux命令行中強大的文本處理工具,能夠極大提高搜索和匹配效率。下面為新手提供一個簡單教程,介紹如何在grep和find命令中使用正則表達式。 使用建議:使用grep時要加-E選項使其支持擴展正則表達式&…

你通俗易懂的理解——線程、多線程與線程池

一:異常處理 1.1 異常概述 (1)場景 (2)定義 (3)異常拋出機制 Java把不同的異常用不同的類表示 (4)如何對待異常 1.2 常見異常類 (1)Throwable &am…

w~自動駕駛~合集13

我自己的原文哦~ https://blog.51cto.com/whaosoft/13933252 # 小米智能駕駛技術的一些猜測 來蹭一下小米汽車智能駕駛的熱度,昨晚聽了雷總小米汽車的發布,心潮澎湃尋思下單一輛奈何現實不允許hhh。 言歸正傳吧, 本來是想主要聽一下小米…