background image

Chapter 3. The FPU

45

Figure 3.5: The FPU divider simulation

- - FPU . D I V I D E R . S I G N I F I C A N D _ D I V I S I O N . C O M B I N A T I O N A L _ D I V I S I O N - -
- - A N G E L O S NTASIOS - -

- - - - - - - - - - - - - - L I B R A R I E S - - - - - - - - - - - - - - - - - - - - - - - - - - -
l i b r a r y i e e e ;
use i e e e . s t d _ l o g i c _ 1 1 6 4 . all ;
use i e e e . n u m e r i c _ s t d . all ;
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

e n t i t y c o m b i n a t i o n a l _ d i v i s i o n is

p o r t (

r e m a i n d e r _ i n

: in s t d _ l o g i c _ v e c t o r (52 d o w n t o 0);

Sb

: in s t d _ l o g i c _ v e c t o r (52 d o w n t o 0);

r e m a i n d e r _ o u t : out s t d _ l o g i c _ v e c t o r (52 d o w n t o 0);
S r _ o u t

: out s t d _ l o g i c

);

end ;

a r c h i t e c t u r e

c m n t n l _ d v s n of c o m b i n a t i o n a l _ d i v i s i o n is

b e g i n

p r o c e s s ( r e m a i n d e r _ i n , Sb )
b e g i n

if ( u n s i g n e d ( r e m a i n d e r _ i n ) >= u n s i g n e d ( Sb ) ) t h e n

S r _ o u t

<= ’1 ’;

r e m a i n d e r _ o u t

<= s t d _ l o g i c _ v e c t o r ( u n s i g n e d ( r e m a i n d e r _ i n )

- u n s i g n e d ( Sb ));

e l s e

S r _ o u t

<= ’0 ’;

r e m a i n d e r _ o u t

<= r e m a i n d e r _ i n ;

end if ;

end p r o c e s s ;

end ;

Figure 3.6: The Divisor module