Evolutionary Algorithms for the Physical Design of VLsI Circuits

5 downloads 107 Views 736KB Size Report
Electronic design automation (EDA) is concerned with the design and production ... VLsI (Very Large scale Integration) integrated circuits, or as they are known.
                 ½   ¾     ¿ ½

¾

¿

             !   "#    $  %&  %& %' (()*    ! + , " &# -    # .   /   #  /   # )0 1  ! +" 

   #     23   # 4  # #

 #   5 .  %        5 .     # /      #          # # /           ,       6      $ #  &    &     #     &  6                 7 4         # # & # 6           &   7  #    8        &#       4  5 .    

  

                                                         !"# $!    " #   %                  & !"#          '((      )                               *      $+&% +&             

    !"#      ,               -                        .    



  9  # 5

& +&                 ,    /                             &          $     %                          +&              

                  ,               -        !"#        .          .   .        

Specification

x=a+bc

Logic Design Partitioning

a b

Circuit Design

c

Placement

Physical Design Routing

Fabrication Compaction

Testing

Chip

  /   # #     !"#            0  $   '%1   1              ,      1               ,     2       1               ,               $ &3+ 3)-  )4           %

1  5 . 



   1              ,    -             ,                              1                    1                                    

2                                 &  +&   ,                      

+&         Æ        ,  .                     &  +&              5                5 "     .  5                -  ,   .             '678  9      $'678%:        0 +&   ,   $   '67;     !"%           +&                  .         $ 9 $'66A%: 9 $'66J%:  92I $'66A%:                     92  $'66A%:  9 $'66J%: #  &    #        

        K   # H&                            -      B                           )                H&  "      & #                           B   -             ,     #  #             - H& "  ?         #  H&  ,        ,           &   H&          B   /       H&        #  ? 

             $- ?                       K         % "                         ?   "    

              B      ,    &                       -          

=

  9  # 5

     &                      #                        -               ,        -                                                  #  H&      

                        #  "             5           3        ,      &                     B                    #  H&                               #   "    B              3   "         ?  ,              B         -              2                  ,     K              ,   2                                     ,                -         Æ           ,          9H   $'676%:

Initialize population to represent a random collection of parent solutions. Evaluate the fitness of all members of the population. While the population has not converged: Initialize the offspring population to be empty. While the number of offspring is insufficient do: Select two new members a and b of the parent population. Crossover a and b to produce offspring c. Add c to the offspring population. End Initialize the number of mutated members to 0. While the number of mutated members is insufficient: Randomly select a member to mutate. End Select the members of the parent and offspring populations to become the new parent population. End

   & 1 ,      

1  5 . 



&       H&,           8 -               -                   5                         &                             Æ   &  .                  -           5  @                             

      

)            ,             , 0 .,   #               0        .           ,   )         

     

  9"B $'67;:           .  9     $'66J%:  9H   $'676%:



           

@                      @             .   ,             -                   1  # 1 &   L ½            

  &   L ½        

 )1 &             (  '   .       *                 #  L (         (    L '         ' &   ,              (            ' - B                                

&       Æ      +&  ,        5          &                                 (              (M          '              ' -                       -         B         

)

  9  # 5

-                              B        .                     &                 ,      9H   $'676%:       

            -                               B    #       5         .            &              L '('((''(  L (''(('('    ,     J - B    '('(('(' $          % 2     .       5       5           ,       & ,           

      B        #    '     '                                 B    #              $  '     '                                 B   % &           $'('((''(%     $(''(('('%   L A  L 8  B   L '('((''( $          % & ,              ,                        "            )                  #  ,                          L '('((''(                 '((((''( $                 %        $     B        .%               E

; J  7               

                         /

      +&                     "                               0       !"#   & +&     

   ,                       '67C

1  5 . 

))

            !"     #               $ ,          %                              @          0     ,          $             %               #                          -           4              5 Æ 2                

                                     #         ,          5                  #                    ,           #         ,                    

                                  ,                        &                               /                        5       

  

