⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 video_ram.v

📁 Viertex 2 开发板的接口程序
💻 V
📖 第 1 页 / 共 2 页
字号:
//     XILINX IS PROVIDING THIS DESIGN, CODE, OR INFORMATION "AS IS"
//     SOLELY FOR USE IN DEVELOPING PROGRAMS AND SOLUTIONS FOR
//     XILINX DEVICES.  BY PROVIDING THIS DESIGN, CODE, OR INFORMATION
//     AS ONE POSSIBLE IMPLEMENTATION OF THIS FEATURE, APPLICATION
//     OR STANDARD, XILINX IS MAKING NO REPRESENTATION THAT THIS
//     IMPLEMENTATION IS FREE FROM ANY CLAIMS OF INFRINGEMENT,
//     AND YOU ARE RESPONSIBLE FOR OBTAINING ANY RIGHTS YOU MAY REQUIRE
//     FOR YOUR IMPLEMENTATION.  XILINX EXPRESSLY DISCLAIMS ANY
//     WARRANTY WHATSOEVER WITH RESPECT TO THE ADEQUACY OF THE
//     IMPLEMENTATION, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OR
//     REPRESENTATIONS THAT THIS IMPLEMENTATION IS FREE FROM CLAIMS OF
//     INFRINGEMENT, IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
//     FOR A PARTICULAR PURPOSE.
//
//     (c) Copyright 2004 Xilinx, Inc.
//     All rights reserved.
//
/*
-------------------------------------------------------------------------------
   Title      : SVGA bit mapped video data  RAM
   Project    : XUP Virtex-II Pro Development System
-------------------------------------------------------------------------------
   File       : VIDEO_RAM.v
   Company    : Xilinx, Inc.
   Created    : 2004/08/12
   Last Update: 2004/08/12
   Copyright  : (c) Xilinx Inc, 2004
-------------------------------------------------------------------------------
   Uses       : 
-------------------------------------------------------------------------------
   Used by    : 
-------------------------------------------------------------------------------
   Description: This module creates a 8K x 8 RAM that is used as the video
				data RAM.

   Conventions:
		All external port signals are UPPER CASE.
		All internal signals are LOWER CASE and are active HIGH.


-------------------------------------------------------------------------------
*/
module VIDEO_RAM (
read_clk,
read_data,
read_addr,
read_enable,
write_data,
write_addr,
write_clk,
write_enable
);

input		read_clk;
output [7:0]read_data;
input [12:0]read_addr;
input		read_enable;

input [7:0] write_data;
input [12:0]write_addr;
input		write_clk;
input		write_enable;

wire 		read_clk;
wire [7:0] 	read_data;
wire [12:0] read_addr;
wire 		read_enable;

wire 		write_clock;
wire [7:0] 	write_data;
wire [12:0] write_addr;
wire 		write_enable;


// instantiate the RAMs

RAMB16_S2_S2 RAM_BITS_1_0 (
.DOA(),
.ADDRA(write_addr[12:0]),
.CLKA(write_clk),
.DIA(write_data[1:0]),
.ENA(write_enable),
.WEA(1'b1),
.SSRA(1'b0),

.DOB(read_data[1:0]),
.ADDRB(read_addr[12:0]),
.CLKB(read_clk),
.DIB(2'b00),
.ENB(read_enable),
.WEB(1'b0),
.SSRB(1'b0)
);

RAMB16_S2_S2 RAM_BITS_3_2 (
.DOA(),
.ADDRA(write_addr[12:0]),
.CLKA(write_clk),
.DIA(write_data[3:2]),
.ENA(write_enable),
.WEA(1'b1),
.SSRA(1'b0),

.DOB(read_data[3:2]),
.ADDRB(read_addr[12:0]),
.CLKB(read_clk),
.DIB(2'b00),
.ENB(read_enable),
.WEB(1'b0),
.SSRB(1'b0)
);

RAMB16_S2_S2 RAM_BITS_5_4 (
.DOA(),
.ADDRA(write_addr[12:0]),
.CLKA(write_clk),
.DIA(write_data[5:4]),
.ENA(write_enable),
.WEA(1'b1),
.SSRA(1'b0),

.DOB(read_data[5:4]),
.ADDRB(read_addr[12:0]),
.CLKB(read_clk),
.DIB(2'b00),
.ENB(read_enable),
.WEB(1'b0),
.SSRB(1'b0)
);

RAMB16_S2_S2 RAM_BITS_7_6 (
.DOA(),
.ADDRA(write_addr[12:0]),
.CLKA(write_clk),
.DIA(write_data[7:6]),
.ENA(write_enable),
.WEA(1'b1),
.SSRA(1'b0),

.DOB(read_data[7:6]),
.ADDRB(read_addr[12:0]),
.CLKB(read_clk),
.DIB(2'b00),
.ENB(read_enable),
.WEB(1'b0),
.SSRB(1'b0)
);

// synthesis translate_off
// clear the memories 
defparam RAM_BITS_1_0 .INIT_00 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_01 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_02 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_03 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_04 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_05 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_06 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_07 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_08 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_09 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_0A = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_0B = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_0C = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_0D = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_0E = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_0F = 256'h0000000000000000000000000000000000000000000000000000000000000000;

defparam RAM_BITS_1_0 .INIT_10 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_11 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_12 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_13 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_14 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_15 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_16 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_17 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_18 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_19 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_1A = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_1B = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_1C = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_1D = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_1E = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_1F = 256'h0000000000000000000000000000000000000000000000000000000000000000;

defparam RAM_BITS_1_0 .INIT_20 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_21 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_22 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_23 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_24 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_25 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_26 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_27 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_28 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_29 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_2A = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_2B = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_2C = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_2D = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_2E = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_2F = 256'h0000000000000000000000000000000000000000000000000000000000000000;
    
defparam RAM_BITS_1_0 .INIT_30 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_31 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_32 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_33 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_34 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_35 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_36 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_37 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_38 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_39 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_3A = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_3B = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_3C = 256'h0000000000000000000000000000000000000000000000000000000000000000;
defparam RAM_BITS_1_0 .INIT_3D = 256'h0000000000000000000000000000000000000000000000000000000000000000;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -