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

ARTICLE DETAIL

資訊詳情

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

基于FPGA的音樂(lè)演奏電路設(shè)計(jì):從分頻原理到Verilog實(shí)現(xiàn)

基于FPGA的音樂(lè)演奏電路設(shè)計(jì):從分頻原理到Verilog實(shí)現(xiàn) 簡(jiǎn)介本資源是一套基于FPGA實(shí)現(xiàn)音樂(lè)自動(dòng)演奏的完整Verilog開(kāi)發(fā)工程面向數(shù)字電路初學(xué)者、嵌入式硬件愛(ài)好者及高校電子類(lèi)課程實(shí)踐者解決從音符編碼、頻率生成到音頻輸出的全流程硬件設(shè)計(jì)問(wèn)題。壓縮包共166個(gè)文件約13.85MB涵蓋核心Verilog源碼如decoder.v、clk_divide.v、music_top.v等、Quartus工程配置文件.qpf、.qsf、.bdf、綜合與仿真報(bào)告.rpt、.vwf、.logdb、IP配置信息.mif、.sof及備份與調(diào)試輔助文件.bak、.hdb、.cdb結(jié)構(gòu)完整便于理解FPGA音樂(lè)系統(tǒng)各模塊協(xié)同邏輯。已有750人學(xué)習(xí)下載資源包含可直接編譯下載的頂層工程、分模塊注釋清晰的RTL代碼、典型音階頻率映射表及基礎(chǔ)DA轉(zhuǎn)換接口說(shuō)明有助于掌握時(shí)序控制、分頻設(shè)計(jì)、ROM查表發(fā)聲等關(guān)鍵技能并為擴(kuò)展多音軌、PWM音量調(diào)節(jié)等進(jìn)階功能提供可靠起點(diǎn)。1. 項(xiàng)目概述一塊FPGA板子能演奏什么做FPGA的第一年我干過(guò)一件特別有成就感的事讓一塊普通的FPGA開(kāi)發(fā)板上電之后從蜂鳴器里完整地放出了《小星星》。說(shuō)實(shí)話(huà)音質(zhì)和早年那種叮咚門(mén)鈴差不多但旁邊不懂硬件的室友聽(tīng)完愣了半天——這玩意兒還能唱歌這個(gè)基于FPGA的音樂(lè)演奏電路項(xiàng)目本質(zhì)上就是做一個(gè)以FPGA為控制核心的音調(diào)發(fā)生器。它能做兩件事一是按預(yù)設(shè)曲譜自動(dòng)播放音樂(lè)二是通過(guò)按鍵當(dāng)作簡(jiǎn)易電子琴來(lái)實(shí)時(shí)演奏。無(wú)論哪種模式核心都是同一件事把樂(lè)譜上的音符翻譯成硬件邏輯能理解的頻率再把頻率轉(zhuǎn)換成驅(qū)動(dòng)揚(yáng)聲器的電信號(hào)。為什么選FPGA來(lái)做這個(gè)看似殺雞用牛刀的項(xiàng)目我自己做完之后體會(huì)很深首先是時(shí)序的可控性音高要求的是高精度的周期性波形FPGA的時(shí)鐘分頻能做到百萬(wàn)分之一量級(jí)的頻率精度其次是并行性學(xué)完這個(gè)項(xiàng)目你會(huì)對(duì)狀態(tài)機(jī)數(shù)據(jù)通路這套FPGA設(shè)計(jì)的核心方法論有實(shí)實(shí)在在的體感而不是停留在課本上。無(wú)論你是剛學(xué)Verilog的初學(xué)者還是想給學(xué)生找一個(gè)綜合性教學(xué)項(xiàng)目的老師這個(gè)題目都值得動(dòng)手做一遍。它涵蓋的模塊拆解、參數(shù)計(jì)算、仿真調(diào)試、上板驗(yàn)證幾乎是一部微型FPGA開(kāi)發(fā)流程的縮影。2. 核心原理數(shù)字世界里怎么描述一個(gè)音符2.1 十二平均律與音符頻率表要生成音樂(lè)得先回答一個(gè)基本問(wèn)題一個(gè)音符在物理上到底是什么答案是振動(dòng)頻率。國(guó)際標(biāo)準(zhǔn)把A4定為440Hz也就是鋼琴上小字一組的la每秒振動(dòng)440次。其他所有音符的頻率都不是拍腦袋定的而是按照十二平均律算出來(lái)的每相鄰兩個(gè)半音之間的頻率比是常數(shù)等于2的十二次方根。[ f(n) 440 \times 2^{\frac{n-69}{12}} ]這里n是MIDI標(biāo)準(zhǔn)里的音符編號(hào)A4對(duì)應(yīng)69。剛才這個(gè)公式說(shuō)的是從A4往上數(shù)n-69個(gè)半音每上升一個(gè)半音頻率乘一次1.059463。拿C4來(lái)算C4比A4低9個(gè)半音所以C4頻率約等于440除以1.059463的9次方算出來(lái)就是261.63Hz。這個(gè)公式可以一直往上套也一直往下套所以整個(gè)十二平均律體系是自洽的任何一個(gè)音高都能用唯一一個(gè)頻率來(lái)描述。我在做查表之前習(xí)慣把要用的音符頻率先算好列成一張表再根據(jù)系統(tǒng)時(shí)鐘算出分頻參數(shù)。下面這張表是C大調(diào)一個(gè)八度里最常見(jiàn)的8個(gè)音以及50MHz系統(tǒng)時(shí)鐘下對(duì)應(yīng)的分頻計(jì)數(shù)參數(shù)后面寫(xiě)代碼會(huì)直接用。音符頻率(Hz)50MHz下分頻半周期計(jì)數(shù)值四舍五入休止符00輸出直接置低C4261.6395553D4293.6685129E4329.6375833F4349.2371581G4392.0063776A4440.0056818B4493.8850619C5523.2547776這張表看著簡(jiǎn)單但其中兩個(gè)細(xì)節(jié)值得說(shuō)清楚。第一分頻計(jì)數(shù)值用的是半周期因?yàn)槲覀兿胼敵龇讲ㄒ葦?shù)半個(gè)周期的時(shí)鐘數(shù)翻轉(zhuǎn)一次電平再數(shù)半個(gè)周期再翻轉(zhuǎn)回來(lái)這樣一個(gè)完整周期才是目標(biāo)頻率。第二四舍五入很重要取整誤差經(jīng)過(guò)人耳放大后一般聽(tīng)不出來(lái)但如果你直接截?cái)嗳≌`差方向是固定的個(gè)別音符的偏差會(huì)比四舍五入明顯。為了這一點(diǎn)差別不值得老老實(shí)實(shí)四舍五入。2.2 三種產(chǎn)生音調(diào)的方法我為什么選了查表分頻確定了目標(biāo)頻率之后下一步就是怎么用數(shù)字電路產(chǎn)生這個(gè)頻率。我自己嘗試過(guò)三種方案這里把它們的思路和取舍都講一下。方案一純分頻計(jì)數(shù)器。最直觀的做法是給每個(gè)音符單獨(dú)寫(xiě)一個(gè)計(jì)數(shù)器各自數(shù)到對(duì)應(yīng)的半周期計(jì)數(shù)值然后翻轉(zhuǎn)輸出。好處是邏輯清晰初學(xué)者一眼就能看懂壞處是代碼冗余8個(gè)音符就得寫(xiě)8個(gè)幾乎一樣的計(jì)數(shù)器模塊如果要擴(kuò)展到多個(gè)八度代碼會(huì)膨脹得非常難受。方案二查表動(dòng)態(tài)裝載分頻器。這是我在最終版里采用的方案。分頻器模塊只有一個(gè)它的計(jì)數(shù)上限不是寫(xiě)死的而是來(lái)自一個(gè)外部的輸入信號(hào)。系統(tǒng)切換音符時(shí)只需要把查表得到的新計(jì)數(shù)值送給分頻器分頻器就會(huì)自動(dòng)按新頻率工作。這樣音符越多只需要擴(kuò)展查表不需要新增硬件邏輯。這個(gè)方案的缺點(diǎn)是需要想清楚切換邊界如果計(jì)數(shù)到一半突然改計(jì)數(shù)值當(dāng)前這個(gè)周期不算完整但對(duì)應(yīng)到聽(tīng)覺(jué)上這一瞬間的過(guò)渡對(duì)人耳來(lái)說(shuō)是無(wú)法感知的所以實(shí)際用起來(lái)完全沒(méi)問(wèn)題。方案三DDS直接數(shù)字頻率合成。DDS的思路和前面兩種完全不同它用一個(gè)累加器來(lái)做相位累加輸出查找表里的波形幅度值。核心公式是相位增量 (目標(biāo)頻率 × 2^N) / 系統(tǒng)時(shí)鐘。以32位累加器、50MHz時(shí)鐘為例A4對(duì)應(yīng)的相位增量約等于37796。DDS的優(yōu)勢(shì)是可以無(wú)縫切換頻率可以做滑音、掃頻、多聲道疊加改頻率只需要改一個(gè)增量值。但代價(jià)是邏輯復(fù)雜還要配波形ROM對(duì)只想播放一首固定曲子的入門(mén)項(xiàng)目來(lái)說(shuō)屬于重量級(jí)武器。我個(gè)人的建議是第一次做這個(gè)項(xiàng)目老老實(shí)實(shí)用方案二把響→準(zhǔn)→唱完整曲這條鏈路跑通等你理解了底層邏輯再回到DDS感受會(huì)完全不一樣。2.3 音頻輸出路蜂鳴器、喇叭還是功放信號(hào)生成出來(lái)了最后還得讓它出聲。這一環(huán)節(jié)的教訓(xùn)特別多我自己在這里栽過(guò)跟頭新手尤其要注意。有源蜂鳴器 vs 無(wú)源蜂鳴器這是第一個(gè)必須搞清楚的坑。有源蜂鳴器內(nèi)部自帶振蕩電路通電就響而且頻率固定你給它外部方波信號(hào)它也不會(huì)變調(diào)它只響應(yīng)通還是斷。這種蜂鳴器只能做報(bào)警器做不了音樂(lè)演奏。無(wú)源蜂鳴器沒(méi)有內(nèi)部振蕩源你給它什么頻率的方波它就發(fā)出什么頻率的聲音這才是我們要的。區(qū)分方法很簡(jiǎn)單看引腳旁邊的絲印或者拿萬(wàn)用表測(cè)電阻無(wú)源的通常電阻都偏小。買(mǎi)之前直接問(wèn)清楚無(wú)源電磁式蜂鳴器不然快遞到了你會(huì)收獲一個(gè)只能嗶——的喇叭。驅(qū)動(dòng)方式也要注意。FPGA引腳的驅(qū)動(dòng)能力有限直接驅(qū)動(dòng)蜂鳴器經(jīng)常出現(xiàn)聲音發(fā)悶、響度不夠的問(wèn)題。我試過(guò)用NPN三極管S8050這類(lèi)做開(kāi)關(guān)放大效果立竿見(jiàn)影。三極管基極接FPGA引腳通過(guò)一個(gè)1kΩ電阻限流集電極接蜂鳴器負(fù)極發(fā)射極接地蜂鳴器正極接電源。FPGA輸出高電平時(shí)三極管導(dǎo)通蜂鳴器通電發(fā)聲輸出低電平時(shí)斷開(kāi)。如果你用的是帶功放的開(kāi)發(fā)板板載喇叭或者音頻接口那更省事FPGA直接輸出方波到功放輸入就行。外部喇叭功放情況也常見(jiàn)比如手頭只有普通8Ω小喇叭就需要LM386或者PAM8403這類(lèi)功放模塊。方波信號(hào)通過(guò)功放放大后驅(qū)動(dòng)喇叭音量比蜂鳴器大得多適合在教室里演示。如果想追求更好的音質(zhì)可以用PWM輸出加RC低通濾波把方波變成近似正弦波但這是后話(huà)了第一版不用追求到這個(gè)程度。3. 實(shí)操實(shí)現(xiàn)從模塊到一首完整的曲子3.1 頂層架構(gòu)與管腳規(guī)劃老規(guī)矩設(shè)計(jì)之前先畫(huà)頂層框圖。我的劃分是四個(gè)模塊按鍵消抖模塊、曲譜播放狀態(tài)機(jī)、音符查表分頻器、音頻輸出驅(qū)動(dòng)。每個(gè)模塊各司其職互相之間只通過(guò)清晰的總線(xiàn)信號(hào)連接。clk_50MHz ──→ 按鍵消抖 ──→ 播放狀態(tài)機(jī) ──→ 音符查表 ──→ 分頻器 ──→ 蜂鳴器 rst_n ──→ 模式切換 按鍵[3:0] ──→ 手動(dòng)演奏輸入管腳規(guī)劃這一環(huán)看似瑣碎但特別容易出錯(cuò)。開(kāi)發(fā)板上的物理引腳五花八門(mén)蜂鳴器可能連在某個(gè)特定引腳上按鍵分布在另一組引腳。務(wù)必先在原理圖或者板卡手冊(cè)里找到蜂鳴器、按鍵對(duì)應(yīng)的FPGA引腳編號(hào)再寫(xiě)約束文件。我之前見(jiàn)過(guò)有同學(xué)憑感覺(jué)寫(xiě)引腳號(hào)結(jié)果綜合下載后沒(méi)反應(yīng)查了半天才發(fā)現(xiàn)引腳約束根本不對(duì)。另外如果蜂鳴器是負(fù)邏輯驅(qū)動(dòng)低電平響還要在代碼里多取一次反這個(gè)細(xì)節(jié)在約束文件旁邊順手記一筆免得忘了。3.2 音符查表與分頻器實(shí)現(xiàn)這里把最終版的Verilog貼出來(lái)代碼不復(fù)雜但包含幾個(gè)容易踩坑的點(diǎn)我會(huì)逐個(gè)說(shuō)明。首先是音符查表模塊。它就是一個(gè)純組合邏輯case輸入音符索引輸出對(duì)應(yīng)的半周期計(jì)數(shù)值module note_lut ( input wire [4:0] note_idx, // 0休止, 1C4, 2D4 ... 8C5 output reg [16:0] half_period ); always (*) begin case (note_idx) 5d0: half_period 17d0; // 休止 5d1: half_period 17d95553; // C4 261.63Hz 5d2: half_period 17d85129; // D4 293.66Hz 5d3: half_period 17d75833; // E4 329.63Hz 5d4: half_period 17d71581; // F4 349.23Hz 5d5: half_period 17d63776; // G4 392.00Hz 5d6: half_period 17d56818; // A4 440.00Hz 5d7: half_period 17d50619; // B4 493.88Hz 5d8: half_period 17d47776; // C5 523.25Hz default: half_period 17d0; // 未定義音高默認(rèn)休止 endcase end endmodule然后是分頻器模塊。它接收查表過(guò)來(lái)的半周期計(jì)數(shù)值輸出方波module tone_gen ( input wire clk, input wire rst_n, input wire [16:0] half_period, // 0 表示休止 output reg tone ); reg [16:0] cnt; always (posedge clk or negedge rst_n) begin if (!rst_n) begin cnt 17d0; tone 1b0; end else if (half_period 17d0) begin cnt 17d0; tone 1b0; // 休止符輸出低電平 end else if (cnt half_period - 1) begin cnt 17d0; tone ~tone; // 到半周期翻轉(zhuǎn)一次 end else begin cnt cnt 1b1; end end endmodule這個(gè)模塊有兩個(gè)細(xì)節(jié)值得注意。第一counter的位寬選17位是因?yàn)樽畲笥?jì)數(shù)值95553對(duì)應(yīng)的二進(jìn)制需要17位如果位寬不夠綜合工具不會(huì)報(bào)錯(cuò)但計(jì)數(shù)器會(huì)提前回繞輸出的頻率就完全錯(cuò)了。保險(xiǎn)的做法是用系統(tǒng)函數(shù)$clog2計(jì)算localparam WIDTH $clog2(MAX_CNT 1);一勞永逸。第二休止符的處理是獨(dú)立的因?yàn)闊o(wú)聲和堵住嘴的方波是兩回事把tone固定拉低才是真正的休止。3.3 節(jié)拍控制與曲譜狀態(tài)機(jī)有了音高下一步是節(jié)奏。我一直覺(jué)得能響不算成功能按節(jié)拍把一首曲子彈完才算。節(jié)拍的本質(zhì)就是每個(gè)音符響多久這同樣需要一個(gè)計(jì)數(shù)器。以120BPM每分鐘120拍為例一拍持續(xù)0.5秒在50MHz時(shí)鐘下就是25000000個(gè)周期。我定義一個(gè)beat_cnt計(jì)數(shù)器每數(shù)到2500萬(wàn)就認(rèn)為過(guò)去了1拍。曲譜里每個(gè)音符的時(shí)長(zhǎng)用拍數(shù)表示比如四分音符是1拍八分音符是半拍二分音符是2拍。曲譜怎么存我用的方法是把一首曲子切成一個(gè)個(gè)步驟每個(gè)步驟包含音符索引和持續(xù)拍數(shù)用一個(gè)case語(yǔ)句描述播放狀態(tài)機(jī)逐條讀取。以《小星星》第一句為例簡(jiǎn)譜是 1 1 5 5 6 6 5后面接休止對(duì)應(yīng)的狀態(tài)機(jī)片段如下localparam NOTE_C4 5d1; localparam NOTE_G4 5d5; localparam NOTE_A4 5d6; localparam REST 5d0; // 每個(gè) step 用 {duration(拍數(shù)), note_idx} 表示 // 以 4 拍為一小節(jié)這里只示意第一句 always (posedge clk or negedge rst_n) begin if (!rst_n) begin step_idx 0; beat_cnt 0; note_idx REST; state IDLE; end else begin case (state) IDLE: begin if (start_flag) begin state PLAY; step_idx 0; beat_cnt 0; end end PLAY: begin // 讀取當(dāng)前step的音符 step_note_sel(step_idx); // 設(shè)置 note_idx if (beat_cnt BEAT_CNT_MAX - 1) begin beat_cnt 0; // 當(dāng)前拍結(jié)束進(jìn)入下一個(gè)step if (step_idx LAST_STEP) begin state DONE; // 播完 end else begin step_idx step_idx 1b1; end end else begin beat_cnt beat_cnt 1b1; end end // ... DONE 狀態(tài)回到 IDLE endcase end end這里我把半拍的處理方式說(shuō)一下。如果曲子里有八分音符簡(jiǎn)單起見(jiàn)可以全部用最小節(jié)拍單位比如半拍作基準(zhǔn)四分音符記作2八分音符記作1二分音符記作4。這樣整個(gè)曲譜狀態(tài)機(jī)只需要一個(gè)統(tǒng)一的拍號(hào)邏輯不用為半拍能不能整除操心。3.4 按鍵消抖與手動(dòng)演奏模式自動(dòng)播放只是聽(tīng)手動(dòng)演奏才是玩。這需要把按鍵接進(jìn)來(lái)每個(gè)按鍵代表一個(gè)音符按下就發(fā)對(duì)應(yīng)的頻率松開(kāi)就回到休止。機(jī)械按鍵有個(gè)典型毛病按下和松開(kāi)的瞬間觸點(diǎn)會(huì)彈跳持續(xù)5~20ms期間電平忽高忽低。如果不做消抖你按一次按鍵FPGA可能看到的是七八個(gè)一次按壓演奏出來(lái)的就是一團(tuán)亂音。消抖的原理也不復(fù)雜連續(xù)采樣按鍵電平只有當(dāng)電平穩(wěn)定持續(xù)一段時(shí)間我習(xí)慣用20ms才認(rèn)為按鍵狀態(tài)真正變化了。在50MHz下20ms是100萬(wàn)個(gè)時(shí)鐘周期需要一個(gè)20位的計(jì)數(shù)器module key_debounce #( parameter CNT_MAX 1_000_000 // 20ms 50MHz )( input wire clk, input wire key_in, output wire key_pressed_pulse // 按下瞬間的單脈沖 ); reg [19:0] cnt; reg key_stable, key_prev; always (posedge clk) begin if (key_in ! key_stable) begin // 輸入與穩(wěn)定值不一致開(kāi)始計(jì)數(shù) if (cnt CNT_MAX) begin cnt 20d0; key_stable key_in; end else begin cnt cnt 1b1; end end else begin cnt 20d0; end end // 邊沿檢測(cè)輸出一個(gè)時(shí)鐘周期的脈沖 always (posedge clk) begin key_prev key_stable; end assign key_pressed_pulse key_stable ~key_prev; endmodule另一個(gè)細(xì)節(jié)是手動(dòng)演奏模式和自動(dòng)播放模式需要互斥。我的做法是一個(gè)模式選擇鍵每按一次在兩種模式之間切換。切到手動(dòng)模式時(shí)自動(dòng)播放狀態(tài)機(jī)進(jìn)入IDLE播放用音符全部置為休止避免兩個(gè)信號(hào)同時(shí)在驅(qū)動(dòng)蜂鳴器。同一條信號(hào)線(xiàn)被兩個(gè)模塊同時(shí)賦值在FPGA里是致命的Multiple Driver錯(cuò)誤這個(gè)后面排查章節(jié)還會(huì)說(shuō)。3.5 上板調(diào)試流程最后說(shuō)說(shuō)從寫(xiě)完代碼到聽(tīng)到聲音的調(diào)試順序。我的習(xí)慣是嚴(yán)格按下面四步走每步都驗(yàn)證通過(guò)再進(jìn)下一步避免問(wèn)題疊加后無(wú)從排查。第一步仿真驗(yàn)證。不用寫(xiě)太復(fù)雜的testbench就測(cè)一件最重要的事給一個(gè)音符索引比如C4看仿真波形里tone信號(hào)的周期是不是約等于1/261.63秒也就是3.82ms。這一步能排除大部分邏輯錯(cuò)誤。第二步單音驗(yàn)證。把代碼燒進(jìn)板子讓蜂鳴器持續(xù)播放一個(gè)固定的音符比如A4。用耳朵聽(tīng)對(duì)比標(biāo)準(zhǔn)音叉或手機(jī)調(diào)音軟件確認(rèn)音高基本準(zhǔn)確。如果有示波器或者邏輯分析儀直接量FPGA引腳出的頻率更靠譜。第三步播放全曲。把狀態(tài)機(jī)換成完整的曲譜聽(tīng)整首曲子的節(jié)奏是否自然、音符切換是否有突兀的雜音。第四步加入按鍵模式和模式切換。到這一步再處理的才是交互層面的問(wèn)題比如消抖時(shí)長(zhǎng)是否需要調(diào)整、多個(gè)按鍵同時(shí)按下的優(yōu)先級(jí)怎么定。我自己強(qiáng)烈建議不要跳步。很多同學(xué)急性子一上來(lái)就整曲播放加按鍵模式一起上結(jié)果上板后又是無(wú)聲又是亂音根本分不清是分頻的錯(cuò)還是節(jié)拍的錯(cuò)。踏實(shí)走完四步反而最快。4. 常見(jiàn)問(wèn)題與排查技巧實(shí)錄這個(gè)項(xiàng)目我做了不止一遍也幫同學(xué)排查過(guò)無(wú)數(shù)回下面這幾個(gè)問(wèn)題出現(xiàn)的頻率最高我按癥狀—原因—解法的格式整理成速查表。癥狀大概率原因排查手法上電完全無(wú)聲用了有源蜂鳴器只響應(yīng)通斷換無(wú)源蜂鳴器或先單獨(dú)給不同頻率方波測(cè)試上電完全無(wú)聲引腳約束錯(cuò)誤信號(hào)沒(méi)送到蜂鳴器腳看原理圖核對(duì)約束用ILA或邏輯分析儀抓引腳上電完全無(wú)聲使能信號(hào)沒(méi)拉高播放狀態(tài)機(jī)停在IDLE加一個(gè)調(diào)試LED輸出觀察狀態(tài)是否流轉(zhuǎn)有聲音但音高偏低系統(tǒng)時(shí)鐘實(shí)際不是50MHz查板卡手冊(cè)確認(rèn)時(shí)鐘頻率重新計(jì)算分頻參數(shù)有聲音但音偏高計(jì)數(shù)器位寬不夠提前回繞檢查counter聲明位寬用$clog2計(jì)算按一次按鍵出好幾個(gè)音消抖時(shí)間太短或沒(méi)做消抖把消抖計(jì)數(shù)器加大到20ms確認(rèn)輸出是單脈沖自動(dòng)播放和手動(dòng)模式互相干擾兩個(gè)模塊同時(shí)驅(qū)動(dòng)蜂鳴器信號(hào)用模式信號(hào)與門(mén)隔離確保任一時(shí)刻只有一路有效綜合報(bào)Multiple Driver同一個(gè)reg在多個(gè)always塊里賦值重構(gòu)代碼把邏輯合并到一個(gè)always塊或拆成獨(dú)立信號(hào)4.1 上電無(wú)聲先分清三類(lèi)原因無(wú)聲是新手遇到最多的攔路虎但好消息是它的原因就三大類(lèi)硬件選型、管腳連接、邏輯使能。硬件選型在有源/無(wú)源蜂鳴器這一關(guān)就能卡住一批人我前面已經(jīng)強(qiáng)調(diào)過(guò)了。管腳連接排錯(cuò)的思路是信號(hào)到底有沒(méi)有到引腳用開(kāi)發(fā)板自帶的LED做驗(yàn)證很有效——把驅(qū)動(dòng)蜂鳴器的信號(hào)同時(shí)接一個(gè)LED如果LED有規(guī)律閃爍而蜂鳴器不響說(shuō)明信號(hào)到了引腳問(wèn)題在蜂鳴器驅(qū)動(dòng)電路如果LED也不閃那就是邏輯層面根本沒(méi)輸出回頭查狀態(tài)機(jī)和使能信號(hào)。4.2 音準(zhǔn)不對(duì)幾乎都是分頻比的問(wèn)題音準(zhǔn)不對(duì)十有八九是分頻參數(shù)和實(shí)際系統(tǒng)時(shí)鐘不匹配。最常見(jiàn)的情況是初學(xué)者以為所有開(kāi)發(fā)板都是50MHz結(jié)果板子是25MHz或100MHz一上來(lái)頻率就差一倍整個(gè)曲子聽(tīng)起來(lái)像開(kāi)了倍速或慢放。還有的情況是計(jì)數(shù)器比較條件寫(xiě)錯(cuò)cnt half_period - 1和cnt half_period - 1區(qū)別在于前者永遠(yuǎn)不會(huì)漏掉最大值后者如果half_period變化而cnt還沒(méi)來(lái)得及歸零可能永遠(yuǎn)等不到相等那一刻。我用的是穩(wěn)妥。4.3 按鈕失控與亂音消抖和狀態(tài)機(jī)邊界按鍵問(wèn)題大多不是消抖不夠而是沒(méi)有輸出單脈沖。很多人寫(xiě)完消抖模塊直接把穩(wěn)定的電平信號(hào)接到播放邏輯上結(jié)果按下期間狀態(tài)機(jī)一直在觸發(fā)自然就亂了。記得在消抖模塊后面加一個(gè)上升沿檢測(cè)輸出一個(gè)時(shí)鐘周期的脈沖。另外手動(dòng)演奏模式下如果有多個(gè)按鍵同時(shí)按下我的處理是給按鍵編號(hào)設(shè)定優(yōu)先級(jí)比如低編號(hào)的優(yōu)先這樣至少在邏輯上可預(yù)期不至于兩個(gè)音符信號(hào)的邊沿打架。狀態(tài)機(jī)的邊界條件也要檢查播完最后一拍能不能正確回到IDLERESET按下時(shí)能不能從任意狀態(tài)回到初始這些邊界問(wèn)題在仿真里不一定會(huì)暴露上板后卻會(huì)變成偶爾卡死的玄學(xué)問(wèn)題。4.4 綜合時(shí)序報(bào)錯(cuò)的排查最后一個(gè)常見(jiàn)問(wèn)題是綜合和實(shí)現(xiàn)階段的報(bào)錯(cuò)。Multiple Driver是我見(jiàn)過(guò)最多的錯(cuò)誤它的含義是一個(gè)信號(hào)wire或reg被多個(gè)always塊或者assign語(yǔ)句賦值。FPGA里每個(gè)信號(hào)只能有一個(gè)驅(qū)動(dòng)源如果你在播放狀態(tài)機(jī)里給note_idx賦值又在手動(dòng)模式邏輯里給note_idx賦值綜合工具就會(huì)報(bào)錯(cuò)。解法是把這兩段邏輯合并到一個(gè)always塊用模式信號(hào)做分支或者把信號(hào)拆成兩個(gè)內(nèi)部信號(hào)最后用一個(gè)三目選擇器合并。另一個(gè)高頻問(wèn)題是計(jì)數(shù)器位寬不夠綜合工具不會(huì)報(bào)錯(cuò)但行為就是不對(duì)所以我一再?gòu)?qiáng)調(diào)用$clog2算位寬別靠目測(cè)。5. 擴(kuò)展方向與幾點(diǎn)個(gè)人心得5.1 從單聲部到多聲部DDS帶來(lái)的升級(jí)空間做完上面這些你已經(jīng)擁有一個(gè)能自動(dòng)播放、能按鍵演奏的單音音樂(lè)電路了。如果還想往前走我建議的下一站是把單音升級(jí)成多聲部和弦。這時(shí)候前面提到的DDS方案就派上用場(chǎng)了一個(gè)NCO產(chǎn)生一個(gè)聲部?jī)蓚€(gè)NCO同時(shí)工作各自產(chǎn)生對(duì)應(yīng)音高的方波/正弦波然后在輸出端做加法就得到了雙音效果。配合相位累加器改一個(gè)增量值就能無(wú)縫切換頻率的特性你還可以做滑音、顫音這些音樂(lè)效果。具體來(lái)說(shuō)32位DDS累加器、50MHz時(shí)鐘下生成一個(gè)440Hz的A4信號(hào)相位增量是(440 × 2^32) / 50000000 ≈ 37796。想生成兩個(gè)聲部就做兩個(gè)相位累加器增量分別按各自音高算好輸出相加后經(jīng)過(guò)脈沖密度調(diào)制或者PWM送給功放。當(dāng)然輸出加法要注意幅度兩個(gè)信號(hào)相加可能溢出需要做截位或者縮放。這一步做通之后再去研究用ROM存波形、做包絡(luò)控制就是一條清晰的學(xué)習(xí)路徑。5.2 我踩過(guò)的坑與最終建議最后說(shuō)幾句掏心窩子的話(huà)。這個(gè)項(xiàng)目我前前后后做過(guò)三次每次都有新收獲也每次都會(huì)踩不同的坑。第一次栽在有源蜂鳴器上買(mǎi)回來(lái)怎么調(diào)都不變調(diào)最后才意識(shí)到硬件選型就錯(cuò)了。第二次在引腳約束上栽了跟頭信號(hào)邏輯沒(méi)問(wèn)題但物理上沒(méi)送到蜂鳴器白查了好幾天代碼。最讓我印象深刻的還是先仿真后上板這條鐵律——仿真里波形對(duì)了上板才敢保證大概率對(duì)仿真里稀里糊涂上板面對(duì)的就只能是玄學(xué)。如果讓我給正在做或者準(zhǔn)備做這個(gè)項(xiàng)目的人一條最核心的建議那就是第一版一定用最簡(jiǎn)單的結(jié)構(gòu)查表分頻也好單音播放也好把鏈路完整跑通。先讓它響再讓它準(zhǔn)最后再談讓它好聽(tīng)。任何一步跨過(guò)去都會(huì)在后面的環(huán)節(jié)花幾倍的時(shí)間來(lái)還債。這個(gè)項(xiàng)目的可擴(kuò)展空間其實(shí)比想象中大得多。曲譜存在ROM里之后換歌只是改數(shù)據(jù)文件的事按鍵加多了就是一臺(tái)小型電子琴再多研究一步I2S協(xié)議和DAC就能輸出真正的立體聲音樂(lè)。從一個(gè)蜂鳴器到一套完整的數(shù)字音頻系統(tǒng)中間缺的每一塊知識(shí)都會(huì)在下一步擴(kuò)展中逼著你補(bǔ)上。而這恰恰是FPGA學(xué)習(xí)最迷人的地方。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
中文字幕成| 婷婷少妇激情| 九九热黄色| 深夜婷婷五月丁香| 97人人干| 任你操精品免费| 嫩草AV久久伊人妇女超级A| 欧美3AaAa大片| 婷婷五月天成人| 电影91久久久| 国产精品第一国产精品| 天天综合在线网| 久久er99热精品一区二区| 五月丁香六月婷婷在线小说视频| 九九九九毛片| 激情丁香六月| 91激情五月开心| 99热亚洲| 亚洲乱码日产精品BD| 天堂综合久久 | 婷婷成年人免费视频| 亚洲成人综合在线| 午夜天堂啪啪| 丁香五月婷婷黑人妻黄色电影院| 操人久久| 色婷婷综合久久久久| 草榴成人影片| 五月天久久小说| 国产亚洲精品久久久久久牛牛| 狠狠色噜噜狠狠狠888| 2025最新亚洲激情在线| 九九操综合网| 婷婷五月天论坛| 婷婷色在线| 婷婷娌伦网| 丁香影院五月综合| 怡红院成人AV| 久超超碰| 激情综合婷婷五月| 日韩六十路91性交电影| 深爱丁香激情| 夜丁香五月婷婷| 亚洲综合五月天| 久久怡红院| 丁香五月天啪啪激情综和网 | 色五月激情婷婷| 伊人五月天| 日日天天干| 五月婷视屏在线观看| 天天爽夜夜爽天天爽夜夜爽| 日日操日日撸| 9l视频自拍九色9l视频自拍九色9l社区 | 五月丁香六月综合基地| 激情五月综合网最新| 97热在线精品| 婷婷五月天激情偷拍| 开心深爱五月天| 99久扒热| 亚洲精品性色| 九九精品热播| 日日日日日| 色情综合| 九九精品婷| 黄色aa观看aaguochan| 97搞在线| 色综合中文色综合网| 欧美激情综合色综合啪啪五月| 久热99热| 五月丁香六月婷婷a v| 婷婷五月天激情综合| 色婷婷丁香五月天在线视频 | 五月草影视| 欧美性爱5月天天天看| 五月天夜夜爱夜夜操| 天天久久综合| 91视频一起草| 亚洲乱码日产精品BD| 99色激| 五月婷婷伦理| 偷拍91九色| 婷婷成人五月天成人文学| 91丨九色丨国产打屁股| 综合久久六月| 色情丁香五月天| 另类图片婷婷五月天| 五月丁香AV在线| 夜夜爽天天爽| 欧美性猛交99久久久久99按摩| 奇米色大香蕉| 亚洲狠狠婷婷综合久久久| 日本va视频| 久久这里只精品| 97中文在线| 东京热五月婷婷| 丁香六月| 婷婷激情五月综合| 密着浓厚中出乚交尾GvG935| 操久久网| 五月婷婷日| 天天干天天拍| 婷婷香香五月| 91人人操人人| 成人在线日韩欧美| 婷婷丁香五月高清| 久久视9精| 伊人婷婷综合| 综合网啪| 97久操| 国产精品在线视频| 激情婷婷五月天| 一级性爱大片| 99久久玖玖| 99热在线播放| 九九热超碰| 天天日天天爱天天噪| 天天操综合网| 九九九这里只有精品| 丁香五月乱中文字幕| 激情五月天婷婷五月天| 丁香花色色网| 五月香婷婷| 激情婷婷九月| 狠狠综合网| 丁香婷婷老熟女综合网| 狠狠色综合777| 欧洲亚洲免费视频9| 久9久视频精品| 婷婷色网| 狠狠狠狠狠| 五月丁香六月在线欧美| 99亚州综合精品成人网| 婷婷色激情网| 精品一二三区久久AAA片| 久久人人超| 亚洲综合五月| 大香蕉网站,大香蕉综合| 久色五月| 色99免费视频中文| 亚洲99在线| 婷婷丁香五月天操逼| 婷婷之六月丁香| 色色五月婷| 九月婷婷久久| 国产乱妇无乱码大黄AA片| 久久久久亚洲AV成人无码电影| 婷婷五月激情视频| 久人操| 激情五月天婷婷五月天| 狼人狠狠操| 五月精品| 欧美色图45678| 色婷婷色99国产综合精品| 好色婷婷| 成人丁香| 色婷婷六月天在线| 亚洲秘 无码一区二区三区妃光/1| 色婷婷激情五月天| 91互操| 六月婷婷色色色| 久Se视频在线观看| 久久99综合| 人人操Av| 亚洲性爱AV| 韩国激情五月天综合网| 婷婷丁香五月天哟啪| 五月丁香偷拍| 五月天影院| 色情激情五月婷婷| 婷婷视频网| 婷婷五月丁香91| 九九久久精品| 婷婷五月六月激情| 亚洲啪啪网| 色狠狠综合| 天天射影| 天花AV无码| 欧美超级视频97| 久操婷婷| 五月天大香蕉婷| 激情六月综合| 婷婷五月天改成什么了| 色情激情五月婷婷| 欧美这里只有精品| 婷婷色色欧美| 老司机午夜福利视频金瓶梅| bukadeavzaixian| 日韩人妻无码精品| 丁香六月成人网| 欧美人人超级碰| 91九色网| 很很干夜夜干| 激情播丁香| 另类国产欧美视频| 国产精品色色| 日日日日日| www.粉嫩av.com| 亚洲午夜成人av电影网| 丁香五月婷婷激情网| 思思99精品视频在线观看| 91伦| 日本综合99| 99riAv1国产在线观看| 立川无码av| 久久九九99视频| 丁香五月天电影| 天天想夜夜爽天天爽| 精品婷婷丁香五| 色色色色色色色色五月先| 亚洲天天免费| 色五月婷色彩免播放器| 五月婷激情影院| 亚洲V国产V欧美V久久久久久| 久久ab| 久久这里只有精彩| 99久在线精品| 99ri精品在线| 91九色无码内射| 五月丁香影院| 国产免费AV在线| 色情五月天婷婷| 国产亚洲在线观看| 欧美日韩国产一区| 色综合久久88色综合天天看| 九九九九成人| 91色色色视频| www.婷婷com| 另类图片五月天| 久热这里只有| 人人播| 五月婷婷开心六月激情小说| 色五月av伊人| 激情五月综亚网| 国产 码在线成人网站| 五月婷免费视频| 国产黄大片在线观看画质优化| 五月丁香福利| 色99网站| 五月婷婷五月天| 亚洲免费av观看| 丁香五月综合| 婷婷五月天成人| 久久婷婷影院| 色五月欧美| 久久精彩免费视频| 国产精品国产VA片国产| 97干婷婷五月天| 青青草性爱视频| 国产精品人妻欲求不满| 五月婷婷丁香成人网| 午夜丁香| 六月米奇色综合| 秋霞三级影视资源| 丁香婷在线| 99色热视频| 天天粽合合合合| 第二色AⅤ| 人人爽人人射-美女久久久久久久久久-成人AV | 99热这里是精品| 五月丁香久久呀| 99久久97久久欧美综合网| 成人 九九九九| OUMEIRIHANCHENGREN| 99热黄| 六月丁香AV| 九九九九九九九九九九九九九九九九九九九在线视频 | 婷婷 伊人 久久| 五月天天综合| 五月天激情小说| 狠狠舔| 秋霞电影一级黄| 激情六月丁香综合| www夜夜操comwww| 日日噜狠狠色综合久| 99热这里只有精品86| 熟女激情五月天| 深爱激情丁香| 狠狠狠狠狠干| 91碰操| 综合玖玖偷拍| 99热久久这里只有精品| 国产玖玖资源| 色色99| 97在线观视频免费观看| 一操久久| 天天婷婷操| 天天天天做夜夜夜夜做| 久久婷婷国产| 亚洲网站观看视频| 色综合九九色综合88| 丁香五月色| ji'qing'luan'ren'lun| 五月天另类激情在线| a网站免费观看| 五月婷婷影院| 五月婷婷综合久久| 五月激情丁香| 伊人五月天在线| 成人做爰黄A片免费看直播室男男 A片试看120分钟做受图片 | 97九色| 九九热精品| 99情色五月天| 婷婷丁香五月视频| 久久新地址| 国外亚洲成AV人片在线观看| 伊人网碰碰| 99热综合在线观看| 色色五月天激情| 五月天大香蕉av| 久久婷婷五月天激情四射| 黄色大片又大粗又爽| 激情五月,激情综合网| 任你草| 拍色综合| 99.色| 久久婷婷五月天| 婷婷黄色网| 五月婷婷激情四季| 亚洲天堂99| 97人人操人人拍| 99色综合网| 色五月婷婷亚洲最大| 亚洲欧洲中文日韩久久AV乱码| 狠狠色丁香久久| 五月天激情婷婷五月天久久| 久久99综合| 亚洲乱码在线观看| 五月丁香五月婷婷| 9色免费网| 六月丁香射婷婷欧美色图片| 天天做天天爱| 色综合久| 亚洲色五月天| 五月婷婷激情刺激| 色色色99| 99精品在线播放| 色婷另类| 久操综合| 婷婷五月天AV| 国产精品久久久99视频| 激情五月婷婷视频一区二区三区| 99热精品在线观看| 久久天天| 亚洲丁香五月综合| 99这里只有精品| 99热综合网| 五月天久久网站| 丁香五月婷婷高清| 直接看的av| 91操在线| 狠狠狠狠狠干| 久久3p| 丁香婷婷激情五月天无毒不卡蜜桃| 丰满人妻妇伦又伦精品国产| 激情狠狠丁香月| 亚洲国产精品二二三三区| 久久永久网址| 亚洲精品又粗又大又爽A片| 年轻的妺妺伦理HD中文| 开心五月色婷婷综合开心网| 五月天婷婷激情四射综合| 五月激情基地| 婷婷丁香五月基地| 天天做天天爽| 久久久18| 五月日韩中文字幕| 综合久久五月天| 91精品啪| 国产欧洲欧洲精品久久| 五月天伊人日日噜影片AV| 极品少妇XXXX精品少妇偷拍| WWW.开心五月天.COM| 伊人久久丁香五月91| 激情五月www| 亚洲成人日韩无码精品| 91九色熟女| 久热伊人| 亚洲丁香五冃97色| 激情五月色婷婷| 26UUU欧美激情一区二区| 午夜九九九九九九九九九九九九九| 日韩精品一区二区亚洲AV观看| 亚洲熟女色| 九九热只有这里精品| 亚洲中文字幕在线观看| 十月色综合| 色五月婷婷综合在线| 色情婷婷| 天天摸色吧天天摸色吧| 97成人丁香婷婷| 成人片黄网站色大片免费毛片| 国产午夜精品一区二区三区嫩草| 热的无码综合视频| 97干网站| 婷婷五月天 丁香五月天 裸体| 五月丁香六月成人| 婷婷色色狠狠| 99热色婷婷| 日本狠狠色| 99热这里只有的精品视| 久久久www| 黄色热99| 天天婷婷综合亚洲亚洲| 可以直接看的av| 色综合99| 五月婷久久草| 九九九九精品精| www.日本91| 色之综合网| 加勒比久热| 五月丁香啪啪网| 五月六月激情| 婷婷色五月天第7色| 五月天婷婷色色首页| 97资源碰碰| 人人干AV| 五月天天丁香婷婷在线中| 91丨九色丨老熟女激情| 强壮公让我夜夜高潮A片视频| 九一99| 婷婷综合久久| 丁香六月狠狠干| 婷婷97色| 亚洲视频一区| 日韩无码色色| 91婷婷搞| 少妇人妻人伦A片| 伊人五月久久| 六月丁香五月激情亚洲AV| 欧美色色日韩| 九九中文色色| 丁香五月婷婷国产av| 亚洲Va成人| 激情五月天.色网| 成人无码精品1区2区3区免费看| 色情五月天丁香社区| 夜夜做夜夜愛| 丁香五月网在线观看| 人妻射精AV| 99日本在线| 一区二区三区四区牛| 国产欧美精品AAAAAA片| 风流少妇A片一区二区蜜桃| 人人摸人人操人人爽| 开心五月婷婷婷美女| 五月婷婷深爱六月| 色五月丁香在线| 狠狠88综合久久久久噜噜噜| aaaaa不卡| 成人欧美日韩| 九九激情综合| 欧美激情综合| 久久这里精彩免费在线观看| 四色永久成人网站| 激情另类综合| site:hcxsz888.com| 国产精品99久久久久久猫咪| 色色爽爽天天| 久久婷婷六月天| www.99热日韩.com| 99这里的视频都是精品| 一本道综合网| 五月婷婷欲色| 这里只有精品在线视频在线观看| 日本成人噜噜噜| 丁香五月婷婷在线观看| 婷婷五月色| 影音先锋天天日| 99色在线观看视频| 五月色网| 狠狠穞A片一區二區三區| 91热爆在线| 99热亚洲| 婷婷综合玖玖五月| 九九精彩久久| 91狠狠综合久久| 日韩人妻在线观看| 色婷婷基地| 日本猛少妇色XXXXX猛叫| 风流少妇A片一区二区蜜桃| 五月色综合| 99视频在线观看地址| 91碰碰视频在线观看| 碰久久精品w| 色五月婷婷1| 婷婷性爱网| 激情另类综合| 丁香激情综合| 99无码超碰| 亚洲激情AV| 久久九九热38| 久久在这里99| 777丁香六月青青草婷婷综合久月| 91精品国产综合久久密臀| 深爱开心激情| 99热精品在线观看| 91亚洲免费片| 色之综合网| 五月精品免费XXX| 天天爱天天狠天天透| 99精色| 欧美三级巜人妻互换| 亚洲第一影院高清无码网站| 五月丁香六月久久| 五月婷婷影| 婷婷久久网| 性一交一乱一交A片久| 热久久婷婷| 色九月| 丁香婷婷在线| 久久激情网| 91在线资源| 成人在线网址| 色爱亚洲| 国产麻豆视频| 99热在线播放| 99精品在线| 日产精品一线二线三线芒果| 99毛片| 5月婷婷激情6月| 91肏| 免费V片在线| 天天摸.天天mo| 婷婷深爱五月天| 久久久久久久人妻| 99九九99九九九视频精彩| 丰满人妻一区三区三区| 精品人妻一区二区| 啪啪婷婷五月天激情| 亚洲五月天狠狠| 天天肏视频| 久热精品9999| 欧美另类五月激情| 久9热| 久草性爱| 狠狠爱婷婷丁香| 九热网站| 五月婷婷六月奇米网丁香| 激情综合色| 五月婷婷六月丁香首页| 毛片毛片毛片毛片| 日韩色色色色| 婷婷五月俺要去| 久久久这里有精品| 99操逼视频| 五月丁香偷拍| 婷婷色六月| 岛国av电影网站| 无码人妻AV久久久一区二区三区| 天天色天天爽| 色婷婷香蕉| 丁香九月激情| 九九这里都是精品| 色婷婷色99国产综合精品| 影音先锋偷偷色男人站| 黄色一极大片| 色播播五月天| 久9精品| 26uuu亚洲| 久久丁香婷婷色情综合| 蜜桃五月天| 粉嫩AV久久一区二区三区| 996er在线观看| 79精品视频在线观看,| 婷婷的99视频网站| 狠狠干综合| 啪啪啪综合网| 99视频自拍| 六月婷婷六月天天在线免费| 拍真实国产伦偷精品| 秋霞学生妹一二级| 91紱請| 天天爽综合| 色五月在线综合| 欧美成人性爱网| 日日噜噜久久婷婷五月天| 天天插天天插天天插天天插| 亚洲在线成人| 欧美日韩成人在线观看| 久草 天堂| 婷婷午夜| 五月婷免费视频久久久| 亚洲欧美综合7777色亭亭| 丁香五月婷婷在线视频| 97香蕉人人在线观看| 五月天婷婷小说| 超碰男人色| 无码操B| 五月婷婷视频啪啪美女| 热99热久| 久久久999精品| 性五月激情| 亚洲精品又粗又大又爽A片| 天天天摸夜夜夜玩| 99婷婷国产最新视频| 婷婷五月天亚洲| 日本久久天堂| 九月婷婷丁香| 97色女人在线| 天天干天天拍| AV性爱网| 国产精品久久在线观看技巧| 亚洲欧美日韩另类| 99精品免费| 亚州AV超碰人人操| 五月婷婷六月丁香综合| 在线看九一V图片| 日本婷婷| 五月的婷婷六月丁香| 91干在线视频| 天天操综合网| 色婷久久| 婷婷色播综合五月| 久久99综合网| 久草丁香婷婷1024| www激情| 五月婷婷网站| 另类的婷婷| 六月婷婷最新网址| 九九视频在线观看视频6| 五月婷婷丁香五月 | 天天狠狠干| 婷婷五月色| 婷五月天| 国产精产国品一二三在观看 | 色婷婷色五月综合| 五月激情在线| 任你日视频| 情涩婷婷五月天| 婷婷久久大香蕉| 丁香婷婷久久综合在线| 亚洲无AV在线中文字幕| 人人爱操| 亚州操操| 色婷婷狠狠| 狠狠999| 婷婷五月丁香久久| 激情丁香久久久久久| 中字幕视频在线永久在线观看免费| 天天干天天操天天射| 热久久国产视频| 久久久思思热| 乱码操操| av在线观看网站| 91刘玥视频在线观看| 极品人妻VIDEOSSS人妻| 精品色色| 久热9| 婷婷久久婷婷| 五月情涩综合婷婷| 中文字幕久久婷九女同| 丁香综合日产精品久久| 少妇水多A片太爽了| 丁香五月婷婷五月| 天天操婷婷| 亚州色婷婷| 色女人久久| 66色在线日韩| 日本狠狠干| 日日夜夜狠狠| 五月丁香六月婷婷激情网| 夜夜躁爽日| 婷婷激情五月色综合| www,五月天激情| 天天插天天干天天舔| 激情五月天之六月婷婷| 69五月天视频| 99aese| 久久久久99精品成人片| 婷婷五月天色综合| 五月情色天| 婷婷婷婷色| 日本成人噜噜噜| 日本色综合| 婷婷五月天AV| 成人av播放| 五月激情综合网| 久热婷婷| 九九性视频| 99精品偷自拍| 91碰免费视频| 热久久色| 婷婷伊人中文字幕| 97色色色视屏| 精品无码视频| 另类激情中文| 狠狠综合网| 97操碰| 免费视频在线观看的网站| 久久五月天激情| 性爱111111| 婷婷色色网| 九九综合色综合| 久热这里只有精品99re| 天天射影院| 91精品久| 亚洲av成人在线| wWwCom夜操wwW| 岛国av网| 五月丁香婷婷深深爱| 日韩另类| 影音先锋91网站在线观看| 96精品国产综合久久久久久| 久久东京热婷婷五月| 亚洲俩性性爱图片久久第六页| 日日肏夜夜干| 久久人操| 青青草视频免费观看| 免费99色| 五月天色婷伊人| 五月天精品视频| 国产精品电影| www。五月,com| 97中文在线| 久热a| www.91在线观看| 久久精品99国产精品日本| 9999综合99综合人| 丁香五月婷婷久久久| 久热网在线视频| 亚洲色综合| 久久婷婷原创视频| 丁香六月婷婷激情综合| 五月天婷婷成人| 激情五月天色色| 亚洲一级AV在线免费播放| 五月天综合缴情网网站0| 直接看的AV| 人妻久久久久久| 日本免费91| 在线综合婷婷| 婷婷丁香色五月| 亚州第一A片| 九九免费视频在线| 九九热中文| 亚洲9久久精品| 思思久ren热| www.日本91| 91操黄| 五月天成人综合| 九九99偷拍视频| 久久婷婷五月草视频在线播放| 五月丁香婷婷综合视频| 超碰一区二区| 久久精品小视频| 99热这里只有精品在线| 久9免费视频| www天天爽| 538在线精品| 这里只有精品日韩| 国产在线黄色| 日熟女| 婷婷五月天中文字幕| 激情婷婷丁香五月| 五月天 综合 在线| www.夜夜操.com| 色婷婷av在线| √天堂资源在线人妻熟女| 色婷婷另类| 激情婷婷五月天日本系列 | 综合激情在线视频| 蜜臀av粉嫩av懂色av| 一级七香蕉| 99热这里只有精品16| www.金莲av| 天天日婷婷| 91色色五月天| 五月天久久www| 日日做A爰片久久毛片A片英语| 激情五月天噢美| 丁香五月天激情综合| 婷婷97| 天天日夜夜爽| 丁香五月在线视频| 99精品偷自拍| 婷婷综合成人五月天| 国产午夜精品AV一区二区麻豆| 啪啪啪大香蕉| 99成人| 另类图片激情五月天| 五月婷婷激情| 国产熟女日日骚五月丁香爱| 综合久久五| 丁香五月综合在线观看| www.久操| 九色无码| 99色色爰| 国产精品18久久久| 婷婷丁香五月激情中文字幕版| 成人午夜视频精品一区| 色色色欧美色色| 中文不卡av| 极品人妻VideOssS人妻| 国产综合视频婷婷| 丁香六月激情综合| www.五月天。com| 综合另类激情| 婷婷五月在线视频| 五月婷婷在线丁香| 97精品人人A片免费看| 婷婷五月天人妻| 成人九九视频| 999精品久久久久久久| 国产欧美va| 99九九在线| 99在线精品免费视频| 婷婷五月天综合色| 国产成人AV在线播放| 婷婷99狠狠| 99热日本| 性爱人人网| 天天色综网| 狠狠色狠狠鲁| WWW·色色色·COM| 久久婷婷视频| 99热在线观看精品| 九九久久99| 丁香六月在线综合| 婷婷月综合| 久久婷五月综合色| 超碰国产在线观看| 狠狠五月天| 久久久久er热| 色久播播| 久久一级免费黄色片| 九九热最新地址| 亚洲激情免费视频| 香蕉久久国产AV一区二区| 久久97久久99久久综合欧美| 先锋资源婷婷| w婷婷五月婷婷w| 婷婷综合亚洲| 91色五月在线观看| 久久九九99| 人草人人| 丁香五月婷婷呀| 久久99网址| 五月天丁香婷婷网| 99熟女| 亚洲狠狠干| 五月天激情小说婷婷| 婷婷丁香综合在线| 香蕉久久国产AV一区二区| 亚洲欧美婷婷五月色综合| 五月丁香婷婷激情在线| 色婷婷免费观看| 五月婷婷久久网| 久久精彩视频| WWW99热| 久热播这里只有精品| 九九家庭影院| 99热爱爱干干日| 日本一区二区三区精品视频| 丁香六月婷婷综合| 五月婷婷丁香综合| 婷婷激情小说| 丁香五月婷婷骚视屏| 激情综合五月激情| 婷婷99狠狠躁天天| 九九九午夜视频| 色婷婷五月天av在线| 大香蕉九九| 婷婷久久五月丁香| 成年人丁香五月| 视色综合| 69婷婷丁香午夜| 亭亭丁香久久五月| 色很很96| 五月天综合色| 亚洲欧美婷婷五月色综合| 五月激情婷婷女| 六月婷婷七月丁香| 婷婷五月天日本国产| 99在线精品视频免费| 丁香六月婷婷综合激情欧美| 玖玖精品婷婷| www.久久婷婷| 在线看黄色| 亚洲婷婷丁香五月| 五月久久| 噜噜五月天综合| 日韩小视频在线99| 九九色网| 久热爱大香蕉在线蜜臀悦色| 综合久久十| 九色综合五月天婷五月| 九九精品9| 99视频热99| 色婷婷色综合久久精品V| 综合aV在线| 日韩av变天就操逼不卡区| 亚洲日本韩国| 激情综合色五月丁香| 婷婷狠狠综合网入口| 亚洲xx在线| www.久久久久久久久久.com| 色婷婷色和| 97操碰在线视频| 久久久久久久久久91| 大香蕉99热| 精品久色| 黄涩毛片| 思思re99视频在线观看| 欧美激情VA永久在线播放| 色色色网站| 色色色99| 国产精品一区在线观看你懂的| 五月天丁香| 九九艹女| 99手机在线精品视频| 超碰人人在线| 丁香婷婷射| 婷婷开心激情五月激情网| 天天爽天天日| 激情五月天综合| 亚洲欧洲中文日韩久久AV乱码| 中文字幕视频色婷婷| 99在线综合视频| 女同激情久久av久久| 另类五月婷婷| 5月丁香六月婷婷| 天天天在线观看| 色欧洲| 婷婷视频在线| 草榴视频网| 九九热这里只有精品556| 五月婷婷熟女| 五月婷婷开心网| 九九热在线观看视频| 亚洲成人影视在线| 99人人操人人操人人精| 五月丁香色色综合| 色噜噜狠狠插综合| 九月丁香| 中文字幕在线视频播放| 曰曰久久| 日日操日日射| 婷婷丁香97| 亚洲狠狠爱婷婷| 久99久在线观看| 提提热五月天婷婷| 婷婷五月综合色拍| 国产国产乱老熟女视频网站97| 五月天婷婷丁香人人操91| 天天色播| 五月激情天天干| 五月丁香影视| se色综合网| 色播五月天天| 五月婷婷人人人操| 婷婷欠久少妇| 丁香五月亚洲激情婷婷射| 色婷婷丁香五月综合| 九月激情网| 五月婷丁香久久综合| 激情四射五月天偷偷看婷婷| 婷婷综合精品视频97| 成人在线日韩| 97色天堂| 天天高潮夜夜爽| 色情五月婷婷| 99热亚洲| 色色性爱视频| 超碰只有精品在线| 亚洲另类电影| 99热这里只有精品55| 影音先锋男人女人| 久思思热视频在线观看| 五月婷婷综合在线| 亚洲精品第一国产综合亚AV | 色综合色婷色基地| 五月丁香婷婷六月天| www.99视频| 天天干天天操天天射| 亚洲综合婷婷五月| 丁香六月啪啪| 五月色网| 无码色| 久草婷| 久久机热这里只有 | 久久婷狠狠色| 久久久精品人妻| 爱穴久久| 天天拍久久| 中文字幕成人| 五月丁香日本一抹本| 99操久久| 性高潮久久久久久-九九九九九九九九九九热-成人AV | 五月激情视频| 久久综合中文字幕| 97艹| 色色色色网| av一区免费看| 激情五月天色婷婷| 婷婷五月色播天| 亚州日本欧州韩美高青高潮一| 亚洲午夜AV| 熟女网站久久| 色色五月婷婷久久| 182TV大香蕉| 五月婷婷在线观看黄| 色婷婷AⅤ| 五月天综合色| 亚洲成人av在线播放| 五月天婷婷丁香| 婷婷成人在线| 久久激情五月| 特级操b片| www.久久爱.com| WWW色色色COm| 99热老网站| 亚洲激情网| 亚洲成人免费在线| 99rewww| 另类少妇人与禽zOZZ0性伦| 婷婷5月色| 97高清国语自产拍| 五月婷婷之六月丁香| 亚洲午夜在线视频| 婷婷五月天综合色| 99热 在线播放| 欧美色97| 五月开心婷婷网| www久| 在线综合婷婷| 99视频日韩| 五月丁香网站| 日韩黄黄| 一点色成人网| 天天做天天爱综合| 丁香九月激情久久| 99热最新| 天堂五月婷婷| 日韩AV在线免费| 五月天丁香成人社| 亚洲精品乱码久久久久久按摩观| 五月婷婷基地| 99热这里只有精品 搜| 久久精品五月| 婷婷综合久久| 色婷婷六月开心中文字| 中文字幕av网站| 丁香五月综合激情啪啪| 性爱先锋AV| 五月久久丁香| 婷婷久久久久| www.色窝| 婷婷五月天AV在| 99精品网| 99热这里全是精品| 亚洲色碰| 狠狠色色色| 亚洲婷婷91丁香| 四色 爱 婷婷 精品 亚洲 五月天| 97涩婷婷| 久热超碰| 婷婷激情五月天在线| 婷婷丁香激情综合色情| 亚洲A片成人无码久久精品青桔 | 色啪网| www.激情五月天com| 狼人狠狠操| 91人久| 黄色成人网站在线播放| 天天舔天天摸天天射| 婷婷丁香www视频日本韩国| 日韩啊啊啊| 九九九九这里只有精品| 久久免费精品小视频| 99精日本久久| 9久精品视频| 四月婷婷丁香| 噜噜噜噜婷婷五月天| 超碰成人在线免费观看| 天天做天天爱天天爽| 色五月在线播放| 精品一区二区三区四区五区六区介绍 | 3DAV亚洲香蕉久久 一区二区| 日韩操人| WWW五月| 五月天播播综合| 激情五月色婷婷| 激情综合丁香六| 大香蕉婷婷| 色日本五月天| 五月丁香六月婷婷色| 91色久| 91久久久久久久久久| 一区二区成人电影免费播放| 色婷婷av在线观看| 天天色天天| 婷婷五月天论坛| 婷婷五月天伊人在线| 午夜爱爱网站| 久久综合五月婷婷| 激情五月天天| 婷婷五月色| 色你久久| 五月激情站| 丁香六月无码| 热久久66| 综合激情五月丁香9999久久精| 欧美天堂久久| 日本 色综合| 婷婷五月激情欧美大胆视频| 婷婷久久综合久| 91超级碰碰| 亚洲天堂啪啪| 六月天婷婷| 51avj视频大全| 一本伊人色婷| 六月天六月婷| 丁香五月98| 天天色爽| 99热 免费| 99亚色色色| 色综合久| 色九月婷婷| 欧美日韩91| 国产精品大香蕉| 国产精品成人在线| 超碰人人色| 99久久久免费| 超碰在线观看99| 91avse| 99精品久久久久久久婷婷| 婷婷射图| 欧美久久婷婷| 五月丁香激情综合| 99久久久| 婷婷色五月婷婷姐妹| 人人草成人视频| 七七九九色色| 色月视频| 亚洲色欲AAAAAA| 五月婷AV| 华人在线免费| 久久婷婷综合五月趴| 色色色色网| 日韩一级网站| 在线中文字幕视频| 婷婷五月色天| 狠狠干,狠狠操| 国产肥白大熟妇BBBB视频| 亚洲三A| 久色大香蕉| 久久久jd| 全亚洲最大的婷婷五月天网站COM| 欧美黑人大吊| 五月天婷婷色播综合在线| www婷婷色情网| 丁香五月五月婷婷五月天激情四射| 婷婷五月花丁香| 91碰超| 婷婷成人五月天成人文学| 国产99久久久国产精品免费看| 免费无码毛片一区二区A片| 成人丁香婷婷| 婷婷第一页| 久久九九爽| 99er6| 色五月六月| 91一起艹| 少妇人妻人伦A片| 猫咪伊人AV| 99婷婷国产最新视频| 婷婷五月天激情四射五月天激情| 狠狠狠狠狠狠狠狠草| 日韩在线婷婷五月天综合| 激情四射网| 99精品偷自拍| 《丁香激情综合久久伊人久久》影视在线观看 -高清预告手机免费播放 -三妹影院 | 无码99| 日韩久久欧亚| 久久五月婷| 色婷婷丁香中文在线播放| 性综合网| 五月婷婷综合激情| 九一牛视频探花| 婷婷五月天综合网| 五月丁香久久久| 亚洲午夜一区二区| 五月天婷婷久久| 色五月婷婷影视| 婷婷久草| 桔色成人在线| 人妻内射视频| 爱iii做iiii日日| 日本久久网| 99思思| 1024日韩| 91视频久久久| 俺五月| 99ri精品| 99精品丰满| 五月色婷婷亚洲 | 激情五月www| 五月婷婷天| 激情淫乱男女| 激情文学天天| 99免费在线视频| 99国产在线精品视频| 国产综合视频婷婷| 特级片神马电影| 久久五月天综合| 操逼巨乳91| 五月婷婷丁香五月婷婷| 色中色综合| 激情综合色婷婷啪啪六月天| 99er在线观看| 婷婷天天色| 91互操| 深夜A片| 最近中文字幕大全免费版在线 | 欧美啪啪9| 久色欧美| 久久性爱网| 五月婷婷丁香成人网| 五月天婷婷色| 精品九九久久| 激情五月丁香色婷婷| 久久只有18视频| 操97免费超级视频| 26uuu亚洲精品国产| 男女久久婷婷五月天| 久久婷婷色情7777网站| 五月综合色播播丁香婷婷| 狠狠色综合网| 九九色影视| 婷婷五月天天爽| 99久久偷拍视频| 九九久久综合网站| 天天日日夜夜| 淫荡家庭AV| 日韩一级片| 99久久婷婷五月综合| 色久丁香五| 婷婷激情综合色五月久久91| 深爱五月天天| 免费看欧美成人A片无码| 99er这里只有精品视频| 日韩婷婷| 婷婷性爱影院| 婷婷激情性爱| 99大香蕉| 亚洲天堂大香蕉| 26.uuu丁香五月婷婷| 激情无码网| 丁香五月天狠狠操| 丁香在线视频| 91婷婷在线观看| 丁香五月成人婷婷| 五月婷婷日本| 9热在线观看| 超级碰碰91| 另类激情五月| 成人五月天丁香| 天天肏夜夜肏| 26uuu青青| 这里只有精品视频| bbwcuckold精品熟妇| 五月天色图| 五月天久久婷婷婷| 99超超碰| 五月丁香婷婷成人综合网| 成人片在线免费看| 色婷婷综合亚洲|