本文以汽車電子的可編程邏輯基礎知識、FPGA 架構、FPGA 實現技術、處理器內核、SoPC 優勢和處理器靈活性為例進行了簡要討論。
大型可編程邏輯器件,如現場可編程門陣列 (FPGA) 和復雜可編程邏輯器件 (CPLD),自從幾十年前作為膠合邏輯的替代品和 ASIC 原型器件首次推出以來,其功能迅速發展。嵌入式加速器和微處理器使它們成為許多曾經被認為是 DSP 和 ASSP 專屬領域的應用的有力候選者。一旦設計人員了解了 FPGA 和 CPLD 架構的基礎知識,他們就可以提高許多設計的性能、效率和設計周期。
可編程邏輯在其在 FPGA 和 CPLD 中達到最先進的形式之前有很長的發展歷史。這兩種技術在架構上的差異是由名稱本身來表示的。FPGA 的結構非常類似于門陣列 ASIC,事實上,最初用于 ASIC 原型設計。CPLD 是一個可編程邏輯元件網絡,這些元件連接起來可以創建一個更大的系統。
可編程邏輯基礎
通過回顧可編程陣列邏輯 (PAL) 的特性,可以快速了解 FPGA 和 CPLD 的基本配置思想,該特性始于一個用于對輸入進行與運算的廣泛的可編程與平面。OR 平面是固定的,這限制了可以進行 OR 運算的項數。添加了基本邏輯設備,如多路復用器、異或和鎖存器,還包括時鐘元件,如觸發器。
電路元件的這種組合使設計者能夠實現大量邏輯功能,包括狀態機所需的時鐘時序邏輯。PAL 是速度非常快的設備,它取代了上一代設計中的大部分標準邏輯。圖 1 顯示了一個基本的 PAL,其中可編程元件(顯示為熔絲)將真輸入和互補輸入都連接到與門。AND 門,也稱為乘積項,它們被 OR 運算在一起以形成乘積和邏輯陣列。
簡化 PAL
CPLD 和 FPGA 在 PAL 和 ASIC 門陣列之間創建了一個愉快且可擴展的媒介。CPLD 與 PAL 一樣快,但更復雜。FPGA 接近門陣列的復雜性并且是可編程的。
CPLD 架構
盡管每個 CPLD 供應商都有其獨特的實現方式,但所有 CPLD 都具有由功能塊 (FB)、輸入/輸出塊 (I/O) 和互連矩陣組成的共同特征。CPLD 使用特定于制造商技術的元素進行編程。存儲器件可以是 EPROM 單元、EEPROM 單元或閃存 EPROM 單元。圖 2 顯示了典型 CPLD 的架構。
簡化的 CPLD 架構
FPGA架構
FPGA 架構與 ASIC 相似,但與 CPLD 完全不同。通用 FPGA 架構由一組可配置邏輯塊 (CLB)、I/O 焊盤和可編程互連組成,如圖 3 所示。添加時鐘電路以將時鐘信號驅動到每個邏輯塊。算術邏輯單元、存儲器和解碼器也是典型的元件。
基本FPGA架構
FPGA 邏輯包含在 CLB 中,其中包含用于創建組合邏輯功能的 RAM,也稱為查找表 (LUT)。它還包含用于時鐘存儲元件的觸發器,以及用于在塊內和外部資源之間路由邏輯的多路復用器。多路復用器還用于極性選擇和復位和清除輸入選擇。
FPGA 實現技術
FPGA 傳統上是根據用于存儲 FPGA 邏輯配置的存儲器技術來描述的。目前使用的有四種,每種都有其優點和缺點:基于 SRAM 的 FPGA、帶有內部閃存的 SRAM、基于閃存的和反熔絲(也稱為 OTP,因為它們是一次性可編程的)。
基于 SRAM 的 FPGA 將邏輯單元配置存儲在組織為鎖存器陣列的靜態存儲器中。由于 SRAM 是易失性的,因此每次系統啟動時都必須對此類 FPGA 進行編程。有兩種基本的編程模式:
主模式,即 FPGA 從外部源(例如外部閃存芯片)讀取配置數據。
Slave 模式,FPGA 由外部主設備(例如處理器)進行配置。通常,這是通過專用配置接口或使用邊界掃描 (JTAG) 接口完成的。
帶有內部閃存的基于 SRAM 的 FPGA 包含內部閃存塊,無需外部非易失性存儲器。
真正基于閃存的 FPGA 使用閃存作為配置存儲的主要資源,因此不需要外部非易失性存儲器。與基于 SRAM 的 FPGA 相比,該技術的功耗更低,并且更能容忍輻射的影響。
基于反熔絲 (OTP) 的 FPGA 與前面提到的技術不同,因為它們只能編程一次。(反熔絲裝置最初不傳導電流,但可以燒毀到傳導狀態。)
處理器核心
盡管可編程器件最初是作為膠合邏輯替代品開發的,但隨著門密度的增加,FPGA 和 CPLD 供應商開始添加具有專用功能的電路,以補充未分配的門和邏輯功能。結果被稱為可編程芯片上的系統 (SoPC),其中由處理器等復雜設備組成的整個系統被集成到單個可編程邏輯設備中。
今天,大多數 FPGA 和 CPLD 供應商提供的產品系列提供 MCU 和其他 IP 核的功能。使用內核使系統設計人員可以訪問熟悉的開發工具集、操作系統和可選擇的性能以適應應用程序。
芯片優勢
考慮使用包含 MCU 功能的 SoPC 有幾個令人信服的理由。首先是認識到使用專用 MCU 的隱性成本。例如,如果部件沒有正確的功能組合,則必須開發外部邏輯和軟件來填補功能漏洞。雖然 MCU 供應商提供具有特殊功能的設備以適應特定應用,但這些芯片并未考慮可能需要(例如,在很短的時間內需要新接口或外設)的動態市場條件。
示例:汽車電子的處理器靈活性
汽車對集成 MCU 有著無限的需求。每個主要系統——發動機控制、制動、底盤和娛樂系統,僅舉三個——至少有一個。傳統上,需求是通過特定于應用程序的 MCU 來滿足的,但隨著應用程序(和 MCU 變體)數量的增加,這種策略受到質疑。汽車制造商正在尋找更靈活、更易于定制的解決方案,在某些情況下,FPGA 就是答案。
編輯:hfy
-
微控制器
+關注
關注
48文章
7844瀏覽量
153363 -
FPGA
+關注
關注
1642文章
21920瀏覽量
612050 -
cpld
+關注
關注
32文章
1257瀏覽量
170674 -
可編程邏輯
+關注
關注
7文章
525瀏覽量
44494
發布評論請先 登錄
相關推薦
評論