FPGA匠人手記:工程師的技術成長之路

郭振揚

  • 出版商: 人民郵電
  • 出版日期: 2026-08-01
  • 定價: $593
  • 售價: $592
  • 語言: 簡體中文
  • 頁數: 321
  • ISBN: 7115685339
  • ISBN-13: 9787115685339
  • 相關分類: FPGA
  • 下單後立即進貨 (約4週~6週)

  • FPGA匠人手記:工程師的技術成長之路-preview-1
FPGA匠人手記:工程師的技術成長之路-preview-1

買這商品的人也買了...

相關主題

商品描述

本書凝聚資深工程師十余年的FPGA開發經驗,基於行業核心特質——知識體系穩定、技術門檻高、經驗壁壘強,系統性地構建了FPGA開發的完整知識框架,以幫助FPGA工程師塑造獨特的職業“抗衰老”優勢。本書包含六大核心內容:基礎知識,邏輯設計,高速串行收發器的使用,數字信號處理,調試技巧與經驗,FPGA與ASIC RTL的異同。書中融入了大量來自真實項目的經驗總結和“避坑”指南,為處於職業成長期、常在實際工程中遇到瓶頸的工程師提供參考。 本書是一份技術指南,也是一本職業發展啟示錄——既授“如何做”,又啟“如何思”,能幫助FPGA工程師突破技術“天花板”,實現職業躍升。

作者簡介

郭振揚,資深FPGA開發工程師,軟件無線電和衛星導航領域的深度愛好者,微信公眾號為「FPGA十年老鳥」,CSDN知名博主。作者樂於分享技術,累計撰寫兩百余篇實戰博客,內容貼近工程實際痛點,在網絡上受到FPGA開發者的認可。工作內容涉及邏輯設計、高速數字接口、數字信號處理等領域的FPGA工程落地,曾參與過多個量產項目的開發。擅長從底層電路的角度拆解設計思路,在時序優化、調試排錯等方面積累了一些自己的經驗和心得。

目錄大綱

