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

ARTICLE DETAIL

資訊詳情

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

FPGA實(shí)現(xiàn)GameBoy Color:從硬件描述語(yǔ)言到復(fù)古游戲機(jī)復(fù)刻

FPGA實(shí)現(xiàn)GameBoy Color:從硬件描述語(yǔ)言到復(fù)古游戲機(jī)復(fù)刻 最近在復(fù)古游戲硬件改造圈子里一個(gè)項(xiàng)目引起了我的注意用全新的副廠零件從零開始打造一臺(tái)基于FPGA的GameBoy Color。這聽起來(lái)像是一個(gè)硬核玩家的終極夢(mèng)想但背后其實(shí)是一個(gè)融合了硬件設(shè)計(jì)、數(shù)字電路仿真和嵌入式開發(fā)的綜合性工程。對(duì)于很多FPGA初學(xué)者來(lái)說(shuō)這可能是一個(gè)遙不可及的目標(biāo)但如果我們把它拆解開來(lái)你會(huì)發(fā)現(xiàn)其核心原理和實(shí)現(xiàn)路徑是清晰且可學(xué)習(xí)的。本文將帶你深入剖析這個(gè)項(xiàng)目的技術(shù)內(nèi)核從FPGA的基礎(chǔ)概念、GameBoy硬件架構(gòu)的逆向工程到具體的Verilog實(shí)現(xiàn)思路和工程實(shí)踐為你鋪平一條從FPGA新手到能夠理解甚至參與此類復(fù)古硬件復(fù)刻項(xiàng)目的進(jìn)階之路。1. 背景與核心概念為什么是FPGA和GameBoy Color在開始技術(shù)細(xì)節(jié)之前我們首先要理解兩個(gè)核心概念FPGA和GameBoy Color的硬件架構(gòu)。FPGAField-Programmable Gate Array現(xiàn)場(chǎng)可編程門陣列是一種特殊的半導(dǎo)體器件。它不像CPU或GPU那樣有固定的指令集和計(jì)算單元而是由大量可編程的邏輯單元、互連資源和輸入輸出塊組成。開發(fā)者使用硬件描述語(yǔ)言如Verilog或VHDL來(lái)描述一個(gè)數(shù)字電路的功能然后通過(guò)綜合、布局布線等工具將這個(gè)“描述”燒錄到FPGA芯片中從而在芯片內(nèi)部“構(gòu)造”出一個(gè)專用的硬件電路。簡(jiǎn)單來(lái)說(shuō)FPGA讓你能用代碼“搭建”硬件。它的優(yōu)勢(shì)在于并行處理能力極強(qiáng)、延遲確定非常適合用于協(xié)議實(shí)現(xiàn)、信號(hào)處理、硬件仿真比如仿真一臺(tái)老游戲機(jī)等場(chǎng)景。GameBoy Color (GBC)是任天堂在1998年推出的經(jīng)典掌機(jī)。其核心是一顆定制版的8位Z80兼容CPU通常稱為L(zhǎng)R35902運(yùn)行頻率約為8.38 MHz或4.19 MHz。它擁有4KB的WRAM工作內(nèi)存、8KB的VRAM顯存以及一個(gè)160x144像素、最多顯示56色的LCD屏幕。GBC的硬件雖然簡(jiǎn)單但其時(shí)序、音頻、視頻生成邏輯都非常精確要完美仿真它必須精確再現(xiàn)這些硬件行為。那么為什么用FPGA來(lái)復(fù)刻GBC周期精確仿真FPGA可以以硬件級(jí)的精度模擬原版GBC的CPU時(shí)鐘周期、像素輸出時(shí)序、音頻采樣等實(shí)現(xiàn)近乎原汁原味的體驗(yàn)這是軟件模擬器難以做到的。并行處理GBC的CPU、PPU圖像處理單元、APU音頻處理單元是并行工作的。FPGA的并行特性可以非常自然地用多個(gè)硬件模塊來(lái)對(duì)應(yīng)這些單元架構(gòu)上更貼近原機(jī)。低延遲FPGA實(shí)現(xiàn)的硬件仿真其輸入按鍵到輸出畫面的延遲可以做到極低這對(duì)于追求操作手感的復(fù)古游戲至關(guān)重要??啥ㄖ菩耘c擴(kuò)展基于FPGA我們可以輕松添加原版沒(méi)有的功能比如RGB輸出、高清濾鏡、即時(shí)存檔、支持更多存儲(chǔ)卡等?!叭赂睆S零件”則意味著這個(gè)項(xiàng)目并非拆解原裝機(jī)進(jìn)行改造而是全部采用新生產(chǎn)的通用或兼容元器件來(lái)設(shè)計(jì)和組裝這更考驗(yàn)對(duì)原始設(shè)計(jì)原理的理解和重新實(shí)現(xiàn)的能力。2. 環(huán)境準(zhǔn)備與項(xiàng)目框架要理解或著手類似項(xiàng)目你需要搭建一個(gè)FPGA開發(fā)環(huán)境。這里我們以一款常見(jiàn)的入門級(jí)FPGA開發(fā)板如Digilent Basys3使用Xilinx Artix-7 FPGA和Verilog語(yǔ)言為例進(jìn)行說(shuō)明。請(qǐng)注意實(shí)際復(fù)刻GBC的項(xiàng)目可能會(huì)選擇其他型號(hào)的FPGA如Cyclone系列和更復(fù)雜的周邊電路?;A(chǔ)開發(fā)環(huán)境操作系統(tǒng)Windows 10/11 Linux (Ubuntu) 或 macOS。Windows環(huán)境工具鏈最全。FPGA廠商工具Xilinx Vivado用于Xilinx系列FPGA如Artix-7, Spartan-7。它集成了設(shè)計(jì)、綜合、實(shí)現(xiàn)、調(diào)試和下載的全套功能。對(duì)于此類項(xiàng)目通常使用Vivado HL WebPACK免費(fèi)版本即可。Intel Quartus Prime用于Intel原Altera系列FPGA如Cyclone IV, Cyclone 10。同樣有免費(fèi)版。選擇建議初學(xué)者可從Vivado開始資料豐富。但許多成熟的復(fù)古游戲機(jī)FPGA開源項(xiàng)目如MiSTer項(xiàng)目下的核心常用Quartus。代碼編輯器VS Code 相關(guān)插件如Verilog-HDL/SystemVerilog插件能極大提升編碼體驗(yàn)。仿真工具M(jìn)odelSim通常與Quartus/Vivado捆綁或開源的Icarus VerilogGTKWave。仿真對(duì)于驗(yàn)證數(shù)字電路邏輯正確性至關(guān)重要必須掌握。項(xiàng)目結(jié)構(gòu)概覽一個(gè)FPGA版的GBC項(xiàng)目其代碼結(jié)構(gòu)通常是模塊化的對(duì)應(yīng)GBC的各個(gè)硬件子系統(tǒng)fpga_gbc_project/ ├── rtl/ // 存放所有Verilog源代碼 │ ├── cpu/ // CPU核心 (LR35902 實(shí)現(xiàn)) │ │ ├── lr35902_core.v │ │ ├── alu.v │ │ └── ... │ ├── ppu/ // 圖像處理單元 │ ├── apu/ // 音頻處理單元 │ ├── memory/ // 內(nèi)存控制器、ROM/RAM映射 │ ├── peripherals/ // 按鍵、時(shí)鐘、復(fù)位等外設(shè)接口 │ └── top.v // 頂層模塊連接所有子模塊 ├── sim/ // 仿真測(cè)試文件 │ ├── testbench_top.v │ └── ... ├── constraints/ // 引腳約束文件 (.xdc 或 .qsf) │ └── fpga_board.xdc ├── roms/ // 游戲ROM文件需自行準(zhǔn)備注意版權(quán) └── doc/ // 設(shè)計(jì)文檔、時(shí)序圖版本說(shuō)明本文示例基于Vivado 2022.1和Verilog-2001標(biāo)準(zhǔn)。不同工具版本在操作界面和部分語(yǔ)法支持上可能有細(xì)微差別但核心邏輯不變。請(qǐng)根據(jù)你使用的FPGA型號(hào)和工具鏈調(diào)整。3. 核心原理與模塊拆解實(shí)現(xiàn)一個(gè)FPGA GBC本質(zhì)上是使用Verilog語(yǔ)言為每個(gè)GBC硬件模塊編寫“硬件描述”。下面我們分解幾個(gè)最關(guān)鍵的部分。3.1 CPU核心LR35902的Verilog實(shí)現(xiàn)GBC的CPU是指令集兼容Z80但經(jīng)過(guò)簡(jiǎn)化和定制的LR35902。在FPGA中實(shí)現(xiàn)它就是一個(gè)狀態(tài)機(jī)。核心思路CPU的工作是取指、譯碼、執(zhí)行、訪存、寫回的循環(huán)。我們用Verilog描述這個(gè)狀態(tài)機(jī)。// 文件rtl/cpu/lr35902_core.v (極度簡(jiǎn)化的框架) module lr35902_core ( input wire clk, // 主時(shí)鐘 input wire rst_n, // 復(fù)位信號(hào)低有效 // 內(nèi)存總線接口 output reg [15:0] addr, // 地址總線 output reg mem_rd, // 讀使能 output reg mem_wr, // 寫使能 input wire [7:0] data_in, // 從內(nèi)存讀取的數(shù)據(jù) output reg [7:0] data_out,// 要寫入內(nèi)存的數(shù)據(jù) // 控制信號(hào) output reg int_ack, // 中斷響應(yīng) input wire int_req // 中斷請(qǐng)求 ); // 內(nèi)部寄存器定義 (簡(jiǎn)化) reg [7:0] reg_a, reg_f; reg [7:0] reg_b, reg_c; reg [7:0] reg_d, reg_e; reg [7:0] reg_h, reg_l; reg [15:0] reg_pc; // 程序計(jì)數(shù)器 reg [15:0] reg_sp; // 棧指針 // 狀態(tài)定義 typedef enum logic [2:0] { S_FETCH, S_DECODE, S_EXECUTE, S_MEM_READ, S_MEM_WRITE, S_INTERRUPT } cpu_state_t; cpu_state_t current_state, next_state; reg [7:0] opcode; // 當(dāng)前操作碼 // 時(shí)鐘驅(qū)動(dòng)的狀態(tài)轉(zhuǎn)移和邏輯 always (posedge clk or negedge rst_n) begin if (!rst_n) begin current_state S_FETCH; reg_pc 16h0000; // ... 其他寄存器復(fù)位 end else begin current_state next_state; // 根據(jù)狀態(tài)執(zhí)行具體操作 case (current_state) S_FETCH: begin addr reg_pc; mem_rd 1b1; next_state S_DECODE; end S_DECODE: begin opcode data_in; // 獲取操作碼 reg_pc reg_pc 1; next_state S_EXECUTE; end S_EXECUTE: begin // 根據(jù)opcode執(zhí)行龐大的譯碼和執(zhí)行邏輯 // 例如NOP指令 if (opcode 8h00) begin // NOP // 什么也不做 next_state S_FETCH; end // 這里需要實(shí)現(xiàn)所有LR35902指令... // 例如LD A, B; ADD A, n; JP nn 等等。 // 這是一個(gè)極其復(fù)雜的部分需要參考完整的指令集手冊(cè)。 end // ... 其他狀態(tài)處理 endcase end end // ... 其他組合邏輯如ALU運(yùn)算、標(biāo)志位更新等 endmodule關(guān)鍵點(diǎn)周期精確必須嚴(yán)格按照LR35902的指令周期數(shù)如NOP是4個(gè)時(shí)鐘周期來(lái)設(shè)計(jì)狀態(tài)機(jī)否則游戲時(shí)序會(huì)出錯(cuò)。測(cè)試必須編寫完善的測(cè)試平臺(tái)Testbench用已知的ROM如CPU測(cè)試ROM來(lái)驗(yàn)證每條指令的正確性。3.2 圖像處理單元PPUPPU是項(xiàng)目中最復(fù)雜的部分之一負(fù)責(zé)產(chǎn)生視頻信號(hào)。GBC的屏幕是160x144但PPU內(nèi)部處理著256x256的背景地圖和精靈Sprite。PPU工作流程簡(jiǎn)述掃描線渲染PPU逐行掃描線渲染。每條掃描線期間它從VRAM中讀取背景圖塊、窗口和精靈數(shù)據(jù)。像素流水線根據(jù)優(yōu)先級(jí)精靈優(yōu)先于背景、調(diào)色板等信息決定最終輸出像素的顏色索引。時(shí)序生成產(chǎn)生精確的像素時(shí)鐘dot clock、水平同步HSync和垂直同步VSync信號(hào)。對(duì)于FPGA輸出VGA或HDMI還需要一個(gè)額外的“視頻時(shí)序發(fā)生器”模塊將GBC像素流轉(zhuǎn)換成標(biāo)準(zhǔn)視頻時(shí)序。// 文件rtl/ppu/ppu_top.v (結(jié)構(gòu)示意) module ppu_top ( input wire clk, // 像素時(shí)鐘如~4.19MHz的倍頻 input wire ppu_en, // PPU使能 input wire [7:0] vram_data_in, // 從CPU寫入的VRAM數(shù)據(jù) // ... 其他CPU接口信號(hào) output reg [1:0] pixel_color_idx, // 輸出像素的顏色索引0-3 output reg pixel_valid, // 像素?cái)?shù)據(jù)有效信號(hào) // 視頻時(shí)序信號(hào) output reg hsync, output reg vsync, output reg hblank, output reg vblank ); // 內(nèi)部模塊 vram_controller vram_ctrl (.*); // VRAM控制器 bg_renderer bg_render (.*); // 背景渲染器 sprite_renderer sprite_render (.*); // 精靈渲染器 pixel_compositor pixel_comp (.*); // 像素合成器 timing_generator timing_gen (.*); // 時(shí)序發(fā)生器 // 狀態(tài)機(jī)控制掃描線周期 always (posedge clk) begin if (!ppu_en) begin // 復(fù)位或禁用狀態(tài) end else begin // 掃描線計(jì)數(shù)器邏輯 // 根據(jù)當(dāng)前掃描線位置激活bg_render, sprite_render等模塊 // 在正確的時(shí)鐘周期生成pixel_valid和像素?cái)?shù)據(jù) end end endmodule3.3 內(nèi)存總線與存儲(chǔ)控制器GBC的地址空間是統(tǒng)一的但映射到不同的物理設(shè)備ROM、RAM、IO寄存器等。在FPGA中我們用內(nèi)存控制器來(lái)管理。實(shí)現(xiàn)方式通常使用一個(gè)大的Block RAM (BRAM) 來(lái)模擬GBC的地址空間。根據(jù)CPU發(fā)出的地址控制器決定是從ROM游戲卡帶讀取還是讀寫內(nèi)部RAM或是訪問(wèn)映射到PPU/APU的寄存器。// 文件rtl/memory/memory_controller.v (簡(jiǎn)化) module memory_controller ( input wire [15:0] cpu_addr, input wire cpu_rd, input wire cpu_wr, input wire [7:0] cpu_data_out, output reg [7:0] cpu_data_in, // 各存儲(chǔ)設(shè)備接口 output reg [15:0] rom_addr, input wire [7:0] rom_data, output reg rom_ce, // ROM片選 output reg wram_we, // WRAM寫使能 output reg [12:0] wram_addr, inout wire [7:0] wram_data, // PPU/APU寄存器接口 output reg io_reg_sel, output reg [7:0] io_reg_addr, inout wire [7:0] io_reg_data ); always (*) begin // 默認(rèn)值 rom_ce 1b0; wram_we 1b0; io_reg_sel 1b0; // ... 其他默認(rèn) // 地址解碼 casez (cpu_addr) 16h0000, 16h3FFF: begin // ROM Bank 0 rom_addr cpu_addr; rom_ce cpu_rd; cpu_data_in rom_data; end 16hC000, 16hDFFF: begin // 內(nèi)部WRAM wram_addr cpu_addr[12:0]; if (cpu_wr) wram_we 1b1; // ... 處理wram_data雙向總線 end 16hFF00, 16hFF7F: begin // IO寄存器區(qū)域 io_reg_sel 1b1; io_reg_addr cpu_addr[7:0]; // ... 處理io_reg_data雙向總線 end // ... 處理其他地址區(qū)域VRAM, OAM, HRAM等 endcase end endmodule4. 完整實(shí)戰(zhàn)案例搭建一個(gè)極簡(jiǎn)的FPGA GBC驗(yàn)證框架由于完整的GBC實(shí)現(xiàn)過(guò)于龐大我們?cè)诖嗽O(shè)計(jì)一個(gè)極簡(jiǎn)的驗(yàn)證框架目標(biāo)是讓FPGA開發(fā)板上的一個(gè)LED燈按照GBC CPU執(zhí)行一段簡(jiǎn)單ROM代碼的結(jié)果來(lái)閃爍。這能驗(yàn)證從ROM加載、CPU執(zhí)行到外設(shè)控制的基本鏈路是否通暢。4.1 創(chuàng)建Vivado項(xiàng)目與文件結(jié)構(gòu)打開Vivado創(chuàng)建新項(xiàng)目選擇你的FPGA開發(fā)板型號(hào)。在項(xiàng)目中創(chuàng)建源文件目錄并添加以下文件rtl/top.v(頂層模塊)rtl/cpu/lr35902_simple.v(極度簡(jiǎn)化的CPU只實(shí)現(xiàn)幾條指令)rtl/memory/boot_rom.v(存放初始程序的ROM)rtl/peripherals/led_blinker.v(LED控制模塊)constraints/board.xdc(引腳約束文件)4.2 編寫一個(gè)最小的“Boot ROM”這個(gè)ROM里存放一段簡(jiǎn)單的匯編程序功能是循環(huán)遞增一個(gè)寄存器并根據(jù)其值控制LED。// 文件rtl/memory/boot_rom.v // 這是一個(gè)用Verilog數(shù)組模擬的只讀存儲(chǔ)器 module boot_rom ( input wire [15:0] addr, output reg [7:0] data ); // 定義一個(gè)256字節(jié)的ROM空間 reg [7:0] rom [0:255]; // 使用initial塊初始化ROM內(nèi)容模擬匯編機(jī)器碼 initial begin // 假設(shè)我們寫一段簡(jiǎn)單循環(huán) // LD A, 0x00 // LOOP: // INC A // OUT (0x01), A ; 假設(shè)0x01是映射到LED的IO端口 // JP LOOP // 對(duì)應(yīng)的LR35902機(jī)器碼需要查表。這里用偽代碼示意。 rom[0] 8h3E; // LD A, n rom[1] 8h00; // n 0 rom[2] 8h3C; // INC A rom[3] 8hD3; // OUT (n), A (偽指令實(shí)際端口操作復(fù)雜) rom[4] 8h01; // 端口地址 0x01 rom[5] 8hC3; // JP nn rom[6] 8h02; // nn的低字節(jié) rom[7] 8h00; // nn的高字節(jié) (跳轉(zhuǎn)到地址0x0002) // 其余位置填充NOP (0x00) for (int i8; i256; ii1) begin rom[i] 8h00; end end always (*) begin data rom[addr[7:0]]; // 只使用低8位地址簡(jiǎn)化設(shè)計(jì) end endmodule4.3 編寫簡(jiǎn)化的CPU和LED外設(shè)// 文件rtl/cpu/lr35902_simple.v (僅實(shí)現(xiàn)LD A,n, INC A, JP三條指令) module lr35902_simple ( input wire clk, input wire rst_n, output reg [15:0] addr, output reg mem_rd, input wire [7:0] data_in, output reg [7:0] io_out // 簡(jiǎn)化輸出到IO ); reg [7:0] reg_a; reg [15:0] reg_pc; reg [2:0] state; reg [7:0] opcode; always (posedge clk or negedge rst_n) begin if (!rst_n) begin state 0; reg_pc 0; reg_a 0; io_out 0; end else begin case (state) 0: begin // 取指 addr reg_pc; mem_rd 1; state 1; end 1: begin // 譯碼 opcode data_in; reg_pc reg_pc 1; state 2; end 2: begin // 執(zhí)行 case (opcode) 8h3E: begin // LD A, n state 3; // 下一個(gè)狀態(tài)取立即數(shù)n end 8h3C: begin // INC A reg_a reg_a 1; io_out reg_a 1; // 將A的值輸出到LED state 0; reg_pc reg_pc 1; end 8hC3: begin // JP nn state 4; // 需要取兩個(gè)字節(jié)的跳轉(zhuǎn)地址 end default: state 0; endcase end // ... 狀態(tài)3和4用于處理立即數(shù)和跳轉(zhuǎn)地址的讀取 endcase end end endmodule4.4 頂層模塊集成與引腳約束// 文件rtl/top.v module top ( input wire clk_100m, // 板載100MHz時(shí)鐘 input wire rst_n, // 復(fù)位按鈕 output reg [3:0] leds // 4個(gè)LED ); wire clk_cpu; // CPU時(shí)鐘如4.19MHz wire [15:0] cpu_addr; wire cpu_mem_rd; wire [7:0] cpu_data_in, cpu_data_out; wire [7:0] io_data; // 時(shí)鐘分頻器從100MHz得到~4.19MHz clk_wiz_0 clk_gen_inst (.clk_in1(clk_100m), .clk_out1(clk_cpu)); // CPU實(shí)例 lr35902_simple cpu_inst ( .clk(clk_cpu), .rst_n(rst_n), .addr(cpu_addr), .mem_rd(cpu_mem_rd), .data_in(cpu_data_in), .io_out(io_data) ); // Boot ROM實(shí)例 boot_rom rom_inst ( .addr(cpu_addr), .data(cpu_data_in) // CPU從ROM讀取數(shù)據(jù) ); // 將CPU的IO輸出連接到LED取低4位 always (posedge clk_cpu) begin if (!rst_n) begin leds 4b0000; end else begin leds io_data[3:0]; end end endmodule引腳約束文件 (constraints/board.xdc) 示例# 時(shí)鐘引腳 set_property PACKAGE_PIN W5 [get_ports clk_100m] set_property IOSTANDARD LVCMOS33 [get_ports clk_100m] # 復(fù)位按鈕 set_property PACKAGE_PIN R2 [get_ports rst_n] set_property IOSTANDARD LVCMOS33 [get_ports rst_n] # LED引腳 set_property PACKAGE_PIN U16 [get_ports {leds[0]}] set_property IOSTANDARD LVCMOS33 [get_ports {leds[0]}] # ... 為leds[1], leds[2], leds[3]設(shè)置引腳4.5 綜合、實(shí)現(xiàn)與下載在Vivado中運(yùn)行綜合Synthesis。綜合成功后運(yùn)行實(shí)現(xiàn)Implementation包括布局布線。生成比特流文件Generate Bitstream。連接開發(fā)板使用Hardware Manager下載比特流文件。預(yù)期結(jié)果下載完成后開發(fā)板上的LED應(yīng)該開始有規(guī)律地閃爍因?yàn)镃PU在執(zhí)行循環(huán)遞增和輸出。這證明我們的最小系統(tǒng)CPU、ROM、時(shí)鐘、外設(shè)控制鏈路是工作的。5. 常見(jiàn)問(wèn)題與排查思路在FPGA開發(fā)中尤其是進(jìn)行復(fù)雜數(shù)字系統(tǒng)設(shè)計(jì)時(shí)會(huì)遇到各種問(wèn)題。以下是一些典型問(wèn)題的排查思路。問(wèn)題現(xiàn)象可能原因排查步驟與解決思路綜合失敗語(yǔ)法錯(cuò)誤、模塊未定義、端口連接錯(cuò)誤。1. 查看Vivado綜合日志中的ERROR和CRITICAL WARNING。2. 檢查所有模塊的聲明和實(shí)例化是否匹配。3. 檢查是否缺少文件或庫(kù)引用。實(shí)現(xiàn)失敗布局布線錯(cuò)誤時(shí)序約束過(guò)緊、資源不足、設(shè)計(jì)中有組合邏輯環(huán)路。1. 檢查時(shí)序約束是否合理如時(shí)鐘頻率。2. 查看資源利用率報(bào)告確認(rèn)FPGA邏輯單元、BRAM是否夠用。3. 使用report_timing_summary檢查時(shí)序違例路徑。下載后無(wú)現(xiàn)象LED不亮?xí)r鐘未工作、復(fù)位信號(hào)極性錯(cuò)誤、引腳約束錯(cuò)誤、設(shè)計(jì)未正確啟動(dòng)。1. 使用板載的時(shí)鐘和復(fù)位檢查約束文件中的引腳號(hào)是否正確。2. 添加一個(gè)簡(jiǎn)單的“心跳”LED測(cè)試程序排除硬件問(wèn)題。3. 使用Vivado的ILA集成邏輯分析儀抓取內(nèi)部信號(hào)如CPU的pc、時(shí)鐘看設(shè)計(jì)是否在運(yùn)行。仿真結(jié)果與板級(jí)運(yùn)行不一致仿真中的初始化與實(shí)際上電狀態(tài)不同、異步設(shè)計(jì)問(wèn)題、未考慮時(shí)鐘偏移。1. 確保Testbench中復(fù)位邏輯與硬件一致。2. 檢查設(shè)計(jì)中是否存在不滿足建立/保持時(shí)間的異步接口。3. 在仿真中盡量模擬真實(shí)環(huán)境如時(shí)鐘抖動(dòng)、輸入延遲。CPU運(yùn)行速度異???慢時(shí)鐘分頻系數(shù)計(jì)算錯(cuò)誤。1. 核對(duì)原版GBC的CPU時(shí)鐘頻率~4.19MHz。2. 檢查FPGA的PLL或時(shí)鐘分頻模塊配置。3. 用ILA測(cè)量實(shí)際時(shí)鐘頻率。游戲畫面花屏或亂碼PPU時(shí)序錯(cuò)誤、VRAM/ROM讀取地址錯(cuò)誤、像素合成邏輯有誤。1. 首先驗(yàn)證CPU和內(nèi)存總線工作正常能正確執(zhí)行測(cè)試ROM。2. 使用ILA抓取PPU關(guān)鍵信號(hào)掃描線號(hào)、像素坐標(biāo)、VRAM讀取地址/數(shù)據(jù)。3. 與已知正確的PPU時(shí)序圖進(jìn)行比對(duì)。按鍵無(wú)響應(yīng)IO端口地址映射錯(cuò)誤、按鍵消抖邏輯缺失、上拉/下拉電阻配置問(wèn)題。1. 確認(rèn)CPU讀到了正確的IO端口地址。2. 在硬件上確認(rèn)按鍵電路和FPGA引腳配置上拉/下拉正確。3. 在Verilog中添加按鍵消抖模塊。ILA使用小技巧在調(diào)試此類復(fù)雜系統(tǒng)時(shí)Vivado的ILA是你的最佳伙伴。將內(nèi)部關(guān)鍵信號(hào)如CPU狀態(tài)、關(guān)鍵寄存器、PPU時(shí)序信號(hào)添加到ILA核中在板級(jí)運(yùn)行時(shí)實(shí)時(shí)抓取波形能直觀地定位問(wèn)題所在。6. 最佳實(shí)踐與工程建議從“玩具項(xiàng)目”到“可用的復(fù)刻產(chǎn)品”需要遵循良好的工程實(shí)踐。模塊化與層次化設(shè)計(jì)嚴(yán)格劃分功能模塊CPU、PPU、APU、Memory、Peripheral每個(gè)模塊有清晰的接口定義。使用頂層模塊top進(jìn)行集成避免模塊間過(guò)度耦合。為每個(gè)主要模塊編寫?yīng)毩⒌臏y(cè)試平臺(tái)Testbench確保單元功能正確。同步設(shè)計(jì)原則盡量使用同步復(fù)位避免使用異步復(fù)位釋放時(shí)的亞穩(wěn)態(tài)問(wèn)題。對(duì)所有外部異步輸入如按鍵進(jìn)行同步化處理兩級(jí)寄存器同步。避免在多個(gè)always塊中對(duì)同一個(gè)變量進(jìn)行賦值。時(shí)鐘與復(fù)位策略使用FPGA內(nèi)部的PLL或MMCM生成系統(tǒng)所需的各種時(shí)鐘CPU clk, Pixel clk等。設(shè)計(jì)一個(gè)全局的復(fù)位管理模塊確保上電后所有模塊能可靠復(fù)位。注意跨時(shí)鐘域信號(hào)的處理使用異步FIFO或握手協(xié)議。資源優(yōu)化Block RAM (BRAM)合理用于VRAM、WRAM、OAM、ROM等大容量存儲(chǔ)節(jié)省邏輯資源。DSP Slice如果實(shí)現(xiàn)音頻處理或高級(jí)濾鏡可以利用DSP單元提高性能。謹(jǐn)慎使用*通配符在敏感列表中使用always (*)是好的但在case語(yǔ)句中避免使用不完整的分支防止生成鎖存器Latch。約束與時(shí)序必須編寫正確的時(shí)序約束文件.xdc特別是時(shí)鐘約束。例如create_clock -period 23.8 [get_ports clk_100m]100MHz周期10ns但GBC像素時(shí)鐘約238ns。對(duì)于衍生時(shí)鐘如分頻得到的CPU時(shí)鐘要使用create_generated_clock進(jìn)行約束。實(shí)現(xiàn)后務(wù)必查看時(shí)序報(bào)告確保沒(méi)有建立時(shí)間Setup或保持時(shí)間Hold違例。版本控制與文檔使用Git管理所有源代碼、約束文件和腳本。為關(guān)鍵模塊和復(fù)雜狀態(tài)機(jī)繪制框圖、時(shí)序圖并寫入注釋。維護(hù)一個(gè)簡(jiǎn)單的設(shè)計(jì)文檔記錄關(guān)鍵設(shè)計(jì)決策、接口定義、資源使用情況。利用現(xiàn)有開源項(xiàng)目完全從零開始實(shí)現(xiàn)一個(gè)完整的GBC核心是巨大的工程。強(qiáng)烈建議學(xué)習(xí)現(xiàn)有的開源實(shí)現(xiàn)如Gameboy_FPGA、Mister項(xiàng)目中的Gameboy核心等。理解其架構(gòu)和代碼能讓你事半功倍。遵守開源協(xié)議尊重原作者勞動(dòng)。法律與版權(quán)意識(shí)FPGA項(xiàng)目本身是合法的。游戲ROM.gb, .gbc文件受版權(quán)保護(hù)。你必須擁有游戲的原始卡帶并為自己制作備份用于個(gè)人學(xué)習(xí)。公開分發(fā)包含版權(quán)ROM的FPGA鏡像或利用其盈利是違法的。專注于硬件設(shè)計(jì)和仿真邏輯的學(xué)習(xí)與研究。通過(guò)這個(gè)項(xiàng)目你不僅能收獲一臺(tái)獨(dú)一無(wú)二的復(fù)古掌機(jī)更能深入理解計(jì)算機(jī)體系結(jié)構(gòu)、數(shù)字電路設(shè)計(jì)和硬件描述語(yǔ)言的精髓。從點(diǎn)亮第一個(gè)LED到讓馬里奧在屏幕上跑起來(lái)每一步都是對(duì)技能的扎實(shí)提升。建議從最小系統(tǒng)開始逐步添加功能并善用仿真和調(diào)試工具。當(dāng)你看到自己編寫的硬件代碼成功驅(qū)動(dòng)了熟悉的游戲畫面時(shí)那種成就感是無(wú)與倫比的。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
操操天堂| 狠狠色综合五月| 26UUU欧美激情一区二区| 丁香五月大香蕉AV| 四川女人毛多水多A片| 综合激情伊人影视在线| 天天色图| 思思久久99热| 亚洲无码性爱| 综合色色色色色色| 99riAV成人在线视频| 99er日韩| 99啪99| 丁香五月天成人| 国产成人网| 亚洲日日操| 欧美噜噜免费观看| 六月婷婷激情图片| 五月婷婷亚洲天堂97色婷婷| 丁香婷婷综合精品六月初| 91九九九色在| 色色色婷婷五月天| 色五月婷婷老师| 日逼免费视频| 亚州激情在线视频| 另类图片五月天婷婷| 五月婷婷婷色| 五月天大香焦| 国产操逼网站| 99视频极品在线香蕉| 开心五月深爱五月| 色五月亚洲| 中文AV在线观看| 五月婷导航| 亚洲另类在线观看| 99热精品在线观看| 91热99| 色波激情五月天| 大香蕉人妻| 天天天久久人人人合| 99超级碰碰| 狠狠五月天| 五月婷婷基地| 五月婷av| 婷婷久久精品| AV在线观看网站| 99九九综合久久九九| 五月天婷婷成人网| 久热这里只有精品66| 激情国产综合| 婷婷综合五月| 97人人操人人干| 色五月婷婷影视| 国产精品久久久久9999小说| 九九色婷婷| 天天做天天爱| 99色热| 丁香九月婷| 久久激情五月婷婷| 9久久精品| 99热国产精品| 国外亚洲成AV人片在线观看| 嫩草AV久久伊人妇女超级A| 天天操婷婷| 午夜]香婷婷深深爱| 午夜福利成人AV91| 免费人人操| 日韩成人电影av| 久久午夜丁香| 一点色成人网| 综合精品99| www,色综合| 青青操丝袜美腿| 97日在线视频| 青青操avbb| 99爱在线| 人人摸人人澡人人| 日本99久久| 久久XX| 亚洲婷婷激情综合激情999精品| 无码人妻丰满熟妇奶水区码| 91久久婷婷| 久久伊人五月天| 99精品久久| 日日杆天天| 五月色网| 六月婷婷色| 99原创自拍视频在线观看| www.91九色| 十月色综合| 伊人五月天在线| 亚洲视色| 在线观看国产高清视频免费网站| 乱乱av| 精品亚洲国产成AV人片传媒| 国产精品人成A片一区二区| 狠狠爱综合网| 最新国产AV| 中文av在线观看| 激情av在线| 激情丁香婷婷| 九九99九九精品视频| 亚洲性爱AV在线| 久久99久久久久久久噜噜| 国产婷婷综合在线免费视频| 成人羞羞啪啪 全 视频| 日本成人噜噜噜| 强伦轩人妻一区二区电影| 国产美女无遮挡裸体毛片A片| 日韩黄在免| 九九精品婷| VA色婷婷| 成人电影在线免费试看| 桃色成人网| 91人无码久久久久久| 日本欧美成人片AAAA| 婷婷中文字幕| 91人人爱| 五月丁香成人| 成年AAAA色情| 影音先锋一区二区三区| 伊人9999| 99精品色| 五月天婷婷色色网| 免费观看欧美成人AA片爱我多深| 狠狠操天天干| 婷婷六月丁香在线| 97精品欧美91久久久久久久| 玖玖色综合色| sewuyuejiqingwang| 亚洲婷婷五月天| 亚洲中文字幕在线观看| 99久热这里只有精品视频删减版| 久久婷婷综合五月天| 激情精品久久| 国产精自产拍久久久久久蜜 | 激情五婷网| 色香蕉影院| 麻豆五月丁香婷婷| 色一情一乱一伦一区二区三区| 天啪色| 丁香五月天婷婷中文| 超碰色综合| 任你弄在线视频免费| 久9久9久9久9久9久9| 婷婷五月激情在线| 91久久久久| 六月婷伊人| 日本久久精品| 亚州激情网| 婷婷伊人网| www.99热精品| 色婷婷亚洲婷婷| 五月天婷婷激情网| 色婷婷综合久久久久| 综合久久六月| www久久艹| 黄页免费一级视频懂色| 人人操人人爰人人一天天碰夜夜拍夜夜爽-中国A级毛片天天看天天谢… | 久久婷婷五月综合| 99精品久久久久久久| 天天成人综合视频| 97操男人的天堂| 伍月婷丁香花全集| 碰97久久| www久久久| 9九热视频| 五月天色婷婷综合| 久久婷婷亚洲五月天| 国产乱子轮XXX农村| 久久丝丝热| 狠狠插狠狠操| 婷婷射婷婷舔| 99在线精品视频| 97操碰视频| 色亭亭五月天丁香综合AV - 百度 - 百度| 5五月综合网亚洲| 人人干人人操人人摸| 六月婷综合| 色五月婷激情| 先锋资源婷婷| 欧洲色色| 婷婷伊人五月| 丁香玖玖| 久热伊人| 人人草人| 六月丁香啪| 五月激情丁香啪啪| 婷婷九月激情| 婷婷亚洲五月色综合| 久久婷婷五月综合色欧美| 五月丁香婷婷中文网| 九月激情婷婷丁香| 婷婷五月综合在线| 色色免费网战视频| 久久丁香婷婷五月天| 99国产精品久久久久久久久久久| 六月婷婷开心| 六月丁香综合999| 1024在线视频| 精品亚洲国产成人A片在线鸭王| 五月天小说激情| 热久久婷婷| 婷婷月综合| 激情五月婷婷网| wuyuedingxiang99| www.com任你艹| 久久九色| 六月婷婷在线视频| 深爱五月天婷综合| 九月激情网| 少妇人妻偷人精品无码视频新浪| 国产精品日日躁夜夜躁| 日日噜狠狠色综合久久| 成片免费播放| 99热全是精品| 69热91天堂| 九九九九国产| 婷婷丁香五月综合免费视频百花| 色五月婷婷、老熟女| 六月婷婷AV| 久久婷色| 人妻操逼视频| 色九九九九| 另类小说五月天| 中文av网站| 怕怕av| 日本色色网站| 91九色在线观看免费| 日日夜夜狠狠| 337p大胆噜噜噜噜噜91Av| 九九热区一区二区三区| 欧美群妇大交乱婬网| 色情五月天导航| 欧美色综合天天久久综合精品| 激情六月丁| 精品综合久久久久久五月天| 综合另类视频| 婷婷丁香宗合888| 刘玥精品一区| 操91综合网| 久久小视频| 99热青青草| 激情五月色综合| 婷婷五月天伊人在线| 996精品热视频| 日本熟女啪啪| 综合久久十| 婷婷丁香社区| 久久黄色片| 4399成人黄A片| 五月天啪啪啪| 99在线免费观看| 岛国AV网| 高清一区二区三区日本久| 六月婷婷久久| www.超碰在线| 热99这就是精品视频| 99爱在线视频| 久久综合中文| 99热这里只有精品8| 亚洲人妻av| 97碰久久| 99久久网站| 99热在线观看精品| 国产精品涩涩涩视频网站| www久久99| 成人在线精品| 另类在线| 97碰碰叉| 91精品综合久久婷婷九色| 婷婷干六月综合旧址| 99久久欧美| AV六月丁香| 久re在线| 五月婷婷综合激情网| 思思re99视频在线观看| 色色色综合网| 黑人巨粗进入警花疼哭A片| 色播播五月天| 色综合色香蕉网| 色婷婷影视99| 欧美日韩一a.无| 五月天六月丁香| 26uuu色噜噜精品一区| 天天做天天爱天天摸| 超碰人人色| 丁香五月婷婷婷婷欧美综合| 视频这里只有精品16| 全国最新疫情| 色香久久| 91久久精品国产91性色TV| 久久综合婷婷激情| 日韩人妻无码精品| 欧美婷| 色婷视频| 九月婷婷综合| 色色五月天com| 玖玖综合网| 免费的日逼视频| 天天干天天爽天天爽| 日韩在线aaa| 婷婷五月天大香蕉| 丁香六月婷月91婷月| 亚洲人人干| 色5月丁香婷婷| 色9999日韩国产| 丁香综合| 天天干,天天舔| 深爱丁香激情| 996er热| 97五月婷| 激情婷婷丁香五月天小说| 性色欲情 网站| 国色天香伊人狠狠色| 五月婷婷丁香| 操91综合网| 婷婷五月天久久| 色五月婷激情| 久久婷婷激情五月天一区二区| 婷婷丁香五月天在线视频| 欧美激情五月| 九九人人操| 新男人天堂人妻| 丁香五月天欧美成人| 色情五月天婷婷| 国产免费AV网站| 超pen个人视频97| 丁香五月色五月| 久热a| 大香蕉婷婷| 九月婷婷在线观看| 99热精品一| 亚洲久热| 91久久久久久久| 五月丁香六月婷婷无码| 天天综合天天玩夜夜玩天天玩夜夜玩 | 国产97色在线| 亚洲第二AV| 日韩成人精品一区久久久久| 人人爱操| 色色操| 丁香婷婷基地| 婷婷五月激情视频网| 99re思思热在线视频| 亚洲色网络| 国产婷伊人| 日本a片网址| 狠狠综合网| www.五月婷婷.com| 欧美综合123区| 婷婷久久色| 婷婷色色网站| 五月丁香六月婷婷婷婷| 亚洲精品白浆高清久久久久久| 久久五月婷婷丁香| 99热官网| 国产精品视频免费看| 俺去也在线www色官网| 色无码| 91久久精品无码一区二区三区| 久久婷婷一级片| 高清一区二区三区日本久| 亚洲午夜AV| 亚洲熟女色| 99啪99| 日本一毛片| 99偷拍视频在线日本| 五月中旬婷婷丁香六| 精品夜夜澡人妻无码AV| \\五月天婷婷激情| 182无码| 久久在线人妻| 欧美在线视频9| 五月天.com| 婷婷伊人五月丁香天堂网| 欧美啄木乌丝袜人妻系列| 日本视频久久| 偷拍五月丁香| 婷婷丁香成人| 成人做爰高潮A片免费视频| 第五色婷婷| 色婷婷狠| 操操碰| 五月天免费色| 日操夜操天天操不卡| 婷婷涩五月天综合| 九九青草热| 欧美 日韩 成人 在线| 99精品97| 婷婷五月成人| 终合激情网| 踪合专区啪啪| 免费观看18视频网站| www.日韩艹| 久久99人人| 开心激情网在线| 五月婷婷综合性爱噜噜| 九九视频这里只有精品| 天天狠狠色| 亚洲色图在线视频| 99热99在线| 超碰精品手机在线| 五月丁香婷婷综合视频| 丁香色五月天| 亚洲亚洲永久无码777777| 《丁香激情综合久久伊人久久》影视在线观看 -高清预告手机免费播放 -三妹影院 | 亚洲欧洲午夜成人精品av| 99婷婷五月天激情| 天天日日夜夜| 日本爆乳片手机在线播放| www.91.com黄| 六月婷欧美丁香综合| 女人被男人吃奶到高潮| 日韩成人网站精品久久大全| 婷婷九月久久| 亚洲激情五月| 久久人妻视频| 狠狠干青青草| 激情综合5| av操B网站| 大香蕉精品视频| 亚洲综合在线丁香五月| www久久久| 97超级碰碰碰久久久| 爆乳熟妇一区二区三区爆乳| 天天舔天天| 激情国产综合| 日韩人妻在线播放| 免费视频WWW在线观看网站| 日日天天干| 这里只有精品日韩精品| 欧美三级黄色片久久| 婷婷五月天久久久| 深夜男女福利刺激影院一区| ss视频xx91| 婷婷五月激情四月综合| 大香蕉狼人久久| 91人妻九色大屁股| 蜜臀AV在线观看| 碰碰91| 综合网激情| 亚洲综合狠狠艹| site:901-07.com| 99啪啪网| 亚洲成人网站在线播放| Aaa久久| www99热| 五月婷婷啪啪啪| 五月天最新网| 六月综合在线| 六月丁香久久| 婷婷丁香成人五月天| 人妻系列久久久久久久久久久| 伊人9在线| 日韩xx在线| www.99riav99| 一本婷婷丁香久久| 色婷婷五月丁香色| 人人综合色| 超PEN精品在线| 国产精品扒开腿做爽爽爽A片唱戏 青青草国产亚洲精品久久 | 五月激情影视| 丁香五月色情| 婷婷五月天激情网| 五月丁香激情综合网| 五月丁香六月婷婷啪啪| 婷婷五月天美女21p| 热99re| 亚洲欧洲自拍图片专区五月天| 97操视频| 色五月激情视频在线综合| 亚洲久久日| 亚洲AV免费国产电影| 欧美婷婷色五月网| 婷婷五月天激情电影| 91日韩美女被插视频| 亚洲视频在线网| 成人 AV播放| 久久婷婷电影| 黄色成人网站在线播放| 国产成人网址| 丁香六月中文| 九九无码视屏| 少妇搡BBBB搡BBB搡毛茸茸 | 五月天激情婷婷| 亚洲乱码在线观看| 99re在线观看| 五月丁香六月综合图| 北条麻妃伊人| 一区二区免费看| 久婷婷| 激情五月婷婷免费视频| 丁香婷婷六月天| 色综合色色色色色| 欧美三日本三级少妇三99| 五月色婷婷中文字幕| 五月婷婷三级| 九九成年视频| 丁香五月天人体| 精品国产va久| 黄色AAAAA| 丁香五月婷婷在线| 亚洲天天| www,99热在线观看| 成人丁香色| 丁香六月婷婷综情欧美| 色五月激情五月丁香五月婷婷啪啪综合| 激情五月综合免费| 六月激情综合| 99性爱| 9l视频自拍九色9l黑人| 亚洲操人| 丁香五月欧美激情| www久久久| 日韩av一区二区在线/日产精品久久久| 影音先锋一区二区资源站| 亚洲av网址| 久久亚洲A| 老司机伊人| 五月婷婷婷| 婷婷丁香大香蕉| 超碰免费成人| 久久精品亚洲一级牲爱综合| 激情丁香六月| 婷婷情色五月| 成人婷婷桔色| 色五月成人| 99视频免费播放 | 色婷婷女优有码五月亭| 黄色AV日韩| 久久91久久精品久久| 精品牛仔裤超碰| 人妻久久久久久久久妻久久久久| 色色色在线观看| 五月婷婷色欲| 天天色天天爽| 五月天久久婷婷| 一起草日本| 国产欧美婷婷五月| 五月婷婷六月丁香在线| 9久久精品视频| 欧美综合婷婷网| 天天色丁香| 婷婷丁香五月天熟女丝袜| 五月天天天综合| 六月婷婷激情| 毛片毛片毛片毛片| 亚洲成人综合在线| 久九色| 五月婷婷色五月| 香蕉人妻AV久久久久天天| 五月婷婷婷综合网| 可以看的av| 日本三级99人妇网站| 天天人人综合| 狠狠干,狠狠操| WWW.久久久久久久| 超碰高清在线| 久七香蕉| 婷婷五月天小说| 色色97丁香婷婷五月天| 26UUU精品一区二区Com| 91操人| 九九热这里只有精品5| 亚洲顶级VA在线观看-高清完整版在线影院观看-S022AV | 色五月婷婷在线| 五月婷婷色色网址| 久久a热| 色综合五月| 亚洲经典小视频| 99re欧美精品| 久久丁香五月婷| 任我干视频在线观看| 亚洲人人干| 久久五月婷婷综合网| 婷婷开心青青草| 色婷婷五月天| 婷婷五月激情欧美大胆视频| A片女女女女女女BBBB| 蜜臀A∨在线水帘洞| 激情五月天电影| 99欧美| www婷婷| 五月天天丁香婷婷在线中| 九九热免费| 色五月之第四色| 亚洲精品久久久久久久久久吃药| 综合狠狠干| 怎么样可以看免费的一级av| 婷婷六月插屄激情| 日韩AV在线电影| 五月综合视频| 五月天婷婷六月激情网| 偷偷与邻居做爰完整视频| 婷婷5月天av| 激情亚洲五月| 色哟哟www| 激情色色| 色综合综合综合| 色五月激情五月| 色停停香蕉视频| 色久综合| 五月六月丁香激情| 91一起操| WWW色色色COM| AV在线观看网站| 婷婷欧美色| 九九热这里只有国产精品| 人妻无码视频网| 婷婷丁香色五月| 色月九九| 久久大国产香蕉| 婷婷婷婷婷婷婷婷| 夜夜操夜夜爽| 婷婷色情五月| 精品一二三区久久AAA片| 99热这里只有精品热| 久久婷婷综合色丁香| 在线中文字幕视频| 丁香五月综合在线观看| 91操片| 色哟呦av| 五月天激情四射| 色爱终和网| 99综合久久| AV大片在线播放| 9色在线视频| 色婷五月天网站| 成人在线不卡| 玖玖综合色区在线观看| 五月婷婷开心网| 四色五月婷婷| 五月色婷婷AV| 亚洲小视频免费播放| 日本三级99人妇网站| 亚州操操| 伊人五月天在线| 天天插天天草人人玩| 影音先锋男人资源站一区二区| 免费黄色片子| 超碰二区| www.99热视频| 婷婷激情五月天小说| 欧美激情综合| 色五月色图| 国产操逼视频网站| 操B视频在线播放| 久久538| h在线看免费版在线看| 九九热这里只有精品12| 9l视频自拍9l九色成人| 大香蕉狠狠爱主页| 激情色情五月天| 国产69久久久欧美黑人A片| 97碰碰在线观看视频| 欧美搡BBBBB摔BBBBB| 综合一区二区三区| AV操操操| 天天天天天日| 五月综合缴情网| 亚洲 在线 性爱 | 五月丁香色婷婷| 色婷视频| 色欲色香综合网| 亚洲性爱电影| 亚洲旡码| 97操碰碰无码视频| 性色婷婷| 九九AV在线| 日本激情91| 五月天激情网站| 色播五月婷婷| 深爱激情综合网| 91久久婷婷人人澡草| 六月激情婷婷综合| 日日色五月天| 影音 五月 婷婷 久久| 久久精品99| 九九青青草成人| 色色五月天丁香婷婷| 日婷婷| 五月天激情小说欧美激情| 久久99色色| 五月丁香婷婷中文网| 丁香五月AV综合激情| 九九免费视频在线| 天天日夜夜夜操操操操| 东北婷婷五月天| 丁香五月第四色88| 婷婷综合精品视频97| 五月婷婷综合在线观看| 久久机热/这里只有精品| 九九视频这里只有精品| 五月丁香影视| 超碰在线人妻| 99精品视频在线观看| 无码激情AAAAA片-区区| 99亚洲精品综合在线| 久久在线人妻| 5月婷婷五月天| 人妻久久久久久久 | 午夜成人天堂久久无码日韩久久| 婷婷五月综合社区| 婷婷亚洲综合| 99热99精品在线观看| 婷婷综合干| 五月丁香黄色| 99热这里只有精品98| 亚洲九九99精品视频在线播放| 精品色色网| 久色资源| 超碰在线99| 人人操人人妻| 99九九99九九九视频精彩| 99热自拍| 久久视频这里99| 久99久在线观看| 开心五月深爱五月| 久久婷婷色综合老司机| 丁香九月婷婷综合| 呦呦视频无码播放| 激情五月天视频| 综合色色五月| 色五月婷婷基地| 亚洲久久婷婷丁香五月天| 久久婷婷五月天蜜桃| 久婷婷| 久久色大香蕉| 99久久99九九99九九九| 爱婷婷久久视频| 久9久9久9久9久9久9| 中字幕视频在线永久在线观看免费 | 国产毛片精品一区二区色欲黄A片| 亚洲182在线观看| 色综合婷婷| 天天做 天天爱| 9久久精品| 婷婷六月天| 思思99热在线| 久久婷婷色色| 99资源人人| 人人添人人| 色综合婷婷| 人人操人人添人人摸97| 内射爽无广熟女亚洲| 9999热精品| 深爱开心激情网| 五月丁香婷草| 色婷婷第四色| 欧美丁香六月激情视频| 色综合色五月| 欧美色碰| 狠狠色婷婷777| 人妻丰满精品一区二区A片| 五月天婷婷操逼视频| 天堂AV在线看| 国产无套精品一区二区| 久热九九| 91激情五月开心| 久久婷婷艹| 九九免费在线视频| 婷婷五月天色| 婷婷丁五月| 色色五月天网站| 天天操精品| 3www激情| 91精品国产综合久久久不卡电影| 婷婷月五天在线在线看| 五月天综合激情网| 天天人人人人人人人人人人人| 丁香婷婷欧美综合| 开心五月婷婷六月丁香| 99精在线| 婷婷精品免费久久| 五月婷婷啪啪| 欧美久热| 伊人久久婷婷| 91精品久久久久久综合五月天| 五月婷婷在线视频观看| www.玖玖九| 久久99久久99精品免视看婷婷| 99精品视频免费观看| 五月天综合久久丁香91| 五月天天爱| 色婷婷人人| 六月色播| 中文字幕AV网址| 超碰9| 日本视频99| 久草性爱| 日日干五月天婷婷| 天天爽天天爽| wwwxxx五月婷婷小说| 最近中文字幕2019视频1| 月婷婷亚洲| 国产3p露脸普通话对白| 99色热视频| 国产欧美大香蕉一区| 九九99一区| www.久久爱.c n| 亚洲色夜| 久久永久网址| 变态 另类 在线| 久久人妻人人槡| 亚洲色色五月| 久久激情综合| 色色色五月婷婷| 妻久久久久| 99视频综合| 综合网天天| 91操熟女| 亚洲精品久久久久久久久久吃药| 欧美激情xxxXX| 99热有精品在线观看| 久久久精品色| 99热这里只有精品1025| 97人妻碰碰中文无码久热丝袜| 亚州激情在线视频| 热久91| 九九99免费视频| tingting五月天亚洲| 激情图片亚洲| www.色婷婷.com| 色噜噜狠狠色综| 激情五月天婷婷播播久久综合91 | 高清无码视频网址| 五月天久久www| 九九综合网色全集| 9999久久久久| 婷婷五月天激情免费在线观看| 大香蕉九九操| www.99热| 五月丁香六月婷婷色情| 大香蕉久久伊人婷婷五月丁香| 国产精品a无线| 伊人五月综合网| 久久性爱视频免费| 色婷婷久久视屏| 国内外色色色色色成人视频| 激情久久综合网| 狠狠爱综合网| 久久婷婷大香蕉| 亚洲精品视频在线| 丁香婷婷激情六月五月开心| 99久热| 五月丁香婷婷99| 大学生高潮无套内谢视频| 这里只有精品在线视频在线观看| 99热婷婷| 婷婷综合九月| 一二线视频 另类| 91婷婷丁香| 思思热精品在线观看| 操一区| 超碰在线网站| 久久久高清| 久久98| 91狠狠综合网| 日韩精品一曲二曲三曲四曲五曲| 亚洲成人av在线| 玖玖资源天天无码| 96人人操人人操人人| 亚洲无aV在线中文字幕| 亚洲V国产V欧美V久久久久久| 欧美色色色色色色| 五月丁香龟婷婷| 天天 日综合| www.超碰| 婷婷99狠狠躁天天躁中| 玖玖玖婷婷婷| 亚洲人成播放网站| 秋霞少妇AV网站| 99久热| 99热亚洲精品| 国产 亚洲 在线| 色色a| 天天操夜夜橾| 久久久久99精品成人片| 涩综合在线| 色 免费网站视频| 成人五月天丁香婷| 丁香五月婷婷欧美激情-中文天堂最新版在线观看| 黄桃AV无码免费一区二区三区| 五月花激情| 激情五月天色色| 伊人干综合| 日本熟妇精品99| 激情综合色婷婷啪啪六月天| 九月丁香婷婷基地| 欧美精品99久久久| 99热免费| 特级西西4444www无码| 成人婷婷| 九九热啪啪| 99精品一二三四视频| 婷婷丁香五月色| 欧美婷婷成人| 日本九九网| 97在线视频人妻九色| 99亚洲视频| 99ri精品在线| 99超级碰碰| 外国碰视频网站97| 激情五月综合网| 99热这里只有精彩| 99性视频| 99原创自拍视频在线观看| 粉嫩AV久久一区二区三区| 丰满女老板BD高清A片| 欧美日韩中文国产一区发布| 亚洲AV成人在线| 强壮公让我夜夜高潮A片视频| 久热伊人| 婷婷五月激情基地| 爆乳熟女-区二区三区| 狠狠色婷婷丁香五月| 色婷婷女优有码五月亭| 色婷婷精品视频| 久综合网| hd五月婷婷在线| 久久成人天| 深爱激情综合网| 97干视频| 亚洲亚洲人成综合网络| 色爆五月| 亚洲在线视频321| 色婷婷婷婷| 成人婷婷桔色| 婷婷五月天在线观看第二页| 色婷婷狠狠干芒果TV| 亚洲欧美丁香五月天亚洲欧美| 色五月欧美| 丁香五月手机在线| 婷婷五月激情基地| 99玖玖在线视频| 国产永久一二一起草| 天天干肏夜夜| 五月天停婷基地| 99热91| 国产免费av网站| 丁香激情久久| 西瓜美女a片| 天堂久久大香蕉| 丁香五月激情宗合网| 草婷婷在线| www久久艹| 亚洲欧美在线观看| 久久久久激情网| 精品久久人妻热| 思思热这里只有精品| 婷婷成人视频| 婷婷色狠狠| 996热| 天天干夜夜想| 亚洲操操| 黄色精品五月婷婷| 亚洲性爱日韩无码| 五月丁香大香蕉| AV在线免费观看不卡| 综合久久97| 五月婷婷欲色| 亚洲综合色色| 葵花AV在线| 婷婷五月丁香六月伊人网| 人人爱人人摸人人澡| 九九免费视频| 色五月婷婷1| 丁香五月婷婷乱| 色婷婷在线播放| 日本偷拍九九九| 狠狠夜夜五月丁香| 伊人久久大香线蕉av一区| 久久综合久色欧美综合狠狠| 99草视频在线观看| 五月丁香久久综合精品| 五月丁香欧美综合| 丁香久久激情俄| 全国最新疫情| 久久婷婷亚洲| 99男人的天堂| 超碰1999| 爱iii做iiii日| 欧洲亚洲免费视频区| 色五月激情综合| 99热亚州综合| 天天天添天天操| 思思热99热| 99九九99九九九视频精彩| 激情婷婷五月天日本系列| 婷婷丁香六月| 免费婷婷| 中文AV在线观看| 2021日韩无码| 婷婷色五月色| 在线中文字幕免费视频| 深爱网深爱综合网| 色情综合| 人人色人人摸人人看| 五月停停999| 六月大香蕉| 欧美性丁香色色五月天干干| 99精品偷自拍| 色狠狠伊人久久五月丁香| 亭亭五月色男人| AV在线大香蕉| 久久婷婷色色| 99日本黄站| AAA久久久| 伊人激情综合网| 亚洲无线视频| 深夜男女福利刺激影院一区完整| 狠狠狠色激情综合适合| 五月黄色婷婷| 五月婷婷激情久久| 婷婷五月综合免费在线| 色性五月天| 国产九月婷婷| 六月色播| 97资源碰碰在线| 久久久久久9| 天天肏视频| 天天色色天天| 日日干日日色| 国产精品91抖高| 涩涩涩.com| 五月婷中文娱乐综合| 99精品小视频| 九九综舍久久| 操人无码| 丁香五月婷婷少妇| 国产精品日本一区二区在线播放 | 中文av在线观看| 欧美精品18| 色啪影院| 亚洲爆乳无码精品AAA片蜜桃| 月婷婷亚洲| 内射 无码 伊人| 五月婷婷五月天在线| 久七香蕉| 97热这里只有精品| 丁香亚洲婷婷五月| 婷婷综合久久综合| 玖玖午夜视频| 五月婷丁香花| 91久久精品国产91性色TV| 五月天另类图片| 久久精品综合色| 99久久极情精品一区| 亚洲性爱99| 欧美一级a| 天天肏天天肏天天肏| 国产精品成人在线| 思思re最新视频| 九九这里有精品| 97色色色色色| 九九久久这里只有精品XB| 亚洲精品一二三| 久久久久久久人妻| 欧亚色色| 91日本在线免费| 色婷婷久久综合| 99热这里只有精品13| 99玖玖视频| 婷婷中文字幕| wwwC0maV五月花| 伊人激情啪啪| 丁香88AV五月婷婷| 久久久婷婷五月亚洲97号色| 婷婷爱在线观看| 中文字幕av网站| 丁香五月成人网| 久久ab| 蜜桃婷婷五月| 五月天另类图片区99| 五月丁香综合网| 国产VA亚洲VA96| 五月色婷婷在线观看| 97自拍视频网| 日日夜夜天天| 激情五月天婷婷| 婷婷中文字幕版| 日本三级日本三级三级人妇四虎| 乱乱av| 亚洲久久激情| 色婷婷五月综合| 无码毛片992367| 欧美日韩123| 热婷婷av| 性做爰1一7伦| 操人91| 激情综合五月婷婷| 婷婷五月天免费| 丁香五月婷婷啪啪| 99碰碰中文| 丁香六月在线综合| 开心激情五月天网| 99在线免费观看| 五月婷婷自拍视频| 久久激情综合| 综合久久97| 激情伊人网| 亚洲AV日韩在线观看| 超碰久热| 超碰av在线| 91免费看片| 婷婷五月激情丁香| 日日撸日日操| 五月永久激情| 第四色色六月色综合| 丁香狠狠色婷婷| 极品五月天| 婷婷五月丁香青青草在线| 九九热精品视频在线观看| 91久久九久久九久久九久久九久久| 色婷五月天网站| 激情综合综合综合| 91精品91久久久中77777| 久久综合色情网站| 无码一区二区三区四区五区91c| 99re6在线视频精品免费| 91综合在线| 影音先锋噜一噜| 91久久精品无码一区二区三区| 99热在线免费| 婷婷五月天堂一本在线| 99热九九在线| 99热综合在线观看| 婷婷色5月天在线。| 久久综合激情五月天| 九九亚洲综合| 婷婷四色五月| 久99久视频| 色情综合| 丁香五月婷婷啪啪| 丁香色五月直播| eeuss人妻| 综合五月草| 激情 五月 婷婷 丁香| 热99这里只是精品| 99热国品免费| 久一这里有精品国产| 激情久久四色| 婷婷五月永远18免费久久久| 99热免费精品热久久66| 久久久久久久丁香五月天婷婷| 另类图片天天影视在线观看| 丁香五月婷婷AV| 依人大香蕉| 天天爽天天爽天天爽天天爽天天爽| 九月婷婷| 日日干日日s| 操逼棍操逼| 亚洲五月花| 婷婷五月激情的图片| 大香蕉婷婷色| 99操视频| 久久五月天激情| 久久久9久| 日亚二欧美| 五月婷婷影视| 92国产福利| 丁香九月婷婷色| 色八戒操婷婷| 久热9| 开心激情网五月天| 欧美经典片免费观看大全| 99在线观看| 婷婷五月丁香第四色超碰在线| 久热精品免费视频4| 人妻Av在线| 狼人婷婷久久| 3pAV| 五月婷婷久草在线视频综合| 性天天中文网| 美欧成人视频| 日本三级日本三级99| 欧类av怡春院| 操婷婷基地| 激情五月天婷婷| 99热这里只有精品1998| 久久婷婷五月天蜜桃| 91热在线| 一本色道久久88综合日韩精品| 岛囯综合激情网| 色婷婷成人网| 亚洲色情一区二区三区四区| SS丁香五月婷婷| 色噜噜狠狠色综合网| a在线观看| 久久五月天激情婷婷| 天天久久狠狠色综合| 99er6| 九九色图| 最近中文字幕2019视频1| 综合爱久久| 九九热视频首页/这里只有精品| 婷婷五月综合激情免费视频| 婷婷成人AV| 国产毛片精品一区二区色欲黄A片| 两性婷婷丁香五月| 99九九99九九九视频精彩| 婷婷五月天深爱| 秋霞A V毛片| 丁香5月啪啪| 色色色婷婷五月| 亚洲色就是色色色| 亚洲另类电影| 丁香婷婷色情社区成人小说| 开心五月深爱五月丁香五月激情五月| 亚洲av免费在线| 99久久久精品| 888精品福利地址| 色五月 五月婷婷| 男男野外做爰全过程69| 精品女人九九九| 天天爽日日爽夜夜爽| 99热在线只有精品| www色哟哟| 99'无码| 久久色9| www.婷婷五月.com| 日本www五月婷婷| 色色五月天网站| 久久一级免费黄色片| 色五月激情五月丁香五月婷婷啪啪综合 | 丁香婷婷久久| 丁香五月伊人| 婷婷五月综合性爱| 欧美激情五月天在线观看| 大香蕉久久久久| 亚洲人人操| 五月天艹天天| 亚洲精品又粗又大又爽A片| 色五月婷婷1| 伊人啪啪网| 狠狠色丁香乆乆| 性爱在线播放av| 天天骑天天操| 99久久99视频| 久久久这里有精品| 丁香五月天堂亚洲社区| 婷五月天在线草| 26uuu精品一区二区| 91狠狠色色丁香婷婷综合久久| 思思热久久久久思思热| 婷婷六月久久综合导航| 91日日日| 五月天伊人久久久久| 九九色婷婷五月天| 玖玖精品资源| 国产精品久久久久9999小说 | 亚洲不卡| 五月激情婷婷综合| 色婷婷五月天偷拍| 亚洲午夜一区二区| 久久免费丁香| 日本WWW九九九| 婷婷刺激综合| 激情网五月天| 婷婷丁香五月激情密臀av| 五月天黄色激情小说| 性爱网五月婷婷| 第一区久久网站| 久久久潮喷-久久久九九-成人AV| 丁香激情六月天婷婷|