0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何在多核嵌入式系統(tǒng)上開發(fā)軟件

時(shí)見棲鴉 ? 來源:時(shí)見棲鴉 ? 作者:時(shí)見棲鴉 ? 2022-07-18 18:01 ? 次閱讀

多核嵌入式系統(tǒng)的軟件可能非常復(fù)雜。一個(gè)經(jīng)常討論的主題是如何在每個(gè)內(nèi)核上實(shí)現(xiàn)代碼,以便最佳地利用它。在這篇簡(jiǎn)短的文章中,有一個(gè)不同的觀點(diǎn):關(guān)注可以跨多個(gè)內(nèi)核運(yùn)行的軟件。

多核硬件架構(gòu)

從硬件的角度來看,多核設(shè)備大致有兩種類型:同構(gòu)多核,其中有多個(gè)相同類型的內(nèi)核,以及異構(gòu)多核,其中內(nèi)核是不同類型的。異構(gòu)設(shè)備可能包括一些相同的內(nèi)核。

要跨多個(gè)內(nèi)核運(yùn)行單個(gè)軟件,內(nèi)核必須相同(無論如何從指令集的角度來看)。因此,需要一個(gè)同質(zhì)的多核設(shè)備或異構(gòu)設(shè)備中的同質(zhì)“孤島”。

對(duì)稱多處理

構(gòu)建多核系統(tǒng)的一個(gè)原因是以節(jié)能的方式最大化計(jì)算能力。這是個(gè)人電腦設(shè)計(jì)者采用的方法;多核處理器在筆記本電腦和臺(tái)式機(jī)系統(tǒng)中幾乎無處不在。嵌入式開發(fā)人員可能有相同的目標(biāo)。最好的方法是使用支持對(duì)稱多處理 (SMP) 的操作系統(tǒng)。

SMP OS 將進(jìn)程分布在可用內(nèi)核上。這通常是自動(dòng)的,但嵌入式開發(fā)人員可能需要進(jìn)行一些控制,并可能將某些應(yīng)用程序鎖定到特定內(nèi)核。這些進(jìn)程并不“知道”它們?cè)诓煌膬?nèi)核上運(yùn)行;操作系統(tǒng)提供它們之間的通信和同步。提供多個(gè)實(shí)時(shí)操作系統(tǒng) (RTOS) 的 SMP 版本;Linux 還提供 SMP 變體。

管理程序

盡管嵌入式 SMP OS 提供了某種程度的控制,但嵌入式開發(fā)人員通常希望確保資源的分配完全符合他們的喜好。因此,另一種選擇是為每個(gè)內(nèi)核配置自己的操作系統(tǒng)實(shí)例——所有內(nèi)核不必運(yùn)行相同的操作系統(tǒng)——和應(yīng)用程序代碼。然后,在所有可以控制其操作(引導(dǎo)順序等)并提供內(nèi)核間(或操作系統(tǒng)間)通信的內(nèi)核上運(yùn)行管理程序。

為了獲得更大的靈活性……

到目前為止,我們通過從系統(tǒng)中的單個(gè) (SMP) 操作系統(tǒng)遷移到多個(gè)可能不同的操作系統(tǒng)實(shí)例來提高靈活性。但是,如果需要更大的靈活性而需要使用不同架構(gòu)的內(nèi)核呢?這消除了跨多個(gè)內(nèi)核運(yùn)行代碼的選項(xiàng)——SMP OS 或管理程序都需要同構(gòu)多核環(huán)境。但是,還有另一種選擇:在每個(gè)內(nèi)核上運(yùn)行一個(gè)多核框架(可能是基于 OpenAMP 的產(chǎn)品)。這種方法提供內(nèi)核間通信和生命周期管理。此外,還可以選擇在“裸機(jī)”(即沒有操作系統(tǒng))上運(yùn)行應(yīng)用程序。

結(jié)論

在多核嵌入式系統(tǒng)上開發(fā)軟件是一項(xiàng)復(fù)雜的工作。了解一些選項(xiàng)至關(guān)重要——在相對(duì)簡(jiǎn)單性和完全靈活性之間進(jìn)行權(quán)衡。

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 嵌入式系統(tǒng)
    +關(guān)注

    關(guān)注

    41

    文章

    3607

    瀏覽量

    129599
  • 內(nèi)核
    +關(guān)注

    關(guān)注

    3

    文章

    1378

    瀏覽量

    40338
  • 多核系統(tǒng)
    +關(guān)注

    關(guān)注

    0

    文章

    11

    瀏覽量

    7515
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    嵌入式系統(tǒng)開發(fā)與硬件的關(guān)系 嵌入式系統(tǒng)開發(fā)常見問題解決

    系統(tǒng)開發(fā)與硬件關(guān)系的幾個(gè)關(guān)鍵點(diǎn): 硬件依賴性 :嵌入式系統(tǒng)軟件必須能夠在特定的硬件運(yùn)行,這包括處理器、內(nèi)存、輸入/輸出接口等。
    的頭像 發(fā)表于 12-09 09:38 ?346次閱讀

    恩智浦eIQ AI和機(jī)器學(xué)習(xí)開發(fā)軟件增加兩款新工具

    恩智浦在eIQ AI和機(jī)器學(xué)習(xí)開發(fā)軟件中增加了帶有檢索增強(qiáng)生成(RAG)與微調(diào)的生成人工智能(GenAI)流程和eIQ Time Series Studio,以便在小型微控制器(MCU)、功能更強(qiáng)大的大型應(yīng)用處理器(MPU)等各種邊緣處理器
    的頭像 發(fā)表于 11-01 11:39 ?549次閱讀

    請(qǐng)問TLV320ADC5120如何下載開發(fā)軟件?

    請(qǐng)問TLV320ADC5120如何下載開發(fā)軟件?
    發(fā)表于 09-27 10:10

    嵌入式系統(tǒng)的未來趨勢(shì)有哪些?

    嵌入式系統(tǒng)是指將我們的操作系統(tǒng)和功能軟件集成于計(jì)算機(jī)硬件系統(tǒng)之中,形成一個(gè)專用的計(jì)算機(jī)系統(tǒng)。那么
    發(fā)表于 09-12 15:42

    節(jié)點(diǎn)、跨平臺(tái)開發(fā),AWFlow讓嵌入式開發(fā)變得更簡(jiǎn)單

    國(guó)產(chǎn)化趨勢(shì)對(duì)嵌入式軟件開發(fā)構(gòu)成挑戰(zhàn),導(dǎo)致軟件移植和適配需求激增,影響開發(fā)效率。AWFlow軟件通過節(jié)點(diǎn)化和跨平臺(tái)
    的頭像 發(fā)表于 08-02 08:25 ?400次閱讀
    節(jié)點(diǎn)<b class='flag-5'>式</b>、跨平臺(tái)<b class='flag-5'>開發(fā)</b>,AWFlow讓<b class='flag-5'>嵌入式開發(fā)</b>變得更簡(jiǎn)單

    嵌入式軟件開發(fā)與AI整合

    嵌入式軟件開發(fā)與AI整合是當(dāng)前技術(shù)發(fā)展的重要趨勢(shì)之一。隨著人工智能技術(shù)的快速發(fā)展,嵌入式系統(tǒng)越來越多地集成了AI算法,以實(shí)現(xiàn)更復(fù)雜的智能功能。以下是關(guān)于
    的頭像 發(fā)表于 07-31 09:25 ?758次閱讀
    <b class='flag-5'>嵌入式</b><b class='flag-5'>軟件開發(fā)</b>與AI整合

    清華FPGA的開發(fā)軟件

    清華的FPGA除了官方提供的開發(fā)軟件,能用其它開發(fā)軟件進(jìn)行開發(fā)嗎? 官方的開發(fā)軟件安裝,挺麻煩啊。
    發(fā)表于 06-23 12:25

    嵌入式開發(fā)者的未來

    和測(cè)試這些產(chǎn)品的硬件和軟件。汽車行業(yè):現(xiàn)代汽車包含大量的嵌入式系統(tǒng),例如車載娛樂系統(tǒng)、發(fā)動(dòng)機(jī)控制單元、自動(dòng)駕駛系統(tǒng)等。在這個(gè)領(lǐng)域,工程師可以
    的頭像 發(fā)表于 06-23 08:10 ?398次閱讀
    <b class='flag-5'>嵌入式開發(fā)</b>者的未來

    一文解析嵌入式多核異構(gòu)方案,東勝物聯(lián)RK3588多核異構(gòu)核心板系列一覽

    嵌入式智能系統(tǒng)更離不開兼顧強(qiáng)實(shí)時(shí)和高算力的異構(gòu)多核國(guó)產(chǎn)智能芯片和國(guó)產(chǎn)基礎(chǔ)軟件。工業(yè)智能系統(tǒng)對(duì)基于智能芯片
    的頭像 發(fā)表于 06-17 15:45 ?2304次閱讀
    一文解析<b class='flag-5'>嵌入式</b><b class='flag-5'>多核</b>異構(gòu)方案,東勝物聯(lián)RK3588<b class='flag-5'>多核</b>異構(gòu)核心板系列一覽

    cy943907aeval1f的開發(fā)軟件需要怎么設(shè)置?

    jtag下載工具連接到lbwa1uz1gc上下載?,F(xiàn)在在這個(gè)步驟遇到了困難,不知道開發(fā)軟件需要怎么設(shè)置?請(qǐng)問有相關(guān)文檔供參考嗎?謝謝。
    發(fā)表于 05-27 06:45

    利用Quartus開發(fā)軟件進(jìn)行基于云的開發(fā),及早獲取最新算法

    Quartus 開發(fā)軟件已添加到開發(fā)者云中,為領(lǐng)先的FPGA軟件提供云訪問能力。
    的頭像 發(fā)表于 05-24 09:45 ?505次閱讀
    利用Quartus<b class='flag-5'>開發(fā)軟件</b>進(jìn)行基于云的<b class='flag-5'>開發(fā)</b>,及早獲取最新算法

    嵌入式軟件設(shè)計(jì)的原則分享

    嵌入式軟件開發(fā)如果具有更好的閱讀性、擴(kuò)展性以及維護(hù)性,就需要考慮很多因素。今天給大家分享幾個(gè)嵌入式軟件設(shè)計(jì)的原則。
    發(fā)表于 02-25 10:54 ?719次閱讀
    <b class='flag-5'>嵌入式</b><b class='flag-5'>軟件</b>設(shè)計(jì)的原則分享

    嵌入式軟件開發(fā)應(yīng)該掌握哪些知識(shí)?

    嵌入式軟件開發(fā)應(yīng)該掌握哪些知識(shí)? 一、 什么是嵌入式軟件嵌入式軟件通常是指
    發(fā)表于 02-19 11:23

    如何虛擬化Arm Cortex-R52多核微控制器

    OpenSynergy開發(fā)軟件解決方案用于嵌入式汽車系統(tǒng)。 OpenSynergy的產(chǎn)品組合包括必要的關(guān)鍵軟件組件,在以下領(lǐng)域創(chuàng)造有效的汽車解決方案:
    的頭像 發(fā)表于 01-25 14:50 ?1180次閱讀
    如何虛擬化Arm Cortex-R52<b class='flag-5'>多核</b>微控制器

    嵌入式軟件開發(fā)軟件開發(fā)的區(qū)別

    之間的區(qū)別。 硬件環(huán)境和資源限制: 嵌入式系統(tǒng)通常運(yùn)行在資源有限的嵌入式設(shè)備,如單片機(jī)、嵌入式開發(fā)板或微控制器等。這些設(shè)備通常具有有限的處
    的頭像 發(fā)表于 01-22 15:27 ?2354次閱讀