目 錄 第 一部分 基礎知識 第 1章 FPGA概述 2 1.1 FPGA定義 2 1.2 FPGA的基本結構 2 1.3 FPGA的設計 5 第 2章 FPGA的資源 6 2.1 資源的種類 6 2.2 CLB 7 2.3 DSP切片 9 2.4 BRAM 10 2.5 SelectIO 10 2.6 CMT 12 2.7 收發器 12 2.8 布線資源 13 第3章 硬件描述語言 14 3.1 可綜合的語句 14 3.2 編碼風格 15 3.3 描述“硬件”的語言 16 第4章 理解原語 18 4.1 原語的定義 18 4.2 原語的種類 18 4.3 原語的使用 19 第5章 FPGA設計的實現 23 5.1 設計定義 23 5.2 HDL實現和功能仿真 24 5.3 邏輯綜合 25 5.4 門級仿真 25 5.5 布局布線 26 5.6 時序仿真 26 5.7 靜態時序分析 27 5.8 板級測試 27 第6章 FPGA工具的使用 28 6.1 Vivado的使用 28 6.2 ModelSim的使用 31 第二部分 邏輯設計漫談 第7章 寫代碼心中要有電路 36 7.1 心中無電路 36 7.2 心中有電路 36 第8章 邏輯級數 40 8.1 邏輯級數的概念 40 8.2 邏輯級數的影響 43 8.3 討論 44 第9章 常用邏輯的邏輯級數預估 45 9.1 常用的邏輯塊 45 9.2 邏輯級數拆分 57 第 10章 復位的設計 60 10.1 復位的目的 60 10.2 全局復位的代價 60 10.3 復位設計要點 61 10.4 復位設計建議 64 第 11章 時序分析與約束 65 11.1 時序分析場景 65 11.2 單周期時序分析模型 67 11.3 輸入端口處時序分析模型 69 11.4 輸出端口處時序分析模型 72 第 12章 時序報告解讀 74 12.1 時序摘要 74 12.2 時序路徑詳細解讀 75 12.3 理想與現實的差異 78 第 13章 時序不通過怎麼辦 82 13.1 時序不通過的原因 82 13.2 跨時鐘域問題未得到妥善處理 82 13.3 存在較少的時序違例 82 13.4 邏輯級數過深 83 13.5 扇出過大 83 13.6 資源擁塞 84 13.7 IDE版本過低 85 13.8 大範圍時序違例 85 第 14章 跨時鐘域處理 86 14.1 常見跨時鐘域問題 86 14.2 常見跨時鐘域處理 90 14.3 跨時鐘域的約束 96 第 15章 塊存儲器的高效使用 99 15.1 配置種類 99 15.2 讀寫操作模式 99 15.3 優化設計 100 第 16章 DSP48E1的高效利用 103 16.1 DSP48E1的功能 103 16.2 實現相關器實例 104 第 17章 高速I/O信號的接收處理 110 17.1 I/O邏輯資源 110 17.2 高速I/O信號處理 112 第三部分 高速串行收發器的使用 第 18章 高速收發器基礎知識 118 18.1 基本模型 118 18.2 線路編碼 119 18.3 時鐘恢復 122 18.4 接收字對齊 123 18.5 時鐘校正 124 18.6 接收緩沖器和發送緩沖器 126 18.7 通道綁定 126 18.8 信號完整性與眼圖 127 18.9 發送均衡 132 18.10 接收均衡 133 第 19章 Xilinx FPGA收發器簡介 135 19.1 收發器結構 135 19.2 收發器向導IP 136 19.3 討論 139 第 20章 參考時鐘 140 20.1 相關電路與原語 140 20.2 相關端口與使用 145 第 21章 發送通道時鐘分析 150 21.1 TX PMA內部時鐘分析 150 21.2 TX PCS內部時鐘分析 152 21.3 TXUSRCLK、TXUSRCLK2的來源 154 21.4 相關端口與使用 156 第 22章 接收通道時鐘分析 157 22.1 RX PMA內部時鐘分析 157 22.2 RX PCS內部時鐘分析 159 22.3 RXUSRCLK、RXUSRCLK2的來源 161 22.4 相關端口與使用 165 第 23章 發送鏈路信號處理 166 23.1 FPGA TX接口 166 23.2 TX碼型發生器 169 23.3 TX緩沖器 170 23.4 極性反轉功能 171 第 24章 接收鏈路信號處理 172 24.1 極性反轉功能 172 24.2 PRBS檢查器 173 24.3 字節對齊和字邊界對齊 173 24.4 接收彈性緩沖器 176 24.5 時鐘校正功能 176 24.6 通道綁定功能 179 24.7 FPGA RX接口 182 第 25章 高速收發器的前端和均衡 186 25.1 發送端前端和均衡 186 25.2 接收端模擬前端 188 25.3 接收端均衡 190 第 26章 收發器調試工具IBERT 192 26.1 IBERT基本介紹 192 26.2 IBERT設置 193 26.3 測試界面 194 26.4 示波器實測 195 26.5 參數掃描 197 第 27章 基於收發器的協議——JESD204B 201 27.1 JESD204B協議介紹 201 27.2 工程實例 206 27.3 調試步驟歸納 211 第四部分 數字信號處理 第 28章 從算法到FPGA實現 214 28.1 算法模型 214 28.2 定點模型 215 28.3 RTL實現 217 第 29章 FIR濾波器及其高效實現 219 29.1 FIR濾波器相關理論 219 29.2 FIR濾波器實現架構 220 29.3 DSP48E1實現全並行FIR濾波器 221 第30章 多速率濾波器 228 30.1 多速率濾波器相關理論 228 30.2 半帶濾波器 230 30.3 CIC濾波器 233 第31章 理解多相濾波器的實現 240 31.1 多相濾波器概述 240 31.2 多相分解 240 31.3 Nobel恒等式 242 31.4 插值抽取系統中的多相濾波結構 243 31.5 多相濾波器解決工程問題示例一 246 31.6 多相濾波器解決工程問題示例二 248 第32章 定點數據舍位處理分析 253 32.1 擴位和舍位 253 32.2 截斷低位 253 32.3 非對稱向上舍入 255 32.4 非對稱向下舍入 257 32.5 對稱向無窮大舍入 258 32.6 對稱向零舍入 260 32.7 收斂向偶數/奇數舍入 261 第33章 DDS的實現思路和性能分析 264 33.1 DDS基礎模型 264 33.2 相位截斷DDS模型 266 33.3 相位抖動DDS模型 268 33.4 泰勒級數校正DDS模型 269 33.5 波形壓縮 271 第34章 CORDIC的實現思路 273 34.1 CORDIC算法原理 273 34.2 sqrt和atan運算的算法模型 274 34.3 cos和sin運算的算法仿真 277 34.4 CORDIC算法的定點化 278 第35章 FFT的實現思路 280 35.1 DFT與FFT 280 35.2 FFT算法模型 281 35.3 基於FFT的定點模型要點 286 35.4 FFT RTL實現思路 287 第五部分 調試技巧與經驗 第36章 使用JTAG to AXI Master IP調試 294 36.1 JTAG的優勢 294 36.2 JTAG to AXI Master IP的用法 295 36.3 測試方法 296 第37章 自定義串口協議調試方法 298 37.1 自定義串口協議調試的優勢 298 37.2 串口總線協議設計 299 37.3 串口轉總線實現框圖 300 37.4 調試方法 301 第38章 使用上位機高效調試 303 38.1 問題排查的難題 303 38.2 自制上位機調試工具 304 38.3 上位機程序片段 305 第39章 FPGA設計中的典型BUG 307 39.1 BUG來源之惑 307 39.2 設計原因 307 39.3 理解原因 309 39.4 硬件原因 310 第六部分 雜談 第40章 FPGA與ASIC RTL的異同 314 第41章 FPGA開發提升歷程 318 後 記