99精品久久精品一区二区-亚洲熟妇无码?v在线播放-日本国产精品无码字幕在线观看-久久久亚洲永夜AV-亚洲一级无码一区二区一-免费国产成高清人在线视频-中文字幕乱码免费观看-国产毛片精品妇女久久久

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營(yíng)的一線實(shí)戰(zhàn)洞察。

嵌入式軟硬件協(xié)同設(shè)計(jì):架構(gòu)、調(diào)試與功耗優(yōu)化實(shí)戰(zhàn)

嵌入式軟硬件協(xié)同設(shè)計(jì):架構(gòu)、調(diào)試與功耗優(yōu)化實(shí)戰(zhàn) 做了十來(lái)年嵌入式開(kāi)發(fā),從最早的單片機(jī)一直做到帶操作系統(tǒng)的多核平臺(tái),如果問(wèn)我這些年最大的收獲是什么,不是學(xué)會(huì)了多少個(gè)芯片型號(hào),也不是背下多少份數(shù)據(jù)手冊(cè),而是一連串被項(xiàng)目逼著去思考“硬件和軟件到底該怎么配合”的經(jīng)歷。不管是剛?cè)胄械某鯇W(xué)者,還是已經(jīng)被軟硬件磨合折磨過(guò)的同行,這篇文章里的很多場(chǎng)景應(yīng)該都能引起共鳴。我會(huì)把這幾年的思考、返工教訓(xùn)和實(shí)測(cè)驗(yàn)證過(guò)的方法一起整理出來(lái)。直接進(jìn)入第一個(gè)話題。1. 從“分工”到“融合”:我眼中軟硬件關(guān)系的變化1.1 最初幾年,我總覺(jué)得“軟件就是寫(xiě)代碼”剛?cè)胄凶銮度胧侥菚?huì)兒,我的思路非常單一。拿到一塊板子,第一件事就是翻例程、改寄存器、調(diào)中斷。代碼只要能在開(kāi)發(fā)板上跑起來(lái),我就覺(jué)得任務(wù)完成了一大半。電源怎么分配、復(fù)位電路怎么設(shè)計(jì)、晶振的負(fù)載電容怎么匹配,我基本不關(guān)心,因?yàn)樵诋?dāng)時(shí)的認(rèn)知里,這些是硬件工程師的事情。印象很深的一次,我在一個(gè)項(xiàng)目里反復(fù)調(diào)某個(gè)引腳的電平,總覺(jué)得是IO配置寫(xiě)錯(cuò)了,最后硬件同事過(guò)來(lái)一看,發(fā)現(xiàn)信號(hào)線的上拉電阻根本沒(méi)焊接。板子從PCB廠拿回來(lái)手工貼片,漏貼了一個(gè)電阻。這件事看似低級(jí),卻很有代表性:軟件工程師太容易把硬件上沒(méi)有的東西,當(dāng)成自己能通過(guò)寄存器改出來(lái)的東西。后來(lái)接觸的板子多了,我慢慢發(fā)現(xiàn)一個(gè)規(guī)律:同一個(gè)MCU,在不同硬件工程師設(shè)計(jì)的板子上,軟件表現(xiàn)可以差得很遠(yuǎn)。同樣一份例程,在官方評(píng)估板上跑得穩(wěn)穩(wěn)當(dāng)當(dāng),換到量產(chǎn)板上卻會(huì)出現(xiàn)ADC采樣漂移、通信誤碼率上升、低功耗模式睡不深。差異往往不在代碼,而在去耦電容是否足夠、晶振布局是否緊湊、電源紋波是否符合要求。從那時(shí)起,我開(kāi)始意識(shí)到,嵌入式的軟件從來(lái)不是“純軟件”,它跑在一堆真實(shí)元件構(gòu)成的電路上。很多bug在根因上是電路問(wèn)題,但癥狀卻會(huì)以代碼異常的形式冒出來(lái)。1.2 一次量產(chǎn)返工,讓我重新審視軟硬件邊界真正逼我去系統(tǒng)思考的,是某工業(yè)控制器項(xiàng)目的一次返工。產(chǎn)品已經(jīng)量產(chǎn),老化測(cè)試?yán)锎蠹s千分之三的板子會(huì)在突然掉電時(shí)出現(xiàn)配置文件損壞。軟件同事說(shuō)硬件掉電時(shí)序太差,沒(méi)給軟件足夠的時(shí)間去寫(xiě)數(shù)據(jù);硬件同事說(shuō)軟件狀態(tài)機(jī)太脆弱,連常規(guī)掉電都扛不住。兩邊各說(shuō)各話,可產(chǎn)品堆在那里,項(xiàng)目進(jìn)度壓著,總要有人先向前走一步。后來(lái)我們做了一次聯(lián)合排查。硬件先把掉電檢測(cè)信號(hào)往前觸發(fā),軟件把配置寫(xiě)入流程改成“先寫(xiě)臨時(shí)區(qū),再原子替換”,同時(shí)增加一個(gè)掉電標(biāo)志位,用來(lái)判斷上一次是不是正常復(fù)位。改完再做老化測(cè)試,不良率直接歸零。那次復(fù)盤(pán)讓我印象最深的一句話,是硬件同事后來(lái)私下說(shuō)的:“早知道軟件這么在意掉電時(shí)間,我們當(dāng)時(shí)就把檢測(cè)電路往前挪一點(diǎn)。”這個(gè)case給我的啟發(fā)很簡(jiǎn)單:如果需求階段就同時(shí)定義掉電行為,把硬件檢測(cè)時(shí)間、軟件寫(xiě)Flash時(shí)間放在一起設(shè)計(jì),根本不會(huì)拖到量產(chǎn)階段去返工。軟硬件邊界問(wèn)題,很多時(shí)候不是能力問(wèn)題,而是雙方有沒(méi)有把對(duì)方的約束當(dāng)成自己的設(shè)計(jì)輸入。1.3 “軟硬一體”不是新概念,是高復(fù)雜度系統(tǒng)逼出來(lái)的現(xiàn)實(shí)這幾年很多團(tuán)隊(duì)喜歡談“軟硬一體”,好像這是一種新的技術(shù)風(fēng)口。但以我的觀察,它更像芯片復(fù)雜度提升后的必然結(jié)果,而不是某個(gè)團(tuán)隊(duì)的主觀選擇。現(xiàn)在的MCU里,光是內(nèi)部就有復(fù)位控制器、多級(jí)時(shí)鐘樹(shù)、多個(gè)電源域,有的還集成安全監(jiān)控、加密引擎。到了這種復(fù)雜度,軟件如果不理解硬件的內(nèi)部狀態(tài),寫(xiě)出來(lái)的驅(qū)動(dòng)很難談得上穩(wěn)定;硬件如果不理解軟件的使用方式,選型時(shí)很容易埋下不匹配的隱患。我也見(jiàn)過(guò)一些團(tuán)隊(duì)為了追“軟硬一體”的概念,強(qiáng)行讓一個(gè)人既畫(huà)原理圖又寫(xiě)全部代碼,結(jié)果兩邊質(zhì)量都顧不住。其實(shí)“軟硬一體”不等于崗位合并,而是要求每個(gè)崗位都具備跨界的視野。軟件工程師至少要能讀懂關(guān)鍵電路的行為,硬件工程師至少要能理解軟件對(duì)外設(shè)和功耗的訴求。只有這種互相滲透的理解,才能讓一個(gè)團(tuán)隊(duì)在復(fù)雜系統(tǒng)里高效協(xié)作。2. 需求定義階段:軟硬件邊界劃分的核心思考2.1 硬件選型直接決定軟件的天花板我參與過(guò)很多次需求評(píng)審,一個(gè)常見(jiàn)的通病是:需求方只提功能,不提高約束。比如只說(shuō)“需要加一個(gè)溫度檢測(cè)功能”,至于傳感器輸出是模擬電壓還是數(shù)字接口、供電電壓多少、采集頻率要求多高,往往要等軟件寫(xiě)到底層驅(qū)動(dòng)時(shí)才暴露問(wèn)題。更常見(jiàn)的情況是,硬件已經(jīng)定了某款低端MCU,軟件卻要在這個(gè)平臺(tái)上實(shí)現(xiàn)復(fù)雜算法,資源不夠,只能靠各種優(yōu)化硬湊。所以我在選型評(píng)審時(shí),會(huì)要求軟件負(fù)責(zé)人把關(guān)鍵訴求寫(xiě)明白:需要幾個(gè)定時(shí)器通道、幾個(gè)DMA通道、幾個(gè)中斷源、喚醒延遲上限是多少、有沒(méi)有硬件加速要求。這些參數(shù)會(huì)直接決定MCU的定位,也決定軟件在后續(xù)需求變更時(shí)的承受能力。硬件選型不是拍腦袋選一個(gè)大廠料就完事,而是要讓選型表里專(zhuān)門(mén)有一列用來(lái)寫(xiě)“軟件約束”。把軟件對(duì)硬件的依賴(lài)放到桌面上談,后期才不容易出現(xiàn)“硬件不支持”這種返工性結(jié)論。2.2 預(yù)留接口與成本之間的取舍,要有目的而不是跟風(fēng)硬件上的預(yù)留接口,經(jīng)常在兩個(gè)極端之間搖擺。一種團(tuán)隊(duì)特別喜歡預(yù)留,所有IO全部引出來(lái),各種通信接口都留全,結(jié)果PCB面積變大、EMC變差、成本上漲;另一種團(tuán)隊(duì)把成本摳到極致,所有引腳全部用完,后期想加一個(gè)功能只能飛線,極端情況要換芯片重新畫(huà)板。這兩種做法在真實(shí)項(xiàng)目里都會(huì)帶來(lái)麻煩。我更傾向“有目的地預(yù)留”。至少會(huì)保留一個(gè)調(diào)試串口,哪怕量產(chǎn)版把連接器空著,開(kāi)發(fā)階段也能省大量時(shí)間;保留2到4個(gè)未定義GPIO,給軟件功能迭代留余地;在復(fù)位電路上設(shè)計(jì)測(cè)試點(diǎn),方便固件升級(jí)失敗時(shí)人工干預(yù)。這些預(yù)留占的成本很少,卻能讓軟件留出靈活度。當(dāng)然,如果產(chǎn)品是那種要拼價(jià)格的超級(jí)量產(chǎn)品,預(yù)留可以砍到最低,但必須在項(xiàng)目啟動(dòng)時(shí)和軟件團(tuán)隊(duì)對(duì)齊,說(shuō)明后續(xù)擴(kuò)展空間在哪里。預(yù)留接口不是越多越好,而是要在“可能性”和“成本”之間找到團(tuán)隊(duì)都能接受的位置。2.3 需求文檔里必須寫(xiě)清楚的硬件行為定義另一個(gè)被低估的問(wèn)題,是需求文檔里的行為定義。許多項(xiàng)目后期扯皮,不是因?yàn)榇a寫(xiě)錯(cuò),而是因?yàn)椤爱?dāng)時(shí)根本沒(méi)人定義這一條”。比如按鍵消抖到底硬件做還是軟件做?上電瞬間某個(gè)外設(shè)引腳默認(rèn)是高還是低?看門(mén)狗溢出后是復(fù)位還是進(jìn)入休眠?調(diào)試口的連接器在量產(chǎn)版上保留還是去掉?這些問(wèn)題只要評(píng)審會(huì)上沒(méi)人拍板,后面一定會(huì)有爭(zhēng)議。我自己的做法是,把這類(lèi)行為定義整理成一張表格,掛在需求文檔附錄里。表中至少包含信號(hào)名、方向、電平邏輯、有效沿、時(shí)序要求、異常行為。軟硬件評(píng)審時(shí)對(duì)著這張表逐條確認(rèn),誰(shuí)也別憑印象工作。有了這張表,至少能把“定義不清導(dǎo)致返工”的概率降下一大半。很多看似是技術(shù)難題的沖突,其實(shí)只是需求階段漏了一句明確的話。2.4 和供應(yīng)商溝通時(shí),容易被忽略的細(xì)節(jié)參數(shù)還有一類(lèi)經(jīng)驗(yàn)來(lái)自和芯片供應(yīng)商打交道的經(jīng)歷。很多人選型時(shí)只看主頻、Flash、RAM這三項(xiàng),這三項(xiàng)雖然是基礎(chǔ),但決定一個(gè)芯片能不能真正適合應(yīng)用的,往往是一堆細(xì)節(jié)參數(shù):每個(gè)GPIO的上下拉是否可配、外部中斷是不是每個(gè)引腳都支持、喚醒源列表里有沒(méi)有你想要的模塊、最低功耗模式下哪些模塊還能保持運(yùn)行。有一次,我們想找一個(gè)“定時(shí)喚醒加保留RTC”的低成本方案,翻了許多型號(hào)的手冊(cè),結(jié)果發(fā)現(xiàn)某些芯片雖然標(biāo)稱(chēng)有RTC,但進(jìn)入最低功耗模式后RTC竟然會(huì)停振。如果只參考選型手冊(cè)里的概述,這個(gè)坑基本必踩。所以我現(xiàn)在和供應(yīng)商溝通時(shí),會(huì)直接問(wèn)幾個(gè)具體問(wèn)題:進(jìn)入低功耗模式后哪些外設(shè)仍能使用、從中斷喚醒事件發(fā)生到CPU開(kāi)始執(zhí)行代碼需要多少時(shí)間、IO口漏電流典型值是多少。這些問(wèn)題廠商支持未必能馬上答上來(lái),但問(wèn)出來(lái)說(shuō)明你懂行,對(duì)方也會(huì)更認(rèn)真地幫你排查。3. 聯(lián)合調(diào)試階段:真正影響系統(tǒng)開(kāi)發(fā)效率的幾個(gè)細(xì)節(jié)3.1 日志系統(tǒng)要分層,不是打印越多越好調(diào)試嵌入式系統(tǒng),最常用的手段就是串口打印。但有個(gè)反直覺(jué)的事實(shí):日志打多了,反而會(huì)引入新的問(wèn)題。如果在中斷服務(wù)函數(shù)里打印日志,而波特率又設(shè)得不高,輸出一條完整日志可能耗費(fèi)幾百微秒,這段時(shí)間里真實(shí)的外部事件時(shí)序已經(jīng)被篡改。原本要復(fù)現(xiàn)的問(wèn)題可能因此消失,換個(gè)場(chǎng)景卻又冒出來(lái)。我現(xiàn)在習(xí)慣把日志分成三層設(shè)計(jì)。第一層是啟動(dòng)引導(dǎo)層,專(zhuān)門(mén)打印復(fù)位原因、時(shí)鐘配置、關(guān)鍵寄存器初值,用來(lái)確認(rèn)“硬件環(huán)境是否和預(yù)期一致”;第二層是狀態(tài)層,打印狀態(tài)機(jī)跳轉(zhuǎn)和重要事件,用來(lái)觀察系統(tǒng)行為路徑;第三層是業(yè)務(wù)層,只打印業(yè)務(wù)異常和警告,正常運(yùn)行幾乎不輸出。三層日志通過(guò)編譯宏和運(yùn)行時(shí)開(kāi)關(guān)控制。平時(shí)固件只開(kāi)第一層和第三層,需要深入排查時(shí)再動(dòng)態(tài)打開(kāi)第二層。這樣既能保證關(guān)鍵時(shí)刻日志可見(jiàn),又不會(huì)持續(xù)干擾被測(cè)系統(tǒng)的時(shí)間特性。3.2 可觀測(cè)性設(shè)計(jì):讓硬件狀態(tài)能被軟件“看到”除了日志,我越來(lái)越重視可觀測(cè)性設(shè)計(jì)。這個(gè)詞聽(tīng)起來(lái)高端,落到嵌入式里,就是給硬件和軟件之間多開(kāi)幾扇“觀測(cè)窗口”。我會(huì)在軟件里周期把關(guān)鍵電壓的ADC采樣值寫(xiě)入固定變量,把內(nèi)部溫度讀數(shù)上報(bào),把某個(gè)外設(shè)的初始化完成狀態(tài)映射到一個(gè)GPIO上。這些設(shè)計(jì)在代碼評(píng)審里常被當(dāng)成“多余功能”,但在聯(lián)調(diào)時(shí)救過(guò)我好多次。舉個(gè)例子,硬件工程師用電流探頭量到某個(gè)模塊功耗異常時(shí),軟件這邊如果能同時(shí)讀出該模塊的開(kāi)關(guān)狀態(tài)、工作時(shí)間戳和寄存器配置,兩邊數(shù)據(jù)一對(duì),基本就能判斷是“硬件確實(shí)在漏電”還是“軟件沒(méi)有按預(yù)期關(guān)閉模塊”。沒(méi)有這種可觀測(cè)性時(shí),兩個(gè)工程師經(jīng)常各執(zhí)一詞,爭(zhēng)論半天也找不到證據(jù)。嵌入式系統(tǒng)的可觀測(cè)性,本質(zhì)上是在給軟硬件之間造一條共同語(yǔ)言。3.3 一次典型異常復(fù)現(xiàn):完整排查鏈路復(fù)盤(pán)理論講多了,還是看一次真實(shí)排查過(guò)程更有感覺(jué)。某臺(tái)設(shè)備量產(chǎn)后偶發(fā)死機(jī),沒(méi)有明顯規(guī)律,有時(shí)候正常跑好幾天才出現(xiàn)一次。第一輪排查重心全在軟件上:加內(nèi)存保護(hù)、堆棧檢測(cè)、喂狗日志,結(jié)果跑了一整夜也沒(méi)復(fù)現(xiàn)。后來(lái)決定上儀器,用示波器長(zhǎng)時(shí)間掛在3.3V電源軌上,靠觸發(fā)條件抓異常窗口。等了大概半天,終于抓到一次異常:死機(jī)前幾百微秒,3.3V電壓出現(xiàn)了大約3%的跌落,幅度不算大,時(shí)間點(diǎn)正好落在某個(gè)外設(shè)開(kāi)啟的瞬間。進(jìn)一步分析發(fā)現(xiàn),該外設(shè)開(kāi)啟時(shí)的沖擊電流,和內(nèi)部DC-DC控制環(huán)路的響應(yīng)空檔重疊,形成了一個(gè)短暫的欠壓窗口。軟件在那個(gè)瞬間剛好在操作Flash,對(duì)電壓跌落特別敏感,于是系統(tǒng)跑飛復(fù)位。最終修復(fù)做了兩頭:軟件把外設(shè)啟動(dòng)錯(cuò)峰延時(shí),避開(kāi)Flash寫(xiě)操作;硬件在電源輸出端加了一顆小容量的去耦電容,抑制瞬態(tài)跌落。這類(lèi)問(wèn)題只靠軟件抓,無(wú)論如何都定位不到電源上去;只靠硬件看,也無(wú)法理解為什么偏偏在那一瞬間系統(tǒng)崩了。軟硬件的兩層信息拼在一起,排查過(guò)程反而變得很干凈。3.4 讓儀器數(shù)據(jù)和軟件日志對(duì)齊:聯(lián)調(diào)現(xiàn)場(chǎng)最實(shí)用的動(dòng)作排查過(guò)程里還有一個(gè)細(xì)節(jié)值得單獨(dú)說(shuō):如何讓示波器、邏輯分析儀的數(shù)據(jù)和軟件日志精確對(duì)齊。很多人會(huì)在代碼里直接打印“當(dāng)前時(shí)間戳”,但打印本身有延遲,串口輸出也不是實(shí)時(shí)的。我的做法是,在關(guān)鍵事件發(fā)生時(shí)用GPIO翻轉(zhuǎn)來(lái)做硬件標(biāo)記,同時(shí)軟件日志里記錄事件編號(hào)。邏輯分析儀抓到的波形邊沿,和日志里的事件編號(hào),就能做到精確配對(duì)。做低功耗調(diào)試時(shí),配一臺(tái)帶記錄功能的電流探頭尤其有價(jià)值。軟件每執(zhí)行一個(gè)動(dòng)作,電流波形上都會(huì)留下對(duì)應(yīng)的臺(tái)階。把電流波形和軟件日志放在同一時(shí)間軸上看,哪一步功耗異常、哪一步?jīng)]有按預(yù)期進(jìn)入休眠,一眼就能發(fā)現(xiàn)。這套方法聽(tīng)起來(lái)麻煩,但花半天時(shí)間搭一次,后面整個(gè)項(xiàng)目周期都會(huì)受益。4. 功耗、時(shí)序與軟件策略的相互制約4.1 待機(jī)電流超標(biāo)時(shí),軟硬件要一起做減法電池設(shè)備最怕的待機(jī)功耗問(wèn)題,常年占據(jù)調(diào)試問(wèn)題榜首。規(guī)格書(shū)標(biāo)稱(chēng)2uA待機(jī),實(shí)際板子量出10uA甚至更高的情況太常見(jiàn)了。原因通常是多個(gè)因素疊加:GPIO浮空、外設(shè)沒(méi)有真正進(jìn)入掉電模式、上下拉電阻阻值不合適、DC-DC反饋電阻形成漏電路徑。每次遇到這種問(wèn)題,我第一反應(yīng)不是去問(wèn)“這是硬件問(wèn)題還是軟件問(wèn)題”,而是先做一次軟硬件聯(lián)合的排查。排查手段很樸素:軟件控制逐個(gè)關(guān)閉外設(shè),電流計(jì)每關(guān)一個(gè)測(cè)一次,記錄到清單里。比如把所有外設(shè)關(guān)閉后電流是3.2uA,開(kāi)啟定時(shí)器變成5.1uA,保留一個(gè)GPIO浮空變成9.7uA……這樣一步步剝離,很快就能定位是誰(shuí)在偷偷耗電。表格化記錄非常直觀:軟件配置動(dòng)作實(shí)測(cè)待機(jī)電流初步分析全部外設(shè)關(guān)閉3.2uA符合預(yù)期開(kāi)啟定時(shí)器模塊5.1uA定時(shí)器時(shí)鐘沒(méi)關(guān)干凈遺留一個(gè)GPIO浮空9.7uA浮空輸入漏電開(kāi)啟看門(mén)狗4.0uA與手冊(cè)數(shù)據(jù)一致有意思的是,很多根因并不是軟件能單獨(dú)解決的。比如浮空引腳是硬件漏接上拉或下拉,軟件只能把該引腳配置為模擬輸入、關(guān)閉時(shí)鐘來(lái)降低漏電,真要徹底干凈還得等硬件改版時(shí)處理。軟件兜底是被動(dòng)的,硬件設(shè)計(jì)質(zhì)量才是主動(dòng)保障。4.2 中斷與調(diào)度,是軟硬件共同的節(jié)奏問(wèn)題中斷是嵌入式領(lǐng)域軟硬件交互最頻繁的接口,也是摩擦最多的地方。常見(jiàn)的一種現(xiàn)象是,某個(gè)外設(shè)因?yàn)樾盘?hào)線過(guò)長(zhǎng)、電平整形不到位,產(chǎn)生大量邊沿毛刺,外設(shè)中斷被瘋狂觸發(fā),CPU忙于處理無(wú)效中斷,低優(yōu)先級(jí)任務(wù)長(zhǎng)期得不到執(zhí)行。表面看是軟件調(diào)度不合理,實(shí)際是信號(hào)完整性不過(guò)關(guān)。反過(guò)來(lái),軟件把中斷服務(wù)函數(shù)寫(xiě)得太長(zhǎng),中斷響應(yīng)延遲上升,外設(shè)緩沖區(qū)溢出,硬件看門(mén)狗也可能被觸發(fā)。我自己的習(xí)慣是,在項(xiàng)目定義階段就做一張“中斷清單”,把每個(gè)中斷的來(lái)源引腳、觸發(fā)條件、實(shí)時(shí)性要求、允許處理延遲全部列出來(lái)。哪路中斷必須硬實(shí)時(shí),取決于硬件外設(shè)的緩沖能力;哪路中斷可以延遲處理,取決于軟件任務(wù)的容忍度。這張清單只有軟硬件工程師一起才能畫(huà)完整。有了它,電路設(shè)計(jì)和任務(wù)調(diào)度都有據(jù)可依,不會(huì)等到聯(lián)調(diào)時(shí)才靠吵來(lái)磨合。4.3 電源時(shí)序問(wèn)題:為什么“正常上電卻偶爾起不來(lái)”還有一種讓人頭疼的現(xiàn)象:設(shè)備上電后大多數(shù)時(shí)候正常,但只要斷電再上電,偶爾就啟動(dòng)失敗,按一下復(fù)位鍵又能恢復(fù)。這種情況大概率出在電源時(shí)序和復(fù)位時(shí)序上。MCU的多個(gè)電源域,比如核心電壓、IO電壓、模擬電壓,上電先后和建立時(shí)間都有要求。IO電壓先于核心電壓建立,引腳就可能出現(xiàn)不定態(tài);復(fù)位信號(hào)釋放太早,MCU可能在內(nèi)核電壓還沒(méi)穩(wěn)定之前就開(kāi)始讀Flash,導(dǎo)致異常。軟件能做的補(bǔ)救是啟動(dòng)階段增加延時(shí)和狀態(tài)檢查,硬件能做的則是把復(fù)位芯片的延遲時(shí)間調(diào)準(zhǔn)確。這類(lèi)問(wèn)題最有迷惑性的地方在于,樣機(jī)電源余量大、時(shí)序偏差不敏感,常常測(cè)不出問(wèn)題,到量產(chǎn)批次差異變大才暴露。所以我在項(xiàng)目早期就會(huì)安排斷電重啟壓力測(cè)試,把“跑起來(lái)正常但斷電重啟就掛”的隱藏坑提前逼出來(lái)。真等到現(xiàn)場(chǎng)用戶一天重啟幾百次才發(fā)現(xiàn),損失就大了。5. 典型軟硬件矛盾坑與取舍原則5.1 信號(hào)毛刺干擾時(shí),濾波該做硬件還是軟件電機(jī)類(lèi)設(shè)備里,RS485通信被干擾幾乎是必修課。有一次現(xiàn)場(chǎng)設(shè)備在電機(jī)啟動(dòng)瞬間,總線上出現(xiàn)偶發(fā)誤碼。排查初期大家都懷疑波特率不穩(wěn),于是把波特率從115200降到38400,誤碼率確實(shí)下降,但沒(méi)有徹底消失。后來(lái)用示波器抓總線波形,才發(fā)現(xiàn)電機(jī)啟動(dòng)時(shí)會(huì)短時(shí)拉動(dòng)電源,導(dǎo)致總線收發(fā)器工作點(diǎn)偏移,產(chǎn)生了異常邊沿。這個(gè)案例讓我理解了一個(gè)原則:軟硬件都能處理同一個(gè)問(wèn)題,但選擇取決于產(chǎn)品所處的階段。樣機(jī)階段,我更愿意把硬件整改做徹底,加終端匹配、退耦電容、磁珠,把干擾源頭壓住;如果已經(jīng)小批量生產(chǎn)了,再為小概率問(wèn)題停機(jī)整改,成本太高,那就先用軟件手段控制住:降低波特率、增加幀校驗(yàn)、失敗重試機(jī)制,保住現(xiàn)有批次的可交付性,下一次改版再補(bǔ)硬件修正。所謂濾波做在硬件還是軟件,答案往往是動(dòng)態(tài)的,取決于生產(chǎn)階段、成本與風(fēng)險(xiǎn)承受能力。5.2 固件升級(jí)失敗:硬件設(shè)計(jì)里的隱性變量固件升級(jí)失敗,大家習(xí)慣怪下載器、怪代碼分區(qū),但有一個(gè)硬件變量常被忽略:復(fù)位引腳的電容過(guò)大,會(huì)使復(fù)位信號(hào)上升沿過(guò)慢,MCU在啟動(dòng)時(shí)錯(cuò)過(guò)進(jìn)入Bootloader的檢測(cè)窗口。升級(jí)過(guò)程中電流瞬態(tài)過(guò)大,也可能觸發(fā)低壓復(fù)位,把升級(jí)過(guò)程攔腰截?cái)唷_@類(lèi)問(wèn)題在軟件和硬件各自做單點(diǎn)檢查時(shí)都很難發(fā)現(xiàn),只有把升級(jí)流程當(dāng)作一個(gè)軟硬件系統(tǒng)工程來(lái)審視,才能找到原因。我給出的落地建議有兩條。一是硬件在復(fù)位電路上預(yù)留測(cè)試點(diǎn),必要時(shí)能人工干預(yù);二是軟件在升級(jí)流程啟動(dòng)之前做電源電壓自檢,低于閾值就直接拒絕升級(jí)并返回明確錯(cuò)誤碼。這樣即使升級(jí)失敗,系統(tǒng)也有清晰的恢復(fù)路徑,不會(huì)讓整機(jī)停留在半磚狀態(tài)。很多團(tuán)隊(duì)把固件升級(jí)想得太簡(jiǎn)單,直到現(xiàn)場(chǎng)出現(xiàn)變磚設(shè)備才意識(shí)到,升級(jí)通道本身就應(yīng)該是軟硬件協(xié)同設(shè)計(jì)的重點(diǎn)對(duì)象。5.3 速率、線纜和重試:通訊穩(wěn)定性不能只靠某一端通訊距離和速率的矛盾是另一個(gè)常見(jiàn)話題。某次現(xiàn)場(chǎng)反饋,線纜超過(guò)50米后偶爾丟包,我們換屏蔽線、加粗線徑都只能改善,后來(lái)把波特率從115200降到38400,丟包現(xiàn)象立即消失。這個(gè)解決辦法看起來(lái)不夠高明,但它說(shuō)明一個(gè)道理:硬件能支持的極限速率,與應(yīng)用實(shí)際要求的速率之間,留給了軟件一定的緩沖空間。當(dāng)然,我不推薦無(wú)腦降速。系統(tǒng)性的通訊可靠性設(shè)計(jì),應(yīng)該同時(shí)做好幾件事:發(fā)送端做數(shù)據(jù)包校驗(yàn)與重發(fā),接收端做超時(shí)判定與去重,物理層保留噪聲裕量。軟件重試機(jī)制不能替代硬件設(shè)計(jì)質(zhì)量,但它能在惡劣環(huán)境下維持功能底線。這兩種手段從來(lái)不是單選題——硬件提供能力上限,軟件在能力上限內(nèi)做健壯性兜底,合在一起才是完整方案。5.4 樣機(jī)正常不代表量產(chǎn)穩(wěn)定:驗(yàn)證策略上的平衡最后說(shuō)一個(gè)驗(yàn)證層面的坑。很多項(xiàng)目把“樣機(jī)測(cè)試通過(guò)”當(dāng)成可以量產(chǎn)的信號(hào),結(jié)果量產(chǎn)批次一出來(lái),各種概率性問(wèn)題集中爆發(fā)。原因很簡(jiǎn)單:樣機(jī)數(shù)量少、個(gè)體差異小、測(cè)試環(huán)境理想,概率性軟硬件耦合問(wèn)題很難被暴露。我以前也犯過(guò)這個(gè)錯(cuò),后來(lái)學(xué)乖了,在驗(yàn)證策略上調(diào)整成“迭代要快,但驗(yàn)證要堅(jiān)持”。快速原型階段可以大膽驗(yàn)證想法,可進(jìn)入量產(chǎn)驗(yàn)證階段,就要安排足夠的樣本量、足夠長(zhǎng)的老化時(shí)間,以及典型工況下的壓力測(cè)試。我還習(xí)慣在驗(yàn)證計(jì)劃里加入“異常注入”環(huán)節(jié),比如人為制造掉電、復(fù)位、干擾,主動(dòng)看系統(tǒng)能不能進(jìn)入可恢復(fù)狀態(tài)。軟件側(cè)要驗(yàn)證異常處理路徑,硬件側(cè)要測(cè)量極限工況下的信號(hào)質(zhì)量。這種驗(yàn)證思路比單純重復(fù)跑同一個(gè)測(cè)試用例,更容易發(fā)現(xiàn)隱藏在軟硬件交界處的問(wèn)題。6. 嵌入式開(kāi)發(fā)者的能力模型與團(tuán)隊(duì)協(xié)作6.1 軟件工程師要建立看原理圖的習(xí)慣我面試嵌入式軟件崗位時(shí),常會(huì)問(wèn)一個(gè)問(wèn)題:拿到一塊陌生板子,你會(huì)先做什么?如果對(duì)方回答“翻例程,直接跑”,我基本不放心。我期待的思路是:先看供電拓?fù)?再?gòu)?fù)位電路,再時(shí)鐘來(lái)源,然后翻主控的引腳分配表,理解每個(gè)IO被接成了什么功能。這樣的人出了問(wèn)題,不會(huì)只盯著代碼調(diào)試,而是會(huì)在硬件細(xì)節(jié)里多想一步??丛韴D不等于要搶硬件工程師的活。軟件工程師看原理圖,本質(zhì)上是建立“代碼到底跑在什么物理環(huán)境里”的直覺(jué)。比如某個(gè)引腳內(nèi)部有上拉,但硬件外接了下拉,看到這個(gè)組合就知道配置容易沖突;某個(gè)中斷引腳走線很長(zhǎng)還穿過(guò)噪聲源,你自然會(huì)想到軟件要不要加濾波和去抖。這種直覺(jué)不是天賦,而是靠長(zhǎng)期讀圖、對(duì)照實(shí)物板卡慢慢練出來(lái)的。6.2 硬件工程師也要理解軟件的使用方式反過(guò)來(lái),如果硬件工程師完全不理解軟件的需求,也容易踩坑。我曾經(jīng)遇到過(guò)選型時(shí)把帶PWM能力的引腳下放給普通GPIO,軟件要做輸入捕獲時(shí)才發(fā)現(xiàn)沖突;也見(jiàn)過(guò)ADC通道被數(shù)字接口全占光,軟件想讀某個(gè)電壓只能飛線的情況。這些問(wèn)題的根源往往不是能力,而是硬件設(shè)計(jì)時(shí)沒(méi)有把“軟件將如何使用這些資源”納入考慮。硬件工程師不需要會(huì)寫(xiě)業(yè)務(wù)邏輯,但需要知道系統(tǒng)里軟件要哪些外設(shè)模式、哪些中斷通道、哪些模擬采集點(diǎn),以及最低功耗要求是多少。我建議在選型表里加一列“軟件用途”,評(píng)審時(shí)讓軟件負(fù)責(zé)人參與核對(duì)。這不是流程繁瑣,而是嵌入式開(kāi)發(fā)本身的系統(tǒng)性要求。6.3 團(tuán)隊(duì)里真正稀缺的是“翻譯者”角色做過(guò)的項(xiàng)目越多,我越意識(shí)到,團(tuán)隊(duì)里真正稀缺的不是單點(diǎn)技術(shù)大牛,而是能把一端約束翻譯成另一端語(yǔ)言的“翻譯者”。硬件工程師說(shuō)“信號(hào)電平?jīng)]問(wèn)題”時(shí),他會(huì)追問(wèn)一句“但軟件讀到的寄存器狀態(tài)是不是穩(wěn)定”;軟件工程師說(shuō)“我加個(gè)濾波就能跑”時(shí),他會(huì)提醒“濾波掩蓋了真實(shí)波形,樣機(jī)過(guò)得了,量產(chǎn)不一定”。翻譯者不一定是架構(gòu)師或項(xiàng)目經(jīng)理,但通常有較強(qiáng)的全局視野。他既能讀懂原理圖里的電源拓?fù)?也能理解代碼里的狀態(tài)機(jī);既會(huì)用示波器抓波形,也聽(tīng)得懂任務(wù)調(diào)度的優(yōu)先級(jí)含義。這種角色的價(jià)值,會(huì)在一次又一次的軟硬件聯(lián)調(diào)中被反復(fù)放大。6.4 一個(gè)簡(jiǎn)單但有效的協(xié)作習(xí)慣最后分享一個(gè)極其簡(jiǎn)單卻有效的建議:每次聯(lián)調(diào)開(kāi)始前,讓軟件工程師和硬件工程師各寫(xiě)一張“我擔(dān)心哪里會(huì)出問(wèn)題”的紙條,然后交換著看。這個(gè)動(dòng)作看起來(lái)有點(diǎn)形式化,卻總能提前暴露幾個(gè)真風(fēng)險(xiǎn)點(diǎn)——軟件擔(dān)心電源紋波,硬件擔(dān)心中斷風(fēng)暴,兩張紙條一拼,問(wèn)題的輪廓就出來(lái)了。寫(xiě)紙條還有一個(gè)心理層面的價(jià)值:它讓人主動(dòng)從對(duì)方視角去看系統(tǒng)。嵌入式開(kāi)發(fā)里的軟硬件邊界,很多時(shí)候不取決于技術(shù),而取決于協(xié)作習(xí)慣。愿意把邊界摩擦轉(zhuǎn)化為邊界合作的團(tuán)隊(duì),效率永遠(yuǎn)比各自為戰(zhàn)的團(tuán)隊(duì)高出一截。寫(xiě)著寫(xiě)著,想起一次項(xiàng)目總結(jié)會(huì)上同事說(shuō)的話:嵌入式開(kāi)發(fā)最迷人的地方,就是你永遠(yuǎn)不能只懂一頭。軟件工程師可以不會(huì)設(shè)計(jì)開(kāi)關(guān)電源,但至少要明白代碼跑在什么樣的電源環(huán)境下;硬件工程師可以不會(huì)寫(xiě)業(yè)務(wù)邏輯,但至少要知道選的芯片未來(lái)要承擔(dān)什么軟件負(fù)荷。這塊領(lǐng)域的邊界從來(lái)不是一面墻,而是一層相互滲透的薄膜。希望這篇文章里這些關(guān)于嵌入式軟硬件開(kāi)發(fā)的思考,能幫你少踩幾個(gè)我正在往回爬的坑。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
丁香五月中文字幕| 天天舔天天摸天天透| 天天久久66xxx| 久久东京热婷婷五月| 日本99在线视频| 超碰色色综合| 五五月丁香花激情综合网| 久久视网36| 另类色视频| 欧美在线骚货| 俺去也在线视频| 99爱在线视频观看| 五月天婷婷AV| 色丁香五月| 丁香五月伊人| 95精品区一区二| 色99综合色88| 97干在线播放| 热的国产,热的综合,热的有码| 青草视频在线蜜臀| 五月天婷婷视频| www,色婷婷| 淫视馆aV二区一区| 日韩黄在免| 97伦乱| 午夜微拍福利| 色情久久久| 婷婷五月天成人网| 人人射av| 五月天久久网站| 久久婷婷激情| 五月Huangsewang| 九九九九成人| 免费AAAAA网| 五月天天天开心激情网| 五月婷婷综合在线视频小说| 久久9视频| 开心激情婷婷| 日本三级片片| 五月开心婷婷中文字幕| 热99精品视频| 丁香五月综合| 久热99视频在线观看| 久热伊人9| 婷婷久久亚洲| www国产亚洲色婷婷com| 婷婷五月激情图片| 91se视频| 黄网网站在线播放| 天天操夜夜肏| 欧美成人A片AAA片在线播放| 天天色凹凸| 99在线免费视频| 天天爱天天做天天舔| 99热在线这里| 五月丁香综合啪啪| 无码九九九九| 婷婷久久国产视频| 182TV大香蕉| 亚洲中文字幕av| 97操碰人免费| 色优久久| 天天婷婷色六月| 激情久久久久| 97久久精品视频| 综合网色| 夜夜综合色| 亚洲国产成人在线| 国产性爱大片久久| 色五月xxx| 九九亚洲视频| 亚洲成人在线播放| 婷婷人人操| 色五月视频无码播放| 天天插天天干| 综合久久十三| 99 热| 日韩在线aaa| 欧洲毛片基地c区| 久久综合五月天激情小说网站 | 欧美综合五月丁香五月天| 99.N在线视频| 五月丁香色停停啪啪啪| 狠狠看狠狠| 婷婷五月天开心激情网| 少妇大叫太大太粗太爽了A片| 久啪欧美| 精品九九视频| 26uuu成人网| 亚洲综合欧美色丁香婷婷888月图片| 久久久中文| 色操b| 开心五月婷婷激情| 超级碰碰碰碰视频| 激情性五月天免费小说视频| 婷婷导航| 色婷婷综合久久久久| 五月天欧美激情| 97人人超| 婷婷色五月大香蕉在线观看| 五月丁香激情婷婷综合| 色优久久| 五月丁香婷婷久久| 99这里有精品视频| #NAME?| 五月丁香婷婷网网网网| 综合久久9| 婷婷字幕在线| 五月丁香天天| 东京热免费视频| 99日精品视频| 色 色 色综合com| 天天干天天干天天干| 久草五月婷婷| 丁香五月社区| 91传媒无码人妻精| 五月天婷婷青青草| 精品国产AV色一区二区深夜久久| 五月婷婷干干干| 99热在线观看免费精品| www.1024久久| 婷婷五月天亚洲综合| 高清无码网址| 色色色综合网| 日本99视频| 激情亭亭五月| 色狠久| 天天躁日日躁狠狠躁日日躁2022年5月9日 | 丁香五月激情婷婷婷婷在线观看| 五月婷婷伊| 丁香五月 综合| 综合久久综合| 色婷婷色情| 天堂草在线看www| 51精品国自产在线| 丁香五月六月婷婷自拍| 天天做天天爱天天高潮| 色五月xxx| 色丁香婷婷| 婷五月天丁香婷五月| 在热视频精品| 丁香九月激情在线视频| 。久久久久久久久久久久久久人妻| 99自拍视频在线观看| 国产1区2区3区| 婷婷丁香六月天| 二区成人视频| 操婷婷基地| 精品成人无码A片观看香草视频| 在线只有精品| 五月天开心色情网| 中文字幕 中文字幕明步| 欧美色性色好| 日日干日日s| 狠狠爱婷婷色| 九九九九九999999| 亚洲综合九九| 天天干 夜夜爽| 99色综合网| 操b视频在线观看一区二区| 丁香婷婷五月色成人网站| 色噜噜狠狠色综合日日免费| 国产精品社区| 字母不卡码人逼| 涩涩五月天| 久久一热| 丁香五月婷婷成人色区| 亚洲av综合网| 欧美婷婷综合网| 欧美精品99久久久| AV在线免费网站| 色婷婷在线视频综合| 五月激情啪啪啪| www.99精品日操伊人乱碰在线| 激情五月天在线视频| 亚洲99热| 啪啪五月天啪啪| 九热免费视频| www.九月婷婷丁香.com| 乱岳熟女50岁| 免费黄色视频网址| www.激情五月| 丁香婷婷在线| 丁香 婷婷五月| 丁香婷婷色色| 91日综合欧美| 五月天sesese| WWW.国产| 天天色视频| 久久天天| 五月婷婷无码| 天天热夜夜操| 日本色婷婷久久99精品91| 女操碰| 九色综合五月天婷五月| 日本狠狠干| 人人干99| 婷婷久久色| 99精品视频在线| 亚洲色五月| 婷婷激情啪啪| 欧美高潮9| 福利视频在线播放| 丁香五月婷婷在线视频| 六月婷婷网| 日韩高清成人| 光棍影院日韩精品| av一区二区电影免费在线观看| 日本天天操| 超碰人人艹| 激情综合网五月激情| 九九久久99| 99热永久在线观看| 激情五月综合色| 91ncm视频| 亚洲国产黄色电影| 操操综合网婷婷| 少妇性BBB搡BBB爽爽爽电影| 99无码视频| 婷婷五月综合社区| 97精品自拍视频| 99热精品在线播放| 丁香六月伊人| 丁香五月婷婷综合网| 婷婷另类开心| 丁香五月日啪| 天天舔夜夜操www com| 亚洲第一黄网| 欧美六月| 亚洲av免费在线| 亚洲成人无码网站| 亚洲一区二区无遮挡A片| 五月婷中文娱乐综合| 丁香激情综合| 99色综合久久| 婷婷亚洲在线| 婷婷99狠| 91丁香色五月| 亚洲av电影网站| 丁香五月婷婷综合啪啪| 色五月婷婷777| 亚洲亚洲人成综合网络| 国产精品久久久久久久久久| 国产成人精品一区二三区熟女在线| 狠狠干无码| 国产 亚洲 在线| 色情五月婷| 99精品在线观看| 日日操日日撸| 在线视频激情网站| 亚洲av日韩无码| 少妇搡BBBB搡BBB搡毛茸茸 | 欧美丁香五月| 色久影院| 成人电影一区| 涩五月婷婷| 亚洲婷婷免费| 色99色| 久久久久9999| 欧美成人一区二区三区在线视频| 亚洲欧洲中文日韩久久AV乱码| 久久99综合| 婷色五月| 成人无码髙潮喷水A片| 成人无码髙潮喷水A片| 色婷婷基地 | 三年高清大片免费观看国语| 激情小说色五月| 大香蕉久久综合网| 色色色宗合网| 五月丁了香蕉综合| 色哟哟www| 久久久久久97| 99在线精品观看99| 五月丁香怕啪啪| 激情综合五月激情17| 深爱婷婷基地| 久久午夜理论| 五月激情网站| 69色婷婷| 第五色婷婷| 这里只有精品久久| 欧美日本免费一道免费视频| WWW色色色COM| 色婷婷啪啪啪啪啪啪| 久久婷婷五月综合成人d啪| 激情视频91| 久草 天堂| 亚洲色色色色色| 99r久久这里只有精品| 婷婷五月天无码熟女| 99热首页在线30| 五月综合六月婷婷| 五月丁香六月婷婷激情网| www.91.com黄| 欧美激情五月天| 一级AV片| 欧美三级级99久久| 色99视频| 一本道综合网| 天天插AV丝袜中| 天堂五月婷婷| 天天干电影| 少妇性BBB搡BBB爽爽爽电影| 国产亚洲99久久精品熟女| 丁香五月综合无码趴趴| 国产成人网| 99re在线观看视频| 婷婷久久亚洲| AV在线观看网站| 久久久久这里只有精品| 97干在线视频精品店| 国内久久久精品99| 开心六月丁香五月婷婷| 亚洲成人va| 性综合网| 五月丁香综合| 婷婷五月成人社区| 久久久ww| 久久五月激情网| av性爱网站| 91色噜噜狠狠狠狠色综合| 婷婷久久五月天| 丁香五月婷婷激情97| 99视频在线啪| 久久中文人妻系列| 夜夜操激情| 天天搡日日搡aaaaⅩ| 激情五月综合网| 麻豆忘忧草午夜| 婷婷丁香97| 日韩五月天婷婷| 伊人五月综合网| 精品久热| 欧美一级a| 国产精品日日躁夜夜躁| renrencaoav| 天天爽夜夜操| www.五月天| 五月情涩综合婷婷| 丁香六月天婷婷在线| 五月婷婷综合潮喷| 一级性爱视频| 九月性爱网| 成人在线精品| 99热这里只有精品无码| 亚洲AV免费在线| 婷婷香草网| 97人操| 亚洲日本激情| 狠狠狠色激情综合适合| 五月丁香婷婷综合| 色欲婷婷五月天丁香| 天天干夜夜操A片| 99热无码| 99久久婷婷国产综合精品草原| 色九九一二| 狠狠色丁香久久久婷| 五月草影视| 色综合久久久久| 久久六月婷婷| 欧美激情丁香五月| 天天爽夜夜操| 国产精品天天狠天天看| 亚韩在线视频| 无码色色| 婷婷色在线| 六月激情网| 色综合爽| 五月开心网| 精品一二三区久久AAA片| 亚洲碰碰碰| 草AV9999| 热99这就是精品视频| 男同色五月开心五月激情五月| 日韩ac不卡无码| 婷婷丁香综合成人| 五月婷婷av| 激情骚五月| 包操45分钟网站| 狠狠色成人影片| 曰韩少妇内射免费播放| 91超碰在线观看| 婷婷综合色五月天| 无码少妇高潮喷水A片免费| 久久999久久999久久999久久| 天天插天天日天天爽| 99免费热视频在线| 超碰在线资源| 婷婷在线午夜| 青草五月天| 日本三日本三级少妇三级66| 五月婷婷伊人久久| 久久98| 成人av在线网址| 亚洲色亚洲精品| 六月婷婷色综合| 免费黄色AV| 伍月婷丁香花全集| 99在线精品免费视频| 97狠狠色| 一级二级色大片| 亚洲精级| 99久久思思| 色色色免费视频| 亚洲另类av| 思思re视频在线| 日韩啊啊啊| 色五月婷婷影院| 涩涩涩.com| 99网| 色六月天天激情综合网| 久久综合激情| 操逼三区| 另类激情首页| 991自拍视频| 青青草深爱激情网| 五月婷婷五月天| 琪琪色五月天| 成人丁香| 色播色丁香五月| 五六月丁香激情视频| 五月亭亭开心网| 99在线视频精品| www.minyis.com【JT】实力收量可预付QQ2101460746 | 五月综合婷婷网| 五月丁香激情综合网| 丁香五月天狠狠操| 五月婷婷av| 99热在线极品极品| 五月婷六月天| 天天色综网| 69堂午夜视频最新地址| 天天综合网在线| 4399在线日本A片| 久久人妻精品| 狠狠综合色网| 99在线小视频| 另类图片五月天激情| 狠狠狠五月婷婷六月丁香| 欧美性生交XXXXX无码小说| 3pAV| 开心激情婷婷| 91操色| 这里只有精彩视频| 色综合网上班开心婷婷久久| 亚洲精品无码久久| 色色色999| 综合久久久| 97色啪| 久久99网| 天天操五月天| 狠狠操狠狠操| 色噜久| 中文AV网| 丁香六月激情综合网| 久久机热/这里只有精品| 91久女| 婷婷伊人久久综合| 亚洲综合色激情色五月| 婷婷久久亚洲| 国洲夜色亚热在线久久| 激情综合网五月| 色婷婷亚洲在线观看| 婷婷激情社区| 九9九9无码| 激情五月婷婷五月丁香五月开心五月| 婷婷色情五月| 99热天堂| 激情伊人| 国产色色视频| 日本va欧美va精品发布视频| 亚洲妇女熟BBW| www.五月激情.com| 日韩一级一片内射视频4K| 五月丁香六月合| 亚洲乱码日产精品BD| 久久性爱网站| 丁香五月婷婷影视先锋| 婷婷五月天狠狠| 9 1 A v久久久| 激情五月婷婷丁香| 色欲婷婷五月天丁香| 丁香久久综合| 思思热这里只有精品视频666| 色欧洲| ri电影在线| 香蕉久久av一区二区三区| 亚洲激情丁香五月基地| 美女被操一区二区| 丁香五月婷婷在线| 久久狼人天堂| 国产67194| 天天草天天爱| 天堂久热| 少妇人妻人伦A片| 亚洲综合五月天婷婷丁香| 国产亚洲99久久精品| 国产精品久久久99视频| 日日躁夜夜躁狠狠久久AV| www.五月婷婷久久.com| 国产黄色大片| AA久久| 99精品国产在热久久| 色五月激情网| 国产日日操夜夜操的肉棒视频| 99九九99九九九视频精品| 成人丁香婷婷| 影音先锋噜一噜| 看片视频在线免费日产在线看| 五月丁香综合伦理片| 好叼操在线观看| www.婷婷五月| 大香蕉九九| 丁香五月成人| 天天爽日日爽夜夜爽| 啪精品| 99热最新| 天天噪夜夜爽| 97操男人的天堂| 激情人妻综合| site:minyis.com| 天天揷综合网| 五月婷婷六月丁香在线视频免费在线观看| 999婷婷综合| 99无码视频| 人人摸人人干人人做| 9九色首页| www.99视频| 五月天播播综合| 精品自拍97| 成人av在线网址| 色婷婷五月天亚洲| 免费一区二区三区| 色综合区| 思思99re这里只有| 久色五月天| 可以免费观看的AV| 五月天成人在线播放丁香| 久久久五月婷婷| 久久久97| 五月丁香人妻| 五月丁香| 97人人妻人人艹| 综合激情在线视频| 中文字幕日韩无码制服诱或| aaa9区免费在线观看| 五月天六月色| 亚洲激情.com| 狠狠搞五月天| 国产高清视频91九九九久久久| 五月天激情图片| 色婷五月丁香久亚洲| 亚洲xx网| 五月天啪啪| 91婷婷丁香| 超碰在线免费观看日韩| 久久性操| 欧美婷| 秋霞日本免费毛片A片| 97色婷婷| 欧美成人精品A片免费一区99| 美女天天艹人人爽| 久久婷婷资源| 99国产精品久久久久久久久久久| 色综合天天综合成人网| 色婷婷在线视频久| 日本黄色在线观看| 日本精品人妻无码77777| 亚洲激情五月天| 久久久久婷婷五月热综合| 综合 蜜月 婷婷| 超碰在线人妻| 五月天激情网站| 激情五月激情综合网一级丸片| 六月婷婷最新网址| 中文字幕日产A片在线看| 激情网婷婷五月天| 国产99视频永久免费| 99热新网址| 九九色婷婷五月天| 97人人射| 天天做天天爱天天爽综合网| 亚洲激情五月婷婷日日| 日本色99| 欧美A A A A A| www婷婷| 婷婷情爱五月天6| 色婷婷成人在线| 激情人妻综合| 亚韩精品视频1区| 天天干天天干天天干天天干天天干| 婷婷五月另类网站| 午夜美女人啪最红院| 日本久久超碰| 久综合九综合99| 色五月激情网| 人妻久久久| 亚洲婷婷六月天| 久久久久激情| 五月丁香综合网| 国产欧美精品AAAAAA片| 狠狠综合网| 天天婷婷| 亚洲五月综合色播| 久久大香蕉| 亚洲另类毛片| 玖玖色综合色| 婷婷六月色| 丁香五月婷婷色情综合| 五月天最新网| 五月激情基地| 六月婷婷视频| 久久激情视频99| 天天综合五月天| 伊人五月婷| 日本一级一级一级一级| 激情丁香社区| 99这里都是精品| 丁香六月婷婷综合在线| 伊人六月丁香婷婷| 色天天综合天天综合频道。| 六月久久婷婷| 美女91一起草| yirenjiqingshiping| 国产精品天天狠天天看| 亚洲色色色| 97碰啪啪| 一月婷婷色色| 天天日天天摸| 丁香五月另类小说| site:ornaments52.com| VA国产在线综合网站| 婷婷丁香六月| 超碰九九热| 婷婷五月天中文字幕| 五月丁香激情综合网官网| 欧洲电影在线观看免费版英语版| 女人天堂AV| 久久婷婷影院| 五月丁香六月激情综合| 天天插天天射| 六月丁香激情网| 婷婷香五月综合激情| 色欲丁香久久| 亚洲AV激情五月综合网| 久久66er久久| 日本妈妈乱| 99无码视频| 在线网黄| 六月撸婷婷| 加勒比日本一区二区三区| 日本久碰| 草久私拍| 久久爱综合| 天天色凹凸| 91九色白丝| 狠狠操狠狠色| 婷婷亚洲在线| 黄色片avv| 久久大大香| www.色多多婷| 日本91在线播放| 欧美成人在线观看| 五月丁香婷婷成人网| 五月婷婷影院| 青青草国产亚洲精品久久| www色色色com| 欧美激情五月天| 天天干天天插| 欧美搡BBBBB摔BBBBB| 99色色| 免费无码毛片一区二区A片| 丁香五月综合| 夜夜爽77777妓女免费下载| 精品人妻伦九区久久AAA片| av国产精品| 色婷婷丁香A片区毛片区女人区| 婷婷五月成人| 亚洲无AV在线中文字幕| 久久综合99综合| av网址在线播放| 日韩久久系列| 4438全国最大视频成人网站在线观看| 野外99热| 91|九色|动漫| 99久久精品色老| 大香蕉五月丁香| 婷婷五月天色色| 91蜜桃婷婷狠狠久久综合9色| 婷婷色中文字幕| 狠狠干狠狠色| 五月天天天综合| 亚州激情网站无码| 久久人妻情侣| 天天操狠狠操| 十一月婷婷激情四射| 麻豆雪千夏| 影音先锋一区二区三区| 婷婷天天日婷婷| 色九九综合| 久久AV无码精品人妻系列试探| 亚洲狠狠色丁香婷婷综合久久| 无码字幕中文| 亚洲自拍天堂| 99re免费精品视频| ss五月天激情| 79色色免费| 99热这里只有精品免费观看| 婷婷五月丁香超碰| www.超碰| 无码99| 亚洲av| 伊人影院久久网| 久久婷婷人人| 99色婷婷视频| 丁香狠狠| 色婷婷丁香香香蕉视频| 噜噜狠狠色综合久| 婷婷综合激情| 91操人人操| 久久天堂女人| 亚洲在线操| 激情五月深爱五月| 99久久综合精品五月天| 在线综合网| 久热91| 欧美日本日韩| 久久久久九九九九视屏小说88| 色婷婷综合成人| 色综合夜夜| 丁香五月天五码婷婷| 老司机日日夜夜青草| 天堂久久精品| 五月丁香六月| 丁香久久激情俄| 五月丁香六月激情综合| 亚洲色情免费网| 久久免费婷婷视频| 丁香婷婷五月色成人网站| 亚洲成人免费在线| 久久综合55| 一月婷婷色色| 六月婷婷视频| 色亭亭五月天丁香综合AV - 百度 - 百度 | 久久九九国产精品怡红院| 激情图片亚洲| 91在线视频综合| 九月丁香婷婷综合激情| 夜丁香五月婷婷| 综合久久综合久久| www.色五月| 九月色婷婷综合| 丁香婷婷人妻| 色色色国产| 欧洲亚洲免费视频9| 午夜精品人妻无码一区二区三区| 97久久超级| jiqingtaose五月天| 婷婷深爱网| 热五月婷婷| 国产AV一区二区三区最新精品| 操婷婷久久| 中海油常州环保涂料有限公司| 另类综合国产| 区美毛片子| 精品一二三区久久AAA片| 亚洲人人操| 涩综合在线 | 亚洲色五月| 99热精地址| 久久久18| 啪啪啪丁香五月| 一区二区三区视频| 日日做夜夜爱| 欧美日韩成人在线| 91 久热| 久久五月综合| 久久九九视频| 五月天丁香网| 五月激情综合性爱| 婷婷丁香五月久久| 色女人久久| 丰满少妇乱A片无码| 91互操| 五月婷婷精品视频| av色婷婷| 黄色高清无码| 激情五月婷黄版| 五月天狠狠网| 日日爽夜夜爽| WWW,五月| 第一区久久网站| 亚洲人妻AV| www网站在线观看| 伍月婷丁香婷| 久久亚洲天堂| 激情五月婷婷综合秋霞| 丁香五月婷婷激情网| 六月婷婷九月丁香亚洲综合| 99热综合| 日韩日比视频| 婷婷丁香五月欧美人| 国产午夜一区二区三区| 91大神在线免费看视频全集男男一起操| 色五月丁香总合网| 99噜噜| 思思热99er| 久久66er久久| 色婷婷88| 色婷婷丁香AV综合| 婷婷五月成人有| 中文字幕精品在线观看| 色婷婷小视频| 九九这里有精品视频| 五月丁香成人| 91九九精品| 婷婷五月天深爱| 综合色五月| 九九性爱网| 天天爽综合| 91久久久久久久| 亚洲视频操| www激情com| 免费无码毛片一区二区A片| 色综合区| 激情综合网五月天| 人妻第九页| 婷婷月五天在线在线看| 日本女人久久| 国产精品黑丝| 日日鲁鲁夜夜爽爽| 色婷婷五月在线| 欧美性久| 九九热99热| 4399无码视频| 99久久66| 成人午夜无码视频| 亚洲无码www| 日日狠狠久久偷偷四色综合免费| 国产日韩精品SUV| 狠狠搞五月天| 丁香婷婷六月天| 亚洲AV无码成人精品电影| 六月五月婷婷| 国产乱妇无乱码大黄AA片| 激情小说五月天| 99亚洲视频| 9999综合99综合人| 伊人狠狠操| 99热国品| 立川无码av| 五月天色影院| 九九精品自拍| 人妻视频在线| 丁香五月婷婷亚洲另类| 拳交大逼| 在线不卡AC| 影音先锋 91工厂| 久9热| 色婷婷XXXXX| 狠狠综合网| 久综合| 97色色色| 欧美性交一区二区三区| 性色视频| 思思热99er| VA婷婷亚洲| 99视频| 激情五月婷婷网在线观看| 色99在线| 婷婷激情小说网| 狠狠狠狠狠狠狠狠| 超碰人人超碰| 91婷婷色五月| 丁香五月人妻| 久久亚洲天堂| 九色无码| 超碰爱爱爱| 无码橾| nvrentiantang av| 大香蕉丁香| 六月激情婷婷| 97伊人综合婷婷| 丁香五月婷婷日本| 中文字幕婷婷在线| 婷婷五月天第三页| 激情综合网站| 激情综合网五月婷婷| www.91AV.COM| 色久丁香五| 99热色婷婷| 综合网啪| 91干在线| 久久人人九九| 亚洲无码另类| 激情综合色| 九九伊人网| 六月婷婷五月天| 丁香九月综合| 99爱在线视频| 婷婷五月天.com| 嫩草AV久久伊人妇女超级A| 狠狠色丁香99| 乱乱av| 激情综合色婷婷啪啪六月天| 精品婷婷丁香五| 99久久激情视频| 久久精品噜噜噜成人A∨色欲| www婷婷| 狠狠五月激情丁香六月| 色综合丁香| 五月开心婷婷网| 天天综合精品| 五月婷无码| 激情都市另类| 人人草人人爱手机视频看看| 天色色综合网| 狠狠色五月天| 久久伦乱| 综合婷婷| 久热2025无码| 久久精品凹凸分类| 色播五月丁香| 久久婷婷夜| 99自拍网| 亚洲中文丁香| 亚洲精品V天堂中文字幕| 狠狠插狠狠| 丁香六月成人网| 婷婷操久久| 99re在线视频精品,这里只有精品18,| 丁香五月色情| 色婷婷丁香中文在线播放| 91啦丨九色丨刺激中文| 99热这里只有精品99| 丁香九九九九| 婷婷五月天福利| 狠狠干五月丁香| 丁香99| 婷婷五月天网址| 大香蕉啪啪啪| 青青草国产亚洲精品久久| 久久人妻在线| 日韩无码人妻一区二区| 青青草原亚洲天堂| 婷婷五月综合婷婷| 日韩精品视频中文字幕| 天天精品视频免费观看| 中文字幕,综合,91| 看片视频在线免费日产在线看| 五月天成人网婷婷| 91 久热| 玖玖婷婷综合| 久久色五月| 婷婷五月色播天| 五月色丁香| 六月激情婷婷| 亚洲无AV在线中文字幕| 久久五月天激情| 天天综合网91| 蜜桃人妻无码AV天堂三区| 五月色网| 狠狠色丁香婷婷久久综合| 久久怕怕视频| 99精品爱| 欧美色97| 91精品综合久久久久久五月丁香| 操你av| 久久丝袜婷婷| 九九av| 久久丁香五月婷| 91久久1118| 9色91视频| 免费精品99| 伊人丁香六月婷婷| 狠狠色综合无线观看| 激情综合网址| 91dy.av| 亚洲AV另类| 思思热视频在线| 婷婷五月天六月| 婷婷综合色图| 亚洲欧洲中文日韩久久AV乱码| 色亚洲激情| 色色色综合网| 久热re视频在线观看网站| 人人妻人人澡| 99精彩视频在线观看| 亚洲午夜一区二区| 天天综合色| 婷婷五月激情天| 九九精品热| 日逼影音先锋男人资源站| 色婷婷9| 婷婷五月丁香五月天| 97日在线视频| 国产精自产拍久久久久久蜜 | 久久这里只有精品16| 六月婷婷综合久久| 香蕉人妻AV久久久久天天| 性爱久久| 就爱啪啪婷婷| www.91婷婷| 欧美S码亚洲码精品M码| 日日夜夜干| 色婷婷婷婷成人网| 国产精品国产| 成人精品视频99在线观看免费| 色五月激情五月开心五月| 激情com| 婷婷五月天AV在| 色色99| 激情五月婷黄版| 日日干日日s| 全高清无码视頻| 天天射天天插天天干| AV五月丁香| 六月丁香婷婷在线波多| 五月丁香福利| 就爱日五月天| 夜夜躁爽日日| 色婷婷亚洲六月婷婷中文字幕| 久久综合激情五月天| 成年视频免费观看| 欧美内射AAAAAAXXXXX| 99九无网码| 天天爽夜夜爽| 激情五月天色| 超碰精品国产首页| 欧美成人AAA片一区国产精品| 成人综合视频在线| 开心综合激情综合| 色九九综合| ou洲色吧| 伊人激情AV一区二区三区| 久久婷婷五月综合色丁香| 久久五月婷婷开心网| 丁香九月激情| 久久艹网| 狠狠CAO日日穞夜夜穞AV| 丁香五月色色| 丁香婷婷六月在线资源观看| 综合97五月| 国产精品丝| 播丁香五月婷婷欧美| 激情综合网五月激情| 六月婷婷在线| 久久精品小视频| 欧美久热| 婷婷终合色图| 九九爱激情| 大香网伊人久久综合| 97干婷婷| 亚洲国产色色| 婷婷五月丁香狠狠| 粉嫩av懂色av蜜臀av熟妇| 久久婷婷色综合老司机| 性按摩玩人妻HD中文字幕| 99视频自拍| www夜夜| 伊人网色婷婷五月天| 婷婷五月成年人| 狠狠久久婷五月| 天堂亚洲 在线| 两性婷婷丁香五月| 日韩成人精品中文字幕| 97色片| 精品无吗va视频免费观看| 国产熟女日日骚五月丁香爱| 婷婷激情丁香五月婷婷激情丁香五月婷婷| 五月久久网| 六月婷婷日| 久久久天堂国产精品女人| 免费黄色视频网址| 色色吧综合| 五月婷婷在线观看黄| 久久丁香久久| 99在线看片| 丁香五月天色综合| 久久久久久久97| 丁香五月婷婷Av| 婷婷六月久久| WWW.亚洲无码| 大地9中文在线观看免费高清| AV性爱在线| 激情久久肏屄视频| 丁香六月婷婷综合缴| 日日操日日爽| 综合五月天天天天天五月| 色五月xxx| 大香蕉久久| 国产免费AV在线| 99狠狠操一| 五月情涩综合婷婷| 色情网综合| 丁香五月天久久| 无码激情AAAAA片-区区| 99精品无码| 婷婷五月天AV| 爱久综合| 婷婷激情视频| 九九无码| 色久丁香五| 婷婷五月天久久久| 亚艹艹| 色五月婷婷天天操夜夜操| 极品 少妇 内射| 26uuu美女三级视频| 《诡秘之主》在线观看| 亚洲精品国产成人AV在线| 97超碰在线免费观看| 丁香五月综合无码趴趴| 996热re视频在线观看视频| 色亭亭丁香五月天| www久久久久久久久久久久久久久久久| 久久人人做人人妻人人玩精品va| 欧美S码亚洲码精品M码| 天天干天天干天天干| 日本久久网| 日本色色网| 久热超碰| 五月婷婷大香蕉| 操一区| 色墦五月丁香| 九九热精品| 丁香五月天视频| 91综合在线| 婷婷综合视频| 99在线免费观看| 黑人糟蹋人妻HD中文字幕| 亚洲综合激情五月久久| 99精彩视频| 婷婷在线视频| 色婷婷小说| 精品一二三区久久AAA片| 强辱丰满人妻HD中文字幕| 青青草国产亚洲精品久久| 99精品偷自拍| 91丁香综合| 狠狠干.com| 激情综合五月丁香六月婷婷| 拍色综合| 香蕉中文在线| www.无码com| 超碰资源在线| 亚洲婷婷丁香| 久九色| 青青草原中文字幕| 九九家庭影院| 色必久悠悠影院| 夜夜做天天爽| 婷婷激情五月综合丁| 婷婷五月天干干| 99精品小视频| 婷婷五月天社区| 欧美色九| 久久三级视频| 99精品热| 亚洲精品一区中文字幕乱码| www五月| 婷婷亚洲综合| 色情五月天丁香社区| 色9999日韩国产| 五月天激情视频| 天天操夜夜操| 伊人久久婷婷五月综合97色| 7777久久亚洲中文字幕| 日本黄色精品| 综合99综合久久久久久久| 久久99久久99精品免视看婷婷| 五月花婷婷在线精品视频| 伊人超碰| 这里只有精彩视| 日本va欧美va国产激情| 黄网免费观看| 九九热精品| 免费看欧美成人A片无码| 日本三级第一页| 丁香视频| 五月天久久婷婷| 亚洲小说五月婷婷| 婷婷播播五月天| 国产VA亚洲VA96| 五月丁香中文| 久久精品视频99| 婷婷五月天av| 中文字幕成人网站| 一区操| 影视av久久久噜噜噜噜噜三级| 久er免费视频| 亚洲久久婷婷丁香五月天| 五月婷婷在线综合| 婷婷丁香花五月天| 婷婷五月天影院| 97啪在线观看视频| 9超碰在线| 99热伊人| 丁香五月婷婷成人综合| 青青草原精品久久| 婷婷五月天AV在线| 激情六月婷婷| 97啪在线观看视频| 亚洲av无码精品色午夜| AV九九| 国产丁香五月天婷婷| 丁香婷婷视频| 91一起操| 国产精品第一国产精品| 91九色PORNY中文啦| 激情婷婷在线中文字幕| 日本本土色网第一区| 天堂AV在线看| 97热在线精品| 五月丁香亭亭| 九色视频91疯狂| 碰碰碰91| 中文字幕在线日亚州9| 亚洲综合五月天综合| 思思久久精品| 婷婷六月丁| 色色欧美。| 婷婷丁香五月激情密臀av| www.日本久久videos| 热99re| 操人久久| 亚洲乱码精品久久久久..| 月丁香久久久| 超碰99在线观看| 五月丁香六月婷婷在线播放| 激情开心五月天| 超碰在线99| 超级97碰碰| 熟女色专区| 婷婷丁香五月亚洲免费| 91超级碰碰碰| 九九爱激情| 五月丁香无码| 五月噜噜| 99九九综合久久九九| 精品夜夜澡人妻无码AV| 性爱激情小说AV五月丁香花| 五月婷婷色播视频| 五月婷婷六月丁香综合| 婷婷丁香18| 9久热视频| 丁香色五月直播| 99热这里只有免费精品| 色婷婷www| 99九九99九九九视频精品| 色婷视频| 99视频只有这里精品| 99热这里只有精品2| 有码一区二区三区| 超碰在线91| 色五月丁香伊人五月| 99婷婷| 97操碰日本女人| 五月份婷婷| 激情五月天综合| 五月婷婷基地| www.com色播五月天| 色五月开心五月激情五月| 天天爽天天爽| 色色欧美色色| 久久资源网五月婷|