免费国产精品自在自线-91精品国产色综合久久久浪潮-99热久久免费频精品-国产精品国模在线观看-久久亚洲国产精品成人?V秋霞-久久国产一级A片免费播放-亚洲国产欧洲综合97久久-久久国产白嫩美女呻吟高潮

ARTICLE DETAIL

資訊詳情

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

FPGA音頻回環(huán):WM8731與DE2板I2C/I2S全鏈路打通

FPGA音頻回環(huán):WM8731與DE2板I2C/I2S全鏈路打通 簡(jiǎn)介一個(gè)基于Altera DE2開發(fā)板EP2C35F672C6 FPGA與WM8731音頻編解碼器的完整音頻處理工程覆蓋從模擬音頻輸入、ADC數(shù)字化采樣、FPGA內(nèi)部處理、DAC重建到最終模擬輸出的全鏈路適合正在學(xué)習(xí)FPGA數(shù)字邏輯設(shè)計(jì)、音頻編解碼協(xié)議或嵌入式音頻應(yīng)用的開發(fā)者。音頻信號(hào)先由WM8731內(nèi)置ADC完成采樣量化通過(guò)I2S串行總線和分頻后的SCLK/LRCK時(shí)鐘送入FPGAFPGA內(nèi)部可執(zhí)行濾波、增益或混音等處理隨后將結(jié)果送回同芯片的DAC輸出。開發(fā)者參照DE2官方范例重寫了代碼精簡(jiǎn)了時(shí)序控制與數(shù)據(jù)搬運(yùn)邏輯使整體結(jié)構(gòu)更清晰便于理解Master/Slave同步機(jī)制與采樣字長(zhǎng)匹配等關(guān)鍵點(diǎn)。壓縮包共133個(gè)文件體積約911KB以Verilog源碼為主要學(xué)習(xí)對(duì)象同時(shí)包含Quartus工程配置、編譯報(bào)告、綜合數(shù)據(jù)庫(kù)與FPGA下載文件能夠從RTL級(jí)到布局布線逐層查看工程生成過(guò)程方便復(fù)盤與二次開發(fā)。已有826人學(xué)習(xí)下載。其中不僅有可直接運(yùn)行的音頻通路代碼還展示了如何用I2S接口讓FPGA與WM8731可靠協(xié)同工作對(duì)掌握ADC/DAC數(shù)據(jù)交互、時(shí)鐘樹設(shè)計(jì)和基礎(chǔ)音頻處理算法都有實(shí)際幫助適合課設(shè)或畢設(shè)階段參考。1. 從「音頻回環(huán)」入門 FPGA 數(shù)字信號(hào)鏈路WM8731 與 DE2 板的一次完整打通手頭有一塊 DE2-EP2C35F672C6 開發(fā)板想驗(yàn)證 FPGA 在真實(shí)信號(hào)鏈路里到底能干什么最簡(jiǎn)單的切入點(diǎn)不是寫流水燈而是把板載的 WM8731 音頻編解碼芯片用起來(lái)LINE IN 進(jìn)模擬信號(hào)芯片內(nèi)部 ADC 轉(zhuǎn)成數(shù)字流FPGA 拿到數(shù)據(jù)后原樣丟給 DAC再?gòu)亩鷻C(jī)口聽到自己的聲音。這個(gè)項(xiàng)目看起來(lái)只是「輸入到輸出」的直通實(shí)際拆開會(huì)發(fā)現(xiàn)里面藏著一整套數(shù)字音頻系統(tǒng)的骨架——I2C 寄存器配置、I2S 時(shí)序?qū)R、主從時(shí)鐘同步、左右聲道采樣拼接任何一個(gè)環(huán)節(jié)沒做對(duì)出來(lái)的就是噪聲或者干脆靜音。適合手里有同款或類似開發(fā)板、想從點(diǎn)燈進(jìn)階到真實(shí)信號(hào)處理的開發(fā)者也適合正在啃音頻協(xié)議、想找個(gè)能跑通的參考實(shí)現(xiàn)的人。項(xiàng)目最終交付的不是一句「Hello World」而是一條能通、能改、能繼續(xù)往上加效果的完整音頻通路。2. 硬件鏈路與工程結(jié)構(gòu)從 WM8731 芯片手冊(cè)到 FPGA 引腳約束2.1 信號(hào)鏈路全景模擬入、數(shù)字處理、模擬出整條鏈路的核心是板載的 WM8731 編解碼芯片這是一顆低功耗立體聲音頻 codec內(nèi)部集成了 ADC、DAC、耳機(jī)驅(qū)動(dòng)和完整的時(shí)鐘管理單元。信號(hào)走向很直觀外部音頻從 LINE IN 接口進(jìn)入經(jīng)過(guò) WM8731 內(nèi)部 ADC 按設(shè)定的采樣率轉(zhuǎn)成數(shù)字信號(hào)通過(guò) I2S 總線送給 FPGAFPGA 在內(nèi)部做處理——本項(xiàng)目里是直通或軟件可控的回環(huán)處理完的數(shù)據(jù)再經(jīng) I2S 總線送回 WM8731 的 DAC轉(zhuǎn)為模擬信號(hào)從耳機(jī)接口輸出。FPGA 夾在中間既是數(shù)據(jù)搬運(yùn)工也是未來(lái)接入 DSP 算法的主戰(zhàn)場(chǎng)。WM8731 與 FPGA 之間的接口分兩路一路是 I2C負(fù)責(zé)配置芯片內(nèi)部寄存器包括采樣率、輸入輸出增益、電源管理等另一路是 I2S承載實(shí)時(shí)音頻數(shù)據(jù)流。I2C 配置通路決定了芯片的工作模式I2S 數(shù)據(jù)通路決定了音頻數(shù)據(jù)能否無(wú)損傳輸兩條路缺一不可。所以項(xiàng)目里最核心的工作就是兩件事寫一個(gè)能用的 I2C 控制器完成初始化再寫一個(gè)時(shí)序正確的 I2S 收發(fā)器把數(shù)據(jù)跑起來(lái)。2.2 引腳分配與工程目錄EP2C35F672C6 的板級(jí)約束EP2C35F672C6 是 Cyclone II 系列 FPGA672 個(gè)引腳的 FBGA 封裝DE2 板把 WM8731 接到了 FPGA 的特定引腳上。在寫邏輯之前必須先確認(rèn)引腳約束。常見的分配方式如下set_location_assignment PIN_AC21 -to AUD_ADC_DAT set_location_assignment PIN_AF24 -to AUD_BCLK set_location_assignment PIN_AB23 -to AUD_DAC_DAT set_location_assignment PIN_AC22 -to AUD_DACLRCK set_location_assignment PIN_AB22 -to AUD_ADCLRCK set_location_assignment PIN_AE23 -to AUD_MCLK set_location_assignment PIN_AE25 -to AUD_I2C_SCLK set_location_assignment PIN_AD25 -to AUD_I2C_SDAT這段約束里AUD_ADC_DAT是 WM8731 的 ADC 串行數(shù)據(jù)輸出數(shù)據(jù)從芯片流向 FPGAAUD_DAC_DAT是 DAC 數(shù)據(jù)輸入數(shù)據(jù)從 FPGA 流向芯片AUD_BCLK是位時(shí)鐘AUD_DACLRCK和AUD_ADCLRCK分別是 DAC 和 ADC 的左右聲道幀同步信號(hào)AUD_MCLK是主時(shí)鐘。這些引腳名在 DE2 板附帶的使用手冊(cè)里有明確標(biāo)注約束文件的本質(zhì)就是把 FPGA 的物理引腳和邏輯信號(hào)對(duì)應(yīng)起來(lái)。如果這里寫錯(cuò)一個(gè)引腳編號(hào)整個(gè)工程燒進(jìn)去之后音頻通路就是斷的而且很難排查。工程目錄我習(xí)慣按功能拆分rtl目錄放 RTL 代碼包含頂層模塊、I2C 控制器、I2S 收發(fā)器db和incremental_db是綜合布局布線產(chǎn)生的中間目錄quartus目錄放工程文件sim放仿真用的 testbench。頂層模塊負(fù)責(zé)例化子模塊和連接信號(hào)I2C 控制器負(fù)責(zé)初始化 codecI2S 收發(fā)器負(fù)責(zé)音頻數(shù)據(jù)搬運(yùn)。這樣的結(jié)構(gòu)保證了音頻鏈路每一段都是獨(dú)立可替換的后續(xù)加效果器或?yàn)V波器時(shí)不影響基礎(chǔ)通路。3. 寄存器配置編寫手寫 I2C 控制器驅(qū)動(dòng) WM8731 初始化3.1 WM8731 寄存器映射與默認(rèn)值推導(dǎo)WM8731 內(nèi)部寄存器是 7 位地址加 9 位數(shù)據(jù)通過(guò) I2C 總線訪問(wèn)芯片的 I2C 地址是 0x1A7 位地址寫操作時(shí)發(fā)送 0x34。項(xiàng)目需要配置的寄存器不多核心是以下幾個(gè)寄存器 0 是左聲道輸入音量寄存器 2 是右聲道輸入音量寄存器 4 是模擬音頻通路控制寄存器 6 是數(shù)字音頻通路控制寄存器 8 是采樣率控制寄存器 12 是激活使能寄存器 15 是重置。localparam CFG_START 8d0; localparam CFG_RESET {7h0F, 9h000}; // 重置信道復(fù)位所有寄存器 localparam CFG_LINEIN {7h00, 9h017}; // 左聲道輸入音量 0dB開啟輸入 localparam CFG_LINEIN_R {7h02, 9h017}; // 右聲道輸入音量 0dB開啟輸入 localparam CFG_ANAPATH {7h04, 9h012}; // 模擬通路DAC 直通不經(jīng)過(guò)混音 localparam CFG_DEEMP {7h06, 9h000}; // 數(shù)字通路關(guān)掉去加重關(guān)掉軟靜音 localparam CFG_SRATE {7h08, 9h01E}; // 采樣率 48kHzMCLK18.432MHz localparam CFG_ACTIVE {7h0C, 9h001}; // 激活接口開始傳輸音頻CFG_RESET這條配置要在上電后第一時(shí)間發(fā)送把芯片恢復(fù)到已知狀態(tài)。0x0F 寄存器寫入 0x000 后所有寄存器回到默認(rèn)值后續(xù)配置從干凈狀態(tài)開始。CFG_LINEIN和CFG_LINEIN_R把左右聲道輸入音量設(shè)在 0dB確保信號(hào)不被衰減。CFG_ANAPATH選擇了 DAC 到耳機(jī)輸出的直通路徑繞開模擬混音器——這個(gè)項(xiàng)目里我們用數(shù)字回環(huán)模擬混音器只會(huì)增加噪聲。CFG_SRATE的 0x01E 對(duì)應(yīng) 48kHz 采樣率這里寫的是芯片手冊(cè)里的推薦配置值MCLK 由 FPGA 側(cè)提供 18.432MHz 時(shí)鐘。3.2 I2C 控制器狀態(tài)機(jī)實(shí)現(xiàn)與字節(jié)級(jí)時(shí)序I2C 控制器是本項(xiàng)目第一個(gè)硬骨頭。WM8731 的 I2C 時(shí)序要求起始條件 SCL 高電平時(shí) SDA 下降沿停止條件 SCL 高電平時(shí) SDA 上升沿?cái)?shù)據(jù)在 SCL 高電平期間必須保持穩(wěn)定。FPGA 作為主機(jī)需要主動(dòng)產(chǎn)生這些時(shí)序信號(hào)。我一般用一個(gè)三段式狀態(tài)機(jī)來(lái)寫把發(fā)送過(guò)程拆成 IDLE、START、SHIFT、ACK、STOP 等幾個(gè)狀態(tài)。module i2c_master ( input clk, // 50MHz 板載時(shí)鐘 input start, // 啟動(dòng)一次傳輸 input [15:0] data, // 要發(fā)送的數(shù)據(jù)高 8 位是寄存器地址低 8 位是數(shù)據(jù) output reg done, // 傳輸完成標(biāo)志 output reg scl, // I2C 時(shí)鐘線 inout sda // I2C 數(shù)據(jù)線 ); parameter CLK_DIV 50; // 50MHz 分頻到約 100kHz SCL符合 I2C 標(biāo)準(zhǔn) reg [6:0] clk_cnt; reg [4:0] state; reg [4:0] bit_cnt; reg [15:0] tx_buf; reg sda_out; localparam IDLE 5d0, START 5d1, SEND 5d2, ACK 5d3, STOP 5d4; assign sda sda_out ? 1bz : 1b0; always (posedge clk) begin if (clk_cnt CLK_DIV) clk_cnt 0; else clk_cnt clk_cnt 1; end always (posedge clk) begin if (clk_cnt 0) begin case (state) IDLE: begin if (start) begin state START; tx_buf data; bit_cnt 16; scl 1b1; sda_out 1b1; end end START: begin sda_out 1b0; // SCL 高電平期間 SDA 拉低產(chǎn)生起始條件 scl 1b0; state SEND; end SEND: begin scl 1b1; sda_out tx_buf[15]; // 先發(fā)最高位 tx_buf {tx_buf[14:0], 1b0}; bit_cnt bit_cnt - 1; if (bit_cnt 1) state ACK; // 數(shù)據(jù)段發(fā)送完畢進(jìn)入應(yīng)答 else scl 1b0; end ACK: begin sda_out 1b1; // 釋放 SDA讀應(yīng)答位 scl 1b0; state STOP; end STOP: begin scl 1b1; sda_out 1b1; // SCL 高電平期間 SDA 拉高產(chǎn)生停止條件 state IDLE; done 1b1; end endcase end end endmodule這個(gè)控制器的每個(gè)狀態(tài)都在 SCL 為低電平時(shí)切換 SDA在 SCL 為高電平時(shí)數(shù)據(jù)保持穩(wěn)定嚴(yán)格滿足 I2C 協(xié)議。CLK_DIV是個(gè)關(guān)鍵參數(shù)50MHz 主頻分頻到 100kHz SCL這個(gè)是標(biāo)準(zhǔn)模式的上限WM8731 完全兼容。如果后續(xù)想加快初始化速度可以把分頻系數(shù)改小但要注意芯片的 SCL 最高頻率限制。data端口接收 16 位數(shù)據(jù)WM8731 實(shí)際使用的是 7 位寄存器地址加 9 位數(shù)據(jù)多余的位數(shù)在發(fā)送時(shí)會(huì)是無(wú)效位但芯片會(huì)忽略。3.3 配置時(shí)序與上電初始化流程I2C 控制器寫好后還不能直接往 WM8731 灌配置。芯片上電后需要等待電源穩(wěn)定然后依次發(fā)送配置項(xiàng)。我用一個(gè)簡(jiǎn)單的計(jì)數(shù)器來(lái)觸發(fā)逐條發(fā)送上電后延時(shí) 100ms拉高start信號(hào)第一條配置是 RESET等待done標(biāo)志回落后發(fā)下一條。當(dāng)十二條配置全部發(fā)送完成置位cfg_done這時(shí) FPGA 才能開始往 I2S 數(shù)據(jù)線上送數(shù)據(jù)。實(shí)際調(diào)試中容易翻車的地方在 ACK 狀態(tài)。我習(xí)慣把 I2C 的sda管腳配置成inout在 ACK 狀態(tài)下把sda_out拉高釋放總線然后等 WM8731 把 SDA 拉低表示應(yīng)答。如果芯片沒有正確上電或者地址寫錯(cuò)SDA 會(huì)一直保持高電平這時(shí)done標(biāo)志照樣會(huì)拉起但 WM8731 根本沒收到配置。排查這種問(wèn)題的方法很簡(jiǎn)單在仿真里看 ACK 位是不是低電平或者用一個(gè) IO 拉高連接到邏輯分析儀上看波形。4. 數(shù)據(jù)通路實(shí)現(xiàn)I2S 收發(fā)器與頂層的持續(xù)回環(huán)4.1 I2S 時(shí)序協(xié)議位時(shí)鐘、幀同步與數(shù)據(jù)對(duì)齊WM8731 配置完成后音頻數(shù)據(jù)通過(guò) I2S 總線傳輸。I2S 協(xié)議有三個(gè)關(guān)鍵信號(hào)BCLK 是位時(shí)鐘每個(gè)時(shí)鐘周期傳輸一位數(shù)據(jù)LRCK 是幀同步信號(hào)高電平表示右聲道低電平表示左聲道DAT 是串行數(shù)據(jù)線。WM8731 工作在從機(jī)模式時(shí)BCLK 和 LRCK 都可以由 FPGA 產(chǎn)生。但要注意本項(xiàng)目中 WM8731 是主機(jī)它自己會(huì)產(chǎn)生 BCLK 和 LRCKFPGA 只需要提供主時(shí)鐘 MCLK 并讀取數(shù)據(jù)。我用的是主機(jī)模式FPGA 自己產(chǎn)生 BCLK 和 LRCKWM8731 作為從機(jī)接收。這樣做的優(yōu)點(diǎn)是不用擔(dān)心 MCLK 分頻系數(shù)的計(jì)算錯(cuò)誤只要保證 BCLK 是 48kHz 的整數(shù)倍即可。BCLK 頻率通常是 采樣率乘以位寬乘以通道數(shù)48kHz 乘 16 位乘 2 通道等于 1.536MHz。LRCK 的頻率就是采樣率本身每隔 32 個(gè) BCLK 周期翻轉(zhuǎn)一次。4.2 I2S 收發(fā)模塊的 Verilog 實(shí)現(xiàn)module i2s_transceiver ( input clk, // 板載 50MHz 時(shí)鐘 input rst_n, // 異步復(fù)位 input mclk, // WM8731 主時(shí)鐘輸出18.432MHz input i2s_bclk, // 位時(shí)鐘由 FPGA 內(nèi)部產(chǎn)生 input i2s_lrck, // 左右聲道幀同步 output reg dac_dat, // FPGA 到 WM8731 DAC 的數(shù)據(jù) input adc_dat, // WM8731 ADC 到 FPGA 的數(shù)據(jù) output reg [15:0] left_out, // 左聲道數(shù)據(jù)輸出 output reg [15:0] right_out, // 右聲道數(shù)據(jù)輸出 input [15:0] left_in, // 左聲道數(shù)據(jù)輸入 input [15:0] right_in // 右聲道數(shù)據(jù)輸入 ); reg [4:0] bit_count; reg [15:0] shift_out; reg [15:0] shift_in; always (posedge i2s_bclk or negedge rst_n) begin if (!rst_n) begin bit_count 0; shift_out 0; shift_in 0; end else begin if (i2s_lrck 1b0) begin // 左聲道采樣周期 if (bit_count 0) begin left_out {shift_in[14:0], adc_dat}; // 串行轉(zhuǎn)并行累積 shift_out left_in; shift_in 0; end bit_count bit_count 1; shift_out {shift_out[14:0], 1b0}; dac_dat shift_out[15]; shift_in {shift_in[14:0], adc_dat}; end else begin // 右聲道采樣周期 // 邏輯與左聲道一致將 right_in / right_out 對(duì)應(yīng)替換 bit_count bit_count 1; end end end endmodule這段代碼的核心思路是在 LRCK 為低電平時(shí)每個(gè) BCLK 上升沿從adc_dat采一位寫入shift_in16 個(gè)位時(shí)鐘后得到一個(gè)完整的左聲道樣本發(fā)送側(cè)則把left_in載入shift_out每個(gè) BCLK 上升沿從最高位逐位移出到dac_dat。LRCK 翻轉(zhuǎn)后進(jìn)入右聲道周期邏輯相同。數(shù)據(jù)位寬是 16 位這也是 WM8731 的默認(rèn)字長(zhǎng)。bit_count計(jì)數(shù)到 16 時(shí)自動(dòng)歸零等待下一個(gè)聲道周期開始。需要留意的是I2S 數(shù)據(jù)是 MSB 先行且數(shù)據(jù)比 LRCK 翻轉(zhuǎn)晚一個(gè)位時(shí)鐘。這意味著發(fā)送側(cè)在 LRCK 變低后的第一個(gè) BCLK 上升沿不能立即發(fā)送數(shù)據(jù)的最高位而是要延時(shí)一拍。我在模塊里用shift_out預(yù)先載入數(shù)據(jù)在 LRCK 有效后的第二個(gè) BCLK 沿開始輸出就是為了滿足這個(gè)時(shí)序要求。如果這里不處理左右聲道的數(shù)據(jù)會(huì)整體錯(cuò)位一個(gè)位時(shí)鐘聽感上出現(xiàn)明顯的卡頓。4.3 頂層模塊把 I2C 與 I2S 拼接成完整通路頂層模塊的任務(wù)是實(shí)例化前面兩個(gè)子模塊把它們連接成一條可用的通路。I2C 控制器用 50MHz 時(shí)鐘驅(qū)動(dòng)I2S 收發(fā)器用 BCLK 和 LRCK 驅(qū)動(dòng)。這里有個(gè)容易踩坑的地方——不同時(shí)鐘域的信號(hào)不能直接混用。I2C 的done標(biāo)志是 50MHz 時(shí)鐘域的信號(hào)I2S 的left_out數(shù)據(jù)是 BCLK 時(shí)鐘域的信號(hào)如果直接互相賦值綜合工具會(huì)報(bào)跨時(shí)鐘域警告而且要擔(dān)心亞穩(wěn)態(tài)問(wèn)題。module audio_top ( input clk_50m, // 板載 50MHz 時(shí)鐘 input rst_n, // 復(fù)位按鈕 inout AUD_I2C_SDAT, // WM8731 I2C 數(shù)據(jù)線 output AUD_I2C_SCLK, // WM8731 I2C 時(shí)鐘線 output AUD_MCLK, // WM8731 主時(shí)鐘 input AUD_ADC_DAT, // ADC 數(shù)據(jù)輸入 output AUD_DAC_DAT, // DAC 數(shù)據(jù)輸出 output AUD_BCLK, // 位時(shí)鐘 output AUD_LRCK // 幀同步 ); wire cfg_done; wire [15:0] adc_left, adc_right; wire [15:0] dac_left, dac_right; // 相位累加器產(chǎn)生 MCLK18.432MHz用 PLL 或計(jì)數(shù)器分頻產(chǎn)生 assign AUD_LRCK bclk_div ? ... // 從 BCLK 計(jì)數(shù)器產(chǎn)生 48kHz 幀同步 i2c_master u_i2c ( .clk(clk_50m), .start(start_config), .data(config_data), .done(config_done), .scl(AUD_I2C_SCLK), .sda(AUD_I2C_SDAT) ); i2s_transceiver u_i2s ( .clk(clk_50m), .rst_n(rst_n), .i2s_bclk(AUD_BCLK), .i2s_lrck(AUD_LRCK), .adc_dat(AUD_ADC_DAT), .dac_dat(AUD_DAC_DAT), .left_out(adc_left), .right_out(adc_right), .left_in(dac_left), .right_in(dac_right) ); assign dac_left adc_left; // 直通回環(huán) assign dac_right adc_right; endmodule頂層模塊里最容易被忽視的是 MCLK 的產(chǎn)生。WM8731 需要一個(gè)主時(shí)鐘輸入頻率必須是采樣率的整數(shù)倍常見的有 12.288MHz 和 18.432MHz。DE2 板上有 50MHz 晶振直接分頻得不到這兩個(gè)頻率所以項(xiàng)目里用 FPGA 內(nèi)置 PLL 來(lái)生成。如果你用的開發(fā)板沒有音頻專用晶振這一步是跑不通的。一個(gè)替代方案是把 WM8731 工作在自動(dòng)時(shí)鐘檢測(cè)模式通過(guò)芯片內(nèi)部 PLL 從 BCLK 恢復(fù)主時(shí)鐘但這樣配置寄存器和 MCLK 引腳連接都要改不推薦第一次做就選這條路。5. 常見問(wèn)題排查音頻回環(huán)不出聲的五個(gè)典型原因5.1 現(xiàn)象是靜音原因是 I2C 配置根本沒送進(jìn)去上板之后最典型的失敗現(xiàn)象是無(wú)論怎么調(diào)整音量旋鈕耳機(jī)里一點(diǎn)聲音都沒有。先不急著懷疑代碼先看 I2C 波形。把邏輯分析儀接到AUD_I2C_SCLK和AUD_I2C_SDAT上抓上電瞬間的信號(hào)。如果 SCL 沒有時(shí)鐘或者 SDA 一直為高說(shuō)明 I2C 控制器沒有工作。這時(shí)檢查復(fù)位信號(hào)是否釋放、狀態(tài)機(jī)是否卡在 IDLE、start脈沖是否正確產(chǎn)生。有時(shí)候 I2C 波形正常但 WM8731 還是不工作這時(shí)候就要檢查 ACK 位。芯片正確應(yīng)答時(shí)會(huì)在第 9 個(gè)時(shí)鐘周期把 SDA 拉低如果 SDA 一直高說(shuō)明芯片根本沒收到完整數(shù)據(jù)。常見原因是 I2C 地址錯(cuò)誤——WM8731 的 CSB 引腳接地時(shí)地址是 0x1A接高電平是 0x1B如果板子上的地址引腳被拉高而你用了 0x1A芯片自然不會(huì)回應(yīng)。這個(gè)坑我見過(guò)多次。解決用萬(wàn)用表量一下 CSB 引腳電平或者干脆在代碼里把兩個(gè)地址都試一遍。5.2 現(xiàn)象是刺耳噪聲原因是左右聲道數(shù)據(jù)錯(cuò)位另一種常見故障是音頻能出聲但聲音像機(jī)器人說(shuō)話一樣機(jī)械且斷續(xù)或者左右聲道明顯錯(cuò)位。這種問(wèn)題基本出在 I2S 時(shí)序?qū)R上。I2S 協(xié)議規(guī)定數(shù)據(jù)比 LRCK 翻轉(zhuǎn)晚一個(gè) BCLK如果發(fā)送模塊在 LRCK 翻轉(zhuǎn)的同一個(gè)沿就送出第一位數(shù)據(jù)接收端會(huì)把前一個(gè)聲道的最后一位當(dāng)成新聲道的起始位整個(gè)數(shù)據(jù)流錯(cuò)位一位。解決在發(fā)送模塊里增加一拍延時(shí)確保第一個(gè) bit 出現(xiàn)在 LRCK 翻轉(zhuǎn)后的第二個(gè) BCLK 沿。還有一種錯(cuò)位是左右聲道數(shù)據(jù)互換聽起來(lái)像聲場(chǎng)翻轉(zhuǎn)但聲音本身是連續(xù)的。這是 LRCK 極性接反了。WM8731 的 LRCK 高電平對(duì)應(yīng)右聲道如果你在代碼里把高電平當(dāng)成了左聲道左右就換過(guò)來(lái)了。檢查一下接收模塊里處理 LRCK 電平的分支邏輯交換兩個(gè)分支即可。5.3 現(xiàn)象是電流底噪原因是模擬地與數(shù)字地處理不當(dāng)如果聲音能出來(lái)但伴隨持續(xù)的白噪聲或 50Hz 交流聲且音量隨輸入增益增大而增大那問(wèn)題大概率在模擬前端。WM8731 是混合信號(hào)芯片模擬地和數(shù)字地雖然是同一個(gè)封裝但 PCB 上通常分開鋪設(shè)。DE2 板上已經(jīng)做了隔離我們能做的有限但有一點(diǎn)必須注意耳機(jī)插頭地線和 LINE IN 地線如果接觸不良噪聲會(huì)異常明顯。這種情況在開發(fā)板上沒有太好的軟件優(yōu)化手段可以試著降低輸入增益減少模擬前端的噪聲放大。如果是 FPGA 側(cè)帶來(lái)的噪聲檢查 MCLK 的質(zhì)量。MCLK 抖動(dòng)過(guò)大會(huì)直接惡化 ADC 和 DAC 的時(shí)鐘同步精度導(dǎo)致輸出波形毛刺增多。用示波器看 MCLK 引腳如果上升沿不陡峭或存在明顯抖動(dòng)檢查 PLL 配置是否正確。我在項(xiàng)目里把 PLL 的輸出時(shí)鐘定為 18.432MHz并且加了一級(jí) BUFG 全局時(shí)鐘緩沖確保到 WM8731 的時(shí)鐘路徑足夠干凈。5.4 現(xiàn)象是上電后必須按復(fù)位才發(fā)聲原因是初始化時(shí)序沒做完有些開發(fā)者會(huì)遇到一種奇怪現(xiàn)象每次上電后需要手動(dòng)按一下復(fù)位按鈕音頻通路才正常。這說(shuō)明 WM8731 的初始化流程在時(shí)序上落后于上電I2C 配置是在復(fù)位釋放之前就開始發(fā)送或者復(fù)位釋放后 FPGA 立刻去讀 ADC 數(shù)據(jù)而芯片還沒來(lái)得及完成內(nèi)部初始化。解決在復(fù)位釋放后加一個(gè)計(jì)數(shù)器延時(shí)至少等待 10ms 讓 WM8731 的模擬電路穩(wěn)定再啟動(dòng) I2C 配置流程。這個(gè)延時(shí)用 50MHz 時(shí)鐘計(jì)數(shù)很容易實(shí)現(xiàn)500000 個(gè)時(shí)鐘周期就是 10ms。5.5 現(xiàn)象是采樣率聽起來(lái)不對(duì)原因是幀同步頻率偏了最后一種現(xiàn)象是音頻能播放但音調(diào)明顯偏高或偏低。這說(shuō)明AUD_LRCK的頻率不是 48kHz。LRCK 是 BCLK 分頻產(chǎn)生的BCLK 如果由 PLL 產(chǎn)生要檢查 PLL 分頻參數(shù)是否算錯(cuò)。比如 18.432MHz 的 MCLK 如果被誤當(dāng)成 50MHz 來(lái)分頻得到的 LRCK 頻率會(huì)差近三倍。這種情況下音樂速率變得離譜基本可以斷定是分頻參數(shù)的問(wèn)題。用頻率計(jì)或示波器測(cè)一下 LRCK 的實(shí)際頻率把它調(diào)回 48kHz 附近即可。6. 二次開發(fā)給音頻通路加一個(gè)實(shí)時(shí)音量調(diào)節(jié)和數(shù)字增益6.1 在數(shù)據(jù)通路上插入乘法器實(shí)現(xiàn)音量控制基礎(chǔ)回環(huán)跑通之后最能體現(xiàn) FPGA 優(yōu)勢(shì)的改造是加數(shù)字增益控制。既然 ADC 輸出的數(shù)據(jù)已經(jīng)以 16 位并行形式到達(dá) FPGA完全可以在直通鏈路上插入一個(gè)乘法器用撥碼開關(guān)控制增益系數(shù)實(shí)現(xiàn)數(shù)字音量調(diào)節(jié)。設(shè)計(jì)思路如下把左右聲道的left_in和right_in分別乘以一個(gè)可配置的增益系數(shù)乘法結(jié)果截位后送入 DAC。增益系數(shù)用一個(gè) 16 位寄存器保存每撥動(dòng)一次撥碼開關(guān)寄存器加或減一個(gè)固定步進(jìn)。這個(gè)改造有個(gè)典型陷阱16 位乘以 16 位得到 32 位結(jié)果如果直接把低 16 位送給 DAC聲音會(huì)嚴(yán)重失真甚至爆音。正確做法是保留高 16 位或者做帶符號(hào)飽和處理。我一般這樣處理乘法結(jié)果右移 8 位再判斷是否溢出若溢出則鉗位到最大正值或最小負(fù)值。這樣音量調(diào)節(jié)的步進(jìn)是 1/256足夠細(xì)膩同時(shí)避免了截位帶來(lái)的削波噪聲。6.2 順著通路加一個(gè)簡(jiǎn)單的低通濾波驗(yàn)證可擴(kuò)展性音量控制之外另一條值得動(dòng)手的路徑是插一個(gè)數(shù)字濾波器。在i2s_transceiver的數(shù)據(jù)輸出端串聯(lián)一個(gè)一階 IIR 低通濾波器系數(shù)固定截止頻率設(shè)在 8kHz 左右。這個(gè)改動(dòng)只涉及組合邏輯和一個(gè)狀態(tài)寄存器不需要改 I2C 配置和 I2S 時(shí)序。濾波器結(jié)構(gòu)是標(biāo)準(zhǔn)的差分方程y[n] y[n-1] alpha * (x[n] - y[n-1])alpha 取 0.2 左右。乘法和加法都放在 BCLK 域內(nèi)注意控制時(shí)序避免產(chǎn)生組合邏輯環(huán)路。這樣做的好處是驗(yàn)證 FPGA 處理信號(hào)的能力已經(jīng)從「搬運(yùn)數(shù)據(jù)」進(jìn)化到「變換數(shù)據(jù)」而這正是后續(xù)做均衡器、回聲、降噪算法的第一步。把 alpha 系數(shù)也做成可配置就能在運(yùn)行時(shí)切換濾波效果。再往后如果對(duì)時(shí)延不敏感還可以把數(shù)據(jù)緩存到片內(nèi) RAM 做延遲效果配合撥碼開關(guān)做簡(jiǎn)單的回聲。6.3 從直通到算法的改造驗(yàn)證方法每次改動(dòng)后最直接的驗(yàn)證方法是播放一段自己熟悉的音樂——最好是對(duì)人聲和低頻都有清晰辨識(shí)度的曲目然后切換增益系數(shù)聽音量變化是否線性切換濾波器參數(shù)聽高頻是否明顯衰減。用示波器量 DAC 輸出腳的波形也能看出濾波器的痕跡原始方波信號(hào)經(jīng)過(guò)低通濾波后邊緣會(huì)變得圓滑。我從這個(gè)項(xiàng)目里學(xué)到的最重要一課是FPGA 工程調(diào)試永遠(yuǎn)先從鏈路末端往前查。音頻聲卡無(wú)聲先摸 I2CI2C 通了查幀同步幀同步對(duì)了我才去動(dòng)信號(hào)處理邏輯。順序一亂就會(huì)陷入同時(shí)懷疑所有模塊的狀態(tài)誰(shuí)也查不出來(lái)。從那以后我每加一個(gè)模塊都會(huì)在它入口打一個(gè)debug標(biāo)志先確認(rèn)真數(shù)據(jù)進(jìn)來(lái)了再看它出去的是什么。這個(gè)習(xí)慣讓我少走很多彎路希望也能幫你在調(diào) FPGA 音頻的時(shí)候少踩幾個(gè)坑。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
大香蕉520| 色五月婷婷色五月| 亚韩在线视频| 2021日韩无码| 影音先锋91网站在线观看| 玖玖99福利| 久久久久9久无码视频| 9久热免费视频99| 色欲Av五月天| 99精品97| 日本少妇AA一级特黄大片| 欧美黄色AA片哗啦啦啦| 久久婷婷亚洲| 美女五月天| 狠狠操天天操| 五月婷婷综合激情| 97碰久久| 99ri在线| 五月丁香婷婷色色色| 可以免费看av网站| 五六月婷婷| 极品另类| 综合一区二区三区| 久久久久久99精品无码| 国产精品久久久60086| 色中色综合| 99精品小视频| 五月天激情久久| 婷婷六月天亚州| 九九精品片一| 色婷婷综合五月| 九热视频| 婷婷五月天成人娱乐| 99热主页日本| 伊人久久婷| www.久久色.com| 丁香狠狠干| 国产激情久久久| 人妻AV在线| 翔田千里 50岁 无码| 五月天婷婷在线播放| 五月丁香九九九综合| 久热这里只有精品3| 91欧美日韩综合| 任你擦免费视频| 欧美婷婷综合网| 九九色插| 天堂爱啪啪| 99碰碰中文| 中文超碰视在线| 亚洲黄网AV| 九九色情网站| 久久天堂婷婷五月| 久久XX| 国产激情av| 伊人大香蕉在线视频| 波多野结衣成人作品在线| 大香蕉久久综合网| 五月婷婷日| 91九色超碰正在播放| 色开心五月丁香| 国产黄色大片| 久久免费操| 色综合久久99色| 99精品在线观看视频| 亚洲婷婷婷| 丁香五月手机在线| 五月天成人伊人| 99热精品9| 米奇影视五月天| 夜夜骑天天玩天天日| 综合久久人妻| 淫视馆aV二区一区| 综合色在线| 日韩人妻在线播放| 色五月91| 日日夜夜天天爽| 这里只有精品在线视频在线观看| 天天日,天天干,天天操| 91色呦哟| 天天操无码| 欧韩性爱| 婷婷香五月天| 丁香五月天社区| 极品少妇XXXX精品少妇偷拍| 久9精品| www,色婷婷| 99热婷婷| 99热99草97| 久久大香免费| 天天日日人| 色婷婷色五月综合| 丁香激情网| 婷婷综合五月天| 亚韩精品视频1区| 九九99香蕉在线视频播放| 这里只有精品免费在线视频| 激情五月www| 色综合五月| 99热这里| 色www.con| 婷婷六月激情小说网| 99热这里有精品24| 婷婷综合网| 又大又粗九一在线| 婷婷五月天最新综合你懂的| 99爱在线精品视频免费观看| 亚洲精品又粗又大又爽A片 | 婷婷综合久久| 五月激情综合网| 四色永久成人网站| 任你日视频| 久久99久久99精品免视看婷婷| 天天天综合网| 九九无码AV| 超碰在线99热| 日本社区五月天激情| 五月丁香色色| 久碰综合| 一本到不卡高清DVD| 九九热精品99| 中文在线视频久1| 丁香六月啪啪| 激情五月色婷婷| 米奇影视资源777狠狠色婷婷五月天激情网 | 大香线蕉伊人| 天天插天天爽| 开心婷婷五月综合| 超碰狠狠色| 大香网伊人久久综合| 丁香五月色五月| 九九蜜臀精品| 五月色综合| 成人视屏在线观看| 亚洲综合色色色| 综合伊人久久| 九九热99免费视频| 狠狠人妻色综合| 最新丁香六月婷婷| 97精品自拍视频| 九九热只有精品| 婷婷五月天天| 综合激情五月天六月婷免费视频| 九九伦子片| 天天干天天 亚洲| 色婷婷丁香A片区毛片区女人区| 婷婷六月激情| 五月丁香六月情| 婷婷色五月激情强奸四射| 天天天操天天天日| 五月丁香六月婷婷啪啪| 狠狠干天天日| 巴基斯坦粉嫰无码视频| 色婷视频| 加勒比色色| 思思久久99热只有频精品66| 在线观看亚洲视频影院| 日本婷婷色日| 日韩视频女神99| 这里只有精品免费观看网占| 五月丁香久久激情网| 五月天影院| 九九综合色| AV成人在线播放| 亚洲最大在线| 色情五月婷婷| 久久草婷婷丁香网站| 精品一区二区三区免费毛片爱 | 天天爽天天摸人妻综合网| 九九99热精品| 99久久99九九99九九九| 狠狠va| 嫩草AV久久伊人妇女超级A| 人人综合五月人人婷婷| 婷婷五月天精品| 成人婷99最新| 天天干夜夜欢| 色色婷婷丁香| 男人的天堂99| 丁香五月婷婷网| 可以直接看的av网站| 久久九九99视频| 色色com| 大香蕉九九| 成人做爰A片免费看视频| 思思久热| 久久天天天| 男人的天堂婷婷色五月| 九九五月天| 欧美丁香六月在线观看视频| 久久久久久久久久久月丁| www.色婷婷| 天天日夜夜操五月| 99热综合| 97婷婷在线| 97人人超| 成人五月丁香社区| 人人爱人人添| 加勒比色色| 婷婷九月在线| 色逼综合网| 欧美 日韩 成人在线| 99黄色| 色色色色欧美| 丁香五月91| 婷婷免费精品视频| 亚洲激情| 亚州美女| 色爱综合网| 亚洲综合激情五月久久| 免费在线观看av网站| 五月天婷婷基地| 五月婷丁香| 亚洲人操亚洲人| 69色婷婷| 深爱五月天天| 热99精品视频| 成人无码精品1区2区3区免费看| 亭亭社区五月天| 五月丁香婷婷啪啪网| 国产成人AV在线| 人人亚洲| 丁香五月123| 国产激情综合五月久久| 另类国产综合| 91色五月| 97成人视频| 久久久久8888| 中文字幕精品无码一区二区| 婷婷玖玖五月天| 狠狠色色| 另类 在线| 九九碰九九爱97超碰| 婷婷五月天a| 婷婷色在线播放| 深爱五月激情| 人人操AV| 五月婷婷手机在线| 99r久久这里只有精品| 婷婷五月天av小说| 黄色高清无码| 在线不卡视频| 婷婷成人视频| 激情五月天婷婷| 久久午夜理论| 俺去啦综合网| 亚洲综合狠狠艹| 九九热这里有精品视频| 任你爽免费视频| 最新日韩久热免费视频看看| www.sebowuyue| 色综合中文综合网| 亚洲超级碰| 4399在线观看免费高清毛片| 日噜噜色| 成人丁香五月婷| 日本三级第一页| 国产毛片精品一区二区色欲黄A片| 五月天激情四射网站| 9热在线观看| 色情五月婷婷| 男人的天堂五月丁香| 手机免费福利视频| 国产激情综合五月久久| 五月丁香六月成人| 99视频在线精品| 丁香五月在线观看| 97碰免费视频在线| 99在线观看| 99久久这里只有精品| 丁香五月天啪啪| 91操网| 五月婷婷啪| 婷婷五月亚洲综合| 国产精品国产成人国产三级| 狠狠干.com| http://www.com久久久精品一区| 五月九九综合| 4399在线观看免费高清黄色视频| 亚洲视频在线观看99| 婷婷五月天Av| 五月丁香六月婷婷无码| 色综合综合色| 少妇水多A片太爽了| 99re在线播放| 骚逼视频一区2区| 99啊精典免费视频| 美女天天久久| 可似看的AV| 第五色婷婷| www99在线观看视频| 亚韩在线视频| 在线看的免费网站| 婷婷激情九月| 玖玖爱综合网| 涩五月婷婷| 五月综合婷婷五月| 五月丁香六月激情| 婷婷五月丁香91| 操操国产| 久久99网| 国产精品国产成人国产三级| 香蕉久久国产AV一区二区| 9999久久久久| 九九九九九999999| 久久综合色情网站| 五月天激情影院| 久久99视频| 欧美日综合| 亚洲精品视频在线| 九九免费视频在线| 五月婷婷久久综合| 六月丁香社区| 久久久大香蕉| 做爰丰满少妇1313| 人人操婷婷| 久久机热/这里只有精品| 亚洲第一精品网站| 久久婷婷五月天激情| 国产精品成人AV在线| 久婷婷婷| 国产亚洲精品AAAAAAA片| 亚洲V国产V欧美V久久久久久| 先锋影音男人的天堂AV| 色婷婷免费视频| 99在线热| 日韩AAA| 热的无码综合视频| 久久98热re| 六月激情综合| 五月丁香激情综合网官网| 伊人超碰在线| 亚洲色综合| 久久视频这里都是精品| 婷婷丁香五月亚洲| 久久WW| 狠狠色噜噜狠狠狠888| 99在线精品免费视频| 九九艹女| 黄色片区子| 欧洲激情五月天婷婷| 国产高清RV综合aVa| 色婷婷久综合久久一本国产AV| 日日噜噜夜夜狠狠久久丁香五月| 六月丁香久久| 99在线播放| 色播婷婷五月天| 99久久99热| 五月婷婷色五月| 久热99| 五月激香蕉网| www.婷婷五月天,com| 国产精品天天狠天天看| 婷婷九月狠狠色| 久久杏爱视频| 五月天婷婷操逼视频| 丁香五月性| 丁香五月成人自拍| 色婷丁香五月| 日本天堂免费99| 99精品国产在热久久| 丁香五月婷婷欧美成人色图| site:esunnet.com| 久久精典| 六月婷婷青青青视频| 日本色频| 4399在线日本A片| 一二线视频 另类| 色激情五月| 亚洲五月天综合| 五月天激情小说网| 性爱技巧五月| 丁香五月亚洲婷婷| 丁香五月激情五月| 99男人的天堂| 十一月婷婷激情四射| 五月婷婷激情| 婷婷五月成人有| 国内外色色色色色成人视频| 五月综合人妻| 丁香五月天人体| 成人一级片| 午夜丁香久久久久久| 成人色图情色成人网 www.5b5b5bcom 五月天 | 99啪99| 亚洲丁香五月深爱五月| 婷婷丁香77777| 欧美α√| 超碰在线资源| 婷婷六月丁香激情综合| 婷色五月| 开心六月丁香五月婷婷| 狠狠干婷婷| 五月丁香人妻| 99热这里只有精品3| 色域五月丁香| 玖玖在线资源视频| 日韩成人免费电影| 久久这里都是精品免费| 婷婷五月色天| 五月丁香亚洲校园欧美| 中文无码婷婷| 六月婷婷综合| 久久HD| 久久婷婷啪啪视频| 99福利导航| 大香蕉九九操| 午夜丁香综合婷婷| 2017人人操| 色播五月综合网| 97操| 激情綜合網址| 大香蕉婷婷五月| 色色色综合色| 久久久精品99| www.夜夜操| 九九中文字幕九| 丁香五月色欲| 狠狠色网| 久热网在线视频| 97超级碰碰碰久久久| 日日操,夜夜撸| 婷婷中文字幕网站| 开心婷婷五月天激情网| 五月99久久| 免费亚洲成人电影AV| 婷婷五月天网| 婷婷午夜激情| 色婷婷色99国产综合精品| 九月婷婷久久久| 天天久久狠狠色综合| 综合AV在线| 大香蕉九九| 深爱五月月天| 免费看欧美成人A片无码| 69五月天视频| 久久九九一區| 99九九在线精品热动漫| 六月99天天婷婷激情综合| 色婷婷丁香五月| 日韩成人五月天| 三级黄色大片视频| AV人人操| 日本三级日本三级99| 99热在线精品观看| 天天干夜夜b| 五月久久丁香| 色综合久久44| 千人斩操逼| 综合在线观看99| 青草五月天| 九热...av| 99热久| 欧美亚洲婷婷五月| 亚洲XX网| 国产成人网址| 日日.c| 99色在线视频| 女同在线9| 婷婷97碰碰| 都市激情蜜桃婷婷五月天| 苗黎美女四级成人版一级二级毛片| 国产综合网在线| 狠狠色丁香婷婷久久综合| 丁香五月在线伊人| 岛国AAAV| 99ri视频| 九九热精品6| 久久久久久激情| 五月婷在线| 婷婷六月五月| 女性自慰系列第五页| 99视频内射三四| 日本在线噜噜| 婷婷久热| 日日操夜夜操中国无码| 综合久久99| 无码人妻一区二区三区免费九色| 久久久婷| 色婷婷四虎| 狠狠爱综合网| 俺去也五月| 丁香婷婷激情综合五月激情| 亚洲免费观看高清完整版AV线| 亚洲色综合| 人人爱人人摸人人澡| 操一区| 31色区视频免费看| 天天爽天天| 狠狠久久婷五月| 六月婷婷亚洲| 丁香五月婷婷无码AV| 丁香伊人五月色婷婷五十路| 亚洲色在线观看| 婷婷五月无码| 色高清无码视频| av在线观看网站| 伊人香大香蕉视频| 少妇熟女视频一区二区三区| 玖玖在线视| 天天天天天天天操| 日韩无码一区二区三区四区| 国产综合视频婷婷| 超碰在线超碰| 大香蕉丁香| 亚洲精品性色| 九九色中文| 99色免费在线观看| 久久38视频| 一本道在线电影| 久操热线| 深爱激情五月天| 亚洲婷婷成人五月天| 九九精品这里只有| 99色综合| 新97人人上人人| 九月丁香八月婷婷久久综合久97| 另类图片五月天婷婷| 双性美人被调教到喷水A片| 久久9精品| 色香欲综合| 婷婷综合五月色播| 丁香激情婷婷网| 日日操夜夜爽天天天| 色色五月天激情| 综合伊人久久| 中文字幕网站在线观看| 久婷首页| AV成人在线播放| 性色综合网| 草榴成人影片| 欧美69色| AVV黄| 久久五月天丁香| 91制片厂久久久国产电影| 久久久久9999| 久久丁香五月天| 久久只有18视频| 综合网啪啪| 婷婷六月亚洲综合| 热99在线| 色婷婷五月在线| 成人AV中文字幕| 天天人人人人人人人人人人人| 婷婷射丁香| 少妇综合网| 五月天另类激情在线| 综合图片色色| 色九九七七| 大香蕉娱乐| 热九九九九| 亚洲Av成人在线观看| 操人视频91| 91无码高清| 99热伊人| 五月天婷亚洲天综合网综合| 丁香五月激情视频在线| 无码色色| 天天舔天天摸视频| 中文色婷婷| 爆乳熟妇一区二区三区爆乳照片| 伊人久久艹| 久久99热这里只频精品6学生| 疯狂做受XXXX高潮A片| 最近中文字幕2019视频1| 精品爱欲五| 色色色色色九九九九九| 五月丁香综合网| 久久九九九九| 99久久婷婷国产综合精品草原| 大香蕉婷婷丁香天堂AV| 99综合婷婷五月| 夜丁香五月婷婷| 色色色com| 五月天色综合| 99免费在线视频| 超碰在线资源| 亚洲超碰在线| 五月丁香六月情婷婷久久| 色婷婷狠狠干芒果TV| 五月天婷a| 91狠狠色色丁香婷婷综合久久| 精品久久久人妻| 嫩草AV久久伊人妇女超级A| 97五月婷| 久久精品99| 99在线视频在线观看| 激情五月婷婷六月丁香| 日本色色色| 99热这里只有精品9| 五六月婷婷久久| 色婷婷69| 亚洲亚洲人成综合网络| 色色五月天com| 九九综合精品| 婷婷丁香五月婷婷| 夜精品无码A片一区二区蜜桃| 亚洲中文字幕翔田千里| 色婷婷五月开心六月综合| 婷婷五月久久| 九九色精品| 九九无码AV| 99热精品网| 婷婷丁香成人在线视频| 日日夜夜干| 成人免费120分钟啪啪| 91pornav在线| 99热这里只有精品一区| 99热这里只有精品66| 碰久久精品w| 久久久激情| 成人色五月天婷婷| 激情五月天综合| av九九| 综合色网站| 五月丁香色婷婷基地| 超碰色综合| 狠狠婷婷色| 九九热在线亚洲免费视频| 天天色,天天日,天天做| 国产精品一区在线观看你懂的| 亚洲婷婷五月| 俺去也五月天婷婷| 日日夜夜干| 日韩久久视频| 激情五月天在线免费美女视频| 成人做爰A片免费看视频| 夜夜躁婷婷AV| 日日日天天干| www.色五月| 丁香五月天在线观看视频| 丁香婷婷五月| 激情五月四色| 婷婷综合五月天激情| 色五月综合在线| 97干在线观看| 久久精热| 婷婷免费视频| 五月丁香做爱视频| 色色网站毛片| 青柠影视免费高清电视剧| 人人97碰| 人人澡玖玖一| 91疯狂操操操操| 久久婷婷五月天亚洲欧美| 激情丁香五月婷婷| 99热这里只有精品亚洲| 丁香婷婷社区| 99热 这里只有精品 国产 日韩| 五月婷婷丁香五月| 欧美色色干| 国产视频婷婷| 国产综合丁香五月天| 欧美性爱5月天天天看| 熟女人妻视频| 亚洲 在线 性爱| 99操| 五月丁香va| 噼里啪啦完整版中文在线观看| 亚洲激情四射| 婷婷激情图片| 丁香婷婷黄网站| 婷婷涩五月| 五月婷中文字幕| 大香蕉五月婷婷| 色婷网| 天天肏视频| 9l视频自拍九色9l视频自拍九色9l社区 | 超碰妻人人| 日日艹思思热| 亚洲国产成人AV在线| 99这里只有| 丁香六月激情综合网| 六月综合婷婷开心伊人| 日本三级毛片| 久久人妻久久| 五月深爱婷婷| 九月丁香八月婷婷加勒比| 大伊久久| 婷婷五月中文字幕| 亚洲av网站| 久久99综合| 97碰在线| 五月天开心婷婷久久| 日本不卡高字幕在线2019| 爱草视频在线观看| 9一精品视频观看| 五月天婷婷久久视频| 久久久宗合| 色屌丝中文字幕| 亚洲射激情| 久久久久9久无码视频| 欧美色爱五月天| 97色图片中文字幕视频在线观看| 99久久网站| 九九在线免费观看| 五月丁香婷婷激情四射迷人| 俺去也综合| 丁香五月婷婷狠狠色| 噼里啪啦完整版中文在线观看| 五月婷六月丁香| 9精品视频在线观看| 久久人妻久久| 五月天狠狠干| enecarbon-materials.com污K127封锁请涟系@wip1688 | 婷婷深爱色五月| 丁香五夜激情四射夜夜夜| 久久最新色| 日韩色色网| 蜜乳久AV| 91人人爽狠狠狠| 五月婷婷少妇之| 色婷婷人人| 久久伊人五月天| 99思思热只有在这里看| 欧美大香蕉视频| 蜜臀AV在线观看| 五月婷婷六月丁香| 婷婷五月天日逼| WWW.久久99| 91精品久久久久久| 开心五月激情婷婷| 中文字幕在线免费观看视频| 五月天社区婷婷| 激情五月综合网最新| 激情综合色五月六月婷婷| 婷婷五月综合色中文字幕| 亚洲av日韩无码| 婷婷丁香激情五月天色色| 99热碰碰热| 婷婷五月丁香综合网| 99热在线只有精品| 久久婷婷五月天蜜桃| 六月婷婷无码| 丁香五月婷婷偷拍| 激情综合色婷婷啪啪五月天| 国产成人综合网| 天天操综合网站| 久久黄色网扯| 国产ava| 色婷婷狠狠18yy| 国产精品18久久久| 久久性操| 五月激情婷婷丁香| 丁香五月狠狠综合欧美| 九九久久99| 色婷在线视频| 99色综合久久| 亚洲精品一区中文字幕乱码| 丁香伊人网| 亚洲激情免费视频| 五月天激情婷婷五月天久久| 久久五月丁香| 91互操| 人人插操| 国产99久久久国产精品免费看| 啪啪99| 五月婷婷片| 99热国产在线| 五月婷婷之六月丁香| 91综合在线| 91一起操| 91AV婷婷| 在线观看免费狠狠色丁香香综合 | 色情久久久| 丁香成人五月天| 丁香五月婷婷六月| 五月婷婷婷自由综合| 他改变了拜占庭| 开心五月婷婷伊人| 性爱激情综合网| 99自拍视频| 91久久久久久| 99热国产这里只有精品| 一起草Av| 8区视频在线| 六月色播| 九九性爱网| 色情五月综合婷婷| 五月婷婷六月丁香玖玖玫瑰91| 天天干天天操| 色色cOm| 大香蕉婷婷| 色色五月婷婷| 日韩成人网址| 日韩成人电影AV| 91超级碰| 在线观看五月婷婷网| 国产激情综合| 丁香丁婷五月激情| 爱性综合网| 大香蕉九九| 天天开心婷婷丁香五月| 激情宗合哪里能看| VA婷婷| 婷婷五月天亚洲天堂| 五月丁香六月婷婷亚洲激情综合| 久久五月婷综合网| 色五月婷婷久久爱| 丁香五月天婷婷久久综合| 99在线免费视| 日韩成人精品一区久久久久| 99热最新网址| 五月婷婷开心丁香| 婷婷五月激情六月| 五月婷色色| 久久久性爱视频| 色婷婷综合网站| 激情人妻蜜夜系列区| 无码碰碰| 六月激情丁香一道本7777| 91九色丨国产丨爆乳| 超碰AV在线| 777久久综合视频| 日本欧美国产| 亚洲五月天激情| 67194成I人在线观看线路1| 狠狠干综合| 1024操逼| 丁香五月最新网址| 99热亚洲精品| 天天草人人摸| 久久成人天| 99资源在线视频| 日本人妻A片成人免费看片| 超碰成人免费| 亚洲亚洲人成综合网络| 91oumei| 色五月综合在线| 色色是色N一| 色99欧洲色19| 大香蕉婷婷久久| 婷婷六月啪啪| 婷婷五月性感| 婷婷情色五月天| 丁香五月中文字幕| 青青草六月丁香| 五月天婷婷久久| 99自拍视频网站| 99热国品| 亚洲色色五月天| 五月丁香六月在线欧美| 99re思思精品在线观看| 九九热精品99| 久久曰曰| 成人片在线免费看| 99热99在线| jiZZdr| 97久久视频| 婷婷五月乱交换| 亚洲色情免费网| 噜噜视频| 欧美槡BBBB槡BBB少妇| 五月激情综合性爱| 99热视| 开心婷婷中文字幕| 97在线观视频免费观看| 亚卅毛片| 成人网丁香五月| 噜噜噜狠狠色综合| 综合久久五月| 婷婷五月亚洲激情| 色欲久久久久久综合网综合网| 内射爽无广熟女亚洲| 丁香五月黄色| 婷婷丁香人妻久久在线观看| 91色久| 色婷婷AV在线观看| 色丁香综合影院| 大香蕉五月婷婷| 天天色凹凸| 成人必爱视| 综合色影院| 综合久久8| 一个色的综合| 九九色影视| 久久九九re热| 激情网开心网| 五月天久久婷婷| 五月天丁香成人社| 深夜激情网| 精品夜夜澡人妻无码AV| 在线99热| 九九这里只有精品| 五月天激情黄色网址| 97色五月天| 激情五月婷婷网| 五月激情婷婷综合| 天天天综合网| 色色色激情网| 五月丁香AV、伊人业余、性色熟妇| 操操国产| www.com色播五月天| 亚洲色模骚货| 婷婷色情 | 人人爱天天摸摸天天爱| 亚洲99热| 9l视频自拍九色9l视频自拍九色9l社区 | 久久大香免费| 亚洲噜色| 婷婷丁香18| 五月激情婷婷六月丁香| 色色五月丁香| 久久总和99| 开心婷婷中文字幕| 超碰无码318604| 深爱激情五月婷婷| 久久婷婷艹| 涩婷婷五月天| 婷婷五月丁香性爱| 婷婷五月激情欧美大胆视频| 成人无码髙潮喷水A片| 丁香六月婷婷综合色| 看片视频在线免费日产在线看| 一起草Av| 天天久久狠狠色综合| 久热 91| 婷婷五月AV| 五月婷婷 自拍| 欧美人妻一区二区| www.九九婷婷| 99在线免费观看| www.91在线看| 久热69| 色99在线| 色综合色色| 1000部毛片A片免费观看| 五月婷婷综合激情网| 色五月婷婷av| 丁香五月婷婷婷婷欧美综合| www.色五月| www.25五月婷婷| 图片区 小说区 区 亚洲五月| 99成人网站| 亚洲色就是色色色| 99热精地址| 婷婷五月色花丁香社区| 天天做天天爱天天玩| 99热在线资源| 超碰人人干| 色情五月丁香婷婷网| 99在线精品免费视频| 伊人狠狠操| 超碰成人在线免费观看| 丁香婷婷月| 婷婷丁香激情综合色情| 日韩aaa| 欧美视频在线观看噜噜| 丁香婷婷影院| 色噜噜五月天| 亚洲色婷婷| 国产乱子轮XXX农村| 97好吊操| 婷婷丁香社区| 中文av网| 人妻综合网| 丰满少妇猛烈A片免费看观看 | A片试看120分钟做受图片| 日本五月视频| 色吧五月婷婷| 超碰AV在线| 天天天天天天天操| 任你擦免费视频| 五月综合视频| 丁香五月天AV| 日韩九区| 亚洲精品V天堂中文字幕| 亚洲热久久| 亚洲、欧美、国产另类笫二区| 免费做A爰片77777| 丁香五月婷婷在线观看| 欧美久久婷婷| 久久看九九90| 99爽视频| 五月婷婷综合色啪首页| 99热高清在线| 天天色天天| 日日夜夜狠狠操| 日韩操人| 久草视频大香蕉99| 97色在线| 开心五月婷| 婷婷色网站| 五月丁小婷婷激情四射| 婷婷久久五月| 天天天天做夜夜夜夜做| 久久网婷婷| 香蕉久久国产AV一区二区| 久久美女五月天| 婷婷六月丁香久| 草草影院爱爱| 丁香狠狠干| AV操逼网| 五月天激情综合10p| 99九九久久| 玖玖九九9999在线观看视频精品| 色99视频| 久久久噜噜噜久久人妻| 五月婷婷内射网| 热热99爱爱| 亚洲成av人影院| 99福利导航| 另类综合网| 丁香激惜男女| 99色精品| 伊人无码高清| 五月色色色| 婷婷五月天激情在线| 99热成人精品| 大香蕉99热| 婷婷五月激情综合啪啪| 三男玩一女三A片| 99热这里只有精品青草| 久热最新视频| 五月天激情综合在线| 色婷婷超碰| 五月丁香综缴情性爱| 久热超碰| 欧美内射AA| 怡红院视频| 五月花成人网| 婷婷色色网| 99色中文| 欧美日韩国产日本精品四虎网网站物 | 婷婷五月天综合网| 久久精品性爱| 毛片色五月| 五月 丁香 欧美| 六月丁香婷婷综合色播| 9福利性视频欧美| 97人碰人操| 桃色成人网| 婷婷午夜天| 婷婷五月av| 久久综合影院| 五月丁香六月婷婷啪啪| 深爱五月最新网址| 久久久99精品| 欧美激情五月天婷婷| 日韩无码91| 五月丁香最新| 亚洲综合碰| 色综合网页| 亚洲春色奇米影视| 色欲一区二区三区精品A片| 日韩aaaaa| 九九在线视频| 99热超碰| 九九热在线精品视频| 久久婷婷亚洲| 四虎成人精品永久免费AV九九| 中文字幕,综合,91| 五月激情影院| 天天插天天干| 国产亚洲色婷婷久久99精品91| 婷婷五月丁香六月| 亚洲五月天婷婷| 日日操夜夜爽| 人人草人人看| 亚洲成人av在线| 色婷婷五月色| 99热这里只有精品中文字幕| 狠狠插狠狠插| 色五月丁香婷婷| 色色色热| 一区二区乱码视频| 五月天综合在线| 亚洲综合在线视频| 人妻av在线| 这里只有精品视频| 五月天sesese| 婷婷综合久久综合| 超碰人人99| 91人人澡人人爽人人看| 丁香婷婷色情| 婷婷久久久久| 国产亚洲99久久精品| 久月丁香爱婷婷综合| 五月开心六月婷婷在线播放网站| 国产精品国产VA片国产| 人妻精品久久久久久| 天天爱天天做天天操| www.yw色| 97色色色色色| 久久精品国产一区二区三区四区| 欧美综合五月天婷婷tin| 婷婷九九色| 婷婷六月视频| 九九色中文| 五月丁香六月合| 99热精品在线免费观看| 天天色天天爱天天爱天天爱y| 无码操B| 91色操| 婷婷五月天丁香| av中文字幕免费观看| 超碰伊人碰婷婷五月| 4399在线日本A片| 色婷婷丁香五月在线| 日本成人噜噜| 丁香九月久久| 99免费在线视频| 婷婷丁香五月天色色| 99狠狠色| 伊人五月久久| 26uuu精品一区二区| 久久伊人五月天| 婷婷久久色| 五月婷婷激情综合网| 黄网免费看| 亚洲亚洲人成综合网络| 婷婷五月天丁香久久| av色婷婷| 亚洲九九在线| 99热日| 99国产精品白浆在线观看免费| 日韩三级视频一区二区| 99er日韩| 开心五月天激情| 在线不卡视频| 九九热123| 久久综合中文| 人人看人人草人人摸| 久久婷婷国产| 国产69久久久欧美黑人A片| 激情婷婷网| 婷婷六月丁香在线| 五月丁香六月婷婷姐| 天天天天干| 艹天天射| 综合激情五月综合激情五月激情1| 婷婷久久丁香| 婷婷在线播放| 另类图片激情五月| 九九热只有这里精品| 婷婷五月天成人小说| 五月婷视频| 激情色情五月天| 99爱这里只有精品| 婷婷 色 丁香 夜| 大地资源色婷婷视频在线| 伊人婷婷色| 色婷婷香蕉丁丁网| 婷综合| 玖玖热99| 九九这里有精品视频| 婷婷97碰碰| 99噜噜噜在线播放| 五月天色综合| 久久精彩视频99| 人妻av在线| 色情婷| 久热只有这里精品| AA片在线观看视频在线播放| 91九色中文字幕女在线观看| 色色色色色爱| 97婷婷色| 97超碰人人操| 天天爱天天做天天| 久久这里只有精品视频15| 五月丁香久久精品在线观看| 大香蕉久久婷婷精品综合| 人妻日日日| 99热久只有| 婷婷久久五月天丁香| 思思99久久| 91av无码| 思思热99在线| 99ri精品视频在线观看| 一起草av在线观看| 丁香五月激情啪啪| 专区无日本视频高清8| 天天 青草 制服丝袜 在线 | 五月激情婷婷综合| 欧美毛卡| 久久久精品人妻录| 大香蕉在九| 97色色婷婷| 91狠狠色| 玖玖爱综合网| 99热这里只有精品9| 日本久久极品| 久久九九大香蕉电院| 狠狠五月婷婷| tingting五月天亚洲| 99爱在线视频| 天天激情5月天亚洲| 91操操| 九九九热精品| 九色视频91| 久操婷婷| 五月丁香六月婷| 久久色情| 三级黄网站| 久久久精品视频79| 99久久99九九九99九他书对| 久久久大香蕉| 日本啪啪网| 大香蕉五月天婷婷| 午夜大香蕉| 超碰91在线| 婷婷五月av| 人妻精品在线| 婷婷婷婷婷婷婷婷| 中文字幕天天干| 日日夜夜狠狠操| 色婷婷丁香女女| 婷婷五月天激情亚洲小说| 五夜婷婷| 99re这里只有精品视频了| 欧洲色区| 天天开心AV色综合婷婷五月天| 欧美搡BBBBB摔BBBBB| 99在线视频在线观看| 中字幕视频在线永久在线观看免费| 丁香婷婷啪啪啪| 六月色丁香婷婷| WWW,婷婷,COM| 婷婷爱五月天| va中文资源在线观看| 五月丁香本色在线观看| 婷婷综合伊人丁香| 色色网91| 亚洲五月婷婷| 九月激情网| 久草大| 久久这里都是精品免费| 八戒青柠影视剧在线观看| 天天天天天色| 色婷婷aV四虎| 婷婷综合五月| 中文网AV| 草了bav视频在线观看| 色情五月天A片| 九九人人看| 在线中文av| 五月天激情在线视频| 欧美激情五月天婷婷| 国产欧美日韩综合精品一区二区| 色五月激情问网站| 日韩黄色中文字幕| 五月婷婷av| 91爱操| 欧美婷婷色| 五月婷婷,六月激情| 日韩AV中文字幕在线| 色噜噜婷婷| 五月激情视频网| 亚洲激情| 五月婷色色| 五月婷婷深爱六月| 丁香五月婷婷Av| 久久综合九九| 久久这里只有国产视频| 九九99在线| 色欲天天综合网| 色五月婷婷影院| 色色色国产| 五月婷婷亚洲天堂97色婷婷| 99热这里是精品| 青草性爱视频| www色婷婷com| 婷婷伊人网| 五月婷婷在线视频观看| 久久综合性| 97操女视频|