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
返回資訊列表
九九精品免费视频99| 五月婷婷丁香啪啪| 天天爽日日爽夜夜爽| 色色五月天com| 青草五月天| 91碰视频| 欧美日韩成人在线网| 久99热| 99免费成人网| 丁香六月婷| 婷婷色五月丁香六月欧美啪| 人人爱人人摸人人澡| 五月天婷婷情色| 大香蕉九九| 亚洲瑟瑟精品在线| 色丁香五月婷婷| 99久久国产宗和精品1上映| 色性五月天| 欧美人久久| 亚洲色色色| 五月婷亚洲精品| 99操视频| 色婷婷丁香网| 五月丁香美女视频| 1024手机在线观看看片_日韩精品| 色婷婷基地 | www婷婷| 亚洲人人操BD| 狠狠色噜噜| 六月婷婷天天操夜夜爽视频| 91精品综合久久久久久五月丁香| 色女人久久| 97超级啪啪在线观看| 97婷婷色| 成人做爰高潮A片免费视频| 91九色|疯狂|高潮|对白|| 99思思热只有在这里看| 国产精品激情五月天色婷婷| 五月丁香狠狠| 久久性爱视频久久性爱视频| 亚洲婷婷激情五月天| 79亚洲精品少妇| 婷婷成人综合| 色色五月天婷婷| 99性感视频| 婷婷五月天.com| 色,激情五月天| 玖玖婷婷精品| 丁香五月成人| 色网站99| 婷婷色5月激情网| 六月婷伊人| 播五月婷婷开心| 婷婷99狠狠躁天天躁| 99热e| 99网址在线看| 爱爱色五月天| 99小视频网站| 影视av久久久噜噜噜噜噜三级| 色久综合天天做视频| 婷婷四色成人综合色视| 五月丁香婷婷视频| 99久久性爱| 色五月婷婷久久| 五月激情啪啪| 丰满少妇乱A片无码| 综合色五月亭亭| 久久婷婷五月综合色欧美| 中国女人内射6XXXXX| 亚洲字幕AV一区二区三区四区| 国产亚洲成AV人片在线观黄桃| 天天做天天爱天天爽| 天天爽天天爽| 丁香五月黄色| 六月婷婷狠狠| 婷婷五月综合亚洲| 色狠狠综合| 国产乱妇无乱码大黄AA片| 高清一区二区三区日本久| 蜜桃成语时李时珍 免费| 伊久大香蕉| WWW.五月com| 92久操视频| 婷婷爱爱蜜臀天天操| 婷婷香香五月| 激情图片五月天| 91久久久久久久久久久| 色五月婷婷在线观看第一页舔| AV中文字幕夜夜操b天天摸bb | 久久精品无码一区| 玖玖爱综合网| 丁香五月婷婷色| 六月丁香啪啪啪| 丁香五月婷婷啪| 久久久网站| 超碰人人插| 99久久99视频| 激情网综合| 婷婷综合视频| 最新无码专区| 美女天天艹人人爽| 久9久9久9久9久9久9| 天堂成人A片永久免费网站 | 大香蕉视频婷婷| 丁香五月婷婷综合精品素人| 99re这里只有精品首页| 99精在线| 色色色色色五月丁香| 六月99天天婷婷激情综合| 丁香网五月网| 日日操天天操| 九九激情网| 99热在线观看这里只有精品| 五月激情在线| 丁香五月婷婷六月婷婷| 99热综合网| 538在线精品| 99日逼视频| 五月丁六月婷| 岛国在线观看91| 久久香蕉影院| 色婷婷操逼| 西西4r午夜剧场| 婷婷四色五月| 色一情一乱一乱一区91| 五月丁香花激情综合网| 99久热这里只有精品| 激情六月婷婷| 人妻操逼视频。| 久久精彩视频| 日本乱论99| 开心五月深爱五月婷| 思思热在线精品视频| av在线观看网址| 一个色的综合| 色色欧美色色色| 国产激情综合五月久久| 很很干天天干| 天天狠天天狠| 中文字幕日产A片在线看| 超碰超碰在线| 久久久婷| 综合五月草| 97在线刺激| 91精品久| 日韩成人电影在线播放| 玖玖爱综合网| 亚洲五月天激情| 九九热大香蕉| 激情五月丁香五月| 草AV9999| 色婷婷久久7777| 夜夜夜叫天天天做| 九月婷婷综合色干| 色综合天天综合成人网| 99热爱爱干干日| 99性爱视频| 2013AV天堂| 色情五月婷婷| 一区二区成人电影| 中文毛片无遮挡高潮免费| a色色色色色| 色五月婷婷丁香五月| 欧洲亚洲免费视频9| 人妻综合网| 五月婷婷三级| 久久er99热精品一区二区| 久热这里只有精品在线观看 | 在线超碰精品| 九九99九九99偷拍视频免费看| 日韩日比视频| 99这里有精品视频| 99日韩网站| 日韩av高清| 五月婷天天搞视频| 67194成I人在线观看线路1| 欧美综合五月丁香六月婷| 激情综合99| 久久人人超| 激情图片亚洲| 9l视频自拍九色9l黑人| 日韩婷婷| 五月婷婷六月婷| 丁香六月婷婷色XXXXX| 丁香五月欧美午夜视频| 天天噜天天爱| 干一干xxxx| 夜夜爽天天干| 99视频在线精品免费观看2| 狠狠久久婷| 99超级碰碰| 婷婷伊人綜合中文字幕| 99热黄| 色婷婷激情四射视频| 99精品自拍| 1000部毛片A片免费观看| 婷婷五月天成人基地| 婷婷久久婷婷| 五月综合激情| 91九色在线视频| 任你艹| 国产av一区二区三区| 99在线精品在线视频| 婷婷丁香五月天影院| 999热这里只有精品| 色婷婷九月| AV电影在线播放| 婷婷综合中文| 色999亚洲人成色| 综合激情深爱| 人人色性网| 五月丁香婷婷色播无码| 双性美人被调教到喷水A片| 激情深爱五月| 色小说五月婷婷| 九九综合九九| 久久99精品久久久久久噜噜| 丁香五月亚洲综合| 韩国真做片在线观看| 五月婷婷官网色| 亚洲中文无码成人| 激情五月天黄色小说| 91免费试看| 五月天开心网| 99爱在线精品视频免费观看| 97在线/亚洲| 五月色丁香国产在线视频| 9热在线观看| 亚洲综合网在线| 丁香五月色色| 激情图片婷婷| 五月天激情啪啪| 丁香婷五月| 丁香五月色| 五月伊人婷婷999| 亚洲精品色| 91色涩| 天天色天天爱天天爱天天爱y| 色五月无码| 六月丁香六月婷婷欧美| 九九色色色| 色级婷婷| 欧美WW在线网| 五月婷婷七月丁香| 亚洲熟女乱色综合亚洲网站| 狠狠色狠狠爱| 2017人人操| 97国产精品女人碰碰| 国产精品久久久爽爽爽麻豆色哟哟| 婷婷伊人綜合中文字幕| 99久在线精品99re8| 色婷婷免费观看| 思思热精品在线视频| 日韩六十路91性交电影| 亚洲六月婷| 色色色视频免费无码 | 色之综合网| 五月丁香久久综合| 五月色婷婷在线观看| 亚洲综合视频网| 密臀av无码人妻精品| 超级久久久| 丁香啪啪中文字幕| 99九九在线视频| 射琪琪| 丁香婷婷午夜| 97婷婷狠狠| 久久五月网| 182TV亚洲| 五月丁香六月色| 97人人做| 99区视频| 五月丁香六月婷婷亚洲综合| www.maotanji.com| 婷婷色五月激情| 五月婷婷大香蕉| 图片区 小说区 区 亚洲五月| 国产做爰视频免费播放| 操日本色| 99re在线视频精品,这里只有精品18,| 天天草婷婷五月| 久久这里只有精品无码| 这里只有精品视频免费在线观看| 五月天色图| 99热精品在线在线| 啪啪九九色| 玖玖激情网| 亚洲顶级VA在线观看-高清完整版在线影院观看-S022AV | 久久久久久久11111111111| 婷婷色网址| 久久婷婷电影| 色就是色婷婷五月亚洲激情| 五月色天情| 丁香五月天婷婷激情| 激情九月综合| 亚洲av电影网站| 九九人人自拍| 精品色色网| 婷婷天天日婷婷| 五月丁香啪啪激情| se色婷婷视频| 婷婷五月综合激情| 深爱激情婷| 超碰在线观看99| 国产超碰在线| 国产免费AV网站| 五月丁香色五月| 激情综合五月开心狠狠| 影音先锋女人AA鲁色资源| 丁香五月婷婷高清| 久久在线视频只有这里有精品| 日日爱激情| 五月婷婷丁香婷婷| 伊人色综合影院视频| 噜噜色五月| 婷婷五月天亚洲综合| 99在线精品视频| 国产FREESEXVIDEOS性中国| 久婷狼色诱惑在线| 激情五月天婷婷激情| 996热re视频精品视频这里| 九热精品| 婷婷五月天精品| 人人操Av| 开心五月激情网| 日本韩国视频在线观看社区免费的9| 久久人人九| 天天干天天玩天天夜天天射天天操天天日蜜臀少妇 | 日韩无码专区| 91精品91久久久中77777| 天天色综合网吨吧| 国产精产国品一二三在观看| VA婷婷| 噜噜视频| 色444综合网| 丁香六月视频| 六月婷婷综合| 狠狠操狠狠爱| 91精品综合久久久久久五月丁香| 啪啪婷婷五月天激情| 丁香五月综合在线视频| 精品视频二级九九| 色色色色色色色色色999| 人妻久久久久久久 | 婷婷五月花| 人人操人人妻| 五月婷婷二月丁香| 亚洲精品九九| 99热精品在这里| 天堂久久丁香| 九一99| 国产看真人毛片爱做A片| 91精品婷婷国产综合久久| 婷婷五月丁香手机在线视频| 五月婷婷亚洲综合在线 | 狠狠爱综合| 色停停五月,在线观看| 色九月综合| 一本综合丁香日日狠狠色| 五月丁香啪啪网| 婷婷香香五月| 极品人妻VIDEOSSS人妻| 五月综合婷婷久久在线| 天天肏在线视频| 日日操日日射| 午夜福利8055| 丁香色综合| 综合久久高清| 五月丁香六月欧美综合网站| 色五月无码| 婷婷九月| 色婷婷色五月综合| www.99久久久久99| 五月丁香啪啪激情| 干亚洲天堂| 婷色五月| 无月播播激情在线观看视频| 好色婷婷| 99这里有精品视频| 色丁香婷婷| 97热超碰| 伊人久久99| 丁香六月婷婷综合色| 欧美久热| 九九亚洲视频| 色一情一乱一乱一区91| 精品夜夜澡人妻无码AV| 天天爱天天吃狠天天透| 欧美色图45678| 依人大香蕉| 狠狠狠狠狠草| 97碰| 日韩综合成人| 无码髙清| 天天色天天干天天插| 色色色香蕉五月婷| 人人操日| 色5月婷婷| 久久婷婷夜| 99热最新| 婷婷五月天开心网| 性色播| 天天综合网~91| 丁香 亚洲 久久| 五月婷婷六月丁香免费| 色综合久久88色综合天天| 婷婷五月亚洲综合| 五月婷婷久草在线视频综合| 啪啪一区| 激情性爱网站| 精品香蕉99久久久久网站| www.深爱激情| 亚洲激情亚洲激情| 色婷婷四色| 99亚洲精品| 另类综合婷婷五月天欧美视频| 99热亚洲| 玖玖综合玖玖| 4399无码视频| 俺去也综合| 超碰熟女拍拍| 五月丁香在线国产 | 991精品在线视频| 色婷婷色五月丁香| 天天久久人人| 五月天三级久久| 大地9中文在线观看免费高清 | 婷婷丁香五月天小说| 婷婷娌伦网| 图片区 小说区 区 亚洲五月| 99热成人| 99热无码| www狠狠| 天天色综和网| 操碰99| 色开心五月婷婷丁香HD| 国产婷婷婷| 99热最新| 啊v视频在线观看| 久久精品亚洲热| 五月激情丁香六月狠狠干| 九月婷婷色色| 五月天丁香成人| 丁香九月色| 国产精品18久久久| 亚洲操操操| 91色在线/日韩| 播四月婷婷六月丁香| 婷婷六月激情啪啪| 777久久精品| 91超级碰碰碰| 五月婷婷激情综合| 天天看A片| www.久久爱.c n| 六月婷婷天堂| 怡春院天天干| 综合九九日本| 五月丁香久久色| 91av成人| 久久 中文 日本| 丁香五月97视频| 97碰碰免费.视频| 久热在线中文字幕色999舞| 天天插天天干| 天天做天天爱天天高潮| 嫩BBB搡BBBB榛BBBB| 六月丁香婷| 色色五月天激情| 97福利视频| 色五月婷婷在线| 丁香五月天堂网| 天天爽天天操| 成人综合视频网址| 在线播放 精品| 99五丁香月| 99超级超级超级碰| 六月丁香色色色| 婷婷五月激情图片| 激情五月,色五月| 99热99网| 五月天婷婷影院影院| 丁香综合伊人AV| 九九热这里只有精品31| 青草五月天| 热99在线精品| 色婷婷色99国产综合精品| 五月婷婷激情五月| 丁香六月婷婷缴情欧美| 亚洲色综合色网| 91青娱乐青青草| 9色视频在线| 激情小说五月丁香在线视频观看视频| 久热最新视频| 五月婷婷五月天| 综合色图区| 久久婷婷五月综合| Av中文在线| 九九人人看| 中文激情网| 色五月丁香一区在线| 天天色域综合网| 色五月婷婷综合在线| 五月亭亭六月天| 婷婷91视频| 五月丁香婷婷激情四射迷人| 丁香五月影院| 99热这里只有精品16| 99视频九九热| 亚洲视频在线网站| av网址在线| 很很干在线视频| 99热官网精品在线| 婷婷六月天| 色色影院黄大片| a网站免费观看| www.av骚货| 激情久久综合| 青青久久91| 亚洲色五月| 日本人人xxx| 九九这里都是精品| www.91AV.COM| 人妻五月天激情开心网| 99成人| 97人人射| 色欲九区| 性按摩玩人妻HD中文字幕| 亚洲九九99精品视频在线播放| 久热re在线视频| 丁香五月网络网络| 九九re精品视频在线观看| 五月丁香六月婷| 免费观看2018www黄色操逼网站| 五月丁香六月久久| 日本九九网| 在线观看免费视频| 婷婷精品在线| 色吧五月婷婷| 五月丁香六月片| 999热在线视频| 五月天激情.com| 超碰99在线| 淫视馆av三区| 开心激情久久久久久久| www色色色com| 亚洲成人无码网站| 丁香五月五月婷婷五月天激情四射| 97干欧美| 国产ava| 五月天婷婷激情小说电影| 天天干天天干天天| 日韩成人精品中文字幕| 91干视频| 99啪在线| 狠狠狠狠狠狠| 久热精品在看| 成人性爱无码| ..真实国产乱子伦毛片| 久热视频A.| 婷婷亚洲影院| 亚洲成人影视在线观看| 91啪啪视频| 91丁香五月| 丁香激情五月天| 超热久碰.com| 婷婷五月天在线视频网站| 日逼AV影音先锋男人资源站| 婷婷色日本| 欧美成人精品A片免费一区99| 9er热在线精品视频| 亚洲激情婷婷| 99热国内| 五月停停大香蕉| 婷婷五月天伊人网在线观看视频| 99久久国产宗和精品1上映| 五月天婷五月天综合网小说首页-五月天激激婷婷大综合,婷婷亚洲综合五月天小说 | 丁香五月冃欧美| 亚洲婷婷性爱| 欧美VA在线| 国产婷婷五月| 婷婷五月综合网| 亚洲成人在线免费| 五月天婷婷影院| 亚洲精品小视频| 97五月婷| 婷色五月天| 91日韩美女被插视频| 亚洲99在线| 色v综合网| AV九九| 亚洲激情校园| 在线综合亚洲欧美65| 婷婷六月激情在线视频| 日韩黄色电影| 99色色网| 久久久久久丁香五月| 婷婷日| 99精品偷自拍| 久久99免费视频| 婷婷伊人视婷婷婷| 综合五月婷婷| 欧美天天干天天草| 五月丁香婷婷婷激情爱爱| AV在线免费播放| 婷婷五月综合婷婷| 婷婷五月综合中文字幕| www.婷婷亚洲基地| 韩国婷婷丁香五月| 伊人网啪啪| 色婷婷亚洲婷婷| 热99这里只有精品视频| 91婷婷丁香五月| 9久久精品| 美女美女美女三级色天天天天天| 久草A片| 丰满人妻妇伦又伦精品国产| 五月丁香五月综合欧美| 色噜噜狠狠色综合伊人| 五月婷久草| 狠狠五月天| 91人人爽久久涩噜噜噜| 丁香五月天欧洲在线| 91日本在线免费| 九九成人视频| 激情综合五| 涩综合在线 | www综合久久| 日本九九九九| 99啪啪网| 99国产性感视频| 日本69日人视频| 伊人爱爱日本| 这里只有精品视频在线| 国产亚洲精品久久一区二区三区| 丁香五月视频在线观看| 青青草原亚洲天堂| 五月婷婷精品视频| 人妻熟女一区二区AV| AV操逼网| 亚洲天天操| 狠狠色丁香婷婷基地| 色玖玖爱| 日韩一级网站| 久久99草五月婷婷| 少妇人妻丰满做爰XXX| 在线婷婷| 国产成人高清| 久久精品人妻| 色五月影视| 亚洲国产成人裸舞| 丁香五月日啪| 色丁香五月婷婷婷| 97久久久| 亚洲第一成人无码A片| 丁香五月激情啪啪啪| 免费看欧美成人A片无码| 九九热av| 久久曰曰| 婷婷九月激情| 五月激情网站| 97se视频在线| 久久超级碰碰| 婷婷五月天激情电影| 婷婷丁香五月天激情| 日本AAAAAAAAAAAAAA片| 99热这里只有精品热| 99在线观看这里都是精品| 天天日天天做天天舔| 欧美婷婷日本| 五月婷亚洲精品AV天堂| 婷婷综合色| 六月丁香综合| 操一区| 无码se| 99这里是99在线视频| aⅤ79成人片| 亚洲六月婷婷| 99亚洲精品视频在线观看| 噜噜噜狠狠色综| 日本 欧美在线| 国产99久久久| 五月丁香激情五月天| 激情六月丁香综合| 丁香五月第九色| 久久99色色| 丁香六月婷婷姐网| 激情综合激情综合| 午夜色婷婷| 九九这里都是精品| 丰满人妻一区二区三区| 婷婷99狠狠躁天天久久久九九九| 婷婷视频在线碰| 操婷婷久久| 国产精品汇聚精彩第二页 - 高清完整版在线 - 青蛙AV | 中文字幕视频在线播放| 五月色情婷婷| 丁香五月激情月| 日韩在线五月天婷婷| 啪啪小说五月天| 五月天激情小说| 亚洲精品亚洲人成人网| 九九色色| 欲求不满的人妻| 热99精品视频| 亚洲俩性性爱图片久久第六页| 婷婷色系婷色| 色五月亚洲| 丁香色婷婷五月天| 天天久综合网永久入口18| 亚洲殴洲精品Av在线| 黑人熟妇一区二区三区| 華人性愛AV在線| 久久久五月婷婷| 少妇性按摩无码中文A片| 91色色色| 99久久婷婷国产综合精品电影| 九九超日本| 九九熱最新視頻| 天天爽天天干天天| 婷婷五月色播放| 玖久久网站| 久久综合中文| 日日夜夜综合| 99热国产免费| 日本三日本三级少妇三级66| 婷婷丁香六月综合激情站| 丁香五月在线观看完整版| 爆乳熟妇一区二区三区爆乳照片| 情欲禁地| 色五月综合激情| 激情五月婷婷丁香综合网 | 亚洲春色奇米影视| 五月婷婷久久久| 五月婷六月丁| 99精品综合视频| 亚洲爱婷婷| 激情久久天天| 99性视频| 婷婷五月激情的图片| 婷婷之六月丁香| 九九九九综合| 日韩AV中文字幕在线| 天天看片日日夜夜| 五月丁香成人| 东京热人妻一区二区三区在线| 亚洲视99| 五月激情婷婷综合| 99人人看| 五月婷婷激情综合拍| 色噜噜狠狠一区二区三区| 热热99爱爱| 天天热夜夜操| 婷婷激情五月| 色10月婷婷视频| 超碰国产在线观看| 9色操| 成人欧美Va| 五月天婷婷小说| 久久久性爱视频| 五月婷婷五月天在线| 色色色com| 五月丁香久久久日婷婷久久婷婷日| 婷婷欧美综合| 色九月综合网| 婷婷五月天激情网站| 9色91视频| 丁香五月婷婷呀| 天天天天干| 五月丁香色情| 婷婷五月激情综合| 色五月婷婷在线| 狠狠 久久| tingtingzonghewang| 色综合五月| 超碰在线99| 99九九久久| 大香蕉婷婷色| 九九人人操| 操久久网| 天天操天天操天天操天天操天天操| 久久久久亚洲AV无码网影音先锋| 丁香五月av| 欧美性久| 久久婷婷亚洲| 丁香五月亚洲激情婷婷射| 99re热在线视频| 欧美性爱五月天| 久久这里都是精品| 老司机午夜福利视频金瓶梅| 国产精品久久久久久久久久| 热99精品视频| 成人短视频在线观看| 丁香五月天色综合| 亚洲熟妇AV乱码在线观看| 99热久只有精品首页| 国产69久久久欧美黑人A片| 99精品视频在线| 青青草青青草五月天| 五月天婷婷久久综合| 婷婷亚洲在线| 开心婷婷五月| www.久久久久| 精品一区二区三区四区五区六区| 九九热在这里只有精品| WWW久久99久久99久久| www色五月| 五月天开心色情网| 51国精产品自偷自偷综合| 婷婷五月天,影院| 激情综合视频| 狠狠爱婷婷丁香| 五月总合激情网| 变态 另类 在线 | 青青.com| 五月天丁香婷婷视频网址| 五月天色婷婷伊人网| 五月丁香在线观看99| 99re8在这里只有精品| 天天综合91入口| 综合婷| 久久五月丁香婷婷| 亚洲九九九九| 天天透天天摸天天舔| 久久精品凹凸分类| 亚洲另类日本| 五月天激情综合首页| 国产精产国品一二三在观看| 丁香婷婷深情五月亚洲| 久操操| 丁香五月伊人| 99人妻碰碰碰久久久久禁片| 激情五月com| 色爽九九| AV片一区在线观看| 亚洲AV网址| 色七色九九| 亚洲a片免费观看| 婷婷五月天成人| www五月天激情com| 超碰人人色| 午夜激情四射影院| 激情五月综合婷婷| 美女五月天| 色婷婷最爱五月| 射区导航| 97碰精品| 色播丁香| 久操综合| 亚洲精品激情| 丁香五月婷婷姐| 99热最新精品| 4399在线观看免费高清毛片| 激情网五月天| 日本啪啪网| 99热只有精| 思思视频精品| 亚洲一级色电影| 91久久精品视频| 成人无码髙潮喷水A片| 中文字幕av在线| 日韩在线aaa| 婷婷五月天激情偷拍| 丁香五月区| 五月婷婷亚洲综合在线 | 五月色丁香激情| 深爱婷婷基地| 五月天激情图片| 五月天AV大香蕉| 91九色PORNY大屁股| 日日夜夜狠狠| 日韩视频99| 色婷婷偷拍| 婷婷色五月在线视频| 天天 青草 丝袜制服 在线| 五月天激情综合首页| 丁香婷婷六月天| 国产精品国产| 亚洲操B视频| 丁香五月天亚洲综合| 亚洲九九99精品视频在线播放| 91欧美| 激情五月天影院| 五月色婷婷影院| 九九热最新| 国产va视频| 五月丁香六月婷婷欧美综合| 有哪些A片网站| 人人做天天爱| 婷婷激情五月天小说校园| 婷婷五月噜噜| 欧美色色色色色色色| www国产亚洲色婷婷com| 五月WWW| 这里只有精品在线免费视频| 66精品成人免费网站在线观看| 玖玖福利视频资源| 五月天婷婷高清无码| 五月情涩综合婷婷| 99久久大片| 欧美人妻一区二区| 久久久性爱视频| 日日爽夜夜爽| 久久99久久99精品免观看粉嫩| 久久婷婷91| 九月婷婷久久| 天天干天天爽| 欧美成人AAA片一区国产精品| 无码激情AAAAA片-区区| 亚洲深喉AV| 欧美A片在线视频免费观看| ztEJj| www.99精品视频| 婷婷色色丁香五月天| 91偷拍视频| 欧美五月丁香在线| 99综合99| 日韩视频99| 99精品在线观看视频| 日日色综合| 农村熟妇高潮精品A片| 婷婷五月激情基地| 色月丁| 影音先锋一区| 热这里只有精| 五月丁香六月婷婷久久久综合| 天天插,天天射| 偷拍91九色| 丁香五月婷婷基地| 碰99在线| 久久免费操| 亚洲人人96@| 丁香五月亚洲| 五月天色图| 日韩AV在线影片| 欧美精品A片一区在线观看| www.五月婷婷久久.com| 婷婷五月天无码视频| 啄木鸟丝袜美女福利视频| 任你搞网站| 国产精品美女久久久久AV超清| 婷婷五月激情在线| 激情AV| 人人操人av| 99热青青草| 先锋影音av色五月天资源站| 综合网啪| 激情综合五月色在线| 五月亭亭网成人在线视频| 丁香五月成人社区| 麻豆忘忧草午夜| 狠狠爱综合网| 精品久久66| 久久婷婷六月综合| 丁香婷婷五月综合欧美另类| 色综合综合色| 激情小说婷婷五月| 五月婷婷婷| 欧亚中文A V| 六月丁香成人| 女人被男人吃奶到高潮| 荫道BBWBBB高潮潮喷| 二级黄色毛片| 五月天狠狠干| 天天爽天天操| 99热天堂| 丁香婷在线| 五月丁香网站| 国产精品人妻在线网址| 狠狠色丁香婷婷基地| 欧美三日本三级少妇三99| 久99久视频精品| 99er精品| AV成人在线播放| 99久久97| 激情99。| 婷婷香五月天| 99日精品视频| av性爱网站| 99精品偷自拍| 99热乎| 激情綜合網址| 九九美女视频| 天天综合亚洲综合| 99热这里有精品| 久久久精品AV| 5月婷婷6月六月丁香| 国产SUV精品一区二区883| wwwss在线观看| 99热在线精品观看| 丁香五月综合首页| 天天干狠狠艹| 午夜亚洲AV日韩无码| 色频玖玖五月天| 婷婷久久精品| 五月丁香色婷婷综合| 国产SUV精品一区二区883| 青青草原中文字幕| 欧美日韩99| 综合久久影院| 婷婷色综合av| sewuyuetingtingiii| 综合色五月| 爱狠射| 五月激情久久| 超碰自拍天堂| 99热99热在线| 亚洲天堂九九九| 五月丁香六月婷婷婷婷| www.色五月| 久久婷婷操| 狠狠干最新地址| 九九热视频免费的| www婷婷色| 五月丁香六月婷婷手机无线| 色综啪啪网| www.av骚货| wwww.9免费视频| 97色色色色色| 丁香六月综合激| 日本五月天网站| 九色七七| 亚洲国产成人综合| 黄色AV日韩| 99这里只有| 久久五月天合网| 少妇大叫太大太粗太爽了A片| 国产欧美婷婷五月| 91男人操女人视频| 开心激情网在线| 操人精品| 婷综合| 99热99ai| 极品人妻VIDEOSSS人妻| 天天色天天舔天天爱天天爽| 色色热日| 中文字幕精品在线观看| 色婷婷久久| 久久小说| 91人人爽久久涩噜噜噜| 婷婷激情在线| 天天日夜夜爽| 怡红院院久久| 欧美超碰亚洲| 丁香五月区| 色五月天天在线观看资源站| 亚洲乱码日产精品BD| 亚洲色色香蕉| 大香蕉99热| 色色色综合网| 婷婷草| 五月婷婷熟女| 香蕉久久国产AV一区二区| 婷婷五月天综合色| 99riAV国产精品视频| 久久久97| 激情五月天激情综合网| www.日韩国产| 久久er99热精品一区二区| 琪琪布丁香社区激情五月天| 久久九九在线视频| www.97碰碰com| 精品夜夜澡人妻无码AV| jiqingliuyuetian| 成人丁香五月| 狠狠狠狠狠狠草| 婷婷五月电影| 日批在线看| 久久久.COM| 大香蕉久久视频久久视频| 久久综合影院| 26uu| 99欧州偷拍视频| 大香蕉220| 成人婷婷| 五月婷婷六月奇米网丁香| 久久婷狠狠色| 国产毛片操B| 色色婷婷丁香| 九九精品视频在线6| 超碰99在线| 新男人天堂人妻| 丁香五月综合| 日本色久| 99视频热| 深爱五月婷婷开心中文字幕| 日本乱论99| 丁香五月欧美婷婷综合| 丁香色色网| 99亚洲视频| 五月丁香欧美综合免费视频| 亚洲激情综合网| 91操在线| 色无婷婷| 亚洲人妻av| 成人亚洲精品| 伊人五月综合网| 色色色色色色综合| 第二色AⅤ| 99精品热| 操比激情五月综合| 婷婷激情久久| 亚洲亚洲人成综合网络| 九九久久精品| 色婷婷AV在线| 99九九精品| 亚洲XX日本| 婷婷色女| 超碰在线国产| 久久在线92| 婷婷六月天| 婷婷操无码| 国产看真人毛片爱做A片| 婷婷丁香久久| 亚洲综合在线播放| 另类激情综合| 99re思思久久| 开心婷婷五月中文字幕组| 天天干天天日日| 激情文学天天| 天天日日人| 婷婷五月69| 超碰在线看| 激情四射网| 久久久久久久97| 97热精品| 久久婷婷内射| AV成人在线播放| 欧美丁香五月| Caop在线| 色五月97| 色噜噜五月天| 久久五月天视频| 婷婷五月AV| 国产成人av在线播放| 91色九| 综合激情在线视频| 99色热视频| 丁香六月天| 色婷婷综合网| 五月天久久网站| 色婷婷先锋| 免费黄色片子| 九九综合久久| 丁香婷婷激情| 国产精品久久欧美久久一区| av亚洲国产小电影| 黑人巨粗进入警花疼哭A片| 国产肥白大熟妇BBBB视频| AV中文网| 中文字幕成人版| 成人VAV视频在线观看| 婷婷黄色五月| 色五月激情综合| 国产成人精品亚洲线观看| 五月六月激情| 五月丁香六月激情综合欧美| 婷婷五月深爱五月| 丁香五月天啪啪a日本| 婷婷情爱五月天6| 欧美在线视频免费播放| 国产成人av在线播放| 99视频久久| 免费观看欧美成人AA片爱我多深| 国产黄大片在线观看画质优化| 91色五月在线观看| 新激情综合| 久久99网站| 人妻熟妇六区| 思思re99视频在线观看| 99综合一区| 亚洲五月天激情| 有码一区二区三区| 久久久久网站| 丁香五月综合久久八| 五月综合亚洲婷婷| 丁香五月在线观看| 亚洲av骚货| 国产真实乱对白精彩| 丁香五月天婷婷大香蕉| 夜夜资源站| 五月天婷婷网站| 五月天综合视频| 国产激情综合五月久久| 久久97久久99久久综合欧美| 天天综合网色欲香| 四月婷婷五月色综合| 俺也去综合| 久久久.COM| 9色91视频| 日本色久| 九九九午夜影院成人| 26uuu日韩| 精品久热| 久久婷婷五| 五月丁香激情综合啪| 亚艹艹| 色综合色色| 黄色aa观看aaguochan| 色婷婷网| 99热这里只要精品免费| 国产成人亚洲综合A∨婷婷| 欧美日本国产| aaaaa不卡| 99亚洲精品视频| 五月天大香蕉| 黄色一级影片| 五月婷婷丁香五月婷婷| 大香蕉九操| 天天综合网~91| 久久视频66| 日本色婷婷| 天天干人人奸97| 他改变了拜占庭| 丁香婷婷色五月激情综合| 免费观看全黄做爰的视频| 99热碰碰热| 久久久久久久久人妻| 亚洲激情四射| 久久久久亚洲AV成人无码电影| 久久成人天| 色婷婷综合视频| 人人干99| 亚洲婷婷五月天激情| 青青草视频免费观看| 99热这里是精品| 激情五月丁香六月综合AVXXXX| 日日操夜夜擼| 中文精品久久久久人妻不| 五月天激情啪啪| 特黄三级又爽又粗又大| 六月综和久久| 99超级碰免费视频| 亚洲黄3级片网站欧美| 影音先锋人妻出差| 国产又爽又猛又粗的视频A片| 色色综合网站| 婷婷丁香激情综合色情| 婷婷五月丁香香蕉| 色色网五月激情| 色色色色色色综合网| 热久久77777| 婷婷社区五月天| 色九月婷婷综合| 狼人婷婷久久| www.综合久久.com| 99这里| 久久网婷婷| 精品五月天| 91九色PORNY大屁股| 五月天色婷婷图片| 日本精品久久久久中文字幕| 天天做天天要天天爱| 天天干天天干天天干天天干天| 99热9999| 九色自拍| 婷婷丁香激情综合色情| 色五月超碰| 丁香五月婷婷AV| 99久在线观看| 99热老司机| 五月综合久久| 久久久精品99亚洲综合| 欧美操人| 婷婷五月天影视网址| 女人被躁到高潮嗷嗷叫小| 激情黄色五月天|