Code/Resource
Windows Develop
Linux-Unix program
Internet-Socket-Network
Web Server
Browser Client
Ftp Server
Ftp Client
Browser Plugins
Proxy Server
Email Server
Email Client
WEB Mail
Firewall-Security
Telnet Server
Telnet Client
ICQ-IM-Chat
Search Engine
Sniffer Package capture
Remote Control
xml-soap-webservice
P2P
WEB(ASP,PHP,...)
TCP/IP Stack
SNMP
Grid Computing
SilverLight
DNS
Cluster Service
Network Security
Communication-Mobile
Game Program
Editor
Multimedia program
Graph program
Compiler program
Compress-Decompress algrithms
Crypt_Decrypt algrithms
Mathimatics-Numerical algorithms
MultiLanguage
Disk/Storage
Java Develop
assembly language
Applications
Other systems
Database system
Embeded-SCM Develop
FlashMX/Flex
source in ebook
Delphi VCL
OS Develop
MiddleWare
MPI
MacOS develop
LabView
ELanguage
Software/Tools
E-Books
Artical/Document
cbram_access.v
Package: inter_prediction(verilog).rar [view]
Upload User: abszbd2002
Upload Date: 2020-10-12
Package Size: 33407k
Code Size: 4k
Category:
Compress-Decompress algrithms
Development Platform:
VHDL
- //Design : inter prediction
- //Author : li haibin
- //files : cbram_access
- //Description : 当前亮度宏块ram的读写管理
- //---------------------------------------------------------------------------------------------------
- module cbram_access(clk,reset,cb_rden,cb_wren,
- data0,data1,data2,data3,data4,data5,data6,data7,data8,data9,
- data10,data11,data12,data13,data14,data15,
- q0,q1,q2,q3,q4,q5,q6,q7,q8,q9,q10,q11,q12,q13,q14,q15);
- input clk;
- input reset;
- input cb_rden;
- input cb_wren;
- input [7:0] data0,data1,data2,data3,data4,data5,data6,data7,data8,data9,
- data10,data11,data12,data13,data14,data15;
- output [7:0] q0,q1,q2,q3,q4,q5,q6,q7,q8,q9,q10,q11,q12,q13,q14,q15;
- reg [3:0] rdaddr;
- reg [3:0] wraddr;
- //--------------当前块ram读地址的产生
- always @ (posedge clk or posedge reset)
- if (reset==1'b1)
- rdaddr <= 4'b0;
- else
- if (cb_rden==1'b1)
- rdaddr <= rdaddr + 1'b1;
- else
- rdaddr <= 4'b0;
- //--------------当前块ram写地址的产生
- always @ (posedge clk or posedge reset)
- if (reset==1'b1)
- wraddr <= 4'b0;
- else
- if (cb_wren==1'b1)
- wraddr <= wraddr + 1'b1;
- else
- wraddr <= 4'b0;
- //--------------16个8位宽的ram组成亮度数据块
- cbramx cbram0(//.aclr(reset),
- .clock(clk),
- .data(data0),
- .rdaddress(rdaddr),
- .rden(cb_rden),
- .wraddress(wraddr),
- .wren(cb_wren),
- .q(q0)
- );
- cbramx cbram1(//.aclr(reset),
- .clock(clk),
- .data(data1),
- .rdaddress(rdaddr),
- .rden(cb_rden),
- .wraddress(wraddr),
- .wren(cb_wren),
- .q(q1)
- );
- cbramx cbram2(//.aclr(reset),
- .clock(clk),
- .data(data2),
- .rdaddress(rdaddr),
- .rden(cb_rden),
- .wraddress(wraddr),
- .wren(cb_wren),
- .q(q2)
- );
- cbramx cbram3(//.aclr(reset),
- .clock(clk),
- .data(data3),
- .rdaddress(rdaddr),
- .rden(cb_rden),
- .wraddress(wraddr),
- .wren(cb_wren),
- .q(q3)
- );
- cbramx cbram4(//.aclr(reset),
- .clock(clk),
- .data(data4),
- .rdaddress(rdaddr),
- .rden(cb_rden),
- .wraddress(wraddr),
- .wren(cb_wren),
- .q(q4)
- );
- cbramx cbram5(//.aclr(reset),
- .clock(clk),
- .data(data5),
- .rdaddress(rdaddr),
- .rden(cb_rden),
- .wraddress(wraddr),
- .wren(cb_wren),
- .q(q5)
- );
- cbramx cbram6(//.aclr(reset),
- .clock(clk),
- .data(data6),
- .rdaddress(rdaddr),
- .rden(cb_rden),
- .wraddress(wraddr),
- .wren(cb_wren),
- .q(q6)
- );
- cbramx cbram7(//.aclr(reset),
- .clock(clk),
- .data(data7),
- .rdaddress(rdaddr),
- .rden(cb_rden),
- .wraddress(wraddr),
- .wren(cb_wren),
- .q(q7)
- );
- cbramx cbram8(//.aclr(reset),
- .clock(clk),
- .data(data8),
- .rdaddress(rdaddr),
- .rden(cb_rden),
- .wraddress(wraddr),
- .wren(cb_wren),
- .q(q8)
- );
- cbramx cbram9(//.aclr(reset),
- .clock(clk),
- .data(data9),
- .rdaddress(rdaddr),
- .rden(cb_rden),
- .wraddress(wraddr),
- .wren(cb_wren),
- .q(q9)
- );
- cbramx cbram10(//.aclr(reset),
- .clock(clk),
- .data(data10),
- .rdaddress(rdaddr),
- .rden(cb_rden),
- .wraddress(wraddr),
- .wren(cb_wren),
- .q(q10)
- );
- cbramx cbram11(//.aclr(reset),
- .clock(clk),
- .data(data11),
- .rdaddress(rdaddr),
- .rden(cb_rden),
- .wraddress(wraddr),
- .wren(cb_wren),
- .q(q11)
- );
- cbramx cbram12(//.aclr(reset),
- .clock(clk),
- .data(data12),
- .rdaddress(rdaddr),
- .rden(cb_rden),
- .wraddress(wraddr),
- .wren(cb_wren),
- .q(q12)
- );
- cbramx cbram13(//.aclr(reset),
- .clock(clk),
- .data(data13),
- .rdaddress(rdaddr),
- .rden(cb_rden),
- .wraddress(wraddr),
- .wren(cb_wren),
- .q(q13)
- );
- cbramx cbram14(//.aclr(reset),
- .clock(clk),
- .data(data14),
- .rdaddress(rdaddr),
- .rden(cb_rden),
- .wraddress(wraddr),
- .wren(cb_wren),
- .q(q14)
- );
- cbramx cbram15(//.aclr(reset),
- .clock(clk),
- .data(data15),
- .rdaddress(rdaddr),
- .rden(cb_rden),
- .wraddress(wraddr),
- .wren(cb_wren),
- .q(q15)
- );
- endmodule