ms_latch8n.v
2.28 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
/**************************************************************************
* *
* Copyright (C) 1994, Silicon Graphics, Inc. *
* *
* These coded instructions, statements, and computer programs contain *
* unpublished proprietary information of Silicon Graphics, Inc., and *
* are protected by Federal copyright law. They may not be disclosed *
* to third parties or copied or duplicated in any form, in whole or *
* in part, without the prior written consent of Silicon Graphics, Inc. *
* *
*************************************************************************/
// $Id: ms_latch8n.v,v 1.1 2002/03/28 00:26:13 berndt Exp $
////////////////////////////////////////////////////////////////////////
//
// Project Reality
//
// module: ms_latch8n
// description: Transparent latches: color and depth write (transp=~clk)
// (this is a test version)
//
// designer: Mike M. Cai / Robert W. Sherburne
// date: 12/16/94
//
// mod 6-9-95 for cascade to eliminate hold problem
////////////////////////////////////////////////////////////////////////
module ms_latch8n (d_out, gclk, clk, g, d_in);
output [7:0] d_out;
input [7:0] d_in;
input gclk, clk, g;
wire l_en, gn;
wire [7:0] d_ind;
nr02d2 lenm(.zn(l_en), .a1(gn), .a2(clk));
in01d1 len1(.zn(gn), .i(g));
lanfnb
lat00(.en(gclk), .d(d_in[0]), .q(d_ind[0])),
lat01(.en(gclk), .d(d_in[1]), .q(d_ind[1])),
lat02(.en(gclk), .d(d_in[2]), .q(d_ind[2])),
lat03(.en(gclk), .d(d_in[3]), .q(d_ind[3])),
lat04(.en(gclk), .d(d_in[4]), .q(d_ind[4])),
lat05(.en(gclk), .d(d_in[5]), .q(d_ind[5])),
lat06(.en(gclk), .d(d_in[6]), .q(d_ind[6])),
lat07(.en(gclk), .d(d_in[7]), .q(d_ind[7]));
lantnq
lat0(.e(l_en), .d(d_ind[0]), .q(d_out[0])),
lat1(.e(l_en), .d(d_ind[1]), .q(d_out[1])),
lat2(.e(l_en), .d(d_ind[2]), .q(d_out[2])),
lat3(.e(l_en), .d(d_ind[3]), .q(d_out[3])),
lat4(.e(l_en), .d(d_ind[4]), .q(d_out[4])),
lat5(.e(l_en), .d(d_ind[5]), .q(d_out[5])),
lat6(.e(l_en), .d(d_ind[6]), .q(d_out[6])),
lat7(.e(l_en), .d(d_ind[7]), .q(d_out[7]));
endmodule // ms_latch8n