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

ARTICLE DETAIL

資訊詳情

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

嵌入式開(kāi)發(fā)實(shí)操指南:從學(xué)習(xí)路線到C674X緩存優(yōu)化

嵌入式開(kāi)發(fā)實(shí)操指南:從學(xué)習(xí)路線到C674X緩存優(yōu)化 干嵌入式這行最不缺的就是勸退貼和學(xué)習(xí)資料但最缺的其實(shí)是那種一篇文章能把全局講清楚、把彎路標(biāo)出來(lái)的實(shí)操總結(jié)。我在這個(gè)領(lǐng)域摸爬滾打了十幾年從裸機(jī)寫LED驅(qū)動(dòng)到上手C6748 DSP中間踩過(guò)的坑比很多人寫過(guò)的代碼都多所以當(dāng)看到嵌入式開(kāi)發(fā)者的福音這個(gè)題目時(shí)我第一個(gè)念頭就是與其刷那些碎片化的教程不如靜下心來(lái)把整個(gè)嵌入式開(kāi)發(fā)的核心坐標(biāo)系捋一遍讓新手不至于在門口轉(zhuǎn)悠三年讓老手也能回頭check一下自己的知識(shí)盲區(qū)。這樣說(shuō)吧這篇文章覆蓋了從學(xué)習(xí)路線、五大通信協(xié)議、Linux與VSCode開(kāi)發(fā)環(huán)境、面試八股到硬件底層比如OMAP-L137的內(nèi)存映射和C674X緩存架構(gòu)的完整鏈路屬于那種你可以在實(shí)習(xí)入職前一晚、項(xiàng)目驗(yàn)收前一周、面試前三天分別拿出來(lái)翻一遍的實(shí)用手冊(cè)。我會(huì)按從業(yè)者的真實(shí)視角把每個(gè)環(huán)節(jié)的為什么、怎么做、坑在哪都寫透不搞虛頭巴腦的理論堆砌。1. 起步階段先理清嵌入式學(xué)習(xí)的底層邏輯1.1 嵌入式的三個(gè)分層你到底要卷哪一層很多人一上來(lái)就問(wèn)嵌入式怎么學(xué)但真正該問(wèn)的是你想做的是哪一種嵌入式。嵌入式開(kāi)發(fā)不是單點(diǎn)技能而是三個(gè)差異巨大的職業(yè)方向我見(jiàn)過(guò)太多人學(xué)了一年發(fā)現(xiàn)方向不對(duì)然后轉(zhuǎn)頭重來(lái)的案例。第一層是嵌入式硬件工程師核心技能是原理圖設(shè)計(jì)、PCB布局、器件選型、信號(hào)完整性分析。這個(gè)方向偏電子工程要啃透模擬電路、數(shù)字電路、高頻信號(hào)等硬核課程工作場(chǎng)景基本是實(shí)驗(yàn)室和板卡堆。第二層是底層軟件工程師也叫BSP/驅(qū)動(dòng)工程師核心技能是芯片手冊(cè)閱讀、寄存器操作、中斷處理、DMA傳輸、設(shè)備驅(qū)動(dòng)框架這一層離硬件很近代碼里全是memory-mapped register工資上限高但門檻也高。第三層是應(yīng)用層開(kāi)發(fā)工程師主要用C/C甚至Qt寫業(yè)務(wù)邏輯跑在Linux或RTOS上關(guān)注的是線程模型、網(wǎng)絡(luò)協(xié)議棧、GUI框架相對(duì)離硬件遠(yuǎn)一些。我的建議很直接如果你已經(jīng)畢業(yè)了優(yōu)先選擇應(yīng)用層或底層軟件切入因?yàn)橛布徫粚?duì)學(xué)歷和經(jīng)驗(yàn)的隱形要求較高而軟件方向只要你代碼功底扎實(shí)都有機(jī)會(huì)逐步向上游延伸。如果你還在校那就三層的知識(shí)都摸一遍大二大三的課程設(shè)計(jì)就是最好的試錯(cuò)場(chǎng)。1.2 學(xué)習(xí)路線的正確打開(kāi)方式項(xiàng)目倒逼 八股兜底嵌入式學(xué)習(xí)路線這個(gè)詞在網(wǎng)上已經(jīng)被寫爛了但多數(shù)人的通病只有兩個(gè)一是太貪多嚼不爛二是只看書不動(dòng)手。我自己推薦的是項(xiàng)目倒逼學(xué)習(xí)法不管你基礎(chǔ)多差先找一個(gè)小項(xiàng)目比如溫濕度采集器、藍(lán)牙歌詞顯示屏、迷你電容觸控板鼠標(biāo)然后讓每一個(gè)知識(shí)點(diǎn)都從項(xiàng)目需求里長(zhǎng)出來(lái)。這里有一個(gè)具體的學(xué)習(xí)順序每一步都有明確的理由。第一步是C語(yǔ)言加固重點(diǎn)學(xué)指針、結(jié)構(gòu)體、內(nèi)存管理、鏈表和狀態(tài)機(jī)思想因?yàn)榍度胧酱a的絕大多數(shù)復(fù)雜度都在這幾個(gè)點(diǎn)上。第二步是單片機(jī)和ARM裸機(jī)用STM32或者GD32打底搞懂GPIO、定時(shí)器、UART、外部中斷這個(gè)階段的關(guān)鍵是讀芯片手冊(cè)而不是看別人的代碼片段。第三步是RTOS比如FreeRTOS或嵌入式Linux理解任務(wù)調(diào)度、信號(hào)量、消息隊(duì)列、中斷下半部機(jī)制我見(jiàn)過(guò)太多人跳過(guò)實(shí)時(shí)性概念直接去調(diào)設(shè)備樹(shù)最后被優(yōu)先級(jí)翻轉(zhuǎn)問(wèn)題折磨到懷疑人生。與此同時(shí)嵌入式八股文也得同步背起來(lái)這兩者不沖突。八股文本質(zhì)上是別人幫你劃好的考點(diǎn)清單從static關(guān)鍵字的三種用法到volatile的作用從內(nèi)存對(duì)齊到大小端模式這些內(nèi)容面試必考、平時(shí)寫代碼也繞不開(kāi)。我的經(jīng)驗(yàn)是每天晚上花半小時(shí)刷十道八股題用先自己答、再看答案、最后總結(jié)成筆記的三遍法堅(jiān)持三個(gè)月效果非常顯著。2. 通信協(xié)議篇啃下這5種協(xié)議嵌入式開(kāi)發(fā)就通了一半2.1 一張表看懂UART、I2C、SPI、CAN、USB嵌入式系統(tǒng)本質(zhì)上就是一堆芯片和傳感器互相對(duì)話而對(duì)話的語(yǔ)言就是通信協(xié)議。開(kāi)源社區(qū)和招聘JD里反復(fù)出現(xiàn)嵌入式 5種通信協(xié)議這個(gè)熱詞不是沒(méi)有道理因?yàn)檫@五種協(xié)議覆蓋了嵌入式系統(tǒng)90%以上的數(shù)據(jù)交互場(chǎng)景屬于那種你可以不精通但不能不會(huì)用的基礎(chǔ)設(shè)施。我整理了一個(gè)對(duì)比表方便大家按場(chǎng)景選擇協(xié)議信號(hào)線數(shù)速率量級(jí)通信方式典型場(chǎng)景UART2TX/RX最高幾Mbps異步、全雙工調(diào)試串口、GPS模塊、藍(lán)牙模塊I2C2SCL/SDA最高幾Mbps同步、半雙工、多設(shè)備尋址傳感器采集、EEPROM、OLED屏SPI4MOSI/MISO/SCK/CS可達(dá)幾十Mbps同步、全雙工、主從Flash存儲(chǔ)、LCD屏、ADCCAN2CAN_H/CAN_L最高1Mbps經(jīng)典/8MbpsFD異步、多主、差分汽車電子、工業(yè)控制、機(jī)器人USB4D/D-/VBUS/GND最高幾十Gbps異步、主從外設(shè)擴(kuò)展、U盤、攝像頭、調(diào)試選型邏輯其實(shí)很樸素。如果你只是和傳感器、低速外設(shè)通信I2C是首選因?yàn)閮筛€就能掛一堆設(shè)備地址分配也簡(jiǎn)單。如果數(shù)據(jù)量大、速度要求高比如驅(qū)動(dòng)LCD刷新屏幕SPI這種四線高速方案更合適。UART最老但最通用幾乎所有模塊都預(yù)留了串口接口調(diào)試時(shí)它是生命線。CAN總線在汽車和工業(yè)現(xiàn)場(chǎng)的地位無(wú)法撼動(dòng)因?yàn)樗牟罘中盘?hào)和仲裁機(jī)制天生就抗干擾。USB則適合做高速數(shù)據(jù)通道但協(xié)議棧復(fù)雜度陡增不適合新手在前三個(gè)月硬啃。2.2 I2C實(shí)戰(zhàn)中的兩個(gè)典型翻車現(xiàn)場(chǎng)光看表格還不夠協(xié)議在真實(shí)板子上跑起來(lái)才是考驗(yàn)。拿I2C舉例最常見(jiàn)的坑有兩個(gè)。第一個(gè)是I2C總線死鎖——當(dāng)主設(shè)備在通信中途復(fù)位從設(shè)備可能還在等時(shí)鐘和停止位此時(shí)SDA被從設(shè)備拉低不放MCU重啟也沒(méi)用。解決思路是給I2C引腳接上拉電阻到VCC的同時(shí)在軟件里做一條假時(shí)鐘脈沖恢復(fù)邏輯先把SCL翻轉(zhuǎn)九次每次拉低后釋放讓從設(shè)備復(fù)位內(nèi)部狀態(tài)機(jī)然后發(fā)送一個(gè)真正的STOP信號(hào)。這個(gè)經(jīng)驗(yàn)我是在一次溫濕度傳感器讀取失敗后花了一整天才調(diào)出來(lái)的調(diào)試工具只有一個(gè)邏輯分析儀過(guò)程極其痛苦。第二個(gè)坑是波特率計(jì)算。很多人直接用默認(rèn)的100K標(biāo)準(zhǔn)模式但如果板子的I2C上拉電阻選得太大或總線電容過(guò)高波形就會(huì)嚴(yán)重過(guò)沖或變緩導(dǎo)致數(shù)據(jù)采樣錯(cuò)誤。我的習(xí)慣是查一下示波器實(shí)測(cè)波形確保上升沿時(shí)間不超過(guò)時(shí)鐘周期的一半否則就把上拉電阻換小一點(diǎn)或者降低I2C時(shí)鐘到50K。這個(gè)細(xì)節(jié)芯片手冊(cè)里不會(huì)寫全靠踩坑總結(jié)。2.3 UART的調(diào)試藝術(shù)從亂碼到穩(wěn)定傳輸U(kuò)ART是嵌入式開(kāi)發(fā)的氣道氣道堵住了整個(gè)人就廢了。串口亂碼是每個(gè)嵌入式工程師都逃不過(guò)的入門禮排查路徑其實(shí)非常固定先查波特率是否一致我見(jiàn)過(guò)有人在代碼里寫115200上位機(jī)用9600然后懷疑是芯片壞了再查電平是否匹配TTL電平直接懟RS232電平必然會(huì)亂碼最后查地線是否共地差分系統(tǒng)可以浮地但UART這類單端信號(hào)必須共地。這里面有一個(gè)實(shí)用技巧不要在中斷里做復(fù)雜處理最好把UART收到的數(shù)據(jù)先放進(jìn)環(huán)形緩沖區(qū)然后在主循環(huán)或者專用的處理任務(wù)里解析。我踩過(guò)最痛的一次坑是給一個(gè)藍(lán)牙傳歌詞項(xiàng)目做協(xié)議解析因?yàn)橹苯釉诮邮罩袛嗬镒隽薽emcpy和字符串匹配導(dǎo)致丟包極其嚴(yán)重當(dāng)時(shí)還以為是藍(lán)牙模塊不行后來(lái)加上環(huán)形隊(duì)列才徹底治好。另外調(diào)試時(shí)記得在串口助手勾選發(fā)送新行很多模塊協(xié)議要求以\r\n結(jié)尾差一個(gè)字節(jié)都不認(rèn)。3. 開(kāi)發(fā)環(huán)境與工具鏈Linux VSCode 的組合拳3.1 嵌入式Linux開(kāi)發(fā)到底要不要用Ubuntu嵌入式linux開(kāi)發(fā)需要在ubuntu下開(kāi)發(fā)嗎這個(gè)問(wèn)題被反復(fù)搜索答案其實(shí)很明確如果你要做的Linux用戶態(tài)程序、內(nèi)核模塊或者驅(qū)動(dòng)開(kāi)發(fā)強(qiáng)烈建議在Ubuntu或者Debian系的Linux環(huán)境下做因?yàn)榻徊婢幾g工具鏈、內(nèi)核源碼樹(shù)、各種依賴庫(kù)在Linux下最順滑。Windows下雖然也能裝WSL2或者虛擬機(jī)但遇到內(nèi)核模塊編譯、設(shè)備樹(shù)編譯這類依賴Linux特定路徑的任務(wù)時(shí)虛擬機(jī)的直接映射會(huì)有很多邊界問(wèn)題。我目前的主力開(kāi)發(fā)環(huán)境是Win11 WSL2Ubuntu 22.04日常文檔和即時(shí)通訊留在Windows代碼和編譯全部在WSL里做。這里有一個(gè)關(guān)鍵配置交叉編譯工具鏈要裝在WSL里然后通過(guò)VSCode的Remote-SSH插件遠(yuǎn)程連接WSL環(huán)境編輯體驗(yàn)和本地一樣流暢。資源訪問(wèn)這塊項(xiàng)目文件夾放在WSL的Linux文件系統(tǒng)里不要放在/mnt/c下面否則IO性能會(huì)垮掉編譯大工程時(shí)你會(huì)哭的。3.2 VSCode 搭配嵌入式開(kāi)發(fā)的三個(gè)高效姿勢(shì)VSCode本身只是一個(gè)編輯器真正讓它變成嵌入式利器的是那一堆擴(kuò)展和配置。我的核心用法是這三條路。第一條是C/C擴(kuò)展 c_cpp_properties.json精準(zhǔn)配置。給includePath加上交叉編譯鏈的sysroot頭文件目錄再把defines加上芯片型號(hào)宏定義這樣代碼跳轉(zhuǎn)、函數(shù)簽名提示、靜態(tài)錯(cuò)誤檢查全部在線不用靠肉眼和運(yùn)氣找代碼。第二條是用tasks.json或Makefile插件統(tǒng)一編譯流程我習(xí)慣給每個(gè)工程寫一個(gè)build.sh腳本里面固化交叉編譯命令和參數(shù)tasks.json只需要調(diào)這一個(gè)腳本避免在IDE里堆一堆難維護(hù)的編譯命令。第三條是用Cortex-Debug插件配合OpenOCD/JLink實(shí)現(xiàn)燒錄和調(diào)試直接在VSCode里打斷點(diǎn)、看寄存器、看內(nèi)存沒(méi)必要再開(kāi)一個(gè)大而全的IDE。說(shuō)一個(gè)真實(shí)感受自從把開(kāi)發(fā)環(huán)境切到VSCode WSL之后整個(gè)編譯、燒錄、調(diào)試的循環(huán)從切換窗口等進(jìn)度條變成了一個(gè)F5搞定效率提升是肉眼可見(jiàn)的。如果你還在折騰IDE的界面和快捷鍵配置不如把時(shí)間省下來(lái)多讀兩篇芯片勘誤表。3.3 關(guān)于嵌入式開(kāi)源項(xiàng)目的正確利用方式嵌入式開(kāi)源項(xiàng)目這個(gè)熱詞背后其實(shí)是一把雙刃劍。好的一面是你可以在GitHub上找到大量可復(fù)用的驅(qū)動(dòng)庫(kù)、協(xié)議棧和項(xiàng)目框架比如開(kāi)源的LVGL圖形庫(kù)、FreeRTOS中間件、各種傳感器驅(qū)動(dòng)集合站在巨人肩膀上起項(xiàng)目非常舒服。壞的一面是如果你只會(huì)clone不會(huì)讀面試官三句話就能把你打回原形。我的建議是拿到一個(gè)開(kāi)源項(xiàng)目之后按三讀三改的方式練手。第一遍讀README和頂層架構(gòu)文檔搞清楚它解決什么問(wèn)題、模塊怎么劃分第二遍讀核心數(shù)據(jù)結(jié)構(gòu)和主循環(huán)/主狀態(tài)機(jī)弄懂?dāng)?shù)據(jù)是怎么流動(dòng)的第三遍讀編譯腳本和配置文件搞明白依賴關(guān)系。三讀之后再動(dòng)手改代碼首先改一個(gè)參數(shù)比如換個(gè)引腳或波特率然后加一個(gè)功能比如增加一種傳感器數(shù)據(jù)上報(bào)最后做一次重構(gòu)比如把輪詢改為中斷驅(qū)動(dòng)。這三步都走完這個(gè)項(xiàng)目才算真正長(zhǎng)在你腦子里了。4. 從八股文到實(shí)戰(zhàn)面試與項(xiàng)目經(jīng)驗(yàn)盤點(diǎn)4.1 嵌入式面試的考點(diǎn)地圖嵌入式面試八股文作為搜索熱詞一點(diǎn)都不奇怪因?yàn)檫@個(gè)行業(yè)的面試確實(shí)有比較固定的考點(diǎn)范圍摸清地圖能少走很多彎路。根據(jù)我自己當(dāng)面試官和被面試的經(jīng)驗(yàn)可以把考點(diǎn)劃成四大塊。第一塊是C語(yǔ)言基礎(chǔ)重點(diǎn)考察指針與數(shù)組的關(guān)系、const與volatile的區(qū)別、關(guān)鍵字static在不同場(chǎng)景的語(yǔ)義、內(nèi)存四區(qū)、結(jié)構(gòu)體對(duì)齊、大小端、遞歸與棧溢出。這些題看似簡(jiǎn)單但每一個(gè)都能引申出深層次問(wèn)題比如說(shuō)過(guò)static面試官馬上追問(wèn)static修飾的變量存在什么段、線程安全嗎、函數(shù)里static變量多線程訪問(wèn)會(huì)怎樣。第二塊是操作系統(tǒng)與RTOS原理重點(diǎn)是任務(wù)狀態(tài)切換、信號(hào)量與互斥鎖的區(qū)別、優(yōu)先級(jí)翻轉(zhuǎn)、死鎖的四個(gè)必要條件、中斷上下文與進(jìn)程上下文。第三塊是Linux應(yīng)用與驅(qū)動(dòng)開(kāi)發(fā)比如文件IO與標(biāo)準(zhǔn)IO的區(qū)別、select/poll/epoll、設(shè)備樹(shù)的作用、字符設(shè)備驅(qū)動(dòng)框架、并發(fā)與競(jìng)態(tài)處理。第四塊是硬件基礎(chǔ)與通信協(xié)議比如GPIO開(kāi)漏與推挽、I2C時(shí)序、SPI極性與相位、CAN幀結(jié)構(gòu)。如果你要沖刺Uber or 網(wǎng)易這種級(jí)別的大廠還會(huì)被問(wèn)到一點(diǎn)底層內(nèi)存映射和緩存一致性的題目比如操作DMA緩沖區(qū)時(shí)為什么要做cache invalidate這種級(jí)別的追問(wèn)這個(gè)我會(huì)在下一節(jié)用一個(gè)真實(shí)芯片案例展開(kāi)講。4.2 項(xiàng)目經(jīng)驗(yàn)怎么包裝才不像背臺(tái)詞面試到項(xiàng)目環(huán)節(jié)很多人容易犯兩個(gè)錯(cuò)一是項(xiàng)目太小太淺只有兩個(gè)LED和一個(gè)蜂鳴器二是項(xiàng)目寫得太大太全但一問(wèn)三不知。我的經(jīng)驗(yàn)是一個(gè)能打的嵌入式項(xiàng)目至少要具備輸入-處理-輸出-異常處理的閉環(huán)以及至少一個(gè)你真正吃透的技術(shù)亮點(diǎn)。比如我給一個(gè)時(shí)間觸發(fā)嵌入式系統(tǒng)設(shè)計(jì)項(xiàng)目做過(guò)復(fù)盤那是基于狀態(tài)機(jī)的多任務(wù)調(diào)度框架核心亮點(diǎn)不是我寫了多少行代碼而是我講清楚了為什么用時(shí)間觸發(fā)架構(gòu)而不用搶占式RTOS因?yàn)橄到y(tǒng)對(duì)任務(wù)抖動(dòng)敏感、任務(wù)周期固定、資源足夠簡(jiǎn)單。再比如做了一個(gè)嵌入式環(huán)境監(jiān)控項(xiàng)目把溫度、濕度、PM2.5數(shù)據(jù)通過(guò)MQTT上報(bào)到服務(wù)器你的描述重點(diǎn)就不只是調(diào)用了一下DHT11庫(kù)而應(yīng)該是數(shù)據(jù)采集的濾波算法滑動(dòng)平均、限幅濾波、低功耗喚醒策略定時(shí)采樣加深度睡眠、斷線續(xù)傳機(jī)制。這樣講面試官才能感受到你有系統(tǒng)設(shè)計(jì)能力而不只是一個(gè)接線員。還有一個(gè)小技巧在項(xiàng)目描述里埋一個(gè)已知缺陷與改進(jìn)方向。比如我這版串口協(xié)議解析在主循環(huán)里做當(dāng)數(shù)據(jù)量大時(shí)CPU占用偏高后續(xù)改成DMA環(huán)形隊(duì)列可以減負(fù)。這一句話比你夸自己十句都管用因?yàn)樗w現(xiàn)了你在實(shí)踐中真實(shí)思考過(guò)而不是只會(huì)背臺(tái)詞。5. 硬件底層視角照著OMAP-L137看性能優(yōu)化的底層邏輯5.1 OMAP-L137的內(nèi)存映射一次看懂熱搜詞里有一條很硬核的深入解析omap-l137 dsp內(nèi)存映射與c674x緩存架構(gòu):嵌入式系統(tǒng)性能優(yōu)化實(shí)戰(zhàn)這明顯是奔著底層性能調(diào)優(yōu)去的題目。OMAP-L137是一款A(yù)RM9 C674x DSP雙核芯片做音頻處理、工業(yè)控制的老司機(jī)應(yīng)該都接觸過(guò)。它的內(nèi)存映射是一個(gè)典型的異構(gòu)多核系統(tǒng)設(shè)計(jì)——DSP核和ARM核看到的內(nèi)存空間不是完全一致的。我先從DSP側(cè)的內(nèi)存映射說(shuō)起。C674x DSP的地址空間通常劃分為幾個(gè)大區(qū)域內(nèi)部L1P程序緩存/L1D數(shù)據(jù)緩存各32KB、內(nèi)部L2緩存/內(nèi)存256KB、外設(shè)配置寄存器空間、以及經(jīng)過(guò)EMIF外部?jī)?nèi)存接口映射到片外SDRAM或Flash的空間。關(guān)鍵點(diǎn)在于L2這塊既可以整體當(dāng)作緩存用也可以劃分一部分作為普通RAM使用這個(gè)劃分是通過(guò)L2輔助模式寄存器來(lái)配置的。實(shí)際做項(xiàng)目時(shí)的常見(jiàn)做法是中斷服務(wù)代碼和數(shù)據(jù)放內(nèi)部RAM音頻幀緩沖放L2或SDRAM查表數(shù)據(jù)放Flash但mmap到地址空間各歸其位。對(duì)應(yīng)的ARM側(cè)核心是透過(guò)內(nèi)存管理單元MMU來(lái)訪問(wèn)物理地址的做平臺(tái)開(kāi)發(fā)時(shí)必須保證ARM頁(yè)表里配置的物理地址和DSP側(cè)的內(nèi)存映射空間是一致的否則兩個(gè)核就是雞同鴨講。這個(gè)坑我在一個(gè)機(jī)器視覺(jué)項(xiàng)目中踩過(guò)ARM往DSP發(fā)圖像數(shù)據(jù)地址DSP直接訪問(wèn)結(jié)果因?yàn)镸MU沒(méi)有做雙核共享內(nèi)存標(biāo)記DSP讀到的數(shù)據(jù)時(shí)好時(shí)壞最后發(fā)現(xiàn)是ARM側(cè)cache沒(méi)有做clean操作臟數(shù)據(jù)沒(méi)有刷到物理內(nèi)存中才導(dǎo)致的。5.2 C674X Cache架構(gòu)命中率就是性能生命線在C674x DSP上談性能優(yōu)化繞不開(kāi)Cache。這個(gè)系列的緩存是分層的L1P只緩存指令L1D只緩存數(shù)據(jù)L2是統(tǒng)一的緩存/內(nèi)存混合體。CPU訪問(wèn)數(shù)據(jù)時(shí)優(yōu)先查L(zhǎng)1D未命中則查L(zhǎng)2都未命中則走EMIF到外部存儲(chǔ)器。一次L1命中只要不到2個(gè)時(shí)鐘周期而一次外部SDRAM訪問(wèn)可能要幾十上百個(gè)周期性能差距就是數(shù)量級(jí)的。所以優(yōu)化思路很簡(jiǎn)單把熱點(diǎn)數(shù)據(jù)和代碼送進(jìn)Cache把非熱點(diǎn)大塊數(shù)據(jù)留在外部RAM并盡量避免Cache抖動(dòng)。在實(shí)際優(yōu)化中有三個(gè)高頻操作值得你馬上用起來(lái)。第一個(gè)是緩存鎖定Cache Locking把最關(guān)鍵的循環(huán)體鎖定在L2里防止被其他數(shù)據(jù)擠出去適合處理硬實(shí)時(shí)中斷任務(wù)。第二個(gè)是數(shù)據(jù)對(duì)齊與乒乓緩沖把音頻幀或圖像行緩存按cache line大小C674x是64字節(jié)對(duì)齊配合EDMA做ping-pong搬運(yùn)這樣CPU和DMA同時(shí)訪問(wèn)不沖突還能避免頻繁的cache invalidation。第三個(gè)是顯式操作CACHE指令在DMA寫數(shù)據(jù)進(jìn)內(nèi)存之后、CPU讀之前執(zhí)行CACHE_invL2在CPU寫完數(shù)據(jù)、DMA搬走之前執(zhí)行CACHE_wbL2確保緩存與物理內(nèi)存數(shù)據(jù)一致。這倆指令的位置放錯(cuò)一個(gè)就是典型的偶現(xiàn)數(shù)據(jù)錯(cuò)誤很難排查。順便提一句DSP/ARM異構(gòu)系統(tǒng)里的緩存一致性問(wèn)題cache coherence比單純DSP側(cè)更復(fù)雜。兩個(gè)核共享一段DDR內(nèi)存ARM側(cè)的Cache和DSP側(cè)的Cache各有一份副本任何一方修改數(shù)據(jù)后不經(jīng)刷寫另一方讀到的就是舊數(shù)據(jù)。解決這類問(wèn)題的標(biāo)準(zhǔn)做法是共享內(nèi)存區(qū)域在頁(yè)表或MPU配置里標(biāo)記為非緩存的device memory或strongly ordered或者老老實(shí)實(shí)在每次讀寫前后做緩存維護(hù)。很多所謂玄學(xué)Bug最后發(fā)現(xiàn)都是緩存一致性導(dǎo)致的排查方向?qū)α藛?wèn)題就解決一半。6. 入坑避雷指南與實(shí)用排查技巧6.1 嵌入式Linux日常運(yùn)維的救急手冊(cè)做嵌入式Linux最尷尬的時(shí)刻不是內(nèi)核編譯失敗而是開(kāi)發(fā)板上忘了root密碼、系統(tǒng)啟動(dòng)到一半卡死、或者發(fā)現(xiàn)文件系統(tǒng)只讀不能改。這里我根據(jù)自己的實(shí)踐經(jīng)驗(yàn)整理了一份排查速查表每一行都是一個(gè)真實(shí)的救火現(xiàn)場(chǎng)?,F(xiàn)象快速定位思路常用對(duì)策忘記root密碼判斷用的是busybox還是systemd是否支持單用戶模式init/bin/sh加在U-Boot啟動(dòng)參數(shù)進(jìn)入后mount -o remount,rw /改密碼啟動(dòng)卡死在Starting kernel大概率是內(nèi)核解壓縮或設(shè)備樹(shù)問(wèn)題檢查U-Boot引導(dǎo)參數(shù)、kernel鏡像格式、DTB地址對(duì)齊文件系統(tǒng)只讀一般是異常斷電導(dǎo)致ext4日志恢復(fù)或掛載參數(shù)錯(cuò)誤先umount再e2fsck修復(fù)或者改為rw掛載內(nèi)核模塊加載報(bào)錯(cuò)version magic mismatch內(nèi)核版本與模塊編譯環(huán)境不一致重新用目標(biāo)內(nèi)核源碼樹(shù)編譯模塊或在KERNELRELEASE環(huán)境變量上對(duì)齊網(wǎng)絡(luò)不通但網(wǎng)口燈亮區(qū)分是IP配置錯(cuò)、MAC地址沖突、還是PHY芯片未初始化先用ifconfig看鏈路狀態(tài)再用mii-tool/ethtool查PHY協(xié)商6.2 新手最常踩的五個(gè)硬件與代碼坑第一個(gè)坑是引腳復(fù)用配置遺漏。很多芯片的同一個(gè)引腳默認(rèn)是GPIO功能想做UART或者I2C必須切換到復(fù)用模式漏了這步焊接再漂亮也沒(méi)用。這個(gè)在藍(lán)橋杯嵌入式比賽里幾乎是必考題大賽用STM32G431考的就是你能不能快速配置AF引腳和各外設(shè)時(shí)鐘。去年直播講題時(shí)我特意強(qiáng)調(diào)過(guò)拿到板子第一件事就是對(duì)照數(shù)據(jù)手冊(cè)的PinMux表核對(duì)一遍比上來(lái)就跑例程重要得多。第二個(gè)坑是中斷優(yōu)先級(jí)配置不當(dāng)導(dǎo)致死鎖。如果兩個(gè)中斷互相調(diào)用對(duì)方事件優(yōu)先級(jí)又設(shè)置成相同且不允許搶占就會(huì)出現(xiàn)低優(yōu)先級(jí)中斷服務(wù)程序里等待高優(yōu)先級(jí)中斷的荒唐場(chǎng)景。嵌入式開(kāi)發(fā)里中斷服務(wù)函數(shù)里只做標(biāo)記和輕量數(shù)據(jù)搬運(yùn)重活交給任務(wù)或者主循環(huán)這是鐵律。第三個(gè)坑是內(nèi)存越界與棧溢出。大部分嵌入式事故都是改了一個(gè)數(shù)組下標(biāo)然后系統(tǒng)隨機(jī)崩潰。排查手段首選GDB和硬件Fault異常處理建議在啟動(dòng)代碼里把未定義指令異常、數(shù)據(jù)訪問(wèn)異常、棧溢出檢測(cè)全部做成LED或串口指示這樣一旦出錯(cuò)能立刻鎖定位。第四個(gè)坑是電源問(wèn)題。很多人寫代碼到深夜板子時(shí)好時(shí)壞最后發(fā)現(xiàn)是USB供電不足。供電不穩(wěn)、地線虛焊、濾波電容缺失這三座大山能讓任何邏輯正確的代碼跑得像個(gè)神經(jīng)病。建議手里常備一個(gè)帶電流顯示的USB測(cè)試器比什么高級(jí)仿真器都實(shí)用。第五個(gè)坑是下載器接線太長(zhǎng)導(dǎo)致信號(hào)完整性問(wèn)題。Debug下載線超過(guò)15厘米、還和電機(jī)線扎在一起就等著報(bào)各種詭異的燒錄失敗吧。JTAG/SWD線盡量短且用屏蔽線必要時(shí)降低時(shí)鐘頻率這點(diǎn)很少有人提醒。6.3 微控制器選型與學(xué)習(xí)路線糾偏選型常被新手忽視但它是決定項(xiàng)目成敗的早期關(guān)鍵決策。個(gè)人經(jīng)驗(yàn)是評(píng)估一款MCU時(shí)從這幾個(gè)維度打分內(nèi)核架構(gòu)Cortex-M0/M3/M4/M7的性能和生態(tài)差異很大、Flash和RAM容量尤其注意RAM很多人ADC采樣數(shù)組一開(kāi)就爆內(nèi)存、外設(shè)豐富度定時(shí)器個(gè)數(shù)、DMA通道、通信接口數(shù)、封裝和供貨穩(wěn)定度多腳噩夢(mèng)以及開(kāi)發(fā)工具鏈成熟度有沒(méi)有靠譜的HAL庫(kù)、調(diào)試器兼容性。比如做迷你電容觸控板鼠標(biāo)這類產(chǎn)品對(duì)ADC采樣速率和低功耗要求高可能就要選帶專用觸摸控制器和LP模式的MCU而不是隨便拿個(gè)百腳MCU硬軋。學(xué)習(xí)路線的糾偏也值得說(shuō)一句。很多人一開(kāi)始就抱著深入解析Linux內(nèi)核源碼啃三個(gè)月后還在第一個(gè)子系統(tǒng)的泥潭里打轉(zhuǎn)。嵌入式內(nèi)核源碼是生產(chǎn)資料不是入門教材。建議先用模塊級(jí)閱讀動(dòng)手編譯小改動(dòng)的方式切入比如給內(nèi)核增加一個(gè)虛擬驅(qū)動(dòng)或者修改設(shè)備樹(shù)配置比純看源碼高效十倍。等你真的在業(yè)務(wù)里遇到需要改內(nèi)核調(diào)度策略或內(nèi)存管理的問(wèn)題時(shí)再回頭精讀源碼那個(gè)時(shí)候你的動(dòng)機(jī)和起點(diǎn)完全不同讀起來(lái)也更有目的性。7. 嵌入式開(kāi)發(fā)者的福音藏在日復(fù)一日的復(fù)盤里說(shuō)回最開(kāi)始那個(gè)題目嵌入式開(kāi)發(fā)者的福音其實(shí)不是某一個(gè)神秘工具或一份萬(wàn)能教程而是一套不斷自我糾偏的成長(zhǎng)方法論。我這些年的體會(huì)是真正讓人跨越會(huì)寫代碼到會(huì)做產(chǎn)品之間鴻溝的往往不是天賦而是你有沒(méi)有建立需求分析-方案選型-編碼調(diào)試-復(fù)盤沉淀的完整習(xí)慣。在這里分享最后一個(gè)我仍在堅(jiān)持的實(shí)操小習(xí)慣每次項(xiàng)目結(jié)束不管結(jié)果好壞我都會(huì)寫一份三頁(yè)紙的復(fù)盤文檔第一頁(yè)記錄技術(shù)方案和架構(gòu)圖第二頁(yè)記錄踩過(guò)的坑和排查過(guò)程第三頁(yè)記錄代碼里值得復(fù)用的模塊清單。日積月累這份文檔庫(kù)就成了我私人的嵌入式百科全書。等下次再有人問(wèn)我嵌入式怎么學(xué)面試怎么準(zhǔn)備我只需要把對(duì)應(yīng)項(xiàng)目的復(fù)盤丟過(guò)去對(duì)方能快速看到全景也能看到真實(shí)問(wèn)題的復(fù)雜性和解決思路的演變過(guò)程。你也可以現(xiàn)在就試試從當(dāng)前手頭的項(xiàng)目開(kāi)始寫第一份復(fù)盤半年后回看你會(huì)感謝這個(gè)決定的。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
五月丁香六月婷婷综合在线| 五月婷婷六月情| 人妻自慰高清合集| 婷婷丁香五月社区亚洲| 一起草AV入口| 五月丁香六月婷婷网站| 狠狠综合区| 五月天婷婷激情综合| 校花娇喘呻吟校长陈若雪视频| 久久色情| 丁香五月婷婷色综合| 99er6| 天天色视频| 日韩在线一级| 亚洲五月天色| 色五月天 丁香| 九九在线视频| 婷婷在线操| 99久久国产综合精品五月天喷水\| 久久婷婷五月天激情| 日本欧美成人片AAAA| AV五月丁香| 久久久99视频| 国产伦亲子伦亲子视频观看| 在线观看亚洲视频影院| 停停五月天激情网| 热99re| 久久天堂女人| 婷婷五月色| 99久久国产成人精品| 99久久九九视频| 香蕉久久国产AV一区二区| 五月色婷婷在线观看| 久久精品国产一区二区三区四区| 婷婷五月天AV| 免费观看的AV| 欧美天天爽| 国产干逼片| 99爱视频在线| 九月综合| 久久婷婷五月天蜜桃| 精品久久99| 强辱丰满人妻HD中文字幕| 夜夜爱伊人| 五月天天视频| www.色擼擼.com| 欧洲激情五月天婷婷| 99熟女| 偷拍91九色| 少妇大叫太大太粗太爽了A片| 九九99免费视频| 99综合视频在线| 日韩色五月| 中文字幕丰满孑伦无码专区| 午夜五月天| 九九色热视频| 99综合网| 色五月婷婷五月天| 五月色丁香| 婷婷五月天成人网站| 99热这里只有精品50| 最近中文字幕2019视频1| 99热精品在线观看| 日本人妻A片成人免费看片| 色99热| 99久久综合| 婷婷激情综合色五月久久91| 久婷婷久草| 亚洲色频| 99热r| 久久99综合网| 97资源碰碰在线| A级毛片高清免费不卡播放谢谢谢谢| 青青草国产亚洲精品久久| 五月婷婷六月天| 色五月天丁香婷婷| 成人综合网站| 精品视频二级九九| 日韩成人电泉AV| 色久综合| 人人操婷婷| 国产av网| 麻豆精品| 色婷婷综合中心| 天天爽—爽| ji'qing'luan'ren'lun| 99热99精品在线观看| 久热精品视频在线观| 色久在| 天天做天天要天天爱| 欧洲亚洲免费视频9| 亚洲国产va| 女人被男人吃奶到高潮| 成人亚洲精品久久久久| 大香蕉啪啪啪| 婷婷五月天天天| 婷婷丁香97| 九九99九九99九九99视频网| 亚洲激情av| 97碰碰九九视频| 大香蕉九九热| 99re思思热久久| 激情综合丁| 六月婷婷八月丁香| 1024操逼| 99re久热只有精品6在线直播.com| 色色色欧美| 欧美Va在线| 色久九| 成人电影一区| 五月天艹天天| 99久在线观看| 色婷婷玖玖影院| 婷婷五月综合网激情| jiqingtaose五月天| 五月婷婷激情色情网| 久色五月婷婷综合| 99热这里是精品| 9色在线视频精品观看| 一级性感毛片| 五月天婷婷黄色视频| 五月婷婷丁香瑟瑟视频| 午夜丁香婷婷| www、丁香五月天| 六月丁香婷婷天堂| 色五月激情五月| AV在线收看| 偷偷操99| 九九精品在线网| 99热1| AV在线免费观看不卡| 激情综合网五月激情| 噜噜狠狠| 亚洲啪啪啪啪| 99噜噜噜在线播放| 嫩草AV久久伊人妇女超级A| 六月丁香激情网| 天天日,天天射,天天舔| 日本综合久久| 五月天激情小说| 午夜69成人做爰视频| 超碰97干| 婷婷五月天偷拍| 色偷偷色婷婷| 天天肏夜夜肏| 色色无码| 色六月婷婷| 丁香六月激情综合| 亚洲色激情| 亚洲AV色婷婷人禽五月天| 亚洲V国产V欧美V久久久久久| 丁香五月影院| 天天草天天爱| 桃色成人网| 人妻系列久久久久久久久久久 | 国産精品| 狠狠色丁香久久久婷| 久久婷婷内射| 六月丁香婷婷色狠狠久久| 婷婷色五月天在线观看| 色97啪啪| 午夜成人天堂久久无码日韩久久| 五月丁香六月香香蕉| 九热视频这里只有精品| 97在线日本| 第五色色色婷婷| 丁香九色不卡aaa| 九九无码| 日日夜夜青青草| 久久国产一区二区三区| 亚洲色五月婷婷| 婷婷五月天综合AV| 精品人妻伦一二三区久| 色综合久久久久| 欧美色色色| 色五月婷婷综合在线| 午夜成人综合| 日韩啪啪视频| 7EzOBIhNq85TO| 亭亭五月天黑人2014| 超碰在线人妻| 国产无套精品一区二区| www.久久| 激情婷婷22月间| 久久大香蕉同僚| 91色色色视频| www.五月丁香| 成人片在线播放| 色色五月天婷婷| 精品99久久久久成人网站免费| 农村熟妇高潮精品A片| 六月色国内综合| 99色在线视频观看| 亚洲人妻av| 人人做天天爱| 9久视频| 婷婷色婷婷| 人妻尝试久久久久久久久久久久| 久久9视频欧美| www,com,五月色色| 婷婷一本和五月丁香| 99re免费视频| 在线看的免费网站| 日本色色色| renre人人操国产超碰在线| 综合激情网激情五月。| 激情99热| 国产婷婷色综合AV蜜臀AV| 婷婷五月情天| 亚洲VA在线| 亚洲AV第二区国产精品| 五月丁香综合激情网| 丁香五月婷婷88在线| 免费AV在线| 国外亚洲成AV人片在线观看| 色综合久| 9l视频自拍九色9l视频自拍九色9l社区| 蜜桃婷婷五月| 亚洲婷婷丁香五月| 人操综合| 91无码色色| 色一情一乱一乱一区91| 99色| 99热这里是精品| 久草久青福利| 色婷婷中文字母五月丁香| CAoub青青超碰| 乱精品一区字幕二区| 亚洲成人av在线| 婷婷丁香激情五月天色色| 婷婷亚洲综合| 婷婷中文字幕| 久久婷婷五月天懂色| 伊人大香久久| 色婷婷色| 97日本在线| 曰韩五月丁香色婷婷无码| 激情六月综合| 99色色网| 久久婷婷六月综合综合| 99精品偷自拍| 国产黄大片在线观看画质优化| 久久综合性| 草五月| 欧美激情-区二区三区| 26uuu色噜噜精品一区| 欧美天堂婷婷日韩| 激情5月婷婷| 五月天成人在线视频网站| 久久这里有精品视频在线免费观看| 五月天 综合 在线| 97干婷婷五月天| 99久久66| 五月天婷婷色播综合在线| 丁香五月播播| 丁香六月激情综合| 97干干干丁香| 欧美三级大片AA在线看| 国内久久久精品99| 五月婷婷婷色| 青996青| 超碰在线观看caop| 欧美视频五区| 日本色噜| 丁香五月23111| 夜夜天天久久婷婷| 99热最新| 91一起艹| 亚洲日本韩国| 综合九九日本| 99综合网| 囯产精品一品二区三区| 天天摸天天舔| 午夜成人AV在线| 99综合| www.久久| 丁香五月天日韩无码| 天天日天天操心| 欧美顶级少妇做爰HD| AA片在线观看视频在线播放| 九 九九九AV| 色综合丁香婷婷| 久久亚洲婷婷| 激情网五月婷婷| 亚洲色激情| 色五月涩涩婷婷| 激情综合无码| 怎么样可以看免费的一级av| 大香AV| 色婷婷在线播放| 五月婷视频| 五月丁香激情啪啪| 9精品国产在热久久| 久久机热探花| 五月天色婷伊人| 丁香五月激情视频| 国产激情久久| 亚洲成人无码网站| 五月丁香狠狠爱婷婷综合| 99r这里| 五月天激情啪啪| 色色网站| 天天干天天曰天天射| 无码一区二区日韩| 色五月色综合| 亚洲人妻av| 九九综合九| 97亚洲婷婷| 欧美激情xxxXX| 色狠狠伊人久久五月丁香| 色婷婷婷婷| 91成人性爱视频| 婷婷激情五月呦呦| 欧美色狠婷久| 97碰碰在线看视频免费| 色婷婷yy久| 久久婷婷五月| 国产成人综合在线| 婷婷丁香五月天色色| 丁香五月婷婷超碰在线| 亚洲第一综合| 精品九九婷婷| www国产亚洲色婷婷com| 这里只有精品视频| 婷婷94s| 久久99免费视屏| 亚洲色婷婷视频| 欧美噜噜免费观看| 丁香激情久久| 五月久久网| 9久热这里只有精品| 26uuu精品一区二区| 五月色情婷婷| 常久最新免费的色吊丝| 高清资源站日A美A欧亚…| 久久精品五月天| 美女妹子后射视频网站在线观看| 亚洲精品无人区| 99色综合| 99热在线观看| 激情五月天婷婷激情| 国产毛片精品一区二区色欲黄A片| 9热网站| 色五月综合网| 色婷婷五月天偷拍| 欧美噜噜久久久XXX| 婷婷在线综合| 久9视频| 丁香美女五月天婷婷| 91re色综合视频| 袁子仪视频观看| 久久五月天婷婷| 婷婷97碰碰| 高清无码入口| 久久久性爱网| 婷婷久久久| 99伊人性爱在线影院| 色婷婷电影网| 久久婷婷五月综合伊人| 色婷婷丁香五月天| 天天噜天天插| 男男野外做爰全过程69| 深爱五月天 开心网| 亚洲熟妇无码乱子AV电影| 丁香伊人五月色婷婷五十路| 99精品视频网| 欧美成人va| 婷婷五月色影视先锋| 欧美五月婷婷| 欧美人人操| 99操久久| 思思热99er在线视频| 激情网五月| 九久9精品| 久久99热这里只频精品6学生| 九九碰九九爱97| 五月激情婷婷在线| 婷婷五月天,影院| 色综合久| 色情五月天A片| 超级碰碰一区| 久久五月丁香婷婷| 97干婷婷五月天| AV亚洲在线| 深爱激清网| 丁香婷婷五月人体| 色播丁香| 无码人妻一区| 五月丁香综合| 伊人99久久| 久久人妻久久| 五月天激情综合网俺也去| 色五月婷婷五月天| 午夜激情五月天| 婷婷五月天综合久久| 五月天大香蕉| 夜夜操天天爽| 亚洲sesesese| 色五月美女| 婷婷刺激综合| 色狠狠六月| 黄色毛片精品| 久久久婷婷| 天堂久久久久天堂网| 夜夜骑天天操| 成人免费在线电影| 亚洲最大成人综合网720P| 五月天婷婷丁香六月| 久久在线大香蕉| 五月天综合婷婷| 天天开心AV色综合婷婷五月天| 青青草Avb在线| 91超级碰碰| 色性五月天| 九九色婷婷| 久久丁香综合香蕉| 五月天婷婷视频小说| WWW.天天日| 五月天婷婷色综合| 99爱精品| 丁香六月婷婷久久综合| 色色色色色色网| 青草性爱视频| 在线视频另类| 亚洲乱码日产精品BD| 五月丁香婷婷综合久久| 激情综合丁香五月| 丁香五月在线视频黑人| 激情小说五月天社区丁香| 人人操超碰| 99久久综合网| 国产精品久久久久久白浆色欲| 色五月综合激情| 亚洲精品va| 综合久久久婷| 嫩草视频。| 99热伊人| www.zbzhongsen.com| 狠狠色噜噜色狠狠狠综合久久成人波 | 精品国产va久久久| 五月丁香六月婷婷在线小说视频| 色五月色五天色情网| 精品自拍99| 五月天激情小说| 婷婷丁香五月亚洲| 婷婷天堂综合| 大香线蕉伊人| 午夜爱爱网站| 丝袜激情网| 26UUU欧美| 亚洲AV成人无码久久精品老人法拉利| 精品无码人妻一区| 日操五月婷| 婷婷六月丁香在线| 色五月成人婷婷| 久热大香蕉| 久久婷丁香五月| 99久久.www| 丁香五月 无码| 亚洲韩国日产综合AV| 91色呦哟| 97超级碰| 久久国产AV| 色吊丝av中文字幕| www.色九月| 成人丁香五月婷| 色婷婷91| www超碰| 婷婷五月大| 久久五月丁香婷婷| 蜜乳9188| 99热精品9| 五月丁香色婷婷综合| 激情五月视频| 人人操AV| 这里只有精品免费视频| 五月婷婷影院| 五月色亭丁香| 狠狠99| 久久久91| 影音先锋激情网| 色婷婷五月天激情综合| 拳交大逼| 色五月天堂| 久久久久久人妻| 婷婷五月花| 丁香六月在线综合| 久久久精品色| 国产午夜精品一区二区三区嫩草| 五月丁香婷婷欧美色图视频五月丁香777电影 | 黄网在线免费观看| 深爱五月月天| 激情九九这里只有精品| 人人操人人爰人人一天天碰夜夜拍夜夜爽-中国A级毛片天天看天天谢… | 亚洲综合九九| 五月激情综合婷婷| 五月丁香久人妻中文| 第四色激情网| 五月婷婷伊人久久| 色婷婷五月综合在线| 亚洲综合另类| 东京热人妻一区二区三区在线| 97色图片中文字幕视频在线观看| 热九九在线| 这里只有精品69| 播五月开心婷婷欧美综合| 丁香色五月 97干| 久久精品A片777777| 人人干人人操外国| 亚洲精品操一操、噜一噜、摸一摸、爽 | 亚洲国产精品VA在线看黑人| 久久大香免费| 亚州视频九九99| 五月天久久91| 偷偷与邻居做爰完整视频| 丁香色成人| 91色操| 五月丁香综合久久| 99人妻碰碰碰久久久久视| 99精品综合视频| 亚洲无码影片| 99无码免费视频| 久久狠狠干| 六月丁香久久| 九月激情综合| 欧美成人精品老美女噜噜噜| 色情五月综合婷婷| 五月激情射| 夜夜操少妇| 激情久久久久久| 操97在线观看| 丁香五月第九色| 婷婷五月色综合| 日本色色影片| 天天激情综合| a网站免费观看| 大胆伊人久久| 夜夜爽天天日| 久久在线视频免费观看| site:901-07.com| 五月婷婷激情中文字幕| 五月婷婷激情在线| 99精品在线下载| 婷婷五月天激情小说| 91色欲综合| 伊人综合网4| 第四色五月天| 五月天久久婷婷| 色日本五月天| 久9草在线观看视频| 婷婷丁香五月天在线视频| 久久婷婷伊人| 亚洲av网站| 色婷婷丁香五月| www.久久久久久久久久.com| 性色99| 任你躁XXXXX麻豆精品| 天天舔天天插天天爱| 婷婷五月花| 激情久久久久久久久久久| 五月婷婷之综合激情| 91热久88| 九九热思思| av网站免费在线| 99热这里有精品24| 色婷婷8| 久久午夜理论| 人人操9| 天天成人丁香美女AV| 强辱丰满人妻HD中文字幕| 欧美五月丁香在线| 性做爰1一7伦| 亚洲va欧美va国产综合久久久| 少妇高潮呻吟A片免费看软件| 99久久黄色顶级视频| 九月丁香| 狠狠操.COM| 婷婷五月丁香色色| www.五月天婷婷| 亚洲精品网址| 久/久精品99看9| 开心久久五月天| 91狠狠综合久久久久久| 白天AV月月| 4438亚洲欧美| 色无码| 九热免费视频| 丁香五月性爱| 天天综合天综合| 久久婷婷大香蕉| 九色啦蜜臀| 啪啪综合| 色色色综合| 丁香五月婷婷激情中文| 日韩AV在线免费观看| 99久久99九九九99九他书对| 热这里只有精| 超级碰碰碰久久网站| 激情五月婷| 91九色国产| 公的粗大挺进了我的密道| 久久AV电影| 色九月国产| 99爱视频免费| 五月成人综合| 色婷婷基地| av在线播放网站| 九色无码| 综合在线丁香五月| 欧美日韩国产伦精品日韩人妻一| 97色婷婷| 97热这里只有精品| 丁香激惜男女| 亚洲XX网| 色狠狠色噜噜AV天堂五区| 五月激情六月宗合| 《诡秘之主》在线观看| 日韩欧美性爱| 91操人| 久热免费| 六月婷婷狠狠做| 五月婷婷丁香啪啪| WWW,五月| 这里只有精品视频在线观看免费| 五月天堂六月丁香亚州中文字幕久久| 热久久91| 很很干夜夜干| 天天干天天日日| 在线中文亚洲| 亚洲久久天堂| 久热只有精品| 狠狠狠狠狠狠色| 这里只有免费的精品| 97婷婷狠狠| 丁香五月婷婷老师网站| 91碰碰碰| 91操碰| 婷婷亚洲五月| 操丝袜视频影院导航| 欧美激情综合| 激情视频91| 天天肏在线视频| AV大香蕉| 久久婷婷视频| 九九久久99精品免费观看www| AAA亚洲AV| 久婷婷五月激情| 亚洲婷婷91丁香| 激情五月四色| 99亚洲综合| www.久久久.com| 99热www| 日韩啪啪视品| 熟女强人妻一区二区三区四区无| 久久婷五月天| 婷婷五月天影院| 色色激情网| 婷婷 丁香 精品| 五月天激情www| 激情色视频| 五月天狠狠干| 嫩BBB槡BBBB搡BBBB视频| 婷婷五月免费观看| 开心深爱五月天| 97人人射| 99色综合网| 永久的网站AAAA| 狠狠色婷婷7777久| 天天久久66xxx| 色五月网址| 久久草大香蕉| 综合丁香婷婷五月天| 久er免费视频| xxxx五月| 手机看片日日做夜夜| 99在线观看免费精品视频| 99热这里只有精品手机在线观看| 涩涩五月天综合| 色婷婷综合久色AV五色最新| 99视频久久免费视频| 无码G高清天| 五月激情偷拍婷婷| 天天草天天日| 五月花激情| 色色无码| 思思热视频在线观看| av大香蕉| 97涩婷婷| 99riAv1国产在线观看| 99这里有精品视频| 久久五月天合网| 婷婷五月天伦理| 天天爽天天日天天舔| 激情图片五月天| 婷婷五月丁香啪啪| 久热91| 99riav 亚洲| 婷婷综合干| 国产熟女大叫受不了| 91狠狠色丁香婷婷综合久久精品| 久久杏爱视频| 丁香五月区| 91操片| 可以免费观看的av| 五月天激情亚洲| 婷婷丁香97| 五月婷婷丁香深深爱| 天天射天天射一道本日本社区 | 粉嫩av懂色av蜜臀av熟妇| 久久婷婷色| 99网址在线观看| 久久98热re| 六月色日韩| 狼人伊人干| 五月综合激情| 5月婷婷性视频| 囯产精品久久欠久久久久久九大| 五月婷婷在线视频| 综合九色| 韩国情人在线电视剧免费观看高清版全集| 日日肏夜夜干| 五月婷丁香| Av中文在线| 91色久| 色色 亚洲| 婷婷综合视频| 日本专区久久| 亚洲爱爱无码婷婷色五月| 色五月婷婷在线| 专区无日本视频高清8| 色婷婷综合在线| 日本在线免费中文com.| 色丁香五月婷婷| 中文字幕日产A片在线看| 婷婷五月天情色| www.五月婷婷久久.com| 9l视频自拍九色9l视频自拍九色9l社区| 麻豆AV一区二区三区| 99久精品视频| 天天日夜夜帕| 69精品人人人人人人人人人| 玖玖无码中文| 久久成人人妻| 国产古装妇女野外A片| 黄网网站在线播放| 天天日天天干天天爽| 图片区 小说区 区 亚洲五月| 2015超碰| 色色 亚洲| 一级AV片| 亚洲色婷婷99一9|| 五月天婷婷基地| 午夜婷婷| 丁香五月天啪啪| 五月婷婷导航| 91jiuseshunv| 久久九九蜜| 国产欧美熟妇另类久久久| 久操大香蕉| 97热在线精品| 色色丁香五月| 五月成人网站| 丁香五月婷婷激情蜜桃| 五月天艹天天| 欧美综合激情| www.人人操人人看人人想人人摸 人人人人操,COM | 99精品视频在线观看| 99ri国产| 操一区| 丁香五月激情啪| 久草大| 操逼巨乳91| 六月丁香啪| 婷婷色激情五月天| 亚洲AV成人精品网站在线播放| WWW五月天| 能看的av| 深爱开心激情网| www.99热| 婷婷五月天99| 五月婷婷色色爱| 六月丁香五月婷婷| 亚洲色婷婷网站| 国产又爽又猛又粗的视频A片| 思思久久精品视频| 欧美大片| 99在线国| 五月丁香综合网| 深爱婷婷丁香五月激情| 久久久久久久久久久久久久久久久精典| 五月婷在线视频免费播放| 五月天婷婷色综合| 欧美婷婷综合| 99久久久久久| 色爱亚洲| 色九月激情综合网| 1024AV视频| 丁香六月无码播放| 色欲影香| 欧美性爱五月天| 激情婷婷丁香五月| 97超级碰碰碰久久久| 日本狠狠色| 婷婷永久在线| 婷婷五月天综合网| 色婷婷狠狠色| 懂色av蜜臀av粉嫩av永陈冠希 | 在线91日韩| 色爱99| 99综合色色色| 九月丁香久久网| 天天干天天插| 天天综合亚洲综合网天天αⅴ| 中字幕视频在线永久在线观看免费| 天天射夜夜骑| 狼友超碰| 99精品成人无码A片观看金桔 | 狠狠久久婷五月| 婷婷六月丁香久| 日本三级第一页| 4438激情网| 少妇激情五月婷婷| 涩五月丝袜婷婷| 超碰精品在线| 国产精品久久久60086| 久久天堂精品| 色婷五月天| 丁香婷婷五月| 欧洲婷婷五月天| 丁香六月天婷婷| WWW.婷婷| 日韩AV大全| 淫荡家庭AV| 婷婷丁香五月基地| www久久99| 激情五月天社区| 五月婷婷综合色啪| 激情九月天天天天婷婷| 少妇出轨做爰高潮A片| 五月丁香婷婷婷激情爱爱| 这里只有精品,日韩视频| 日本三日本三级少妇三级66| 日韩九区| 97碰碰视频| wwwxxx五月婷婷小说| 色播婷婷五月天| 色婷婷狠狠18yy| 色综合五月天| 天天日天天舔| 婷婷五月色丁香在线看| 色婷婷XXXXX| 六月丁香激情| 综合五月亭亭9| 日韩性视频| 成人无码中文| 性做爰A片免费视频A片直播| 91美女被操| 99色色色色| 日本在线免费中文com.| 日本九九九九| 五月丁香综合中文| 五月综合激情网| 婷婷五月天社区| 五月丁香色情| 丁香五月人妻| 99这里只有| 五月天激情小说婷婷基地| 色婷婷五月天中文字幕| 久久电影4399| 久久人操-久草婷婷-成人AV| 97操操网| 男妓跪趴把舌头伸进我的嘴巴| 玖玖爱资源站| 婷婷成人视频| 久久人妻乱| 五月天激情亚洲| 激情五月天色爱| 狠狠狠人妻| 免費亭亭成人| 中文人妻主播久久| 婷婷色五月激情| www.激情五月天。com| 日韩成人电影在线播放| www.sebowuyue| 六月婷婷九月丁香| 99在线视频免费| 9 9 9色色| 涩 五月 婷婷 狠狠| av一区二区电影免费在线观看| 成熟妇人A片免费看网站 | 91精品久久久久| 婷婷激情九月| 久久五月综合| 婷婷五月天激情文学小说| 五月天激情综合网俺也去| 综合婷婷| 99热这里只有精品10| 色播丁香五月婷婷操:屄| 一区二区中文字幕| 婷婷丁香一月| 婷婷五月天首页| 色色色国产| 丁香五月天激情视频| 五月天激情久久| 91免费看片| 亚洲午夜av| 人妻22p| 丰满少妇猛烈A片免费看观看| 亚洲精品又粗又大又爽A片| 夜精品无码A片一区二区蜜桃| 国产特级毛片AAAAAAA高清| 精品人妻午夜一区二区三区四区 | 亚洲99手机免费看视频 | 九九re精品视频在线观看| 综合激情在线| 五月激情天| 色婷婷成人做爰A片免费看网站| 中文字幕日产A片在线看| 日韩国产AV播放| 五月婷激情影院| 欧日美女Va| 伊人色欲五月天| 五月丁香六月婷婷姐| 久久久大香蕉| 中文字幕无码人妻少妇免费视频 | 色九月| 婷婷福利影院| 91人人超碰在线| 五月天激日本色情在线| 日日操夜夜擼| AV色色天堂中文| 色婷婷五月综合在线| 亚洲国产精品成人免费一区久久久在线观看AAAA | 天天上天天爽| 99色免费观看全部| 激情综合五月| 色九四色| 久久伊人婷婷| 婷婷激情五月综合在线视频| 亚洲五月天激情| 狠狠的日| 九 九九九AV| 玖玖视频福利| 亚洲五月天婷婷在线| 五月丁香婷婷色色| www,setingting| 婷婷五月天丁香花| 亚洲情a| 99热99在线| 五月色情精品| 五月丁香六月色婷| 天天操屄网| www.夜夜| www.9797国产| 五月天婷婷青青| 婷婷五月综合色拍| 无码一区精品一区视频| 丁香五月手机在线| 人人做天天爱| 五月丁香啪啪网| WWW.久久99| 五月丁香 久久久| 亚洲成人av在线| 丁香五月停停av| 五月婷婷丁香深深爱| 99色 | 色婷丨日丨天丨综合久久| 思思99久久| 狠狠爱五月婷婷综合六月| 久久久妻人人人| 少妇性按摩无码中文A片| 江苏少妇性BBB搡BBB爽爽爽 | 97碰 在线视频观看| 久鲁鲁色网| www99在线观看视频| 狠狠色中色| 色另类五月天| 五月色婷婷中文字幕| 在线成人国产| 天天干天天 亚洲| 婷婷五月天综合网| 97久人人| 99热这里只有精品55| 开心婷婷五月综合| 天天操天天谢| 嫩BBB搡BBBB榛BBBB| 狠狠色丁香久久久婷| 五月综合激情| www.99免费视频| 五月丁香激情婷婷综合| 成人精品视频99在线观看免费| 亚洲欧美综合7777色婷婷| 五月婷婷九九热| 啪啪色激情五月天| 另类图片婷婷五月天| 婷婷五月丁香成人| 无码少妇高潮喷水A片免费| 91chinese在线| 97在线视频人妻九色| 啪啪黄页网| 六月婷婷网| 五月丁香淫淫婷婷婷| 久久99大| 久久欧洲综合网| 五月婷婷久久大片| 艾小青av| 超碰97在线观看免费| 婷婷五月天男人影院色色网| 操B视频在线播放| 六月天无码网址| 大色鬼综合| 国产一区男女| 亚洲中字AV电影在线网站| www天天干| 久久精品凹凸分类| 五月丁香六月婷综合成人综合| 日韩一本操| 这里只有精彩亚洲视频推荐| 婷婷久综合| 欧洲第一久色| 免费成人中文字幕| 色五月婷婷五月天| 色色激情网| 99热综合网| WWW丁香五月| 亚洲国产精品成人午夜| 狠狠五月激情婷婷直播片| 青青久久91| 99狠狠操一| 97在线综合| 9久热| 五月天婷婷伊人| 国产性爱大片久久| 久久激情五月婷婷| 五月天丁香网站| 超碰免费人人| 99色热视频| 日韩精品无码AV| 91热在线| 五月丁香婷婷在线综合蜜桃| 国产精产国品一二三在观看| 五月婷在线播放| 成人婷婷| 202丰满熟女妇大| 狠色色狠网| 9久国产精品| 九月丁香| 久久五月综合| 996er热| 风流少妇A片一区二区蜜桃| 婷婷丁香五月亚洲综合网在线视频观看| 九月婷婷在线观看| 六月丁香啪啪啪| 激情五月综亚网| 丁香五月天婷婷91| 九九热视频在线观看| 久久66精品| 五月丁香激| 色婷婷丁香五月| 综合久久99| 婷婷国产综合| 五月婷婷黄色毛片| 久久久婷婷婷| 国产精品大香蕉| 激情欧美丁香五月| 色五月天.con| 5Www色5夜| 激情婷婷五月| 五月丁香六月婷婷无码| 久久狠狠欧美| 亚洲国产成人AV在线 | 久久精品国产一区二区三区四区 | 丁香五月欧美激情| 久久婷婷五月综合色欧美| 五月天激情小说| 初夜av| 91热久久| 91人无码久久久久久| 99精品无码| 丁香六月激情综合| 甈吧vv| 在线日韩视频| 久久五月天免费网站| 激情四射五月天| 五月天成人免费视频| 色色丁香五月婷婷| 五月天婷婷香蕉狠狠超碰综合| 色五月亚洲| 久/久精品99看9| 五月婷婷在线免费观看| 99精品视频免费观看,| 亚洲综合网 665566| 天天肏在线视频| 精品一二三区久久AAA片| 日本在线视频播放91| 亚洲丁香五月在线观看| 五月丁香六月色婷婷综合五月天| 婷婷五月天丁香激情| 久久激情中文| 久9视频| 91婷婷在线| 66色在线日韩| 日韩99精品| 久热亚洲| wwww.色婷婷| 九九热青草| 婷婷五月天福利| 在线婷婷| 五月天激情网站| 思思精品热在线| 另类小说婷婷色| 日韩a热| 无码地址| 天天日天天添| 丁香五月综合婷婷| 91综合色| 国产超碰人人| cao久久| 久青草大香蕉| 91欧美日韩| 无码AV大香线蕉伊人| 色色网站毛片| 丰满老熟妇BBBBB搡BBB| 伊人99热| 亚洲无码色| 久久丁香五月天| 99在线免费观看| 人人爱人人草| 五月丁香六月婷婷网| www.yw尤物| 五月天色色色| 国产激情综合五月久久| 国产成人+综合亚洲+天堂| 久久久久久综合88| 久9久9久9久9久9久9| 欧美精品999| 国产激情久久久| 婷婷五月情| 五月激情综合网| 无码日本精品XXXXXXXXX| 欧美大肥婆大肥BBBBB| AA片在线观看视频在线播放| 日日爽夜夜爽| 香蕉人妻AV久久久久天天| 青草视频在线播放| 青青草婷婷五月天| 婷婷综合玖玖五月| 98热精品| 99热销国产这里有精品| 婷婷五月天AV在线| 欧美内射AA| 天天综合色丁香| 五月丁香av在线| 五月激情婷婷女| 五月婷婷丁香俺日污视频| 五月天偷拍| 99自拍视频在线| 森林影视大全,最好看的2019年视频 | 91肏| 色噜噜狠狠色综合无码久久欧美| 性爱网久久| 婷婷五月天综合蜜桃| 色色 9| 97碰人人操| 色色色色热| 99久久国产宗和精品1上映| 1024人妻无码中文字幕| 久热久操久热久草国产91| 午夜天堂啪啪| 思思热性操| 日韩三级高清无码| 婷婷精品视频| 9久热精品在线视频| 丁香六月啪| 丁香激情五月| 久久激情网| 婷婷六月天| 九97免费视频| 色婷婷香蕉| 天天 青草 丝袜制服 在线| 五月婷婷啪| 性一交一乱一交A片久久四色| 无码少妇高潮喷水A片免费| 91九色白丝| 九九碰九九爱97超| 天天模,夜夜模夜夜爽| 五月天婷婷久久| 人人摸人人干| 久久色午夜在线导航| 噜噜噜噜婷婷五月天| 日日夜夜天天爽| 久热大香蕉| 日本三级第一页| 激情久久久| 国产婷婷色综合AV蜜臀AV| 99热精品在线观看| 婷婷五月丁香国产| www激情| 久噜久噜| 无码任你操| 午夜福利成人AV91| 激情丁香久久| 激情噜噜噜| 亚洲网综合在线| 99ri在线| 九九精品网| 丁香五月婷婷色| www.无码com| WwW天天干| 久9热| 综合激情四射一theav| 色之综合网| WWW,五月| 99热伊人综合| 精品一区二区三区四区五区六区介绍 | 日韩抽插操逼| 九色无码| #NAME?| 婷婷九月激情| 欧美性爱五月天| 日韩黄色AV无码| 天堂婷婷丁香六月网| 99热网站| 五月久久网| 午夜做爱影院| 《亚洲操B久久免费在线观看,亚洲操B久久在线播放》在线播放 - 高清资源 - 97 | 毛片毛片毛片毛片| 97人人干| 99久热| 另类图片激情五月| 激情久久综合网| 五月丁香六月婷综合成人综合| a网站免费观看| 99精品在线播放| 婷婷五月色色| 激情婷婷视频在线| 五月婷A V在线| 超碰三级秋霞| 久久久婷婷婷| 91人妻人人操人人爽| 丁香六月欧美| 在线综合啪| 懂色AⅤ| 色五月,com| 五月的丁香六月的婷婷| 五月丁香综合| 久久五月六月| 激情五月天色色网| 久久九九怡红院| 99爱视频在线观看这里只有精品| 色五月婷婷91| 五月天丁香| 伦99热| 殴美日韩成人| 婷婷五月网图片区| 丁香五月婷婷偷拍| 亚洲综合另类| 啪啪婷婷五月天激情| 小骚穴电影| 午夜九九九九九九九九九九九九九| 国产亚洲色婷婷久久99精品91 www.riverspirits.org www.hnnun.com www.changh | 97操碰人人| 狠狠干综合| 丁香五月影视| 色五月欧美| 亚洲激情高潮|