OpenCores
URL https://opencores.org/ocsvn/mips32r1/mips32r1/trunk

Subversion Repositories mips32r1

[/] [mips32r1/] [trunk/] [Hardware/] [XUPV5-LX110T_SoC/] [MIPS32-Pipelined-Hw/] [src/] [MIPS32/] [Compare.v] - Blame information for rev 2

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 2 ayersg
`timescale 1ns / 1ps
2
/*
3
 * File         : Compare.v
4
 * Project      : University of Utah, XUM Project MIPS32 core
5
 * Creator(s)   : Grant Ayers (ayers@cs.utah.edu)
6
 *
7
 * Modification History:
8
 *   Rev   Date         Initials  Description of Change
9
 *   1.0   15-Jun-2011  GEA       Initial design.
10
 *
11
 * Standards/Formatting:
12
 *   Verilog 2001, 4 soft tab, wide column.
13
 *
14
 * Description:
15
 *   Compares two 32-bit values and outputs the following information about them:
16
 *      EQ  : A and B are equal
17
 *      GZ  : A is greater than zero
18
 *      LZ  : A is less than zero
19
 *      GEZ : A is greater than or equal to zero
20
 *      LEZ : A is less than or equal to zero
21
 */
22
module Compare(
23
        input  [31:0] A,
24
        input  [31:0] B,
25
        output EQ,
26
        output GZ,
27
        output LZ,
28
        output GEZ,
29
        output LEZ
30
        );
31
 
32
        wire   ZeroA = (A == 32'b0);
33
 
34
        assign EQ  = ( A == B);
35
        assign GZ  = (~A[31] & ~ZeroA);
36
        assign LZ  =   A[31];
37
        assign GEZ =  ~A[31];
38
        assign LEZ = ( A[31] |  ZeroA);
39
 
40
endmodule

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.