/******************************************************************************/
/* */
/* Copyright (c) 1999 Sun Microsystems, Inc. All rights reserved. */
/* */
/* The contents of this file are subject to the current version of the Sun */
/* Community Source License, microSPARCII ("the License"). You may not use */
/* this file except in compliance with the License. You may obtain a copy */
/* of the License by searching for "Sun Community Source License" on the */
/* World Wide Web at http://www.sun.com. See the License for the rights, */
/* obligations, and limitations governing use of the contents of this file. */
/* */
/* Sun Microsystems, Inc. has intellectual property rights relating to the */
/* technology embodied in these files. In particular, and without limitation, */
/* these intellectual property rights may include one or more U.S. patents, */
/* foreign patents, or pending applications. */
/* */
/* Sun, Sun Microsystems, the Sun logo, all Sun-based trademarks and logos, */
/* Solaris, Java and all Java-based trademarks and logos are trademarks or */
/* registered trademarks of Sun Microsystems, Inc. in the United States and */
/* other countries. microSPARC is a trademark or registered trademark of */
/* SPARC International, Inc. All SPARC trademarks are used under license and */
/* are trademarks or registered trademarks of SPARC International, Inc. in */
/* the United States and other countries. Products bearing SPARC trademarks */
/* are based upon an architecture developed by Sun Microsystems, Inc. */
/* */
/******************************************************************************/
/***************************************************************************
****************************************************************************
***
*** Program File: @(#)half_adder55.v
***
****************************************************************************
****************************************************************************/
// @(#)half_adder55.v 1.1 4/9/92
//
// **************************************************************
// half_adder55 -- recodes sum carry (creates a "slot" for rounding)
// **************************************************************
module half_adder55
(
sum,
carry,
a,
b
);
output [54:0] sum
;
output [54:1] carry
;
input [54:0] a
;
input [54:0] b
;
wire overflow
;
half_adder ha0 (
sum[0],
carry[1],
a[0],
b[0]
);
half_adder ha1 (
sum[1],
carry[2],
a[1],
b[1]
);
half_adder ha2 (
sum[2],
carry[3],
a[2],
b[2]
);
half_adder ha3 (
sum[3],
carry[4],
a[3],
b[3]
);
half_adder ha4 (
sum[4],
carry[5],
a[4],
b[4]
);
half_adder ha5 (
sum[5],
carry[6],
a[5],
b[5]
);
half_adder ha6 (
sum[6],
carry[7],
a[6],
b[6]
);
half_adder ha7 (
sum[7],
carry[8],
a[7],
b[7]
);
half_adder ha8 (
sum[8],
carry[9],
a[8],
b[8]
);
half_adder ha9 (
sum[9],
carry[10],
a[9],
b[9]
);
half_adder ha10 (
sum[10],
carry[11],
a[10],
b[10]
);
half_adder ha11 (
sum[11],
carry[12],
a[11],
b[11]
);
half_adder ha12 (
sum[12],
carry[13],
a[12],
b[12]
);
half_adder ha13 (
sum[13],
carry[14],
a[13],
b[13]
);
half_adder ha14 (
sum[14],
carry[15],
a[14],
b[14]
);
half_adder ha15 (
sum[15],
carry[16],
a[15],
b[15]
);
half_adder ha16 (
sum[16],
carry[17],
a[16],
b[16]
);
half_adder ha17 (
sum[17],
carry[18],
a[17],
b[17]
);
half_adder ha18 (
sum[18],
carry[19],
a[18],
b[18]
);
half_adder ha19 (
sum[19],
carry[20],
a[19],
b[19]
);
half_adder ha20 (
sum[20],
carry[21],
a[20],
b[20]
);
half_adder ha21 (
sum[21],
carry[22],
a[21],
b[21]
);
half_adder ha22 (
sum[22],
carry[23],
a[22],
b[22]
);
half_adder ha23 (
sum[23],
carry[24],
a[23],
b[23]
);
half_adder ha24 (
sum[24],
carry[25],
a[24],
b[24]
);
half_adder ha25 (
sum[25],
carry[26],
a[25],
b[25]
);
half_adder ha26 (
sum[26],
carry[27],
a[26],
b[26]
);
half_adder ha27 (
sum[27],
carry[28],
a[27],
b[27]
);
half_adder ha28 (
sum[28],
carry[29],
a[28],
b[28]
);
half_adder ha29 (
sum[29],
carry[30],
a[29],
b[29]
);
half_adder ha30 (
sum[30],
carry[31],
a[30],
b[30]
);
half_adder ha31 (
sum[31],
carry[32],
a[31],
b[31]
);
half_adder ha32 (
sum[32],
carry[33],
a[32],
b[32]
);
half_adder ha33 (
sum[33],
carry[34],
a[33],
b[33]
);
half_adder ha34 (
sum[34],
carry[35],
a[34],
b[34]
);
half_adder ha35 (
sum[35],
carry[36],
a[35],
b[35]
);
half_adder ha36 (
sum[36],
carry[37],
a[36],
b[36]
);
half_adder ha37 (
sum[37],
carry[38],
a[37],
b[37]
);
half_adder ha38 (
sum[38],
carry[39],
a[38],
b[38]
);
half_adder ha39 (
sum[39],
carry[40],
a[39],
b[39]
);
half_adder ha40 (
sum[40],
carry[41],
a[40],
b[40]
);
half_adder ha41 (
sum[41],
carry[42],
a[41],
b[41]
);
half_adder ha42 (
sum[42],
carry[43],
a[42],
b[42]
);
half_adder ha43 (
sum[43],
carry[44],
a[43],
b[43]
);
half_adder ha44 (
sum[44],
carry[45],
a[44],
b[44]
);
half_adder ha45 (
sum[45],
carry[46],
a[45],
b[45]
);
half_adder ha46 (
sum[46],
carry[47],
a[46],
b[46]
);
half_adder ha47 (
sum[47],
carry[48],
a[47],
b[47]
);
half_adder ha48 (
sum[48],
carry[49],
a[48],
b[48]
);
half_adder ha49 (
sum[49],
carry[50],
a[49],
b[49]
);
half_adder ha50 (
sum[50],
carry[51],
a[50],
b[50]
);
half_adder ha51 (
sum[51],
carry[52],
a[51],
b[51]
);
half_adder ha52 (
sum[52],
carry[53],
a[52],
b[52]
);
half_adder ha53 (
sum[53],
carry[54],
a[53],
b[53]
);
half_adder ha54 (
sum[54],
overflow,
a[54],
b[54]
);
endmodule
| This page: |
Created: | Thu Aug 19 12:00:40 1999 |
| From: |
../../../sparc_v8/ssparc/fpu/fp_fpm/rtl/half_adder55.v
|