Line 34... |
Line 34... |
//
|
//
|
// *Author(s):
|
// *Author(s):
|
// - Olivier Girard, olgirard@gmail.com
|
// - Olivier Girard, olgirard@gmail.com
|
//
|
//
|
//----------------------------------------------------------------------------
|
//----------------------------------------------------------------------------
|
// $Rev: 104 $
|
// $Rev: 109 $
|
// $LastChangedBy: olivier.girard $
|
// $LastChangedBy: olivier.girard $
|
// $LastChangedDate: 2011-03-06 21:02:27 +0100 (Sun, 06 Mar 2011) $
|
// $LastChangedDate: 2011-03-27 13:49:47 +0200 (Sun, 27 Mar 2011) $
|
//----------------------------------------------------------------------------
|
//----------------------------------------------------------------------------
|
`ifdef OMSP_NO_INCLUDE
|
|
`else
|
|
`include "openMSP430_defines.v"
|
|
`endif
|
|
|
|
module template_periph_8b (
|
module template_periph_8b (
|
|
|
// OUTPUTs
|
// OUTPUTs
|
per_dout, // Peripheral data output
|
per_dout, // Peripheral data output
|
Line 53... |
Line 49... |
// INPUTs
|
// INPUTs
|
mclk, // Main system clock
|
mclk, // Main system clock
|
per_addr, // Peripheral address
|
per_addr, // Peripheral address
|
per_din, // Peripheral data input
|
per_din, // Peripheral data input
|
per_en, // Peripheral enable (high active)
|
per_en, // Peripheral enable (high active)
|
per_wen, // Peripheral write enable (high active)
|
per_we, // Peripheral write enable (high active)
|
puc // Main system reset
|
puc // Main system reset
|
);
|
);
|
|
|
// OUTPUTs
|
// OUTPUTs
|
//=========
|
//=========
|
Line 67... |
Line 63... |
//=========
|
//=========
|
input mclk; // Main system clock
|
input mclk; // Main system clock
|
input [7:0] per_addr; // Peripheral address
|
input [7:0] per_addr; // Peripheral address
|
input [15:0] per_din; // Peripheral data input
|
input [15:0] per_din; // Peripheral data input
|
input per_en; // Peripheral enable (high active)
|
input per_en; // Peripheral enable (high active)
|
input [1:0] per_wen; // Peripheral write enable (high active)
|
input [1:0] per_we; // Peripheral write enable (high active)
|
input puc; // Main system reset
|
input puc; // Main system reset
|
|
|
|
|
//=============================================================================
|
//=============================================================================
|
// 1) PARAMETER DECLARATION
|
// 1) PARAMETER DECLARATION
|
Line 105... |
Line 101... |
(CNTRL4 /2): reg_dec = CNTRL4_D;
|
(CNTRL4 /2): reg_dec = CNTRL4_D;
|
default : reg_dec = {256{1'b0}};
|
default : reg_dec = {256{1'b0}};
|
endcase
|
endcase
|
|
|
// Read/Write probes
|
// Read/Write probes
|
wire reg_lo_write = per_wen[0] & per_en;
|
wire reg_lo_write = per_we[0] & per_en;
|
wire reg_hi_write = per_wen[1] & per_en;
|
wire reg_hi_write = per_we[1] & per_en;
|
wire reg_read = ~|per_wen & per_en;
|
wire reg_read = ~|per_we & per_en;
|
|
|
// Read/Write vectors
|
// Read/Write vectors
|
wire [255:0] reg_hi_wr = reg_dec & {256{reg_hi_write}};
|
wire [255:0] reg_hi_wr = reg_dec & {256{reg_hi_write}};
|
wire [255:0] reg_lo_wr = reg_dec & {256{reg_lo_write}};
|
wire [255:0] reg_lo_wr = reg_dec & {256{reg_lo_write}};
|
wire [255:0] reg_rd = reg_dec & {256{reg_read}};
|
wire [255:0] reg_rd = reg_dec & {256{reg_read}};
|
Line 186... |
Line 182... |
cntrl4_rd;
|
cntrl4_rd;
|
|
|
|
|
endmodule // template_periph_8b
|
endmodule // template_periph_8b
|
|
|
`ifdef OMSP_NO_INCLUDE
|
|
`else
|
|
`include "openMSP430_undefines.v"
|
|
`endif
|
|
|
|
No newline at end of file
|
No newline at end of file
|