
發布
注冊
/
登錄嵌入式的案例
干貨 | 嵌入式和單片機,是同一個東西嗎?
凡是從事信息技術相關工作的童鞋,一定都聽說過嵌入式和單片機。
大家都知道,這兩個名詞,和硬件系統有著非常密切的關系。
但是,如果要問具體什么是嵌入式,什么是單片機,它們之間究竟有什么區別,我相信大部分人并不能解釋清楚。
今天,小棗君就給大家做一個入門科普,揭秘上述問題的答案。
與此同時,我也順便解釋一下,我們常說的51、STM32,究竟是什么。
▉ 什么是嵌入式
首先,我們來看看什么是嵌入式。
嵌入式,一般是指嵌入式系統,英文叫作:embedded system。嵌入式開發,其實就是對嵌入式系統的開發。
IEEE(美國電氣和電子工程師協會)對嵌入式系統的定義是:“用于控制、監視或者輔助操作機器和設備的裝置”。
國內學術界的定義更為具體一些,也更容易理解:
嵌入式系統,是以應用為中心,以計算機技術為基礎,軟件硬件可裁剪,適用于對功能、可靠性、成本、體積、功耗有嚴格要求的專用計算機系統。
以應用為中心,說明嵌入式系統是有明確實際用途的。以計算機技術為基礎,說明它其實就是一種特殊的計算機。軟硬件可裁剪,說明它有很強的靈活性和可定制能力。
專用計算機系統,“專用”所對應的,就是“通用”。我們常用的個人PC、筆記本電腦、數據中心服務器,可以用于多種用途,就是“通用計算機系統”。
嵌入式系統究竟具體應用于哪些“專用”方向呢?
展開 嵌入式和單片機,是同一個東西嗎?
凡是從事信息技術相關工作的童鞋,一定都聽
說過嵌入式和單片機。
大家都知道,這兩個名詞,和硬件系統有著非常密切的關系。
但是,如果要問具體什么是嵌入式,什么是單片機,它們之間究竟有什么區別,我相信大部分人并不能解釋清楚。
今天,小棗君就給大家做一個入門科普,揭秘上述問題的答案。
與此同時,我也順便解釋一下,我們常說的51、STM32,究竟是什么。
▉ 什么是嵌入式
首先,我們來看看什么是嵌入式。
嵌入式,一般是指嵌入式系統,英文叫作:embedded system。嵌入式開發,其實就是對嵌入式系統的開發。
IEEE(美國電氣和電子工程師協會)對嵌入式系統的定義是:“用于控制、監視或者輔助操作機器和設備的裝置”。
國內學術界的定義更為具體一些,也更容易理解:
嵌入式系統,是以應用為中心,以計算機技術為基礎,軟件硬件可裁剪,適用于對功能、可靠性、成本、體積、功耗有嚴格要求的專用計算機系統。
以應用為中心,說明嵌入式系統是有明確實際用途的。以計算機技術為基礎,說明它其實就是一種特殊的計算機。軟硬件可裁剪,說明它有很強的靈活性和可定制能力。
專用計算機系統,“專用”所對應的,就是“通用”。我們常用的個人PC、筆記本電腦、數據中心服務器,可以用于多種用途,就是“通用計算機系統”。
嵌入式系統究竟具體應用于哪些“專用”方向呢?
展開 嵌入式硬件設計幾點注意事項
嵌入式設計是個龐大的工程,今天就說說硬件電路設計方面的幾個注意事項,首先,咱們了解下嵌入式的硬件構架。
我們知道,CPU是整個系統的靈魂,所有的外圍配置都與其相關聯,這也突出了嵌入式設計的一個特點硬件可剪裁。在做嵌入式硬件設計中,以下幾點需要關注。
1、電源的確定
電源對于嵌入式系統中的作用可以看做是空氣對人體的作用,甚至更重要:人呼吸的空氣中有氧氣、二氧化碳和氮氣等但是含量穩定,這就相當于電源系統中各種雜波,我們希望得到純凈和穩定符合要求的電源,但由于各種因素制約,只是我們的夢想。這個要關注兩個方面:
a、電壓
嵌入式系統需要各種量級的電源比如常見的5v、3.3v、1.8v等,為盡量減小電源的紋波,在嵌入式系統中使用LDO器件。如果采用DC-DC不僅個頭大,其紋波也是一個很頭疼的問題。
b、電流
嵌入式系統的正常運行不但需要穩定足夠的電源,還要有足夠的電流,因此在選擇電源器件的時候需要考慮其負載,一般留有30%的余量。
如果是多層板,電源部分在layout的時候需電源分割,這時需要注意分割路徑,盡量將一定量的電源放置在一起。如果是雙面板,則走線寬度需要注意,在板子允許的情況下盡量加寬。合適的退耦電容盡量靠近電源管腳。
展開 干貨:嵌入式系統設計開發大全!
如果一個嵌入式系統只是作為一個連接器連接外圍設備模塊,通過相關接口連接到電腦主機或者直接掛在網絡上,那么屏幕就不需要了。但是如果做出來的是一個消費類產品,與用戶交互頻繁,這就不得不嘮叨幾句。
電容屏幕是嵌入式屏幕的首選,在電路設計中需要注意觸屏連接線和顯示屏連接線的布局。在走線的過程中盡量短的靠近主控cpu,同時注意配對信號走差分線,RGB控制信號走等長。各種信號走線間距遵循3W規則,避免相互干擾。在屏幕的設計中,一定要確保功率和防止干擾,以防屏幕閃屏和花屏現象的出現。
06
嵌入式產品開發流程
嵌入式產品,與普通電子產品一樣,開發過程都需要遵循一些基本的流程,都是一個從需求分析到總體設計,詳細設計到最后產品完成的過程。但是,與普通電子產品相比,嵌入式產品的開發流程又有其特殊之處。它包含嵌入式軟件和嵌入式硬件兩大部分,針對嵌入式硬件和軟件的開發,在普通的電子產品開發過程中,是不需要涉及的。21ic家了解到嵌入式產品的研發流程具體如下圖:
下面,針對嵌入式產品的開發過程中的各個階段,我們進行詳細探討。
階段1:產品需求
在這一個階段,我們需要弄清楚的是產品的需求從何而來,一個成功的產品,我們需要滿足哪些需求。只有需求明確了,我們的產品開發目標才能明確。
展開 
一文讀懂嵌入式FPGA所有貓膩,改變芯片設計方式豈是鬧著玩的
對于嵌入式FPGA,它是相同的,因為幾乎所有的SoC都有一個從外部閃存引導的ARM/ARC /MIPS等處理器。同樣的閃存用于存儲嵌入式閃存的配置位。
可編程邏輯塊接收輸入并將輸出發送到互連網絡,該互連網絡允許從FPGA架構中的任意邏輯塊可編程地進行連接。互連結構同樣也由配置位編程。互連結構通常是FPGA架構的主體。
嵌入式FPGA的主要區別是互連結構的設計。最佳互連使用較小的面積和較少的金屬層,同時提供資源的高利用率。
與FPGA芯片不同,嵌入式FPGA中沒有PHY/SERDES/PLL。嵌入式FPGA中有一個I/O環,但它是真正簡單的數字互連到芯片的其余部分。嵌入式FPGA有成百上千的互連,它們可以在芯片內全速運行。這種I/O寬度和帶寬的增加是將FPGA嵌入到芯片的巨大優勢。
嵌入式FPGA內部之構建任意規模和結構的陣列
當中的一個復雜問題是客戶需要各種規模和結構的嵌入式FPGA,并且人人都希望在使用芯片前可以在硅片中驗證IP塊。
例如,在16nm中,客戶可能希望僅需要幾百個可編程邏輯的LUT就可以讓快速可重構控制邏輯運行在1GHz;而在同一進程中的另一客戶可能想要50K-100K個LUT作為數據中心處理器加速器。如何能夠滿足這些客戶最少的設計投資和上市時間?
Flex Logix使用平鋪構造塊的方法。首先,使用上述方法設計4個EFLX IP核。每個IP核都是一個獨立的FPGA,但它們也可以陣列化,提供大約75個EFLX陣列,從100 個LUT到122.5K個LUT,以及任何邏輯/DSP的混合。
每個EFLX IP核都有額外的頂層互連,允許IP核自動連接到周圍的IP核,使大型陣列的規模為NxN。
展開 實測了20+嵌入式IDE后,我們發現「全架構+AI」的真正解決方案
它不是普通IDE,而是給嵌入式AI戴上“安全枷鎖”的解決方案,讓AI從炫技玩具變為工業可靠幫手。未來,嵌入式開發必將走向“全架構+AI工程化”,而PPEC Workbench所踐行的理念,正是行業進化的方向,為企業提供了確定性的智能開發新路徑。
實測了20+嵌入式IDE后,我們發現「全架構+AI」的真正解決方案
它不是普通IDE,而是給嵌入式AI戴上“安全枷鎖”的解決方案,讓AI從炫技玩具變為工業可靠幫手。未來,嵌入式開發必將走向“全架構+AI工程化”,而PPEC Workbench所踐行的理念,正是行業進化的方向,為企業提供了確定性的智能開發新路徑。
嵌入式軟件開發中專業單元測試工具的必要性
七、結論
嵌入式軟件開發中,專業單元測試工具(如winAMS)通過獨特的技術架構與功能優勢,解決了傳統測試方法的局限性,為嵌入式軟件開發提供了高效、可靠的測試保障。winAMS通過編譯器級代碼解析引擎、目標代碼級覆蓋率驗證、硬件虛擬化與熱補丁技術,實現了嵌入式代碼的直接測試、自動化用例生成、覆蓋率分析、錯誤注入測試與耦合驗證,顯著提升了開發效率與軟件質量。在行業實踐中,winAMS已成為全球頭部Tier1供應商及OEM的首選解決方案,為嵌入式軟件開發帶來了顯著的經濟效益與合規保障。未來,隨著嵌入式系統復雜度的持續提升,專業單元測試工具將在嵌入式軟件開發中發揮更加重要的作用。
展開 實測了20+嵌入式IDE后,我們發現「全架構+AI」的真正解決方案
它不是普通IDE,而是給嵌入式AI戴上“安全枷鎖”的解決方案,讓AI從炫技玩具變為工業可靠幫手。未來,嵌入式開發必將走向“全架構+AI工程化”,而PPEC Workbench所踐行的理念,正是行業進化的方向,為企業提供了確定性的智能開發新路徑。
適用于關鍵嵌入式軟件系統的仿真解決方案
適用于關鍵嵌入式軟件系統的仿真解決方案
http://www.ansys.com/zh-CN/products/embedded-software
嵌入式軟件
嵌入式系統與軟件開發
嵌入式軟件越來越普遍地用于智能設備,但不完美的代碼可能會導致眾多產品故障。據業界領導者預計,每 1,000 行嵌入式軟件代碼包含 8 個漏洞。為了管理這一質量風險,以及達到更高的軟件認證標準,您需要充分利用嵌入式軟件開發工具和認證代碼生成器。
ANSYS 提供基于模型的嵌入式軟件開發和仿真環境,環境內置自動代碼生成器,以加快嵌入式軟件開發項目的速度。系統和軟件工程師利用 ANSYS SCADE 解決方案生動地設計、驗證并自動生成高可靠性要求的關鍵系統和軟件應用。SCADE 解決方案具有較高的可互操作性,并且能夠輕松集成,從而實現開發優化并加強各團隊成員之間的溝通。
展開 嵌入式AI創新峰會萬字干貨,16位大咖演講精華
總的來說,針對硬件多樣化、模型壓縮、模型自動化部署三大挑戰,商湯試圖讓深度學習模型在嵌入式設備上靈活優化和部署。
2、大華股份:聚焦模型微服務化,降低嵌入式AI開發門檻
會上,大華股份先進技術研究院科學家朱樹磊以《嵌入式AI算法模型微服務的設計與實踐》為題帶來了深入的演講。
▲大華股份先進技術研究院科學家朱樹磊
微服務并不是一個新概念,它是一個SOA軟件架構的變種。簡單來說,微服務把一些功能模塊拆分出來,運行在不同的進程中或不同的服務器上。相比于單體式架構,微服務具有開發難度降低、維護成本低、開發周期短、可擴展性較強等優點。
為什么要強調微服務?朱樹磊認為,當下,行業AI智能需求快速增長的背景下,嵌入式算法產品架構設計和開發流程亟需變革,嵌入式平臺模型微服務能夠降低嵌入式開發的工程門檻,使算法人員有效參與到工程落地,提升算法效果、有效分配算力,高效滿足客戶的碎片化需求。與此同時,嵌入式AI算法模型微服務能促進端邊云一體化,使得模型一致、服務一致,從而使整個系統的可維護性更高、成本更低。
但是,相比于云原生微服務,嵌入式微服務在功耗、內存、算力等資源方面都受限,無法復用成熟的云原生生態,需要自己打造。
朱樹磊認為,打造模型、接口、代碼三大編譯器是嵌入式平臺模型微服務化的關鍵。為此,大華股份基于組件規劃、技術棧選擇、架構設計三大環節,打造模型編譯器DNNX、接口編譯器IDLC、通用交叉編譯器UCC三大編譯器,將代碼開發轉化為編譯器、中間件等核心標準件的開發,實現微服務。
此外,朱樹磊還提到,要因地制宜實踐嵌入式算法開發的DevOps流程,始終把性能作為嵌入式平臺模型服務化的核心關注點。
展開 
嵌入式系統的軟件架構設計!
前言
嵌入式是軟件設計領域的一個分支,它自身的諸多特點決定了系統架構師的選擇,同時它的一些問題又具有相當的通用性,可以推廣到其他的領域。
提起嵌入式軟件設計,傳統的印象是單片機,匯編,高度依賴硬件。傳統的嵌入式軟件開發者往往只關注實現功能本身,而忽視諸如代碼復用,數據和界面分離,可測試性等因素。從而導致嵌入式軟件的質量高度依賴開發者的水平,成敗系之一身。
隨著嵌入式軟硬件的飛速發展,今天的嵌入式系統在功能,規模和復雜度各方面都有了極大的提升。比如,Marvell公司的PXA3xx系列的最高主頻已經達到800Mhz,內建USB,WIFI,2D圖形加速,32位DDR內存。
在硬件上,今天的嵌入式系統已經達到甚至超過了數年前的PC平臺。在軟件方面,完善的操作系統已經成熟,比如Symbian, Linux, WinCE。
基于完善的操作系統,諸如字處理,圖像,視頻,音頻,游戲,網頁瀏覽等各種應用程序層出不窮,其功能性和復雜度比諸PC軟件不遑多讓。原來多選用專用硬件和專用系統的一些商業設備公司也開始轉換思路,以出色而廉價的硬件和完善的操作系統為基礎,用軟件的方式代替以前使用專有硬件實現的功能,從而實現更低的成本和更高的可變更,可維護性。
2.決定架構的因素和架構的影響
架構不是一個孤立的技術的產物,它受多方面因素的影響。同時,一個架構又對軟件開發的諸多方面造成影響。
下面舉一個具體的例子。
摩托車的發動機在出廠前必須通過一系列的測試。在流水線上,發動機被送到每個工位上,由工人進行諸如轉速,噪音,振動等方面的測試。要求實現一個嵌入式設備,具備以下基本功能:
安裝在工位上,工人上班前開啟并登錄。
通過傳感器自動采集測試數據,并顯示在屏幕上。
展開 嵌入式開發用RTOS的優勢在哪?
RT-Thread 也是開發者最多的國產 RTOS,并且還擁有國內最大的嵌入式開源軟件社區。
經驗之談:嵌入式如何進行架構設計?
本文來自:IOT物聯網小鎮
【我對架構設計的理解】
1.架構設計概念的認識
相信看這篇文章的同學,大部分都是從事嵌入式開發的,大家也肯定有這么一個印象:在招聘網站上的一些架構設計的崗位,都是針對 Web 方向的,卻很少看到招聘嵌入式崗位的系統架構師的崗位。
我的理解是大概有下面2個原因:
(1) Web開發:百家爭鳴,沒有統一的標準和老大
這些年得益于移動互聯網的發展,前、后端開發崗位的需求量大增,而且各種框架層出不窮。
如何利用這些框架來為用戶提供高性能的服務并沒有一個統一的標準,于是百家爭鳴,相應的設計師崗位也就層出不窮。
(2) 嵌入式開發:Linux 舍我其誰
在嵌入式系統的開發中,在操作系統的選擇上幾乎沒有太大的余地,大部分是 ARM+Linux 組合。
在 Linux 操作系統層面:那些大神們已經把內核和驅動層設計的很完美了,很少需要開發人員做大量的修改。
在應用程序層面:開發人員如果沒有什么追求,只為了實現規格書中定義的功能即可。
而老板呢,也只是重視產品功能是否能正常實現,至于什么可移植、可擴展、執行效率等等,不會想到這個層面。
即使產品需要更新換代,讓開發人員重新實現即可,反正只需要功能OK就行。
2.嵌入式系統的架構設計重要性
說一個小故事。
有一位同事為客戶寫一個單片機產品的程序,后來同事離職后把代碼移交給我。
這個產品有一個小功能需要修改一下,恰巧那會我正在處理另外一個項目,于是在征得老板許可的情況下把源代碼發給客戶,請他們自己修改。
展開 嵌入式軟件的流程圖制作及解析工具
CasePlayer2 : 適用于嵌入式軟件的說明書制作及解析工具
靜態解析C/C++源代碼自動生成流程圖等文件
適用于各種嵌入式微機用匯編代碼
具有符合編程標準MISRA-C 1998/2004的規范檢查功能,Code Metrics計測功能
適用于掌握以往程序的內容,審閱會議時評估程序等,有利于改善軟件質量的工具
產品概要
CasePlayer2是通過解析ANSI C語言,C++,嵌入式C語言(非ANSI),以及匯編語言的源代碼,制作包括流程圖等的程序說明書的工具。不論是對以往的程序進行邏輯分析,還是為新開發的程序制作說明書,都提供了強有力的支援。作為程序靜態分析功能,包括外部變量參照/代入的列表功能,以及C語言的編程標準[MISRA-C]的規范檢查功能。
只需將程序登記,可以自動生成各種說明書
CasePlayer2是通過分析ANSI C語言,C++,嵌入式C語言(非ANSI),以及匯編語言的源代碼,制作包括流程圖等程序說明書的逆向CASE(computer aided software engineering tool)工具。應用GAIO的主要技術也就是編譯技術,不需要追加其他代碼就可以解析代碼構造,制作各種流程圖。而其他公司的CASE工具往往需要追加代碼才能實現流程圖生成。而且,只需幾秒鐘就可以將數萬行C語言程序轉換成流程圖,具有引以為豪的壓倒性性能。
展開