📄 serial_rw.v
字号:
`timescale 1ns / 1ps//////////////////////////////////////////////////////////////////////////////////// Company: // Engineer: // // Create Date: 14:15:21 11/13/2007 // Design Name: // Module Name: serial // Project Name: // Target Devices: // Tool versions: // Description: //// Dependencies: //// Revision: // Revision 0.01 - File Created// Additional Comments: ////////////////////////////////////////////////////////////////////////////////////module serial_rw(clk, nrst, start, addr, din, ncs, sclk, sdo, sdio, io_update, io_reset,dout,end_serial); input clk; input nrst; input start; input [7:0] addr; input [7:0] din; output ncs; output sclk; output sdo; output sdio; output io_update; output io_reset; output dout; output end_serial; //////////////////////////////////////////////////////////////////////// reg ncs; reg sclk; reg sdo; reg sdio; reg io_update; reg io_reset; reg dout; reg end_serial; //////////////////////////////////////////////////////////////////////////// //local varible// wire start_rd,start_wr;
////////////////////////////////////////////////////////////////////////////
//assign
wire ncs_wr,ncs_rd;
assign ncs = (addr[7] == 0)? ncs_wr:ncs_rd;
assign sclk = (addr[7] == 0)? sclk_wr:sclk_rd;
assign end_serial = (addr[7] == 0)? gend_wr:gend_rd;
assign start_wr = (addr[7] == 0)? start:1'b0;
assign start_rd = (addr[7] == 1)? start:1'b0;
serial_wr serial_wr_inst ( .clk(clk), .nrst(nrst), .addr(addr), .data(data), .start(start_wr), .sdo(sdo), .ncs(ncs_wr), .sclk(sclk_rd), .gend(gend_rd) );
serial_rd serial_rd_inst ( .clk(clk), .nrst(nrst), .addr(addr), .dout(dout), .start(start_rd), .ncs(ncs_rd), .sclk(sclk_rd), .sdio(sdio), .gend(gend_rd) );
endmodule
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -