[主機板] CPLD介紹

更新於 發佈於 閱讀時間約 6 分鐘

CPLD的原理

CPLD(Complex Programmable Logic Device)是一種複雜可編程邏輯元件,用戶可以根據自己的需求構造出各種邏輯功能的數字集成電路[1][2]。CPLD由可編程邏輯的功能圍繞一個可編程互連矩陣構成,由固定長度的金屬線實現邏輯單元之間的互連,並增加了I/O控制模塊的數量和功能[1][2]。CPLD的基本結構可看成由可編程邏輯陣列(LAB),可編程I/O控制模塊和可編程內部連線(PIA)等三部分組成[1][2]

CPLD的結構

CPLD的結構主要由以下三部分組成[1][2]

  1. 可編程邏輯陣列(LAB):這是CPLD的核心部件,負責實現布林函數和邏輯功能。每個邏輯陣列都包含一個或多個邏輯元件,這些元件可以編程來實現特定的邏輯功能[1][2]
  2. 可編程I/O控制模塊:這部分用於與外部電路進行接口,通過輸入緩衝器、輸出驅動器和輸入輸出邏輯來實現信號的輸入和輸出[1][2]
  3. 可編程內部連線(PIA):這部分用於連接可編程邏輯單元和輸入輸出塊。這些連線可以編程來實現特定的連接模式,從而實現特定的邏輯功能[1][2]

布林函數示意:

CPLD的編程

CPLD的編程主要有兩種方法:硬件描述語言(HDL)和圖形化編程工具[1]

  1. 硬件描述語言如VHDL(Very High Speed Integrated Circuit Hardware Description Language)或Verilog,可以用於描述CPLD的邏輯功能和電路結構。下面是一個使用VHDL語言描述的簡單CPLD電路的示例[1]
library IEEE;
use IEEE.std_logic_1164.all;

entity MyCPLD is
port (
inputA : in std_logic;
inputB : in std_logic;
outputC : out std_logic;
outputD : out std_logic
);
end entity;

architecture Behavioral of MyCPLD is
signal temp1 : std_logic;
signal temp2 : std_logic;

begin
-- 邏輯操作
temp1 <= inputA and inputB;
temp2 <= inputA or inputB;

-- 輸出訊號
outputC <= temp1 xor temp2;
outputD <= not temp2;
end architecture;
  1. 圖形化編程工具:例如,Intel的Quartus Prime軟件和Xilinx的ISE軟件提供了圖形化界面,可以通過拖拽、連接和設置器件屬性來快速設計和生成CPLD的配置位流[1]

CPLD的應用

CPLD通過編程實現特定的數字電路功能,可以實現各種數字電路的功能,滿足不同應用領域的需求[1][2]。例如,它可以用於實現各種算法和組合邏輯,也可以用於完成時序邏輯2。此外,由於CPLD的連續式布線結構確定了它的時序延遲是均勻的和可預測的,而FPGA的分段式布線結構確定了其延遲的不可預測性[2],因此在某些應用中,CPLD可能比FPGA更具優勢[2]

總結來說,CPLD是一種強大的可編程邏輯器件,它通過編程實現特定的數字電路功能,並且具有高度的靈活性和快速的開發周期,因此被廣泛應用於各種數字電路系統[1][2]

CPLD在系統主機版的應用

  • 系統管理:CPLD可以用於實現各種系統管理功能,例如監控系統的運行狀態,控制系統的啟動和關閉,以及處理各種硬體事件。
  • 電源管理:CPLD可以用於實現電源管理功能,例如控制電源的開關,監控電源的狀態,以及處理電源相關的事件。此外,CPLD還可以用於實現更複雜的電源管理功能,例如電源順序控制和電源保護。
  • 邏輯閘編輯:CPLD是一種可程式的邏輯裝置,這意味著使用者可以根據需要編輯其內部的邏輯閘,以實現特定的功能。
  • 不斷電更新韌體:當需要更新韌體時,CPLD可以利用在後台更新系統韌體的方式,而不影響相關的控制應用電路,這就是所謂的Hitless Update的功能

CPLD在系統主機版的應用-電源管理

  • 監控“Power Good”信號:CPLD會持續監控每個DC-DC轉換器的“Power Good”數位信號[3]。這個信號表示電源是否在正常運作範圍內。
CPLD

CPLD

  • 管理“上電/斷電”:CPLD發出“使能”信號,驅動DC-DC轉換器實現“上電/斷電”時序[3]。這是為了避免在負載電路上電時導致損壞或邏輯錯誤。
  • 發送控制信號:CPLD可以生成電源相關的控制信號(如復位、電源正常等),以確保負載元件能夠在上電時正常工作,並在斷電時停止運作[3]
  • 電源管理架構:有多種基於CPLD的電源管理架構,每種架構都有其優點和缺點[4][5]。例如,一種架構可能使用CPLD來實現所有的電源時序、保護和控制功能,而另一種架構可能使用CPLD來實現部分功能,並使用其他元件(如微控制器或電源管理IC)來實現其他功能[4][5]
  • 靈活性和可擴展性:由於CPLD是可程式的,因此它們提供了高度的靈活性和可擴展性。這意味著工程師可以根據需要修改CPLD的邏輯,以實現特定的電源管理功能[3]
  • 不斷電更新韌體:在雲端伺服器中如需要更新韌體,在一般的使用狀態下必須將伺服器斷電後重啟才能更新,但假使能在不斷電的情況下將韌體更新且不影響伺服器的運作,即可達到不關機及更新的便利功能[6]

Reference

  1. CPLD基本原理 - 知乎 (zhihu.com)
  2. 什么是CPLD - 知乎 (zhihu.com)
  3. 使用控制PLD实现电源管理 (latticesemi.com)
  4. 基於CPLD的電路板電源管理架構比較 - 電子工程專輯 (eettaiwan.com)
  5. CPLD的PCB設計電源管理架構 (ipcb.com)
  6. 雲端伺服不關機 - Intel® CPLD實現不斷電更新韌體技術 | Macnica Galaxy
留言
avatar-img
留言分享你的想法!
avatar-img
迷茫人生的沙龍
8會員
50內容數
想發什麼就發的人,就如同我的名稱
迷茫人生的沙龍的其他內容
2025/04/01
NVIDIA 的 GB300 GPU 作為 H100 的繼任者,採用創新的 chiplet 架構,帶來效能與設計上的重大變革。本文深入探討其 chiplet 結構、HBM3e 記憶體、NVLink 第四代互連設計等核心技術,並分析其對伺服器主板設計與系統整合帶來的挑戰與影響。
Thumbnail
2025/04/01
NVIDIA 的 GB300 GPU 作為 H100 的繼任者,採用創新的 chiplet 架構,帶來效能與設計上的重大變革。本文深入探討其 chiplet 結構、HBM3e 記憶體、NVLink 第四代互連設計等核心技術,並分析其對伺服器主板設計與系統整合帶來的挑戰與影響。
Thumbnail
2025/03/28
這篇文章淺顯易懂地介紹了人工智慧的基礎概念,從 AI 的優缺點、運作原理到常見的 AI 技術與應用,讓讀者瞭解 AI 的能力與限制,並強調在 AI 時代懂得運用 AI 的重要性。
Thumbnail
2025/03/28
這篇文章淺顯易懂地介紹了人工智慧的基礎概念,從 AI 的優缺點、運作原理到常見的 AI 技術與應用,讓讀者瞭解 AI 的能力與限制,並強調在 AI 時代懂得運用 AI 的重要性。
Thumbnail
2024/11/24
NVIDIA的GB200架構提供了強大的計算能力,專為深度學習和高效能計算設計。這篇文章深入探討其硬體架構、數據傳輸技術、能效與冷卻系統、以及豐富的軟體支援,讓開發者能夠最大化利用這一平臺。此外,還介紹了基於GB200的實際應用案例,包括自然語言處理和計算機視覺,顯示其在現代計算需求中的卓越性能。
Thumbnail
2024/11/24
NVIDIA的GB200架構提供了強大的計算能力,專為深度學習和高效能計算設計。這篇文章深入探討其硬體架構、數據傳輸技術、能效與冷卻系統、以及豐富的軟體支援,讓開發者能夠最大化利用這一平臺。此外,還介紹了基於GB200的實際應用案例,包括自然語言處理和計算機視覺,顯示其在現代計算需求中的卓越性能。
Thumbnail
看更多
你可能也想看
Thumbnail
「欸!這是在哪裡買的?求連結 🥺」 誰叫你太有品味,一發就讓大家跟著剁手手? 讓你回購再回購的生活好物,是時候該介紹出場了吧! 「開箱你的美好生活」現正召喚各路好物的開箱使者 🤩
Thumbnail
「欸!這是在哪裡買的?求連結 🥺」 誰叫你太有品味,一發就讓大家跟著剁手手? 讓你回購再回購的生活好物,是時候該介紹出場了吧! 「開箱你的美好生活」現正召喚各路好物的開箱使者 🤩
Thumbnail
註解 & Print & 變數型態
Thumbnail
註解 & Print & 變數型態
Thumbnail
動態規劃Dynamic Programming其實是 一種泛用的演算法思考方式與演算法建構框架。 動態規劃並不拘束於只能解課本上特定的的範例題。 只要我們能找出DP狀態定義、DP遞迴結構、初始條件(終止條件),就能適用動態規劃來解題,以數學的形式表達,並且在紙筆上或者電腦上、計算機上計算
Thumbnail
動態規劃Dynamic Programming其實是 一種泛用的演算法思考方式與演算法建構框架。 動態規劃並不拘束於只能解課本上特定的的範例題。 只要我們能找出DP狀態定義、DP遞迴結構、初始條件(終止條件),就能適用動態規劃來解題,以數學的形式表達,並且在紙筆上或者電腦上、計算機上計算
Thumbnail
※ OPP第一大核心-封裝 封裝的精神在於將「方法」、「屬性」和「邏輯」包裝在類別裡面,透過類別的實例來實現。這樣外部物件不需要了解內部的實現細節,只需要知道如何使用該類別提供的接口即可。換句話說,封裝是將內部細節隱藏起來,只暴露必要的部分給使用者。 封裝的核心概念是,使用者如果想要接觸資料,只
Thumbnail
※ OPP第一大核心-封裝 封裝的精神在於將「方法」、「屬性」和「邏輯」包裝在類別裡面,透過類別的實例來實現。這樣外部物件不需要了解內部的實現細節,只需要知道如何使用該類別提供的接口即可。換句話說,封裝是將內部細節隱藏起來,只暴露必要的部分給使用者。 封裝的核心概念是,使用者如果想要接觸資料,只
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News