&                                 -

                        >                      B     > ,                 B          .        -    ,                   9"  4 $'676%: #             .                                   0 -         ,    , 0      -             $        %   , &  '   -      

)

  9  # 5

  1            - ,           &         -     ,         .             -                          9/ $'66'%:  9/ $'66'%:   B                   -   H&   ,              ,        ,        -                ,           -                       -          &   H&  9   $'66'%:                            ,      J(          '( * E(                 ?                      4            5             &   H&   ,             92  > $'66;%: $- ,                 .    .     % /                 -                 ,               -          5           -          

                 &     (                  

   '   2   H&                  ,              H& -                            B           -                            &                                          &          9!     $'66J%: #            H& -          .                       ,       H& 2            

1  5 . 

)

@     H&                          ,,,       " 9&     $'66J%:          

                  ,              H&        9>.   " $'666%:

   -                 $  %     -                   $       %   0 $        % -  0 B            ?                          ?H&         .      $   ;% Semi Custom Circuits

Full Custom Circuits

Cell−Based Circuits Gate−Arrays

Standard Cell Layout

Macro Cell Layout

Without Layout Restrictions

  $  -                 , 1  ,                 .        -             ,       B   .   -  .       .        ,               $ %                  B      )                                    5        >               1               

)(

  9  # 5

$         %             $         % &         9  ?  $'67C%:   ,                      9    2  0 $'676%: 9    2  0 $'66(%:

9"  >.  $'66(%:  9"  >.  $'66( %: -                ,                     ,                     -  .    E;    -                        -             F      G      -         ,5    ,  !"#           ,      -         A     ,   9    2  0 $'676%:       'E         9"  >.  $'66( %: 9>  >.  $'668%:          ,          H&               -      B                       @          5  H&              @                   -    9   $'66'%:     ,

                 & ,               9   $'66E%: 9    >.  $'66E%:          H&      ,  .   -                   H&           -                     /        9"   !   $'66A%:       H&           -     F,  G              F G  5  H&  B ,     &                                   -       F,  G                  2   ,            "                       -             ( 

  &   H&   D    .         

1  5 . 

):

94     4  $'66A%: -             

     H& -                                      5    "                 ,  .        D                  &    H&               9"   $'668%: -     H  ,  $9H  $'67C%:%    H& -                                 -                 -           #         ,            F   G ,            $-                          % /  F   G    

   ,             &               .

         #                ,    B                   $    %   -      ,   D             +                  D  ,            -                 $   J     9>.   4  $'666%:% Crossover Point AB C DE F GH I J

AB C DE F GH I J

AB C DE F GH I J

E C I ADHJ B FG

E C I ADHJ B F G

E C I ADH JB F G

AHC DE I J B F G

AB C DE F I HJ G

AC I DE HGB F J

PMX Crossover

Order Crossover

Cycle Crossover

        &  

)0

  9  # 5

-  #   & $?>N%                                                    B   9H      $'67J%: #                                /                                               B   -     & 9+ $'67J%:              #                         B   -    $ %     B                               -    & 9)   $'67J%:     B                        -           D      ,               "   ,        

        @ H&   0        ,  *               *              ,H&   #             !?4 92.  4 $'66C%:  "B 9     $'666%:           H&                        9"   $'666%:        9" .   @  $'66A%:      H&  ,                 9>.   4  $'666%:

 

4             0           -    !"#   $   >, > 

>>%           $          %     $              % 4   >>  ?2 $?     2 %                -      ,  ,    -            ,                  # ,   , F G $ %                      $   A% H            ,                      $    %     -             

1  5 .  Two−Step−Routing (IC, MCM)

Global Routing

)*

Free Routing (Custom Routing) (MCM, PCB)

Detailed Routing Channel Routing

