作者:Jacob Beningo
很多嵌入式設(shè)計(jì)使用基于微處理器和微控制器的單板計(jì)算機(jī) (SBC) 和模塊化系統(tǒng) (SoM)(例如,請(qǐng)參閱“使用 Raspberry Pi 3構(gòu)建低成本工業(yè)控制器”)。但是,更多嵌入式應(yīng)用無(wú)法忍受與軟件相關(guān)的響應(yīng)時(shí)間所帶來(lái)的延遲。
這些應(yīng)用需要只有定制硬件方可實(shí)現(xiàn)的更高性能,而開(kāi)發(fā)定制硬件的最快捷方法是使用 FPGA。
本文將討論使用 SoM 來(lái)開(kāi)發(fā)嵌入式系統(tǒng)的優(yōu)勢(shì),這些系統(tǒng)需要借由 FPGA 提供更高的處理能力。本文還將介紹各種不同的 FPGA SoM,并討論它們?cè)谇度胧皆O(shè)計(jì)開(kāi)發(fā)中的使用。
FPGA 模塊化系統(tǒng)的角色
模塊化系統(tǒng) (SoM) 可以幫助設(shè)計(jì)人員開(kāi)發(fā)帶有定制接口的特定外形尺寸嵌入式系統(tǒng),而無(wú)需從頭開(kāi)始開(kāi)發(fā)內(nèi)核處理系統(tǒng)。設(shè)計(jì)人員可將預(yù)先設(shè)計(jì)且經(jīng)過(guò)測(cè)試的 SoM插入到預(yù)先設(shè)計(jì)或定制的載卡中,以創(chuàng)建嵌入式設(shè)計(jì),其功能與完全定制的設(shè)計(jì)相同,但硬件開(kāi)發(fā)所需的時(shí)間要少得多。
與從頭開(kāi)始開(kāi)發(fā)硬件相比,使用 SoM 具有幾大優(yōu)勢(shì),其中包括:
節(jié)省成本(在開(kāi)發(fā)和調(diào)試基于 SoC 的電路板的過(guò)程中,會(huì)產(chǎn)生很高的非經(jīng)常性工程成本)
降低設(shè)計(jì)風(fēng)險(xiǎn)
多種 SoC 選擇(得益于 SoM 的可插拔性)
小封裝
并行的硬件和軟件開(kāi)發(fā)
曾經(jīng)由微處理器和微控制器占領(lǐng)的市場(chǎng)現(xiàn)在由 SoM取而代之,通孔和插座式元件失去了主導(dǎo)地位。引腳兼容性讓設(shè)計(jì)人員得以從一系列的兼容處理器中進(jìn)行選擇,挑選具有正確的時(shí)鐘速率和適當(dāng)?shù)钠d存儲(chǔ)器容量的處理器。但是,隨著引腳數(shù)的增加和表面貼裝封裝技術(shù)的采用,這種設(shè)計(jì)方法已經(jīng)過(guò)時(shí),SoM隨之應(yīng)運(yùn)而生,其外形尺寸和基底面與先前的引腳兼容式微控制器系列具有相同的作用。
若使用 SoM 作為項(xiàng)目的計(jì)算平臺(tái),設(shè)計(jì)工程師能夠集中精力和資源來(lái)開(kāi)發(fā)最終應(yīng)用,而不會(huì)迷失在設(shè)計(jì)計(jì)算平臺(tái)時(shí)的繁瑣細(xì)節(jié)中。例如,在幾百兆赫 (MHz)的時(shí)鐘速率下,由于差分走線延遲、噪聲、串?dāng)_和其他諸多挑戰(zhàn),連接到應(yīng)用處理器的 SDRAM 的電路板布局變得日益艱難。然而,SoM供應(yīng)商在項(xiàng)目開(kāi)始之前就已經(jīng)完成了很多設(shè)計(jì)工作,從而能夠解決這些難題,縮短產(chǎn)品面世時(shí)間。
要為嵌入式開(kāi)發(fā)項(xiàng)目選擇合適的 SoM系列,必須對(duì)各種因素進(jìn)行認(rèn)真分析,包括預(yù)期的嵌入式資源需求,以及對(duì)設(shè)計(jì)可擴(kuò)展性、未來(lái)適應(yīng)性和易用性的需求。這有助于選擇合適的 SoM外形尺寸和基底面大小,提供豐富的替代方案選擇,以應(yīng)對(duì)已知的挑戰(zhàn)和無(wú)法預(yù)期的未來(lái)挑戰(zhàn)。若選擇的 SoM系列包含多個(gè)產(chǎn)品成員并具有可兼容的外形尺寸和連接器基底面,則可以擴(kuò)大設(shè)計(jì)團(tuán)隊(duì)的選擇范圍,讓產(chǎn)品能夠更好地經(jīng)受未來(lái)的考驗(yàn)。
基于帶處理器和 FPGA 的 SoC 的新型 SoM
SoM 通常采用帶有多個(gè)應(yīng)用處理器的 SoC,但有一種新型嵌入式處理器 SoC 集成了 FPGA,也適用于 SoM 設(shè)計(jì),例如 Xilinx 完全可編程的Zynq?-7000 SoC。Xilinx Zynq-7000 SoC 將 Arm? Cortex?-A9 應(yīng)用處理器的軟件可編程性與 FPGA的硬件可編程性集成在一起。Zynq SoC 的內(nèi)置 Arm 微處理器,結(jié)合強(qiáng)化外設(shè)和 SDRAM 存儲(chǔ)器控制器(稱為 Zynq SoC的“處理系統(tǒng)”或“PS”),執(zhí)行通常由嵌入式微處理器或微控制器處理的所有基于軟件的任務(wù),而集成的 FPGA(稱為 Zynq SoC的“PL”,也就是“可編程邏輯”)則為需要更快執(zhí)行速度的嵌入式任務(wù)提供硬件 I/O 響應(yīng)時(shí)間和硬件加速。
Xilinx Zynq SoC 提供多種不同的處理器配置和速度,就芯片上的 FPGA 結(jié)構(gòu)而言,提供的選擇甚至更多。選擇基于混合處理器/FPGASoC(例如 Xilinx Zynq-7000 系列)的 SoM 系列,可以擴(kuò)大選擇范圍,提高產(chǎn)品的未來(lái)適應(yīng)性。
此類 SoM 系列示例之一是來(lái)自 Trenz Electronic 的 TE0782 系列(圖 1)和配套 SoM 測(cè)試板TEBT0782-01。Trenz Electronic TE0782 系列的模塊采用了 Xilinx Zynq-7000 SoC 系列的三個(gè)成員之一:
TE0782-02-035-2I 基于 Xilinx Zynq Z-7035 SoC
TE0782-02-045-2I 基于 Xilinx Zynq Z-7045 SoC
TE0782-02-100-2I 基于 Xilinx Zynq Z-7100 SoC
所有這三款 SoM 都具有相同的連接器基底面,包括三個(gè) Samtec LSHM 無(wú)極性連接器,帶有數(shù)百個(gè) I/O 引腳,另外在 SoM和載板之間還有電源和接地引腳。
圖 1:Trenz Electronic 的 TE0782 SoM 采用三款 Xilinx Zynq Z-7000 SoC 的其中一款,還提供 1 GB的 SDRAM 和其他非易失性存儲(chǔ)器。(圖片來(lái)源:Trenz Electronic)
要見(jiàn)識(shí) SoM 設(shè)計(jì)方法的靈活性,也許最好的方式是先看一下 TE0782 SoM 系列的 TE0703 載板,然后通過(guò) I/O 引腳回到 SoM,看一下SoM 的資源(圖 2)。
圖 2:Trenz TE0703 載板將眾多 I/O 引腳從相關(guān) 4 x 5 cm SoM 板分接到嵌入式系統(tǒng)的其他部分。(圖片來(lái)源:TrenzElectronic)
TE0703 的方框圖顯示了從 SoM 板分拆的眾多重要 I/O 功能,包括:
1 Gbit/s 以太網(wǎng)
USB 和微型 USB
微型 SD 卡
數(shù)百個(gè) I/O 引腳(可配置為單個(gè)數(shù)字 I/O 引腳,或者配置為低壓差分信號(hào)對(duì) (LVDS))
SoM 和 SBC 各有用途
處理速度、響應(yīng)時(shí)間、I/O 能力是 SoM 的顯著特征。但是,嵌入式系統(tǒng)中經(jīng)常也會(huì)集成 SBC,例如 Arduino Uno 和 Raspberry Pi系列,因?yàn)檫@些產(chǎn)品同樣擁有廣泛的支持基礎(chǔ)。因此,Trenz Electronic 也提供相應(yīng)版本的 Arduino 和 Raspberry Pi 開(kāi)發(fā)板:基于Xilinx Zynq-7000 SoC 的 TE0723-03M ArduZynq 和 TE0726-03M ZynqBerry。這些 SBC為連接很多現(xiàn)有插件卡搭建了橋梁,例如 Arduino 擴(kuò)展板和各種 Raspberry 擴(kuò)展板。
與集成到三款 Trenz Electronic SoM(采用 Zynq Z-7035、Zynq Z-7045 和 Zynq Z-7100 SoC元件)中的 FPGA 容量相比,集成到 TE0723-03M ArduZynq 和 TE0726-03M ZynqBerry SBC 中的 ZynqZ-7010 SoC 的 FPGA 容量存在顯著差異。雖然所有 Zynq-7000 SoC 都采用雙核 Arm Cortex-A9 處理器,但元件上的 FPGA數(shù)量存在差別,如表 1 所示:
表 1:Trenz Electronic 的 SoM 中使用的 Xilinx Zynq-7000 SoC(Z-7035、Z-7045 和Z-7100)所提供的 FPGA 資源多于 Trenz Electronic ArduZynq 和 ZynqBerry SBC 中使用的 Zynq Z-7010所具備的資源。(數(shù)據(jù)來(lái)源:DigiKey)
此外,TE0723-03M ArduZynq 和 TE0726-03M ZynqBerry SBC 僅提供 512 MB 的板載 SDRAM,而TE0782 SoM 提供了 1 GB。
Trenz Electronic 為其 SoM 提供多種載板,包括 TE0703-05、TE0706-02、TE0701-06、和TEB0745-02。這些載板提供很多標(biāo)準(zhǔn)化 I/O 功能。其中某種載卡可能適合某個(gè)特定嵌入式應(yīng)用,但也可以將嵌入式系統(tǒng)設(shè)計(jì)拆分到可接受 SoM系列產(chǎn)品的定制設(shè)計(jì)載板中,以滿足不同的處理需求。這種靈活性突顯了將 SoM 系列作為嵌入式設(shè)計(jì)基礎(chǔ)的設(shè)計(jì)方法優(yōu)勢(shì)。SoM 一致的標(biāo)準(zhǔn)化連接器基底面使得 SoM能夠簡(jiǎn)單地互換,以適應(yīng)系統(tǒng)規(guī)格的變化。
總結(jié)
SoM 可以大幅縮短為嵌入式系統(tǒng)進(jìn)行原型開(kāi)發(fā)所需的時(shí)間,并且降低項(xiàng)目風(fēng)險(xiǎn)。只要 SoM 外形尺寸和連接器基底面受支持,可以插入具有更多 FPGA 資源的SoM,從而滿足不斷增長(zhǎng)的需求。此外,基于 Xilinx Zynq-7000 SoC 的多種可兼容 SoM 將雙核 Arm Cortex-A9處理器的處理能力與 FPGA 資源結(jié)合在一起,有助于加快嵌入式設(shè)計(jì)的開(kāi)發(fā)。
這種采用 SoM的嵌入式設(shè)計(jì)方法不僅可以縮短開(kāi)發(fā)硬件部分所需的時(shí)間,還允許在項(xiàng)目中更早開(kāi)始軟件開(kāi)發(fā),從而降低設(shè)計(jì)風(fēng)險(xiǎn)。如果項(xiàng)目范圍和要求在擴(kuò)展,它還能夠提供良好的靈活性。
-
FPGA
+關(guān)注
關(guān)注
1625文章
21620瀏覽量
601239 -
嵌入式
+關(guān)注
關(guān)注
5059文章
18973瀏覽量
302040 -
連接器
+關(guān)注
關(guān)注
98文章
14209瀏覽量
135925 -
SOM
+關(guān)注
關(guān)注
0文章
57瀏覽量
15678
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論