嵌入式系統(tǒng)開(kāi)發(fā)有點(diǎn)像重新發(fā)明輪子。許多嵌入式系統(tǒng)僅因接口要求而異。鑒于客戶不愿意為他們不想要的功能付費(fèi)或妥協(xié)產(chǎn)品,設(shè)計(jì)師們已經(jīng)學(xué)會(huì)了重用軟件。雖然 PC/104 提供了現(xiàn)成的硬件,但當(dāng)客戶要求電池供電的系統(tǒng)必須適合火柴盒而不是鞋盒時(shí),設(shè)計(jì)人員有時(shí)必須尋找其他外形尺寸。
緊湊型計(jì)算機(jī)是客戶要求的產(chǎn)物,盡管當(dāng)時(shí)客戶并不知道。這臺(tái)計(jì)算機(jī)類似于 Busicom 委托英特爾設(shè)計(jì)的計(jì)算器芯片。英特爾稱它為 4004,后來(lái)成為第一個(gè)微處理器。
客戶的要求很簡(jiǎn)單:采用風(fēng)洞模型的實(shí)時(shí)數(shù)據(jù)采集系統(tǒng),并通過(guò)單線或無(wú)線方式將數(shù)據(jù)發(fā)送出去進(jìn)行分析。主要問(wèn)題是該公司只需要兩個(gè)設(shè)備,因此排除了定制設(shè)計(jì)。設(shè)計(jì)團(tuán)隊(duì)本可以投資將其開(kāi)發(fā)為產(chǎn)品,但現(xiàn)在不是正確的時(shí)機(jī)。
選擇外形尺寸
因此,設(shè)計(jì)師們開(kāi)始尋找合適的商用解決方案。許多 SBC 可用,但缺乏適合應(yīng)用程序的輸入或輸出組合。這次搜索最終導(dǎo)致了 PC/104。該團(tuán)隊(duì)構(gòu)建了一個(gè)合適的 PC/104 堆棧,但很快確定它太大而無(wú)法放入模型中。
然后,當(dāng)設(shè)計(jì)人員意識(shí)到幾個(gè)比 PC/104 更小的商用板卡、CardBus 和 CompactFlash 等比 PC/104 更小的時(shí)候,靈光乍現(xiàn)的時(shí)刻到來(lái)了,僅舉幾例,出貨量達(dá)數(shù)百萬(wàn)。但是,這些板通常用于筆記本電腦,一次不超過(guò)兩個(gè)。將筆記本電腦添加到方程式中會(huì)使最終設(shè)計(jì)作為嵌入式系統(tǒng)太大且太昂貴。
那時(shí),設(shè)計(jì)人員考慮了開(kāi)發(fā)可以與其中幾張卡通信的處理器是多么困難。這聽(tīng)起來(lái)很簡(jiǎn)單,只要所有卡都是同一類型,而不是將 PC-Card 與 CompactFlash 或 CardBus 混合使用。(PC-Card 和 CardBus 具有相同的外形尺寸,因此很難確定哪個(gè)是哪個(gè)。)如果設(shè)計(jì)人員構(gòu)建了一個(gè)只能使用 PC-Card 或 CardBus 的系統(tǒng),許多用戶會(huì)使用錯(cuò)誤類型的卡填充系統(tǒng),造成支持的噩夢(mèng)。
CompactFlash 最終脫穎而出,成為該系統(tǒng)的最佳外形尺寸。快速搜索可用的 CompactFlash 卡類型會(huì)生成支持以太網(wǎng)、藍(lán)牙、ZigBee、802.11、大容量存儲(chǔ)、GPS、GPRS/GSM 和模數(shù)轉(zhuǎn)換器 (ADC)/數(shù)模轉(zhuǎn)換器的卡列表轉(zhuǎn)換器 (DAC)。因此,微型嵌入式系統(tǒng)似乎可以使用標(biāo)準(zhǔn)的 CompactFlash 卡開(kāi)發(fā),就像 PC/104 卡一樣,但大小只有三十分之一。該團(tuán)隊(duì)的目標(biāo)是使用常見(jiàn)的低成本卡以最少的硬件開(kāi)發(fā)和非經(jīng)常性工程成本構(gòu)建這些微型嵌入式系統(tǒng)(4 cm x 4 cm x 2 cm)。
知道他們可以在幾小時(shí)或幾天內(nèi)輕松構(gòu)建這些系統(tǒng)的快速產(chǎn)品原型,設(shè)計(jì)師想知道為什么沒(méi)有其他人制造它們。一位經(jīng)理解釋說(shuō),某些產(chǎn)品不存在有兩個(gè)原因:這是一個(gè)愚蠢的想法,或者還沒(méi)有人想到它。設(shè)計(jì)師在進(jìn)行產(chǎn)品開(kāi)發(fā)時(shí)選擇了后一個(gè)原因。
軟件、應(yīng)用注意事項(xiàng)
為了實(shí)現(xiàn)廣泛采用,CompactFlash 計(jì)算機(jī)的軟件必須基于標(biāo)準(zhǔn)操作系統(tǒng) (OS),例如 Windows CE 或 Linux,以最大限度地縮短學(xué)習(xí)曲線。目標(biāo)是能夠插入任何 CompactFlash 卡并讓系統(tǒng)運(yùn)行。將以太網(wǎng)卡換成無(wú)線卡并且不進(jìn)行任何軟件修改的能力很有吸引力。由于可能需要修改 CompactFlash 卡的驅(qū)動(dòng)程序以支持該架構(gòu),因此設(shè)計(jì)人員選擇了開(kāi)源 Linux。
當(dāng)時(shí)市場(chǎng)上有一些小型的 Linux 系統(tǒng),但沒(méi)有一個(gè)像 42 毫米 x 37 毫米那么小。在做出一些妥協(xié)后,該團(tuán)隊(duì)創(chuàng)建了第一臺(tái) CompactFlash 計(jì)算機(jī)。?;陲w思卡爾 MCF5272 微處理器,運(yùn)行頻率為 40 MHz,具有 8 MB 閃存和 32 MB SDRAM,系統(tǒng)充當(dāng) CompactFlash 主機(jī)(它控制其他 CompactFlash 卡)和最初配備 10 插槽主板,尺寸為 52 毫米 x 42 毫米。后來(lái)增加了一個(gè)低成本的 4 槽載板。
一些公司使用 CompactFlash 系統(tǒng)進(jìn)行快速原型設(shè)計(jì)和概念驗(yàn)證工程,而另一些公司則使用它來(lái)開(kāi)發(fā)小型系統(tǒng)。項(xiàng)目范圍從基于無(wú)線的健康監(jiān)測(cè)系統(tǒng)到 GPS 記錄再到數(shù)據(jù)存儲(chǔ)。
其他設(shè)計(jì)人員希望能夠?qū)⑾到y(tǒng)插入現(xiàn)有設(shè)備(如相機(jī)和 PDA)的 CompactFlash 卡插槽中。應(yīng)用包括:
PDA 的安全應(yīng)用程序
現(xiàn)有設(shè)備的加速器,可在原始處理預(yù)算內(nèi)實(shí)現(xiàn)新功能
模擬現(xiàn)有設(shè)備中的存儲(chǔ)卡并通過(guò)無(wú)線或串行通信、相機(jī)、數(shù)據(jù)記錄器等訪問(wèn)文件
通過(guò)頂部連接器為帶有 CompactFlash 插槽的系統(tǒng)提供額外的數(shù)字 I/O;微型附加卡可以包含帶有定制連接器的 ADC 或 DAC 夾
雖然這些都是合理的應(yīng)用,但第一臺(tái)緊湊型計(jì)算機(jī)被設(shè)計(jì)為緊湊型閃存主機(jī),不能插入緊湊型閃存插座。設(shè)計(jì)中做出的妥協(xié)之一是使用小型可編程邏輯器件來(lái)生成 CompactFlash 總線信號(hào),確??梢栽诤侠淼膶訑?shù)和線寬內(nèi)實(shí)現(xiàn)電路板布局。
添加 FPGA
簡(jiǎn)單的解決方案是用 FPGA 替換可編程陣列邏輯,這允許 CompactFlash 處理器模塊將總線作為主機(jī)或從設(shè)備進(jìn)行管理,并使總線可重新配置。使用 FPGA 還可以為模塊快速添加其他功能。多處理器系統(tǒng)可以使用自定義通信系統(tǒng)、共享內(nèi)存或消息傳遞來(lái)開(kāi)發(fā)。本質(zhì)上,這是一個(gè)電子樂(lè)高積木。
FPGA 選擇成為關(guān)鍵的設(shè)計(jì)決策,因?yàn)殡娐钒蹇臻g已縮小到 37 mm x 25 mm,其中包含用于 I/O 的頂部連接器。具有軟核處理器的 FPGA 將允許一個(gè)部分完成兩個(gè)部分的工作。但軟核處理器 FPGA 供應(yīng)商聲稱的 100 MHz 性能在 FPGA 加載其他功能后迅速降至 50 MHz。從 40 MHz 到 50 MHz 并不是令人驚嘆的因素,尤其是當(dāng)類似系統(tǒng)已經(jīng)在 400 MHz 時(shí)。新系統(tǒng)必須有一個(gè)處理器和一個(gè) FPGA。
Analog Devices Blackfin 處理器采用 12 mm x 12 mm 封裝和 500、600 和 750 MHz 時(shí)鐘選項(xiàng),為新系統(tǒng)提供了易于升級(jí)的未來(lái)。它的焊球間距為 0.8 mm,簡(jiǎn)化了布局和制造。
然后,設(shè)計(jì)人員轉(zhuǎn)向布局問(wèn)題,迭代不同的 FPGA、SDRAM 和閃存設(shè)備,直到找到可以以合理成本制造的電路板布局。公司的所有計(jì)算機(jī)都在很長(zhǎng)一段時(shí)間內(nèi)每周 7 天、每天 24 小時(shí)運(yùn)行 PCB 布線程序。
革命性的原型開(kāi)發(fā)
緊湊型計(jì)算機(jī)采用商業(yè)硬件構(gòu)建,尺寸僅為現(xiàn)有工業(yè)系統(tǒng)的一小部分,它可以正常工作,滿足客戶的要求,并為未來(lái)的設(shè)計(jì)師提供了一個(gè)起點(diǎn)。為了從這個(gè)系統(tǒng)中獲益,設(shè)計(jì)師不能受制于“沒(méi)有人這樣做”的態(tài)度。相反,設(shè)計(jì)人員應(yīng)該通過(guò)利用真正的即插即用嵌入式系統(tǒng)來(lái)改變?cè)偷拈_(kāi)發(fā)方式。畢竟,跟隨領(lǐng)先者并不能贏得比賽。
審核編輯:郭婷
-
處理器
+關(guān)注
關(guān)注
68文章
20355瀏覽量
255446 -
FPGA
+關(guān)注
關(guān)注
1664文章
22529瀏覽量
640059 -
嵌入式
+關(guān)注
關(guān)注
5210文章
20718瀏覽量
337973
發(fā)布評(píng)論請(qǐng)先 登錄
2025嵌入式開(kāi)發(fā)教程|遠(yuǎn)航哥
什么是嵌入式應(yīng)用開(kāi)發(fā)?
嵌入式系統(tǒng)應(yīng)用熱門的原因主要有幾個(gè)方面
從小白到大牛:Linux嵌入式系統(tǒng)開(kāi)發(fā)的完整指南
使用xmake+zig更優(yōu)雅的進(jìn)行嵌入式系統(tǒng)開(kāi)發(fā)
C語(yǔ)言在嵌入式開(kāi)發(fā)中的應(yīng)用
嵌入式系統(tǒng)的定義和應(yīng)用領(lǐng)域
是德示波器MSOX3052T在嵌入式系統(tǒng)中的應(yīng)用
AMD 2025.1版嵌入式軟件和工具的新增功能
入行嵌入式應(yīng)該怎么準(zhǔn)備?
明遠(yuǎn)智睿SSD2351:開(kāi)啟嵌入式系統(tǒng)開(kāi)發(fā)新時(shí)代
明遠(yuǎn)智睿SSD2351:嵌入式系統(tǒng)開(kāi)發(fā)的卓越之選
Linux嵌入式和單片機(jī)嵌入式的區(qū)別?
泰克MSO2024B混合信號(hào)示波器在嵌入式系統(tǒng)開(kāi)發(fā)中的應(yīng)用
為嵌入式系統(tǒng)開(kāi)發(fā)電子樂(lè)高積木
評(píng)論