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

Subversion Repositories fpuvhdl

[/] [fpuvhdl/] [trunk/] [fpuvhdl/] [adder/] [fpadd_stage6_struct.vhd] - Blame information for rev 3

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

Line No. Rev Author Line
1 3 gmarcus
-- VHDL Entity HAVOC.FPadd_stage6.interface
2
--
3
-- Created by
4
-- Guillermo Marcus, gmarcus@ieee.org
5
-- using Mentor Graphics FPGA Advantage tools.
6
--
7
-- Visit "http://fpga.mty.itesm.mx" for more info.
8
--
9
-- 2003-2004. V1.0
10
--
11
 
12
LIBRARY ieee;
13
USE ieee.std_logic_1164.all;
14
USE ieee.std_logic_arith.all;
15
 
16
ENTITY FPadd_stage6 IS
17
   PORT(
18
      OV        : IN     std_logic;
19
      SIG_norm2 : IN     std_logic_vector (27 DOWNTO 0);
20
      Z_EXP     : IN     std_logic_vector (7 DOWNTO 0);
21
      Z_SIGN    : IN     std_logic;
22
      clk       : IN     std_logic;
23
      isINF_tab : IN     std_logic;
24
      isNaN     : IN     std_logic;
25
      isZ_tab   : IN     std_logic;
26
      zero      : IN     std_logic;
27
      FP_Z      : OUT    std_logic_vector (31 DOWNTO 0)
28
   );
29
 
30
-- Declarations
31
 
32
END FPadd_stage6 ;
33
 
34
--
35
-- VHDL Architecture HAVOC.FPadd_stage6.struct
36
--
37
-- Created by
38
-- Guillermo Marcus, gmarcus@ieee.org
39
-- using Mentor Graphics FPGA Advantage tools.
40
--
41
-- Visit "http://fpga.mty.itesm.mx" for more info.
42
--
43
-- Copyright 2003-2004. V1.0
44
--
45
 
46
 
47
LIBRARY ieee;
48
USE ieee.std_logic_1164.all;
49
USE ieee.std_logic_arith.all;
50
 
51
LIBRARY HAVOC;
52
 
53
ARCHITECTURE struct OF FPadd_stage6 IS
54
 
55
   -- Architecture declarations
56
 
57
   -- Internal signal declarations
58
   SIGNAL EXP_isINF : std_logic;
59
   SIGNAL FP_Z_int  : std_logic_vector(31 DOWNTO 0);
60
   SIGNAL Z_SIG     : std_logic_vector(22 DOWNTO 0);
61
   SIGNAL isINF     : std_logic;
62
   SIGNAL isZ       : std_logic;
63
 
64
 
65
   -- Component Declarations
66
   COMPONENT PackFP
67
   PORT (
68
      SIGN  : IN     std_logic ;
69
      EXP   : IN     std_logic_vector (7 DOWNTO 0);
70
      SIG   : IN     std_logic_vector (22 DOWNTO 0);
71
      isNaN : IN     std_logic ;
72
      isINF : IN     std_logic ;
73
      isZ   : IN     std_logic ;
74
      FP    : OUT    std_logic_vector (31 DOWNTO 0)
75
   );
76
   END COMPONENT;
77
 
78
   -- Optional embedded configurations
79
   -- pragma synthesis_off
80
   FOR ALL : PackFP USE ENTITY HAVOC.PackFP;
81
   -- pragma synthesis_on
82
 
83
 
84
BEGIN
85
   -- Architecture concurrent statements
86
   -- HDL Embedded Text Block 1 eb1
87
   --reg1 1
88
   PROCESS(clk)
89
   BEGIN
90
      IF RISING_EDGE(clk) THEN
91
         FP_Z <= FP_Z_int;
92
      END IF;
93
   END PROCESS;
94
 
95
   -- HDL Embedded Text Block 2 eb2
96
   -- eb2 2
97
   Z_SIG <= SIG_norm2(25 DOWNTO 3);
98
 
99
   -- HDL Embedded Text Block 9 eb7
100
   -- eb7 9
101
   EXP_isINF <= '1' WHEN (OV='1' OR Z_EXP=X"FF") ELSE '0';
102
 
103
 
104
   -- ModuleWare code(v1.1) for instance 'I7' of 'or'
105
   isINF <= EXP_isINF OR isINF_tab;
106
 
107
   -- ModuleWare code(v1.1) for instance 'I17' of 'or'
108
   isZ <= zero OR isZ_tab;
109
 
110
   -- Instance port mappings.
111
   I2 : PackFP
112
      PORT MAP (
113
         SIGN  => Z_SIGN,
114
         EXP   => Z_EXP,
115
         SIG   => Z_SIG,
116
         isNaN => isNaN,
117
         isINF => isINF,
118
         isZ   => isZ,
119
         FP    => FP_Z_int
120
      );
121
 
122
END struct;

powered by: WebSVN 2.1.0

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