Switchbox Routing

  >        -                     5     -      5        &                   

   $                  %  ) $   $               %      C +                                                           ,        -        5            #                0                                4          "       *                             9/    $'66E%:     "  , ,  H&  9    >.  $'66;%: 9  $'668%: 9   4 ," $'668%:  9    >.  $'666%: -                       $9   $'66;%:% 2                             4             M                              #                   ,                  !               

        ,

)=

  9  # 5 Switchbox routing problem

1

1

2

3

3

0 2

VLSI circuit

1

Channel routing problem

1

2

3

3

3

2

1

1

1

2

3

3

3

2

1

1

3 3

1

2

2

2

3

3

3

2

Possible routing solutions

1

1

0

3

2

2 3

2

2

3

  4& ; #                     5                 -        

                      @                                   . -          ,   #      H&   "        ,                       -       H&        $           %           .  -      -  @> $9" $'677%:%  ,, ,   ,  ,       5 /          J(     ,       9   $'676%:   ,, ,                       $& ,, ,                     % -    $        %   ,                                  ,   -                 E;            

1  5 . 

)

-   9H    $'66'%:              H& -          ,                            -          !"#   ,            "                     M 94   )  $'668%:     

  94   $'66;%:  94   $'66J%: /      ,             .            -              ,  !"#        - H&         9   -  $'66;%:       ,     /          ,    ,          ,               -                        &           $   %  .           $  7      9   -  $'66;%:% Via

1

Net 1

0

Net 2 Pins

0

0

0 z’

y’

x’

Phenotype

z

0 0

0 1

-1 y

1 1 0 -2

1 0 2

0 0

1 0

0

2

0

x

Genotype

      2 3 #    # 23 -  ,              F   ,  G               ,   ,         5                             , 5      B                                      -               ,      -     5                   -       $       %     & H&                ,        9HI   $'66C%: -     



  9  # 5

      9   -  $'66;%:      ,  &                     $ , F,      G%      9HI   $'66C %: #             A(                      E;   - H&  9   -  $'66A%:              -         ,              $      %                    -                 " 5                  .     @               H&       5       ,          9  $'66C%:       H&        ,      -             5 ,    9   H $'6CE%:  9   $'66'%: & H&    5      H&                          ? ,         $  %           5            $     6%

Isolated Evolution

Migration

Isolated Evolution

Result

  $  # 8 &  # 4   &      4  ?52)*3@ &          2A. #    B3  #   # &  # ; ##  2A               ,     5   /         !"#

                     ,                                              ,                    5                      $9H    $'66'%:%              .          +        &+   !"#            0    9+& 2   $'66C%: &        !"#             !"#                    #                                   -       , D  ,  !"#    

1  5 .  %

:



@                   !"#    @            ,               !"#  @                           

 & @                 ! ,   &        3  "         +& 6A8;888 4 6EE;C76 >#? 6'(CC'C +P 6JJ;C'J  +P 6AJ8;'8    +     "    P    ! ,    H  "    $+H%    +   P    - 

' 

?&    2)(3@ &   2)(3     $  #$ %   &   &  ,    $   #!!&  ( + ! */)&&&   %  *+ 00( 00 ?C  # 4 23@ C    2)=:3    * -   & +      $  (   *+  6)     ! ?1 #   2)(3@ 1 #  /&   G 9 ,  2)(3  6    ! ,,!  *, 0 5  (.  0  3  ( 1>1 / >  ?' # 2)*:3@ ' # E ' 2)*:3 ,   3%   4     DE = 0= ?  2)(3  %   &   ,&   "  1,     ( + !  &&&   *+  &'%  *,%  * ) ?>   2):3@ >  C C $ $, 5   1 > # # 

C -  #  # 2)03@ >& #   # & 2)*3@ >& . 2)*3 &'%   :,  % ! !  ! ( ; ,     ! &'%  -  ' 6&   C#  ?> #,   2)*3@ > #,    2))3 % &  

  -  &  "  %    &&& 6 #. , %  "#  96   9     2)*3 !  +    /!  #  :,  ;  9 4 # $ & C  

Suggest Documents