+ All Categories
Home > Documents > Validation of Speculative and Out of Order Execution Microarchitecture

Validation of Speculative and Out of Order Execution Microarchitecture

Date post: 03-Apr-2018
Category:
Upload: anusha-kanuri
View: 224 times
Download: 0 times
Share this document with a friend

of 9

Transcript
  • 7/28/2019 Validation of Speculative and Out of Order Execution Microarchitecture

    1/9

    A p p e a r e d i n t h e I n t e r n a t i o n a l W o r k s h o p o n M i c r o p r o c e s s o r T e s t a n d V e r i c a t i o n , W a s h i n g t o n , D C , O c t o b e r 1 9 9 8

    V a l i d a t i o n o f S p e c u l a t i v e a n d O u t - o f - o r d e r E x e c u t i o n

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

    1

    N o p p a n u n t U t a m a p h e t h a i , R . D . ( S h a w n ) B l a n t o n a n d J o h n P a u l S h e n

    D e p a r t m e n t o f E l e c t r i c a l a n d C o m p u t e r E n g i n e e r i n g

    C a r n e g i e M e l l o n U n i v e r s i t y

    P i t t s b u r g h , P A 1 5 2 1 3

    f n a u , b l a n t o n , s h e n g @ e c e . c m u . e d u

    A b s t r a c t

    W e v a l i d a t e s p e c u l a t i v e a n d o u t - o f - o r d e r e x e c u t i o n

    m i c r o a r c h i t e c t u r e u s i n g a n A T P G - l i k e m e t h o d o l o g y .

    T h e v a l i d a t i o n m e t h o d o l o g y u s e s F S M m o d e l s d e r i v e d

    f r o m m i c r o a r c h i t e c t u r e s p e c i c a t i o n s . C o m p l e t e t r a n -

    s i t i o n t o u r s a r e g e n e r a t e d f r o m t h e F S M m o d e l s t o

    o b t a i n a h i g h - l e v e l t e s t s e q u e n c e . S m a l l a s s e m b l y s e -

    q u e n c e s a s s o c i a t e d w i t h e a c h F S M t r a n s i t i o n a r e u s e d

    t o t r a n s l a t e F S M t e s t i n g s e q u e n c e s i n t o s i m u l a t a b l e

    t e s t p r o g r a m s . T h e m e t h o d o l o g y i s d e m o n s t r a t e d o n

    t h e s p e c u l a t i v e a n d o u t - o f - o r d e r e x e c u t i o n m e c h a n i s m s

    o f t h e P o w e r P C 6 0 4 . T h e e e c t i v e n e s s o f o u r s e -

    q u e n c e s i s c o m p a r e d w i t h s o m e r e a l p r o g r a m s b y m e a -

    s u r i n g t r a n s i t i o n c o v e r a g e . S i m u l a t i o n r e s u l t s s h o w

    t h a t a l l t a r g e t e d F S M t r a n s i t i o n s a r e c o v e r e d b y o u r

    s e q u e n c e s . R e a l p r o g r a m s c a n a c h i e v e t h e s a m e c o v e r -

    a g e f o r s o m e p o r t i o n s o f t h e t a r g e t e d f u n c t i o n a l i t y b u t

    u s e 1 0 0 0 X m o r e i n s t r u c t i o n s .

    1 I n t r o d u c t i o n

    B a s e d o n p r e v i o u s p r e d i c t i o n s a n d a c t u a l p e r f o r -

    m a n c e o f m i c r o p r o c e s s o r s i n t h e l a s t d e c a d e , m i c r o -

    p r o c e s s o r s i n 2 0 0 6 w i l l m o s t l i k e l y o p e r a t e a t 4 G H z

    w i t h a 5 0 0 S P E C i n t 9 5 r a t i n g 1 ] . O n e o f t h e k e y

    e n a b l i n g t e c h n o l o g i e s i s t h e b r e a k t h r o u g h i n m i c r o a r -

    c h i t e c t u r e t e c h n i q u e s . M a n y n o v e l m i c r o a r c h i t e c t u r e s

    h a v e b e e n i n t r o d u c e d t o r e l a x p r o g r a m s e m a n t i c s a n d

    b e t t e r e x p l o i t i n s t r u c t i o n l e v e l p a r a l l e l i s m r e s u l t i n g i n

    a h i g h e r l e v e l o f p e r f o r m a n c e . H o w e v e r , t h e s e a g g r e s -

    s i v e a n d c o m p l e x m i c r o a r c h i t e c t u r e f e a t u r e s s u b s t a n -

    t i a l l y i n c r e a s e t h e d e s i g n c o m p l e x i t y . O n e o f t h e m a j o r

    t e c h n o l o g i c a l b a r r i e r s t o b e r e s o l v e d b e f o r e a m i c r o -

    p r o c e s s o r o f s u c h a h i g h c o m p l e x i t y c a n b e r e a l i z e d i s

    1

    T h i s r e s e a r c h e o r t i s s p o n s o r e d b y t h e S e m i c o n d u c t o r R e -

    s e a r c h C o r p o r a t i o n u n d e r c o n t r a c t D C 0 6 8 . 0 7 0 .

    t h e v a l i d a t i o n o f t h e d e s i g n i t s e l f .

    C o r r e c t i n g d e s i g n e r r o r s d e t e c t e d l a t e i n t h e d e v e l -

    o p m e n t c y c l e h a s a h i g h c o s t , t h e r e f o r e i t i s c r u c i a l

    t h a t h i g h - l e v e l d e s i g n s p e c i c a t i o n s a r e c o r r e c t . I n

    p a r t i c u l a r , v a l i d a t i n g m i c r o a r c h i t e c t u r e s p e c i c a t i o n s

    i s c r i t i c a l s i n c e t h e y a r e d e n e d e a r l y i n t h e d e s i g n c y -

    c l e a n d i n v o l v e m a n y c o m p l e x c o n t r o l b e h a v i o r s s u c h

    a s b r a n c h p r e d i c t i o n , d y n a m i c r e g i s t e r r e n a m i n g a n d

    p i p e l i n e i n t e r l o c k . M i c r o a r c h i t e c t u r e v a l i d a t i o n i s a l s o

    c o m p l i c a t e d b y t h e f a c t t h a t t h e y a r e h a r d t o c r e a t e .

    F o r m a l v e r i c a t i o n 2 , 5 , 1 0 ] h a s b e e n t h e f o c u s o f

    m a n y c u r r e n t a p p r o a c h e s t o d e t e c t d e s i g n e r r o r s . I t

    p r o v i d e s a r i g o r o u s m e a n s t o m a t h e m a t i c a l l y p r o v e t h e

    c o r r e c t n e s s o f a d e s i g n . S i n c e s i m u l a t i o n i s a c o m m o n

    t o o l u s e d b y d e s i g n e r s , i t i s l o g i c a l f o r d e s i g n v a l i d a -

    t i o n t o r e l y o n t h e s i m u l a t i o n o f t e s t s t i m u l i o n t h e

    s i m u l a t a b l e m o d e l o f t h e d e s i g n r a t h e r t h a n p r o v i n g

    m a t h e m a t i c a l e x p r e s s i o n s t h a t a b s t r a c t l y d e s c r i b e t h e

    d e s i g n . A s a r e s u l t , d e s i g n v a l i d a t i o n i s a l e s s r i g o r o u s

    b u t m o r e p r a c t i c a l a p p r o a c h t o u n c o v e r d e s i g n b u g s .

    O u r p r e v i o u s w o r k 1 4 ] p r e s e n t s a s y s t e m a t i c a p -

    p r o a c h f o r v a l i d a t i n g s u p e r s c a l a r m i c r o a r c h i t e c t u r e

    s p e c i c a t i o n s v i a s i m u l a t i o n s . O u r m e t h o d o l o g y i n -

    v o l v e s d i r e c t d e r i v a t i o n o f m i c r o a r c h i t e c t u r e m o d e l s

    i n t e r m s o f F S M s f r o m t h e m i c r o a r c h i t e c t u r e s p e c i -

    c a t i o n s . H i g h - l e v e l t e s t s e q u e n c e s a r e t h e n d e r i v e d

    f r o m t h e F S M s w h i c h e i t h e r c o v e r e v e r y t r a n s i t i o n

    ( a t r a n s i t i o n t o u r ) o r a p p l y a c h e c k i n g s e q u e n c e 9 ] .

    S p e c i c i n s t r u c t i o n s e q u e n c e s y n t h e s i s t e c h n i q u e s a r e

    t h e n d e v e l o p e d t o o b t a i n t e s t s e q u e n c e s o f u s e r - s e t

    c o n d e n c e l e v e l s . W e h a v e a p p l i e d o u r a p p r o a c h t o

    t h e b r a n c h p r e d i c t i o n m e c h a n i s m o f a r e a l s u p e r s c a l a r

    p r o c e s s o r , t h e P o w e r P C 6 0 4 1 4 ] . M i c r o a r c h i t e c t u r e

    s p e c i c a t i o n s o f t h e P o w e r P C 6 0 4 d e s c r i b e d i n t h e

    M W f r a m e w o r k 3 , 6 , 7 ] a r e u s e d f o r s i m u l a t i o n . S i m u -

  • 7/28/2019 Validation of Speculative and Out of Order Execution Microarchitecture

    2/9

    l a t i o n r e s u l t s s h o w t h a t 1 0 0 % c o v e r a g e o f t h e t a r g e t e d

    f u n c t i o n a l i t y i s a c h i e v e d u s i n g a v e r y s m a l l n u m b e r o f

    i n s t r u c t i o n s . R e a l p r o g r a m s t h a t h a v e o r d e r s o f m a g -

    n i t u d e m o r e i n s t r u c t i o n s c a n a c h i e v e t h e s a m e c o v e r -

    a g e f o r o n l y s o m e p o r t i o n s o f t h e t a r g e t f u n c t i o n a l i t y .

    T h e p e r f o r m a n c e e n h a n c i n g f e a t u r e s u s e d i n m a n y

    m o d e r n m i c r o a r c h i t e c t u r e s c a n b e v i e w e d a s \ s m a l l "

    c o n t r o l u n i t s ( F S M s ) t h a t r e a d a n d w r i t e b u e r e n -

    t r i e s . F o r e x a m p l e , b r a n c h h i s t o r y i n t h e f o r m o f

    b r a n c h d i r e c t i o n ( t a k e n o r n o t t a k e n ) a n d t a r g e t a d -

    d r e s s e s a r e s t o r e d i n a t a b l e ( b u e r s ) . B r a n c h h i s -

    t o r y i s u s e d ( r e a d ) t o m a k e p r e d i c t i o n s f o r e n c o u n t e r e d

    b r a n c h i n s t r u c t i o n s a n d u p d a t e d ( w r i t t e n ) w h e n t h e

    a c t u a l b r a n c h o u t c o m e i s r e s o l v e d . O u r v a l i d a t i o n a p -

    p r o a c h i s t o f o c u s o n b u e r s , d e t e r m i n e t h e i r f u n c t i o n -

    a l i t y , m o d e l t h e o p e r a t i o n o f e a c h b u e r e n t r y a t t h e

    m i c r o a r c h i t e c t u r e l e v e l u s i n g a n F S M a n d r i g o r o u s l y

    g e n e r a t e i n s t r u c t i o n s e q u e n c e s t h a t s y s t e m a t i c a l l y e x -

    e r c i s e t h e F S M . I n t h i s p a p e r , w e a p p l y t h i s m e t h o d -

    o l o g y t o t h e s p e c u l a t i v e a n d o u t - o f - o r d e r e x e c u t i o n

    m e c h a n i s m s o f s u p e r s c a l a r p r o c e s s o r s . W e c o n t i n u e t o

    u s e t h e P o w e r P C 6 0 4 a s a r e s e a r c h v e h i c l e t o e x p l o r e

    t h i s a p p r o a c h . S p e c u l a t i v e a n d o u t - o f - o r d e r e x e c u t i o n

    m e c h a n i s m s i n t h e 6 0 4 c o n s i s t o f r e s e r v a t i o n s t a t i o n s ,

    r e n a m e b u e r s a n d a r e o r d e r b u e r . A n F S M m o d e l

    i s d e r i v e d f o r e a c h o f t h e s e t h r e e c o m p o n e n t s . A s e t

    o f i n s t r u c t i o n s a s s o c i a t e d w i t h e a c h F S M t r a n s i t i o n

    i s o b t a i n e d a n d c o n c a t e n a t e d t o f o r m a t e s t p r o g r a m

    w h i c h e x e r c i s e s t h e f u n c t i o n a l i t y o f e a c h c o m p o n e n t b y

    p e r f o r m i n g a t r a n s i t i o n t o u r . W e r e p o r t F S M t r a n s i -

    t i o n c o v e r a g e o f e a c h F S M u s i n g o u r m e t h o d o l o g y a n d

    m a k e c o m p a r i s o n w i t h s o m e r e a l p r o g r a m s .

    T h e r e s t o f t h i s p a p e r i s o r g a n i z e d a s f o l l o w s . S e c -

    t i o n 2 d e s c r i b e s t h e P o w e r P C 6 0 4 ' s i m p l e m e n t a t i o n

    a n d t h e F S M m o d e l s o f s p e c u l a t i v e a n d o u t - o f - o r d e r

    e x e c u t i o n . S e c t i o n 3 d e s c r i b e s h o w h i g h - l e v e l t e s t s e -

    q u e n c e s f o r v a l i d a t i n g t h e t h r e e c o m p o n e n t s a r e d e -

    r i v e d f r o m t h e F S M m o d e l s . T h e r e w e a l s o s h o w h o w

    t h e s e s e q u e n c e s a r e t r a n s f o r m e d i n t o s i m u l a t a b l e i n -

    s t r u c t i o n s e q u e n c e s . S e c t i o n 4 p r e s e n t s t h e s i m u l a -

    t i o n r e s u l t s a n d c o m p a r e s t h e F S M t r a n s i t i o n c o v e r -

    a g e f r o m o u r g e n e r a t e d s e q u e n c e s t o t h e c o v e r a g e o f

    r e a l p r o g r a m s . F i n a l l y , i n S e c t i o n 5 w e s u m m a r i z e o u r

    w o r k a n d p r e s e n t d i r e c t i o n s f o r f u t u r e w o r k .

    2 S p e c u l a t i v e a n d O u t - o f - o r d e r E x e c u -

    t i o n

    S u p e r s c a l a r p r o c e s s o r s t r y t o a c h i e v e h i g h i n s t r u c -

    t i o n t h r o u g h p u t b y a l l o w i n g c o n c u r r e n t e x e c u t i o n o f

    i n s t r u c t i o n s i n m u l t i p l e p i p e l i n e s . H o w e v e r , s i m p l y

    a d d i n g m o r e h a r d w a r e r e s o u r c e s a n d w i d e n i n g t h e

    p i p e l i n e c a n n o t e x p l o i t i n s t r u c t i o n - l e v e l p a r a l l e l i s m .

    A n u m b e r o f t e c h n i q u e s m u s t b e u s e d t o r e l a x i n t e r -

    i n s t r u c t i o n d e p e n d e n c y a n d t a k e a d v a n t a g e o f e x i s t i n g

    i n s t r u c t i o n p a r a l l e l i s m .

    S u p e r s c a l a r p r o c e s s o r s c o n t i n u o u s l y f e t c h a n d i s s u e

    i n s t r u c t i o n s b a s e d o n t h e a s s u m p t i o n t h a t b r a n c h e s

    a r e c o r r e c t l y p r e d i c t e d a n d e x c e p t i o n s d o n o t o c c u r .

    I n m o s t c a s e s , b r a n c h e s a r e c o r r e c t l y p r e d i c t e d a n d r e -

    c o v e r i e s f r o m m i s - s p e c u l a t i o n a r e i n f r e q u e n t . S p e c u -

    l a t i o n a l l o w s i n s t r u c t i o n e x e c u t i o n t o p r o c e e d w i t h o u t

    w a i t i n g f o r p r e v i o u s i n s t r u c t i o n s t o c o m p l e t e , t h e r e b y

    a c h i e v i n g g r e a t e r i n s t r u c t i o n t h r o u g h p u t .

    W i t h i n - o r d e r e x e c u t i o n , t h e f r o n t e n d o f t h e

    p i p e l i n e s t o p s s u p p l y i n g i n s t r u c t i o n s w h e n e v e r a d e -

    c o d e d i n s t r u c t i o n c r e a t e s a r e s o u r c e c o n i c t o r h a s a

    t r u e o r o u t p u t d e p e n d e n c y . O u t - o f - o r d e r e x e c u t i o n

    b y p a s s e s t h i s d e p e n d e n c y b y u t i l i z i n g a l o o k a h e a d c a -

    p a b i l i t y t o n d i n d e p e n d e n t i n s t r u c t i o n s t o e x e c u t e .

    A n i n s t r u c t i o n w i n d o w i s u s e d t o b u e r i n s t r u c t i o n s

    a f t e r t h e d e c o d e s t a g e s o t h a t t h e p r o c e s s o r c a n c o n -

    t i n u e t o d e c o d e i n s t r u c t i o n s r e g a r d l e s s o f w h e t h e r t h e y

    c a n b e e x e c u t e d i m m e d i a t e l y . I n s t r u c t i o n s a r e i s s u e d

    f r o m t h e i n s t r u c t i o n w i n d o w w i t h l i t t l e r e g a r d t o t h e

    o r i g i n a l p r o g r a m o r d e r .

    T h e P o w e r P C 6 0 4 i s u s e d a s a r e s e a r c h v e h i c l e t o

    e x p l o r e o u r v a l i d a t i o n m e t h o d o l o g y a s a p p l i e d t o s p e c -

    u l a t i v e a n d o u t - o f - o r d e r e x e c u t i o n . T h e P o w e r P C 6 0 4

    s e r v e s o u r p u r p o s e b e c a u s e i t h a s a l l t h e c h a r a c t e r i s -

    t i c s o f m o d e r n s u p e r s c a l a r p r o c e s s o r s . I t i m p l e m e n t s

    s p e c u l a t i v e a n d o u t - o f - o r d e r e x e c u t i o n u s i n g r e n a m e

    r e g i s t e r s , a r e o r d e r b u e r a n d r e s e r v a t i o n s t a t i o n s , a l l

    o f w h i c h a r e d e s c r i b e d i n t h e f o l l o w i n g s u b s e c t i o n s .

    2 . 1 R e g i s t e r R e n a m i n g

    R e g i s t e r r e n a m i n g 8 ] i s a t e c h n i q u e t h a t i m p r o v e s

    p a r a l l e l i s m b y e l i m i n a t i n g s t a l l e d c y c l e s d u e t o a n t i -

    a n d o u t p u t d e p e n d e n c i e s . I t a v o i d s c o n t e n t i o n f o r a

    g i v e n r e g i s t e r l e l o c a t i o n i n t h e c o u r s e o f o u t - o f - o r d e r

    e x e c u t i o n b y s t o r i n g i n s t r u c t i o n r e s u l t s i n t e m p o r a r y

    ( r e n a m e ) b u e r s . T h e P o w e r P C 6 0 4 u s e s t h r e e s e t s

    o f r e n a m e b u e r s f o r t h r e e r e g i s t e r l e s { g e n e r a l p u r -

    p o s e r e n a m e b u e r ( G R B ) f o r g e n e r a l p u r p o s e r e g i s -

    t e r s ( G P R ) , o a t i n g - p o i n t r e n a m e b u e r ( F R B ) f o r

    o a t i n g - p o i n t r e g i s t e r s ( F P R ) a n d c o n d i t i o n c o d e r e -

    n a m e b u e r ( C R B ) f o r c o n d i t i o n c o d e r e g i s t e r s ( C R ) .

    T w e l v e r e n a m e r e g i s t e r s a r e u s e d f o r t h e G P R s a n d

    e i g h t e a c h f o r t h e F P R s a n d t h e C R s .

    F i g u r e 1 s h o w s t h e F S M m o d e l f o r t h e o p e r a t i o n

    o f e a c h r e n a m e b u e r e n t r y . ( N o t e , t h e m o d e l i s v a l i d

    w h e t h e r t h e r e n a m e b u e r e n t r y i s f r o m t h e G R B ,

    F R B o r C R B . ) A n e n t r y i s F r e e u n t i l t h e d i s p a t c h

    u n i t a l l o c a t e s a n e n t r y f o r a n i n s t r u c t i o n i n t h e d i s -

    p a t c h s t a g e . T h i s o c c u r s i f a n i n s t r u c t i o n m o d i e s

    a n y r e g i s t e r . T h e e n t r y r e m a i n s a l l o c a t e d u n t i l t h e

    i n s t r u c t i o n n i s h e s . T h e r e a r e t w o s t a t e s f o r a n a l -

  • 7/28/2019 Validation of Speculative and Out of Order Execution Microarchitecture

    3/9

    l o c a t e d e n t r y . A t t h e t i m e o f r e n a m i n g , e a c h n e w l y

    a l l o c a t e d r e n a m e e n t r y w i l l a l w a y s h o l d t h e m o s t r e -

    c e n t ( M R ) v a l u e f o r t h e r e n a m e d r e g i s t e r d e n o t e d b y

    t h e M R A l l o c s t a t e o f F i g u r e 1 . I f a r e n a m e e n t r y i s

    a l l o c a t e d t o a r e g i s t e r w h i c h i s t h e n l a t e r r e n a m e d b y

    a n o t h e r i n s t r u c t i o n , t h e p r e v i o u s l y a l l o c a t e d e n t r y w i l l

    n o l o n g e r h o l d t h e m o s t r e c e n t v a l u e a n d w i l l t h e r e -

    f o r e t r a n s i t i o n f r o m t h e M R A l l o c s t a t e t o t h e N o n M R

    A l l o c s t a t e .

    O n c e t h e i n s t r u c t i o n n i s h e s , t h e c o n t e n t o f t h e r e -

    n a m e e n t r y b e c o m e s v a l i d w h i c h c a u s e s a t r a n s i t i o n

    f r o m M R A l l o c ( N o n M R A l l o c ) t o M R V a l i d ( N o n M R

    V a l i d ) . T h e F S M s t a y s i n t h e v a l i d s t a t e u n t i l t h e

    r e s u l t i s w r i t t e n t o t h e r e g i s t e r l e ( W B t r a n s i t i o n ) o r

    a p r i o r i n s t r u c t i o n c a u s e s a n e x c e p t i o n t h a t r e q u i r e s

    a l l s u b s e q u e n t i n s t r u c t i o n s t o b e d i s c a r d e d ( d i s c a r d

    t r a n s i t i o n ) .

    discard

    discard

    discarddispatch

    finish

    finish

    WB

    discard

    WB

    FreeValid

    MR

    Valid

    NonMR

    stale

    stale

    NonMR

    Alloc

    MR

    Alloc

    F i g u r e 1 : T h e F S M m o d e l o f a r e n a m e b u e r e n t r y .

    2 . 2 R e o r d e r B u e r

    O u t - o f - o r d e r e x e c u t i o n a l l o w s i n d e p e n d e n t i n s t r u c -

    t i o n s t o b e e x e c u t e d i n a n o r d e r t h a t i s d i e r e n t f r o m

    t h e o r i g i n a l p r o g r a m o r d e r . H o w e v e r , o u t - o f - o r d e r i n -

    s t r u c t i o n s m u s t c o m p l e t e i n p r o g r a m o r d e r t o e n s u r e

    p r e c i s e e x c e p t i o n h a n d l i n g . P i p e l i n e s o f s u p e r s c a l a r

    p r o c e s s o r s c a n b e t y p i c a l l y d i v i d e d i n t o a n i n - o r d e r

    f r o n t e n d , a n o u t - o f - o r d e r e x e c u t i o n c o r e a n d a n i n -

    o r d e r b a c k e n d . D u r i n g t h e l a s t s t a g e o f t h e i n - o r d e r

    f r o n t e n d , a n e n t r y i s a l l o c a t e d f o r a n i n s t r u c t i o n i n a

    r e o r d e r b u e r 1 2 ] . T h e e x e c u t i o n o f t h e i n s t r u c t i o n i s

    p e r f o r m e d i n t h e o u t - o f - o r d e r c o r e . W h e n t h e i n s t r u c -

    t i o n n a l l y c o m p l e t e s o r t r a n s f e r s i t s s p e c u l a t i v e s t a t e

    i n t o p e r m a n e n t m a c h i n e s t a t e i n t h e i n - o r d e r b a c k -

    e n d , t h e a s s o c i a t e d r e o r d e r b u e r e n t r y i s d e a l l o c a t e d

    i n p r o g r a m o r d e r . A r e o r d e r b u e r e n t r y i n e s s e n c e ,

    i s a p l a c e h o l d e r f o r r e s u l t s t h a t p r e s e r v e s p r o g r a m

    o r d e r .

    T h e P o w e r P C 6 0 4 u s e s a 1 6 - e n t r y r e o r d e r b u e r

    t o i m p l e m e n t i n - o r d e r c o m p l e t i o n a t t h e b a c k e n d . A

    r e o r d e r b u e r e n t r y i s a l l o c a t e d d u r i n g i n s t r u c t i o n d i s -

    p a t c h . W h e n a n i n s t r u c t i o n n i s h e s e x e c u t i o n , i t s s t a -

    t u s ( c o m p l e t e d w i t h o r w i t h o u t e x c e p t i o n ) i s r e c o r d e d

    i n i t s c o r r e s p o n d i n g r e o r d e r b u e r e n t r y . T h e c o m -

    p l e t i o n u n i t r e t i r e s f o u r n i s h e d i n s t r u c t i o n s f r o m t h e

    r e o r d e r b u e r a n d u p d a t e s r e g i s t e r s i n t h e c o m p l e t e

    s t a g e . T h e c o m p l e t i o n u n i t r e c o g n i z e s e x c e p t i o n s a n d ,

    i f n e c e s s a r y , d i s c a r d s a n y o p e r a t i o n s b e i n g p e r f o r m e d

    o n s u b s e q u e n t i n s t r u c t i o n s i n p r o g r a m o r d e r .

    F i g u r e 2 s h o w s t h e F S M m o d e l f o r t h e o p e r a t i o n

    o f e a c h r e o r d e r b u e r e n t r y . A r e o r d e r b u e r e n t r y i s

    a v a i l a b l e f o r a l l o c a t i o n i f i t s F S M i s i n t h e F r e e s t a t e .

    T h e t h r e e u p p e r s t a t e s o f F i g u r e 2 ( A l l o c , E x a n d

    F i n ) i n d i c a t e t h a t a n i n s t r u c t i o n i s n o n - s p e c u l a t i v e

    w h i l e t h e l o w e r t h r e e s t a t e s i n d i c a t e a s p e c u l a t i v e

    i n s t r u c t i o n . D e p e n d i n g o n w h e t h e r o r n o t t h e i n -

    s t r u c t i o n i s s p e c u l a t i v e , t h e F S M t r a n s i t i o n s f r o m t h e

    F r e e s t a t e t o o n e o f t h e t w o a l l o c a t e s t a t e s ( A l l o c o r

    A l l o c S ) w h e n i t i s d i s p a t c h e d t o a r e s e r v a t i o n s t a -

    t i o n . F o r b o t h s p e c u l a t i v e a n d n o n - s p e c u l a t i v e p a t h s ,

    t h e F S M w i l l t r a n s i t i o n f r o m t h e A l l o c s t a t e t o t h e

    E x s t a t e a n d n a l l y t o t h e F i n s t a t e w h e n t h e i n -

    s t r u c t i o n e x e c u t e s a n d n i s h e s , r e s p e c t i v e l y . I f a n i n -

    s t r u c t i o n i s s p e c u l a t i v e , i t m u s t w a i t f o r t h e i n s t r u c -

    t i o n i t d e p e n d s o n t o c o m p l e t e i n o r d e r t o t r a v e r s e

    a n o n - s p e c u l a t i v e t r a n s i t i o n . H e n c e , a n i n s t r u c t i o n

    i n t h e l o w e r t h r e e s t a t e s ( a s p e c u l a t i v e i n s t r u c t i o n )

    c a n t r a n s i t i o n t o a n u p p e r s t a t e w h e n i t b e c o m e s n o n -

    s p e c u l a t i v e .

    O n l y a n o n - s p e c u l a t i v e i n s t r u c t i o n c a n c o m p l e t e

    ( c o m p l e t e t r a n s i t i o n ) a n d c a u s e t h e p r o c e s s o r ' s p e r -

    m a n e n t s t a t e t o c h a n g e . H o w e v e r , b o t h s p e c u l a t i v e

    a n d n o n - s p e c u l a t i v e r e o r d e r b u e r e n t r i e s c a n b e d i s -

    c a r d e d i f i t f o l l o w s a n i n s t r u c t i o n t h a t c a u s e s a n e x -

    c e p t i o n ( d i s c a r d t r a n s i t i o n ) .

    2 . 3 R e s e r v a t i o n S t a t i o n s

    W h e n i n s t r u c t i o n s a r e d i s p a t c h e d t o a n a p p r o p r i a t e

    f u n c t i o n a l u n i t , t h e y a r e p l a c e d i n r e s e r v a t i o n s t a t i o n s

    ( R S s ) b e f o r e t h e y a r e e x e c u t e d 1 3 ] . I n s t r u c t i o n s a r e

    b u e r e d i n t h e r e s e r v a t i o n s t a t i o n s o f f u n c t i o n a l u n i t s

    e v e n i f t h e i r o p e r a n d s a r e r e a d y . R e s e r v a t i o n s t a t i o n s

    a r e u s e f u l b e c a u s e t h e y a l l o w i n s t r u c t i o n s t h a t d o n o t

    h a v e r e a d y o p e r a n d s t o p r o g r e s s d e e p e r i n t h e p i p e l i n e ;

    t h i s a l l o w s t h e f r o n t e n d o f t h e p i p e l i n e t o p r o c e s s n e w

    i n s t r u c t i o n s i n s t e a d o f s t a l l i n g .

    T h e P o w e r P C 6 0 4 h a s d i s t r i b u t e d r e s e r v a t i o n s t a -

    t i o n s , t h a t i s , e a c h o f t h e f u n c t i o n a l u n i t s h a s a d e d -

    i c a t e d t w o - e n t r y b u e r f o r t w o i n s t r u c t i o n s o f t h e

    p r o p e r t y p e . I f a r e s e r v a t i o n s t a t i o n i s a v a i l a b l e a n d a n

    i n s t r u c t i o n c a n b e d i s p a t c h e d , a n e n t r y i n t h e r e s e r v a -

  • 7/28/2019 Validation of Speculative and Out of Order Execution Microarchitecture

    4/9

    discard

    allocate

    allocate

    discarddiscard

    complete

    Free

    Fin

    Fin_S

    Alloc

    Alloc_S

    nonspeculative

    nonspeculative

    nonspeculative

    discard

    discard

    discard

    Ex

    Ex_S

    F i g u r e 2 : T h e F S M m o d e l o f a r e o r d e r b u e r e n t r y .

    t i o n s t a t i o n w i l l b e a l l o c a t e d f o r t h e i n s t r u c t i o n . T h e

    f o l l o w i n g c o n d i t i o n s p r e v e n t a n i n s t r u c t i o n f r o m b e i n g

    d i s p a t c h e d t o a r e s e r v a t i o n s t a t i o n : ( i ) T h e r e q u i r e d

    r e s e r v a t i o n s t a t i o n o r i t s w r i t e p o r t i s f u l l ; ( i i ) T h e

    r e o r d e r b u e r o r i t s w r i t e p o r t i s f u l l ; ( i i i ) A n i n s t r u c -

    t i o n b r e a k o c c u r s a n d c h a n g e s t h e p r o g r a m o w ; ( i v )

    N o r e n a m e r e g i s t e r i s a v a i l a b l e .

    W h e n a n e n t r y i n a r e s e r v a t i o n s t a t i o n i s a l l o c a t e d ,

    t h e v a l u e o f e a c h i n s t r u c t i o n o p e r a n d i s w r i t t e n i n t o

    t h e r e s e r v a t i o n s t a t i o n e n t r y . I f t h e v a l u e i s n o t y e t

    a v a i l a b l e , t h e t a g ( a t e m p o r a r y h a r d w a r e i d e n t i e r

    c r e a t e d t o i d e n t i f y t h e r e s u l t ) o f t h e p e n d i n g o p e r a n d

    w i l l b e u s e d i n s t e a d o f t h e a c t u a l v a l u e . O n c e a l l o f

    t h e o p e r a n d s a r e a v a i l a b l e , t h e i n s t r u c t i o n i s r e m o v e d

    f r o m t h e r e s e r v a t i o n s t a t i o n a n d e x e c u t i o n b e g i n s .

    F i g u r e 3 a s h o w s t h e F S M m o d e l f o r e a c h R S e n -

    t r y o f a t w o - o p e r a n d P o w e r P C i n s t r u c t i o n ( a n a d d i n -

    s t r u c t i o n f o r e x a m p l e ) . E v e r y R S e n t r y s t a r t s a s f r e e

    a n d a v a i l a b l e f o r a l l o c a t i o n . H e n c e , t h e s t a r t i n g s t a t e

    f o r a n R S e n t r y i s t h e F r e e s t a t e s h o w n i n t h e c e n t e r

    o f t h e d i a g r a m o f F i g u r e 3 a . W h e n a n i n s t r u c t i o n i s i n

    t h e d i s p a t c h s t a g e a n d a l l d i s p a t c h c o n d i t i o n s a r e m e t ,

    a n e n t r y i n t h e R S i s a l l o c a t e d . S i n c e t h e i n s t r u c t i o n

    r e q u i r e s t w o s o u r c e o p e r a n d s , t h e r e a r e f o u r p o s s i b l e

    a l l o c a t i o n s t a t e s f o r a n R S e n t r y :

    A l l o c 0 0 : N o s o u r c e o p e r a n d s a r e a v a i l a b l e

    A l l o c 0 1 : O n l y t h e r i g h t s o u r c e i s a v a i l a b l e

    A l l o c 1 0 : O n l y t h e l e f t s o u r c e i s a v a i l a b l e

    A l l o c 1 1 : B o t h s o u r c e o p e r a n d s a r e a v a i l a b l e

    T h e F S M c a n t r a n s i t i o n f r o m t h e A l l o c 0 0 ,

    A l l o c 0 1 a n d A l l o c 1 0 s t a t e s t o a n o t h e r A l l o c

    s t a t e w h e n o t h e r o p e r a n d ( s ) b e c o m e a v a i l a b l e . A n

    R S e n t r y i s d e a l l o c a t e d i f a l l o p e r a n d s a r e r e a d y a n d

    t h e i n s t r u c t i o n i s i s s u e d ( i s s u e t r a n s i t i o n ) ; o r i f t h e

    e n t r y i s d i s c a r d e d d u e t o a n e x c e p t i o n c r e a t e d b y a

    p r i o r i n s t r u c t i o n ( d i s c a r d t r a n s i t i o n ) .

    discard

    1 op.valid

    1 op.valid

    discard

    discard

    1 op. valid1 op. valid

    1 op.valid

    1 op.valid

    2 op. valid

    2 op. valid

    none valid

    issue

    discard

    10

    Alloc

    01

    Alloc

    11Alloc

    Free

    00

    Alloc

    ( a )

    discard

    allocate,non valid

    allocate,1 valid

    discard

    op. valid

    issue

    v0

    Alloc

    Free

    v1

    Alloc

    ( b )

    F i g u r e 3 : T h e F S M m o d e l s o f a r e s e r v a t i o n s t a t i o n e n -

    t r y r e q u i r i n g ( a ) t w o s o u r c e o p e r a n d s a n d ( b ) a s i n g l e

    s o u r c e o p e r a n d .

    3 T e s t S e q u e n c e G e n e r a t i o n

    T h e F S M m o d e l s d e r i v e d f r o m t h e m i c r o a r c h i t e c -

    t u r e s p e c i c a t i o n s a r e u s e d t o d e r i v e a h i g h - l e v e l t e s t

    s e q u e n c e . T h i s t e s t c o n s i s t s o f a s e q u e n c e o f F S M

    t r a n s i t i o n s t h a t e x e r c i s e s t h e F S M i n s o m e p r e s c r i b e d

    w a y ( s u c h a s c o m p l e t e o r p a r t i a l s t a t e t o u r , c o m p l e t e

    o r p a r t i a l t r a n s i t i o n t o u r a n d c h e c k i n g e x p e r i m e n t 9 ] ) .

    A n o b v i o u s t r a d e o e x i s t s b e t w e e n s e q u e n c e g e n e r a -

    t i o n e o r t a n d t h e l e v e l o f v a l i d a t i o n d e p e n d i n g o n t h e

    t y p e o f t o u r s e l e c t e d . W e c h o o s e t o u s e c o m p l e t e t r a n -

    s i t i o n t o u r s f o r t e s t i n g o u r F S M m o d e l s . C o m p l e t e

    t r a n s i t i o n t o u r s a r e w i d e l y u s e d b e c a u s e t h e y e x e r c i s e

    a s i g n i c a n t a m o u n t o f F S M f u n c t i o n a l i t y w h i l e r e -

  • 7/28/2019 Validation of Speculative and Out of Order Execution Microarchitecture

    5/9

    q u i r i n g l i t t l e e o r t t o c r e a t e . A l t h o u g h a t r a n s i t i o n

    t o u r c a n n o t g u a r a n t e e t o t a l c o r r e c t n e s s , i t i s a p r o v e n

    t e c h n i q u e f o r u n c o v e r i n g d e s i g n e r r o r s 1 1 ] .

    S m a l l s e q u e n c e s o f P o w e r P C a s s e m b l y i n s t r u c t i o n s

    a r e u s e d t o t r a n s l a t e F S M t e s t s e q u e n c e s ( i . e . t r a n -

    s i t i o n t o u r s ) i n t o a s i m u l a t a b l e i n s t r u c t i o n s e q u e n c e ,

    t h a t i s , a n a s s e m b l y p r o g r a m . T h e s e s m a l l i n s t r u c t i o n

    s e q u e n c e s a r e c a l l e d a t o m i c s e q u e n c e s . F o r e a c h F S M

    t r a n s i t i o n , a n a t o m i c s e q u e n c e i s d e r i v e d . E x e c u t i o n

    o f t h e a t o m i c s e q u e n c e i n s t r u c t i o n s c a u s e s t h e a s s o -

    c i a t e d F S M t r a n s i t i o n t o b e e x e r c i s e d . T h e a t o m i c

    s e q u e n c e s t r u c t u r e i s p a r t i t i o n e d i n t o t w o p a r t s : a n

    i n i t i a l i z a t i o n s u b s e q u e n c e a n d a s i n g l e t r i g g e r i n g i n -

    s t r u c t i o n . T h e i n i t i a l i z a t i o n s u b s e q u e n c e p l a c e s t h e

    p r o c e s s o r i n t o a m a c h i n e s t a t e t h a t m a k e s i t r e a d y t o

    t r a v e r s e t h e t r a n s i t i o n a s s o c i a t e d w i t h t h e a t o m i c s e -

    q u e n c e . E x e c u t i o n o f t h e t r i g g e r i n g i n s t r u c t i o n t h e n

    c a u s e s t h e t r a v e r s a l o f t h e t r a n s i t i o n . S o m e a t o m i c s e -

    q u e n c e s d o n o t r e q u i r e t h e i n i t i a l i z a t i o n s u b s e q u e n c e

    ( t h e r e o r d e r b u e r f o r e x a m p l e ) . A t o m i c s e q u e n c e s a r e

    d e r i v e d f r o m t h e m i c r o a r c h i t e c t u r e a n d t h e I S A s p e c -

    i c a t i o n s . O n c e t h e a t o m i c s e q u e n c e s a r e o b t a i n e d ,

    a s s e m b l y - l e v e l t e s t p r o g r a m s a r e c r e a t e d u s i n g P e r l

    s c r i p t s t o c o n c a t e n a t e v a r i o u s a t o m i c s e q u e n c e s i n t h e

    o r d e r o f t h e t r a n s i t i o n t o u r .

    4 S i m u l a t i o n R e s u l t s

    T h e M W 6 , 7 ] p e r f o r m a n c e s i m u l a t o r i s u s e d f o r

    o u r s i m u l a t i o n e x p e r i m e n t s f o r t h e P o w e r P C 6 0 4 .

    C h e c k i n g c o d e h a s b e e n a d d e d t o t h e s i m u l a t o r t o

    t r a c k a n d m e a s u r e t h e l e v e l o f F S M t r a n s i t i o n c o v -

    e r a g e a c h i e v e d b y t h e t e s t p r o g r a m u n d e r s i m u l a t i o n .

    C o v e r a g e i s d e n e d a s t h e p e r c e n t a g e o f t a r g e t e d t r a n -

    s i t i o n s t r a v e r s e d . I n t h i s c a s e , c o v e r a g e i s s i m p l y t h e

    r a t i o o f t h e n u m b e r o f t r a v e r s e d F S M t r a n s i t i o n s t o

    t h e t o t a l n u m b e r o f t a r g e t e d F S M t r a n s i t i o n s .

    I n c u r r e n t i n d u s t r y p r a c t i c e , r e a l a n d r a n d o m l y -

    g e n e r a t e d p r o g r a m s a r e t y p i c a l l y u s e d f o r v a l i d a t i n g

    h a r d w a r e d e s i g n . W e u s e t h e S P E C 9 5 ( b o t h i n t e -

    g e r a n d o a t i n g p o i n t ) b e n c h m a r k s w h i c h h a v e o v e r

    a b i l l i o n i n s t r u c t i o n s a n d a n e x e c u t i o n c y c l e c o u n t

    o f 7 3 5 M . W e e v a l u a t e t h e e e c t i v e n e s s o f o u r g e n e r -

    a t e d s e q u e n c e s b y c o m p a r i n g t h e a m o u n t o f t r a n s i t i o n

    c o v e r a g e o b t a i n e d f r o m o u r t e s t p r o g r a m w i t h t h o s e

    o f S P E C 9 5 b e n c h m a r k s . F i g u r e 4 s h o w s t h e n u m b e r

    o f i n s t r u c t i o n s s i m u l a t e d i n S P E C 9 5 b e n c h m a r k s a n d

    o u r t e s t p r o g r a m s .

    S i n c e t h e c u r r e n t v e r s i o n o f M W i s s t r i c t l y t r a c e -

    d r i v e n , i t i s n o t a b l e t o s i m u l a t e t h e f u n c t i o n a l i t y

    a s s o c i a t e d w i t h m i s - s p e c u l a t e d p a t h s . A s a r e s u l t ,

    s o m e t r a n s i t i o n s i n t h e F S M m o d e l s a r e u n t r a c k a b l e .

    T h e u n t r a c k a b l e t r a n s i t i o n s a r e s h o w n a s b o l d a r r o w s

    i n F i g u r e s 1 , 2 a n d 3 . T h e s e t r a n s i t i o n s c a n o n l y

    b e t r a v e r s e d b y e x e c u t i n g i n s t r u c t i o n s d o w n s p e c u -

    l a t i v e p a t h s . M W i s c u r r e n t l y b e i n g m o d i e d i n t o

    a n e x e c u t i o n - d r i v e n t o o l t h a t i s c a p a b l e o f s i m u l a t i n g

    b o t h s p e c u l a t i v e a n d n o n - s p e c u l a t i v e i n s t r u c t i o n s .

    F i g u r e 5 s h o w s o v e r a l l c o v e r a g e o f t h e G R B , F R B

    a n d C R B r e n a m e b u e r s . O u r t e s t s e q u e n c e i s e x -

    h a u s t i v e i n t h a t e a c h F S M m o d e l e d g e i s t r a v e r s e d

    i n e v e r y p o s s i b l e w a y . F o r t h e G R B , t h i s m e a n s t h a t

    e a c h e d g e c a n b e t r a v e r s e d u s i n g a n y o n e o f t h e 3 2 d i f -

    f e r e n t g e n e r a l p u r p o s e r e g i s t e r s . S i m i l a r l y , t h e r e a r e

    3 2 p o s s i b l e w a y s t o t r a v e r s e a n e d g e i n t h e o a t i n g

    p o i n t r e n a m e e n t r y s i n c e t h e r e a r e 3 2 d i e r e n t o a t i n g

    p o i n t r e g i s t e r s . H o w e v e r , t h e r e a r e o n l y 8 a l t e r n a t i v e s

    f o r a c o n d i t i o n c o d e r e n a m e e n t r y s i n c e t h e r e a r e o n l y

    e i g h t c o n d i t i o n r e g i s t e r s . F i g u r e 5 s h o w s t h a t n o n e

    o f t h e S P E C 9 5 b e n c h m a r k s a c h i e v e 1 0 0 % c o v e r a g e o f

    t h e t a r g e t e d f u n c t i o n a l i t y o f t h e r e n a m e b u e r . T h e

    b e n c h m a r k p r o g r a m s f r o m c o m p r e s s t o v o r t e x h a v e

    l o w F R B c o v e r a g e b e c a u s e t h e s e b e n c h m a r k s a r e i n t e -

    g e r a p p l i c a t i o n s a n d t h e r e f o r e c o n t a i n v e r y f e w o a t -

    i n g p o i n t i n s t r u c t i o n s . H o w e v e r , o u r t e s t p r o g r a m s

    e a s i l y a c h i e v e 1 0 0 % c o v e r a g e u s i n g ( c o m p a r a t i v e l y )

    v e r y f e w i n s t r u c t i o n s .

    F i g u r e 6 s h o w s o v e r a l l c o v e r a g e f o r t h e r e o r d e r

    b u e r . T h e t a r g e t e d f u n c t i o n a l i t y f o r t h e r e o r d e r

    b u e r i s q u i t e s i m p l i s t i c . H e r e , w e e n s u r e t h a t e a c h

    b u e r e n t r y i s e x e r c i s e d b y e a c h o f t h e s i x f u n c t i o n a l

    u n i t s S F X 0 , S F X 1 , C F X , F P U , L S U a n d B R U . A l l

    b u t t h r e e o f t h e b e n c h m a r k p r o g r a m s ( g o , l i , a n d

    v o r t e x ) a c h i e v e 1 0 0 % c o v e r a g e .

    F i g u r e s 7 a n d 8 c o m p a r e s c o v e r a g e s f o r t h e 1 - a n d

    2 - o p e r a n d r e s e r v a t i o n s t a t i o n F S M s , r e s p e c t i v e l y , f o r

    f o u r f u n c t i o n a l u n i t s S F X 0 , S F X 1 , C F X a n d F P U .

    T h e t a r g e t e d f u n c t i o n a l i t y f o r e a c h r e s e r v a t i o n s t a t i o n

    i n c l u d e s t r a v e r s i n g e a c h t r a n s i t i o n w i t h a l l r e g i s t e r

    o p e r a n d p o s s i b i l i t i e s . F o r t h e t w o - o p e r a n d r e s e r v a t i o n

    s t a t i o n s , t h i s m e a n s t h e r e a r e 1 0 2 4 d i e r e n t a l t e r n a -

    t i v e s f o r e x e r c i s i n g a n e d g e s i n c e t h e r e a r e 3 2 r e g i s t e r

    c h o i c e s f o r e a c h o f t h e t w o s o u r c e s . T h e o n e - o p e r a n d

    r e s e r v a t i o n s t a t i o n s h a v e o n l y 3 2 p o s s i b l e a l t e r n a t i v e s

    s i n c e t h e r e i s o n l y o n e s o u r c e . T h e b e n c h m a r k c o v -

    e r a g e o f t h e o n e - o p e r a n d r e s e r v a t i o n s t a t i o n i s q u i t e

    l o w , w i t h t h e h i g h e s t c o v e r a g e a c h i e v e d b e i n g a b o u t

    4 0 % f o r t h e p r o g r a m f p p p p . T h e b e n c h m a r k c o v e r a g e

    i s e v e n l o w e r f o r t h e t w o - o p e r a n d r e s e r v a t i o n s t a t i o n s .

    N o b e n c h m a r k p r o g r a m a c h i e v e s 2 0 % c o v e r a g e .

    5 S u m m a r y

    D e s i g n e r r o r s d e t e c t e d l a t e i n t h e d e s i g n c y c l e

    a r e e x t r e m e l y e x p e n s i v e t o c o r r e c t . H e n c e , m i c r o a r -

    c h i t e c t u r e v a l i d a t i o n i s i m p o r t a n t s i n c e i t i m p a c t s

    m a n y o f t h e c o m p l e x b e h a v i o r s f o u n d i n t h e d e s i g n .

    H e r e , w e h a v e a p p l i e d o u r m i c r o a r c h i t e c t u r e v a l i d a -

  • 7/28/2019 Validation of Speculative and Out of Order Execution Microarchitecture

    6/9

    10^0

    10^1

    10^2

    10^3

    10^4

    10^5

    10^6

    10^7

    10^8

    gcc g

    o

    ijpeg

    li

    m88ksim

    perl

    vortex

    applu

    fpppp

    mgrid

    swim

    compress

    40M

    258M

    80M

    92M

    57M 1

    07M

    50M

    153M

    38M

    50M 1

    11M

    39M

    rename

    rob

    rs(1op)

    rs(2op)

    7K

    No.

    ofinstruct

    ions

    Program names

    0.3

    K

    2K

    138K

    ( a ) ( b )

    F i g u r e 4 : P r o g r a m s i z e s ( i . e . t h e t o t a l n u m b e r o f i n s t r u c t i o n s ) f o r ( a ) t h e S P E C b e n c h m a r k s a n d ( b ) o u r t e s t

    p r o g r a m s .

    t i o n a p p r o a c h 1 4 ] t o t h e o u t - o f - o r d e r e x e c u t i o n m e c h -

    a n i s m s o f t h e P o w e r P C 6 0 4 w h i c h i n c l u d e a r e o r d e r

    b u e r , f u n c t i o n a l - u n i t r e s e r v a t i o n s t a t i o n s a n d r e n a m e

    b u e r s . W e h a v e d e s c r i b e d m i c r o a r c h i t e c t u r e - l e v e l ,

    F S M - l i k e m o d e l s f o r e a c h o f t h e s e c o m p o n e n t s , g e n -

    e r a t e d t r a n s i t i o n t o u r s f o r t h e s e m o d e l s a n d h a v e a u -

    t o m a t i c a l l y t r a n s f o r m e d t h e s e t o u r s i n t o P o w e r P C t e s t

    p r o g r a m s . T h e e e c t i v e n e s s o f o u r s e q u e n c e s h a s

    b e e n s h o w n t h r o u g h c o v e r a g e c o m p a r i s o n s w i t h t h e

    S P E C 9 5 b e n c h m a r k p r o g r a m s . O u r s i m u l a t i o n r e s u l t s

    s h o w t h a t o u r p r o g r a m s a c h i e v e 1 0 0 % F S M t r a n s i -

    t i o n c o v e r a g e . T h e b e n c h m a r k s , a l t h o u g h t h r e e o r -

    d e r s o f m a g n i t u d e l a r g e r t h a n o u r t e s t p r o g r a m s , d o

    n o t a c h i e v e 1 0 0 % c o v e r a g e .

    C u r r e n t l y , w e a r e w o r k i n g t o a u t o m a t e o u r m e t h o d -

    o l o g y . W e e n v i s i o n a n A T P G - l i k e a l g o r i t h m w h i c h a c -

    c e p t s F S M m o d e l s o f t h e m i c r o a r c h i t e c t u r e , i n f o r m a -

    t i o n a b o u t t h e i n s t r u c t i o n s e t a r c h i t e c t u r e a n d f a u l t

    c o v e r a g e g o a l s w h i c h a r e s e t b y t h e p r o g r a m u s e r . T h e

    o u t p u t o f t h i s A T P G a l g o r i t h m w o u l d b e a s s e m b l y -

    l e v e l t e s t p r o g r a m s t h a t \ e x e r c i s e " t h e f u n c t i o n a l i t y

    t a r g e t e d b y t h e F S M s . T h e t y p e o f e x e r c i s e c a n r a n g e

    f r o m t o u r s a n d c h e c k i n g e x p e r i m e n t s a p p l i e d t o i n -

    d i v i d u a l F S M s t o t h e i n t e r c o m m u n i c a t i o n o f t h e s e

    F S M s . T h e P o w e r P C 6 0 4 , o f c o u r s e , w o u l d c o n t i n u e

    t o b e u s e d a s o u r c a s e s t u d y b u t t h e a l g o r i t h m w o u l d

    b e g e n e r a l a n d t h e r e f o r e a p p l i c a b l e t o a n y s u p e r s c a l a r

    p r o c e s s o r . O f p a r t i c u l a r i n t e r e s t , i s t h e a p p l i c a t i o n o f

    a n a u t o m a t e d f o r m o f o u r v a l i d a t i o n m e t h o d o l o g y t o

    t h e x 8 6 a n d A l p h a f a m i l i e s o f m i c r o p r o c e s s o r d e s i g n s .

    R e f e r e n c e s

    1 ] S p e c i a l I s s u e C e l e b r a t i n g t h e 2 5 t h A n n i v e r s a r y o f

    t h e M i c r o p r o c e s s o r . M i c r o p r o c e s s o r R e p o r t , A u g .

    1 9 9 6 .

    2 ] D . L . B e a t t y a n d R . E . B r y a n t . \ F o r m a l l y V e r i f y -

    i n g a M i c r o p r o c e s s o r U s i n g a S i m u l a t i o n M e t h o d -

    o l o g y , " I n P r o c . o f D e s i g n A u t o m a t i o n C o n f e r -

    e n c e , p p . 5 9 6 { 6 0 2 , J u n e 1 9 9 4 .

    3 ] B . B l a c k a n d J . P . S h e n . \ C a l i b r a t i o n o f M i -

    c r o p r o c e s s o r P e r f o r m a n c e M o d e l s , " . I E E E C o m -

    p u t e r , V o l . 3 1 , N o . 5 , p p . 5 9 { 6 5 , M a y 1 9 9 8 .

    4 ] A . K . C h a n d r a e t . a l . \ A V P G E N { A T e s t C a s e

    G e n e r a t o r f o r A r c h i t e c t u r e V e r i c a t i o n , " I E E E

    T r a n s a c t i o n s o n V L S I S y s t e m s , V o l . 3 , N o . 2 , p p .

    1 8 8 { 2 0 0 , J u n e 1 9 9 5 .

  • 7/28/2019 Validation of Speculative and Out of Order Execution Microarchitecture

    7/9

    0.00

    10.00

    20.00

    30.00

    40.00

    50.00

    60.00

    70.00

    80.00

    90.00

    100.00

    gcc g

    o

    ijpeg

    li

    m88ksim

    perl

    vortex

    applu

    fpppp

    mgrid

    swim

    compress

    rename

    Program names

    GRB

    FRB

    CRB

    Coveragepercentage

    ( a ) ( b )

    F i g u r e 5 : R e n a m e b u e r c o v e r a g e c o m p a r i s o n b e t w e e n ( a ) t h e S P E C 9 5 b e n c h m a r k s a n d ( b ) o u r t e s t p r o g r a m s .

    Coveragepercentage

    0.00

    10.00

    20.00

    30.00

    40.00

    50.00

    60.00

    70.00

    80.00

    90.00

    100.00

    gcc g

    o

    ijpeg

    li

    m88ksim

    per

    l

    app

    lu

    fpppp

    mgri

    d

    swim

    compress ro

    b

    Program names

    vortex

    ( a ) ( b )

    F i g u r e 6 : R e o r d e r b u e r c o v e r a g e c o m p a r i s o n b e t w e e n t h e ( a ) S P E C 9 5 b e n c h m a r k s a n d ( b ) o u r t e s t p r o g r a m s .

  • 7/28/2019 Validation of Speculative and Out of Order Execution Microarchitecture

    8/9

    Coveragepercentage

    0.00

    10.00

    20.00

    30.00

    40.00

    50.00

    60.00

    70.00

    80.00

    90.00

    100.00

    rs(1op)

    Program names

    gcc g

    o

    ijpeg

    li

    m88ksim

    perl

    vortex

    applu

    fpppp

    mgrid

    compress

    swim

    SFX0

    SFX1

    CFX

    FPU

    ( a ) ( b )

    F i g u r e 7 : O n e - o p e r a n d r e s e r v a t i o n s t a t i o n c o v e r a g e c o m p a r i s o n b e t w e e n ( a ) t h e S P E C 9 5 b e n c h m a r k s a n d ( b )

    o u r t e s t p r o g r a m .

    SFX0

    SFX1

    CFXFPU

    Coveragepercentage

    0.00

    10.00

    20.00

    30.00

    40.00

    50.00

    60.00

    70.00

    80.00

    90.00

    100.00

    rs(2op)

    Program names

    gcc g

    o

    ijpeg

    li

    m88ksim

    perl

    vortex

    applu

    fpppp

    mgrid

    swim

    compress

    ( a ) ( b )

    F i g u r e 8 : T w o - o p e r a n d r e s e r v a t i o n s t a t i o n c o v e r a g e c o m p a r i s o n b e t w e e n ( a ) t h e S P E C 9 5 b e n c h m a r k s a n d ( b )

    o u r t e s t p r o g r a m .

  • 7/28/2019 Validation of Speculative and Out of Order Execution Microarchitecture

    9/9

    5 ] E . M . C l a r k e a n d R . P . K u r s h a n . \ C o m p u t e r -

    A i d e d V e r i c a t i o n , " I E E E S p e c t r u m , p p . 6 1 { 6 7 ,

    J u n e 1 9 9 6 .

    6 ] T . A . D i e p . \ V M W : A V i s u a l i z a t i o n - b a s e d

    M i c r o a r c h i t e c t u r e W o r k b e n c h , " P h D t h e s i s ,

    C a r n e g i e M e l l o n U n i v e r s i t y , A u g . 1 9 9 5 .

    7 ] A . S . H u a n g a n d T . A . D i e p . \ M W D e v e l -

    o p e r ' s G u i d e , " T e c h n i c a l R e p o r t , C M u A R T - 9 5 - 1 ,

    C a r n e g i e M e l l o n U n i v e r s i t y , A u g . 1 9 9 5 .

    8 ] R . M . K e l l e r . \ L o o k - A h e a d P r o c e s s o r s , " C o m -

    p u t i n g S u r v e y s , V o l . 7 , N o . 4 , p p . 1 7 7 { 1 9 5 , D e c .

    1 9 7 5 .

    9 ] Z . K o h a v i . S w i t c h i n g a n d F i n i t e A u t o m a t a T h e -

    o r y . M c G r a w - H i l l , N e w Y o r k , 1 9 7 8 .

    1 0 ] M . C . M c F a r l a n d . \ F o r m a l V e r i c a t i o n o f S e -

    q u e n t i a l H a r d w a r e : A T u t o r i a l , " I E E E T r a n s -

    a c t i o n s o n C o m p u t e r - A i d e d D e s i g n o f I n t e g r a t e d

    C i r c u i t s a n d S y s t e m s , V o l . 1 2 , N o . 5 , p p . 6 3 3 { 6 5 4 ,

    M a y 1 9 9 3 .

    1 1 ] S . N a i t o a n d M . T s u n o y a m a . \ F a u l t D e t e c t i o n

    f o r S e q u e n t i a l M a c h i n e s b y T r a n s i t i o n - T o u r s , "

    P r o c . o f t h e I n t e r a n a t i o n a l S y m p o s i u m o n F a u l t -

    T o l e r a n t C o m p u t i n g , p p . 2 3 8 { 2 4 3 , J u n e 1 9 8 1 .

    1 2 ] J . E . S m i t h a n d A . R . P l e s z k u n . \ I m p l e m e n -

    t a t i o n o f P r e c i s e I n t e r r u p t s i n P i p e l i n e d P r o c e s -

    s o r s , " P r o c . o f t h e I n t e r n a t i o n a l S y m p o s i u m o n

    C o m p u t e r A r c h i t e c t u r e , p p . 3 6 { 4 4 , J u n . 1 9 8 5 .

    1 3 ] R . M . T o m a s u l o . \ A n E c i e n t A l g o r i t h m f o r E x -

    p l o i t i n g M u l t i p l e A r i t h m e t i c U n i t s , " I B M J o u r -

    n a l , V o l . 1 1 , N o . 1 , p p . 2 5 { 3 3 , J a n . 1 9 6 7 .

    1 4 ] N . U t a m a p h e t h a i , R . D . B l a n t o n , a n d J . P .

    S h e n . \ S u p e r s c a l a r P r o c e s s o r V a l i d a t i o n a t t h e

    M i c r o a r c h i t e c t u r e L e v e l , " P r o c . o f I n t e r n a t i o n a l

    C o n f e r e n c e o n V L S I D e s i g n , J a n . 1 9 9 9 .


Recommended