UBC Theses and Dissertations

UBC Theses Logo

UBC Theses and Dissertations

The design of CMOS colour palette integrated circuit Mielcarski, Robert James 1983

Your browser doesn't seem to have a PDF viewer, please download the PDF to view this item.

Item Metadata

Download

Media
831-UBC_1983_A7 M53.pdf [ 11.99MB ]
Metadata
JSON: 831-1.0095834.json
JSON-LD: 831-1.0095834-ld.json
RDF/XML (Pretty): 831-1.0095834-rdf.xml
RDF/JSON: 831-1.0095834-rdf.json
Turtle: 831-1.0095834-turtle.txt
N-Triples: 831-1.0095834-rdf-ntriples.txt
Original Record: 831-1.0095834-source.json
Full Text
831-1.0095834-fulltext.txt
Citation
831-1.0095834.ris

Full Text

DESIGN OF A CMOS COLOUR PALETTE INTEGRATED CIRCUIT B . A . S c , The U n i v e r s i t y of B r i t i s h C o l u m b i a , 1981 A THESIS SUBMITTED IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF MASTER OF APPLIED SCIENCE i n THE FACULTY OF GRADUATE STUDIES ELECTRICAL ENGINEERING We a c c e p t t h i s t h e s i s as c o n f o r m i n g t o t h e r e q u i r e d s t a n d a r d THE UNIVERSITY OF B R I T I S H COLUMBIA O c t o b e r 1983 (c) R o b e r t James M i e l c a r s k i , 1983 By ROBERT JAMES MIELCARSKI In presenting t h i s thesis i n p a r t i a l f u l f i l m e n t of the requirements for an advanced degree at the University of B r i t i s h Columbia, I agree that the Library s h a l l make i t f r e e l y a v a i l a b l e f o r reference and study. I further agree that permission for extensive copying of t h i s thesis for scholarly purposes may be granted by the head of my department or by h i s or her representatives. It i s understood that copying or p u b l i c a t i o n of t h i s thesis for f i n a n c i a l gain s h a l l not be allowed without my written permission. Department of £c€CTK\CA<- . £T\)61 N€€^\A)k The University of B r i t i s h Columbia 2075 Wesbrook Place Vancouver, Canada V6T 1W5 Date j @ - OCT 7 Q ^ ABSTRACT T h i s t h e s i s i s c o n c e r n e d w i t h t h e d e s i g n , f a b r i c a t i o n , a n d t e s t i n g o f an o x i d e - i s o l a t e d c o m p l e m e n t a r y me t a 1-o x i d e-s i 1 i c on (ISO-CMOS) c o l o u r p a l e t t e i n t e g r a t e d c i r c u i t . C o n c e p t s i n com-p u t e r a i d e d d e s i g n (CAD) a r e d i s c u s s e d and t h e t o o l s r e q u i r e d f o r a c o m p l e t e CAD s y s t e m a r e d e t a i l e d . The f a b r i c a t i o n s t e p s , d e s i g n r u l e s , and e l e c t r i c a l p a r a m e t e r s o f t h e ISO-CMOS t e c h n o l o g y a r e d e s c r i b e d . The c o l o u r p a l e t t e f u n c t i o n and i t s a p p l i c a t i o n s i n g r a p h i c s d i s p l a y s y s t e m s a r e e x p l a i n e d . The r e m a i n d e r o f t h e t h e s i s d e t a i l s t h e d e s i g n p h i l o s o p h y , t h e d e s i g n p r o c e d u r e , t h e s i m u l a t i o n r e s u l t s , a n d t h e t e s t i n g p e r f o r m e d on t h e c o l o u r p a l e t t e c i r c u i t . i i TABLE OF CONTENTS T i t l e Page i A b s t r a c t i i T a b l e o f C o n t e n t s i i i L i s t o f T a b l e s v\ L i s t o f F i g u r e s v i i A c k n o w l e d g m e n t i x C h a p t e r 1: I n t r o d u c t i o n 1 M i c r o e l e c t r o n i c s O v e r v i e w 1 P r o j e c t O b j e c t i v e s and A c c o m p l i s h m e n t s . . . 4 C h a p t e r 2: R e v i e w o f IC D e s i g n C o n c e p t s and T o o l s 6 IC D e s i g n O v e r v i e w 6 V L S I C o m p l e x i t y Management 10 C l a s s e s o f Custom C i r c u i t s 14 CAD T o o l s 17 The Mead and Conway R e v o l u t i o n 27 C h a p t e r 3: S e l e c t i o n and J u s t i f i c a t i o n o f a 35 Custom C h i p P r o j e c t B a c k g r o u n d I n f o r m a t i o n 35 The C o l o u r P a l e t t e F u n c t i o n 36 C o l o u r P a l e t t e A p p l i c a t i o n s 37 The C o l o u r P a l e t t e M a r k e t P o t e n t i a l 37 The C u r r e n t MPR C o l o u r P a l e t t e I m p l e m e n t a t i o n 39 C o l o u r P a l e t t e S p e c i f i c a t i o n s 40 i i i C h a p t e r A: The ISO-CMOS T e c h n o l o g y 43 An O v e r v i e w o f CMOS 43 ISO-CMOS F a b r i c a t i o n and P a r a m e t r i c D a t a . . 50 ISO-CMOS D e s i g n C o n s t r a i n t s . 52 C h a p t e r 5: D e s i g n T o o l s , P r o c e d u r e s , and P h i l o s o p h y 59 The MPR CMOS D e s i g n S y s t e m (CDS) 59 The D e s i g n P r o c e d u r e 62 The D e s i g n P h i l o s o p h y 66 C h a p t e r 6: The C o l o u r P a l e t t e D e s i g n 68 The D e v e l o p m e n t S y n o p s i s , . 68 Mo d u l e P a r t i t i o n s and D i v i s i o n o f L a b o u r ... . 69 D u a l P o r t Memory 72 P i p e l i n e R e g i s t e r 84 D i g i t a l t o A n a l o g C o n v e r t e r 88 I n p u t Pad 92 P r o c e s s M o n i t o r 94 S i m u l a t i o n 94 G l o b a l R o u t i n g 95 C h a p t e r 7: R e s u l t s 96 F i r s t I t e r a t i o n R e s u l t s 96 Second I t e r a t i o n E n h a n c e m e n t s 102 Sec o n d I t e r a t i o n R e s u l t s 104 C h a p t e r 8: C o n c l u s i o n s 1 1 2 B i b l i o g r a p h y 114 i v A p p e n d i c e s 121 A. S c h e m a t i c s and B l o c k D i a g r a m s o f t h e M i c r o t e l . . 121 P a c i f i c R e s e a r c h L t d . D i s c r e t e Component C o l o u r P a l e t t e I m p l e m e n t a t i o n B. C o l o u r P a l e t t e S p e c i f i c a t i o n s 126 C. GTE ISO-CMOS P r o c e s s Sequence 138 D. The CDS L a y o u t L a n g u a g e 156 E. Top L e v e l C e l l S o u r c e L i s t i n g s 163 v L I S T OF TABLES I . ISO-CMOS C a p a c i t a n c e D a t a 52 I I . ISO-CMOS R e s i s t i v i t y D a t a 52 I I I . ISO-CMOS S i m p l i f i e d D e s i g n R u l e s 53 I V . Memory C o n t r o l and D a t a S i g n a l s 77 V. . Memory C e l l Bus L o a d i n g 81 V I . P i p e l i n e R e g i s t e r Bus L o a d i n g 85 V I I . C r i t i c a l P a t h S i m u l a t i o n R e s u l t s 95 V I I I . C h i p #1 Memory T e s t Summary 107 v i L I S T OF FIGURES 1. Number of Components p e r I n t e g r a t e d C i r c u i t 2 V e r s u s Time 2. The Four L e v e l s of C i r c u i t A b s t r a c t i o n 6 3. The Thr e e M a j o r D e s i g n A c t i v i t i e s 8 4. Programmable L o g i c A r r a y 16 5. CAD System O v e r v i e w 18 6. Example of C a l t e c h I n t e r m e d i a t e Form 30 7. C a l t e c h I n t e r m e d i a t e Form R e l a t i o n s h i p s 31 8. C o l o u r P a l e t t e B l o c k Diagram 41 9. Examples of Tru e Complementary CMOS C i r c u i t s 44 10. CMOS I n v e r t e r C h a r a c t e r i s t i c s 45 11. Example o f a Dynamic CMOS C i r c u i t 46 12. ISO-CMOS F a b r i c a t i o n Sequence 51 13. L a y o u t of an I n v e r t e r w i t h 2 E n a b l e S i g n a l s 54 14. CDS L a y o u t Program Example 61 15. S t i c k Diagram Example 65 16. C o l o u r P a l e t t e C e l l H i e r a r c h y 71 17. T r a d i t i o n a l S t a t i c CMOS Memory C e l l 75 18. Memory Bus S t r u c t u r e 78 19. Memory C e l l L o g i c S c h e m a t i c 80 20. Memory C e l l S t i c k Diagram 82 21. Memory C e l l L a y o u t 83 22. P i p e l i n e R e g i s t e r L o g i c S c h e m a t i c 85 23. P i p e l i n e R e g i s t e r S t i c k Diagram 86 24. P i p e l i n e R e g i s t e r L a y o u t 87 25. Dynamic DAC L a y o u t 90 v i i 26. S t a t i c DAC L a y o u t 91 27. I n p u t Pad L a y o u t 92 28. P r o c e s s M o n i t o r L a y o u t 93 29. The F i r s t I t e r a t i o n C h i p 96 30. S t a t i c F i r s t I t e r a t i o n T e s t C i r c u i t 97 31. P r o c e s s M o n i t o r I n v e r t e r C h a r a c t e r i s t i c s 98 32. Dynamic DAC T e s t C i r c u i t 99 33. Dynamic DAC Output w i t h S t a t i c I n p u t s 100 34. Dynamic DAC Output a t 1 MHz 100 35. The Second I t e r a t i o n C h i p 105 36. Second I t e r a t i o n T e s t C i r c u i t 106 v i i i ACKNOWLEDGMENT I w o u l d l i k e t o t h a n k my s u p e r v i s o r s , L a w r e n c e Young, P e t e r L a w r e n c e , and G. S c h r a c k f o r t h e i r w i s e c o u n s e l . P r o f e s s o r Young d e s e r v e s s p e c i a l n o t e f o r o r c h e s t r a t i n g d i a l o g u e w i t h i n d u s t r y a n d f o r p r o v i d i n g t h e means t o a t t e n d s e v e r a l c o u r s e s on i n t e -g r a t e d c i r c u i t d e s i g n . T h i s t h e s i s w o u l d n o t h a v e b e e n w r i t t e n w i t h o u t P r o f e s s o r Y o u ng's e n c o u r a g e m e n t . I w o u l d a l s o l i k e t o t h a n k my c o l l e a g u e , G o r d o n C h e n g , f o r h i s c o n t r i b u t i o n s on t h e c o l o u r p a l e t t e p r o j e c t . I e x t e n d my d e e p e s t g r a t i t u d e t o t h e p e o p l e a t M i c r o t e l P a c i f i c R e s e a r c h L t d . f o r t h e i r g e n e r o s i t y i n p r o v i d i n g t h e t o o l s n e c e s s a r y t o i m p l e m e n t t h e c o l o u r p a l e t t e p r o j e c t . I n p a r t i c u l a r I w o u l d l i k e t o t h a n k W a r r e n S n y d e r , M i k e P e j s k a r , M e l P h i l l i p s , P a u l T h i e l , and e s p e c i a l l y G e r h a r d S c h m i i n g . I w o u l d l i k e t o t h a n k A n a t e k E l e c t r o n i c s L t d . , t h e B r i t i s h C o l u m b i a I n s t i t u t e o f T e c h n o l o g y , t h e B r i t i s h C o l u m b i a T e l e p h o n e Company, G l e n a y r e E l e c t r o n i c s L t d . , and M i c r o t e l P a c i f i c R e s e a r c h L t d . f o r t h e i r c o n t r i b u t i o n s t o t h e B.C. E l e c t r o n i c s I n d u s t r y G r a d u a t e F e l l o w s h i p i n M i c r o e l e c t r o n i c s . T h i s f e l l o w s h i p made i t p o s s i b l e f o r me t o c o n t i n u e my s t u d i e s a n d p r o v i d e d f u n d s f o r s e v e r a l w o r t h w h i l e v i s i t s t o i n t e g r a t e d c i r c u i t d e s i g n and f a b r i -c a t i o n f a c i l i t i e s . I w o u l d a l s o l i k e t o t h a n k t h e N a t u r a l S c i e n c e s a n d E n g i -n e e r i n g R e s e a r c h C o u n c i l o f Canada f o r a w a r d i n g me a s c h o l a r s h i p . L a s t b u t n o t l e a s t I w o u l d l i k e t o t h a n k H e a t h e r S h a r k e y f o r h e r i n f i n i t e p a t i e n c e and s u p p o r t . i x CHAPTER 1: INTRODUCTION M i c r o e l e c t r o n i c s O v e r v i e w M i c r o e l e c t r o n i c s i s o n e o f man's g r e a t t e c h n o l o g i c a l a c h i e v e m e n t s . The I n d u s t r i a l R e v o l u t i o n l e v e r a g e d man's p h y s i c a l p o w e r , m i c r o e l e c t r o n i c s has l e v e r a g e d man's i n t e l l e c t u a l power. M i c r o e l e c t r o n i c s t e c h n o l o g y has had an e x h i l a r a t i n g h i s t o r y [WEBER 80, JONES 8 2 ] . B a r d e e n , B r a t t a i n , a n d S h o c k l e y i n v e n t e d t h e b i p o l a r t r a n s i s t o r i n 1947 w h i l e w o r k i n g a t B e l l L a b o r a -t o r i e s . The new d e v i c e was met w i t h s k e p t i c i s m b e c a u s e o f i t s po o r r e l i a b i l i t y and h i g h c o s t . These r e s e r v a t i o n s were r a p i d l y o v e r c o m e as t h e t e c h n o l o g y i m p r o v e d and b e c a u s e o f t h e t r a n s i s -t o r ' s i n h e r e n t l o w p o w e r a n d s m a l l s i z e . I n 1958 J a c k K i l b y o f T e x a s I n s t r u m e n t s r e a l i z e d t h a t a l l o f t h e c o m p o n e n t s n e c e s s a r y f o r an e l e c t r o n i c c i r c u i t c o u l d be made f r o m a s e m i c o n d u c t o r . He t h e n w e n t on t o d e v e l o p t h e f i r s t i n t e g r a t e d c i r c u i t ( a s i m p l e o s c i l l a t o r ) . The l e v e l o f s o p h i s t i c a t i o n r a p i d l y a c c e l e r a t e d as shown by F i g u r e 1. T h i s c u r v e s u p p o r t s t h e p r e d i c t i o n i n 1964 by Gordo n E. M o o r e , who was t h e n d i r e c t o r o f r e s e a r c h a t F a i r c h i l d , t h a t t h e number of c o m p o n e n t s p e r i n t e g r a t e d c i r c u i t w o u l d d o u b l e e v e r y y e a r . T o d a y , o n l y 36 y e a r s a f t e r t h e t r a n s i s t o r was i n v e n t e d , H e w l e t t P a c k a r d h a s s u c c e e d e d i n i n t e g r a t i n g 4 5 0 , 0 0 0 t r a n s i s t o r s on a s i n g l e s e m i c o n d u c t o r s u b s t r a t e [CANEPA 8 3 ] . 1 F i g u r e 1. Number of Components p e r I n t e g r a t e d C i r c u i t V e r s u s Time [NOYCE 77] An i n t e g r a t e d c i r c u i t ( I C ) h a s b e e n d e f i n e d [G LA SER 77] as "a g r o u p o f i n s e p a r a b l y c o n n e c t e d c i r c u i t e l e m e n t s f a b r i c a t e d i n p l a c e on a n d w i t h i n a s u b s t r a t e " . T h e r e a r e s e v e r a l i m p o r t a n t r e a s o n s f o r t h e w i d e s p r e a d u s e o f IC's i n e l e c t r o n i c s y s t e m s . I n t e g r a t e d c i r c u i t s h ave an e x t r e m e l y l o w c o s t p e r f u n c t i o n r a t i o b e c a u s e o f t h e b a t c h n a t u r e o f t h e i r f a b r i c a t i o n . A l t h o u g h many e x p e n s i v e s t e p s a r e r e q u i r e d t o f a b r i c a t e an I C , t h e s e s t e p s a r e a p p l i e d s i m u l t a n e o u s l y t o many s i l i c o n w a f e r s . E a c h w a f e r i n t u r n h a s many i d e n t i c a l I C ' s p a t t e r n e d on i t . The f a b r i c a t i o n c o s t s a r e t h e r e f o r e d i s t r i b u t e d o v e r t h o u s a n d s of IC's r e s u l t i n g i n a l o w p e r u n i t c o s t . 2 The c o s t p e r f u n c t i o n r a t i o h a s c o n t i n u a l l y d e c l i n e d a t a r a t e u n p r e c e d e n t e d by o t h e r m a n u f a c t u r e d g o o d s . F o r e x a m p l e , t h e c o s t p e r b i t o f m e mory i n 1973 was a b o u t 0.4 c e n t s a n d by 1 97 7 i t was down t o 0.1 c e n t s [NOYCE 7 7 ] . T o d a y t h e c o s t p e r b i t o f m e m ory i s o n l y a b o u t 0.005 c e n t s . I t c o s t s t h e m a n u f a c t u r e r l i t t l e m o r e t o f a b r i c a t e a c o m p l e x IC t h a n a s i m p l e IC p r o v i d e d t h a t t h e y i e l d ( p e r c e n t a g e o f d e f e c t - f r e e I C ' s p e r b a t c h ) c a n be k e p t r e a s o n a b l y h i g h . The s t e p s r e q u i r e d t o f a b r i c a t e a c o m p l e x IC a r e i d e n t i c a l t o t h o s e r e q u i r e d t o f a b r i c a t e a s i m p l e IC. I n t e g r a t e d c i r c u i t s a l s o r e d u c e s y s t e m s u p p o r t c o s t s . I C ' s consume l e s s s p a c e and power t h a n d i s c r e t e c o m p o n e n t s t h a t p e r -f o r m t h e same f u n c t i o n , t h e r e b y r e d u c i n g t h e c o s t of f l o o r s p a c e , m o u n t i n g r a c k s , p o w e r s u p p l i e s , and c o o l i n g f a n s . L a b o r c o s t s a r e r e d u c e d b e c a u s e t h e r e a r e f e w e r c o m p o n e n t s t o a s s e m b l e . F i n a l l y IC's i m p r o v e t h e s y s t e m r e l i a b i l i t y b e c a u s e t h e number of s o l d e r j o i n t s and o t h e r d e f e c t - p r o n e f a c t o r s a r e r e d u c e d . Now t h a t i t i s p o s s i b l e t o f a b r i c a t e v e r y l a r g e s c a l e i n t e -g r a t e d ( V L S I ) c i r c u i t s , w h i c h a r e u s u a l l y d e f i n e d t o c o n t a i n more t h a n 1 0 0 , 0 0 0 t r a n s i s t o r s , t h e e m p h a s i s h a s s h i f t e d t o t h e p r o b -l e m s a s s o c i a t e d w i t h d e s i g n i n g s u c h an IC. The c o m p o n e n t s a v a i l -a b l e f o r d e s i g n i n g a s i m p l e i n t e g r a t e d c i r c u i t a r e i d e n t i c a l t o t h o s e u s e d i n a V L S I c i r c u i t . T h e s e i n c l u d e t r a n s i s t o r s , w i r e s , r e s i s t o r s , and c a p a c i t o r s . The d i f f i c u l t y i n d e s i g n i n g V L S I c i r -c u i t s t h e r e f o r e a r i s e s n o t f r o m t h e c o m p l e x i t y o f t h e i n d i v i d u a l c o m p o n e n t s , b u t r a t h e r f r o m t h e v a s t number of c o m p o n e n t s u s e d . 3 One of t h e k e y d e s i g n p r o b l e m s i s i n t e r c o n n e c t i n g t h e compo-n e n t s on a V L S I c i r c u i t b e c a u s e t h e n u m b e r o f i n t e r c o n n e c t i o n s i n c r e a s e s f a s t e r t h a n t h e n u m b e r o f d e v i c e s [ S E Q U I N 8 1 ] . O t h e r p r o b l e m s i n c l u d e p r o v i n g t h e c o r r e c t n e s s o f a d e s i g n a n d m a i n -t a i n i n g d o c u m e n t a t i o n on a V L S I c i r c u i t . Much r e s e a r c h i s b e i n g done t o d e v e l o p b e t t e r c o m p u t e r - a i d e d d e s i g n (CAD) t o o l s t o s o l v e t h e s e a n d o t h e r d e s i g n p r o b l e m s [ F E U E R 8 3 ] . V L S I h a s a d v a n c e d a n d w i l l c o n t i n u e t o a d v a n c e o n l y a s new i d e a s e m e r g e i n c o m p u t e r - a i d e d d e s i g n . P r o j e c t O b j e c t i v e s and A c c o m p l i s h m e n t s The f i r s t o b j e c t i v e o f t h i s p r o j e c t was t o become f a m i l i a r w i t h c o m p u t e r - a i d e d d e s i g n t o o l s a n d c o n c e p t s . I t was d e c i d e d t h a t t h e b e s t way t o a c c o m p l i s h t h i s w o u l d be t o d e s i g n an a c t u a l i n t e g r a t e d c i r c u i t . I t was c l e a r l y d e s i r a b l e t o c h o o s e a c i r c u i t t h a t h a d some p r a c t i c a l a p p l i c a t i o n so t h a t t h e f u l l c y c l e o f s p e c i f i c a t i o n , d e s i g n , f a b r i c a t i o n , t e s t i n g , and i m p l e m e n t a t i o n c o u l d be o b s e r v e d . The c i r c u i t c h o s e n was a c o l o u r p a l e t t e w h i c h h a s many a p p l i c a t i o n s i n v i d e o c i r c u i t r y . I n p a r t i c u l a r t h e c i r c u i t i s t a r g e t e d f o r t h e M i c r o t e l P a c i f i c R e s e a r c h L t d . T e l i d o n s y s t e m . The s e c o n d o b j e c t i v e o f t h i s p r o j e c t was t o become a c q u a i n t e d w i t h a c u r r e n t s e m i c o n d u c t o r t e c h n o l o g y . F o r t u -n a t e l y we had t h e o p p o r t u n i t y t o work w i t h t h e p o p u l a r ISO-CMOS t e c h n o l o g y . The f i n a l o b j e c t i v e o f t h i s p r o j e c t was t o b e c o m e f a m i l i a r w i t h IC s i m u l a t i o n and t e s t i n g p r o b l e m s . 4 We s u c c e e d e d i n d e s i g n i n g a 4 by 4 b i t c o l o u r p a l e t t e p r o t o -t y p e i n t e g r a t e d c i r c u i t . The c i r c u i t was f a b r i c a t e d a n d t e s t r e s u l t s s how t h a t i t i s f u n c t i o n a l w i t h t h e e x c e p t i o n o f a f e w m i n o r d e s i g n e r r o r s . S e v e r a l t e s t c i r c u i t s were i n c l u d e d on t h e p r o t o t y p e c h i p t o f a c i l i t a t e t h e d e b u g g i n g p r o c e s s . T h e s e c i r -c u i t s t u r n e d o u t t o be w e l l w o r t h t h e e x t r a e f f o r t r e q u i r e d t o i m p l e m e n t t h e m . A p r o c e s s m o n i t o r was d e s i g n e d a n d i n c l u d e d on t h e c h i p f o r e v a l u a t i n g t h e f a b r i c a t i o n p r o c e s s . U s i n g k n o w l e d g e g a i n e d f r o m t h e p r o t o t y p e c i r c u i t t h e c o l o u r p a l e t t e was r e d e s i g n e d i n t o i t s f u l l 12 by 16 b i t c o n f i g u r a t i o n . The c i r c u i t c o n t a i n s a b o u t 6 0 0 0 t r a n s i s t o r s a n d i s 4 0 7 0 x 6 3 9 8 m i c r o n s i n s i z e . C r i t i c a l p a t h s on t h e c i r c u i t were s i m u l a t e d t o e s t i m a t e p e r f o r m a n c e . A new s t a t i c d i g i t a l t o a n a l o g c o n v e r t e r (DAC) was d e s i g n e d a n d i n c l u d e d on t h e c h i p i n a d d i t i o n t o t h e d y n a m i c DAC u s e d on t h e p r o t o t y p e . The f u l l s i z e c o l o u r p a l e t t e has been f a b r i c a t e d and t e s t r e s u l t s show t h a t a l l c i r c u i t mod-u l e s a r e f u n c t i o n a l . P r o c e s s i n g p r o b l e m s h o w e v e r a p p e a r t o be t h e c a u s e o f o u r i n a b i l i t y t o l o c a t e a c h i p on w h i c h a l l m o d u l e s o p e r a t e s i m u l t a n e o u s l y . 5 CHAPTER 2: REVIEW OF IC DESIGN CONCEPTS AND TOOLS IC D e s i g n O v e r v i e w One of t h e k e y d i f f e r e n c e s b e t w e e n i n t e g r a t e d c i r c u i t d e s i g n a n d t h e d e s i g n o f o t h e r e l e c t r i c a l s y s t e m s i s t h a t IC d e s i g n i n v o l v e s a g r e a t e r number of c i r c u i t r e p r e s e n t a t i o n s . I n t e g r a t e d c i r c u i t d e s i g n c a n be v i e w e d as an i t e r a t i v e m a p p i n g b e t w e e n f o u r l e v e l s o f c i r c u i t a b s t r a c t i o n ( F i g u r e 2 ) : f u n c t i o n a l , l o g i c a l , e l e c t r i c a l , and p h y s i c a l [NEWTON 8 1 ] . FUNCTIONAL A+B=C LOGICAL 5v ELECTRICAL PHYSICAL C F i g u r e 2. The F o u r L e v e l s o f C i r c u i t A b s t r a c t i o n 6 The f u n c t i o n a l l e v e l d i s p l a y s t h e I C ' s a r c h i t e c t u r e a n d s p e c i f i e s i t s m a c r o s c o p i c p r o p e r t i e s s u c h a s s p e e d , s i z e , a n d power c o n s u m p t i o n . A b l a c k box d i a g r a m o r h i g h l e v e l l a n g u a g e i s o f t e n u s e d t o p r e s e n t t h e f u n c t i o n a l i n f o r m a t i o n . S u p p r e s s i o n of d e t a i l p e r m i t s t h e d e s i g n e r t o e x p e r i m e n t w i t h d i f f e r e n t a r c h i -t e c t u r e s and a l g o r i t h m s . The l o g i c a l l e v e l e x p r e s s e s e a c h o f t h e m o d u l e s d e f i n e d a t t h e f u n c t i o n a l l e v e l i n t e r m s o f l o g i c s y m b o l s o r o t h e r a b s t r a c -t i o n s u c h as r e g i s t e r t r a n s f e r n o t a t i o n . I t o f t e n b e c o m e s c l e a r a t t h i s s t a g e t h a t t h e f u n c t i o n a l r e p r e s e n t a t i o n n e e d s f u r t h e r s u b d i v i s i o n o r r e o r g a n i z a t i o n t o a c h i e v e an e f f i c i e n t d e s i g n . F o r e x a m p l e , a n e x c e s s i v e n u m b e r o f c o m m u n i c a t i o n l i n e s may be t h e r e s u l t o f a p o o r c h o i c e o f m o d u l e b o u n d a r i e s . The e l e c t r i c a l r e p r e s e n t a t i o n e x p r e s s e s t h e l o g i c a l l e v e l i n t e r m s o f t h e c i r c u i t c o m p o n e n t s : t r a n s i s t o r s , r e s i s t o r s , c a p a c i -t o r s , a n d w i r e s . The l o g i c a l l e v e l o f t e n h a s t o be m o d i f i e d t o i m p r o v e t h e c i r c u i t p e r f o r m a n c e . F o r e x a m p l e , NOR-NOR l o g i c i s f a s t e r t h a n NAND-NAND l o g i c b e c a u s e o f t h e way t h a t t h e s e f u n c -t i o n s a r e i m p l e m e n t e d w i t h MOS d e v i c e s . E x c e s s i v e l o a d i n g o f t r a n s i s t o r s may a l s o f o r c e a r e v i s i o n a t t h e l o g i c a l l e v e l . The p h y s i c a l l e v e l c o n t a i n s t h e g e o m e t r i c mask d a t a t h a t i m p l e m e n t s t h e e l e c t r i c a l l e v e l c o m p o n e n t s . The u n p l e a s a n t r e a l i -t i e s o f l a y o u t , s u c h as t h e r e s t r i c t i v e t w o - d i m e n s i o n a l n a t u r e o f IC ' s , o f t e n c a u s e p r o b l e m s . F o r e x a m p l e , i t may p r o v e i m p o s s i b l e 7 t o r o u t e an i n t e r c o n n e c t i o n a s s p e c i f i e d a t h i g h e r l e v e l s . IC d e s i g n c l e a r l y t e n d s t o be an i t e r a t i v e p r o c e s s . T h e r e a r e t h r e e m a j o r d e s i g n a c t i v i t i e s r e q u i r e d a t e a c h l e v e l o f a b s t r a c t i o n : s y n t h e s i s , e v a l u a t i o n , a n d v a l i d a t i o n [ L A T T I N 8 1 ] . F i g u r e 3 shows how t h e s e a c t i v i t i e s i n t e r a c t . ELECTRICAL SCHEMATIC SYNTHESIS VALIDATION MASK LAYOUT F i g u r e 3. The T h r e e M a j o r D e s i g n A c t i v i t i e s S y n t h e s i s i s t h e m a p p i n g o f a d e s c r i p t i o n a t one l e v e l i n t o a d e s c r i p t i o n a t t h e n e x t l o w e r l e v e l . S y n t h e s i s i s a n o n - t r i v i a l t a s k b e c a u s e o f t h e w i d e l y d i f f e r i n g d e s c r i p t i o n s . F o r e x a m p l e , t h e p h y s i c a l l e v e l d e s c r i p t i o n t e n d s t o be g r a p h i c a l i n n a t u r e w h e r e a s t h e f u n c t i o n a l d e s c r i p t i o n t e n d s t o be t e x t u a l . 8 E v a l u a t i o n d e t e r m i n e s i f t h e d e s c r i p t i o n m eets t h e s p e c i f i -c a t i o n s and c o n s t r a i n t s o f t h e p a r t i c u l a r l e v e l . At t h e p h y s i c a l l e v e l , f o r e x a m p l e , one i s i n t e r e s t e d i n v e r i f y i n g t h a t t h e r e a r e no g e o m e t r i c d e s i g n r u l e v i o l a t i o n s and t h a t c a p a c i t i v e l o a d i n g does n o t e x c e s s i v e l y d e g r a d e p e r f o r m a n c e . V a l i d a t i o n i s t h e p r o c e s s o f v e r i f y i n g t h a t a p a r t i c u l a r d e s c r i p t i o n i m p l e m e n t s t h e h i g h e r l e v e l d e s c r i p t i o n s c o r r e c t l y . V a l i d a t i o n c a n be t h o u g h t o f a s t h e i n v e r s e o f t h e s y n t h e s i s t r a n s f o r m a t i o n . F o r e x a m p l e , g i v e n t h e e l e c t r i c a l d e s c r i p t i o n e x t r a c t t h e l o g i c and c ompare a g a i n s t t h e l o g i c a l d e s c r i p t i o n . A l l o f t h e r i c h v a r i e t y o f d e s i g n t e c h n i q u e s a n d m e t h o d -o l o g i e s t h a t h ave been p r o p o s e d o r a r e i n use c a n be f i t t e d i n t o t h e a bove s c e n a r i o of t h r e e a c t i v i t i e s i n e a c h of f o u r l e v e l s of d e s c r i p t i o n . T e c h n i q u e s and m e t h o d o l o g i e s c a n be d i s t i n g u i s h e d by t h e d e s c r i p t i o n s t h e y u s e , and by t h e i r t o o l s ( o r a b s e n c e o f them) t h a t p e r f o r m t h e a c t i v i t i e s . The f i r s t i n t e g r a t e d c i r c u i t s were d e s i g n e d w i t h o u t a i d o f c o m p u t e r s . E v a l u a t i o n o f t h e l o g i c was u s u a l l y p e r f o r m e d by b r e a d - b o a r d i n g t h e c i r c u i t w i t h d i s c r e t e c o m p o n e n t s . S y n t h e s i s of t h e p h y s i c a l l e v e l i n v o l v e d d r a w i n g t h e c i r c u i t s h a p e s o n t o r u b y l i t h ( p l a s t i c ) w h i c h was t h e n p h o t o g r a p h i c a l l y r e d u c e d t o p r o d u c e t h e masks. A p a i n s t a k i n g v i s u a l c h e c k c o n s t i t u t e d v a l i d a -t i o n o f t h e masks. 9 C o m p u t e r s were f i r s t u s e d t o s i m u l a t e d i s c r e t e c i r c u i t s b u t by t h e e a r l y 1970's i n t e g r a t e d c i r c u i t s w e r e a l s o b e i n g s i m u -l a t e d . The n e x t a p p l i c a t i o n of CAD was t o a s s i s t i n t h e s y n t h e s i s of t h e p h y s i c a l l e v e l [AVENIER 8 3 ] . D e s i g n s were (and o f t e n s t i l l a r e ) h a n d d r a w n on m y l a r p l a s t i c a n d t h e n d i g i t i z e d i n t o a d a t a -b a s e . I n t e r a c t i v e g r a p h i c s c a n t h e n be u s e d t o e d i t t h e l a y o u t . When c o m p l e t e , a p a t t e r n g e n e r a t o r p r o d u c e s t h e m a s k s f r o m t h e g r a p h i c s d a t a - b a s e . F i r s t g e n e r a t i o n CAD s y s t e m s , s u c h a s t h e C a l m a GDS I s y s t e m , w e r e e s s e n t i a l l y c o m p u t e r i z e d d r a f t i n g m a c h i n e s as d e s c r i b e d a b o v e. T o o l s t o a s s i s t w i t h v a l i d a t i o n and e v a l u a t i o n ( w i t h t h e e x c e p t i o n of s i m u l a t o r s ) w e re n o n - e x i s t e n t u n t i l l a t e r i n t h e 1 9 7 0 ' s . D e s i g n r u l e c h e c k e r s (DRC) f o r e v a l u -a t i n g t h e mask l a y o u t w e r e t h e n e x t t o o l s t o b e c o m e p r e v a l e n t . The DRC was f o l l o w e d by e l e c t r i c r u l e c h e c k e r s (ERC) and c i r c u i t e x t r a c t o r s f o r v a l i d a t i o n . An o v e r v i e w o f a c o m p l e t e CAD s y s t e m and a more d e t a i l e d l o o k a t e a c h t o o l w i l l be p r e s e n t e d l a t e r i n t h i s c h a p t e r . V L S I C o m p l e x i t y Management D e s i g n o f a V L S I c i r c u i t c a n t a k e s e v e r a l m a n - y e a r s a n d r e q u i r e s e f f i c i e n t c o o r d i n a t i o n b e t w e e n d e s i g n t e a m m e m b e r s . L o c a t i n g a n e r r o r i s d i f f i c u l t b e c a u s e o f t h e c o m p l e x i t y , a n d c o r r e c t i n g i t c a n be v e r y e x p e n s i v e b e c a u s e o f t h e c o s t o f mask m a k i n g a n d f a b r i c a t i o n . V L S I d e s i g n t h e r e f o r e r e q u i r e s t h e e x p l o i t a t i o n o f r e g u l a r i t y and h i e r a r c h y . 10 A r e g u l a r i t y f a c t o r h a s b e e n d e f i n e d as t h e r a t i o o f t h e n u m b e r o f d e v i c e s d r a w n t o t h e t o t a l n u m b e r o f d e v i c e s on t h e c i r c u i t [ L A T T I N 7 9 ] . R e a d o n l y memory (ROM) a n d p r o g r a m m a b l e l o g i c a r r a y s (PLA) a r e e x a m p l e s o f c i r c u i t s w i t h h i g h r e g u l a r i t y . T h e r e a r e s e v e r a l i m p o r t a n t a d v a n t a g e s o f r e g u l a r i t y [ F A I R B A I R N 8 2 ] . R e g u l a r s t r u c t u r e s c a n o f t e n be g e n e r a t e d by s o f t w a r e i f t h e i n t e r c o n n e c t i o n s b e t w e e n c e l l s a r e w e l l d e f i n e d . S o f t w a r e f o r g e n e r a t i n g PLA's i s c o m m o n p l a c e [LANG 7 9 ] . The d e s i g n e r need o n l y s p e c i f y a f e w p a r a m e t e r s s u c h as t h e n u m b e r o f i n p u t s , o u t p u t s , and m i n t e r m s , and p r o v i d e a b i t map f o r p r o g r a m m i n g t h e AND and OR p l a n e s o f t h e PLA [ G L A S S E R 8 0 ] . R e g u l a r i t y r e d u c e s t h e com-p l e x i t y o f a c h i p and f a c i l i t a t e s t e s t i n g by r e d u c i n g t h e number o f u n i q u e e l e m e n t s . The new e m p h a s i s on r e g u l a r i t y becomes c l e a r w hen one c o m p a r e s s t a t e - o f - t h e - a r t c i r c u i t s s u c h a s t h e I n t e l i A P X 432 m i c r o p r o c e s s o r [ L A T T I N 81] w i t h e a r l i e r c i r c u i t s s u c h as t h e I n t e l 8080 m i c r o p r o c e s s o r [INTEL 7 9 ] . H i e r a r c h y h a s b e e n d e f i n e d as " t h e a b i l i t y t o v i e w a n d m a n i p u l a t e a d e s i g n d a t a - b a s e a t v a r i o u s l e v e l s o f a b s t r a c t i o n " [ J E N N E 8 2 ] . The i d e a i s t o d i v i d e a n d c o n q u e r a c i r c u i t i n t o s m a l l e r m a n a g e a b l e m o d u l e s w h i l e a t t h e same t i m e m a i n t a i n i n g enough i n f o r m a t i o n t o r e c o n s t r u c t t h e w h o l e . Much has been w r i t -t e n on t h e a d v a n t a g e s o f h i e r a r c h i c a l d e s i g n [ T R I M B E R G E R 8 1 , NIESSEN 8 3 ] . E x p l o i t a t i o n of h i e r a r c h y r e d u c e s d e s i g n t i m e be-c a u s e t h e c i r c u i t c a n be a s s e m b l e d f r o m a l i b r a r y o f p r e v i o u s l y d e f i n e d c e l l s . The p r o b a b i l i t y o f a c h i e v i n g a c o r r e c t d e s i g n s h o u l d i n c r e a s e b e c a u s e t h e a m o u n t o f d e t a i l t h a t t h e d e s i g n e r m u s t c o p e w i t h a t a n y g i v e n t i m e i s r e d u c e d a n d b e c a u s e t h e 11 l i b r a r y c e l l s a r e p r e s u m a b l y e r r o r f r e e . H i e r a r c h i c a l d e s i g n e n c o u r a g e s l o c a l i z e d c o m m u n i c a t i o n b e t w e e n c e l l s , t h u s a v o i d i n g t h e " s p a g h e t t i l a y o u t s " o f t h e p a s t . I n t h e o r y , h i e r a r c h i c a l d e s i g n s h o u l d i n c r e a s e t h e s p e e d o f some CAD t o o l s . F o r e x a m p l e , once a l o w e r l e v e l m o d u l e has been c h e c k e d f o r d e s i g n r u l e v i o l a -t i o n s i t need n o t be r e c h e c k e d e a c h t i m e i t i s u s e d [WHITNEY 8 1 ] . H i e r a r c h i c a l d e s i g n may r e s u l t i n a s m a l l e r d a t a - b a s e b e c a u s e o n l y one i n s t a n c e o f e a c h m o d u l e must be s t o r e d . T h e r e a r e , h o w e v e r , s e v e r a l p o t e n t i a l p r o b l e m s w i t h h i e r -a r c h i c a l d e s i g n . W o r k i n g f r o m a f i x e d l i b r a r y o f m o d u l e s may r e s u l t i n p o o r e r p e r f o r m a n c e and i n c r e a s e d c h i p a r e a b e c a u s e t h e m o d u l e s a r e n o t c u s t o m i z e d t o t h e a p p l i c a t i o n . G i v e n a g o o d l i b r a r y t h i s r e s t r i c t i o n may be no w o r s e t h a n t h a t i m p o s e d on a p r i n t e d c i r c u i t b o a r d (PCB) d e s i g n u s i n g s t a n d a r d TTL c o m p o n e n t s . Some w o r k e r s s u g g e s t t h a t p r o p o n e n t s o f h i e r a r c h i c a l d e s i g n have n e v e r a t t e m p t e d t o i m p l e m e n t s u c h a CAD s y s t e m [SOUKUP 8 1 ] . S e v e r a l s e r i o u s i m p l e m e n t a t i o n p r o b l e m s r e l a t i n g t o d a t a - b a s e management and m o d u l e b o u n d a r y c o n d i t i o n s a r e p o i n t e d o u t . T h e r e a r e v e r y s t r o n g a n a l o g i e s b e t w e e n s o f t w a r e e n g i n e e r i n g and V L S I c o m p l e x i t y management [SEQUIN 8 3 ] . C o n s i d e r t h e h i s t o r y o f s o f t w a r e . I n t h e b e g i n n i n g memory was e x p e n s i v e and t h e h a r d -w a r e p e r f o r m a n c e was p o o r . P r o g r a m m e r s t h e r e f o r e w r o t e i n l o w l e v e l l a n g u a g e s s u c h as a s s e m b l e r t o e x t r a c t t h e maximum p e r f o r -mance w i t h t h e l e a s t amount o f memory. P r o g r a m m e r e f f i c i e n c y was n o t a p r i o r i t y . As memory became c h e a p e r and h a r d w a r e p e r f o r m a n c e i m p r o v e d , m o r e p o w e r f u l b u t u n s t r u c t u r e d l a n g u a g e s s u c h a s 12 F o r t r a n b e c a m e p r e v a l e n t , a n d i t t h e n b e c a m e p o s s i b l e t o w r i t e v e r y l a r g e and c o m p l e x p r o g r a m s . P r o g r a m m e r e f f i c i e n c y and s o f t -w a r e r e l i a b i l i t y f e l l o f f b e c a u s e o f t h e d i f f i c u l t y i n m a i n t a i n -i n g and m o d i f y i n g s u c h l a r g e p r o g r a m s . New s o f t w a r e c o n c e p t s were s o u g h t and t h e r e s u l t has been t h e boon i n s t r u c t u r e d p r o g r a m m i n g a n d s u p p o r t i n g l a n g u a g e s s u c h a s P a s c a l , C, a n d A d a . S t r u c t u r e d s o f t w a r e i m p r o v e s p r o d u c t i v i t y o f t h e p r o g r a m m e r and r e l i a b i l i t y o f t h e p r o g r a m a t t h e e x p e n s e o f p e r f o r m a n c e and memory. Now c o n s i d e r V L S I c o m p l e x i t y m a n a g e m e n t . I n t h e b e g i n n i n g l o w f a b r i c a t i o n y i e l d s and p o o r d e v i c e d e n s i t y meant t h a t o n l y a f e w f u n c t i o n s c o u l d be i n t e g r a t e d on a s i n g l e c h i p . As a r e s u l t d e s i g n s t e n d e d t o be f l a t ( n o h i e r a r c h y ) a n d h i g h l y c u s t o m i z e d ( p o o r r e g u l a r i t y ) t o a c h i e v e t h e maximum p e r f o r m a n c e i n a g i v e n c h i p a r e a . F a b r i c a t i o n y i e l d and d e v i c e d e n s i t y have s i n c e g r e a t -l y i m p r o v e d r e s u l t i n g i n V L S I c i r c u i t s . D e s i g n e r p r o d u c t i v i t y and a p r i o r i c i r c u i t v e r i f i c a t i o n a r e now v e r y s t r o n g i s s u e s . R e g u l a r h i e r a r c h i c a l d e s i g n , t h e s t r u c t u r e d p r o g r a m m i n g a n a l o g y , has been p r o p o s e d a s a s o l u t i o n . N o t e h o w e v e r t h a t a V L S I c i r c u i t s t i l l c o n t a i n s t h e same b a s i c c o m p o n e n t s t h a t were p r e s e n t on t h e f i r s t i n t e g r a t e d c i r c u i t , j u s t as t h e c o m p u t e r s t i l l e x e c u t e s t h e same b a s i c i n s t r u c t i o n s t h a t i t d i d when f i r s t i n v e n t e d . N o t h i n g f u n d a m e n t a l has c h a n g e d e x c e p t t h e c o m p l e x i t y . 13 C l a s s e s o f Custom C i r c u i t s W i t h i n t h e f r a m e w o r k o f IC d e s i g n p r e s e n t e d e a r l i e r , t h e r e a r e t h r e e c l a s s e s o f c u s t o m c i r c u i t s : p r o g r a m m a b l e a r r a y s , s t a n -d a r d c e l l s , and f u l l y c u s t o m c i r c u i t s . E a c h c l a s s o f c i r c u i t s c a n be d e s i g n e d w i t h a v a r i e t y o f CAD t o o l s a n d m e t h o d o l o g i e s , a n d e a c h c l a s s i s b e s t s u i t e d t o c e r t a i n a p p l i c a t i o n s . I t s h o u l d be e m p h a s i z e d t h a t o f t e n a l l t h r e e c l a s s e s o f c i r c u i t s a r e u s e d on t h e same i n t e g r a t e d c i r c u i t . A p r o g r a m m a b l e a r r a y c a n be d e f i n e d a s a n a r r a y o f c o m p o n e n t s i n f i x e d l o c a t i o n s w h o s e f u n c t i o n i s d e t e r m i n e d by c u s t o m i z i n g t h e g e o m e t r y on s p e c i f i c m asks. The common t y p e s o f p r o g r a m m a b l e a r r a y s a r e g a t e a r r a y s , p r o g r a m m a b l e l o g i c a r r a y s ( P L A ) , s t o r a g e l o g i c a r r a y s ( S L A ) , and r e a d o n l y m e m o r i e s (ROM). G a t e a r r a y s a r e k n o w n by a v a r i e t y o f names s u c h as m a s t e r s l i c e o r u n c o m m i t t e d l o g i c a r r a y s ( U L A ) , a n d a r e a v a i l a b l e i n s e v e r a l t e c h n o l o g i e s s u c h as CMOS, b i p o l a r , and i n t e g r a t e d i n j e c -t i o n l o g i c [NEWTON 8 1 , R O F F E L S E N 8 1 , TRIMBERGER 8 2 ] . A g a t e a r r a y i s a n a r r a y o f t r a n s i s t o r s o r g a t e s w i t h p e r i o d i c s p a c e s o r c h a n n e l s p r o v i d e d f o r w i r i n g . The c i r c u i t f u n c t i o n i s d e t e r m i n e d by c u s t o m i z i n g t h e f i n a l l a y e r ( o r two) o f i n t e r c o n n e c t i o n m e t a l . G a t e a r r a y b l a n k s c a n be p r o d u c e d i n v o l u m e a n d s t o c k p i l e d b e -c a u s e t h e f a b r i c a t i o n s e q u e n c e i s s t a n d a r d up u n t i l t h e f i n a l m a s k s . As a r e s u l t g a t e a r r a y s p r o v i d e t h e l e a s t e x p e n s i v e a n d f a s t e s t method o f o b t a i n i n g c u s t o m p a r t s . Gate a r r a y u s e r s d e s i g n a t t h e l o g i c l e v e l a n d t h e r e f o r e a v o i d t h e n e c e s s i t y o f u n d e r -14 s t a n d i n g t h e f a b r i c a t i o n p r o c e s s . The h i g h l y r e g u l a r s t r u c t u r e p e r m i t s s u c c e s s f u l use of p l a c e m e n t and r o u t i n g t o o l s f o r l a y o u t o f t h e i n t e r c o n n e c t i o n masks [WERNER 8 1 ] . The main d i s a d v a n t a g e o f g a t e a r r a y s i s a l o w c i r c u i t d e n s i t y b e c a u s e i t i s r a r e t o u t i l i z e 100 p e r c e n t o f t h e g a t e s a v a i l a b l e . T h e r e h a s a l s o b e e n some c o n c e r n e x p r e s s e d a b o u t t h e l a c k o f s t a n d a r d i z a t i o n and s e c o n d s o u r c e s o f g a t e a r r a y s [SCHOFIELD 8 1 ] . Prog r a m m a b l e l o g i c a r r a y s (PLA) p r o v i d e a means of mapping i r r e g u l a r b o o l e a n f u n c t i o n s o n t o a r e g u l a r c i r c u i t s t r u c t u r e [WEINBERGER 67, FLEISHER 75, COOK 7 9 ] . PLA's a r e most o f t e n used as " g l u e c i r c u i t r y " o r as f i n i t e s t a t e m a c h i n e s f o r c o n t r o l o f o t h e r c i r c u i t b l o c k s . A PLA c o n t a i n s two a r r a y s of t r a n s i s t o r s as shown i n F i g u r e 4, and p e r f o r m s a sum o f p r o d u c t s f u n c t i o n . The f i r s t a r r a y i s c a l l e d t h e AND p l a n e a n d i t f o r m s t h e r e q u i r e d p r o d u c t t e r m s f r o m the i n p u t s . The s e c o n d a r r a y i s c a l l e d the OR p l a n e i t f o r m s t h e d e s i r e d sum o f p r o d u c t s f o r o u t p u t . PLA's r e q u i r e no i n t e r n a l r o u t i n g and t h e i r speed and d e n s i t y a r e good. As s t a t e d e a r l i e r i n t h i s c h a p t e r PLA's c a n be g e n e r a t e d a u t o m a -t i c a l l y by s o f t w a r e [LANG 79]. S t r u c t u r e d l o g i c a r r a y s (SLA) a r e a r e l a t i v e l y new a p p r o a c h t o p r o g r a m m a b l e a r r a y d e s i g n [ P A T I L 79, SMITH 8 2 ] . The SLA i s s i m i l a r to the PLA e x c e p t t h a t s t o r a g e e l e m e n t s ( f l i p - f l o p s ) a r e d i s t r i b u t e d t h r o u g h o u t the a r r a y . A d v a n t a g e s i n c l u d e b e t t e r u t i l -i z a t i o n o f t h e PLA's g a t e s and h i g h e r f u n c t i o n a l i t y . D i s a d -v a n t a g e s i n c l u d e poor d e n s i t y and a l a c k o f d e s i g n a i d s . I n d u s t r y i s j u s t b e g i n n i n g t o u s e t h e SLA. I n t e l u s e s an SLA on t h e i A P X 15 432 c o m p u t e r [ B A Y L I S S 81] and B o e i n g has done an e v a l u a t i o n w i t h f a v o r a b l e r e s u l t s [GOATES 8 2 ] . V D D £ 1 A N D plane > OR plane V D D ( K M ' iH - 1 -* •iH - 1-* "«4 2,' |f - Phase 2 Phase 1 -z-, z, F i g u r e 4. P r o g r a m m a b l e L o g i c A r r a y The d e s i g n o f IC's w i t h s t a n d a r d c e l l s i s a n a l o g o u s t o t h e d e s i g n o f PC b o a r d s w i t h TTL c i r c u i t s . The d e s i g n e r i s p r o v i d e d w i t h a l i b r a r y o f s t a n d a r d f u n c t i o n s a n d t h e r e f o r e i s d i v o r c e d f r o m many of t h e l a y o u t and f a b r i c a t i o n d e t a i l s . The m a j o r i t y o f h i s e f f o r t I s s p e n t i n t e r c o n n e c t i n g t h e m o d u l e s . S t a n d a r d c e l l s p r o v i d e a good c o m p r o m i s e b e t w e e n t h e f u l l y c u s t o m a p p r o a c h and g a t e a r r a y s . S a v i n g s a r e a c h i e v e d i n t h e d e s i g n c y c l e b e c a u s e of t h e p r e d e s i g n e d m o d u l e s h o w e v e r a l l o f t h e masks must be c u s t o m -i z e d a n d t h e r e f o r e t h e f a b r i c a t i o n s a v i n g s a c h i e v e d by g a t e a r r a y s a r e n o t p o s s i b l e . S t a n d a r d c e l l l i b r a r i e s and d e s i g n t o o l s v a r y g r e a t l y . Some s y s t e m s f i x t h e c e l l p i t c h i n one d i m e n s i o n 16 o n l y w h e r e a s o t h e r s f i x b o t h d i m e n s i o n s . W i r i n g i s s o m e t i m e s c o n f i n e d t o p r e d e f i n e d c h a n n e l s and o t h e r t i m e s t h e d e s i g n e r has c o m p l e t e w i r i n g f r e e d o m . One of t h e p r o b l e m s w i t h s t a n d a r d c e l l d e s i g n i s t h a t t o a c h i e v e g o o d d e n s i t y one r e q u i r e s a l a r g e l i b r a r y w i t h m u l t i p l e c e l l i m p l e m e n t a t i o n s o f e a c h f u n c t i o n . F o r e x a m p l e , e f f i c i e n t r o u t i n g i n a v a r i e t y o f s i t u a t i o n s may r e q u i r e s e v e r a l c h o i c e s o f c e l l i n p u t a n d o u t p u t l o c a t i o n s . A n o t h e r d i s a d v a n t a g e i s t h a t a s t a n d a r d c e l l l i b r a r y c a n be v e r y e x p e n -s i v e t o p u r c h a s e . S t a n d a r d c e l l s a r e w i d e l y u s e d by i n d u s t r y [HAYDAMACK 8 1 ] . F u l l y c u s t o m d e s i g n i s c o n s t r a i n e d o n l y by t h e d e s i g n r u l e s and t h e t a l e n t s o f t h e d e s i g n e r . The a d v a n t a g e s a r e h i g h d e n s i t y a n d h i g h p e r f o r m a n c e . The d i s a d v a n t a g e s o f c o u r s e a r e t h e h i g h c o s t o f d e s i g n and d e b u g g i n g . F u l l y c u s t o m d e s i g n i s u s u a l l y t h e a p p r o a c h t a k e n f o r h i g h v o l u m e c i r c u i t s t h a t c a n make t h e i n -c r e a s e d d e n s i t y p r o f i t a b l e . R e f e r r i n g b a c k t o t h e e a r l i e r s o f t -w a r e a n a l o g y , f u l l y c u s t o m d e s i g n i s e q u i v a l e n t t o a s s e m b l y l a n g u a g e p r o g r a m m i n g . CAD T o o l s An o v e r v i e w o f a c o m p l e t e CAD s y s t e m i s s h o w n i n F i g u r e 5. A d i s c u s s i o n o f e a c h t o o l i n d e t a i l i s a t h e s i s u n t o i t s e l f , t h e r e f o r e t h e f u n c t i o n s a n d f e a t u r e s o f t h e t o o l s w i l l o n l y be summari z e d . 17 FUNCTIONAL LOGICAL ELECTRICAL PHYSICAL < siliconN compiler )~ SPEC —^ ^-]_/" functional V . \,f logic "V tfelectrical V_ ^/algorithmic ^"l simulator p "^simulator ^simulator J~ ^\ layout J <Interactive\_ graphics J digitizer ^—5 Kplacement & \\ routing ) ' jf design rule y checker <electric rule/ checker ( circuit A/ extractor VCHIP >r  <testability\_ analysis J Figure 5. CAD System Overview 18 Common t o o l s a v a i l a b l e f o r u s e a t t h e s y n t h e s i s s t a g e o f d e s i g n i n c l u d e d i g i t i z e r s , i n t e r a c t i v e g r a p h i c s e d i t o r s , a l g o r -i t h m i c l a y o u t p r o g r a m s , p l a c e m e n t and r o u t i n g t o o l s , and t h e s i l i c o n c o m p i l e r . S y n t h e s i s t o o l s have t r a d i t i o n a l l y c o n c e n t r a t -ed on l a y o u t o f t h e p h y s i c a l l e v e l o f r e p r e s e n t a t i o n ( i . e . t h e m a s k s ) , h o w e v e r , t h e s i l i c o n c o m p i l e r i s a r e c e n t e x c e p t i o n t o t h i s r u l e . D i g i t i z e r s a r e u s e d t o e n t e r t h e c o o r d i n a t e s o f v e r t i c e s d i r e c t l y f r o m an e n l a r g e d h a n d - d r a w i n g o f t h e m a s k s . A l t h o u g h t h i s m e t h o d i s p r i m i t i v e c o m p a r e d t o i n t e r a c t i v e g r a p h i c s d a t a e n t r y , i t i s s t i l l c o m m o n l y u s e d [NEWTON 81, AVENIER 8 3 ] . The main r e a s o n f o r t h i s i s t h a t t h e r e a r e u s u a l l y more IC d e s i g n e r s t h a n t h e r e a r e g r a p h i c s work s t a t i o n s and t h e r e f o r e t h e s t a t i o n s c a n n o t be t i e d up f o r b u l k d a t a e n t r y . I n t e r a c t i v e g r a p h i c s i s r e s e r v e d f o r e d i t i n g t h e masks a f t e r t h e y h a v e b e e n e n t e r e d v i a a d i g i t i z e r . Many d e s i g n e r s a l s o seem to p r e f e r d o i n g t h e i r i n i t i a l l a y o u t s on p a p e r . I n t e r a c t i v e g r a p h i c s e d i t o r s a r e a v a i l a b l e f r o m a v a r i e t y of s u p p l i e r s s u c h as A p p l i c o n , A v e r a , Calma and M e n t o r w i t h p r i c e s r a n g i n g f r o m $50,000 t o $450,000 [WERNER 8 3 ] . The t h r e e m a i n a p p r o a c h e s t o i n t e r a c t i v e g r a p h i c s l a y o u t a r e g e o m e t r i c , s y m b o l i c , and s t a n d a r d c e l l s . G e o m e t r i c l a y o u t s y s t e m s a r e e s s e n t i a l l y d r a w i n g m a c h i n e s . The d e s i g n e r i s p r o v i d e d w i t h a v a r i e t y of commands f o r manipu-l a t i n g g e o m e t r i c s h a p e s s u c h as MOVE and ROTATE. O f t e n more 19 p o w e r f u l o p e r a t i o n s s u c h as t h e a b i l i t y t o s t r e t c h a c e l l a b o u t some a x i s a r e p r o v i d e d [HEWLETT-PACKARD 8 1 ] . G e o m e t r i c l a y o u t s y s t e m s r e q u i r e c o m p l e x p o s t p r o c e s s i n g t o o l s f o r e v a l u a t i o n and v a l i d a t i o n b e c a u s e t h e r e i s u s u a l l y no f u n c t i o n a l o r e l e c t r i c a l i n f o r m a t i o n e n t e r e d w i t h t h e g e o m e t r i c d a t a . S y m b o l i c l a y o u t s y s t e m s a l s o g e n e r a t e t h e mask l a y o u t b u t s u p e r f l u o u s d e t a i l i s h i d d e n f r o m t h e d e s i g n e r by t h e u s e o f s y m b o l i c r e p r e s e n t a t i o n s f o r c o m p o n e n t s [BLACK 8 1 ] . " S t i c k s " i s a common s y m b o l i c a p p r o a c h , and one w h i c h was u s e d i n t h e d e s i g n o f t h e c o l o u r p a l e t t e c i r c u i t . The economy o f d i s p l a y e d d e t a i l p e r -m i t s t h e d e s i g n e r t o s e e m o r e o f t h e c i r c u i t a t one t i m e a n d t h e r e f o r e y i e l d s a b e t t e r o v e r a l l p e r s p e c t i v e o f t h e c i r c u i t . S t r u c t u r a l and b e h a v i o r a l i n f o r m a t i o n c a n be made i n h e r e n t t o t h e s y m b o l s w h i c h t h e r e f o r e s i m p l i f i e s t h e e v a l u a t i o n and v a l i d a t i o n t a s k s . M o st s y m b o l i c l a y o u t s y s t e m s o p e r a t e on e i t h e r a f i x e d o r r e l a t i v e g r i d . F i x e d g r i d s y s t e m s p e r m i t p l a c e m e n t o f s y m b o l s o n l y a t s p e c i f i c g r i d p o i n t s w h i c h a r e c h o s e n t o e l i m i n a t e a n y p o s s i b l e d e s i g n r u l e v i o l a t i o n s . R e l a t i v e g r i d s y s t e m s p e r m i t a m o r e f l e x i b l e p l a c e m e n t o f s y m b o l s a n d a c o m p a c t i o n p r o g r a m i s t h e n r u n t o m i n i m i z e t h e a r e a w i t h o u t v i o l a t i n g any d e s i g n r u l e s [NEWTON 8 1 B ] . S t a n d a r d c e l l l a y o u t s y s t e m s p r o v i d e t h e d e s i g n e r w i t h t h e a b i l i t y t o p l a c e a n d move a r o u n d p r e v i o u s l y d e s i g n e d c i r c u i t s w h i c h a r e t r e a t e d as b l a c k b o x e s . A v e r y common a p p r o a c h i s t o d e s i g n c e l l s u s i n g a g e o m e t r i c o r s y m b o l i c l a y o u t s y s t e m . A f t e r c h e c k i n g f o r d e s i g n v i o l a t i o n s t h e c e l l i s f a b r i c a t e d and c h a r a c -20 t e r i z e d . T h e c e l l c a n t h e n be a r c h i v e d f o r u s e by o t h e r des i g n e r s . A l g o r i t h m i c l a y o u t p r o g r a m s s u c h as L A P , P L A P , and AHF r e q u i r e t h e d e s i g n e r t o e x p r e s s t h e l a y o u t w i t h a p r o g r a m m i n g l a n g u a g e [LANG 79, CHENG 82 , HEUFT 8 3 ] . E x a m p l e s o f commands i n c l u d e WIRE, BOX, a n d PLA. An a l g o r i t h m i c l a n g u a g e was u s e d t o d e s i g n t h e c o l o u r p a l e t t e a n d m o r e d e t a i l s on i t s s y n t a x and e x a m p l e s w i l l be p r e s e n t e d l a t e r . The m a i n a d v a n t a g e o f a l g o r i t h -m i c l a y o u t i s t h a t a l l o f t h e d a t a a n d c o n t r o l s t r u c t u r e s i n h e r e n t t o t h e l a n g u a g e a r e a v a i l a b l e f o r u s e by t h e d e s i g n e r [HON 8 0 ] . T h i s m a k e s f o r e l e g a n t i m p l e m e n t a t i o n s o f r e g u l a r s t r u c t u r e s s u c h as PLA's and ROM's s i n c e a r b i t r a r i l y l a r g e a r r a y s c a n be c r e a t e d by c h a n g i n g t h e p a r a m e t e r s i n a l o o p t h a t s t e p s a n d r e p e a t s a p r i m i t i v e c e l l . A n o t h e r a d v a n t a g e i s t h e l o w c o s t o f a l g o r i t h m i c l a y o u t s y s t e m s . The s y s t e m c a n be embedded i n any a v a i l a b l e l a n g u a g e . A s i m p l e t e x t e d i t o r c a n be u s e d f o r i n p u t a n d a s t a n d a r d p l o t t e r c a n be u s e d f o r o u t p u t . The n e e d f o r e x p e n s i v e i n t e r a c t i v e g r a p h i c s h a r d w a r e i s t h u s e l i m i n a t e d . The m a i n d i s a d v a n t a g e i s t h a t i t i s s o m e t i m e s d i f f i c u l t t o s e e t h e c o r r e l a t i o n b e t w e e n t h e o u t p u t p l o t a n d t h e i n p u t t e x t . L i b e r a l u s a g e o f c o m m e n t s a n d p a r a m e t e r i z e d n o d e s r a t h e r t h a n a b s o l u t e c o o r d i n a t e s c a n a l l e v i a t e t h i s p r o b l e m . P l a c e m e n t a n d r o u t i n g a l g o r i t h m s a r e e x t r e m e l y v a l u a b l e l a y o u t a i d s a n d a r e a c t i v e l y r e s e a r c h e d [ P R E A S 7 9 , SOUKUP 8 1 ] . The p l a c e m e n t p r o b l e m i n v o l v e s f i n d i n g o p t i m a l l o c a t i o n s f o r c i r c u i t b u i l d i n g b l o c k s s u b j e c t t o some s p a c i n g and i n t e r c o n n e c t 21 c o n s t r a i n t s . A t y p i c a l g o a l i s t o m i n i m i z e t h e t o t a l r o u t i n g l e n g t h o f t h e i n t e r c o n n e c t i o n s . P l a c e m e n t i s a two s t e p p r o c e s s . The f i r s t s t e p i s t o f i n d an i n i t i a l " g o o d " p l a c e m e n t a n d t h e s e c o n d s t e p i s t o i t e r a t i v e l y i m p r o v e on i t by m a k i n g l o c a l m o d i f i c a t i o n s [GOTO 8 1 ] . When p l a c e m e n t i s c o m p l e t e i t i s n e c e s s a r y t o r o u t e t h e i n t e r c o n n e c t i o n s b e t w e e n c i r c u i t b l o c k s . I t i s u s u a l l y a s s u m e d t h a t t h e r e a r e o n l y two l a y e r s a v a i l a b l e f o r i n t e r c o n n e c t s , and t h a t v e r t i c a l a n d h o r i z o n t a l s e g m e n t s a r e c o n f i n e d t o s e p a r a t e l a y e r s [YOSHIMURA 82, BURSTEIN 8 3 ] . The common g o a l i s t o a c h i e v e a l l o f t h e i n t e r c o n n e c t i o n s w i t h a minimum o f h o r i z o n t a l t r a c k s and a f i x e d number of v e r t i c a l t r a c k s . P l a c e m e n t and r o u t i n g a r e v e r y c o m p u t a t i o n i n t e n s i v e a n d h e n c e h e u r i s t i c s a r e o f t e n e m p l o y e d . S p e c i a l i z e d p a r a l l e l p r o c e s s i n g h a r d w a r e has been s u g -g e s t e d t o s p e e d up t h e r o u t i n g s o l u t i o n [HONG 8 3 ] . The s i l i c o n c o m p i l e r i s a new c o n c e p t i n CAD t h a t p r o m i s e s t o be t h e u l t i m a t e d e s i g n t o o l i f i t i s s u c c e s s f u l . The i d e a l s i l i c o n c o m p i l e r w o u l d s p a n a l l l e v e l s o f r e p r e s e n t a t i o n by a c c e p t i n g as i n p u t a f u n c t i o n a l d e s c r i p t i o n o f t h e c i r c u i t a n d t h e n a u t o m a t i c a l l y g e n e r a t e t h e mask d a t a a s o u t p u t . T h e r e i s c o n s i d e r a b l e c o n t r o v e r s y o v e r t h e f e a s i b i l i t y o f s i l i c o n c o m p i -l e r s [WERNER 8 2 A ] . P r o p o n e n t s p o i n t t o t h e a n a l o g i e s b e t w e e n g e o m e t r i c l a y o u t and a s s e m b l y l a n g u a g e and a t t h e s u c c e s s o f h i g h l e v e l s o f t w a r e c o m p i l e r s . O p p o n e n t s f e e l t h a t s o f t w a r e i s one d i m e n s i o n a l a n d t h e r e f o r e t r i v i a l c o m p a r e d t o t h e m u l t i -d i m e n s i o n a l c o m p l e x i t y o f i n t e g r a t e d c i r c u i t s . They a r g u e t h a t a 22 u s e f u l s i l i c o n c o m p i l e r would f i r s t have to s o l v e the a r t i f i c i a l i n t e l l i g e n c e p r o b l e m . S e v e r a l s i l i c o n c o m p i l e r s have been i m p l e -mented, however, t h e y a r e l i m i t e d to s p e c i f i c a r c h i t e c t u r e s and u s u a l l y p r o d u c e l e s s t h a n o p t i m a l d e s i g n s [TRIMBERGER 81, THOMAS 81, SHIVA 8 3 ] . The a u t o m a t e d PLA g e n e r a t o r d i s c u s s e d e a r l i e r can be v i e w e d as a s u c c e s s f u l s i m p l i f i e d s i l i c o n c o m p i l e r . The h i g h c o s t and s o m e t i m e s l e n g t h y t u r n - a r o u n d t i m e of f a b r i c a t i o n r e q u i r e s t h e d e s i g n e r t o employ e v e r y p o s s i b l e means of g u a r a n t e e i n g t h a t h i s d e s i g n i s c o r r e c t . E v a l u a t i o n t o o l s such as s i m u l a t o r s , d e s i g n r u l e c h e c k e r s , and e l e c t r i c r u l e c h e c k e r s a r e t h e r e f o r e e s s e n t i a l . The t h r e e m a i n c l a s s e s o f s i m u l a t o r s a r e c h a r a c t e r i z e d by the domain t h a t t h e y o p e r a t e i n : f u n c t i o n a l , l o g i c a l , or e l e c t r i -c a l . In g e n e r a l t h e h i g h e r - l e v e l s i m u l a t o r s r u n f a s t e r and c o n s u m e l e s s memory b u t p e r f o r m a l e s s d e t a i l e d a n a l y s i s . Two c o m p r e h e n s i v e r e v i e w s o f s i m u l a t i o n t e c h n i q u e s a r e a v a i l a b l e [RUEHLI 83, HACHTEL 81]. C i r c u i t s i m u l a t o r s o p e r a t e at the e l e c t r i c a l l e v e l of r e p r e -s e n t a t i o n and s o l v e the s e t o f c o u p l e d n o n l i n e a r o r d i n a r y d i f f e r -e n t i a l e q u a t i o n s t h a t d e s c r i b e t h e c i r c u i t . S P I C E i s t h e most w e l l known c i r c u i t s i m u l a t o r [VLADIMIRESCU 8 0 ] . I t was d e v e l o p e d a t t h e U n i v e r s i t y of C a l i f o r n i a a t B e r k e l e y and has been d i s t r i -b u t e d t o o v e r 2000 i n s t a l l a t i o n s . C i r c u i t s i m u l a t o r s t e n d t o be s l o w b e c a u s e of the heavy c o m p u t a t i o n r e q u i r e d to s o l v e f o r the e x a c t s t a t e o f e a c h node f o r e a c h t i m e i n c r e m e n t . S P I C E , f o r 23 e x a m p l e , r u n n i n g on an I B M 3 7 0 / 1 6 8 r e q u i r e s 4 m s / d e v i c e / c 1 o c k / t i m e p o i n t [NEWTON 8 1 B ] , C i r c u i t s i m u l a t i o n s a r e t h e r e f o r e r a r e l y r u n on c i r c u i t s c o n t a i n i n g m o r e t h a n a f e w h u n d r e d n o d e s . The a c c u r a c y o f a s i m u l a t o r i s s t r o n g l y d e p e n d e n t on t h e a c c u r a c y of t h e p a r a m e t e r s u s e d i n t h e d e v i c e m o d e l s . These p a r a m e t e r s a r e i n t u r n d e p e n d e n t on t h e f a b r i c a t i o n f a c i l i t y and may v a r y f r o m one b a t c h t o t h e n e x t . One must t h e r e f o r e be c o n s e r v a t i v e when i n t e r -p r e t i n g s i m u l a t i o n r e s u l t s u n l e s s someone f r o m t h e f a b r i c a t i o n f a c i l i t y i s s u p p o r t i n g t h e d e v i c e m o d e l s . A l t h o u g h S P I C E i s p r o b a b l y t h e most r e f i n e d CAD p r o g r a m i n t h e p u b l i c d o m a i n i t i s i n t e r e s t i n g t o n o t e t h a t m o d i f i c a t i o n s a r e u s u a l l y r e q u i r e d b e f o r e i t c a n be u s e d i n an i n d u s t r i a l s e t t i n g [ D W I V E D I 8 2 , HEWLETT-PACKARD 8 0 ] . L o g i c s i m u l a t o r s s i m p l i f y t h e a n a l y s i s by p e r m i t t i n g o n l y a f i x e d n u m b e r o f n o d e s t a t e s s u c h a s l o g i c - o n e , l o g i c - z e r o , h i g h i m p e d a n c e , and u n d e f i n e d . The speedup o v e r c i r c u i t s i m u l a t o r s c a n be t h r e e o r d e r s o f m a g n i t u d e [NEWTON 7 9 ] . E a r l y l o g i c s i m u l a t o r s w h e re b a s e d on t h e u n i d i r e c t i o n a l b o o l e a n l o g i c g a t e m o d e l . MOS d e v i c e s h o w e v e r a r e b i d i r e c t i o n a l and t h e newer l o g i c s i m u l a t o r s t a k e t h i s f a c t i n t o a c c o u n t [BRYANT 8 1 ] . F u n c t i o n a l s i m u l a t o r s a b s t r a c t t h e c i r c u i t i n t o m o d u l e s whose f u n c t i o n s a r e d e s c r i b e d by a h a r d w a r e d e s c r i p t i o n l a n g u a g e o r b e h a v i o r a l l a n g u a g e [HEPLER 79, RAETH 8 1 ] . F u n c t i o n a l s i m u l a -t i o n i s of c o u r s e most u s e f u l i n t h e e a r l y s t a g e s o f d e s i g n when g l o b a l c o m m u n i c a t i o n and a l g o r i t h m s u s e d i n t h e c i r c u i t must be v e r i f i e d . 24 The c o m p l e x i t y o f V L S I has m o t i v a t e d much work on i m p r o v i n g t h e p e r f o r m a n c e o f s i m u l a t o r s . L o o kup t a b l e s c a n be e x p l o i t e d t o r e d u c e t h e r e p e t i t i v e s o l u t i o n o f d e v i c e m o d e l s . S p e c i a l i z e d a r r a y p r o c e s s i n g h a r d w a r e ca n be e m p l o y e d . S i m u l a t i o n o f t empo-r a r i l y i n a c t i v e a r e a s o f a c i r c u i t c a n be a v o i d e d . A v e r y p r o m -i s i n g t e c h n i q u e i s t h e m i x e d mode s i m u l a t o r [NEWTON 7 8 ] . The i d e a i s t o c o m b i n e a l l t h r e e t y p e s o f s i m u l a t o r s i n t o one p a c k a g e : c i r c u i t a n a l y s i s f o r a r e a s t h a t h a v e c r i t i c a l t i m i n g o r s t r o n g f e e d b a c k l o o p s , l o g i c a n a l y s i s f o r a r e a s w i t h l e s s c r i t i c a l t i m i n g , and f u n c t i o n a l a n a l y s i s f o r a r e a s o f t h e c i r c u i t t h a t a r e w e l l u n d e r s t o o d . D e s i g n r u l e c h e c k e r s (DRC) a c c e p t as i n p u t t h e g e o m e t r i c d e s c r i p t i o n o f t h e masks and o u t p u t a l i s t o f d e s i g n r u l e v i o l a -t i o n s . The d e s i g n e r must s t i l l d e c i d e what c a u s e d t h e e r r o r . F o r e x a m p l e , t w o w i r e s w i t h i n s u f f i c i e n t c l e a r a n c e may o r may n o t h a v e b e e n i n t e n d e d t o c o n n e c t . A t y p i c a l DRC a l g o r i t h m i s t o b l o a t a m ask by a n a m o u n t e q u a l t o t h e s p a c i n g r e q u i r e d b e t w e e n i t a n d a n o t h e r l a y e r . T h e n by p e r f o r m i n g b o o l e a n AND o p e r a t i o n s b e t w e e n p o l y g o n s on t h e t w o mask l a y e r s one c a n e a s i l y d e t e c t e n c r o a c h m e n t v i o l a t i o n s [TUCKER 8 1 ] . S e v e r a l t e c h n i q u e s a r e u s e d t o i m p r o v e t h e p e r f o r m a n c e o f DRC's. P o l y g o n s c a n be s o r t e d a n d w i n d o w e d t o a v o i d c o m p a r i s o n o f p o l y g o n s t h a t a r e s e p a r a t e d by t o o g r e a t a d i s t a n c e . H i e r a r c h y i n t h e c i r c u i t c a n be e x p l o i t e d t o a v o i d r e p e t i t i v e c h e c k i n g of t h e same c e l l [WHITNEY 8 1 ] . 25 E l e c t r i c r u l e c h e c k e r s (ERC) l o o k f o r a v a r i e t y o f common e l e c t r i c a l v i o l a t i o n s i n t h e m a sks s u c h as f l o a t i n g g a t e s , u n -t e r m i n a t e d w i r e s , s h o r t s between power and g r o u n d , and i n c o r r e c t p u l l - u p / p u l l - d o w n r a t i o s . I f a d d i t i o n a l i n f o r m a t i o n i s a v a i l a b l e s u c h as w h i c h b u s e s a r e c l o c k s and w h i c h a r e d a t a t h e n t h e ERC can a l s o c h e c k f o r t y p e m i s m a t c h e s [CORBIN 81]. V a l i d a t i o n t o o l s s u c h as c i r c u i t e x t r a c t o r s p r o v i d e t h e g r e a t e s t l e v e l o f c o n f i d e n c e t h a t a d e s i g n i s c o r r e c t . A c i r c u i t e x t r a c t o r a c c e p t s as i n p u t the g e o m e t r i c mask d a t a and o u t p u t s an e l e c t r i c a l or l o g i c a l d e s c r i p t i o n o f the c i r c u i t . T h i s d e s c r i p -t i o n c a n t h e n be f e d i n t o t h e same s i m u l a t o r u s e d d u r i n g t h e e v a l u a t i o n s t a g e o f t h e d e s i g n a n d t h e r e s u l t s c o m p a r e d . The d e s i g n l o o p i s t h u s c l o s e d w h i c h a v o i d s any p o s s i b i l i t y t h a t the e v a l u a t i o n was b i a s e d by the d e s i g n e r ' s e x p e c t a t i o n s [TUCKER 81]. T e s t a b i l i t y a n a l y s i s i s a n o t h e r i m p o r t a n t f a c e t of v a l i d a -t i o n . I n t h e p a s t i t was p o s s i b l e t o p r o b e a c i r c u i t and d e d u c e t h e f a u l t s f r o m o b s e r v a t i o n o f i t s i n t e r n a l o p e r a t i o n . T o d a y ' s c o m p l e x i t y and s m a l l l i n e w i d t h s make t h i s a l m o s t i m p o s s i b l e . A d e s i g n e r must be a c u t e l y aware of how he p l a n s to d i a g n o s e f a u l t s t h a t a r e s u r e t o a p p e a r a f t e r t h e f i r s t i t e r a t i o n . A r e v i e w o f t e s t a b i l i t y i s a v a i l a b l e [WILLIAMS 83]. D e s i g n f o r t e s t a b i l i t y t e c h n i q u e s a r e d i v i d e d i n t o two c a t e g o r i e s : ad h o c and s t r u c t u r e d . The ad h o c t e c h n i q u e s a r e s p e c i f i c t o t h e p a r t i c u l a r c h i p and do n o t a t t e m p t t o s o l v e t h e g e n e r a l t e s t i n g p r o b l e m . Examples i n c l u d e p a r t i t i o n i n g the c h i p 26 i n t o m o d u l e s t h a t c a n be i n d i v i d u a l l y t e s t e d , p r o v i d i n g t e s t p o i n t s f o r p r o b e s ( s e e f o r e x a m p l e [CANEPA 8 3 ] ) , and m a k i n g u s e o f i n t e r n a l b u s e s f o r s t i m u l a t i n g t h e c i r c u i t m o d u l e s . A n o t h e r p o p u l a r ad h o c m e t h o d i s s i g n a t u r e a n a l y s i s w h i c h a p p l i e s a s i g n a l to the c i r c u i t and t h e n c h e c k s i f the c o m p r e s s e d r e s p o n s e i s c o r r e c t . S t r u c t u r e d t e c h n i q u e s a t t e m p t t o s o l v e t h e more g e n e r a l t e s t a b i l i t y p r o b l e m . The u s u a l a p p r o a c h i s t o add e x t r a c i r c u i t r y t h a t c a n h a l t t h e c i r c u i t and t h e n s h i f t i n a known v e c t o r o r s h i f t o u t t h e c u r r e n t s t a t e f o r a n a l y s i s [ T S U I 8 2 ] . By h a l t i n g t h e c i r c u i t t h e p r o b l e m i s r e d u c e d t o d e b u g g i n g c o m b i n a t o r i a l l o g i c r a t h e r t h a n t h e i n t r a c t a b i l i t y o f d e b u g g i n g a d y n a m i c f i n i t e s t a t e m a c h i n e . A n o t h e r a p p r o a c h a s s u m e s t h a t t h e most common f a u l t i s a s i n g l e " s t u c k - a t " d e v i c e a n d t h e n a d d s c i r -c u i t r y to d e t e c t a l l s u c h f a u l t s [MERCER 80]. F i n a l l y some of the new c o m p l e x IC's a r e i n c o r p o r a t i n g on b o a r d s e l f t e s t c i r c u i t r y and s o f t w a r e [CANEPA 83]. The Mead and Conway R e v o l u t i o n The c o n n o t a t i o n s o f t h e w o r d r e v o l u t i o n a r e d i s t a s t e f u l , h owever, when one c o n s i d e r s the i m p a c t t h a t C a r v e r Mead and Lynn Conway have had on IC d e s i g n i t i s an a p t d e s c r i p t i o n . I n t e g r a t e d c i r c u i t d e s i g n was f o r many y e a r s a b l a c k m agic a r t b e c a u s e most a d v a n c e s o c c u r r e d i n i n d u s t r y and t h e r e f o r e were p r o p r i e t a r y and u n p u b l i s h e d . I n t h e f a l l o f 1 978 L y n n Conway o f X e r o x PARC 27 o f f e r e d a V L S I s y s t e m d e s i g n c o u r s e a t M.I.T. [CONWAY 7 9 ] . The c o u r s e r e s u l t e d i n a c u s t o m NMOS c h i p c o n t a i n i n g a v a r i e t y o f s t u d e n t d e s i g n s o f w h i c h a t l e a s t 3 f u n c t i o n e d c o r r e c t l y . The c o u r s e t e x t book was a p r e - p u b l i s h e d v e r s i o n of Mead and Conway's " I n t r o d u c t i o n to VLSI S y s t e m s " [MEAD 80]. The p u b l i c a t i o n of t h i s b ook i n 1979 s t a r t e d a r e v o l u t i o n . A more c o m p l e t e h i s t o r y i s a v a i l a b l e [CONWAY 8 1 ] . The r e s u l t s have been a m a z i n g . T h e r e a r e now o v e r 60 u n i v e r -s i t i e s i n t h e U.S. and E u r o p e t h a t o f f e r V L S I d e s i g n c o u r s e s b a s e d on t h e Mead and Conway t e x t [ F A I R B A I R N 8 2 ] , Many C a n a d i a n u n i v e r s i t i e s , i n c l u d i n g U.B.C., a r e o f f e r i n g d e s i g n c o u r s e s w h i c h a r e b e i n g c o o r d i n a t e d by the VLSI I m p l e m e n t a t i o n C e n t r e ( V L S I I C ) a t Queen's U n i v e r s i t y [GALE 8 3 ] . A w i d e s e l e c t i o n o f s h o r t c o u r s e s on VLSI d e s i g n a r e now a v a i l a b l e to i n d u s t r y . S e v e r a l new j o u r n a l s i n c l u d i n g IEEE C o m p u t e r - A i d e d D e s i g n , VLSI D e s i g n , and I n t e g r a t i o n have s p r u n g up. The r e a r e at l e a s t 13 r e c e n t s t a r t - u p c o m p a n i e s o f f e r i n g c ustom IC s e r v i c e s [SZIROM 83]. What t h e n d i d Mead and Conway a c t u a l l y do? Mead and Conway removed the m y s t e r y and i n t i m i d a t i o n f r o m IC d e s i g n by s i m p l i f y -i n g a n d f o r m a l i z i n g t h e d e s i g n p r o c e s s . A t t h e same t i m e t h e y p o i n t e d o u t many p o t e n t i a l l y f r u i t f u l t o p i c s o f r e s e a r c h . More s p e c i f i c a l l y t h e y i n t r o d u c e d t h e s i l i c o n f o u n d r y , t h e m u l t i -p r o j e c t c h i p (MPC), C a l t e c h I n t e r m e d i a t e Form ( C I F ) , s i m p l i f i e d d e s i g n r u l e s , a s i m p l i f i e d MOS t r a n s i s t o r m o d e l, and a s t r u c t u r e d d e s i g n m e t h o d o l o g y . 28 A s i l i c o n f o u n d r y i s a f a c i l i t y t h a t f a b r i c a t e s an i n t e -g r a t e d c i r c u i t f r o m a d e s i g n s u p p l i e d by a n i n d e p e n d e n t p a r t y [JANSEN 8 1 ] . The s i l i c o n f o u n d r y p r o v i d e s t h o s e u s e r s t h a t c a n n o t a f f o r d t h e h i g h c o s t of f a b r i c a t i o n e q u i p m e n t ( a p p r o x . 15 m i l l i o n d o l l a r s ) w i t h c u s t o m c i r c u i t c a p a b i l i t y . An i d e a l s i l i c o n f o u n d r y s h o u l d h a v e a c l e a n a n d s t a n d a r d i z e d i n t e r f a c e so t h a t t h e d e -s i g n e r does n o t have t o be c o n c e r n e d w i t h mask m a k i n g o r f a b r i c a -t i o n d e t a i l s s u c h as f i d u c i a l m a r k s , mask p o l a r i t y , and b l o a t s o r s h r i n k s . The f o u n d r y c o n c e p t i s e n t i r e l y a n a l o g o u s t o t h e common-p l a c e p r o c e s s i n g o f p h o t o g r a p h i c f i l m . T h e r e a r e a t l e a s t 38 s i l i c o n f o u n d r i e s now o p e r a t i n g [WERNER 8 2 B ] , M i n i m u m l o t s o f 10-20 w a f e r s c o s t a b o u t 10,000 d o l l a r s , h o w e v e r , most f o u n d r i e s r e -q u i r e a minimum y e a r l y e x p e n d i t u r e of 100,000 d o l l a r s . T h i s has l e d t o t h e f o r m a t i o n o f s i l i c o n b r o k e r s t h a t s p e c i a l i z e i n i n t e r -f a c i n g b e t w e e n s i l i c o n f o u n d r i e s a n d d e s i g n e r s [COHEN 8 2 ] . By r e p r e s e n t i n g s e v e r a l d e s i g n e r s t h e m i n i m u m e x p e n d i t u r e c a n be r e d u c e d . The c h i p d e s i g n e d as p a r t o f t h i s t h e s i s was f a b r i c a t e d by GTE i n P h o e n i x a n d s h o u l d c o s t a p p r o x i m a t e l y 42 d o l l a r s e a c h i n q u a n t i t i e s of 10,000. The m u l t i - p r o j e c t c h i p (MPC) i s a method o f a m o r t i z i n g mask m a k i n g a n d f o u n d r y c o s t s o v e r s e v e r a l d e s i g n s [HON 8 0 ] . I f , f o r e x a m p l e , 10 p r o j e c t s c a n be p l a c e d on a 5 0 0 0 m i c r o n s q u a r e c h i p t h e n a m i n i m u m 10,000 d o l l a r r u n c o s t s e a c h d e s i g n e r o n l y 1000 d o l l a r s . MPC's do r e q u i r e s o m e o n e t o c o o r d i n a t e a n d p a c k t h e d e s i g n s p r i o r t o f a b r i c a t i o n , a n d t o l o o k a f t e r p a c k a g i n g a n d d i s t r i b u t i o n when t h e w a f e r s r e t u r n ( h e n c e t h e V L S I I C a t Queen's U n i v e r s i t y ) . 29 C a l t e c h I n t e r m e d i a t e F o r m ( C I F ) i s a l o w - l e v e l g r a p h i c s l a n g u a g e f o r s p e c i f y i n g t h e g e o m e t r y o f i n t e g r a t e d c i r c u i t s [HON 8 0 ] . C I F was d e s i g n e d t o be a s t a n d a r d i n t e r f a c e f o r m a t b e t w e e n t h e d e s i g n e r a n d f o u n d r y a s s h o w n i n F i g u r e 7. M o s t s c h o o l s ( i n c l u d i n g U.B.C.) a n d f o u n d r i e s a r e i n d e e d u s i n g C I F . T y p i c a l C I F p r i m i t i v e s i n c l u d e d e f i n e mask l a y e r , d r a w w i r e , a n d d r a w p o l y g o n . CIF a l s o s u p p o r t s h i e r a r c h y by p e r m i t t i n g one t o d e f i n e c e l l s w h i c h c a n be l a t e r c a l l e d w i t h a p p r o p r i a t e t r a n s f o r m a t i o n s a p p l i e d t o i t . CIF i s i n p l a i n t e x t f o r m a t , as shown i n F i g u r e 6, a n d t h e r e f o r e c a n be r e a d a n d u n d e r s t o o d by b o t h p e o p l e a n d c o m p u t e r s . F i n a l l y , C IF i s i n d e p e n d e n t o f f a b r i c a t i o n p r o c e s s e s . DS2; 9 P a d B l a n k ; ( d e f i n e s y m b o l #2 w i t h name P a d B l a n k ) (4 i t e m s ) ; ( b o u n d i n g box 0,0 t o 26500, - 2 6 5 0 0 ) ; L NM; B L 26500 W 2000 C 13250, -1000; (Vdd l i n e ) ; L NM; B L 20500 W 2000 C 13250, -25500; ( g r o u n d l i n e ) ; L NM; B L 13500 W 13500 C 13250, -13250; ( m e t a l p a d ) ; L NG; B L 11500 W 11500 C 13250, - 1 3 2 5 0 ; ( o v e r g l a s s window) DF; ( e n d d e f i n i t i o n ) DS 11; 9 P a d S a m p l e ; ( e x a m p l e i n p u t pad) c 6 R o, 1 T 0,-106000; c 7 R o, 1 T 0,-79500; c 5 R o, 1 T 0,-53000; c 2 R o, 1 T 0,-26500; L NM ; B L 77750 W 2000 C 3887 5 , - 1 0 5 0 0 0 ; B L 10250 W 2000 C 24875, - 6 0 5 0 0 ; B L 2000 W 49500 C 25500, -24750; B L 28750 W 2000 C 38875, -1000; B L 14250 W 2000 C 3162 5 , -102000; B L 2000 W 97000 C 31000, - 5 1 5 0 0 ; c 9 R o, -1 T 77750, - 5 3 0 0 0 ; C 8 R o, -1 T 77750, -26500; B L 2000 W 11250 C 37750, - 9 7 3 7 5 ; B L 6500 W 2000 C 40000, -92750; C 4 R o, -1 T 77750, - 7 9 5 0 0 ; C 10 E . 0 1 T 77750, - 7 9 5 0 0 ; B L 2000 W 103000 C 52250, -51500; F i g u r e 6. Ex a m p l e o f C a l t e c h I n t e r m e d i a t e Form [HON 80] 30 r Designer Design System Standard Cells Place & Route CIF Output 1 Design Data Base Design Svstem Interactive Graphical I a> out CIT Output Design Data Rase Design Svqcm Artwork I anguage e g L A P O F Output Ocsicn System Text Fditor t Design Data Rase Check Plot T Fabrication Mann PC I Reticles I Fsnosure t Wafers Fabrication F-Bcam Fxposurc r Wafers Fabricator Design Rule Check J F i g u r e 7. C a l t e c h I n t e r m e d i a t e Form R e l a t i o n s h i p s [HON 80] 3 1 S i m p l i f i e d d e s i g n r u l e s a r e a n o t h e r c o r n e r s t o n e o f t h e Mead a n d C o n w a y d e s i g n p h i l o s o p h y [LYON 8 1 ] . D e s i g n r u l e s a r e s p e c i -f i e d by t h e f a b r i c a t i o n f a c i l i t y a n d c o n s t r a i n t h e d e s i g n t o c e r t a i n m inimum ( o r maximum) w i d t h s , s e p a r a t i o n s , e x t e n s i o n s , o r o v e r l a p s o f g e o m e t r i c p a t t e r n s on and b e t w e e n masks. D e s i g n r u l e s n o r m a l l y t e n d t o be q u i t e c o m p l e x , p a r t i c u l a r l y i f t h e d e s i g n e r w i s h e s t o s q u e e z e e v e r y p o s s i b l e m i c r o n o u t of t h e l a y o u t . Under s u c h t i g h t t o l e r a n c e s t h e r e a r e many s p e c i a l c a s e s , e a c h r e q u i r -i n g a d e s i g n r u l e . The f i r s t p r o b l e m w i t h c o m p l e x d e s i g n r u l e s i s t h a t t h e y a r e h a r d t o l e a r n a n d i t i s d i f f i c u l t t o c h e c k f o r v i o l a t i o n s . The s e c o n d p r o b l e m i s t h a t s p e c i a l c a s e r u l e s t e n d t o c h a n g e a s t h e t e c h n o l o g y i m p r o v e s , a n d t h e r e f o r e a c o m p l e t e r e d e s i g n may be r e q u i r e d t o t a k e a d v a n t a g e o f t h e i m p r o v e m e n t s . A t h i r d p r o b l e m i s t h a t s p e c i a l c a s e r u l e s a r e v e r y d e p e n d e n t on t h e i n d i v i d u a l c h a r a c t e r i s t i c s o f e a c h f a b r i c a t i o n f a c i l i t y . Mead an d C o n w a y b e l i e v e t h a t t h e d e s i g n r u l e s s h o u l d be r e l a x e d a n d be b a s e d on a g e n e r i c f a b r i c a t i o n p r o c e s s s u c h as d e p l e t i o n l o a d s i l i c o n g a t e NMOS. I n a d d i t i o n , a l l r u l e s s h o u l d be i n t e r m s o f a d i m e n s i o n l e s s q u a n t i t y c a l l e d l a m b d a . Mead and Conway n o t e d t h a t a f u n d a m e n t a l p a r a m e t e r i n any f a b r i c a t i o n p r o c e s s i s t h e minimum f e a t u r e s i z e a n d t h e y made l a m b d a e q u a l t o one h a l f o f t h i s q u a n t i t y . L a m b d a b a s e d d e s i g n r u l e s make l o g i c a l s e n s e . F o r e x a m p l e , i f one w i s h e s t o g u a r a n t e e t h a t t w o w i r e s do n o t c r o s s t h e n a 2 l a m b d a s p a c i n g must be p r o v i d e d t o e n s u r e s e p a r a t i o n i n t h e e v e n t t h a t e a c h w i r e moves t h e maximum 1 l a m b d a e r r o r t o w a r d s t h e o t h e r . S i n c e t h e s i m p l i f i e d r u l e s a r e b a s e d on a g e n e r i c f a b r i c a t i o n p r o c e s s e s a n d a r e r e l a x e d t o a v o i d s p e c i a l c a s e s t h e y s h o u l d be r e a s o n a b l y t r a n s p o r t a b l e b e t w e e n f o u n d r i e s . 32 F i n a l l y , a s g e o m e t r i e s d e c r e a s e one s h o u l d be a b l e t o s i m p l y r e s u b m i t t h e o r i g i n a l d e s i g n w i t h a new l a m b d a s p e c i f i e d . T h i s of c o u r s e has l i m i t a t i o n s b e c a u s e some f e a t u r e s s u c h as b o n d i n g pads do n o t s c a l e . E x p e r i e n c e s h o w s t h a t s i m p l i f i e d r u l e s do i n d e e d s c a l e t o a d e g r e e . The c o l o u r p a l e t t e was o r i g i n a l l y s u b m i t t e d f o r f a b r i c a t i o n w i t h l a m b d a = 2.5 m i c r o n s . I t c a n now be r e s u b -m i t t e d u n c h a n g e d w i t h l a m b d a = 2.0 m i c r o n s , h o w e v e r , l a m b d a = 1.65 m i c r o n s w i l l r e q u i r e a r e d e s i g n o f as y e t unknown m a g n i t u d e . Mead and Conway's s i m p l i f i e d r u l e s were o r i g i n a l l y s p e c i f i e d f o r NMOS b u t s i m i l a r r u l e s h a v e r e c e n t l y b e e n s p e c i f i e d f o r CMOS [SNYDER 82, GRISWOLD 82J and f o r b i p o l a r t e c h n o l o g y [ELMASRY 8 3 ] . I t i s i n t e r e s t i n g t o n o t e t h a t t h e m a j o r i t y o f w o r k by u n i v e r s i t i e s on V L S I d e s i g n has been p e r f o r m e d by c o m p u t e r s c i e n -t i s t s a n d n o t e l e c t r i c a l e n g i n e e r s . One o f t h e r e a s o n s f o r t h i s i s t h a t Mead and Conway p r e s e n t e d a s i m p l i f i e d m o d e l o f t h e MOS t r a n s i s t o r w h i c h gave p e o p l e l a c k i n g a d e v i c e p h y s i c s b a c k g r o u n d e n o u g h i n f o r m a t i o n t o b e g i n d e s i g n i n g i n t e g r a t e d c i r c u i t s . The MOS t r a n s i s t o r i s d e s c r i b e d as a v o 1 t a g e - c o n t r o 1 1 e d c u r r e n t s w i t c h t h a t i s f o r m e d when a p o l y s i l i c o n w i r e c r o s s e s t h e d i f f u -s i o n l a y e r . C u r r e n t t h r o u g h t h e d e v i c e e q u a l s t h e c h a r g e i n d u c e d i n t h e c h a n n e l by t h e a p p l i e d g a t e v o l t a g e d i v i d e d by t h e t r a n s i t t i m e o r a v e r a g e t i m e r e q u i r e d f o r an e l e c t r o n t o t r a v e l f r o m t h e s o u r c e t o t h e d r a i n . A s i m p l e e x p r e s s i o n f o r t h e t r a n s i t t i m e i s d e r i v e d f r o m t h e c h a n n e l l e n g t h a n d t h e e l e c t r o n v e l o c i t y . The i n d u c e d c h a r g e i s f o u n d by t r e a t i n g t h e g a t e as a s i m p l e c a p a c i -t o r and u s i n g t h e d e f i n i t i o n o f c a p a c i t a n c e . A s e c o n d MOS d e v i c e m o d e l i s a l s o p r e s e n t e d i n t h e Mead a n d C o n w a y b o o k by C a r l o 33 S e q u i n . T h i s m o d e l a p p e a l s more t o i n t u i t i o n by d e s c r i b i n g c h a r g e a s a f l u i d a n d p o t e n t i a l as d e p r e s s i o n s o r w e l l s i n t o w h i c h t h e f l u i d c a n a c c u m u l a t e . Mead and Conway r e f e r t o t h e t r a n s i t t i m e as " t h e f u n d a m e n -t a l t i m e u n i t o f t h e e n t i r e i n t e g r a t e d s y s t e m " . A l l d e l a y s t h r o u g h o u t t h e i n t e g r a t e d c i r c u i t c a n be e x p r e s s e d as m u l t i p l e s o f t h e t r a n s i t t i m e . F o r e x a m p l e , t h e t i m e r e q u i r e d f o r a t r a n -s i s t o r t o c h a r g e t h e g a t e o f a a n o t h e r t r a n s i s t o r t w i c e i t s s i z e i s t w o t i m e s t h e t r a n s i t t i m e . U s i n g t h i s s i m p l e i d e a one c a n make c r u d e e s t i m a t e s of t h e c i r c u i t p e r f o r m a n c e w i t h o u t e l a b o r a t e s i m u l a t i o n t o o l s . M e a d a n d C o n w a y h a v e b e e n w i d e l y t o u t e d f o r i n t r o d u c i n g a s t r u c t u r e d d e s i g n m e t h o d o l o g y w h i c h i s e s s e n t i a l l y t h e e x p l o i t a -t i o n o f h i e r a r c h y a n d r e g u l a r i t y t o a t t a c k t h e p r o b l e m s a s s o c i a t e d w i t h c o m p l e x d e s i g n s [ T R I M B E R G E R 8 1 ] . H i e r a r c h y a n d r e g u l a r i t y have a l r e a d y been d i s c u s s e d e a r l i e r i n t h i s c h a p t e r . M e a d a n d C o n w a y f e e l t h a t d i g i t a l p r o c e s s i n g s y s t e m s s h o u l d be h i e r a r c h i c a l l y d e c o m p o s e d i n t o c o m b i n a t i o n s o f r e g i s t e r - t o -r e g i s t e r t r a n s f e r p a t h s , c o n t r o l l e d by f i n i t e s t a t e m a c h i n e s . They a l s o p r o m o t e t h e use of d y n a m i c c i r c u i t r y w i t h a two phase n o n o v e r l a p p i n g c l o c k scheme. The d i f f i c u l t y i n d e s i g n i n g a com-p l e x d y n a m i c p a r t t h a t a c t u a l l y w o r k s i s , h o w e v e r , n o t a d d r e s s e d . 34 CHAPTER 3: SELECTION AND J U S T I F I C A T I O N OF A CUSTOM CHIP PROJECT B a c k g r o u n d I n f o r m a t i o n I n k e e p i n g w i t h o u r d e s i r e t o d e s i g n a n o v e l y e t u s e f u l i n t e g r a t e d c i r c u i t we s o l i c i t e d a d v i c e a n d i m p e t u s f r o m l o c a l e l e c t r o n i c s f i r m s . S e v e r a l i n t e r e s t i n g a n d p r o m i s i n g p r o j e c t s w e r e s u g g e s t e d t o u s . T h e s e i n c l u d e d a l o w p o w e r p r o g r a m m a b l e r e a d - o n l y m e mory f o r u s e i n a r a i l c a r l o c a t i o n s y s t e m , a s y n -t h e t i c a p e r t u r e r a d a r p r o c e s s i n g e l e m e n t , a n d a c o l o u r p a l e t t e c i r c u i t . Our d e c i s i o n t o p r o c e e d w i t h t h e c o l o u r p a l e t t e p r o j e c t s u g -g e s t e d by M i c r o t e l P a c i f i c R e s e a r c h L t d . (MPR) was i n f l u e n c e d by s e v e r a l f a c t o r s . F i r s t , MPR c o u l d o f f e r us a c c e s s t o a s i l i c o n f o u n d r y . S e c o n d , t o t h e b e s t o f o u r k n o w l e d g e t h e c o l o u r p a l e t t e f u n c t i o n h a s n o t y e t b e e n i n t e g r a t e d o n t o a s i n g l e c h i p , a n d t h e r e f o r e i t i s a n o v e l p r o j e c t . We do know o f a h y b r i d i m p l e m e n -t a t i o n b u t t h i s c a n n o t be c o n s i d e r e d a t r u l y i n t e g r a t e d c o l o u r p a l e t t e [INTECH 8 2 ] , T h i r d , t h e c o l o u r p a l e t t e c o m b i n e s d i g i t a l a n d a n a l o g c i r c u i t r y w h i c h m a k e s f o r a m o re i n t e r e s t i n g d e s i g n t h a n a p u r e l y d i g i t a l c i r c u i t , and adds t o i t s n o v e l t y . F i n a l l y , w h i l e t a r g e t e d f o r t h e MPR T e l i d o n s y s t e m , t h e c o l o u r p a l e t t e i s a g e n e r a l p u r p o s e c i r c u i t t h a t h a s i m p o r t a n t a p p l i c a t i o n s i n o t h e r g r a p h i c s s y s t e m s . 3 5 The C o l o u r P a l e t t e F u n c t i o n G i v e n t h e t h r e e p r i m a r y c o l o u r s on h i s p a l e t t e an a r t i s t c a n m i x an I n f i n i t e number o f h u e s , h o w e v e r , h i s p a l e t t e has room f o r o n l y a f i n i t e n u m b e r o f c o l o u r s a t a n y one t i m e . An e l e c t r o n i c c o l o u r p a l e t t e s e r v e s a s i m i l a r f u n c t i o n e x c e p t t h a t a c o l o u r m o n i t o r r e p l a c e s t h e c a n v a s . The m a i n c o m p o n e n t s o f a c o l o u r p a l e t t e a r e a d u a l p o r t r e g i s t e r a r r a y and t h r e e d i g i t a l - t o - a n a l o g c o n v e r t e r s (DAC). The a n a l o g o u t p u t o f e a c h DAC i s c o n n e c t e d t o one o f t h e m o n i t o r c o l o u r g u n s . The I n t e n s i t y o f e a c h c o l o u r a n d t h e i r r e s u l t a n t c o m b i n e d hue I s t h e r e f o r e d e t e r m i n e d by t h e b i t p a t t e r n t h a t i s i n p u t t o t h e DAC's. D a t a i s w r i t t e n i n t o t h e r e g i s t e r s t h r o u g h one o f t h e p o r t s by a g r a p h i c s s y s t e m p r o c e s s o r . P i x e l d a t a i s p r e s e n t e d by t h e CRT c o n t r o l l e r t o t h e o t h e r p o r t w h i c h s e l e c t s one o f t h e r e g i s t e r s a n d c a u s e s i t t o d r i v e i t s d a t a i n t o t h e DAC's. E a c h r e g i s t e r i n t h e a r r a y I s d i v i d e d i n t o t h r e e e q u a l -w i d t h b i t f i e l d s , one f o r e a c h DAC. I f e a c h r e g i s t e r f i e l d i s n b i t s w i d e , a n d i f t h e DAC's h a v e n b i t s o f r e s o l u t i o n , t h e n e a c h r e g i s t e r c a n s p e c i f y one o f 2**(3*n) c o l o u r s . T y p i c a l l y n e q u a l s 4 i n w h i c h c a s e e a c h r e g i s t e r c a n s p e c i f y one o f 4 0 9 6 u n i q u e c o l o u r s . The number of c o l o u r s t h a t a r e a v a i l a b l e a t any one t i m e e q u a l s m, t h e n u m b e r o f r e g i s t e r s i n t h e a r r a y . F o r o b v i o u s r e a s o n s m i s c h o s e n t o be a p o w e r o f 2 a n d i s n o r m a l l y e q u a l t o 16. I n s u m m a r y t h e n , t h e c o l o u r p a l e t t e p e r m i t s l o g m b i t s t o s e l e c t f r o m m c o l o u r s , e a c h o f w h i c h c a n be c h o s e n f r o m a p o o l o f 2 * *(3*n) d i f f e r e n t h u e s . 36 C o l o u r P a l e t t e A p p l i c a t i o n s We h a v e e x p l a i n e d t h e c o l o u r p a l e t t e f u n c t i o n , b u t w h a t i s i t s u t i l i t y ? A s s u m e t h a t a c o l o u r g r a p h i c s s y s t e m h a s a h i g h q u a l i t y m o n i t o r t h a t i s c a p a b l e of d i s p l a y i n g 4096 d i f f e r e n t hues i n e a c h o f i t s p i x e l s . I f one w a n t e d t o be a b l e t o d i s p l a y a l l c o l o u r s a t o n c e , e a c h p i x e l w o u l d r e q u i r e 12 a t t r i b u t e b i t s . I n a h i g h r e s o l u t i o n s y s t e m t h i s c a n be an e x c e s s i v e amount of memory. The c o l o u r p a l e t t e p r o v i d e s a c o m p r o m i s e s o l u t i o n i n t h a t a l l c o l o u r s a r e s t i l l a v a i l a b l e b u t n o t a t t h e same t i m e , a n d t h e number of b i t s f o r e a c h p i x e l i s r e d u c e d t o l o g m. A n o t h e r i m p o r t a n t a p p l i c a t i o n o f t h e c o l o u r p a l e t t e i s i n c o l o u r g r a p h i c s a n i m a t i o n . G i v e n a c o m p l e x i m a g e one c a n d r a m a t i -c a l l y a l t e r i t s a p p e a r a n c e by s i m p l y w r i t i n g d i f f e r e n t w o r d s i n t o t h e c o l o u r p a l e t t e r e g i s t e r s . R a p i d a n d s t r i k i n g a n i m a t i o n s e -q u e n c e s a r e p o s s i b l e b e c a u s e u p d a t i n g a r e g i s t e r i s a q u i c k o p e r a t i o n . W i t h o u t a c o l o u r p a l e t t e t h e a t t r i b u t e s o f e a c h p i x e l i n t h e v i d e o b i t map w o u l d h a v e t o be r e w r i t t e n . The C o l o u r P a l e t t e M a r k e t P o t e n t i a l A new a n d i m p o r t a n t s t a n d a r d f o r t h e e x c h a n g e o f t e x t and g r a p h i c a l i n f o r m a t i o n h a s r e c e n t l y e m e r g e d . The N o r t h A m e r i c a n P r e s e n t a t i o n - L e v e l - P r o t o c o l S y n t a x ( N A P L P S ) e v o l v e d f r o m t h e C a n a d i a n T e l i d o n s y s t e m and has been s t a n d a r d i z e d by t h e A m e r i c a n N a t i o n a l S t a n d a r d s I n s t i t u t e ( A N S I ) a n d t h e C a n a d i a n S t a n d a r d s 37 A s s o c i a t i o n ( C S A ) [CSA 82, CBEMA 8 3 ] . Many p e o p l e f e e l t h a t N APLPS w i l l p l a y a v e r y i m p o r t a n t r o l e i n t h e n e a r f u t u r e by e n c o u r a g i n g t h e p r o d u c t i o n o f i n f o r m a t i o n - b a s e d p r o d u c t s [ L A X 8 3 ] . T h i s i n t u r n w i l l make T e l i d o n - l i k e s y s t e m s more p a l a t a b l e t o t h e g e n e r a l p u b l i c . One of t h e many r i c h and p o w e r f u l f e a t u r e s o f NAPLPS i s i t s t r e a t m e n t o f c o l o u r . N A P LPS s u p p o r t s t h r e e d i f f e r e n t c o l o u r modes. Mode 0 i s t h e most p r i m i t i v e i n t h a t a c o l o u r i s s e l e c t e d by s p e c i f y i n g t h e i n t e n s i t i e s o f i t s t h r e e p r i m a r y c o l o u r s . Modes 1 and 2 h o w e v e r make use o f a c o l o u r p a l e t t e . NAPLPS s u p p o r t s a d -v a n c e d a n i m a t i o n by p r o v i d i n g a command c a l l e d BLINK t h a t c a n be p r o g r a m m e d t o p e r i o d i c a l l y c h a n g e t h e c o l o u r p a l e t t e r e g i s t e r c o n t e n t s . J i m F l e m i n g , one o f t h e a u t h o r s o f N A P L P S , s t a t e s i n a r e v i e w o f NAPLPS t h a t a m a j o r d r a w b a c k o f modes 1 a n d 2 i s t h e s p e c i a l i z e d c o l o u r p a l e t t e h a r d w a r e t h a t i s r e q u i r e d [ F L E M I N G 8 3 ] . He f u r t h e r g o e s on t o s a y , " T h i s d r a w b a c k was k n o w n a t t h e t i m e t h a t NAPLPS was d e s i g n e d , b u t i t was d e t e r m i n e d t h a t b e c a u s e o f t h e i n c r e d i b l e s p e c i a l e f f e c t s t h a t c a n be a c h i e v e d u s i n g t h e s e modes t h e y w o u l d be i n c l u d e d " . T h i s s t r o n g l y i m p l i e s t h a t a i n e x p e n s i v e s i n g l e c h i p c o l o u r p a l e t t e w o u l d have t r e m e n d o u s mar-k e t p o t e n t i a l , p a r t i c u l a r l y when T e l i d o n l i k e s y s t e m s , f u e l e d by NAPLPS, a p p e a r i n t h e c o n s u m e r m a r k e t . 38 The C u r r e n t MPR C o l o u r P a l e t t e I m p l e m e n t a t i o n M i c r o t e l P a c i f i c R e s e a r c h L t d . h a s a d i s c r e t e c o m p o n e n t c o l o u r p a l e t t e i n i t s c u r r e n t T e l i d o n s y s t e m . S c h e m a t i c s f o r the c i r c u i t and a b l o c k d i a g r a m s h o w i n g how i t f i t s i n t o the o v e r a l l s y s t e m c a n be f o u n d i n A p p e n d i x A. T h i s c o l o u r p a l e t t e c o n t a i n s a t l e a s t 14 i n t e g r a t e d c i r c u i t s , o c c u p i e s a p p r o x i m a t e l y 9 cm by 10 cm of p r i n t e d c i r c u i t b o a r d s p a c e , and c o s t s about 37 d o l l a r s f o r p a r t s . I t i s d i f f i c u l t t o o b t a i n an e s t i m a t e o f t h e l a b o r c o s t s f o r a s s e m b l y b e c a u s e t h e c o l o u r p a l e t t e i s p a r t o f a l a r g e r s ys tem. A c o n s i d e r a b l e a m ount of t h e c i r c u i t r y i s a s s o c i a t e d w i t h m u l t i p l e x i n g t h e a d d r e s s b u s e s o f t h e m i c r o p r o c e s s o r , w h i c h w r i t e s t h e d e s i r e d c o l o u r s i n t o t h e p a l e t t e r e g i s t e r s , and t h e CRT c o n t r o l l e r , w h i c h c y c l e s t h r o u g h t h e v i d e o b i t map and p r e -s e n t s the c o n t e n t s of e ach p i x e l to the p a l e t t e . M u l t i p l e x i n g i s r e q u i r e d b e c a u s e t h e r e g i s t e r a r r a y i s f o r m e d f r o m s t a n d a r d s i n g l e p o r t memory. We w i l l l a t e r s e e t h a t o u r i m p l e m e n t a t i o n u s e s d u a l p o r t r e g i s t e r s and t h e r e f o r e e l i m i n a t e s t h e n e e d f o r m u l t i p l e x i n g c i r c u i t r y . In a d d i t i o n to i n c r e a s i n g the c i r c u i t c o m p l e x i t y , m u l t i p l e x -i n g b e t w e e n t h e p r o c e s s o r and t h e CRT c o n t r o l l e r f o r c e s a l l p a l e t t e r e g i s t e r u p d a t e s t o o c c u r d u r i n g t h e v e r t i c a l b l a n k i n g p e r i o d of the m o n i t o r . Our i m p l e m e n t a t i o n p e r m i t s the p r o c e s s o r t o u p d a t e the p a l e t t e r e g i s t e r s at any t i m e and a s y n c h r o n o u s l y to t h e CRT c o n t r o l l e r o p e r a t i o n . 39 The a d v a n t a g e s o f a s i n g l e c h i p c o l o u r p a l e t t e c i r c u i t a r e n u m e r o u s . I t w o u l d s i g n i f i c a n t l y r e d u c e t h e MPR T e l i d o n p a r t c o u n t , p r i n t e d c i r c u i t b o a r d a r e a , a n d a s s e m b l y c o s t . I n l a r g e e n o u g h v o l u m e s i t w o u l d p r o b a b l y a l s o r e d u c e t h e p a r t s c o s t . A s i n g l e c h i p c o l o u r p a l e t t e w o u l d h e l p p r o t e c t MPR's d e s i g n f r o m b e i n g c o p i e d by a c o m p e t i t o r . I t c o u l d a l s o i m p r o v e t h e s y s t e m p e r f o r m a n c e as d e m o n s t r a t e d by t h e m u l t i p l e x i n g i s s u e d i s c u s s e d e a r l i e r . F i n a l l y , a s i n g l e c h i p c o l o u r p a l e t t e has s t r o n g m a r k e t p o t e n t i a l as a p r o d u c t by i t s e l f . C o l o u r P a l e t t e S p e c i f i c a t i o n s As shown i n F i g u r e 8 t h e d e s i r e d c o l o u r p a l e t t e c o n t a i n s 16 r e g i s t e r s , e a c h 12 b i t s w i d e . S e p a r a t e a d d r e s s b u s e s and c o n t r o l c i r c u i t r y a r e p r o v i d e d f o r t h e CRT c o n t r o l l e r and t h e p r o c e s s o r . The i m p o r t a n t s p e c i f i c a t i o n s w i l l be s u m m a r i z e d h e r e . M o r e d e -t a i l e d t i m i n g s p e c i f i c a t i o n s and s i g n a l d e f i n i t i o n s a r e a v a i l a b l e i n A p p e n d i x B [SCHMIING 8 2 ] . On t h e v i d e o s i d e t h e i m p o r t a n t n u m b e r i s t h e p i x e l c l o c k c y c l e t i m e w h i c h i s 180 n s e c . T h i s means t h a t t h e p a l e t t e m u s t be c a p a b l e o f a c c e p t i n g p i x e l d a t a f r o m t h e CRT c o n t r o l l e r a n d g e n e r a t i n g t h e a p p r o p r i a t e a n a l o g v o l t a g e s a t a r a t e of 5.56 MHz. A l s o i m p o r t a n t i s t h e DAC s e t t l i n g t i m e , w h i c h i s d e f i n e d as t h e t i m e r e q u i r e d f o r t h e a n a l o g o u t p u t t o r e a c h w i t h i n 1/2 LSB f r o m i t s f i n a l v a l u e , and e q u a l s 50 n s e c . 40 A0-A3 CS' ,A4,A5 E,R/W control s i g n a l gen. processor data hns D0-D4 data buffer processor address decoder data buffer data buffer 16 x 4 dual port RAM 16 x 4 dual port RAM 16 x 4 dual port RAM video address decoder X~ P0-P3 p i x e l data p i x e l clock Vref p i p e l i n e r e g i s t e r DAC p i p e l i n e r e g i s t e r red * DAC green p i p e l i n e r e g i s t e r DAC blue F i g u r e 8. C o l o u r P a l e t t e B l o c k Diagram 41 On t h e p r o c e s s o r s i d e t h e i m p o r t a n t n u m b e r i s t h e r e a d a nd w r i t e c y c l e t i m e w h i c h i s 500 n s e c . T h i s means t h a t t h e p a l e t t e r e g i s t e r s m u s t be c a p a b l e o f b e i n g r e a d o r w r i t t e n a t a r a t e o f 2 MHz. R e a d d a t a m u s t be v a l i d no l a t e r t h a n 150 n s e c a f t e r t h e r i s i n g p r o c e s s o r c l o c k e d g e . W r i t e d a t a i s v a l i d a t w o r s t c a s e f o r 20 n s e c p r i o r t o t h e f a l l i n g e d g e o f t h e p r o c e s s o r c l o c k . C r i t i c a l t i m i n g c l e a r l y o c c u r s on t h e v i d e o s i d e b e c a u s e o f t h e h i g h e r c l o c k r a t e a n d t h i s f a c t i s t a k e n i n t o a c c o u n t i n t h e d e s i g n . 42 CHAPTER 4: THE ISO-CMOS TECHNOLOGY An O v e r v i e w o f CMOS C o m p l e m e n t a r y m e t a l - o x i d e - s i l i c o n (CMOS) t e c h n o l o g y i s d i s -t i n g u i s h e d f r o m o t h e r MOS t e c h n o l o g i e s by t h e p r e s e n c e o f b o t h p an d n c h a n n e l d e v i c e s . F o r many y e a r s i t was t h o u g h t t h a t CMOS was i n h e r e n t l y s l o w and w a s t e f u l o f c h i p a r e a and t h e r e f o r e d i d n o t j u s t i f y i t s e x t r a p r o c e s s i n g c o m p l e x i t y e x c e p t f o r t h e f e w c i r c u i t s t h a t r e q u i r e d i t s s p e c i a l p r o p e r t i e s [POSA 8 1 ] . T h i s v i e w p o i n t became a s e l f - f u l f i l l i n g p r o p h e c y s i n c e t h e m a j o r i t y o f r e s e a r c h e f f o r t was s p e n t on i m p r o v i n g n c h a n n e l MOS (nMOS) t e c h n o l o g i e s . Two m a i n f a c t o r s l e d t o a r e n e w e d i n t e r e s t i n CMOS. F i r s t , a s nMOS d e n s i t i e s i n c r e a s e d e x c e s s i v e p o w e r d i s s i p a t i o n became a p r o b l e m . S e c o n d , t h e p r o c e s s i n g c o m p l e x i t y o f t h e h i g h p e r f o r m a n c e nMOS t e c h n o l o g i e s a p p r o a c h e d o r e x c e e d e d t h a t o f CMOS. S u b s e q u e n t r e s e a r c h h a s made CMOS as f a s t as nMOS a n d a l m o s t as d e n s e . CMOS h a s many a d v a n t a g e s o v e r nMOS. The p r e s e n c e o f a com-p l e m e n t a r y g a t e g i v e s t h e d e s i g n e r a n e x t r a d e g r e e o f f r e e d o m . The t r a d i t i o n a l CMOS d e s i g n a p p r o a c h u s e s one p c h a n n e l d e v i c e f o r e v e r y n c h a n n e l d e v i c e a s s h o w n i n F i g u r e 9. T h i s t y p e o f CMOS c i r c u i t consumes v e r y l i t t l e s t a t i c power b e c a u s e when one d e v i c e i s on i t s c o m p l e m e n t i s o f f a n d t h e r e i s t h u s n e v e r a DC p a t h b e t w e e n Vdd and V s s . 4 3 F i g u r e 9. E x a m p l e s o f Tr u e C o m p l e m e n t a r y CMOS C i r c u i t s CMOS c i r c u i t s do h o w e v e r d i s s i p a t e p o w e r d u r i n g l o g i c t r a n s i t i o n s b e c a u s e e n e r g y i s r e q u i r e d t o c h a r g e a n d d i s c h a r g e c a p a c i t a n c e s , a n d b e c a u s e t h e r e i s a b r i e f t i m e d u r i n g t h e s w i t c h i n g c y c l e when c u r r e n t c a n f l o w f r o m Vdd t o Vss as shown i n F i g u r e 10. H i g h s p e e d CMOS c i r c u i t s d i s s i p a t e a b o u t as much power a s a n e q u i v a l e n t nMOS c i r c u i t . I n g e n e r a l CMOS r e s u l t s i n a p o w e r s a v i n g s b e c a u s e i t i s r a r e f o r a c o m p l e x c i r c u i t t o be c o m p l e t e l y a c t i v e a t a l l t i m e s . T h i s i s e s p e c i a l l y t r u e f o r memory c i r c u i t s . 44 Vout F i g u r e 10. CMOS I n v e r t e r C h a r a c t e r i s t i c s One o f t h e d i s a d v a n t a g e s o f t r u e c o m p l e m e n t a r y c i r c u i t s i s t h e d e c r e a s e i n e f f e c t i v e c h i p d e n s i t y c a u s e d by t h e e x t r a p c h a n n e l d e v i c e s . To a l l e v i a t e t h i s p r o b l e m many d e s i g n e r s u s e d y n a m i c c i r c u i t r y i n w h i c h p c h a n n e l d e v i c e s a r e u s e d s p a r i n g l y f o r p r e c h a r g i n g b u s e s ( s e e F i g u r e 1 1 ) [ P O S A 8 1 ] . To a v o i d g l i t c h e s I n d y n a m i c c i r c u i t s one must w a i t u n t i l a l l i n p u t s have s t a b i l i z e d b e f o r e a c t i v a t i n g t h e g a t e . F o u r p h a s e c l o c k s a r e o f t e n u s e d t o d e a l w i t h t h e g l i t c h p r o b l e m , h o w e v e r , a new a p p r o a c h c a l l e d d o m i n o l o g i c has been s u g g e s t e d [KRAMBECK 8 2 ] . 4 5 vdd (AB)+CtD F i g u r e 11. Example o f a Dynamic CMOS C i r c u i t A n o t h e r i m p o r t a n t a d v a n t a g e o f CMOS i s t h a t t h e r i s e a n d f a l l t i m e s o f a g a t e do n o t d e p e n d on t h e r a t i o o f i t s p u l l - u p t o p u l l - d o w n t r a n s i s t o r s i z e s . W i t h r a t i o e d l o g i c , s u c h as nMOS, one d e s i r e s a l a r g e p u l l - u p r e s i s t a n c e f o r r a p i d p u l l - d o w n , a n d a s m a l l p u l l - u p r e s i s t a n c e f o r r a p i d p u l l - u p . The d e s i g n e r m u s t t h e r e f o r e t r a d e o f f r i s e t i m e f o r f a l l t i m e w i t h t h e r e s u l t t h a t n e i t h e r i s o p t i m a l . CMOS d o e s n o t s u f f e r f r o m t h i s t r a d e o f f s i n c e a s w i t c h r a t h e r t h a n a r e s i s t o r i s u s e d t o p u l l - u p t h e o u t p u t . 46 CMOS i s more immune t o n o i s e t h a n nMOS b e c a u s e s i g n a l s s w i n g f u l l y f r o m Vdd t o V s s . A l o w l e v e l nMOS o u t p u t , on t h e o t h e r h a n d , i s d e t e r m i n e d by t h e r e s i s t a n c e r a t i o o f i t s p u l l - u p t o p u l l - d o w n t r a n s i s t o r s and t y p i c a l l y o n l y r e a c h e s 0.3 v o l t s . A l t h o u g h an nMOS t r a n s i s t o r i s a b i d i r e c t i o n a l s w i t c h , i t i s mo r e e f f i c i e n t a t p u l l i n g a h i g h n o d e t o g r o u n d t h a n a l o w n o d e t o Vdd. An nMOS d e v i c e w i l l t u r n o f f when i t s g a t e v o l t a g e i s no l o n g e r g r e a t e r t h a n one t h r e s h o l d above i t s s o u r c e v o l t a g e . Thus t h e s o u r c e c a n o n l y be p u l l e d t o w i t h i n one t h r e s h o l d o f Vdd. F o r a s i m i l a r r e a s o n pMOS t r a n s i s t o r s a r e b e t t e r s u i t e d t o p u l l i n g l o w nodes h i g h . By c o n n e c t i n g an nMOS t r a n s i s t o r I n p a r a l l e l w i t h a pMOS t r a n s i s t o r and d r i v i n g t h e i r g a t e s w i t h r e v e r s e p o l a r i t i e s o ne o b t a i n s a v e r y e f f i c i e n t s w i t c h t h a t i s u s u a l l y r e f e r r e d t o as a t r a n s m i s s i o n g a t e . CMOS t r a n s m i s s i o n g a t e s r e d u c e many of t h e d e s i g n t r a d e o f f s i n h e r e n t t o nMOS o n l y s w i t c h e s . CMOS i s n o t w i t h o u t i t s d i s a d v a n t a g e s . The m a i n d i s a d v a n t a g e i s t h e d e c r e a s e i n f u n c t i o n a l d e n s i t y . As s t a t e d e a r l i e r t h e d e n s i t y h a s b e e n i m p r o v e d t h r o u g h t h e u s e o f d y n a m i c c i r c u i t r y and f e w e r p c h a n n e l d e v i c e s . E a r l y m e t h o d s o f i s o l a t i n g t h e n and p c h a n n e l d e v i c e s , s u c h as n+ a n d p+ g u a r d r i n g s , a l s o w a s t e d c h i p a r e a . New CMOS t e c h n o l o g i e s r e d u c e t h i s w a s t e d a r e a t h r o u g h t h e u s e o f o x i d e i s o l a t i o n [MITEL 8 1 ] . CMOS c i r c u i t s c a n s u f f e r f r o m l a t c h - u p w h i c h h a s b e e n d e -f i n e d as a s t a t e o f h i g h e x c e s s c u r r e n t a c c o m p a n i e d by a c o l -l a p s i n g o r l o w - v o l t a g e c o n d i t i o n [ E S T R E I C H 8 2 ] . A CMOS c i r c u i t 47 h a s n u m e r o u s SCR l i k e p - n - p - n p a t h s t h a t c a n c o n d u c t g i v e n t h e f o l l o w i n g c o n d i t i o n s . The e m i t t e r - b a s e j u n c t i o n s m u s t b e c o m e f o r w a r d b i a s e d , t h e p r o d u c t o f t h e n - p - n a n d p-n-p t r a n s i s t o r g a i n s must e x c e e d u n i t y , and t h e power s u p p l y must be c a p a b l e o f s o u r c i n g enough c u r r e n t t o m a i n t a i n l a t c h up. L a t c h - u p i s u s u a l l y c a u s e d by a t r a n s i e n t s u c h a s o c c u r s d u r i n g p o w e r up. S e v e r a l p r o c e s s i n g t e c h n i q u e s a r e a v a i l a b l e f o r r e d u c i n g t h e l a t c h - u p t e n d e n c y . T h e s e i n c l u d e g o l d d o p i n g t o r e d u c e m i n o r i t y c a r r i e r l i f e t i m e s , d i e l e c t r i c i s o l a t i o n s u c h as s i l i c o n on s a p p h i r e (SOS), and b u r i e d n+ and p+ l a y e r s w h i c h h e l p r e d u c e t h e p a r a s i -t i c t r a n s i s t o r g a i n . S e v e r a l t e c h n i q u e s a r e a l s o a v a i l a b l e t o t h e IC d e s i g n e r f o r r e d u c i n g l a t c h - u p and t h e s e w i l l be d i s c u s s e d i n a l a t e r s e c t i o n . T r u e c o m p l e m e n t a r y CMOS c i r c u i t s have h i g h e r i n p u t c a p a c i -t a n c e s t h a n t h e i r nMOS c o u n t e r p a r t s b e c a u s e b o t h a p a n d an n c h a n n e l g a t e m u s t be d r i v e n . S i n c e t h e p t y p e d e v i c e s a r e o f t e n made t w i c e a s l a r g e a s t h e n t y p e d e v i c e s t h e i n p u t c a p a c i t a n c e c a n be 3 t i m e s g r e a t e r . G i v e n t h i s f a c t one w o u l d e x p e c t CMOS t o be s l o w e r t h a n nMOS. T h i s i s n o t t h e c a s e b e c a u s e t h e e x t r a c a p a c i t a n c e i s o f f s e t by t h e a b i l i t y o f CMOS t o p u l l - u p a n d p u l l -down h a r d e r t h a n nMOS [KRAMBECK 8 2 ] . T h e r e a r e a w i d e v a r i e t y o f CMOS t e c h n o l o g i e s w h i c h i s one r e a s o n t h a t s i m p l i f i e d d e s i g n r u l e s were f i r s t p r e p a r e d f o r nMOS. T h e i r m o s t i m p o r t a n t d i s t i n g u i s h i n g f e a t u r e s a r e t h e s t a r t i n g s u b s t r a t e t y p e , t h e g a t e m a t e r i a l , t h e number and t y p e o f i n t e r -c o n n e c t i o n l a y e r s , and t h e n and p c h a n n e l i s o l a t i o n method. 48 I f one s t a r t s w i t h an n t y p e s u b s t r a t e t h e n a p w e l l m u s t be c r e a t e d t o f o r m t h e n c h a n n e l d e v i c e s , a n d v i c e v e r s a f o r a p t y p e s u b s t r a t e . T h e r e i s c o n s i d e r a b l e d e b a t e o v e r t h e r e l a t i v e m e r i t s o f p a n d n w e l l CMOS [GULETT 8 1 ] . P r o p o n e n t s o f n w e l l CMOS p o i n t o u t t h a t a g r e a t e r p e r c e n t a g e o f n c h a n n e l t r a n s i s -t o r s a r e u s e d b e c a u s e o f t h e i r h i g h e r p e r f o r m a n c e , and t h e r e f o r e t h e t e c h n o l o g y s h o u l d be t a i l o r e d t o t h e i r o p t i m i z a t i o n , as i s n w e l l CMOS [CHWANG 8 1 ] . A n o t h e r p o t e n t i a l a d v a n t a g e of n w e l l CMOS i s t h a t t h e w a f e r s c a n be p r o c e s s e d on a n nMOS f a b r i c a t i o n l i n e s i n c e t h e y b o t h s t a r t w i t h t h e same s u b s t r a t e t y p e . T w i n t u b CMOS s i d e s t e p s t h e i s s u e by c r e a t i n g b o t h n a n d p w e l l s i n l i g h t l y d o p e d e p i on an n+ s u b s t r a t e [ P A R R I L L O 8 0 ] . T w i n t u b CMOS i s c l a i m e d t o o p t i m i z e b o t h t h e n a n d p c h a n n e l d e v i c e s a n d t h e n+ s u b s t r a t e h e l p s r e d u c e l a t c h - u p . A f i n a l a p p r o a c h c a l l e d s i l i c o n -o n - s a p p h i r e (SOS) g r o w s a t h i n l a y e r o f s i l i c o n on an i n s u l a t i n g s u b s t r a t e [KINOSHITA 8 1 ] . T h i s r e s u l t s i n l o w p a r a s i t i c c a p a c i -t a n c e s a n d e l i m i n a t e s l a t c h - u p . The m a i n d i s a d v a n t a g e s o f CMOS SOS a r e i t s h i g h c o s t and l o w y i e l d . E a r l y CMOS t e c h n o l o g i e s u s e d m e t a l g a t e s w h i l e t h e m o r e a d v a n c e d t e c h n o l o g i e s use p o l y s i l i c o n g a t e s . A p o l y s i l i c o n g a t e p r o c e s s r e s u l t s i n s e l f a l i g n e d s o u r c e s and d r a i n s w h i c h r e d u c e s p a r a s i t i c c a p a c i t a n c e s [GLASER 7 7 ] . Some CMOS t e c h n o l o g i e s u s e a s i n g l e m e t a l and two p o l y s i l i -c o n l a y e r s f o r i n t e r c o n n e c t [LONDON 8 3 ] . C a p a c i t a n c e b e t w e e n t h e tw o p o l y s i l i c o n l a y e r s i s h i g h w h i c h c a n be a n a d v a n t a g e I f one r e q u i r e s c a p a c i t o r s i n a d e s i g n . The s e c o n d l a y e r o f p o l y s i l i c o n 4 9 i s s o m e t i m e s made h i g h l y r e s i s t i v e f o r a p p l i c a t i o n s s u c h as memory a r r a y s t h a t r e q u i r e h i g h d e n s i t y p u l l - u p s . O t h e r CMOS t e c h n o l o g i e s u s e a s i n g l e p o l y s i l i c o n a n d t w o m e t a l l a y e r s f o r i n t e r c o n n e c t . T h i c k e r o x i d e i s r e q u i r e d t o i s o l a t e t h e m e t a l l a y e r s a n d t h e r e f o r e t h e y do n o t f o r m h i g h v a l u e c a p a c i t o r s . D o u b l e m e t a l p r o c e s s e s may be b e t t e r s u i t e d f o r h i g h p e r f o r m a n c e a p p l i c a t i o n s b e c a u s e m e t a l i s a b e t t e r c o n d u c t o r t h a n p o l y s i l i c o n . The f i n a l m a j o r d i s t i n g u i s h i n g f e a t u r e b e t w e e n CMOS t e c h n o l -o g i e s i s t h e method u s e d t o i s o l a t e t h e n and p c h a n n e l d e v i c e s . As s t a t e d e a r l i e r , t h e n e w e r t e c h n o l o g i e s u s e o x i d e i s o l a t i o n [ M I T E L 81] w h i l e o t h e r s u s e n + a n d p+ g u a r d r i n g s [ S M I T H 8 3 ] , ISO-CMOS F a b r i c a t i o n and P a r a m e t r i c D a t a The t e c h n o l o g y we had t h e o p p o r t u n i t y t o work w i t h i s GTE's ISO-CMOS. ISO-CMOS i s a 5 m i c r o n , p w e l l , p o l y s i l i c o n g a t e p r o -c e s s , w i t h one m e t a l and two p o l y s i l i c o n l e v e l s o f i n t e r c o n n e c t , a n d o x i d e i s o l a t i o n . A p p e n d i x C c o n t a i n s a s e r i e s o f d i a g r a m s s h o w i n g t h e f a b r i c a t i o n s e q u e n c e [SIMMONS 8 2 ] . A c o n d e n s e d v e r -s i o n i s s h o w n i n F i g u r e 12. ISO-CMOS i s an 8 mask p r o c e s s w i t h a d d i t i o n a l m a s k s r e q u i r e d i f t h e s e c o n d p o l y s i l i c o n l a y e r i s u s e d . R a t h e r t h a n e x p l a i n e a c h d i a g r a m I n d e t a i l I h a v e d e c i d e d t o l e t them s p e a k f o r t h e m s e l v e s . An I n t r o d u c t i o n t o f a b r i c a t i o n p r o c e d u r e s i s a v a i l a b l e [GLASER 7 7 ] . 50 DEFINE ACTIVE nwm The diagrams (right) show the process stages for Mitel's ISO-CMOS process. This process uses a total of 8 masks. P-type transistors are formed directly in the N-type substrate which will be biassed to the most positive voltage used (VDD) N-type transistors are formed in P-type wells form-ed by inverting the N-type substrate with a high concentration of P-type dopant. The P-well will be biassed to the most negative supply voltage (Vss)- The process has self-aligning gates, as the polysilicon gate can be used to mask the source/ drain diffusion areas. Interconnect between the transistors is primarily with metal. However, the polysilicon is used as a second interconnection medium, greatly facilitating interconnect design. Isolation to prevent the formation of spurious transistors in the field-oxide region is achieved by using a very thick, recessed oxide. The 5-micron design rules coupled with oxide-isolation and self-aligning gates gives the pro-cess major speed and packing-density advan-tages over metal-gate CMOS. While maintaining similar power dissipation characteristics to metal-gate CMOS, packing densities approach those of NMOS in similar geometries and speeds are comparable with low-power-Schottky tech-nology. • - -*JN4-WEZBEZq*—wi- ll SUISTAATE DEFINE P - W E U DIFFUSIONS RESIST IMPLANT M K U worn F IELD OXIDE P -WELL 6 R 0 W DATE OXIDE OEPOSIT P O L T S I U C O N DEF INE P O L T S I U C O N M E M P O L T S I U C O N E T C H P O L Y S I L I C O N DEF INE N-TYPE D I F FUS ION A R E A S N D I F FUS ION DEF INE P-TYPE D IFFUSION A R E A S t D I F FUS ION DEPOSIT OXIDE D E F I N E CONTACT W I N D O W S E T C H CONTACT W I N D O W S DEPOSIT M E T A L DEF INE M E T A L A L U M I N U M 3 E T C H M E T A L DEPOSIT S C R A T C H PROTECTION N S U B S T R A T E F i g u r e 12. ISO-CMOS F a b r i c a t i o n S equence [MITEL 81] 51 D e t a i l e d ISO-CMOS p r o c e s s p a r a m e t e r s and d e v i c e c h a r a c t e r i s -t i c s w e r e n o t a v a i l a b l e t o u s . The d a t a we h a v e i s p r e s e n t e d i n T a b l e s I a n d I I . N o t e : l a m b d a = 2.5 m i c r o n s Component | + p o l y w i r e n j u n c t i o n p j u n c t i o n m e t a l p o l y g a t e C a p a c i t a n c e p F / l a m b d a * * 2 1.5 x 10**-4 2.1 x 10**-3 1.3 x 10**-3 1.2 x 10**-4 2.6 x 10**-3 T a b l e I . ISO-CMOS C a p a c i t a n c e D a t a Component | R e s i s t i v i t y o h m s / s q u a r e n p o l y p p o l y n a c t i v e p a c t i v e m e t a l 25 50 12 100 0.023 T a b l e I I . ISO-CMOS R e s i s t i v i t y D a t a ISO-CMOS D e s i g n C o n s t r a i n t s D e s i g n c o n s t r a i n t s i n c l u d e t h e d e s i g n r u l e s , t e c h n i q u e s f o r a v o i d i n g l a t c h - u p , f a n - o u t l i m i t a t i o n s , and m o b i l i t y c o m p e n s a -t i o n . T a b l e I I I l i s t s t h e d e s i g n r u l e s and F i g u r e 13 d e m o n s t r a t e s t h e m g r a p h i c a l l y w i t h t h e l a y o u t o f a n i n v e r t e r t h a t h a s t w o e n a b l e s i g n a l s . 52 N o t e s : - a l l d i m e n s i o n s a r e i n lambdas ( = 2.5 m i c r o n s ) - x means no r u l e Minimum S p a c i n g R u l e s | A c t i v e | P o l y l | P o l y 2 | M e t a l | Cut + + + + + A c t i v e 2 1 X X 2 P o l y l 1 2 X X 2 P o l y 2 X X 2 X 2 M e t a l X X X 2 2 Cut 2 2 2 2 2 Minimum O v e r l a p R u l e s | A c t i v e | P o l y l | P o l y 2 | M e t a l | Cut + + + + +  A c t i v e X X X 0 1 P o l y l 1.6 X X 0 1 P o l y 2 X X X 0 1.6 M e t a l X 0 -.6 X 1 Minimum W i d t h R u l e s | A c t i v e | P o l y l | P o l y 2 | M e t a l | Cut | 2 | 2 | 2 | 2 | 2 Minimum O v e r l a p o f A c t i v e b y : | N+ | P+ | P w e l l | + + + + I I - * | 1.4 | 2 | M i s c e l l a n e o u s N+ A c t i v e t o P+ A c t i v e = N+ A c t i v e t o P+ A c t i v e = P w e l l t o P+ P w e l l t o P w e l l Minimum S p a c i n g R u l e s 7 ( d i f f e r e n t s u b s t r a t e s ) 3 (same p o t e n t i a l and s u b s t r a t e ) 3 ( d i f f e r e n t s u b s t r a t e s ) 8 ( d i f f e r e n t p o t e n t i a l s ) T a b l e I I I . ISO-CMOS S i m p l i f i e d D e s i g n R u l e s [SNYDER 82] 53 Po 1 y 2 M e t a l C u t Pp 1 u s Np 1 u s P o l y l Pwe 1 1 R e t i v e • • • • • • • F i g u r e 13. L a y o u t o f an I n v e r t e r w i t h 2 E n a b l e S i g n a l s [SNYDER 82] 5 4 As T a b l e I I I s h o w s m o s t d e s i g n r u l e s a r e i n t e g e r s a n d a r e t h e r e f o r e e a s y t o l e a r n and remember. The o n l y s l i g h t c o m p l i c a -t i o n a r e t h e r u l e s c o n c e r n i n g t h e s e p a r a t i o n o f p a n d n t y p e t r a n s i s t o r s . F o r t u n a t e l y t h e r e a r e o n l y a f e w o f t h e s e m o r e d i f f i c u l t r u l e s . T h e r e a r e t h r e e d e s i g n g u i d e l i n e s f o r a v o i d i n g l a t c h - u p i n CMOS c i r c u i t s [ E S T R E I C H 8 2 ] . F i r s t , t h e l a t e r a l c u r r e n t w h i c h f l o w s a l o n g p o t e n t i a l l a t c h - u p p a t h s must be m i n i m i z e d . T h i s c a n be a c h i e v e d by w i r i n g a l l o f t h e p w e l l s t o V s s v i a a p+ c o n t a c t and a m e t a l s t r a p . Any i n j e c t e d c h a r g e w i l l be s h u n t e d t o g r o u n d t h r o u g h t h e l o w r e s i s t a n c e p a t h . The n s u b s t r a t e s h o u l d s i m i l a r l y be t i e d t o Vdd w i t h n+ c o n t a c t s . C o n t a c t s do o c c u p y v a l u a b l e s p a c e a n d t h e r e f o r e t h e d e c i s i o n on how many c o n t a c t s t o u s e i s o f t e n n e b u l o u s . One s u g g e s t e d r u l e o f t h u m b s t a t e s : i f t h e r e i s s p a c e , p u t i n a c o n t a c t ; i f t h e r e i s n ' t s p a c e , c o n s i d e r m a k i n g some [GRISWOLD 8 2 ] , A s e c o n d d e s i g n g u i d e l i n e f o r a v o i d i n g l a t c h - u p i s t o r e d u c e t h e p a r a s i t i c r e s i s t a n c e s o f t h e p w e l l a n d s u b s t r a t e r e g i o n s . T h i s r e d u c e s t h e v o l t a g e d r o p a c r o s s t h e e m i t t e r - b a s e j u n c t i o n s o f t h e p a r a s i t i c d e v i c e s f o r a g i v e n l e v e l o f i n j e c t e d c u r r e n t a n d t h u s m a k e s i t h a r d e r t o t u r n t h e d e v i c e s o n. One t e c h n i q u e f o r r e d u c i n g t h e p a r a s i t i c r e s i s t a n c e s i s t o p l a c e as much p+ a n d n+ d i f f u s i o n i n t h e p w e l l and s u b s t r a t e r e g i o n s r e s p e c t i v e l y as i s p o s s i b l e [LIPMAN 8 2 ] . 55 A t h i r d d e s i g n g u i d e l i n e f o r a v o i d i n g l a t c h - u p s u g g e s t s p r u d e n t p l a c e m e n t o f p o t e n t i a l p a r a s i t i c e m i t t e r s . S p a c i n g b e -t w e e n t h e p w e l l p+ and nMOS s o u r c e c o n t a c t s s h o u l d be m i n i m i z e d t o h e l p c o l l e c t m i n o r i t y c a r r i e r s n e a r t h e p a r a s i t i c e m i t t e r - b a s e j u n c t i o n s [ LIPMAN 82, SMITH 8 3 ] . S i m i l a r l y , t h e s p a c i n g b e t w e e n t h e s u b s t r a t e n+ and pMOS d r a i n c o n t a c t s s h o u l d be m i n i m i z e d . We t r i e d t o f o l l o w t h e l a t c h - u p p r e v e n t i o n g u i d e l i n e s as c l o s e l y a s p o s s i b l e t h r o u g h o u t t h e c o l o u r p a l e t t e d e s i g n . The memory c e l l , f o r e x a m p l e , c o n t a i n s f o u r n+ c o n t a c t s a n d f i v e p + c o n t a c t s . F a n - o u t l i m i t a t i o n s a r e a n o t h e r i m p o r t a n t d e s i g n c o n s t r a i n t . C o n s i d e r a l a r g e c a p a c i t i v e b u s t h a t m u s t be d r i v e n w i t h t h e o u t p u t s i g n a l o f a m i n i m u m s i z e d g a t e . The g a t e i s o n l y c a p a b l e o f s o u r c i n g and s i n k i n g a r e l a t i v e l y s m a l l amount o f c u r r e n t . I f we c o n n e c t i t d i r e c t l y t o t h e b u s t h e t i m e t o c h a r g e a n d d i s -c h a r g e t h e b u s w i l l be e x c e s s i v e a n d may d e g r a d e t h e o v e r a l l s y s t e m p e r f o r m a n c e . A b e t t e r a p p r o a c h i s t o b u f f e r t h e s i g n a l w i t h s u c c e s s i v e l y l a r g e r d e v i c e s u n t i l t h e f i n a l d e v i c e i s l a r g e e n o u g h t o o p t i m a l l y d r i v e t h e b u s . E a c h b u f f e r s t a g e h o w e v e r i n t r o d u c e s an a d d i t i o n a l g a t e d e l a y . I t i s t h e r e f o r e i n t u i t i v e l y c l e a r t h a t t h e r e s h o u l d be some o p t i m a l f a n - o u t f a c t o r . I t i s e a s y t o show u s i n g Mead and Conway's s i m p l i f i e d t i m i n g m o d e l t h a t t h e o p t i m a l f a n - o u t f a c t o r i s e (= 2.718) [MEAD 8 0 ] . I n o t h e r w o r d s , e a c h b u f f e r s h o u l d d r i v e a c a p a c i t i v e l o a d t h a t i s 2.718 t i m e s as l a r g e as i t s own g a t e c a p a c i t a n c e . One p r o b l e m 5 6 w i t h u s i n g t h e o p t i m a l f a n - o u t f a c t o r i s t h a t t h e f i n a l b u f f e r i s o f t e n v e r y l a r g e w h i c h r e d u c e s t h e c i r c u i t d e n s i t y . F u t h e r m o r e , n o t a l l p a t h s i n a c i r c u i t a r e c r i t i c a l a n d t h e r e f o r e u s i n g t h e o p t i m a l f a n - o u t r a t i o may n o t i m p r o v e t h e o v e r a l l s y s t e m p e r f o r -m ance u n l e s s s o m e t h i n g i s do n e t o r e d u c e t h e c r i t i c a l p a t h d e l a y s . The most e f f i c i e n t d e s i g n a p p r o a c h i n t e r m s o f c i r c u i t a r e a a n d p e r f o r m a n c e i s t o l o c a t e t h e c r i t i c a l p a t h s a n d t h e n r e d u c e t h e i r d e l a y s w i t h more f a v o r a b l e f a n - o u t s and by t r y i n g d i f f e r e n t c i r c u i t c o n f i g u r a t i o n s . S i m u l a t i o n c a n p l a y an i m p o r t a n t r o l e a t t h i s s t a g e . Due t o t i m e c o n s t r a i n t s we o p t e d f o r a v e r y c o n s e r v a -t i v e d e s i g n a p p r o a c h t h a t s a c r i f i c e d a r e a f o r p e r f o r m a n c e a n d u s e d a n e a r o p t i m a l f a n - o u t r a t i o o f 3 o r 4 t h r o u g h o u t t h e c o l o u r p a l e t t e . S i m u l a t i o n was u s e d t o c h e c k t h e d e l a y on s e v e r a l of t h e c o l o u r p a l e t t e c r i t i c a l p a t h s . M o b i l i t y c o m p e n s a t i o n i s t h e f i n a l d e s i g n c o n s t r a i n t t o be d i s c u s s e d . N c h a n n e l d e v i c e s h a v e a c a r r i e r m o b i l i t y t h a t i s a p p r o x i m a t e l y t w i c e t h a t o f p c h a n n e l d e v i c e s [ S Z E 6 9 ] . T h i s means t h a t f o r a g i v e n s i z e , n c h a n n e l d e v i c e s c a n c h a r g e o r d i s c h a r g e a n o d e a p p r o x i m a t e l y t w i c e a s f a s t as p c h a n n e l d e -v i c e s . T h i s i s one r e a s o n f o r t h e p r o m i n e n c e o f nMOS o v e r pMOS t e c h n o l o g i e s . I t i s d e s i r a b l e t h a t t h e r i s e a n d f a l l t i m e s o f g a t e s be a p p r o x i m a t e l y e q u a l i n d i g i t a l c i r c u i t s . T h i s c a n be a c h i e v e d i n CMOS by m a k i n g t h e p c h a n n e l d e v i c e s t w i c e a s w i d e as t h e n 57 c h a n n e l d e v i c e s . T h e r e a r e o t h e r a d v a n t a g e s t o m a i n t a i n i n g a pMOS t o nMOS w i d t h r a t i o of 2. A s s u m i n g a f a n - o u t o f 3 and w o r s t c a s e p r o c e s s p a r a m e t e r f l u c t u a t i o n s i t h a s b e e n s h o w n t h a t a w i d t h r a t i o o f 2 o p t i m i z e s b o t h t h e p r o p a g a t i o n d e l a y a n d t h e n o i s e m a r g i n [KANG 8 1 ] . F o r t h e s e r e a s o n s , a n d i n k e e p i n g w i t h o u r c o n s e r v a t i v e a p p r o a c h t o d e s i g n , we made e v e r y p c h a n n e l d e v i c e t w i c e as w i d e as i t s n c h a n n e l c o u n t e r p a r t on t h e c o l o u r p a l e t t e . 58 CHAPTER 5: DESIGN TOOLS, PROCEDURES, AND PHILOSOPHY The MPR CMOS D e s i g n System The c o l o u r p a l e t t e c h i p was l a i d o u t w i t h t h e M i c r o t e l P a c i f i c R e s e a r c h CMOS D e s i g n System (CDS) w h i c h i s an a l g o r i t h m i c l a y o u t package w r i t t e n by Warren Snyder [SNYDER 8 2 ] . CDS b e l o n g s t o t h e same c l a s s o f p r o g r a m s as LAP [LANG 79] and PLAP [CHENG 8 2 ] . CDS c o n t a i n s a p p r o x i m a t e l y 2000 l i n e s o f H e w l e t t P a c k a r d BASIC code and runs on the 68000 ba s e d HP98x6 desk t o p c o m p u t e r s . CDS has two main m o d u l e s : the c o m p i l e r and the p l o t t e r . The c o m p i l e r i n p u t s a f i l e c o n t a i n i n g one o r more c e l l l a y o u t s w r i t t e n I n t h e CDS l a n g u a g e a n d o u t p u t s a f i l e c o n t a i n i n g t h e c o r r e s p o n d i n g C I F c o d e . The CDS l a n g u a g e p r o v i d e s t h e s t a n d a r d a l g o r i t h m i c l a y o u t commands s u c h as BOX, WIRE, and the a b i l i t y t o c a l l a c e l l w i t h s u i t a b l e t r a n s f o r m a t i o n s a p p l i e d t o i t . The p l o t t e r p r o g r a m u s e s t h e C I F c o d e g e n e r a t e d by t h e c o m p i l e r t o p l o t t h e d e s i r e d c e l l s . Any c o m b i n a t i o n o f mask l a y e r s c a n be p l o t t e d a nd t h e o u t p u t c a n be d i r e c t e d t o e i t h e r t h e HP98x6 s c r e e n f o r a q u i c k b l a c k and w h i t e c h e c k p l o t , o r t o t h e HP7820 e i g h t p e n p l o t t e r f o r c o l o u r e d h a r d c o p y . The p l o t t e r a l s o has a f i l t e r o p t i o n t h a t p l o t s a l l o f t h e f e a t u r e s o f t h e t o p h i e r -a r c h i c a l l e v e l a nd o n l y t h e b o u n d i n g b o x e s o f t h e c e l l s on t h e n e x t l o w e r l e v e l . T h i s p e r m i t s the d e s i g n e r to see the top l e v e l i n t e r c o n n e c t i o n s w i t h o u t c l u t t e r i n g t h e p l o t w i t h u n n e c e s s a r y d e t a i l , and g r e a t l y r e d u c e s the p l o t t i n g t i m e . 59 CDS has s e v e r a l u n i q u e and u s e f u l f e a t u r e s . F i g u r e 14 shows an e x a m p l e CDS l a y o u t p r o g r a m a n d A p p e n d i x D c o n t a i n s t h e f u l l CDS l a n g u a g e s p e c i f i c a t i o n . The DEFN command p e r m i t s one t o g i v e a m e a n i n g f u l l a b e l t o a node w i t h i n a c e l l . The node c o o r d i n a t e s c a n t h e n be r e t r i e v e d by a c a l l i n g c e l l w i t h t h e LOCN command. I f t h e l o w e r l e v e l c e l l had any t r a n s f o r m a t i o n s a p p l i e d t o i t when i t was c a l l e d t h e y a r e a u t o m a t i c a l l y a p p l i e d t o t h e node c o o r d i -n a t e s , a s one w o u l d e x p e c t . A l g o r i t h m i c l a y o u t , by i t s n a t u r e , does n o t g i v e i m m e d i a t e v i s u a l f e e d b a c k when t h e l a y o u t p r o g r a m i s w r i t t e n . The d e s i g n e r m u s t t h e r e f o r e be v e r y c a r e f u l when c o m p u t i n g t h e c o o r d i n a t e s r e q u i r e d t o i n t e r c o n n e c t t w o c e l l s , p a r t i c u l a r l y a t h i g h e r l e v e l s when much i n f o r m a t i o n i s d i s p l a y e d on t h e p l o t s and t h e d i s p l a y r e s o l u t i o n i s r e d u c e d b e c a u s e of t h e l a r g e r c e l l s i z e s . The DEFN a n d LOCN commands r e m o v e a l l u n c e r -t a i n t y f r o m t h e i n t e r c o n n e c t i o n p r o c e s s . D r a w i n g a w i r e t o t h e c o o r d i n a t e s r e t u r n e d by a LOCN command g u a r a n t e e s t h a t t h e c o n -n e c t i o n h a s b e e n made, a n d d o e s n o t j u s t a p p e a r t o be c o n n e c t e d on t h e p l o t . The d e s i g n e r m u s t o f c o u r s e s t i l l be on g u a r d f o r d e s i g n r u l e v i o l a t i o n s . One d i f f i c u l t y t h a t a r i s e s when u s i n g DEFN and LOCN i s t h a t nodes a r e o n l y a v a i l a b l e t o t h e n e x t h i g h e r h i e r a r c h i c a l l e v e l . T h i s means t h a t t o c a r r y a node t h r o u g h f r o m a l e a f c e l l t o t h e t o p l e v e l one m u s t e x e c u t e a LOCN-DEFN s e -q u e n c e a t e a c h l e v e l , w h i c h c a n become t e d i o u s i n c o m p l e x h i e r a r -c h i e s . We made v e r y l i b e r a l use o f node d e f i n i t i o n s i n t h e c o l o u r p a l e t t e l a y o u t . 60 ! T h i s e x a m p l e d e m o n s t r a t e s some o f t h e more p o w e r f u l ! f e a t u r e s o f CDS. The code shown was e x t r a c t e d f r o m ! t h e t o p most p a l e t t e c e l l d e f i n i t i o n , i ! P l a c e t h e x - d e c o d e r b e n e a t h t h e memory a r r a y ! P l a c e ( " b i g x d c o d " , 1 6 8 , - 8 1 , X d e c o d ) I ! D i m e n s i o n d a t a bus c o o r d i n a t e a r r a y s ; DIM R d p x ( 4 ) , R d p y ( 4 ) ! r e d n i b b l e DIM G d p x ( 4 ) , G d p y ( 4 ) ! g r e e n n i b b l e DIM B d p x ( 4 ) , B d p x ( 4 ) ! b l u e n i b b l e ! ! Get x - d e c o d e r node c o o r d i n a t e s ! FOR 1=0 TO 3 L o c n ( X d e c o d , " r d p " & V A L $ ( I ) , R d p x ( I + l ) , R d p y ( I + l ) ) L o c n ( X d e c o d , " g d p " & V A L $ ( I ) , G d p x ( I + l ) , G d p y ( I + l ) ) L o c n ( X d e c o d , " b d p " & V A L $ ( I ) , B d p x ( I + l ) , B d p y ( I + l ) ) NEXT I ! Get m i s c e l l a n e o u s node c o o r d i n a t e s L o c n ( X d e c o d , " x s i g l e f t " , X s i g x , X s i g y ) L o c n ( X d e c o d , " b t m l e f t " , B t m l e f t x , B t m l e f t y ) L o c n ( X d e c o d , " t o p r g h t " , T o p r g h t x , T o p r g h t y ) ! Check f o r c e l l p l a c e m e n t e r r o r I F B t m l e f t y <> R d p y ( l ) THEN BEEP PRINT "node e r r o r " END IF ! C o n n e c t t h e Vss bus t o t h e x - d e c o d e r P i t c h = l 6 8 B t r i g h t x = B t m l e f t x + ( P i t c h * 6 ) j L a y e r ( M e t a l ) W i r e ( 1 2 , B t m l e f t x - 2 , B t m l e f t y - 1 0 ) X ( B t r i g h t x + 2 ) j FOR 1=0 TO 6 W i r e ( 4 , B t m l e f t x + ( P i t c h * I ) , B t m l e f t y ) D y ( - l O ) NEXT I j ! e t c . . . . F i g u r e 14. CDS L a y o u t P r o g r a m E x a m p l e 61 A n o t h e r n i c e f e a t u r e o f CDS i s t h e BBOX command w h i c h r e -t u r n s t h e b o u n d i n g b o x c o o r d i n a t e s o f a c e l l . T h e s e c o o r d i n a t e s c a n be u s e d t o make a n I n t e l l i g e n t d e c i s i o n on w h e r e t o p l a c e t h e c e l l . T h i s i s e s p e c i a l l y t r u e i f t h e o r i g i n o f t h e c e l l i s n o t a t a w e l l d e f i n e d l o c a t i o n s u c h as i t s l o w e r l e f t hand c o r n e r . S i n c e CDS i s e m b e d d e d i n B A S I C a l l o f B A S I C ' S f e a t u r e s c a n be u s e d i n t h e l a y o u t p r o g r a m . F o r e x a m p l e , we made e x t e n s i v e u s e of s u b s c r i p t e d a r r a y s and math o p e r a t i o n s w i t h i n FOR-NEXT l o o p s . We a l s o made c e l l s s e l f d o c u m e n t i n g by h a v i n g B A S I C p r i n t o u t i m p o r t a n t c o o r d i n a t e p a i r s a n d o t h e r u s e f u l i n f o r m a t i o n a t t h e end o f e a c h c o m p i l a t i o n . E r r o r s o f t e n b e c o m e v e r y o b v i o u s when t h e s e p r i n t o u t s a r e s t u d i e d and c o m p a r e d . CDS h a s s e v e r a l d i s a d v a n t a g e s t h a t a r e c a u s e d by i t s h a r d -w are. One p r o b l e m i s t h a t c o m p i l a t i o n and p l o t t i n g i s r e l a t i v e l y s l o w c o m p a r e d , f o r e x a m p l e , t o t h e P L A P s y s t e m a t UBC. A n o t h e r p r o b l e m i s t h e l i m i t e d f l o p p y d i s k c a p a c i t y w h i c h was a l m o s t e x c e e d e d by t h e c o l o u r p a l e t t e p r o j e c t . P e r h a p s t h e s e d r a w b a c k s a r e n o t so s e r i o u s when one c o n s i d e r s t h e i n d e p e n d e n c e p r o v i d e d by a d e s k t o p c o m p u t e r . The D e s i g n P r o c e d u r e Our d e s i g n p r o c e d u r e c o n s i s t e d o f e i g h t d i s t i n c t s t e p s : s y s t e m s p e c i f i c a t i o n , m o d u l e p a r t i t i o n i n g , f l o o r p l a n d e s i g n , l o g i c d e s i g n , l o a d i n g a n a l y s i s a n d s i m u l a t i o n , s t i c k d i a g r a m 62 l a y o u t , mask l a y o u t , and d a t a e n t r y . U s i n g t h e C h a p t e r 2 d i s c u s -s i o n o f IC d e s i g n as a b a s i s we n o t e t h a t s y s t e m s p e c i f i c a t i o n , m o d u l e p a r t i t i o n i n g , a n d f l o o r p l a n d e s i g n t a k e p l a c e a t t h e f u n c t i o n a l l e v e l o f r e p r e s e n t a t i o n . L o g i c d e s i g n o f c o u r s e t a k e s p l a c e a t t h e l o g i c a l l e v e l o f r e p r e s e n t a t i o n . S t i c k d i a g r a m l a y o u t , l o a d i n g a n a l y s i s , a n d s i m u l a t i o n a r e a t t h e e l e c t r i c a l l e v e l o f r e p r e s e n t a t i o n . M a s k l a y o u t a n d d a t a e n t r y a r e a t t h e p h y s i c a l l e v e l o f r e p r e s e n t a t i o n . V i r t u a l l y a l l o f t h e s y n t h e s i s , v a l i d a t i o n , and e v a l u a t i o n s t e p s were p e r f o r m e d m a n u a l l y . The s y s t e m s p e c i f i c a t i o n was d e v e l o p e d by G. S c h m i i n g u s i n g t h e MPR d i s c r e t e c o m p o n e n t c o l o u r p a l e t t e as a f o u n d a t i o n ( A p p e n d i c e s A & B) [ S C H M I I N G 8 2 ] . T i m i n g c h a r a c t e r i s t i c s a n d s i g n a l d e f i n i t i o n s were c o n s t r a i n e d by t h e MPR T e l i d o n s y s t e m . P a r t i t i o n i n g t h e s y s t e m i n t o m o d u l e s was r e l a t i v e l y e a s y b e c a u s e o f t h e c l e a n c o l o u r p a l e t t e a r c h i t e c t u r e . A l l m o d u l e b o u n d a r i e s a r e d i s t i n c t and i n t e r c o n n e c t i o n s a r e w e l l d e f i n e d . A b l o c k d i a g r a m was shown e a r l i e r i n F i g u r e 8. F l o o r p l a n d e s i g n i n v o l v e d e s t i m a t i n g t h e s i z e o f e a c h m o d u l e and t h e n p l a c i n g them s u c h t h a t t h e i n t e r c o n n e c t i o n com-p l e x i t y a n d c h i p a r e a w e r e m i n i m i z e d . The f l o o r p l a n e v o l v e d as t h e m o d u l e s w e r e l a i d o u t b e c a u s e t h e s i z e e s t i m a t e s o f t e n had t o be u p d a t e d . L o g i c d e s i g n i n v o l v e d i m p l e m e n t i n g e a c h m o d u l e w i t h b o o l e a n g a t e s , and was one o f t h e most i n t e r e s t i n g s t a g e s o f t h e d e s i g n . 63 S e v e r a l c o n f i g u r a t i o n s w e r e t r i e d f o r e a c h m o d u l e i n an a t t e m p t t o m i n i m i z e t h e number o f g a t e s and i n c r e a s e t h e p e r f o r m a n c e . I t was n e c e s s a r y t o c o n s i d e r f a n - o u t c o n s t r a i n t s a t t h i s s t a g e . The o b j e c t i v e o f t h e l o a d i n g a n a l y s i s was t o d e t e r m i n e t h e g a t e s i z e s r e q u i r e d t o a c h i e v e o p t i m a l f a n - o u t s and s t i l l m a i n -t a i n a g o o d c i r c u i t d e n s i t y . T h i s t e n d e d t o be an i t e r a t i v e p r o c e s s b e c a u s e many o f t h e g a t e s were i n t e r r e l a t e d and t h e r e f o r e a c h a n g e I n t h e s i z e o f one g a t e o f t e n r e q u i r e d r e v i s i o n s t o many o t h e r s . A l l g a t e s i z e s were s p e c i f i e d as m u l t i p l e s of a minimum s i z e d i n v e r t e r . M o r e d e t a i l s on t h e l o a d i n g a n a l y s i s w i l l be p r e s e n t e d i n t h e n e x t c h a p t e r . S e v e r a l o f t h e c r i t i c a l p a t h s on t h e c h i p w e r e s i m u l a t e d w i t h S P I C E t o d e t e r m i n e i f t h e d r i v e r s w e r e l a r g e enough t o meet t h e t i m i n g s p e c i f i c a t i o n s . The n e x t s t a g e o f t h e d e s i g n was t o draw s t i c k d i a g r a m s f r o m t h e l o g i c d i a g r a m s . S t i c k d i a g r a m s r e p r e s e n t mask s h a p e s w i t h l i n e s e g m e n t s a n d e a c h mask l a y e r i s a s s i g n e d a u n i q u e c o l o u r [MEAD 8 0 ] . F i g u r e 15 shows a s t i c k d i a g r a m w i t h i t s c o r r e s p o n d i n g l o g i c d i a g r a m . S t i c k d i a g r a m s a r e v e r y c o n v e n i e n t f o r e x p e r i m e n t -i n g w i t h mask t o p o l o g i e s b e c a u s e t h e d e s i g n e r i s n o t b u r d e n e d w i t h d e s i g n r u l e d e t a i l s . S t i c k d i a g r a m s c a n c l e a r l y i n d i c a t e w h e t h e r o r n o t a p r o p o s e d l a y o u t i s e f f i c i e n t i n t e r m s o f a r e a and i n t e r c o n n e c t i o n c o m p l e x i t y . They a l s o q u i c k l y p o i n t out any i m p o s s i b l e r o u t i n g s chemes. B e c a u s e o f t h e i r c o n v e n i e n c e we went t h r o u g h many r e v i s i o n s o f s t i c k d i a g r a m s b e f o r e f i n a l i z i n g t h e d e s i g n . 64 Counter C e l l L=load T=toggle L and T are mutually e x c l u s i v e V Din 1 * L'*T' T D T' t r Dout Vdd Din Vss Vdd Dout Vss T» L' L' F i g u r e 15. S t i c k D i a g r a m E x a m p l e M a s k l a y o u t was a t e d i o u s p r o c e s s o f d r a w i n g t h e mask g e o m e t r y on g r i d p a p e r f r o m t h e s t i c k d i a g r a m s . R e v i s i o n s w e r e d i f f i c u l t b e c a u s e o f t e n t h e e n t i r e l a y o u t h a d t o be r e d r a w n t o a c c o m m o d a t e a s m a l l c h ange. Much e f f o r t was s p e n t t r y i n g t o make t h e c e l l s as s m a l l as p o s s i b l e , p a r t i c u l a r l y f o r t h o s e t h a t were t o be r e p e t i t i v e l y u s e d s u c h as i n t h e memory a r r a y . The e d i t i n g and c o m p a c t i o n o f c e l l s was where we most w i s h e d f o r some f o r m of i n t e r a c t i v e g r a p h i c s l a y o u t t o o l . 65 The f i n a l s t e p , d a t a e n t r y , i n v o l v e d w r i t i n g CDS p r o g r a m s f o r t h e g r i d p a p e r l a y o u t s . T h i s c a n be an e r r o r p r o n e p r o c e s s b e c a u s e one m u s t a c c u r a t e l y d e s c r i b e a c o m p l e x g e o m e t r i c s h a p e w i t h a t e x t u a l l a n g u a g e . The CDS p r o g r a m was t h e n e n t e r e d i n t o t h e c o m p u t e r w i t h a v i s u a l e d i t o r f o r c o m p i l a t i o n and p l o t t i n g . The p l o t s w e r e c h e c k e d f o r c o r r e s p o n d e n c e w i t h t h e h a n d d r a w n l a y o u t s and f o r d e s i g n r u l e v i o l a t i o n s . I f an e r r o r was f o u n d t h e CDS p r o g r a m had t o be e d i t e d and r e c o m p i l e d . The D e s i g n P h i l o s o p h y We a d h e r e d t o a c o n s e r v a t i v e d e s i g n p h i l o s o p h y . A l l c i r c u i t s a r e c o m p l e t e l y s t a t i c w i t h t h e e x c e p t i o n of t h e p r o t o t y p e d i g i t a l t o a n a l o g c o n v e r t e r ( D A C ) . We f e l t t h a t t h i s w o u l d e n s u r e a g r e a t e r p r o b a b i l i t y o f s u c c e s s b e c a u s e s t a t i c d e s i g n r e d u c e s t h e t i m i n g and c i r c u i t c o m p l e x i t y . The d i s a d v a n t a g e of s t a t i c d e s i g n i s t h a t t h e c i r c u i t s a r e l a r g e r . P r e c h a r g i n g a n d d y n a m i c s e n s e a m p l i f i e r s c o u l d n o t be u s e d t o r e d u c e t h e memory c e l l d r i v e r s i z e s . A t t h e t i m e we d i d n o t f e e l t h a t s i z e was a m a j o r c o n -s t r a i n t . As we w i l l s e e , t h e c o l o u r p a l e t t e ' s l a r g e s i z e may have c o n t r i b u t e d t o p r o c e s s i n g y i e l d p r o b l e m s . A l l c i r c u i t s a r e t r u e CMOS, t h a t i s , f o r e v e r y g a t e t h e r e i s b o t h a n n c h a n n e l a n d a p c h a n n e l d e v i c e . We f e l t t h a t t h i s was t h e b e s t way t o k e e p t h e p e r f o r m a n c e h i g h w i t h o u t g o i n g t o d y -n a m i c c i r c u i t r y . The b i d i r e c t i o n a l t r a n s m i s s i o n g a t e s were a l s o c o n s t r u c t e d w i t h b o t h n a n d p c h a n n e l d e v i c e s t o i m p r o v e t h e i r 66 s w i t c h i n g c h a r a c t e r i s t i c s . True CMOS d e s i g n r e s u l t s i n a l a r g e r c h i p b e c a u s e o f two r e a s o n s . F i r s t a nd most o b v i o u s , t w i c e as many t r a n s i s t o r s a r e r e q u i r e d t o i m p l e m e n t e a c h g a t e . S e c o n d , t r u e CMOS r e q u i r e s the complement of e v e r y s i g n a l to be p r e s e n t . T h i s means t h a t e x t r a a r e a i s r e q u i r e d f o r the complement buses and f o r the d r i v e r s t h a t g e n e r a t e the complements. A l l g a t e f a n - o u t s w e r e r e s t r i c t e d t o 3 o r 4. As was d i s -c u s s e d e a r l i e r t h e o p t i m a l f a n - o u t i s e (=2.718), h o w e v e r t h e d e l a y c u r v e i s f a i r l y f l a t n e a r i t s minimum and t h e r e f o r e a f a n -o u t o f 3 t o 4 i s a g o o d d e s i g n c o m p r o m i s e . The l o w f a n - o u t r e s u l t e d i n many of the f i n a l d r i v e r s b e i n g q u i t e l a r g e . C o n t a c t s f r o m V s s t o t h e p - w e l l s , and Vdd t o t h e n s u b s t r a t e were l i b e r a l l y used. As was d i s c u s s e d e a r l i e r t h i s i s a t e c h n i q u e f o r r e d u c i n g l a t c h - u p . The u s u a l methods f o r i m p r o v i n g p e r f o r m a n c e were used. These i n c l u d e d k e e p i n g t h e d i m e n s i o n s t o a mini m u m and u s i n g m e t a l i n s t e a d of p o l y s i l i c o n where e v e r p o s s i b l e . We a l s o a v o i d e d l o n g r u n s o f m e t a l o v e r p o l y s i l i c o n w h i c h c a n c a u s e c a p a c i t i v e l y c o u p l e d c r o s s t a l k . 67 CHAPTER 6: THE COLOUR PALETTE DESIGN The D e v e l o p m e n t S y n o p s i s We a n t i c i p a t e d t h a t t h e c o l o u r p a l e t t e c h i p w o u l d r e q u i r e a t l e a s t t h r e e d e s i g n i t e r a t i o n s b e f o r e i t w o u l d meet t h e s p e c i f i c a -t i o n s . I t i s e x t r e m e l y r a r e f o r l i t e r a t u r e on new i n t e g r a t e d c i r c u i t s t o d i s c l o s e t h e number o f d e s i g n i t e r a t i o n s t h a t were r e q u i r e d . We f e e l t h a t t h r e e i t e r a t i o n s i s by no means a b n o r m a l and p r o b a b l y i s r a t h e r o p t i m i s t i c . The f i r s t i t e r a t i o n was d e s i g n e d d u r i n g t h e M i c r o t e l P a c i f i c R e s e a r c h L t d . ISO-CMOS D e s i g n C o u r s e o f O c t o b e r 1 9 8 2 . M u l t i p l e s t u d e n t p r o j e c t s w e r e t o be i n c l u d e d on e a c h c h i p a n d t h e r e f o r e o u r c i r c u i t s i z e was c o n s t r a i n e d t o 3 7 5 0 by 3 7 5 0 m i c r o n s . T h i s was s u f f i c i e n t a r e a t o i m p l e m e n t a 4 by 4 b i t c o l o u r p a l e t t e p r o t o t y p e w i t h one DAC. ( R e c a l l t h a t t h e f u l l s i z e p a l e t t e has 12 by 16 b i t s w i t h t h r e e DAC's.) A l t h o u g h s c a l e d down, t h e p r o t o t y p e c o n t a i n e d e v e r y c e l l r e q u i r e d f o r t h e f u l l s i z e p a l e t t e , and e a c h c e l l was d e s i g n e d t o h a n d l e t h e l o a d i n g t h a t i t w o u l d e x p e r i e n c e i n t h e f u l l s i z e p a l e t t e . The p r o t o t y p e t h e r e f o r e p r o v i d e d a n e x c e l l e n t t e s t v e h i c l e w h i l e s t i l l m a i n t a i n i n g u p w a r d c o m p a t i -b i l i t y o f t h e c i r c u i t m o d u l e s . We had enough a d d i t i o n a l c h i p a r e a t o i n c l u d e a p r o c e s s m o n i t o r a n d a s e p a r a t e t e s t c i r c u i t f o r e a c h m o d u l e as d e b u g g i n g a i d s . The p r o t o t y p e was f a b r i c a t e d and t e s t e d and t h e m a j o r i t y o f t h e c i r c u i t w o r k e d , h o w e v e r , s e v e r a l l a y o u t e r r o r s were d e t e c t e d . D e t a i l e d t e s t r e s u l t s w i l l be p r e s e n t e d i n t h e n e x t c h a p t e r . 68 M i c r o t e l P a c i f i c R e s e a r c h was k i n d enough to o f f e r us a n o t h -e r f a b r i c a t i o n r u n a t no c h a r g e a n d so t h e s e c o n d i t e r a t i o n d e s i g n b e g a n on A p r i l 5, 1983. Our o b j e c t i v e was t o c o r r e c t t h e p r o b l e m s d e t e c t e d i n the p r o t o t y p e and to expand the d e s i g n i n t o t h e f u l l s i z e c o l o u r p a l e t t e . The d e s i g n was c o m p l e t e d on May 13, 1983 and t h e c h i p was f a b r i c a t e d and r e t u r n e d t o us on J u l y 8, 1983. T e s t r e s u l t s w i l l be p r e s e n t e d i n the next c h a p t e r . The t h i r d i t e r a t i o n w i l l r e f i n e t h e d e s i g n and c o r r e c t any o f t h e p r e s u m a b l y s m a l l p r o b l e m s d e t e c t e d d u r i n g t h e s e c o n d i t e r a t i o n t e s t s . The c u r r e n t p r o j e c t s t a t u s i s t h a t s e c o n d i t e r a -t i o n c h i p has been r e s u b m i t t e d unchanged f o r f a b r i c a t i o n because of s u s p i c i o n s o f p r o c e s s i n g p r o b l e m s . Module P a r t i t i o n s and D i v i s i o n of L a b o r R e f e r r i n g b a c k t o t h e b l o c k d i a g r a m o f F i g u r e 8 on page 41 we see t h a t the c o l o u r p a l e t t e n i c e l y decomposes i n t o 8 d i s t i n c t m o d u l e s . T h e y a r e : t h e d i g i t a l t o a n a l o g c o n v e r t e r , p i p e l i n e r e g i s t e r , memory a r r a y , b i d i r e c t i o n a l d a t a b u f f e r , y d e c o d e r s , x d e c o d e r , c o n t r o l c i r c u i t r y , and the I/O pads. The c o l o u r p a l e t t e c o n t a i n s a g r e a t d e a l o f r e g u l a r i t y . E a c h 4 b i t s l i c e o f t h e p a l e t t e i s a l m o s t i d e n t i c a l . T h i s j u s t i f i e s our d e c i s i o n to f i r s t d e s i g n the s c a l e d down 4 b i t wide p r o t o t y p e . E ach 4 b i t s l i c e i n t u r n has i t s own r e g u l a r i t y . F o r example, e a c h b i t i n t h e memory a r r a y i s i d e n t i c a l as i s each b i t i n the b i d i r e c t i o n a l b u f f e r and p i p e l i n e r e g i s t e r . The c o l o u r p a l e t t e i s t h e r e f o r e an e x c e l l e n t 69 c a n d i d a t e f o r a h i e r a r c h i c a l d e s i g n a p p r o a c h . We d i d i n d e e d e x p l o i t i t s h i e r a r c h y as i s shown by t h e t r e e s t r u c t u r e i n F i g u r e 16. Each node i n the t r e e r e p r e s e n t s a c e l l d e f i n i t i o n i n our CDS l a y o u t program. E a c h l i n k r e p r e s e n t s a CALL by t h e h i g h e r c e l l t o t h e l o w e r c e l l . The h i g h e s t n ode r e p r e s e n t s t h e e n t i r e c o l o u r p a l e t t e c h i p . Our h i g h l y s t r u c t u r e d d e s i g n g r e a t l y f a c i l i t a t e d t h e e x p a n s i o n of the p r o t o t y p e to the f u l l s i z e c o l o u r p a l e t t e . The c o l o u r p a l e t t e p r o j e c t was l a r g e and t h e p o t e n t i a l f o r e r r o r g r e a t . I t was t h e r e f o r e a l m o s t a n e c e s s i t y t h a t more t h a n one d e s i g n e r work on the p r o j e c t . I t i s i n v a r i a b l y e a s i e r t o s p o t a l o g i c e r r o r o r d e s i g n r u l e v i o l a t i o n i n s omeone e l s e ' s work t h a n i t i s i n one's own work. I t was my f o r t u n e t o h a v e t h e o p p o r t u n i t y to work w i t h Gordon Cheng of UBC and G e r h a r d S c h m i i n g o f MPR. The f i r s t t h r e e s t a g e s of the d e s i g n , namely s y s t e m s p e c i f i -c a t i o n , m o d u l e p a r t i t i o n i n g , and f l o o r p l a n d e s i g n were j o i n t e f f o r t s by Cheng, S c h m i i n g , and m y s e l f . The s y s t e m s p e c i f i c a t i o n a n d m o d u l e p a r t i t i o n i n g h a v e a l r e a d y b e e n d i s c u s s e d . The f l o o r p l a n d e s i g n i s a c t u a l l y i n h e r e n t t o t h e b l o c k d i a g r a m o f F i g u r e 8 on p a g e 41. The r e l a t i v e p l a c e m e n t o f t h e m o d u l e s d e v i a t e d v e r y l i t t l e f r o m t h i s b l o c k d i a g r a m . The modules were d i v i d e d b etween Cheng and m y s e l f , and each of us l o o k e d a f t e r t h e r e m a i n i n g s t a g e s of d e s i g n ( l o g i c , l o a d i n g a n a l y s i s , s t i c k d i a g r a m s , mask l a y o u t , a n d d a t a e n t r y ) f o r o u r own m o d u l e s . F r e q u e n t i n t e r a c t i o n was o f c o u r s e r e q u i r e d t o 70 colour palette protected input pads I / Q p a d s i 0 g 0 input pad read/write control output pad control s i g n a l generator y decoders x decoder decoder buffer c e l l decoder buffer c e l l s i g n a l buffers buffer C E l l memory array 12 b i t row memory.pipeline r e g i s t e r , s t a t i c and dynamic DACs p i p e l i n e r e g i s t e r and DAC's pi p e l i n e r e g i s t e r 2 b i t s n channel h a l f p channel h a l f input I tap driver s switch decoder input drivers F i g u r e 16. C o l o u r P a l e t t e C e l l H i e r a r c h y 71 e n s u r e t h a t the modules would o p e r a t e c o r r e c t l y t o g e t h e r and t h a t t h e i n t e r c o n n e c t i o n s w o u l d be e f f i c i e n t . F o r e x a m p l e t h e p i t c h ( w i d t h ) a n d bus l o c a t i o n s o f t h e b i d i r e c t i o n a l b u f f e r had t o match t h o s e of the memory a r r a y . We a l s o c o o p e r a t e d i n c h e c k i n g e a c h o t h e r ' s work. Cheng's module c o n t r i b u t i o n s were the x and y d e c o d e r s , the b i d i r e c t i o n a l d a t a b u f f e r s , and the c o n t r o l s i g n a l g e n e r a t o r . My c o n t r i b u t i o n s were the memory a r r a y , p i p e l i n e r e g i s t e r , t r i - s t a t e i n p u t p a d , a n d t h e p r o c e s s m o n i t o r . F o r t h e f i r s t i t e r a t i o n a dy n a m i c DAC d e s i g n e d by Warren Snyder of MPR and m o d i f i e d s l i g h t -l y by m y s e l f was used. The s e c o n d i t e r a t i o n used the same dynamic DAC i n p a r a l l e l w i t h a new s t a t i c DAC w h i c h was a j o i n t e f f o r t b e t w e e n S c h m i i n g , C h e n g , and m y s e l f . We a l s o u s e d a p r o t e c t e d i n p u t pad a n d b u f f e r e d o u t p u t pad s u p p l i e d by MPR. Cheng was r e s p o n s i b l e f o r s i m u l a t i n g the c r i t i c a l p a t h s . I was r e s p o n s i b l e f o r t h e g l o b a l r o u t i n g . F i r s t i t e r a t i o n t e s t i n g was a j o i n t e f f o r t b e t w e e n S c h m i i n g , C h e n g , and m y s e l f . S e c o n d i t e r a t i o n t e s t i n g was a j o i n t e f f o r t between S c h m i i n g and m y s e l f . I i n t e n d to f o c u s t h e d i s c u s s i o n on my own c o n t r i b u t i o n s , however c o n t r i -b u t i o n s by Cheng and S c h m i i n g w i l l be d i s c u s s e d where n e c e s s a r y t o m a i n t a i n c o h e s i o n . D u a l P o r t Memory The memory a r r a y d o m i n a t e s t h e c o l o u r p a l e t t e c i r c u i t . A l l o t h e r m o d u l e s a r e d e p e n d e n t on t h e memory a r r a y ' s s i z e and c o n -72 f i g u r a t i o n o f c o n t r o l and d a t a t h e f i r s t m o d u l e t o be d e s i g n e d , c a t i o n s and t r a d i t i o n a l s t a t i c our own i m p l e m e n t a t i o n . b u s e s . The memory was t h e r e f o r e I w i l l f i r s t r e v i e w t h e s p e c i f i -memory d e s i g n s and t h e n d i s c u s s The m o s t i m p o r t a n t s p e c i f i c a t i o n t o n o t e i s t h a t b o t h t h e p r o c e s s o r (CPU) and the CRT c o n t r o l l e r (CRTC) can a s y n c h r o n o u s l y r e a d f r o m t h e memory a r r a y , b u t o n l y t h e CPU c a n w r i t e t o t h e memory. T h i s means t h a t the memory must be d u a l p o r t e d i f we a r e t o a v o i d t h e m u l t i p l e x i n g c i r c u i t r y u s e d on t h e d i s c r e t e MPR i m p l e m e n t a t i o n . D u a l p o r t i n g r e q u i r e s t h e memory c e l l t o h a v e s e p a r a t e d a t a and c o n t r o l b u s e s f o r t h e CPU a n d CRTC. No a r b i -t r a t i o n i s p e r f o r m e d b e t w e e n t h e CPU w r i t e c y c l e and t h e CRTC r e a d c y c l e . The p r o b a b i l i t y o f b o t h d e v i c e s s i m u l t a n e o u s l y a c -c e s s i n g t h e same n i b b l e i s l o w b u t s h o u l d i t h a p p e n t h e t i m i n g i s s u c h t h a t a maximum of two p i x e l s w i l l be d i s r u p t e d f o r one v i d e o s c a n and w i l l t h e r e f o r e n ot be n o t i c e d by t h e u s e r . S i m u l t a n e o u s CPU and CRTC r e a d c y c l e s on t h e same n i b b l e s h o u l d h a v e no e f f e c t on t h e o u t p u t . A t r a d i t i o n a l 6 t r a n s i s t o r c r o s s c o u p l e d s t a t i c CMOS memory c e l l i s shown i n F i g u r e 17. A s u b s e t o f t h e a d d r e s s l i n e s a r e decoded to e n a b l e one of the word l i n e s and hence one row In the memory a r r a y . When i t s w o r d l i n e i s t r u e , t h e memory l a t c h I s c o n n e c t e d t o t h e d a t a b u s . The r e m a i n i n g a d d r e s s l i n e s a r e d e -c o d e d t o s e l e c t w h i c h o f t h e d a t a l i n e s r u n n i n g v e r t i c a l l y t h r o u g h t h e a r r a y a r e t o be o p e r a t e d on. I f a w r i t e c y c l e i s i n p r o g r e s s t h e n t h e d e s i r e d b i t s t a t e i s p l a c e d on the d a t a bus by 73 a d r i v e r t h a t i s s u f f i c i e n t l y l a r g e t o f o r c e t h e s t a t e o f t h e c r o s s c o u p l e d l a t c h t o c o m p l y . I f a r e a d c y c l e i s i n p r o g r e s s t h e n a h i g h i m p e d a n c e s e n s e a m p l i f i e r i s u s e d t o d e t e r m i n e t h e b i t s t a t e . The a d v a n t a g e o f t h i s d e s i g n i s t h a t t h e memory c e l l c a n be k e p t v e r y s m a l l , p a r t i c u l a r l y i f a s o p h i s t i c a t e d s e n s e a m p l i f i e r c a p a b l e o f d e t e c t i n g s m a l l v o l t a g e f l u c t u a t i o n s i s used. The d i s a d v a n t a g e of t h i s a p p r o a c h i s t h a t the d e s i g n p a r a -m e t e r s s u c h as t h e t r a n s i s t o r s i z e s a r e v e r y c r i t i c a l and r e q u i r e c a r e f u l o p t i m i z a t i o n and s i m u l a t i o n [PULFREY 8 3 ] . A l s o , many e x t e r n a l l y s t a t i c d e s i g n s e m p l o y i n t e r n a l l y d y n a m i c c i r c u i t r y w h i c h we t r i e d t o a v o i d [ O C H I I 8 2 ] . A n o t h e r p r o b l e m w i t h t h i s a p p r o a c h i s t h a t to make the 6 t r a n s i s t o r memory c e l l d u a l p o r t e d w o u l d r e q u i r e t h e a d d i t i o n o f 2 t r a n s i s t o r s and a n o t h e r w o r d l i n e . E x t r e m e l y c a r e f u l d e s i g n w o u l d be r e q u i r e d t o p r e v e n t s i m u l t a n e o u s b i t a c c e s s e s by the CPU and CRTC f r o m d i s r u p t i n g the b i t s t a t e . F o r t r a d i t i o n a l memory a p p l i c a t i o n s s m a l l s i z e i s by f a r t h e m o s t i m p o r t a n t d e s i g n c o n s i d e r a t i o n and t h e r e f o r e one a c c e p t s the d e s i g n c o m p l i c a t i o n s t h a t come w i t h the s m a l l s i z e . Our a p p l i c a t i o n , on t h e o t h e r h a n d , r e q u i r e s a memory a r r a y o f o n l y 12 by 16 b i t s . Our m o s t i m p o r t a n t d e s i g n c o n s t r a i n t was t o e n s u r e t h a t the c i r c u i t worked and met the s p e c i f i c a t i o n s on the f i r s t o r s e c o n d i t e r a t i o n . We wer e w i l l i n g t o s a c r i f i c e a r e a t o a c h i e v e a w o r k i n g c i r c u i t . 74 Vdd F i g u r e 17. T r a d i t i o n a l S t a t i c CMOS Memory C e l l The f i r s t s t e p i n t h e memory d e s i g n was t o d e t e r m i n e t h e c o n t r o l and d a t a s i g n a l s r e q u i r e d . The CRTC p r e s e n t s 4 a d d r e s s l i n e s w h i c h a r e d e c o d e d on t h e p a l e t t e t o s e l e c t 1 o f t h e 16 r o w s , e a c h o f w h i c h c o r r e s p o n d s t o a c o l o u r . When a row i s s e -l e c t e d e a c h o f i t s 12 b i t s m ust p l a c e t h e i r s t a t e s on t h e CRTC d a t a b u s e s . The d a t a i s t h e n l a t c h e d i n t o t h e p i p e l i n e r e g i s t e r f o r i n p u t t o the DAC's. The i m p o r t a n t p o i n t s t o n o t e a r e t h a t the CRTC does not w r i t e to the memory and x d e c o d i n g i s not r e q u i r e d b e c a u s e t h e d a t a i s r e a d o u t one row a t a t i m e . A s i n g l e c o n t r o l s i g n a l Yv ( v i d e o y s e l e c t ) c a n t h e r e f o r e be u s e d t o f o r c e t h e memory c e l l t o p l a c e i t s d a t a on the CRTC d a t a bus. 75 The CPU, on t h e o t h e r h a n d , b o t h r e a d s and w r i t e s t o t h e memory a n i b b l e a t a t i m e . S i g n a l s a r e t h e r e f o r e r e q u i r e d t o s e l e c t t h e s p e c i f i c n i b b l e a n d t o s p e c i f y i f t h e o p e r a t i o n i s a r e a d o r a w r i t e . The MPR s p e c i f i c a t i o n s ( A p p e n d i x B) c a l l e d f o r the r e a d d a t a to be h e l d on t h e d a t a bus f o r 20-50 n s e c a f t e r the p r o c e s s o r e n a b l e c l o c k (E) g o e s f a l s e . The CPU r e a d s i g n a l (R) was g e n e r a t e d f r o m the o f f c h i p s i g n a l s as f o l l o w s : R = CS' * R/W * A where CS = c h i p s e l e c t R/W = p r o c e s s o r r e a d / w r i t e A = decoded p r o c e s s o r a d d r e s s (A4-A5) The CS a n d R/W s i g n a l s a r e t r u e f o r o n l y 10 n s e c a f t e r E g o e s f a l s e , h o w e v e r we f e e l t h a t t h e d a t a bus c a p a c i t a n c e and t h e b u f f e r d e l a y s w i l l h o l d t h e d a t a v a l i d f o r t h e a d d i t i o n a l 10 n s e c r e q u i r e d t o meet t h e s p e c i f i c a t i o n . The CPU w r i t e c y c l e r e q u i r e s t h a t t h e d a t a be v a l i d when i t i s l a t c h e d i n t o t h e memory. The s i g n a l a v a i l a b l e f o r l a t c h i n g t h e d a t a i s t h e n e g a t i v e edge o f the p r o c e s s o r c l o c k ( E ) . The w r i t e s i g n a l was t h e r e f o r e g e n e r a t e d f r o m t h e o f f c h i p s i g n a l s as f o l l o w s : W = CS' * R/W' * A * E where E = p r o c e s s o r e n a b l e c l o c k and the o t h e r s i g n a l s a r e d e f i n e d above N o t e t h a t t h e CPU r e a d and w r i t e s i g n a l s a r e n o t s i m p l y c o m p l e -m e n t s . We t h e r e f o r e had two c h o i c e s f o r i m p l e m e n t i n g t h e CPU c o n t r o l s i g n a l s . The f i r s t a p p r o a c h was p r o v i d e t h e c e l l w i t h x 76 and y s i g n a l s t o s e l e c t t h e c e l l and a t h i r d s i g n a l t o s p e c i f y r e a d o r w r i t e . The s e c o n d a p p r o a c h was t o s u p p l y a s i g n a l t o s e l e c t a row i n t h e a r r a y and p r o v i d e s e p a r a t e r e a d and w r i t e s i g n a l l i n e s . I f b o t h t h e r e a d and w r i t e l i n e s w e r e f a l s e t h e c e l l w o u l d be d i s a b l e d and t h u s t h e r e a d and w r i t e l i n e s c o u l d d o u b l e as c o l u m n s e l e c t s . We chose th e s e c o n d a p p r o a c h b e c a u s e i t was much e a s i e r t o accommodate the d i f f e r e n c e s between the r e a d and w r i t e s i g n a l s d i s c u s s e d a b o v e , an d b e c a u s e b o t h a p p r o a c h e s r e q u i r e t h e same number o f c o n t r o l l i n e s . T a b l e IV l i s t s t h e c o n t r o l and d a t a s i g n a l s r e q u i r e d i n t h e memory a r r a y . N o t i c e t h a t t h e c o m p l e m e n t s o f a l l t h e c o n t r o l s i g n a l s a r e r e q u i r e d b e c a u s e o f our d e c i s i o n t o use t r u e c o m p l e m e n t a r y c i r c u i t r y . Name | F u n c t i o n + Dp p r o c e s s o r (CPU) d a t a Dv v i d e o (CRTC) d a t a Yv Yv' v i d e o row s e l e c t Yp Yp' p r o c e s s o r row s e l e c t R R' p r o c e s s o r r e a d W W' p r o c e s s o r w r i t e T a b l e IV. Memory C o n t r o l and Data S i g n a l s The n e x t s t e p i n the d e s i g n was to d e c i d e on the memory bus s t r u c t u r e . The r e a d and w r i t e l i n e s m ust o f c o u r s e r u n a t r i g h t a n g l e s t o t h e row s e l e c t l i n e s b e c a u s e t h e y d o u b l e as c o l u m n s e l e c t s i g n a l s . The p r o b l e m t h e n was t o d e c i d e w h i c h to p l a c e i n m e t a l and w h i c h to p l a c e i n p o l y s i l i c o n . We d e c i d e d t o p l a c e the r e a d and w r i t e l i n e s i n m e t a l b e c a u s e t h e w r i t e t i m i n g i s more 77 Vdd WW R' R Vss Dp Dv Dv Dp R Vdd R' W W' Dp Dv Vss F i g u r e 18. Memory Bus S t r u c t u r e 78 c r i t i c a l t h a n t h e row s e l e c t t i m i n g . T h a t i s , t h e n e g a t i v e edge o f W i s u s e d t o l a t c h t h e d a t a . F u r t h e r m o r e , t h e a r r a y y d i m e n -s i o n i s l a r g e r t h a n i t s x d i m e n s i o n and t h e r e f o r e t h e c o l u m n s s h o u l d be i n m e t a l t o m i n i m i z e t h e p r o p a g a t i o n d e l a y . Power buses must be i n m e t a l and t h e p r e v i o u s d e c i s i o n t h e r e f o r e f o r c e d Vdd and V s s t o r u n v e r t i c a l l y t h r o u g h t h e a r r a y . The d a t a b u s e s must run v e r t i c a l l y w h i c h i s f o r t u n a t e b e c a u s e i t meant t h a t they c o u l d a l s o be p l a c e d i n m e t a l . We t r i e d many d i f f e r e n t bus c o n f i g u r a t i o n s and F i g u r e 18 s hows t h e one we f i n a l l y d e c i d e d u p o n . N o t i c e t h a t W, W", R, and R' a r e s h a r e d b e t w e e n a d j a c e n t b i t s o f e a c h n i b b l e . A l s o n o t e t h a t the r i g h t two b i t s of e a c h n i b b l e can be f o r m e d by r e f l e c t -i n g t h e l e f t two b i t s o f t h e n i b b l e a b o u t t h e n i b b l e ' s c e n t r a l V s s b u s . T h i s i s i n f a c t how we g e n e r a t e d t h e a r r a y . Two b i t s w e r e l a i d o u t and r e f l e c t e d t o f o r m a n i b b l e u s i n g t h e CDS r o t a t e and p l a c e command. The n i b b l e was t h e n c a l l e d t h r e e t i m e s w i t h s u i t a b l e t r a n s l a t i o n s to f o r m th e row. F i n a l l y the row was c a l l e d 16 t i m e s w i t h t r a n s l a t i o n s t o form the a r r a y . The l o g i c s c h e m a t i c f o r the memory c e l l i s shown i n F i g u r e 19. The number on each g a t e i n d i c a t e s i t s s i z e i n t e r m s of m i n i -mum s i z e d g a t e s . N o t e t h a t a l l f a n o u t s a r e a b o u t 3 a n d t h a t i n v e r t e r s Q2 and Q6 h a v e a l s o b e e n s i z e d l a r g e e n o u g h t o d r i v e t h e d a t a b u s e s w i t h a f a n o u t o f 3. I n v e r t e r s Q 4 a n d Q5 s t o r e one b i t v i a t h e f e e d b a c k l o o p t h r o u g h t r a n s m i s s i o n g a t e Q3. D u r i n g t h e CRTC r e a d c y c l e Q6 i s t u r n e d on by Yv and d r i v e s t h e d a t a o n t o t h e Dv b u s . S i m i l a r l y , d u r i n g t h e CPU r e a d c y c l e Q2 i s 79 t u r n e d on by (Yp * R) w h i c h d r i v e s the d a t a o n t o the Dp bus. Note t h a t the CPU and CRTC r e a d c y c l e s c an o c c u r s i m u l t a n e o u s l y w i t h -out any p r o b l e m s . D u r i n g t h e CPU w r i t e c y c l e Q2 i s t u r n e d o f f and the Q3 f e e d b a c k l o o p i s b r o k e n . Ql i s t u r n e d on by (Yp * W) w h i c h d r i v e s t h e new d a t a i n t o QA and Q5. When (Yp * W) g o e s f a l s e t h e new d a t a i s l a t c h e d by Q3. Note t h a t t h e r e i s the p o s s i b i l i t y of a g l i t c h on Dv i f Yv g o e s t r u e d u r i n g a CPU w r i t e c y c l e b u t t h i s was d i s c u s s e d e a r l i e r and i s not a p r o b l e m . (Yp * R) Q3 (Yp * W)' F i g u r e 19. Memory C e l l L o g i c S c h e m a t i c 80 The s t i c k d i a g r a m f o r t h e memory c e l l i s shown i n F i g u r e 20. Much e f f o r t was s p e n t m i n i m i z i n g t h e number o f p o l y s i l i c o n b r i d g e s r e q u i r e d when two m e t a l l i n e s m ust c r o s s . We c o n f i r m e d the o f t e n s t a t e d maxim t h a t t i m e s p e n t a t the s t i c k d i a g r a m s t a g e a l w a y s pays o f f d u r i n g the l a y o u t s t a g e . The l a y o u t f o r two b i t s o f t h e memory i s shown i n F i g u r e 21. N o t e t h a t a l l b u s e s e n t e r and e x i t on t h e same l o n g i t u d e o r l a t i t u d e so t h a t t h e c e l l c a n be r e p e a t e d i n b o t h d i r e c t i o n s and s t i l l m a i n t a i n bus c o n t i n u i t y . A l s o n o t e t h a t V s s c o n t a c t s t o t h e p w e l l s and Vdd c o n t a c t s t o t h e s u b s t r a t e h a v e b e e n l i b e r a l l y u s e d t o a v o i d l a t c h - u p p r o b l e m s . The s i z e of the two b i t c e l l i s 244 by 440 m i c r o n s . G i v e n t h e l a y o u t we c a l c u l a t e d t h e c a p a c i t i v e l o a d i n g on e a c h bus i n t h e a r r a y i n t e r m s o f m i n i m u m g a t e l o a d s and t h e d a t a i s p r e s e n t e d i n T a b l e V. These f i g u r e s were used to d e s i g n o p t i -m a l d r i v e r s i n t h e row and c o l u m n d e c o d e c i r c u i t r y . The l o a d i n g i s q u i t e s i g n i f i c a n t on s e v e r a l o f t h e b u s e s . T h i s i s one o f t h e d e l e t e r i o u s e f f e c t o f a f u l l y s t a t i c , t r u e CMOS d e s i g n . F o r t u -n a t e l y o u r memory a r r a y i s s m a l l a n d i s n o t r e q u i r e d t o be e x -p a n d a b l e . Bus | L o a d i n g (# of minimum g a t e l o a d s ) + Dv 0 <--+ Dp 3 1 W' 6 1 — m u l t i p l y by the W 6 I number of rows R' 36 1 R 1 6 <--+ Yp' 21 <--+ Yp 11 1 - m u l t i p l y by the Yv' 10 I of b i t s p e r row Yv 4 <--+ T a b l e V. Memory C e l l Bus L o a d i n g 81 F i g u r e 20. Memory C e l l 82 S t i c k Diagram F i g u r e 21. Memory C e l l L a y o u t 83 P i p e l i n e R e g i s t e r The p i p e l i n e r e g i s t e r i s a two s t a g e r e g i s t e r w i t h t h e f u n c t i o n o f e n s u r i n g t h a t t h e DAC o u t p u t i s v a l i d f o r a f u l l c y c l e o f t h e p i x e l c l o c k ( P c l k ) . A p p e n d i x B c o n t a i n s t h e t i m i n g d i a g r a m s and F i g u r e 22 shows t h e p i p e l i n e r e g i s t e r l o g i c s c h e -m a t i c . A g a i n , t h e number on e a c h g a t e r e p r e s e n t s i t s s i z e as a m u l t i p l e o f m i n i m u m s i z e d g a t e s . N o t e t h a t m i n i m a l l o a d i n g i s p r e s e n t e d t o t h e Dv bus and t h a t Q4 i s l a r g e e n o u g h t o d r i v e t h e DAC's w i t h n e a r o p t i m a l f a n o u t . I n v e r t e r s Q l and Q2 w i t h t h e i r f e e d b a c k l o o p f o r m t h e f i r s t r e g i s t e r s t a g e . D a t a i s p a s s e d t h r o u g h t o Q l when P c l k i s f a l s e a n d i s l a t c h e d i n t h e f i r s t s t a g e i n t h e r i s i n g e d g e o f P c l k . The new d a t a s t o r e d i n t h e f i r s t s t a g e i s p a s s e d t h r o u g h t o Q3 w h i l e P c l k i s t r u e . T h i s d a t a i s t h e n l a t c h e d i n the s e c o n d s t a g e on the n e g a t i v e edge of P c l k t h e r e b y g u a r a n t e e i n g t h a t t h e DAC i n p u t i s v a l i d f o r an e n t i r e P c l k c y c l e . The bus s t r u c t u r e o f t h e p i p e l i n e r e g i s t e r i s d i c t a t e d by the memory a r r a y . Data and power f l o w v e r t i c a l l y on m e t a l and the c o n t r o l s i g n a l s P c l k and P c l k ' f l o w h o r i z o n t a l l y on p o l y s i l i c o n . The p i p e l i n e r e g i s t e r s t i c k d i a g r a m I s shown i n F i g u r e 23. N o t e t h a t a l l o f t h e t r a n s m i s s i o n g a t e s a r e c l e a n l y f o r m e d i n two s t r a i g h t d i f f u s i o n w i r e s . The l a y o u t r e q u i r e s o n l y two m e t a l -p o l y s i l i c o n b r i d g e s . A p l o t o f t h e p i p e l i n e r e g i s t e r l a y o u t i s shown i n F i g u r e 24. The h o r i z o n t a l p i t c h of the r e g i s t e r i s f i x e d by t h e p o w e r a n d d a t a r a i l s c o m i n g f r o m t h e memory a r r a y . The s i z e o f t h e p i p e l i n e r e g i s t e r c e l l i s 229 by 216 m i c r o n s . The 84 c a p a c i t i v e l o a d i n g on e a c h bus was c a l c u l a t e d i n t e r m s of minimum g a t e l o a d s and i s p r e s e n t e d i n T a b l e VI. Bus | L o a d i n g (# of minimum g a t e l o a d s ) + P c l k P c l k ' Dv 6 <--+ 6 |-- m u l t i p l y by the number 3 < 1- o f b i t s p e r row T a b l e V I . P i p e l i n e R e g i s t e r Bus L o a d i n g F i g u r e 22. P i p e l i n e R e g i s t e r L o g i c S c h e m a t i c 85 F i g u r e 23. P i p e l i n e R e g i s t e r S t i c k Diagram 86 r * i DAC • • • _,_T • • • -B-• n • • CD • • • Dv F i g u r e 24. P i p e l i n e R e g i s t e r L a y o u t 87 D i g i t a l to A n a l o g C o n v e r t e r The MPR s p e c i f i c a t i o n c a l l e d f o r t h e DAC t o h a v e 4 b i t s o f r e s o l u t i o n , o p e r a t e a t 5.5 MHz, s e t t l e t o w i t h i n +- 1/2 LSB w i t h i n 50 n s e c , a n d u s e a 1 v o l t r e f e r e n c e . T h e r e a r e a v a r i e t y of ways to i m p l e m e n t a DAC. One common a p p r o a c h , c a l l e d the R-2R l a d d e r n e t w o r k , g e n e r a t e s b i n a r y w e i g h t e d c u r r e n t s w h i c h a r e the n summed or s h u n t e d t o g r o u n d d e p e n d i n g on the d i g i t a l i n p u t [GUY 82 ] . The c u r r e n t sum can t h e n be used to f o r m t h e a n a l o g v o l t a g e . A n o t h e r a p p r o a c h u s e s an a n a l o g ramp g e n e r a t o r , a c o u n t e r -c o m p a r a t o r , and a sample and h o l d c i r c u i t [MACK 82]. The a n a l o g ramp and c o u n t e r a r e r e s e t to z e r o and t h e n a l l o w e d t o i n c r e a s e . When t h e c o u n t e r v a l u e e q u a l s t h e d i g i t a l i n p u t t h e s a m p l e and h o l d c i r c u i t i s t r i g g e r e d t o f r e e z e t h e a n a l o g v o l t a g e . A n o t h e r a p p r o a c h uses a r e s i s t o r d i v i d e r n e t w o r k to g e n e r a t e a l l p o s s i b l e v o l t a g e s . The d e s i r e d v o l t a g e c a n t h e n be s e l e c t e d by an a n a l o g s w i t c h . V a r i o u s c o n f i g u r a t i o n s of r e s i s t o r d i v i d e r s a r e p o s s i b l e [POST 8 3 ] . The DAC u s e d on t h e f i r s t i t e r a t i o n p r o t o t y p e was d e s i g n e d by W a r r e n S n y d e r a t MPR a n d i s shown i n F i g u r e 25. A d i f f u s i o n w i r e i s used as t h e r e s i s t o r l a d d e r w i t h s i x t e e n e q u a l l y s p a c e d a n a l o g s w i t c h e s p l a c e d a l o n g i t s l e n g t h . The a n a l o g s w i t c h e s a r e f o r m e d w i t h wide nMOS t r a n s i s t o r s , and one of the s i x t e e n s w i t c h -es i s t u r n e d on by t h e i n p u t d e c o d e r . A c l o c k s i g n a l i s u s e d t o p r e c h a r g e t h e d e c o d e r a r r a y t o g r o u n d s i n c e t h e d e c o d e r was i m p l e m e n t e d w i t h pMOS, r a t h e r t h a n CMOS to c o n s e r v e a r e a . As the t e s t r e s u l t s w i l l show, the dynamic p r e c h a r g e s i g n a l c a u s e d some 88 n o i s e on t h e a n a l o g o u t p u t . The a c c u r a c y o f t h e DAC d e p e n d s on p r o c e s s u n i f o r m i t y and the o u t p u t node must be t e r m i n a t e d w i t h a h i g h i m p e d a n c e t o a v o i d s h u n t i n g any c u r r e n t f r o m t h e r e s i s t o r l a d d e r . The DAC p r e s e n t s an i n p u t l o a d of 28 minimum s i z e d g a t e s t o t h e p i p e l i n e r e g i s t e r and i t s s i z e i s 334 by 550 m i c r o n s . One m i n o r m o d i f i c a t i o n was made t o the MPR DAC. The n e g a t i v e v o l t a g e r e f e r e n c e on t h e v o l t a g e d i v i d e r was d i s c o n n e c t e d f r o m t h e V s s bus and g i v e n i t s own p a d . T h i s was done t o r e d u c e t h e o u t p u t n o i s e c a u s e d by the d i g i t a l c i r c u i t r y and to p e r m i t us to s h i f t the o u t p u t v o l t a g e i f r e q u i r e d . A new DAC was d e s i g n e d f o r t h e s e c o n d i t e r a t i o n c o l o u r p a l -e t t e a nd i s shown i n F i g u r e 26. The d e c o d e r was i m p l e m e n t e d i n nMOS, r a t h e r t h a n CMOS, a g a i n t o s a v e a r e a . T h i s t i m e , h o w e v e r , t h e d y n a m i c p r e c h a r g e c i r c u i t r y was r e p l a c e d w i t h a p u l l - u p r e s i s t o r f o r m e d by a l o n g p c h a n n e l t r a n s i s t o r w i t h i t s g a t e t i e d t o V s s . The nMOS a n a l o g s w i t c h was a l s o r e p l a c e d w i t h a t r u e CMOS t r a n s m i s s i o n g a t e to i m p r o v e i t s c h a r a c t e r i s t i c s . B o t h t h e d y n a m i c DAC a n d t h e s t a t i c DAC were c o n n e c t e d i n p a r a l l e l on the s e c o n d i t e r a t i o n c h i p to m a x i m i z e our p r o b a b i l i t y o f s u c c e s s . T h i s i n c r e a s e d t h e r o u t i n g c o m p l e x i t y b u t d i d n o t p r e s e n t a ny o t h e r p r o b l e m s b e c a u s e t h e memory a r r a y p i t c h was s u f f i c i e n t t o a c c o m m o d a t e t h e 3 p a i r s o f DAC's. The new DAC d i d not p r e s e n t s i g n i f i c a n t a d d i t i o n a l l o a d i n g t o the p i p e l i n e r e g i s -t e r so we d i d n o t have t o i n c r e a s e the d r i v e r s i z e s . 89 O0J<" * ft !• lot -n ^•|D| •| *— H 1 1 [n 1 ° ^•|D| •1 [• If n 1 ° •: =!• z\n\n\ •1 •1 i H • •: 11 : • • •| •: z:a\. •1 1 i • 11 • •: 11 •| n . I; • !• •: :]•[• •1 •1 [• !• lot :]•[ ^•|D| •1 . I; ;] . . i: [• 1 ° •: Z\D\ •^|n| •1 1 ;] . [• [1 1° l°l= Z\D\ ^•|D| •1 1 I; ) (• 1 ° •: • •1 •1 I; 1 . [• 1 ° Z\D\ •1 I; 1 . i: ] . } j (n* !• 1 •^|n| •1 •1 [; 1 . [• i !• •1= •^|n| o| ] . 1 n !• -\°\ T =!•(•! •1 1 j ^ P } !• •1 If 1 ] . ] j J • 1 I • i i i f "1 f r • i A [ • . . . . 3 i • [[ • | * > - - I* \«(8 »w\ \Y\3 F i g u r e 25. Dynamic DAC L a y o u t 90 vss\ VQJ¥ M«Te.<-t«rv\ i n j iwH F i g u r e 26. S t a t i c DAC L a y o u t 91 I n p u t Pad A s i m p l e u n b u f f e r e d i n p u t pad w i t h a CMOS t r a n s m i s s i o n g a t e was d e s i g n e d and i s shown i n F i g u r e 27. The s i g n a l s en and en' can be used to d i s a b l e the pad. Vdd • • • • • • • • • • • • • • • • • • • • • • en i n en Vss F i g u r e 27. I n p u t Pad L a y o u t 92 F i g u r e 28. P r o c e s s M o n i t o r L a y o u t 93 P r o c e s s M o n i t o r A p r o c e s s m o n i t o r was d e s i g n e d f o r i n c l u s i o n on t h e f i r s t i t e r a t i o n p r o t o t y p e . The o b j e c t i v e was t o be a b l e t o m e a s u r e d e v i c e c h a r a c t e r i s t i c s and to c o n f i r m t h a t t h e f a b r i c a t i o n p r o -c e s s d i d n o t h a v e a n y g r o s s p r o b l e m s . The p r o c e s s m o n i t o r c o n -t a i n e d a 21 s t a g e r i n g o s c i l l a t o r w i t h a b u f f e r e d o u t p u t , a l a r g e CMOS i n v e r t e r , a pMOS t r a n s m i s s i o n g a t e , and an nMOS t r a n s m i s s i o n g a t e . I t was hoped t h a t the r i n g o s c i l l a t o r w o u l d p r o v i d e i n f o r -m a t i o n on the p r o c e s s s p e e d , and t h a t the i n v e r t e r and t r a n s m i s -s i o n g a t e s w o u l d p r o v i d e d e v i c e c h a r a c t e r i s t i c s . A p l o t o f t h e p r o c e s s m o n i t o r i s shown i n F i g u r e 28. S i m u l a t i o n A SPICE s i m u l a t i o n on s e v e r a l of the c o l o u r p a l e t t e c r i t i c a l p a t h s was p e r f o r m e d and the r e s u l t s a r e su m m a r i z e d i n T a b l e V I I [CHENG 8 3 ] . A t e s t c i r c u i t w i t h a h a n d c a l c u l a t e d d e l a y was s i m u l a t e d t o v e r i f y t h e model and a l l r e s u l t s were i n c r e a s e d by 50 p e r c e n t t o be c o n s e r v a t i v e . A l l c i r c u i t s w e r e r e d u c e d t o e q u i v a l e n t c h a i n s of i n v e r t e r s w i t h c a p a c i t i v e l o a d i n g . The r e -s u l t s show t h a t t h e t h e r e s h o u l d be a s u f f i c i e n t s a f e t y m a r g i n i n our d e s i g n t o meet a l l of the d e s i g n s p e c i f i c a t i o n s . 94 C r i t i c a l P a t h S i m u l a t e d D e l a y n s e c S p e c i f i c a t i o n + + Yv' Yp' R' W 57 72 120 87 120 150 150 150 T a b l e V I I . C r i t i c a l P a t h S i m u l a t i o n R e s u l t s G l o b a l R o u t i n g A p p e n d i x E c o n t a i n s CDS s o u r c e l i s t i n g s o f t h e t h r e e t o p l e v e l c e l l s : p l d a c , m e m p l d a c , and p a l e t t e . T h e s e l i s t i n g s show how the CDS l a n g u a g e was used to i n t e r c o n n e c t t h e modules. P l d a c c o n n e c t s 3 o f t h e d y n a m i c DAC's and 3 o f t h e s t a t i c DAC's t o t h e 12 b i t p i p e l i n e r e g i s t e r . Mempldac c o n n e c t s p l d a c to t h e memory a r r a y . F i n a l l y , p a l e t t e p u l l s t o g e t h e r a l l o f t h e r e m a i n i n g components to f o r m the c o l o u r p a l e t t e c h i p . Note the heavy use of DEFN and LOCN, and BBOX commands. A l s o n o t e how d i a g n o s t i c s a r e p r i n t e d a t t h e end of e a c h c o m p i l a t i o n . 95 CHAPTER 7: RESULTS F i r s t I t e r a t i o n R e s u l t s F i g u r e 29 shows a t h e f i r s t i t e r a t i o n p r o t o t y p e c h i p . N o t e t h e s e v e n t e s t c i r c u i t s t h a t a r e s i t u a t e d on t h e p r o t o t y p e p e r i p h e r y . They a r e , c l o c k w i s e f r o m the top l e f t , c o n t r o l s i g n a l g e n e r a t o r c e l l ( x s i g t s t ) , b i d i r e c t i o n a l b u f f e r c e l l ( b d b t e s t ) , p i p e l i n e r e g i s t e r c e l l ( t e s t p l ) , p r o c e s s m o n i t o r ( p r o c t e s t ) , x d e c o d e r c e l l ( x d c t e s t ) , two b i t memory c e l l ( m e m t s t ) , a n d a y d e c o d e r c e l l ( y d c t s t ) . B e c a u s e o f t h e t e s t c i r c u i t r y t h e r e a r e f a r t o o many pads t o be bonded i n one package. We were t h e r e f o r e g i v e n 3 p a c k a g e s , e a c h w i t h d i f f e r e n t p o r t i o n s o f t h e c h i p bonded. F i g u r e 29. The F i r s t I t e r a t i o n C h i p 96 + 5 V I T Jl J L a l .Ik £5! 3D T g . X\N T 3 . f i T l . ? , Ti.55. Tl. AM 8 Jh. Jl 25 36 T3.7V T3.M6S. T3 .T? T 3 . W T2. VSS N/C T3-OM2. T3.D\J\ W/C lO N /C 7 0 . 2* J N/c. T 2 . M O O T 22. 3M . 3 5 . 23 + 5 + 5, 0£ - t > - o -7 " 7HC0M F i g u r e 30. S t a t i c F i r s t I t e r a t i o n T e s t C i r c u i t 97 The c i r c u i t shown i n F i g u r e 30 was f i r s t u s e d t o t e s t t h e p r o c e s s m o n i t o r t o see i f any d e v i c e s on the c i r c u i t were a l i v e . S t a t i c t e s t s c o n f i r m e d t h a t t h e n and p c h a n n e l t r a n s m i s s i o n g a t e s , and t h e i n v e r t e r were w o r k i n g c o r r e c t l y . F i g u r e 31 shows t h e m e a s u r e d i n v e r t e r c h a r a c t e r i s t i c s . U n f o r t u n a t e l y f o r some unknown r e a s o n we c o u l d n o t make t h e r i n g o s c i l l a t o r work. A c a r e f u l r e v i e w o f t h e d e s i g n as w e l l as a c a r e f u l i n s p e c t i o n under the m i c r o s c o p e r e v e a l e d no e r r o r s . One p o s s i b i l i t y i s t h a t t h e r e i s e x c e s s l o a d i n g and i n s u f f i c i e n t g a i n a r o u n d t h e l o o p to ca u s e the d e v i c e to o s c i l l a t e . Vout V O l t S 5.oJ v o l t s F i g u r e 31. P r o c e s s M o n i t o r I n v e r t e r C h a r a c t e r i s t i c s 98 T e s t s were p e r f o r m e d by G. S c h m i i n g on the d y n a mic DAC w h i c h was i n c l u d e d as a t e s t c i r c u i t on a s e p a r a t e c h i p . A 4 b i t c o u n t e r and s e v e r a l b u f f e r s , as shown i n F i g u r e 32, were used to c y c l e t h e DAC t h r o u g h a l l o f i t s s t a t e s . F i g u r e 33 shows t h e a n a l o g o u t p u t v o l t a g e as a f u n c t i o n of s t a t i c b i n a r y i n p u t s . Note t h a t t h e d e v i c e s h o w s v e r y g o o d l i n e a r i t y . N e x t a 1 MHz c l o c k was u s e d t o t e s t t h e DAC's d y n a m i c r e s p o n s e . F i g u r e 34 shows t h a t n o i s e g r e a t e r t h a n 1/2 LSB i s c o u p l e d t h r o u g h t o t h e o u t p u t . I t was d e c i d e d t h a t t o r e d u c e t h i s n o i s e t h e a n a l o g and d i g i t a l p o w e r s u p p l i e s s h o u l d be i s o l a t e d . A l s o t h e n c h a n n e l a n a l o g s w i t c h e s c o u l d be e n l a r g e d to r e d u c e t h e i r on r e s i s t a n c e . ^ VOUT F i g u r e 32. Dynamic DAC T e s t C i r c u i t 99 Vout mV Loo 2_oo F i g u r e 33. Dynamic DAC Output w i t h S t a t i c I n p u t s > A - J s * ^ . • "*""* vf^y?77^»tj!!7M#vT^ F i g u r e 34. Dynamic DAC Output a t 1 MHz 100 S t a t i c t e s t s showed t h a t t h e y were not c a p a b l e , p e r f o r m e d on e a c h of the r e m a i n i n g t e s t modules were f u n c t i o n a l l y c o r r e c t . These t e s t c i r c u i t s however, of p r e d i c t i n g d y n a m ic p e r f o r m a n c e . The f i n a l s t a g e i n t h e t e s t p r o c e d u r e was t o t e s t t h e p r o t o -t y p e p a l e t t e . A s i m i l a r c o u n t e r c i r c u i t to t h a t shown i n F i g u r e 32 was us e d to c y c l e the CRTC i n p u t s t h r o u g h a l l of t h e i r s t a t e s . The CPU i n p u t s w e r e s e t up w i t h DIP s w i t c h e s t o p e r m i t s t a t i c l o a d i n g o f t h e memory a r r a y . S e v e r a l i m m e d i a t e l a y o u t p r o b l e m s were d e t e c t e d . Vss and Vdd on the CPU o u t p u t pads were c o n n e c t e d b a c k w a r d s w h i c h r e s u l t e d i n a s h o r t c i r c u i t . The r e m e d y was t o u s e a p r o b e t o c u t t h e o u t p u t pad p o w e r l i n e s t h e r e b y m a k i n g i t i m p o s s i b l e t o t e s t t h e CPU r e a d c y c l e . A n o t h e r p r o b l e m was t h a t t h e p - w e l l o f t h e CPU i n p u t pad was n o t t i e d t o V s s . T h i s meant t h a t t h e i n p u t p a d s c o u l d n o t be t u r n e d f u l l y on and t h e r e f o r e t h e d a t a bus c o u l d n o t be p u l l e d t o V s s . F o r t u n a t e l y t h e memory a r r a y p o w e r e d up i n t h e "0" s t a t e and i t was s t i l l p o s s i b l e t o w r i t e " l " ' s i n t o i t . A n o t h e r p r o b l e m was a m e t a l to m e t a l d e s i g n r u l e v i o l a t i o n i n t h e y d e c o d e r w h i c h r e s u l t e d i n u n r e l i a b l e a c c e s s e s of odd numbered memory l o c a t i o n s . F i n a l l y , as the p r i o r DAC t e s t s i n d i c a t e d , t h e r e was s i g n i f i c a n t c o u p l i n g o f d i g i t a l n o i s e to the DAC a n a l o g o u t p u t . D e s p i t e a l l of t h e s e p r o b l e m s the t e s t r e s u l t s were e n c o u r -a g i n g . V a l u e s w r i t t e n i n t o t h e memory were c o n f i r m e d by t h e a n a l o g o u t p u t v o l t a g e s . I t was p o s s i b l e t o r u n t h e c i r c u i t i n e x c e s s of 13 MHz and s t i l l o b t a i n a r e a s o n a b l e o u t p u t . T e s t s a l s o showed t h a t the DAC s e t t l e d i n about 3 n s e c w i t h a 15 pf l o a d . 101 To s u m m a r i z e t h e n , t h e f i r s t i t e r a t i o n p r o t o t y p e demon-s t r a t e d t h a t a l l c i r c u i t m o d u l e s were f u n c t i o n a l and t h a t t h e s p e c i f i c a t i o n f o r t h e CRTC r e a d c y c l e was met. A l l p r o b l e m s d e t e c t e d were t r i v i a l to c o r r e c t on t h e s e c o n d i t e r a t i o n c h i p . Second I t e r a t i o n R e f i n e m e n t s F o r t h e s e c o n d i t e r a t i o n we i n c r e a s e d t h e memory a r r a y t o i t s f i n a l 12 by 16 b i t c o n f i g u r a t i o n . T h i s o f c o u r s e r e q u i r e d e n l a r g e m e n t s to a l l of the s u p p o r t c i r c u i t r y s u c h as the x and y d e c o d e r s . S i n c e t h e modules were d e s i g n e d to be upward c o m p a t i b l e f r o m the f i r s t i t e r a t i o n we d i d not have t o make any s i g n i f i c a n t m o d i f i c a t i o n s t o t h e i n d i v i d u a l m o d u l e s . As was d i s c u s s e d e a r -l i e r , a new s t a t i c DAC was d e s i g n e d and i n c l u d e d i n p a r a l l e l w i t h t h e d y n a m i c DAC. T h i s r e s u l t e d i n t h e r e b e i n g s i x DAC's on t h e c h i p , two f o r e a c h c o l o u r . The d e s i g n r u l e v i o l a t i o n s d e t e c t e d i n t h e f i r s t i t e r a t i o n w e r e c o r r e c t e d . P o w e r bus s i z e s w e r e i n -c r e a s e d and t h e a n a l o g p o w e r s u p p l y f o r t h e DAC's was s e p a r a t e d f r o m t h e d i g i t a l s u p p l y i n an a t t e m p t t o d e c r e a s e t h e o u t p u t n o i s e . P r o t e c t e d i n p u t p a d s w e r e u s e d and more a t t e n t i o n was g i v e n to pad p l a c e m e n t to m i n i m i z e the d i f f i c u l t y i n b o n d i n g the c h i p . T e s t c i r c u i t s f o r e a c h module were not i n c l u d e d b e c a u s e the f i r s t I t e r a t i o n t e s t r e s u l t s h a d s h o w n t h e m o d u l e s t o be f u n c -t i o n a l and b e c a u s e t h e r e was I n s u f f i c i e n t a r e a f o r t h e i r i n c l u -s i o n . S i g n a l p a t h s and m o d u l e p l a c e m e n t s w e r e t i d i e d up w h i c h r e s u l t e d i n some r e d u c e d p a t h l e n g t h s and d e c r e a s e d the chances of us making a r o u t i n g e r r o r . 102 The s e c o n d i t e r a t i o n c h i p has a p p r o x i m a t e l y 6000 d e v i c e s and i s 4070 by 6398 m i c r o n s i n s i z e . T h i s i s s i g n i f i c a n t l y l a r g e r t h a n t h e f i r s t i t e r a t i o n c h i p and t h e r e f o r e r e q u i r e d t h e use o f two new CAD t o o l s . A s e c t i o n p l o t t e r r u n n i n g on a VAX 750 was u s e d t o g i v e b l o w - u p p l o t s o f c r i t i c a l s e c t i o n s on t h e c h i p . T h e s e w e r e i n v a l u a b l e f o r e r r o r c h e c k i n g a t m o d u l e I n t e r f a c e s s u c h as where t h e memory a r r a y c o n n e c t e d t o the y d e c o d e r s . A l s o , as a f i n a l c h e c k we t o o k o u r d a t a f i l e t o P a c i f i c M i c r o c i r c u i t s L t d . w h e r e a l a r g e V e r s a t e k p l o t o f t h e e n t i r e c h i p was g e n e r -a t e d . A n o t h e r i m p o r t a n t enhancement made on t h e s e c o n d i t e r a t i o n was t h e c r e a t i o n o f a s t a n d a r d f o r m o f c e l l d o c u m e n t a t i o n . We f o u n d t h a t when s e v e r a l d e s i g n e r s work on t h e same p r o j e c t s t a n -d a r d d o c u m e n t a t i o n i s a n e c e s s i t y . I n t e g r a t e d c i r c u i t d e s i g n i s s u c h t h a t e a c h p e r s o n h a s m u l t i p l e f i l e s w i t h many e x t e r n a l r e f e r e n c e s a n d a l l o f t h e f i l e s m ust be c o r r e c t l y a s s e m b l e d a t t h e end o f t h e p r o j e c t . As a f i r s t p a s s we made a s t a n d a r d f i l e h e a d e r t h a t d e t a i l e d t h e c e l l name, f u n c t i o n , t h e d e s i g n e r ' s name, th e c e l l s i z e and b o u n d i n g box c o o r d i n a t e s , e x t e r n a l r e f e r -e n c e s , node names, and r e v i s i o n h i s t o r y . An o b v i o u s enhancement t o t h i s d o c u m e n t a t i o n would be c e l l p e r f o r m a n c e and s i m u l a t i o n d a t a . I t i s h o p e d t h a t o u r d o c u m e n t a t i o n w i l l a s s i s t w homever works on f u t u r e i t e r a t i o n s of the c o l o u r p a l e t t e a t MPR. 103 Second I t e r a t i o n R e s u l t s We r e c e i v e d e i g h t b o n d e d c h i p s on J u l y 8, 1983. F i g u r e 35 shows a p h o t o g r a p h o f t h e s e c o n d i t e r a t i o n c h i p l a y o u t and F i g u r e 36 shows t h e c i r c u i t u s e d t o t e s t t h e c h i p . P r o c e s s o r d a t a , a d d r e s s , and c o n t r o l l i n e s were s e t up w i t h DIP s w i t c h e s . V i d e o a d d r e s s e s w e r e c y c l e d t h r o u g h a l l p o s s i b l e v a l u e s w i t h a 4 b i t c o u n t e r . The p i p e l i n e r e g i s t e r c l o c k was o p e r a t e d a t t w i c e t h e f r e q u e n c y o f the v i d e o a d d r e s s g e n e r a t o r so t h a t we would have a b e t t e r c hance o f o b s e r v i n g v i d e o a c c e s s p r o b l e m s . C u r s o r y t e s t s r e v e a l e d t h a t e a c h o f t h e e i g h t c h i p s had d i f f e r e n t c h a r a c t e r i s t i c s . C h i p n u m b e r s 2, 7, a n d 8 had s h o r t c i r c u i t s a nd c o u l d n o t be t e s t e d . C h i p s 3, 4, and 6 had c o n t r o l c i r c u i t r y o r a d d r e s s bus p r o b l e m s r e n d e r i n g a l l t h r e e c o l o u r guns i n o p e r a t i v e . C h i p s 1 a n d 5 e x h i b i t e d some l i f e a n d t h e m a j o r i t y of t e s t s c o n c e n t r a t e d on t h e s e two c h i p s . The p r o b l e m o f n o n - u n i f o r m r e s u l t s was a l s o p r e s e n t on i n d i v i d u a l c h i p s . T e s t s on c h i p #1, f o r e x a m p l e , d e m o n s t r a t e d t h a t w h i l e t h e m a j o r i t y o f memory c e l l s w e r e w o r k i n g , d e f e c t s w e r e r a n d o m l y s c a t t e r e d t h r o u g h o u t t h e a r r a y a n d i n c l u d e d b i t s t h a t w o u l d n o t c h a n g e s t a t e , b i t s t h a t w o u l d c h a n g e s t a t e o n l y o n c e , and b i t s t h a t s e e m e d t o a f f e c t t h e s t a t e o f o t h e r b i t s . T a b l e V I I I s u m m a r i z e s the t e s t r e s u l t s on t h e memory i n c h i p #1. D e t e r m i n i n g t h e ca u s e of t h e d e f e c t s was e x t r e m e l y d i f f i c u l t . I f a memory d e s i g n e r r o r e x i s t e d one w o u l d e x p e c t t h e e r r o r s t o o c c u r i n t h e same l o c a t i o n s o f e a c h o f t h e t h r e e c o l u m n s o f 104 Figure 35. The Second I t e r a t i o n Chip 105 I *3S ml 1 j 36 3^ i "25 24 30 '3 -DiJ. -Ch — - — — — .Do ft l i -ra. \o\<. x ^ § --4 c.j £•1 K j> 20 s ^ F i g u r e 36. Second I t e r a t i o n T e s t C i r c u i t 106 n i b b l e s , s i n c e t h e y a r e e x a c t d u p l i c a t e s of each o t h e r . T h i s not the c a s e as no l o g i c a l p a t t e r n of e r r o r s was o b v i o u s . wa s Memory | L o c a t i o n j +-Gun 15 | A4 = 0 A5=l | +. Gun 17 A4 = l A5=0 Gun 19 A4=0 A5=0 -+-b i t 3 bad ok ok ok b i t 2 bad ok ok bad ok ok bad ok ok ok ok bad bad ok ok ok bad ok ok b i t 4 = 0 ok b i t 3 = 0 b i t 3 = 0 ok ok b i t s 0 once o n l y b i t s 0 once o n l y b i t s 0 once o n l y bad ok ok ok ok ok ok ok ok ok ok ok ok a f f e c t s o t h e r s ok bad T a b l e V I I I . C h i p #1 Memory T e s t Summary 107 C h i p it 5 d e m o n s t r a t e d e v e n more i n c o n s i s t e n t r e s u l t s t h a n c h i p #1. W i t h c h i p #1 i t was p o s s i b l e t o r e a d b a c k w r i t t e n d a t a t o c o n f i r m t h a t the memory c o n t a i n e d what we e x p e c t e d . Read back d a t a f r o m c h i p // 5 on t h e o t h e r h a n d ha d no c o r r e l a t i o n t o t h e w r i t t e n d a t a . O n l y one d e s i g n e r r o r was c o n f i r m e d on t h e s e c o n d i t e r a t i o n c h i p . The p o l y s i l i c o n c l o c k l i n e t o the d y n a mic DAC i n a d v e r t e n t l y c r o s s e s t h e d y n a m i c DAC's a n a l o g p o w e r l i n e w h i c h i s r o u t e d i n d i f f u s i o n . The r e s u l t i n g n o r m a l l y c l o s e d s w i t c h made the d y n a m i c DACs i n o p e r a t i v e . The e r r o r was i n p a r t c a u s e d by t h e u s e o f f i l t e r p l o t s to do t h e g l o b a l r o u t i n g . F i l t e r i n g removes e x c e s s , and o b v i o u s l y s o m e t i m e s c r i t i c a l , i n f o r m a t i o n f r o m t h e p l o t s . F o r t u n a t e l y t h e new s t a t i c DAC w o r k s c o r r e c t l y as was demon-s t r a t e d by o u r a b i l i t y t o g e n e r a t e e a c h o f t h e s i x t e e n p o s s i b l e o u t p u t v o l t a g e s on c h i p #1. W h i l e t h e r e a p p e a r s to be more t h a n one c a u s e of the memory d e f e c t s we d i d come up w i t h a p r o m i s i n g h y p o t h e s i s to e x p l a i n t h e i n t e r a c t i o n between b i t s . I t was n o t i c e d t h a t the a p p a r e n t s t a t e o f a d e f e c t i v e b i t o f t e n d e p e n d e d on t h e p r e v i o u s s t a t e o f t h e d a t a bus. More s p e c i f i c a l l y , i f the d a t a bus was h i g h j u s t p r i o r t o a c c e s s i n g t h e d e f e c t i v e b i t i t a p p e a r e d t o be s t u c k h i g h , w hereas i f t h e d a t a bus was low p r i o r to a c c e s s i n g the d e f e c t i v e b i t i t a p p e a r e d t o f u n c t i o n c o r r e c t l y . Our h y p o t h e s i s was t h a t t h e d e f e c t i v e b i t s h a d p r o b l e m s w i t h t h e n c h a n n e l h a l v e s of t h e i r o u t p u t d r i v e r s and t h e r e f o r e w e r e u n a b l e t o p u l l t h e d a t a bus down to g r o u n d . Armed w i t h the p u l l - d o w n h y p o t h e s i s we went 108 '1 back and r e v i e w e d our t e s t r e s u l t s t o see i f any of the problems c o u l d be e x p l a i n e d . Some of the p r e v i o u s l y i n c o m p r e h e n s i b l e r e -s u l t s f r o m c h i p #5 were v e r y n e a t l y e x p l a i n e d . To f u r t h e r s u b s t a n t i a t e our p u l l - d o w n h y p o t h e s i s we used a p h o t o d i o d e e f f e c t . F i r s t , z e r o e s were w r i t t e n i n t o a l l memory l o c a t i o n s . T h i s made the bus s t a t e low p r i o r to a c c e s s i n g each of the d e f e c t i v e b i t s and the o u t p u t s t h e r e f o r e c o r r e c t l y d i s p l a y e d the l o w e s t a n a l o g v o l t a g e . Next, the l i d on the c h i p was removed and a b r i g h t i n c a n d e s c e n t l i g h t was shone on the c h i p . The known d e f e c t i v e b i t s i m m e d i a t e l y d i s p l a y e d a h i g h s t a t e . When the l i g h t was t u r n e d o f f t h e b i t s r e v e r t e d to t h e i r c o r r e c t z e r o s t a t e . The l i g h t a p p a r e n t l y g e n e r a t e d enough c h a r g e c a r r i e r s on the d a t a bus t o c a u s e i t t o f l o a t h i g h when t h e b i t s w i t h d e f e c t i v e p u l l - d o w n s were a c c e s s e d . We t h e n r e t u r n e d to our l a y o u t p l o t s of the memory c e l l and by e l i m i n a t i n g t h o s e s e c t i o n s t h a t we knew f r o m t e s t s were work-i n g c o r r e c t l y we p i n - p o i n t e d w h e r e on t h e c h i p we t h o u g h t the p u l l - d o w n p r o b l e m was o c c u r r i n g . S i n c e no d e s i g n e r r o r was a p p a r -ent f r o m the p l o t s we s u s p e c t e d a f a b r i c a t i o n p r o b l e m . The c h i p s were p l a c e d under a m i c r o s c o p e and the a r e a i n q u e s t i o n s c r u t i -n i z e d . U n f o r t u n a t e l y no p r o b l e m was v i s i b l e , however, many o t h e r f a b r i c a t i o n d e f e c t s w e r e o b v i o u s e l s e w h e r e on t h e c h i p s . T h e s e d e f e c t s i n c l u d e d p a r t i a l l y b r o k e n m e t a l l i n e s , s h o r t c i r c u i t s , d e e p s c r a t c h e s a n d g o u g e s on t h e s u r f a c e , a b n o r m a l c o n t a c t s , f o r e i g n m a t e r i a l , and i m p r o p e r l y s t r i p p e d p h o t o r e s i s t . 109 Many of the p r o b l e m s a p p a r e n t l y were i n t r o d u c e d d u r i n g the w a f e r s l i c i n g and b o n d i n g p r o c e d u r e s . We t h e r e f o r e r e q u e s t e d and r e c e i v e d a new s e t of 16 unbonded c h i p s t h a t came f r o m a d i f f e r -e nt w a f e r . B e f o r e b o n d i n g t h e s e c h i p s we t h o u g h t i t w i s e to l o o k a t them under the m i c r o s c o p e f o r any o b v i o u s p r o b l e m s . E v e r y one o f t h e s e c h i p s e x h i b i t e d s e r i o u s s u r f a c e d e f e c t s o f t h e n a t u r e d e s c r i b e d above. To s u m m a r i z e t h e r e s u l t s t h e n , we d e m o n s t r a t e d t h a t e a c h module f u n c t i o n e d c o r r e c t l y , however no one c h i p c o n t a i n e d mod-u l e s t h a t a l l f u n c t i o n e d s i m u l t a n e o u s l y . T h e r e a r e two o b v i o u s e x p l a n a t i o n s . F i r s t , a d e s i g n e r r o r may e x i s t , however, s i n c e the p r o b l e m s a r e n o t c o n s i s t e n t f r o m c h i p t o c h i p i t must be a m a r g i -n a l v i o l a t i o n . I f e e l t h a t t h i s e x p l a n a t i o n , w h i l e p o s s i b l e , i s n o t p r o b a b l e b e c a u s e o f o u r v e r y c o n s e r v a t i v e d e s i g n a p p r o a c h . The s e c o n d p o s s i b i l i t y i s t h a t t h e r e a r e p r o b l e m s w i t h the f a b r i -c a t i o n o f t h e c h i p . T h i s m i g h t e x p l a i n t h e i n c o n s i s t e n t r e s u l t s and i s s u r e l y s u b s t a n t i a t e d by o u r m i c r o s c o p e o b s e r v a t i o n s . A t h i r d l e s s o b v i o u s p o s s i b i l i t y i s a c o m b i n a t i o n of the two. Y i e l d d e c r e a s e s r a p i d l y as the c h i p s i z e i n c r e a s e s . I t may t h e r e f o r e be a c a s e of too l a r g e a c h i p and too s m a l l a t e s t s a m ple. We f e e l t h a t the most p r o b a b l e e x p l a n a t i o n i s the t h a t t h e r e were p r o b l e m s w i t h t h e c h i p f a b r i c a t i o n . Our d e s i g n has t h e r e f o r e b e e n r e s u b m i t t e d u n c h a n g e d f o r f a b r i c a t i o n t o s e e i f any o f t h e p r o b l e m s d i s a p p e a r . I t i s l i k e l y t h a t o u r d e s i g n w i l l s t i l l r e q u i r e f i n e t u n i n g t o meet the p e r f o r m a n c e s p e c i f i c a t i o n s but a t 110 l e a s t we may o b t a i n c o n s i s t e n t r e s u l t s f r o m w h i c h we can l o c a t e the a r e a s t h a t r e q u i r e i m p r o v e m e n t s . I l l CHAPTER 8: CONCLUSIONS T h i s t h e s i s h a s made a v a r i e t y o f u s e f u l c o n t r i b u t i o n s . I n t e g r a t e d c i r c u i t d e s i g n i s a new f i e l d o f s t u d y and as s u c h a d e t a i l e d o v e r v i e w o f t h e t o p i c w i t h e m p h a s i s on c o m p u t e r a i d e d d e s i g n was w a r r a n t e d . ISO-CMOS, a r e l a t i v e l y new f a b r i c a t i o n p r o -c e s s t h a t i s be c o m i n g a s t a n d a r d , was a l s o d i s c u s s e d . A n o v e l i n t e g r a t e d c i r c u i t , t h e c o l o u r p a l e t t e , was d e -s i g n e d , f a b r i c a t e d , and t e s t e d i n two s t a g e s . The f i r s t s t a g e r e s u l t e d i n a s c a l e d down p r o t o t y p e w i t h t e s t c i r c u i t r y , and the s e c o n d s t a g e r e s u l t e d i n a f u l l s i z e c o l o u r p a l e t t e . The c o l o u r p a l e t t e c o m b i n e s d i g i t a l a nd a n a l o g c i r c u i t r y on t h e same s u b -s t r a t e and c o n s i s t s of a d u a l p o r t s t a t i c memory a r r a y w i t h t h r e e d i g i t a l t o a n a l o g c o n v e r t e r s . The f u l l s i z e c o l o u r p a l e t t e c o n -t a i n s a b o u t 6000 d e v i c e s and was t h e l a r g e s t c h i p d e s i g n e d t o d a t e a t M i c r o t e l P a c i f i c R e s e a r c h L t d . U n l i k e many n o v e l c i r c u i t s r e p o r t e d i n the l i t e r a t u r e , our t e s t r e s u l t s were d i s c l o s e d . A l l c i r c u i t modules were f u n c t i o n a l on t h e f i r s t i t e r a t i o n , h o w e v e r , s e v e r a l d e s i g n e r r o r s were d e t e c t e d and c o r r e c t e d f o r the s e c o n d i t e r a t i o n . Second i t e r a t i o n t e s t r e s u l t s s h o w e d t h a t e a c h o f t h e m o d u l e s f u n c t i o n e d c o r -r e c t l y , a l b e i t n o t s i m u l t a n e o u s l y on t h e same c h i p . M o s t o f t h e e v i d e n c e p o i n t s to f a b r i c a t i o n p r o b l e m s and as s u c h the c h i p has been r e s u b m i t t e d f o r f a b r i c a t i o n . 112 I n a d d i t i o n t o b e i n g an e x c e l l e n t v e h i c l e f o r t e s t i n g new c o n c e p t s i n c o m p u t e r a i d e d d e s i g n , s u c h as a r e g u l a r s t r u c t u r e d d e s i g n m e t h o d o l o g y , the c o l o u r p a l e t t e has many a p p l i c a t i o n s and has a v e r y s t r o n g market p o t e n t i a l . 113 BIBLIOGRAPHY A v e n i e r , J e a n P i e r r e , " D i g i t i z i n g , L a y o u t , R u l e C h e c k i n g - The E v e r y d a y T a s k s of C h i p D e s i g n e r s " , P r o c . of I E E E , v o l . 71, no. 1, pp. 49-56, J a n . 1983. B a y l i s s , J o hn A., J . A. D e e t z , C. K. Ng, S. A. O g i l v i e , C. B. P e t e r s o n , and D. K. W i l d e , "The I n t e r f a c e P r o c e s s o r f o r t h e I n t e l VLSI 432 3 2 - b i t Computer", IEEE J o u r n a l of S o l i d S t a t e C i r c u i t s , v o l . SC-16, no. 5, pp. 522-530, O c t . 1981. B l a c k , K y l e M. and P. Kent H ardage, "Advanced S y m b o l i c A r t w o r k P r e p a r a t i o n ( A S A P ) " , H e w l e t t - P a c k a r d J o u r n a l , v o l . 3 2 , no. 6, pp. 8-10, J u n e 1981. B r y a n t , R a n d a l E., "MOSSIM: A S w i t c h - L e v e l S i m u l a t o r f o r MOS L S I " , 18th 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 , pp. 786-790, 1981. B u r s t e i n , M i c h a e l and R i c h a r d P e l a v i n , " H i e r a r c h i c a l C h a n n e l R o u t e r " , I n t e g r a t i o n , v o l . 1, no. 0, pp. 21-38, March 1983. Canepa, Mark, Ed Weber, and H a r l a n T a l l e y , "VLSI i n F o c u s : D e s i g n i n g a 3 2 - b i t CPU C h i p " , VLSI D e s i g n , v o l . IV, no. 1, pp. 20-24, J a n . / F e b . 1983. CBEMA (Computer and B u s i n e s s Equipment M a n u f a c t u r e r s A s s o c i a t i o n ) , " D r a f t P r o p o s e d NAPLPS S t a n d a r d Document #BSRX3.110-198X", X3 S e c r e t a r i a t , CBEMA, 311 F i r s t St., NW, W a s h i n g t o n DC, 20001, 1983. Cheng, Gordon, "UBC LAP System User's Manual", Dept. o f E l e c t r i c a l E n g i n e e r i n g , U n i v . of B r i t i s h C o l u m b i a , March 1982. Cheng, Gordon, "SPICE S i m u l a t i o n of S e l e c t e d C r i t i c a l P a t h D e l a y s f o r the C o l o r P a l e t t e " , D ept. of E l e c t r i c a l E n g i n e e r i n g , U n i v . of B r i t i s h C o l u m b i a , May 1983. Chwang, R o n a l d , and Ken Yu, "C-HMOS - An N W e l l B u l k CMOS T e c h n o l o g y f o r V L S I " , VLSI D e s i g n , v o l . 2, no. 4, pp. 42-47, F o u r t h Q u a r t e r 1981. Cohen, Danny and Vance Ty r e e , " Q u a l i t y C o n t r o l from the S i l i c o n B r o k e r ' s P e r s p e c t i v e " , VLSI D e s i g n , v o l . 3, no. 4, pp. 24-30, J u l y / A u g . 1982. Conway, L y n n , "The MPC A d v e n t u r e s " , X e r o x P a l o A l t o R e s e a r c h C e n t e r , 1981. Conway, Lynn, "The MIT '78 VLSI System D e s i g n C o u r s e " , L S I Systems A r e a , Xerox P A R C , 1979. 114 Cook, P. W., S. E. S c h u s t e r , J . T. P a r r i s h , V. D i l o n a r d o , and D. R. Freedman, "1 um MOSFET VLSI T e c h n o l o g y : P a r t I I I -L o g i c C i r c u i t D e s i g n M e t h o d o l o g y and A p p l i c a t i o n s " , I E E E T r a n s , on E l e c t r o n D e v i c e s , v o l . ED-26, no. 4, pp. 333-346, A p r i l 1979. C o r b i n , L. V., "Custom VLSI E l e c t r i c a l R u l e C h e c k i n g i n an I n t e l l i g e n t T e r m i n a l " , 18th IEEE 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 , pp. 696-701, 1981. CSA ( C a n a d i a n S t a n d a r d s A s s o c i a t i o n ) , " P r e l i m i n a r y S t a n d a r d T500-1982 V i d e o t e x / T e l e t e x t P r e s e n t a t i o n L e v e l P r o t o c o l S y n t a x ( N o r t h A m e r i c a n P L P S ) " , August 1982. D w i v e d i , K a m a l e s h , "A R e p o r t on MOS Model Changes i n SPICE2F", IC CAD, M i t e l C o r p o r a t i o n , A p r i l 1982. E l m a s r y , M. I . , " S t i c k - L a y o u t N o t a t i o n f o r B i p o l a r V L S I " , VLSI D e s i g n , v o l . 4, no. 2, pp. 65-69, Mar./Apr. 1983. E s t r e i c h , D o n a l d B. and R o b e r t W. D u t t o n , " M o d e l i n g L a t c h - U p i n CMOS I n t e g r a t e d C i r c u i t s " , IEEE T r a n s , on CAD of IC's and Systems, v o l . CAD-1, no. 4, pp. 157-162, O c t . 1982. F a i r b a i r n , D o u g l a s G., " V L S I : A New F r o n t i e r f o r Systems D e s i g n e r s " , Computer, pp 87-96, J a n . 1982. F e u e r , M i c h a e l , "VLSI D e s i g n A u t o m a t i o n : An I n t r o d u c t i o n " , P r o c . of t h e I E E E , v o l . 71, no. 1, pp. 5-9, J a n . 1983. F l e i s h e r , H. and L. I . M a i s s e l , "An I n t r o d u c t i o n to A r r a y L o g i c " , IBM J o u r n a l of Res. D e v e l o p . , v o l . 19, pp. 98-109, March 1975. F l e m i n g , J i m and W i l l i a m F r e z z a , "NAPLPS: A New S t a n d a r d f o r T e x t and G r a p h i c s " , B y t e , P a r t 1: v o l . 8, no. 2, pp. 203-254, Feb. 1983; P a r t 2: v o l . 8, no. 3, pp. 152-186, Mar. 1983; P a r t 3: v o l . 8, no. 4, pp. 190-206, A p r i l 1983; P a r t 4: v o l . 8, no. 5, pp. 272-284, May 1983. G a l e , Dan, "VLSI i n Canada", VLSI I m p l e m e n t a t i o n C e n t r e , Queen's U n i v e r s i t y , v o l . 1, no. 1, pp. 1-4, A p r i l 1983. G l a s e r , A r t h u r B. and G e r a l d E. S u b a k - S h a r p e , " I n t e g r a t e d C i r c u i t E n g i n e e r i n g " , A d d i s o n - W e s l e y , pp. 2, 1977. G l a s s e r , Lance A. and P a u l P e n f i e l d , "An I n t e r a c t i v e PLA G e n e r a t o r as an A r c h e t y p e f o r a New VLSI D e s i g n M e t h o d o l o g y " , IEEE I n t . C o n f . on C i r c u i t s and Computers, 1980. G o a t e s , G. B., T. R. H a r r i s , R. E. O e t t e l , and H. M. Waldron I I I , " S t o r a g e / L o g i c A r r a y D e s i g n : R e d u c i n g T h e o r y to P r a c t i c e " , V L S I D e s i g n , v o l . 3, no. 4, pp. 56-62, J u l y / A u g . 1982. 115 Goto, S a t o s h i "An E f f i c i e n t A l g o r i t h m f o r the T w o - D i m e n s i o n a l P l a c e m e n t P r o b l e m i n E l e c t r i c a l C i r c u i t L a y o u t " , IEEE T r a n s , on C i r c u i t s and Systems, v o l . CAS-28, no. 1, pp. 12-18, J a n . 1981. G r i s w o l d , Tom, " P o r t a b l e D e s i g n R u l e s f o r B u l k CMOS", VLSI D e s i g n , v o l . 3, no. 5, pp. 62-67, S e p . / O c t . 1982. G u l e t t , M i c h a e l R., "The CMOS C o n t r o v e r s y " , VLSI D e s i g n , v o l . 2, no. 4, pp. 50-52, F o u r t h Q u a r t e r 1981. Guy, Thomas S., L i n d a M. T r y t h a l l , and A r t h u r J . B r o d e r s e n , "A S i x t e e n - B i t M o n o l i t h i c B i p o l a r DAC", IEEE J o u r n a l of S o l i d S t a t e C i r c u i t s , v o l . SC-17, no. 6, pp. 1127-1132, Dec. 1982. H a c h t e l , Gary D. and A. S a n g i o v a n n i - V i n c e n t e l l i , "A S u r v e y of T h i r d - G e n e r a t i o n S i m u l a t i o n T e c h n i q u e s " , P r o c . of IEEE, v o l . 69, no. 10, pp. 1264-1280, O c t . 1981. Haydamack, W. J . and D. J . G r i f f i n , "VLSI D e s i g n S t r a t e g i e s and T o o l s " , H e w l e t t - P a c k a r d J o u r n a l , v o l . 32, no. 6, pp. 5-12, June 1981. H e p l e r , Edward L e e , "A F u n c t i o n a l S i m u l a t i o n System f o r MSI and L S I Systems", Ph.D. T h e s i s , D r e x e l U n i v . , June 1979. H e u f t , R i c k , " A l b e r t a H i g h - L e v e l Language - AHF", VLSI i n Canada, v o l . 1, no. 1, pp. 10-13, A p r i l 1983. H e w l e t t - P a c k a r d , "HPSPICE U s e r ' s M a n u a l " , D e s i g n A i d s , DA320.3c, O c t . 1980. H e w l e t t - P a c k a r d , "DRAW U s e r ' s M a n u a l " , D e s i g n A i d s , DA180.1d, June 1981. Hon, R o b e r t W. a n d C a r l o H. S e q u i n , "A G u i d e t o L S I I m p l e m e n t a t i o n " , Xerox P a l o A l t o R e s e a r c h C e n t e r , 1980. Hong, Se June and R a v i N a i r , " W i r e - R o u t i n g M a c h i n e s - New T o o l s f o r VLSI P h y s i c a l D e s i g n " , P r o c . of IE E E , v o l . 71, no. 1, pp. 57-65, J a n . 1983. I n t e c h , " H y b r i d T r i p l e 4 B i t C o l o r Mapped V i d e o DAC (RGB DAC 4T) P r e l i m i n a r y S p e c i f i c a t i o n s " , M i c r o c i r c u i t s D i v i s i o n , I n t e c h I n c . , pp. 1-6, 1982. I n t e l , "MCS-80/85 F a m i l y U s e r ' s M a n u a l " , pp. 4-1, O c t . 1979. J a n s e n , W. D. and D. G. F a i r b a i r n , "The S i l i c o n F o u n d r y : C o n c e p t s and R e a l i t y " , Lambda, v o l . 2, no. 1, pp. 16-26, F i r s t Q u a r t e r 1981. 116 J e n n e , D a v i d C. and D a v i d A. Stamm, "Managing VLSI C o m p l e x i t y : A U s e r ' s P e r s p e c t i v e " , VLSI D e s i g n , v o l . 3, no. 2, pp. 14-20, M a r c h / A p r i l 1982. J o n e s , M o r t o n E., " S e m i c o n d u c t o r s : The Key to C o m p u t a t i o n a l P l e n t y " , P r o c . of I E E E , v o l . 70, no. 12, pp. 1380-1409, Dec. 1982. Kang, Sung Mo, "A D e s i g n of CMOS P o l y c e l l s f o r L S I C i r c u i t s " , IEEE T r a n s , on C i r c u i t s and Systems, v o l . CAS-28, no. 8, pp. 838-843, August 1981. K i n o s h i t a , G. and M. Beguwala, "SOS - A C a n d i d a t e f o r V L S I " , Lambda, v o l . 2, no. 2, pp. 70-73, Second Q u a r t e r 1981. Krambeck, R. H., C h a r l e s M. L e e , and H u n g - F a i S t e p h e n Law, "Hi g h - S p e e d Compact C i r c u i t s w i t h CMOS", IEEE J o u r n a l of S o l i d S t a t e C i r c u i t s , v o l . SC-17, no. 3, pp. 614-618, June 1982. Lang , D., "LAP U s e r ' s M anual", S i l i c o n S t r u c t u r e s P r o j e c t , SSP F i l e #3356, C a l t e c h , Dec. 1979. L a t t i n , W i l l i a m W., "VLSI D e s i g n M e t h o d o l o g y : The Pr o b l e m s of the 80's f o r M i c r o p r o c e s s o r D e s i g n s " , F i r s t C a l t e c h C o n f e r e n c e on V L S I , J a n u a r y 1979. L a t t i n , W. W., J . A. B a y l i s s , D. L. Budde, J . R. R a t t n e r , W. S. R i c h a r d s o n , "A M e t h o d o l o g y f o r VLSI C h i p D e s i g n " , Lambda, v o l . 2, no. 2, pp. 34-44, 2nd q u a r t e r 1981. Lax, Leo and Mark O l s e n , "NAPLPS S t a n d a r d G r a p h i c s and the M i c r o c o m p u t e r " , B y t e , v o l . 8, no. 7, pp. 82-92, J u l y 1983. Lipman, J i m , " L a t c h u p P r e v e n t i o n i n B u l k P - W e l l CMOS C i r c u i t s " , V LSI D e s i g n , v o l . 3, no. 3, pp. 30-30, May/June 1982. London, A r n i e , "Two-Layer M e t a l CMOS v s . Two-Layer P o l y CMOS", VLSI D e s i g n , v o l . 4, no. 2, pp. 62-63, Mar./Apr. 1983. L y o n , R i c h a r d F., " S i m p l i f i e d D e s i g n R u l e s f o r VLSI L a y o u t s " , Lambda, v o l . 2, no. 1, pp. 54-59, F i r s t Q u a r t e r 1981. Mack, W i l l i a m D., Mark H o r o w i t z , and R o b e r t A. B l a u s c h i l d , "A 14 B i t Dual-Ramp DAC f o r D i g i t a l - A u d i o S y stems", IEEE J o u r n a l of S o l i d S t a t e C i r c u i t s , v o l . SC-17, no. 6, pp. 1118-1126, Dec. 1982. Mead, C a r v e r and Lynn Conway, " I n t r o d u c t i o n t o VLSI Systems", A d d i s o n - W e s l e y , 1980. M e r c e r , M e l v i n Ray, " D i g i t a l D e s i g n f o r T e s t a b i l i t y and C o n c u r r e n t F a u l t D e t e c t i o n i n L S I and VLSI D e v i c e s " , Ph.D. T h e s i s , U n i v . of Texas a t A u s t i n , August 1980. 117 M i t e l , "An I n t r o d u c t i o n to ISO-CMOS T e c h n o l o g y " , M i t e l C o r p . , A p p l i c a t i o n Note MSAN-104, O c t . 1981. Newton, A r t h u r R i c h a r d , "The S i m u l a t i o n of L a r g e S c a l e I n t e g r a t e d C i r c u i t s " , Ph.D. T h e s i s , U n i v . of C a l i f o r n i a a t B e r k e l e y , J u l y 1978. Newton, A r t h u r R i c h a r d , " T e c h n i q u e s f o r t h e S i m u l a t i o n of L a r g e S c a l e I n t e g r a t e d C i r c u i t s " , IEEE T r a n s , on C i r c u i t s and Systems, v o l . CAS-26, no. 9, pp. 741-749, S e p t . 1979. Newton, A r t h u r R i c h a r d , " C o m p u t e r - A i d e d D e s i g n of VLSI C i r c u i t s " , P r o c . o f IE E E , v o l . 69, no. 10, pp. 1189-1199, O c t . 1981. Newton, A r t h u r R i c h a r d , D o n a l d 0. P e d e r s o n , A. S a n g i o v a n n i -V i n c e n t e l l i , and C. S e q u i n , " D e s i g n A i d s f o r V L S I : The B e r k e l e y P e r s p e c t i v e " , IEEE T r a n s , on C i r c u i t s and Systems, v o l . CAS-28, no. 7, pp. 666-680, J u l y 1981. N i e s s e n , C , " H i e r a r c h i c a l D e s i g n M e t h o d o l o g i e s and T o o l s f o r VLSI C h i p s " , P r o c . of IE E E , v o l . 71, no. 1, pp. 66-75, J a n . 1983. Noy c e , R o b e r t N., " M i c r o e l e c t r o n i c s " , S c i e n t i f i c A m e r i c a n , v o l . 237, no. 3, pp. 63-69, S e p t . 1977. O c h i i , K., K. H a s h i m o t o , H. Yasuda, M. Masuda, T. Kondo, H. Nozawa, and S. Kohyama, "An U l t r a l o w Power 8K x 8 - B i t F u l l CMOS RAM w i t h S i x - T r a n s i s t o r C e l l " , IEEE J o u r n a l of S o l i d S t a t e C i r c u i t s , v o l . SC-17, no. 5, pp. 798-803, O c t . 1982. P a r r i l l o , L. C , R. S. Payne, R. E. D a v i s , G. W. R e u t l i n g e r , and R. L. F i e l d , "Twin-Tub CMOS - A T e c h n o l o g y f o r VLSI C i r c u i t s " , IEEE I n t . E l e c t r o n D e v i c e s M e e t i n g , pp. 752-755, 1980. P a t i l , S. S. and T. A. Welch, "A Programmable L o g i c A p p r o a c h f o r V L S I " , IEEE T r a n s , on Computers, v o l . C-28, no. 9, pp. 594-601, S e p t . 1979. Po s a , John G., "C-MOS I n s p i r e s the B e s t C h i p s Y e t f o r Computer, Consumer, and Communication A p p l i c a t i o n s " , E l e c t r o n i c s , v o l . 54, no. 20, pp. 103-105, O c t . 6, 1981. P o s t , H a n s - U l r i c h and K a r l Schoppe , "A 14 B i t M o n o t o n i c NMOS D/A C o n v e r t e r " , IEEE J o u r n a l of S o l i d S t a t e C i r c u i t s , v o l . SC-18, no. 3, pp. 297-301, June 1983. P r e a s , B r y a n Thomas, " P l a c e m e n t and R o u t i n g A l g o r i t h m s f o r H i e r a r c h i c a l I n t e g r a t e d C i r c u i t L a y o u t " , Ph.D. T h e s i s , S t a n f o r d U n i v . , August 1979. 118 P u l f r e y , D a v i d L., "An E x p a n d a b l e , F u l l y A s y n c h r o n o u s CMOS S t a t i c RAM f o r t h e MPR C e l l L i b r a r y " , M i c r o t e l P a c i f i c R e s e a r c h L t d . , June 9, 1983. R a e t h , P e t e r G., John M. Acke n , Gary B. Lamont, and John M. B o r k y , " F u n c t i o n a l M o d e l l i n g f o r L o g i c S i m u l a t i o n " , 18th IEEE 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 , 1981. R o f f e l s e n , L a r r y , "Gate A r r a y s : A U s e r ' s P e r s p e c t i v e " , Lambda, v o l . 2, no. 1, pp. 32-36, F i r s t Q u a r t e r 1981. R u e h l i , A l b e r t E. and Gary S. D i t l o w , " C i r c u i t A n a l y s i s , L o g i c S i m u l a t i o n , and D e s i g n V e r i f i c a t i o n f o r V L S I " , P r o c . of I E E E , v o l . 71, no. 1, pp. 34-48, J a n . 1983. S c h m i i n g , G e r h a r d , "Hardware F u n c t i o n a l S p e c i f i c a t i o n f o r C o l o r P a l e t t e I n t e g r a t e d C i r c u i t " , M i c r o t e l P a c i f i c R e s e a r c h L t d . , Aug u s t 1982. S c h o f i e l d , D a r r y l and D. F a i r b a i r n , " S t u m b l i n g B l o c k s t o Gate A r r a y A c c e p t a n c e " , Lambda, v o l . 2, no. 2, pp. 16-17, Second Q u a r t e r 1981. S e q u i n , C a r l o H., "Managing VLSI C o m p l e x i t y : An O u t l o o k " , P r o c . of I E E E , v o l . 71, no. 1, pp. 149-166, J a n . 1983. S e q u i n , C a r l o H., "VLSI D e s i g n " , H e l l m a n A s s o c i a t e s , 1981. S h i v a , S a j j a n G., "Automated Hardware S y n t h e s i s " , P r o c . o f IE E E , v o l . 71, no. 1, pp. 76-87, J a n . 1983. Simmons, A., "ISO-CMOS P r o c e s s Sequence", GTE L t d . , J a n . 14, 1982. S m i t h , D a v i d , " N o r t h e r n T e l e c o m E l e c t r o n i c s 4um CMOS P r o c e s s "CM0S1B" D e s i g n I n f o r m a t i o n and G u i d e l i n e s " , S e m i c o n d u c t o r Components Group, N o r t h e r n T e l e c o m L t d . , May 1983. S m i t h , K. F., T. M. C a r t e r , and C. E. H u n t , " S t r u c t u r e d L o g i c D e s i g n of I n t e g r a t e d C i r c u i t s U s i n g t h e S t o r a g e / L o g i c A r r a y ( S L A ) , IEEE T r a n s , on E l e c t r o n D e v i c e s , v o l . ED-29, no. 4, pp. 765-776, A p r i l 1982. Sn y d e r , Warren, "CMOS D e s i g n System", M i c r o t e l P a c i f i c R e s e a r c h L t d . , 1982. Soukup, J i r i , " C i r c u i t L a y o u t " , P r o c . o f IE E E , v o l . 69, no. 10, pp. 1281-1304, O c t . 1981. Sze, S. M., " P h y s i c s of S e m i c o n d u c t o r D e v i c e s " , John W i l e y and Sons, 1969. S z i r o m , S t e v e , "Custom/Semicustorn IC I n d u s t r y B u s i n e s s U p d a t e " , VLSI D e s i g n , v o l . 4, no. 1, pp. 30-34, J a n . / F e b . 1983. 119 Thomas, D o n a l d E., "The Automated S y n t h e s i s of D i g i t a l S ystems", P r o c . of I E E E , v o l . 69, no. 10, pp. 1200-1211, O c t . 1981. T r i m b e r g e r , S t e p h e n , " A u t o m a t i n g C h i p L a y o u t " , IEEE S p e c t r u m , v o l . 19, no. 6, pp. 38-45, June 1982. T r i m b e r g e r , S t e p h e n , James A. Rowson, C h a r l e s R. Lang, and John P. Gray, "A S t r u c t u r e d D e s i g n M e t h o d o l o g y and A s s o c i a t e d S o f t w a r e T o o l s " , IEEE T r a n s , on C i r c u i t s and S y s tems, v o l . CAS-28, no. 7, pp. 618-634, J u l y 1981. T s u i , F r a n k F., " I n - S i t u T e s t a b i l i t y D e s i g n (ISTD) - A New A p p r o a c h f o r T e s t i n g H i g h - S p e e d L S I / V L S I L o g i c " , P r o c . of I E E E , v o l . 70, no. 1 , pp. 59-78, J a n . 1982. T u c k e r , M i c h a e l G. and W i l l i a m J . Haydamack, "VLSI D e s i g n and A r t w o r k V e r i f i c a t i o n " , H e w l e t t - P a c k a r d J o u r n a l , v o l . 32, no. 6, pp. 25-28, June 1981. V l a d i m i r e s c u , A n d r e i and S a l l y L i u , "The S i m u l a t i o n of MOS I n t e g r a t e d C i r c u i t s U s i n g SPICE2", E l e c t r o n i c s R e s e a r c h L a b o r a t o r y , C o l l e g e of E n g i n e e r i n g , U n i v . of B e r k e l e y , Feb. 1980. Weber, Samuel, Ed., " F i f t y Y e a r s o f A c h i e v e m e n t : A H i s t o r y " , E l e c t r o n i c s , v o l . 53, no. 9, c h a p t e r 5, A p r . 17, 1980. W e i n b e r g e r , A r n o l d , " L a r g e S c a l e I n t e g r a t i o n of MOS Complex L o g i c : A L a y o u t Method", IEEE J o u r n a l of S o l i d - S t a t e C i r c u i t s , v o l . SC-2, no. 4, pp. 182-190, Dec. 1967. Werner, J e r r y , " R e c e n t P r o g r e s s i n CAD Systems f o r IC L a y o u t " , VLSI D e s i g n , v o l . 4, no. 3, pp. 48-59, May/June 1983. Werner, J e r r y , "The S i l i c o n C o m p i l e r : P a n a c e a , W i s h f u l T h i n k i n g , or O l d H a t ? " , VLSI D e s i g n , v o l . 3, no. 5, pp. 46-52, S e p t . / O c t . 1982. Werner, J e r r y , "A S u r v e y of S i l i c o n F o u n d r i e s " , VLSI D e s i g n , v o l . 3, no. 4, pp. 42-49, J u l y / A u g . 1982. Werner, J e r r y , " S o f t w a r e f o r G a t e - A r r a y D e s i g n : Who i s R e a l l y A i d i n g Whom", VLSI D e s i g n , v o l . 2, no. 4, pp. 22-32, F o u r t h Q u a r t e r 1981. W h i t n e y , T e l l e , "A H i e r a r c h i c a l D e s i g n - R u l e C h e c k i n g A l g o r i t h m " , Lambda, v o l . 2, no. 1, pp. 40-43, F i r s t Q u a r t e r 1981. W i l l i a m s , Thomas W. and K e n n e t h P. P a r k e r , " D e s i g n f o r T e s t a b i l i t y - A S u r v e y " , P r o c . of I E E E , v o l . 71, no. 1, pp. 98-112, J a n . 1983. Y o s h i m u r a , T a k e s h i and E r n e s t S. Kuh, " E f f i c i e n t A l g o r i t h m s f o r C h a n n e l R o u t i n g " , IEEE T r a n s , on Computer A i d e d D e s i g n , v o l . CAD-1, no. 1, pp. 25-35, J a n . 1982. 120 APPENDIX A S c h e m a t i c s and B l o c k Diagrams of the M i c r o t e l P a c i f i c R e s e a r c h L t d . D i s c r e t e Component C o l o u r P a l e t t e I m p l e m e n t a t i o n 121 c 124 APPENDIX B C o l o u r P a l e t t e S p e c i f i c a t i 126 MICROTEL PACIFIC RESEARCH HARDWARE FUNCTIONAL SPECIFICATION FOR COLOR PALETTE INTEGRATED CIRCUIT Prepared by G. Schmiing August 17, 1982 127 CONTENTS 1. GENERAL DESCRIPTION 2 1.1 Color Palette Pin Description 2 2. PIN DESCRIPTION 3 2.1 PROCESSOR INTERFACE 3 2.1.1 Data Bus (D0-D3) 3 2.1.2 Enable (E) • 3 2.1.3 Chip Select (CS) 3 2.1.4 Address Bus (AO-A5) 3 2.1.5 Read/Write (R/W) 3 2.2 VIDEO INTERFACE 4 2.2.1 P i x e l Data (P0-P3) 4 2.2.2 P i x e l Clock (PC) 4 2.2.3 Display Enable (DE) 4 2.2.4 Video Output (V0-V2) 4 2.2.5 Reference Voltage (Vref).. 4 2.2.6 Color Palette Memory Organization 5 3. VIDEO TIMING 6 3.1 VIDEO TIMING CHARACTERISTICS. 6 4 . PROCESSOR TIMING 7 4.1 PROCESSOR TIMING CHARACTERISTICS 7 5. BLOCK DIAGRAM 8 128 - 2 -1. GENERAL DESCRIPTION The Color Palette b a s i c a l l y c o n s i s t s of a n u l t i p o r t e d r e g i s -ter array whose outputs d i r e c t l y d rive three video DAC's. The processor* independent of the video access, has f u l l read, write c a p a b i l i t y of the i n t e r n a l r e g i s t e r s . The r e g i s t e r array appears as 16 color values at 12 b i t s per value to the video i n t e r f a c e , and as 64 words at 4 b i t s per word to the host processor. See f i g . 1 Memory Organization. Color t r a n s l a t i o n i s performed by the 4 b i t p i x e l data (PO-PS) , addressing one of the 16 r e g i s t e r s i n the lookup table. The color value stored i n that reg i s t e r drives the three video DAC's, which produce an analog video s i g n a l proportional to the d i g i t a l value. This video si g n a l i s used to drive the RED, GREEN, BLUE inputs of a color monitor. As a r e s u l t the Video Co n t r o l l e r can now display any 16 co l o r s out of a repertoire of 4096. 1.1 Color Palette Pin Description +5V Processor Interface Display Memory Interface -> -> -> -> VDD Ao-As Vref < D0-D3 VO CS VI E V2 R/W P0-P3 Pclk DE Vss Ref. Voltage Video Output GND 129 - 3 -2. PIN DESCRIPTION 2.1 PROCESSOR INTERFACE The Processor interfaces to the Color Palette v i a a b i d i r e c -t i o n a l data bus (D0-D3) using (A0-A5),CS,E and ,R/W for controls sign a l s . 2.1.1 Data Bus (D0-D3) The b i d i r e c t i o n a l data l i n e s (D0-D3) allow data transfers between the Color Palette r e g i s t e r and the processor. Data bus drivers are high impedance u n t i l a read c y c l e . 2.1.2 Enable (E) The Enable signal i s a high impedance, TTL compatible input which clocks data to and from the Color Palette. The high to low t r a n s i t i o n i s the active edge. 2.1.3 Chip Select (CS) The CS signal i s a high impedance, TTL compatible input which selects the Color P a l e t t e , when low, to read or write to the i n t e r n a l r e g i s t e r f i l e . 2.1.4 Address Bus (AO-A5) The Address Bus signals (A0-A5) are high impedance, TTL compatible inputs which selects one of the 4 8 r e g i s t e r s to be written or read. Data transfers are then performed under the con-t r o l of CS, E, R/W signa l s . 2.1.5 Read/Write (R/W) The R/W sign a l i s a high impedance, TTL compatible input which determines whether the i n t e r n a l r e g i s t e r s are written or read. A write i s defined as a low l e v e l . 130 - 4 -2.2 VIDEO INTERFACE The Video interface accepts p i x e l data (P0-P3) from the Video C o n t r o l l e r , and translates the data through the Color LOOKUP table to a 12 b i t color value. This 12 b i t color value i s converted by three video DAC's to the analog si g n a l s (RED, GREEN, BLUE). 2.2.1 P i x e l Data (P0-P3) The P i x e l Data signals (P0-P3) are high impedance, TTL compatible inputs which act as address inputs to the color look.up table. 2.2.2 P i x e l Clock (PC) The PC clock signal i s a high impedance, TTL compatible input which loads the color p i p e l i n e r e g i s t e r after the access time of the lookup table. The low to high t r a n s i t i o n i s the active edge. 2.2.3 Display Enable (DE) The DE sig n a l i s a high impedance, TTL compatible input which disables the video output by c l e a r i n g the p i p e l i n e r e g i s -t e r . This input i s active low. 2.2.4 Video Output (V0-V2) The three video outputs are analog signals generated by the three video DAC's. inputs of a color monitor. 2.2.5 Reference Voltage (Vref) This input applies a user supplied voltage reference to the r e s i s t i v e divide chain of the d i g i t a l to analog converter. 131 -. 5 -2.2.6 Color Palette Memory Organization PROCESSOR ACCESS 7 DATA 3 BUS 0 • • 0 **** RED 1 GREEN 2 BLUE 3 * 4 RED 5 GREEN 6 BLUE 7 * 60 RED 61 GREEN 62 BLUE 63 * VIDEO ACCESS COLOR WORD 1 COLOR WORD 2 COLOR WORD 16 132 - 6 -3. VIDEO TIMING PIXEL CLK MEMORY ADDRESS MEMORY DATA PIPELINE REGISTER VIDEO OUTPUT |< Tp >| / — * v r I <— Tad 7V_J^ A j < — Ta —> I V —>I I<— Ts / / / \ V A -\Z7-\ V A V 7 / 3.1 VIDEO TIMING CHARACTERISTICS SYMBOL CHARACTERISTIC MAX WIN Tp P i x e l c l o c k c y c l e time 180 nsec Tad Address a f t e r P c l k 20 nsec Ta R e g i s t e r a c c e s s time 20 nsec -Th C o l o r data h o l d time 20 nsec 20 nsec Ts DAC s e t t l i n g time +- 1/2 LSB 50 nsec R e s o l u t i o n 4 b i t s Output r e s i s t a n c e 1 * o n m roax • Output V o l t a g e 0 - 4 v o l t s 133 - 7 -4. PROCESSOR TIMING E CLK ADDRESS R/W, CS READ DATA /" |< Tcyc > l •v { \ WRITE DATA 7 \ , / Tas ->| | n < - T a h 7 A / Tcs ->|~1 Tl<- ^ 1 A T /- U Tddr->| !<- <" Jfh -> I I - Thw -v—:7. Tdsw -> I | < -4.1 PROCESSOR TIMING CHARACTERISTICS SYMBOL CHARACTERISTIC MIN MAX Tcyc E c y c l e time Tas Address setup time b e f o r e E Tah Address h o l d time Tcs R/W, CS setup time b e f o r e E Tch R/W, CS h o l d time Tddr Read data d e l a y time Trh Read data h o l d time Tdsw Wr i t e data setup time Thw W r i t e d a t a h o l d time 500 40 10 40 10 0 20 50 60 nsec nsec nsec nsec nsec nsec nsec nsec nsec 150 nsec 50 nsec 20 nsec 134 BLOCK DIAGRAM APPENDIX C GTE ISO-CMOS P r o c e s s Sequence J 138 ISO - CMOS 139 Oxldr 140 A. Simons January 14, 1982 141 A. Simons January 14, 1982 Nitride Photo Rosltt Nltrldo Nltrld* l l l l A ( X O » I N | •PHI IM !mp!anK Oxide Nltox M l t r S * « Hltrld* Hltox 144 Mltox Field Oxld* Nltrld* Nltoz Nltrld* 145 N l t r l d * 1A6 G s t o O x l d * P o l y s i l i c o n rely 148 B8K OS f o i y P h o t o R e s i s t 149 ' 150 • k 0 5 P 152 Poly Motal M i l k 0 7 Motal P o l y M « t « l M a s k 0 8 B o n d P a d a P o l y M a t a l 155 APPENDIX D The CDS L a y o u t Language from "CMOS D e s i g n System 1982" M i c r o t e l P a c i f i c R e s e a r c h L t d . by Warren Snyder 156 CDS Layout Language A c e l l i n CDS i s d e f i n e d v i a s tatements i n the CDS layout language as opposed to be ing c r e a t e d v i a a g r a p h i c s e d i t o r . Th is a l l o w s a des igner to parameter i ze h i s d e s i g n s , such as d y n a m i c a l l y v a r i a b l e c e l l s i z e s to s u i t v a r y i n g load c o n d i t i o n s . I t a l s o a l l o w s f o r easy c r e a t i o n of s t r u c t u r e s by the system i t s e l f , g i ven j u s t a few s imp le v a l u e s . The best example of t h i s i n automat ic s y n t h e s i s of P L A ' s .ROMS, and c o n t r o l u n i t s fo r m i c r o p r o c e s s o r s . The CDS system c u r r e n t l y has an automat ic PLA generator from t r u t h t a b l e s (see Appendix 2). Statements are e i t h e r SYSTEM commands such as , FOR,NEXT,END,and ass ignments , XOR layout p r i m i t i v e s such as W i r e , P o l y g o n , D e f c . A l l tex t i s entered in lowercase and i f the keyword i s a system command i t w i l l be a l l c a p i t a l i z e d (by the EDITor) e l s e only the f i r s t c h a r a c t e r w i l l be . Only one statement per l i n e i s a l l o w e d . example D e f c ( " t e s t " ) ! g i v e s name to c e i l X1=1G [assignment to a v a r i a b l e L a y e r ( A c t i v e ) [ p r i m i t i v e s p e c i f y i n g l a y e r i n g . Polyaon(O.O) Ipolyaon w i t h s t a r t i n g p o i n t at 0 ,0 X t y ( X l . i O ) ."continues to p o i n t s (XI.0) (X1,10) Xy (0 .10) {cont inues to p o i n t (0 ,10) =>box Endc I c l o s e s d e f i n t i o n of c e l l END ! l a s t l i n e of every f i l e The example shows that p r i m i t i v e s such as Polygon (and Wire) are u s u a l l y cont inued on a new l i n e w i t h c o n t i n u a t i o n p r i m i t i v e s ( X t y ) . One can c o n t i n u e a polygon (or w i re ) i n d e f i n i t e l y u n t i l the next p r i m i t i v e i s s t a t e d . A complete d e s c r i p t i o n of a l l commands i s g i ven i n Appendix 1. The l i s t i n g s at t h i s manual ' s end best i l l u s t r a t e the nature of the CDS layout language. A l l c o o r d i n a t e s g i ven as arguments to p r i m i t i v e commands are t r a n s l a t e d by the system r e l a t i v e to an o r i g i n determined by the two v a r i a b l e s Xbase .Ybase . The a c t u a l c o o r d i n a t e i s determined by adding Xbase to every x va lue and Ybase to every y ' v a l u e . Th is a l l o w s s e t t i n g up l o c a l o r i g i n s w i t h i n c e l l s . These v a r i a b l e s are r e s e t to 0 by every Defc p r i m i t i v e . 157 C e l l P l a c e m e n t 9 To u s e a c e l l t h a t h a s b e e n p r e v i o u s l y d e f i n e d o n e u s e s t h e ' P l a c e " c o m m a n d . T h e c e l l w h o s e name i s g i v e n a s a r g u m e n t t o ' P l a c e ' c a n be o p t i o n a l l y f i r s t m i r r o r e d OR r o t a t e d a b o u t i t s a x e s t h e n t r a n s l a t e d t o a g i v e n l o c a t i o n w i t h i n t h e c u r r e n t d e f i n i t i o n . R o t a t i o n s c u r r e n t l y a r e l i m i t e d t o 0 , 9 0 , 1 8 0 . XOR 2 7 0 d e g r e e s a b o u t t h e o r i g i n ( 0 , 0 ) . M i r r o r i n g i s a b o u t t h e y - a x i s ' m x ' (x v a l u e s a r e n e g a t e d ) XOR a b o u t t h e - x - a x i s ' m y ' (y v a 1u e s n e g a t e d ) . T h e i n t e r f a c e b e t w e e n c e l l s c a n be i m p l i c i t i n c a s e s w h e r e two c e l l s a r e i n t e n d e d t o b u t a g a i n s t e a c h o t h e r o r e x p l i c i t v i a ' N o d e s ' . A ' N o d e ' i s a p o i n t d e f i n e d w i t h i n a c e l l w h i c h o t h e r c e l l s c a n i n t e r c o n n e c t t o , a n d a r e l a b e l e d by t h e d e s i g n e r w i t h names ( n e e d n o t b e u n i q u e o u t s i d e o f t h e c e l l ) . To i n t e r c o n n e c t a n y two n o d e s o n e u s e s t h e ' L o c n ' command t o o b t a i n t h e c u r r e n t c o o r d i n a t e s o f t h e d e s i r e d n o d e s a n d v i a a ' W i r e ' command r o u t e a c o n d u c t o r b e t w e e n t h e m . T h e l o c a t i o n o f a n o d e i s o b t a i n e d f r o m i t s name a n d o w n e r c e l l , f r e e i n g t h e d e s i g n e r f r o m r e m e m b e r i n g c o o r d i n a t e s . T h r e e p r i m i t i v e c o n t a c t c e l l s e x i s t f o r s p e c i f y i n g m e t a l t o a c t i v e , m e t a l t o p o l y , o r m e t a l t o p o l y t o a c t i v e c o n t a c t s (BC b u t t i n g c o n t a c t ) J m a . m p . b e r e s p e c t i v e l y . T h e i r u s e i s o p t i o n a l b u t c a n s i m p l i f y m o s t d e s i g n s ( r e m e m b e r t o c o m p i l e " L i b " i f y o u w i s h t o u s e t h e m ) . T h e o r i e n t a t i o n o f t h e p o l y - a c t i v e i n a BC i s s p e c i f i e d v i a f o u r d i r e c t i o n s ; b e = E a s t , b n = N o r t h , bw=West, b s = S o u t h . T h e d i r e c t i o n i s a l o n g a v e c t o r f r o m a c t i v e t o p o l y . 158 APPENDIX 1 CDS PRIMITVES x i . y i s p e c i f y arguments to p r i m i t i v e s and may be e x p r e s s i o n s . Arguments w i t h i n () denote o p t i o n a l c o o r d i n a t e s p a i r s . be ,bn ,bw,bs =>be(x1,y1. ( x2 , y2 , x 3 , y 3 , x4 . y4 , x5 , yE», xS. yG)) - B u t t i n g c o n t a c t s formed by Ma-Mp contac t p a i r s . O r i g i n s at cente r of Ma c o n t a c t . E a s t , N o r t h , W e s t , S o u t h l o c a t i o n s fo r Mp. box bbox > b o x ( x l . y 1 , x 2 , y 2 ) Rectangle w i th lower l e f t at x1,y1 and upper r i g h t at x2 ,y2 (on c u r r e n t l a y e r ) . > b b o x ( " t e s t " , x 1 . y t , x 2 . y 2 ) I n t e r f a c e w i t h d a t a - b a s e to f i n d the bounding box of a p r e v i o u s l y compi led c e l l . Returns c o o r d i n a t e s of c e l l ' s r e c t a n g u l a r o u t l i n e . x 1 , y t . x 2 , y 2 must be v a r i a b l e names. cut > c u t ( x 1 , y J . ( x 2 . y 2 . x 3 , y 3 . x 4 . y 4 . x 5 , y 5 . x 6 , y 6 ) ) Sets c u r r e n t l a y e r to ' C u t ' i f not a l r e a d y and p l a c e s 2x2 squares cente red at the g i ven c o o r d i n a t e s . de fc = >defc<"test" ) S t a r t s a new c e l l d e f i n i t i o n and names that c e l l . Resets xbase and ybase to 0 . The c u r r e n t laye r i s u n d e f i n e d . def n =>defn ( " in1" , x1 ,y1 ) D e f i n e s a node w i t h i n a c e l l . The name and p o i n t are p a i r e d t o g e t h e r . dx = >dx(x1 ) - C o n t i n u a t i o n path increment . (x ,y)<=(x,y)+(dx.O) 1 5 9 11 dy =>dy(y1) - Continuation path increment. (x,y)<=(x.y)+(0.dy) dxy =>dxy(x1.y1) - Continuation path increment, (x.y)<=(x,y)+(dx.dy) e n d - Very last line of a design file. e n d c - Terminates a cell definition. layer = > 1 ayer(Act ive) - Sets the current layer, which remains valid t i l l modified. locn ->locn(eel 1*,"node".x.y) - Returns the coordinates of a node in the cell, given by the cell*, as it appears after all transformations. The cell* is set via the Place command which defined the cells location. =>ma(x1,y1,{x2.y2.x3,y3,x4,y4,xS,y5.xS.y6)) - Places metal-active contacts centered at the given coordinates. in f-' =>mp(x1,y1,{x2.y2.x3.y3,x4,y4.x5.y5,x6.yb}) - Places metal-poly contacts centered at the given coordinates. pla =>pla("bitfile",x,y) - see appendix 3 160 12 p l a c e = >place( "ee l 1 ( . o p t i o n s ) " . x . y . (ce 11 *») ) - C e l l s are p l a c e d w i t h t h e i r o r i g i n s at x .y w i t h o p t i o n a l t r a n s f o r m a t i o n s ; mx XOR my f o r m i r r o r i n c about y a x i s . x a x i s r e s p e c t i v e l y ; r 9 0 . r 1 8 0 . XOR r270 f o r r o t a t i o n s about t h e i r o r i g i n s . An o p t i o n a l v a r i a b l e can be used to record the c e l l s p l a c e number f o r use i n locn commands, e g . p l a c e ( " t e s t . m x . r 9 0 " , 1 0 . 1 0 , t e s t ) po lygon = > p o l y g o n ( x 1 , y 1 , ( x 2 . y 2 , x 3 . y 3 , x 4 . y 4 . x 5 , y 5 . x 6 , y 6 > ) - S t a r t s a new polygon at x1.y1 on cu r ren t l a y e r . Op t iona l v e r t i c e s can be s p e c i f i e d i n same command or path c o n t i n u a t i o n commands can f o l l o w . The polygon a u t o m a t i c a l l y c l o s e s up on i t s e l f so the f i r s t ve r tex need not be repe ate d . w i re x tv xy - > w i r e ( ( w i d t h ) , x 1 . y 1 , ( x 2 . y 2 , x 3 , y 3 . x 4 . y 4 , x 5 , y 5 , x 6 , y G ) ) S t a r t s a wi re of d e f a u l t width 2 at x 1 , y 1 . The path of a w i re i s a long i t s center l i n e and s t a r t s and ends f l u s h w i t h i t s end p o i n t s . Any path c o n t i n u a t i o n command can be used . >x(x1 ) Cont inues a p a t h . i x .y )<=(x1,y ) >>:ty(x1 . { y l . x2 . y 2 , x 3 , y 3 . x 4 , y 4 , x5 . y 5 , x6, y6) ) Cont inues a path w i t h o r t h o g i n a l bends. Performs s u c c e s s i v e x ( x i ) y(yi+1> commands Produces a jog i n x , then y , then x e t c . . > x y ( x 1 , y 1 , { x 2 , y 2 . x 3 . y 3 , x 4 , y 4 , x 5 , y 5 , x 6 . y 6 > ) Cont inues a path a l o n g g i ven c o o r d i n a t e s , (x .y)< = ( x i , y i ) = y(y1 ) - Cont inues a p a t h . ( x . y X - ( x . y l ) 161 APPENDIX 2 13 AUTOMATIC PLA GENERATION A Programmable Log ic Array may be s y n t h e s i z e d from a t r u t h t a b l e v i a the ' P l a ' command. To do so one must f i r s t c r e a t e a f i l e of the t r u t h t a b l e . C reate a d e s i g n f i l e under some name (eg. " t r u t h t a b l e " ) i n t o which the terms of the boolean l o g i c can be p u t . To see how t h i s i s done f o l l o w through w i t h t h i s example. ! . 3 , 2 . 5 ! * v a r i a b l e s , r e s u l t s , m i n t e r m s !001 10 ! term 1 !101 01 ! term 2 ! 110 11 ! term 3 !x 11 00 ! term 4 ! 111 01 ! term 5 Each l i n e must begin w i th a ' ! ' f o l l o w e d by d a t a . The f i r s l i n e s p e c i f i e s the s i z e of the PLA. Each s u c c e s s i v e l i n e r e p r e s e n t s the terms of the t r u t h t a b l e . Input c o n d i t i o n s f o l l o w e d by o u t p u t s . An ' x ' s p e c i f i e s that the input v a r i a b l e i s i g n o r e d . Note! an ' x ' can not occur i n an output column. There must a s i n g l e space between the input and output s e c t i o n w i t h comments a l l owed anywhere a f t e r the o u t p u t s . Once a f i l e has been c r e a t e d i t can be used as i n . D e f c C p l a l " ) l o t h e r statements can be !used f o r custom a d d i t i o n s . P l a ( " p l a 1 t a b l e " . x , y ) Endc The p l a generator i s a system macro that expands a t r u t h t a b l e i n t o layout commands w i t h i n a c e l l d e f i n i t i o n . For each input ' i ' there w i l l be d e f i n e d an a s s o c i a t e d 'node ' " i n " s u b ' i ' ( " i n 1 " , " i n 2 " e t c . ) . L i k e w i s e f o r a l l output! ("out 1 " , " o u t 2 " , e t c . ) . This a l l o w s easy i n t e r f a c i n g to PLAs . 162 APPENDIX E Top L e v e l C e l l S o u r c e L i s t i n g s 163 F i lename: p idac D e s i a n e r : R. M i e l c a r s k i Date : 3 -May -83 Comments: 3 of Snyder ' s DACs connected i n p a r a l l e l w i t h 3 of Schmi ing s D A C s to the 12 b i t p i p e l i n e reg 570 580 590 600 C e l l name: p l d a c - f u n c t i o n . see above comment - t e l l s c a l l e d . P i p e i n . d c e l 1 . d a c b u f . pvs -nodes d e f i n e d . l e t t p ( 0 . 2 ) * l e t t p i p e -l i n e rea c l l . r i g h t p (1008,2) - r i g h t p i p e l i n e rea c l l . l e f t p / (0 .82) . n a h t p / (1008,82) . dacvddl ( - 3 1 . 7 , 9 7 ) = l e f t end of vdd bus . dacvddr (1049.8 .97) = r i g h t end of vdd bus ; d a c v s s l ( - 3 1 . 7 , 4 9 4 ) = l e f t end of vss bus . dacvssr (1049.8 .494) -r i a n t end of vss bus . v r e f l l 1 - 3 1 . 7 , 5 0 8 ) = l e f t end of S n y d e r ' s v o l t a a e re fe rence bus . v r e f l r (1049.8 ,508) = r i g h t end of S n y d e r ' s v o l t a a e r e f e r n c e bus . v re f21 ( - 3 1 . 7 , 5 2 2 ) -l e f t end of S c h m i i n g ' s v o l t a g e re fe rence bus . v r e f 2 r (1043.8 ,522) = r i g h t end of Schmiings v o l t a g e r e f e r e n c e bus . c l k l ( - 3 1 . 7 . 5 3 1 ) = l e f t end of c lock bus . c l k r (1049.8 .531) -r i g h t end of c lock bus . o u t l . . . out6 = outputs -bound ing box . ( - 3 6 . 1 . - 1 . 4 , 1 0 4 9 . 8 . 5 3 4 ) R e v i s i o n H i s t o r y : (date/name/mod) p i p e l i n e r e g i s t e r and the 6 dacs 164 610 620 6"-*0 6bU 660 670 680 630 700 710 720 730 740 750 760 770 780 790 800 810 820 830 840 850 860 870 880 i C 910 S20 930 940 950 960 970 980 990 !000 1010 1020 1030 1040 1050 1060 1070 1080 1090 1100 1110 1120 1130 1140 I 0 1 io0 1170 1180 1190 1200 | DIM P l o u t x ( 1 2 ) DIM P l o u t y ( l 2 ) DIM v r e f x ( 6 ) DIM Vre*y(6) DIM 0utx (6 ) DIM Outy(6) DIM Dacvssx(6) DIM Dacvssy(6) DIM Dacvss2x(3) ! S c h m i i n g ' s dac r e q u i r e s DIM Dacvss2y (3 ' ! a second vss DIM C l k x ( 3 ) ! S n y d e r ' s dac r e q u i r e s DIM Clky(3> ! a c lock DIM Dacvddx(6) DIM Dacvddy(6) •*+• D e f c ( " p l d a c " ) j P l a c e t " p i p e I n " , 0 , 0 . P i p e In) i FOR 1=1 TO 12 L o c n ( P i p e l n . " p l o u t "aVALS( I ) . P l o u t x ( I ) . P l o u t y (I) NEXT I i Locn( P ipe I n . " let" tp" .Let tpx ,Le f tpy ) Defn( "let" tp",Let" t p x . L e f tpy) j L o c n ( P i p e l n , " r i o h t p " . R i a h t p x . R i g h t p y ) Def n l " r i a h t p " . R i a h t p x . R i g h t p y ) i L o c n J P i p e i n . " l e t t p / " . X . Y ) D e f n ( , , i e t t p / " , X . Y ) » L o c n ( P i p e l n . " r i a h t p / " . X , Y ) D e f n t " r i g h t p / " , X , Y ) Get bounding box i n f o so we can f i g u r e out where to p l a c e the dacs i B b o x ( " d c e l i " . D c e l l x 1 . D c e l l y l . D c e l l x 2 . D c e l l y 2 ) B b o x ( " d a c b u f " . D a c b u f x 1 . D a c b u f y l , D a c b u f x 2 . D a c b u f y 2 ) the bottom of the dacs must not go below Y0 i Y0=Plouty(1)+6+12*4+(3*6)+4 ! We a l l o w 10 lambda space between dacs P i tch=(Dee11x2-Dce11x1)•<Dacbufx2-Dacbuf x1) +12*10) F i n d the l e f t edge X0 such that the 6 dacs are n i c e l y cente red X0=(Rightpx+Lef tpx )/2 - (P i tch*3)/2+5 165 1210 Xr=X0+3*Pitch ! r i a h t edae 1220 ! 1. ] ! 1250 !vdd bus 1260 ! 1270 L a y e H M e t a l ) 1280 Wire(12,X0,Plouty(1>+12> 1290 X(Xr) 1300 Defn ( "dacvdd1" .XO ,P lou ty (1 ) + 12) 1310 D e f n ( " d a c v d d r " . X r , P l o u t y ( 1 ) + 1 2 ) 1320 ! 1330 J connect p i p e l i n e r e a i s t e r to vdd bus 1340 ! 13S0 P l p i t c h - 1 6 8 1360 ! 1370 FOR 1=0 TO 5 1380 W i r e ( 4 . P l p i t c h / 2 + I * P l p i t c h . P l o u t y < 1 ) - 3 ) 1390 Y(Plouty(1)+12) 1400 NEXT I 1410 ! 1430 ! 1440 ! p l a c e the d a c ' s above the p i p e l i n e 1450 ! r e g i s t e r and connect 1460 ! 1470 DIM D c e l K 3 ) . D a c b u f ( 3 ) 1480 ! 1 1 FOR 1=1 TO 3 1 ^  J ! 1510 ! p l a c e S n y d e r ' s dac 1530 Y=Y0-Dcel ly1 1540 X = X 0 + ( I - 1 ) * P i t c h - D c e l i x 1 1550 ! 1560 P l a c e ( " d c e l l " , X . Y . D c e l l C l ) ) 1570 ! I580 ! get a l l the dac c o o r d i n a t e s f o r 1590 ! f u t u r e use 1600 ! 1610 L o c n ( D c e l l ( I ) , " v r e f " , V r e f x C 1 * 2 - 1 ) , V r e f y ( 1 * 2 - 1 ) ) 1620 L o c n ( D c e l l ( I ) , " v s s " , D a c v s s x ( I * 2 - 1 ) , D a c v s s y ( 1 * 2 - 1 ) ) 1630 Locn (Dcel 1(1) , " e l k " , C l k x ( I ) , C l k y ( I ) ) 1640 L o c n ( D c e l K I ) , " v d d " . D a c v d d x ( 1 * 2 - 1 > , D a c v d d y ( 1 * 2 - 1 ) ) 1650 L o c n ( D c e l l ( I ) , " o u t " , 0 u t x ( I * 2 - 1 ) . 0 u t y ( I * 2 - 1 ) ) 1660 " ! 1670 ! p l a c e S c h m i i n q ' s dac 1680 ! 1690 Y -YO-Dacbufy l 1 700 X=X+(Dcel l x2 -Dce l l x ' i ) + 10-Dacbufx1 1710 ! 1720 P l a c e ( " d a c b u f " . X , Y . D a c b u f ( I ) ) 1730 ! 1 7 / , 0 ! get a l l the dac c o o r d i n a t e s f o r T j ! f u t u r e use 1760 ! 1770 L o c n ( D a c b u f ( I ) , " v r e f " . V r e f x ( 1 * 2 ) , v r e f y ( 1 * 2 ) ) 1780 L o c n ( D a c b u f ( I ) . " v s s 1 " , D a c v s s x ( 1 * 2 ) , D a c v s s y ( 1 * 2 ) ) 1790 Locn(Dacbuf ( I ) , " vdd" ,Dacvddx(1*2) ,Dacvddy(1*2) ) 1800 L o c n ( D a c b u f ( I ) , " v o u t \ 0 u t x ( 1 * 2 ) , 0 u t y ( I * 2 ) ) 166 1810 1820 l "":,0 is^ n 1860 1870 1880 18S0 1900 1910 1920 1930 1 9 AO !950 1 960 1970 1 980 1 990 2000 201 0 2020 2030 2040 2050 2060 207 0 2080 f 0 2 . uO 21 10 21 20 2130 2140 2150 2160 2170 2180 2190 2200 2210 2220 2230 2240 2250 2260 2270 2280 2290 2300 2310 2320 2330 . 6 2360 2370 2380 2390 2400 LocMDacbut ( I ) , " v s s 2 " ,Dacvss2x < I) ,Dacvss2y I D ) connect the da t a l i n e s FOR J=1 TO 4 K=(I-1 )*4 + J M p ( P i o u t x ( K ) . P l o u t y ( K ) + 2 ) h-Plouty(K)+22+(J-1 >*6 Mp ( P l o u t x ( K ) . H ) i L a y e r ( P o l y ! ) re ( P l o u tx ( K ) . P l o u t y (t<) +2 ) Y(H) i Locn(Dee 1 1 ( I ) , " in"&vALS< J-1 ) .X,Y) Laye r ( M e t a 1 ) W i r e ' P l o u t x ' K ) .H) X(K> Y ( Y ) i llocn(Dacbut ( I ) . "in"AvALS( J ) .X. Y) L a y e r ( M e t a l ) W i r e ( P l o u t x ( K ) , H ) X(Xi Mp(X,H) L a y e r ( P o l v 1 ) Wire(X.H) Y ( V ) i NEXT J i ! connect the vdd bus to the dacs i L a y e r ( M e t a 1 ) Wire(8,Dacvddx(I*2-1 ) . Dacvddy (1*2- 1 ) ) Y ( P l o u t y ( 1 ) + l 2 ) Wire(8.Dacvddx(I*2).Dacvddy<1*2)> Y ( P i o u t y ( 1 ) + 1 2 ) NEXT I busses above the dac IF 0 u t y ( 2 ) > 0 u t y ( 1 ) THEN Top=0uty(2) ELSE Top=0uty(1) END IF V S < L a y e r ( M e t a l ) Wire(12.X0.Top+12) X ( 0 u t x ( 1 ) - 3 ) Wire(12.0utx(6)+3,Top+12) 167 2410 X(Xr) 2420 Def n("dacvss1".XO.Top+12) 2 ' ~1 Defn ( "dacvss r " .X r , Top+12) 2 J ! 2450 FOR 1=1 TO 5 2460 Wire(12,0utx( I )+3.Top+12) 2470 X(Outx( I+1) -3) 2480 NEXT I 2490 ! 2600 L a y e r ( A c t i v e ) 2510 FOR 1=1 TO 6 2520 Wi re (12 ,0utx ( I ) -7 . Top+12) 2530 X(0utx( I )+7) 2540 Ma(0utx ( I ) -5 ,Top+8) 2550 Ma(0utx( I ) -5 .Top+12) 2560 Ma(0utx( I ) -5 .Top+16) 2570 Ma(0utx(I)+5,Top+8) 2580 Ma(Outx(I)+5.Top+12) 2590 Ma(0utx(I)+5.Top+16) 2600 NEXT I 2610 ! 2620 1 * + *•*++*•**•*•**#*******•**•**•*•*** 2630 ! 2640 ! v r e f ! and v r e f 2 2650 ! 2660 Layer (Meta l ) 2670 Wire(12,X0,Top+26) 2680 - X ( O u t x ( 1 ) - 3 ) 2 ) Wire(12.0utx(6)+3,Top+26) 27u0 X(Xr) 2710 D e fn( " v r e f 1 1 " . X 0 . T OP + 2 6 ) 2720 D e f n ( " v r e f 1 r " , X r , T o p + 2 6 ) 2730 ! 2740 L a y e r ( M e t a l ) 2750 Ware(12,X0,Top+40) 2760 X ( 0 u t x ( 1 ) - 3 ) 2770 Wire(12,0utx(6)+3.Top+40) 2780 X(Xr) 2790 D e f n ( " v r e f 2 1 X 0 , T O P + 4 0 ) 2800 D e f n ( " v r e f 2 r " . X r , T o p + 4 0 ) 2810 ! 2820 FOR 1=1 TO 5 2830 Wire(12.0utx( I )+3,Top+26) 2840 X(Outx( I+1) -3) 2850 ! 2860 Ui re(12.Outx( I )+3,Top+40) 2870 X(Outx( I+1) -3) 2880 NEXT I 2890 ! 2900 L a y e r ( A c t i v e ) 2910 FOR 1=1 TO 6 2920 Wi re (12 ,0utx ( I ) -7 , Top+26) 2930 X(Outx(I )+7) 2 r ' 1 Ma(0utx( I ) -5 ,Top+22) 2'. J Ma(0utx( I ) -5 ,Top+26) 2960 Ma(0utx( I ) -5 ,Top+30) 2970 Ma(0utx(I)+5,Top+22) 2980 Ma(0utx(I)+5,Top+26) 2990 Ma(0utx(I)+5,Top+30) 3000 ! 168 3010 3020 1 o 3050 3060 3070 3080 3090 3100 3110 3120 3130 3140 31 E>0 316G 3170 3130 3190 3200 3210 3220 3230 3240 3250 3260 3270 3?80 ' 0 3 o u O 3310 3320 3330 3340 3350 3360 3370 3380 3390 3400 3410 3420 3430 3440 3450 3460 3470 3430 3490 3500 3510 3520 3530 ? R / 40 • ,0 3560 3570 3530 3590 3600 Wi re (12 ,0utx ( I ) -7 , Top+40) X l O u t x (I ) + 7 ) M a ( O u t x ( I ) - 5 ,TO P + 3 6 ) Ma(0utxU) -5 ,Top+40) Ma(0utx( I ) -5 ,Top+44) Ma(Outx(I)+5,Top+36) Ma(0utx(I)+5.Top+40) Ma(0utx<I)+5,Top+44) NEXT I e lk Layer (Po ly1 ) Wire(2.X0,Top+49> X(Xr ) Defn ( "e lk 1".X0,Top+49) De*n("c lk r " .X r ,Top+49) connect the dacs to the busses FOR 1=1 TO 3 ! e lk used by Snyder ' s dac L a y e r ( P o l y 1) W i r e ( 2 , C l k x ( I ) , C l k y ( I ) ) Y(Top+49) ! vss2 used by S c h m i i n g ' s dac Layer (Meta 1) W i r e ( 8 , D a c v s s 2 x (I) . D a c v s s 2 y(I)) Y(Top+12) v r e f l to S n y d e r ' s dac Laye r (Ac t i v e ) Wi re<4 .V re fx f1*2 -1> .V re fy (1*2 -1 )) Y(Top+26) Ma(Vrefxt1*2-1) ,Top+22) Ma<vrefx<1*2-1),Top+26) Ma(Vretx(1*2-1) ,Top+30) I Layer (Np lus ) B o x(Vrefx ( I * 2 - 1 ) - 3 . 5 , V r e f y ( 1 * 2 - 1 ) - 3 . 5 . V r e f x ( 1 * 2 - 1 ) + 3 . 5 . T o p + 3 0 + ! v r e f 2 to S c h m i i n g ' s dac L a y e r ( A c t i v e ) W i r e ( 4 , V r e f x ( I * 2 ) , V r e f y ( I * 2 ) ) Y(Top+40) Ma(Vrefx( I*2) ,Top+36) Ma(vrefx( I*2) ,Top+40) Ma(Vrefx( I*2) ,Top+44) i Layer (Np lus ) 169 3610 B o x ( v r e f x ( I * 2 ) - 3 . S , v r e f y ( I * 2 ) - 3 . 5 . v r e f x ( I * 2 ) + 3 . 5 , T o p + 4 4 + 3 . 5 ) 3620 NEXT I 3 ^ 0 ! c J FOR 1=1 TO 6 36b0 ! 3660 ! vss 3670 ! 3680 L a y e H M e t a l ) 3690 W i r e ( 8 , D a c v s s x ( I ) . D a c v s s y ( I ) ) 3700 Y(Top+12) 3710 ! 3720 ! output 3730 ! 3740 L a y e r ( M e t a l ) 3750 W i r e ( 2 , 0 u t x ( I ) . O u t y d ) ) 3760 Y(Top+52) 3770 Def n ("out "AVALS <.1). Outx < I ) . Top+52.) 3780 ! 3790 Layer (Np lus ) 3800 Box (0utx ( I ) -5 -3 .5 ,Top+8 -3 .5 ,0utx ( I )+5+3 .5 .Top+44+3.5 ) 3810 NEXT I 3820 ! 3830 ! ***+******************************•**** 3840 ! 3850 i Extend the p u e l l reg ion 3860 ! around the a c t i v e bus jumpers 3870 ! 3880 FOR 1=1 TO 3 3 ' 1 ! 3 . - d ! P l a c e the p u e l l around Snyder ' s dac 3910 ! and t i e to vss 3920 ! 3930 L a y e r ( P u e l l ) 3940 Box(vrefx ( I*2-1)-4 . v refy (1*2-1)-4 ,Outx (1*2-1)+5+4.Top+44+4) 3950 ! 3960 X=(Outx(1*2-1 ) -5+vre fx (1*2-1 ) )/2 3970 Y0=0uty(1*2-1)+10 3980 ! 3990 L a y e r ( M e t a l ) 4000 Wire(4,X,Top+12) 4010 Y(Y0) 4020 ! 4030 Cnt = INT((Top+12-Y0)/10) 4040 ' FOR J=1 TO Cnt 4050 P lace ( "pvs" ,X ,Y0+2+( J -1 )*10) 4060 NEXT J 4070 ! 4080 ! P l a c e the p u e l l around S c h m i i n g ' s 4090 ! dac and t i e to vss 4100 ! 4110 L a y e r ( P u e l l ) 4120 Box(Outx(1*2)-5-4,Vrefy(1*2)-4,Vrefx(1*2)+4,Top+44+4) 4130 ! 41*0 X=(Outx(1*2)+5+Vrefx(1*2))/2 t ) P lace ( "pvs" .X ,Top+12) 4 l b 0 ! 4170 NEXT I 4180 ! 170 4190 Endc 4200 END 20 ! 2° ! F i l e n a m e : mempldac 50 ! 60 ! D e s i g n e r : R. M i e l c a r s k i Date : 4 -May-83 70 ! 80 ! 90 ! Comments: The p i p e l i n e and DACs are 100 ! connected to the memory a r r a y . 110 ! 120 ! 130 ! C e l l name: mempldac 140 ! 150 ! - f u n c t i o n . see above comment 160 ! 170 ! - c e l l s c a l l e d . p l d a c , a r r a y 180 ! 190 ! -nodes d e f i n e d . d a c v d d l , d a c v d d r , 200 ! d a c v s s l , d a c v s s r . 210 ! v r e f 1 1 , v r e f 1 r . 220 ! v r e f 2 1 , v r e f 2 r . 230 ! c l k i . c l k r , 240 ! l e f t p . r i o h t p . 250 ! l e f t p / , r i g h t p / . 260 ! vss1 . . . vss7 270 ! dpi . . . dp12 280 ! dv1 . . . dv12 ! r1 . . . r6 3 u U ! r/1 . . . r/6 310 ! vddl . . . vdd6 320 ! u1 . . . LIB 330 ! u/1 . . . ui/6 340 i yp1 . . . yp16 350 ! yp/1 . . . yp/16 360 ! yv1 . . . yv16 370 ! yv/1 . . . yv/16 omit ted 380 ! because of compi ler 390 ! o v e r f l o w . 400 ! 410 ! -bound ing box . ( - 3 6 . 1 , 0 , 1 0 4 9 . 8 . 2 0 7 0 ) 420 ! 430 ! . 440 ! R e v i s i o n H i s t o r y : (date/name/mod) 450 ! 470 i 480 ! memory, p i p e l i n e , and dac 490 ! 500 Defc("mempldac") 510 ! 520 P l a c e * " p l d a c " ,0 , 1 5 3 6 , P l d a c ) 530 P l a c e ( , , a r r a y , r 2 7 0 " .0 , 1 5 3 6 , M e m ) F '' ^ ! L ! Carry DAC nodes through to the 560 ! next l e v e l 570 ! 580 DIM 0utx<6^ 1 7 2 590 DIM 0uty (6) 600 ! 610 FOR 1=1 TO 6 620 L o c n ( P l d a c . " o u t " A V A L S ( I ) , 0 u t x ( I ) . O u t y ( I ) ) 6or> D e f n ( " o u t " 6 V A L $ ( I ) , 0 u t x ( I ) , 0 u t y ( I ) ) b! NEXT I 660 ! 660 L o c n ( P l d a c , " d a c v d d l " . D a c v d d l x . D a c v d d l y ) 670 D e f n ( " d a c v d d l " , D a c v d d l x . D a c v d d l y ) 680 ! 690 L o c n ( P l d a c . " d a c v d d r " , D a c v d d r x , D a c v d d r y ) 700 Defn( "dacvddr" ,Dacvddrx .Dacvddry ) 710 ! 720 L o c n ( P l d a c , " d a c v s s l " . D a c v s s l x , D a c v s s l y ) 730 Def n ( ' d a c v s s l " , D a c v s s l x . D a c v s s l y ) 740 ! 750 L o c n ( P l d a c , " d a c v s s r " , D a c v s s r x , D a c v s s r y ) 760 Def n ( " d a c v s s r " , D a c v s s r x , D a c v s s r y ) 770 ! 780 L o c n ( P l d a c . " v r e f l 1 " . V r e f l l x , V r e f l l y ) 790 D e f n ( " v r e f l 1 " , V r e f l l x . V r e f 1 l y ) 800 ! 810 L o c n ( P l d a c , " v r e f l r " , V r e f l r x . V r e f l r y ) 820 D e f n ( " v r e f l r " . V r e f l r x . V r e f l r y ) 830 ! 840 L o c n ( P l d a c . " v r e f 2 1 " . V r e f 2 i x , V r e f 2 1 y ) 850 D e f n l " v r e f 2 1 " , V r e f 2 1 x . V r e f 2 1 y ) 860 ! 870 L o c n ( P l d a c , " v r e f 2 r " . V r e f 2 r x , V r e f 2 r y ) 880 D e f n ( " v r e f 2 r " , V r e f 2 r x , V r e f 2 r y ) f ! b^o L o c n ( P l d a c,"clkr , . C l k l x . C l k l y ) 910 D e f n ( " c l k l " , C l k l > : . C l k l y ) 920 ! 930 L o c n ( P l d a c , " e l k r " , C l k r x , C i k r y ) 940 D e f n ( " c l k r " , C l k r x , C l k r y ) 950 ! 960 ! Carry the p i p e l i n e r e g i s t e r nodes 970 ! through to the next l e v e l 980 ! 990 L o c n ( P l d a c , " l e f t p " . L e f t p x , L e f t p y ) 1000 D e f n ( " l e f t p " , L e f t p x , L e f t p y ) 1010 ! 1020 L o c n ( P l d a c . " r i a h t p " . R i a h t p x , R i g h t p y ) 1030 D e f n ( " r i a h t p " , R i a h t p x , R i g h t p y ) 1040 ! 1050 L o c n ( P l d a c . " l e f t p / " . L e f t p n x . L e f t p n y ) 1060 D e f n ( " l e f t p / " , L e f t p n x , L e f t p n y ) 1070 ! 1080 L o c n ( P l d a c , " r i g h t p / " , R i g h t p n x , R i g h t p n y ) 1090 D e f n ( " r i g h t p / " , R i a h t p n x . R i a h t p n y ) 1100 ! 1110 ! Carry memory a r ray nodes through 1120 ! to the next l e v e l 1130 ! 1 1 40 DIM Vssx(7) ( 0 DIM Vssy(7) 1160 DIM DpxM2) 1170 DIM Dpy(12) 1180 DIM Dvx(12) 173 1190 DIM Dvy(12) 1200 DIM Rx(6) 1210 DIM Ry(6) 1220 DIM Rnx(6) 1230 DIM Rny(6) • 0 DIM Vddx(6> UDO DIM Vddy(6) 1260 DIM Wx(6) 1270 DIM Wy(6) 1280 DIM Wnx(6) 1290 DIM Wny(6) 1300 DIM Ypx(16) 1310 DIM Ypy(16) 1320 DIM Ypnx(16) 1330 DIM Ypny(16) 1340 DIM Yvx(16) 1350 DIM Yvy(16) 1360 DIM Yvnx( l6) 1370 DIM Yvny(16) 1380 ! 1390 FOR 1=1 TO 7 MOO Locn(Mem,"vss"AVALS(I ) . V s s x ( I ) , Vssy ( I ) ) 1410 Defn( " v s s " AVALS (I) , V s s x d ) .0) 1420 NEXT I 1430 ! 1440 FOR 1=1 TO 12 1450 Locn(Mem."dp"AVALS( I ) ,Dpx( I ) ,Dpy( I ) ) 1460 D e f n ( " d p " A V A L $ ( D . D p x ( I ) , 0 ) 1470 Locn(Mem."dv"AVAL$( I ) ,Dvx ( I ) .Dvy ( I ) ) 1480 Defn ( "dv"AVALS( I ) ,Dvx ( I ) ,0 ) I '90 NEXT I , JO ! 1510 FOR 1=1 TO 6 1520 Locn(Mem,"r"AVALS<I>,Rx<I) ,Ry( I ) ) 1530 D e f n r r " A V A L S ( I ) , R x ( I > ,0) 1540 Locn(Menu " r / " A V A L S ( I ) , R n x ( I ) . R n y ( I ) ) 1550 Defn( " r/ "AVALS(D , R n x ( D ,0 ) 1560 Locn(Mem."vdd"AVALS( I ) .Vddx( I ) .Vddy( I ) ) 1570 Defn ( "vdd"AVALS( I ) ,Vddx ( I ) .0 ) 1580 Locn(Mem,"id"AVALS(I) . Wx ( I ) , Wy ( I ) ) 1590 Defn ( "u"AVALS( I ) ,Wx( I ) ,0 ) 1600 Locn(Mem,"w/"AVALS(I) ,Wnx(I ) ,Wny(I ) ) 1610 De f n("w/"AVALS( I ) ,Wnx( I ) ,0) 1620 NEXT I 1630 ! 1640 Xmax=Vssx(7) 1650 ! 1660 FOR 1=1 TO 16 1670 ! 1680 Locn(Mem,"yp"AVAL$( I ) ,Ypx ( I ) ,Ypy ( I ) ) 1690 D e f n ( " y p " A V A L S ( 1 7 - 1 ) , 0 . Y p y ( I ) ) 1700 ! 1710 Locn(Mem,"yp/"AVALS( I ) ,Ypnx( I ) ,Ypny( I ) ) 1720 D e f n ( " y p / " A V A L $ ( 1 7 - 1 ) ,0 . Y p n y ( I ) ) 1730 ! 1740 Locn(Mem,"yv"AVAL$( I ) ,Yvx ( I ) ,Yvy ( I ) ) ( ".0 D e f n ( " y v " A V A L $ ( 1 7 - I ) , X m a x , Y v y ( D ) I I 60 ! 1770 Locn(Mem,"yv/"AVALS(I ) ,Yvnx <I ) ,Yvny( I ) ) 1780 ! yv/ cannot be def noded because too 1790 ! many nodes bombs the c o m p i l e r . 1800 ! 1 7 4 1810 NEXT I 1820 Endc 1830 ! 1( ? ! 1oo0 PRINT "*******•*•*•*•***•*'' 1860 Bbox("mempldac" ,X1.Y1.X2,Y2) 1870 PRINT "mempldac bounding box=" ,X I ,Y1 .X2 .Y2 1880 PRINT 1890 PRINT "dacvddl x , y=" .Dacvdd lx ,Dacvdd ly 1900 PRINT "dacvddr x ,y = " ,Dacvddrx ,Dacvddry 1910 PRINT "*•****•*****#*+*" 1920 PRINT " d a c v s s l x , y = " . D a c v s s l x , D a c v s s l y 1930 PRINT "dacvss r x , y = " , D a c v s s r x , D a c v s s r y 1940 PRINT •***••#*****•***••*" 1950 PRINT "out x=" 1960 PRINT 0 u t x ( O 1970 PRINT " y=" 1980 PRINT Outy(*> 1990 PRINT ''**-*-*****•**•***•*•*" 2000 PRINT " v r e f l 1 x ,y = " , v r e f 1 l x . V r e f 1 l y 2010 PRINT " v r e f l r x . y = " , V r e f 1 r x , V r e f 1 r y 2020 PRINT " v r e f 2 1 x , y = " . V r e f 2 1 x , V r e f 2 1 y 2030 PRINT " v r e f 2 r x . y = " , V r e f 2 r x , V r e f 2 r y 2040 PRINT 2050 PRINT " c l k l x , y = " . C l k l x , C l k l y 2060 PRINT " c l k r x .y = " , C l k r x , C l k r y 2070 PRINT "**•*•*********•*•**•*•+*" 2080 PRINT " l e f t p x , y = " , L e f t p x . L e f t p y 2 r °0 PRINT "*****+*•****•***•*+•**" 2 0 PRINT " l e f t p / x , y = " . L e f t p n x , L e f t p n y 2110 PRINT "***•**•*-•****+****-*-*" 2120 PRINT " r i g h t p x , y = " , R i g h t p x , R i g h t p y 2130 PRINT "*******•**•*********" 2140 PRINT " r i g h t p / x , y=" .R igh tpnx ,R igh tpny 2150 PRINT "***•*•**-**#*+*****•*•*" 2160 PRINT "vss x=" 2170 PRINT Vssx(*) 2180 PRINT " y = " 2190 PRINT Vssy(*) 2200 PRINT * ' * ' 2210 PRINT "vdd x=" 2220 PRINT Vddx(*) 2230 PRINT " y=" 2240 PRINT Vddy(*) 2250 PRINT "a*-********-***-*-**-***'' 2260 PRINT "dp x=" 2270 PRINT Dpx(*) 2280 PRINT " y=" 2290 PRINT D P y(*) 2300 PRINT u*******************" 2310 PRINT "dv x=" 2320 PRINT Dvx(*) 2330 PRINT " y=" 2340 PRINT Dvy(*) 7 0 PRINT "•*****•****•****+*****" LoO PRINT "r x = " 2370 PRINT Rx(*) 2380 PRINT " y=" 2390 PRINT Ry(*) 2400 PRINT "****************-****" 175 2410 PRINT "r/ x = " 2420 PRINT Rnx(*) 2/-°0 i J PRINT - y = » PRINT Rny(*) 2450 PRINT 2460 PRINT "w x=" 2470 PRINT Wx(*) 2480 PRINT " y=" 2490 PRINT Wy(*> 2500 PRINT 2510 PRINT "w/ x = " 2520 PRINT Wnx(*> 2530 PRINT " y=" 2540 PRINT Wny(*) 2550 PRINT 2560 PRINT "yp :< = " 2570 PRINT Ypx(*) 2580 PRINT " v " 2590 PRINT Ypy(*) 2600 PRINT "•*•***-*•****•* •***-*+•**•*****" 2610 PRINT "yp/ x = " 2620 PRINT Ypnx(*) y=" 2630 PRINT 2640 PRINT Ypny(*) 2650 PRINT 2660 PRINT "yv x=",Xmax " y=" 2670 PRINT 2680 PRINT Yvy(*) 2 0 PRINT "*+***-***-***********•**** 2«u0 PRINT "yv/ x«'\Xma>: 2710 PRINT y=" 2720 PRINT Yvny (*•) 2730 PRINT 2740 END 176 mempldac has been compi led ^--•oldac bounding box= - 3 6 . 1 0 1049.S 2070 dacvddl x .y = - 3 1 . 7 1633 dacvddr x,y= 1049.8 1633 dacvss l x,y= - 3 1 . 7 2030 dacvssr x,y= 1049.8 2030 out x = 73.8 232 .3 434 .3 S92.8 794.8 9 5 3 . 3 2070 2070 2070 2070 2070 2070 v/ref l l x.y= - 3 1 . 7 2044 v r e f l r x,y= 1049.8 2044 v r e f 2 i x.y= - 3 1 . 7 2058 v r e f 2 r x.y* 1049.8 2058 c l k l x,y= - 3 1 . 7 2067 c l k r x.y= 1049.8 2067 l e f t p x.y= 0 1538 l e f t p / x,y= 0 1618 r i g h t p x.y= 1008 1538 r ^ h t p / x . y 1008 1618 v S S x = 0 168 336 504 672 840 1008 1536 1536 1536 1536 1536 1536 1536 vdd x = 84 252 420 588 756 924 1536 1536 1536 1536 1536 1536 d l V 157 325 179 347 493 661 515. 683 825 987 851 1536 * 1536 1536 1536 1536 1536 1536 1536 1536 1536 1536 1536 -*•*•**-*+*•*****-**-«•***-*-d & X ~ 162 330 174 342 498 666 510 678 834 1002 846 1536 1536 1536 1536 1536 1536 1536 1536 1 636 1536 1536 1536 r 9 5 ~ 241 431 577 767 913 1536 1536 1536 1536 1536 1536 177 r / x = SO 246 426 582 762 918 ' 36 1536 1536 1536 1536 1536 ^78 258 414 594 750 930 1536 1536 1536 1536 1536 1536 u/ x = 73 263 409 599 745 935 1536 1536 1536 1536 1536 1536 yp x = n o o n o o o u o c o o o o o r 1493 1397 1301 1205 1109 1013 9 !7 82 > 725 629 533 437 34< 245 149 5; yp/ x = 0 0 0 0 0 0 0 0 0 0 0 0 C 0 0 0 1508 1412 1316 1220 1124 1028 932 8 ? 8 740 644 548 452 356 260 164 bb y x= 1008 y = 1442 1346 1250 1154 1058 962 866 , '70 674 578 482 386 290 194 98 2 yv/ x= 1008 1466 1370 1274 1178 1082 986 890 794 698 602 506 410 314 218 122 L. 178 2 c V t d o o + l Oi-rVfc i r»oV-r f 179 5*0 ( bbu 570 580 590 600 F i l ename: p a l e t t e Des igner : R. M i e l c a r s H G. Cheng Date : 4 -May-83 Comments: Top l e v e l c e l l that p u l l s t o -gether a l l components of the c o l o u r p a l e t t e and connects the I/O pads . C e l l name: p a l e t t e - f u n c t i o n - c e l l s c a l l e d -nodes d e f i n e d -bounding box R e v i s i o n H i s t o r y . see above comments . mempldac.bigxdcod, iopad.neuypgen. newyvgen,newctr1. i n p a d , l o g o . . none . ( - 3 5 3 . - 3 8 9 , 1 2 7 5 , 2 1 7 0 ) (date/name/mod) * * * * * * * H M * * * 4 * * * * * * * * * - + # Colour p a i e t t e c h i p c o n t a i n i n g the d a c s , the p i p e l i n e r e g i s t e r , the memory a r r a y , the x and y decoders , the c o n t r o l c i r c u i t r y , and the I/O pads . D e f c ( " p a l e t t e " ) P l a c e the d a c s , p i p e l i n e r e g i s t e r and memory a r r a y . P lacet"mempidac" ,0 .0 .Mem) ! DAC nodes DIM 0utx (6) DIM 0uty (6) DIM C t r l x l ( 8 ) , C t r l y 1 ( 8 ) DIM C t r l x 4 ( 8 ) , C t r l y 4 ( 8 ) i FOR 1=1 TO 6 L o c n ( M e m , " o u t " & v A L $ ( D , 0 u t x ( I ) , 0 u t y ( I ) ) NEXT I ! 180 610 620 630 6 6bu 660 670 680 630 700 710 720 730 740 760 760 770 780 790 800 310 820 830 840 360 860 870 880 P' " S\ 910 920 930 940 960 960 970 980 990 1000 1010 1020 1030 1040 1050 1060 1070 1080 1090 1100 1110 1120 1130 1140 ( 0 1 I O O 1170 1180 1190 1200 Locn(Mem, "dacvdd l " .Dacvddlx .Dacvddly ) Locn(Mem,"dacvddr" ,Dacvddrx ,Dacvddry) L o c n ( M e m , " d a c v s s l " , D a c v s s l x , D a c v s s l y ) Locn (Mem,"dacvss r " ,Dacvss rx ,Dacvss ry ) L o c n ( M e m , " v r e f 1 1 " , V r e f 1 l x , V r e f 1 l y ) L o c n ( M e m , " v r e f 1 r " , V r e f 1 r x , V r e f 1 r y ) L o c n ( M e m . " v r e f 2 1 " . V r e f 2 1 x , V r e f 2 l y ) L o c n ( M e m , " v r e f 2 r " , V r e f 2 r x , V r e f 2 r y ) L o c n ( M e m . " c l k l " , C l k l x , C l k l y ) L o c n ( M e m . " c l k r " . C l k r x . C l k r y ) P i p e l i n e r e g i s t e r nodes L o c n ( M e m . " l e f t p " , L e f t p x , L e f t p y ) I L o c n ( M e m , " r i a h t p " , R i q h t p x , R i g h t p y ) i Locn(Mem." l e f t p / " . L e f t p n x , L e f t p n y ) i Locn(Mem,"r i g h t p / " , R i g h t p n x , R ightpny) ********** P l a c e the x -decoder P l a c e t " b i a x d c o d " , 1 6 8 , - 8 1 , X d e c o d ) ! DIM Rdpx(4) ,Rdpy(4) DIM Gdpx(4) ,Gdpy(4) DIM Bdpx(4) ,Bdpy(4) i FOR 1=0 TO 3 Locn(Xdecod,"rdp"<iVALS( I ) ,Rdpx( I + 1 ) ,Rdpy( I + 1 ) ) Locn(Xdecod. , , adp"&VAL$( I ) , G d p x d + 1 ) ,Gdpy(I + 1 )) Locn(Xdecod."bdp"&VALS( I ) ,Bdpx( I+1) ,Bdpy( I+1) ) NEXT I ! L o c n ( X d e c o d , " x s i g l e f t " , X s i g x , X s i a y ) L o c n ( X d e c o d , " b t m l e f t " . B t m l e f t x , B t m l e f t y ) L o c n ( X d e c o d , " t o p r g h t " . T o p r g h t x , T o p r g h t y ) Check i f f i l e updated c o r r e c t l y IF Btmlef t y O R d p y d ) THEN BEEP PRINT "node e r r o r " END IF ************************************ Vss bus 1 8 1 1210 ! 1220 Pitch=168 1"'~-tG Bt r ightx=Btmlef tx + (Pitch+6) ; j ! 1250 L a y e r ( M e t a l ) 1260 W i r e f 1 2 , B t m l e f t x - 2 . B t m i e f t y - 1 0 ) 1270 X ( B t n a h t x + 2 ) 1280 ! 1290 ! Connect Vss bus to the xdecoder 1300 ! 1310 FOR 1=0 TO 6 1320 W i r e ( 4 , B t m l e f t x + ( P i t c h * I ) , B t m l e f t y ) 1330 Dy( -10) 1340 NEXT I 1350 ! 1 -.60 ' 1370 i 1380 ! P rocessor data busses 1330 ! 1400 Di l i Datay(4) 1410 ! 1420 FOR 1=1 TO 4 1430 ! 1440 D a t a y ( I > = B t m l e f t y - 2 0 - ( I - 1 ) * 6 1450 ! 1460 ! H o r i z o n t a l metal busses 1470 ! 1480 L a y e r l M e t a l ) I "0 W i r e ( 2 , B t m l e f t x - 2 , D a t a y (I)> L . O X (Bt r ightx+2) 1510 ! 1520 ! Po ly jumpers over the Vss bus 1530 ! 1540 L a y e r ( P o l y l ) 1550 ! 1560 Mp(Rdpx( I ) ,Rdpy ( I ) ,Rdpx ( I> ,Datay ( I ) ) 1570 W i r e ( 2 . R d p x ( I ) , R d p y ( I ) ) 1580 Y(Datay(I>> 1530 ! 1600 Mp(Gdpx ( I ) .Gdpy ( I ) .Gdpx11) ,Datay ( I ) ) 1610 W i r e ( 2 , G d p x ( I ) . G d p y ( I ) ) 1620 Y ( D a t a y d ) ) 1630 ! 1640 ' M p ( B d p x ( D , B d p y ( I ) , B d p x ( D , D a t a y ( I ) ) 1650 Wi re (2 .Bdpx ( I ) . B d p y d ) ) 1660 Y ( D a t a y ( D ) 1670 ! 1680 NEXT I 1690 ! 1700 1 ******************************************** 1710 i 1720 ! input enable busses 1730 ! ( 0 ! 1/60 ! enable / 1770 ! 1730 ! Note that the l e n a t h of the i/o 1790 ! pads i s 800 1800 ! 182 1810 1820 y - r , U J 1850 1860 1870 1880 1890 1900 1910 1920 1930 1940 1950 1960 1970 1930 1990 2000 2010 2020 2030 2040 2050 2060 2070 2080 3 3 21 UO 2110 2120 2130 2140 2150 2160 2170 2180 2190 2200 2210 2220 2230 2240 2250 2260 2270 2280 2290 2300 2310 2320 2330 T -0 2 , 0 2360 2370 2380 2390 2400 E n n l e f t x = B t r i g h t x + 2 - 8 0 0 E n n l e f t y = D a t a y ( 4 ) - 6 j Layer(Meta1) W i r e ( 2 , E n n l e f t x . E n n l e f ty > X (Bt r ightx+2) enable E n l e f tx=Ennlef tx E n l e f t y = E n n l e f t y - 6 j Layer(Meta1) W i r e ( 2 , E n l e f t x , E n l e f t y ) X(Btr ightx+2> P l a c e the p rocessor I/O pads I o v s s y = E n l e f t y - 1 0 Iovddy=Iovssy-11 3 I P l a c e ( " i o p a d , m y " . E n l e f t x , I o v s s y , I o p a d ) Connect the e n , e n / , i n and out/ s i g n a l s to t h e i r r e s p e c t i v e busses FOR 1=1 TO 4 enable L o c n ( I o p a d , " e n " & v A L $ ( I ) . X , Y ) M p ( X . t n l e f t y ) L a y e r ( P o l y l ) W i r e ( 2 . X , Y ) Y ( E n l e f t y ) j ! enable / i Locn ( Iopad , "en/ '*dVAL£( I ) ,X ,Y ) M p ( X , E n n l e f t y ) L a y e r ( P o l y 1 ) W i r e ( 2 , X , Y ) Y ( E n n l e f t y ) input L o c n ( I o p a d , " i n"&VAL$( I ) ,X .Y) Mp(X ,Datay ( I ) ) L a y e r ( P o l y l ) W i r e ( 2 , X , Y ) Y(DatayCI) ) output L o c n ( I o P a d , " o u t / " & V A L $ ( I ) . X , Y ) Mp(X .Datay ( I ) ) L a y e r ( P o l y l ) W i r e ( 2 , X , Y ) 183 2410 Y ( D a t a y d ) ) 2420 ! 2 - 0 NEXT I 2 .0 ! 2450 1 *******•*•****•******•*+*•******•******+* 2460 ! 2470 ! P l a c e the processor y decoder 2480 ! 2490 ! 2500 P l a c e t " n e u y p q e n " . - 1 2 9 , 0 . Y p g e n ) 2510 ! 2520 DIM A i n p x ( 4 ) . A i n p y ( 4 ) 2530 ! 2540 FOR 1=1 TO 4 2550 L o c n ( Y p a e n . " a i n " & v A L $ ( I ) , A i n p x ( I ) . A i n p y ( I ) ) 2560 NEXT I 2570 ! 2530 Locn(Ypgen."vdd" .Ypvddx,Ypvddy) 2590 L o c n ( Y p a e n , " v s s " . Y p v s s x , Y p v s s y ) 2600 ! 2610 ! Connect VSS to newypqen 2620 ! 2630 L a y e r ( M e t a l ) 2640 Wi re (4 ,Ypvssx .Ypvssy ) 2650 X ( B t m l e f t x ) 2660 ! 2670 ! Connect Vdd to newypqen 2680 ! 0 Layer (Metal ) 2/u0 Wire(4,Ypvddx.Ypvddy) 2710 Y(Dacvddly) 2720 Wi re (12 .Dacvdd ix .Dacvdd iy ) 2730 X (Y P vddx -2 ) 2740 ! 2760 ! 2770 ! P l a c e the v ideo y decoder 2780 ! 2790 ! 2800 P lacet "newyvgen" ,1017.0 ,Yvgen) 2810 ! 2820 DIM A i n v x ( 4 ) , A i n v y ( 4 ) 2830 ! 2840 FOR 1=1 TO 4 2850 Locn( Yvaen, "a in"&VAL$( I > . A i n v x d ) , A i n v y ( I ) ) 2860 NEXT I 2870 ! 2880 Locn(Yvqen,"vdd" ,Yvvddx ,Yvvddy) 2890 L o c n ( Y v a e n . " v s s " , Y v v s s x , Y v v s s y ) 2900 ! 2910 ! Connect VSS to newyvgen 2920 ! 2930 L a y e r ( M e t a l ) ?~'<0 W i r e ( 4 , Y v v s s x , Y v v s s y ) I -.0 X(Toprghtx) 2960 ! 2970 ! Connect Vdd to newyvgen 2980 ! 184 2990 L a y e r ( M e t a l ) 3000 Wire(4 ,Yvvddx ,Yvvddy) 3010 3020 3 n '»0 2 J 3050 3060 3070 3080 3090 3100 3110 3120 3130 3140 3150 3160 3170 3180 3190 3200 3210 3220 3230 3240 3250 3260 3270 3280 5 0 3^oO 3310 3320 3330 3350 3360 3370 3380 3390 3400 3410 3420 3430 3440 3450 3460 3470 3480 3490 3500 3510 3520 3530 3 c / «0 i o 3560 3570 3580 3590 3600 Y(Dacvddry) Wire(12,Dacvddrx ,Dacvddry ) X(Yvvddx+2) P l a c e the c o n t r o l s i g n a l generator The top r i g h t hand corner of ' n e u c t r i ' i s l o c a t e d at (117.37) r e l a t i v e to i t s o r i g i n . We a l l o u an x - s p a c i n g of 40 from the l e f t hand edge of the x -decoder to route the poly b u s s e s . We a l l o u a 5 lambda s p a c i n g from the bottom of the y - d e c o d e r . Neuc t r l x=0 -40 -117 Netjctr ly = Ypvssy -5 -37 P l a c e ( " n e u ) c t r r \ N e u J c t r l x . N e u c t r l y . C t r l ) i ' c t r l v d d " , C t r l v d d x , C t r l v d d y ) ' c t r 1 v s s " , C t r 1 vss>:,Ctr 1 vssy ) " c s " , C s x , C s y ) ' rw" , Rux. Rwy) ' e " , E x , E y ) 'a4" .A4x .A4y ) ' a 5 \ A 5 x , A 5 y ) 'busbttn" .Busbtmx .Busbtmy ) ' c t r l r a t " , C t r l r g t x , C t r l r a t y ) ' t r i " . T r i x , T n y ) ' t r i o u f ' . T r i o u t x . T r i o u t y ) 1 t r i o u t b " , T r i o u t b x , T r ioutby ) L o c n ( C t r l . L o c n ( C t r l , L o c n ( C t r l . L o c m C t r i , L o c n ( C t r l , L o c n ( C t r1, L o c n ( C t r l , L o c n ( C t r l , L o c n ( C t r l . L o c n ( C t r1, L o c n ( C t r l , L o c n ( C t r1. ************************************* Connect c o n t r o l bus to x decoder Wsep=4 L a y e r ( P o l y l ) FOR 1=1 TO 8 L o c n ( C t r l , " x d c b u s " & v A L $ ( I ) , X 1 . Y 1 > X1=X1 Y1=Y1 X2=X1+(9-I)*Wsep Y2=Y1 X3=X2 Y3=Xsigy+(I-1)*(Wsep+1) X4=Xsiax Y4 = Y3 W i r e ( 2 , X 1 . Y 1 ) X(X2) Y(Y3) X(X4) C t r l x K I ) = X 1 C t r l y l ( I ) - Y I 185 3610 3620 3690 2 3 3bb0 3660 3670 3680 3690 3700 3710 3720 3730 3740 3750 3760 3770 3780 3790 3300 3810 3820 3830 3840 3850 3860 3870 3880 3f ~'0 1 .0 3910 3920 3930 3940 3950 3960 3970 3980 3990 4000 4010 4020 4030 4040 4050 4060 4070 4080 4090 4100 4110 4120 4130 4140 < 0 4 ib0 4170 4180 4190 4200 C t r l x 2 ( I ) = X 2 C t r l y 2 ( I ) = Y 2 C t r l x 3 ( I ) = X 3 C t r l y 3 ( I ) = Y 3 C t r l x 4 ( I ) = X 4 C t r l y 4 ( I ) = Y 4 NEXT I • * * * # 4 # * * * * * * * * * * * * * * * * * * * * * * * * Connect enable/ en/ the input s i a n a l s pad enable and Layer(Meta1) W i r e ( 2 . T r i o u t b x . T r i o u t b y ) X l B t m l e f t x ) YCEnnlef ty ) X ( E n n l e f t x ) en Layer(Meta1) W i r e ( 2 . T r i o u t x , T r i o u t y ) X lBtmlef tx+4) Y ( E n l e f t y ) - X t E n l e f t x ) Connect pouter and ground to the c o n t r o l c i r c u i t r y ( n e u c t r l ) Vss L a y e r ( M e t a l ) Wi r e ( 4 , C t r 1 v s s x , C t r 1 v s s y ) Y ( C t r l v s s y - 4 ) X(Btcr.lef tx+9) Y ( Iovssy ) ! Vss r a i l of i/o pads X ( E n l e f t x ) Vdd Layer(Meta1) W i r e ( 4 , C t r l v d d x . C t r l v d d y ) Y ( C t r l v s s y - 4 - 6 ) X(Btmleftx+9+6) Y(Iovddy) X ( E n l e f t x ) ************************************ P l a c e and route the p r o t e c t e d input pads DIM In P ad(17) DIM Padoutx(17) DIM Padouty(17) ue r e q u i r e 17 ! input pads 186 £81 snq S S A, pueu, m S i y j 008(7 i O 6 ZI7 i 08 Zl7 i 0ZZ«7 ( ( 9 ) X } n o p e d ) x 09/17 (OjA^nopPcDA 0 > d7+0t+ xPP* AA)X 0i?Lt7 (^ud4M6Ty'xud;q6Ty'2)aaTM 0SZ«7 ( l A T 0 c | ) j a A e - i Q3ZI7 i OlZfr /d a ; noy j 00ZI7 i 06917 ( ( S ) x + n o P e d ) X 089<7 ( ( 5 ) * + n o P e d ) A 0Z9I7 ( 0 t + x p p A A A ) X 09917 (rfd:m6Ty 4xd :m5Ty'3)e . iTM 0S9«7 ( lAjc-d) jaAe-| ot79t7 i 08917 d a;noy \ 039»7 i 019* A=do}ssrt 009^ I 1X3N O6SI7 ((l7+I)^+nc.ped* ()7+I) :< + n o P e d 4 , , + n o . . ' ( i 7 + I ) P e d u I ) u : j o l O8SI7 ( ( i 7 + I ) P e d urA , X ' , . 0 Z 3 J k P B d u T „ )ao«?Id OZSfr H 3 + T d p e j * ( i -D+OA-A 09Sfr 3 01 1=1 HOJ OSS* i OfrS* qo^Tdped* 2-AjppA3BQ - 0 A OSS* i 02S* /d pue d ja ^ s j o a a a u T j a d i j j 0 1 S * ! °P"f i 08i7i7 I 1X3N OZI7I7 ( ( T ) x ; n o p e d ) x 09** ( ( I ) ^ + n o p B d ) A OS** ( l 7 ) x a 0*** ( ( I ) A A U T y ( l ) X A u T y k 3 ) a a T M 0£*7*7 ( tAT°d) jeAe-] Q2** ( ( I ) A + nop*d"» a j x ; n o D 8 d * l ( ; n o i ( 4 ( j j p e d u j juoo~| 0 Lt7*7 ( (I ) p e d u i - 1 • x , „ 0 Z 3 J , P B d u T I I ) 3 3 B i d 00** u,o}Tdped*( t - I ) + 0A = A 06£«7 17 01 1=1 iiOJ 088* i 0ZS* u o i T d p e d - 2 / ( ( 3)AAUTy +(e)AAUTfc ) ) = 0 A 09817 i 0 S £ * s^nduT jepooep A oapT A J 0*£* i 0££* i OI8I7 + s j i o s n a + 8 + ( 1 )XAury=X 00817 i 06317 a p i s pueq } q 6 T j au,} Suofe s p e j j 08217 i 0Z2* * * * * * ^ * * * * * * * * * * * * * * * * * * * * * * ^ * * * * * * * j 092* i 0S2I7 snq ssft $o a i ^ u e o 03. j C * apou ^ndur UIOJ + aoue^srp i £t=;s>>osng Q0^t7 OOl-Ma+Tdpej 022i7 i 01217 4810 4820 £ r , ^0 L. 0 4850 4860 4870 4880 4890 4900 4910 4920 4930 4940 4950 4960 4970 4980 4990 5000 5010 5020 5030 5040 5050 5060 5070 5080 n rj §.o6 5110 5120 5130 5140 5150 5160 5170 5180 5190 5200 5210 5220 5230 5240 5250 5260 5270 5280 5290 5300 5310 5320 5330 $ 0 5360 5370 5380 5390 5400 L a y e r ( M e t a l ) W i r e ( 1 2 , B t r i g h t x + 2 , I o v s s y ) X(X) Y(Vsstop) Jumper to j o i n the iopad vss bus w i t h the x decoder vss bus L a y e r ( M e t a1) W i r e ( 1 2 , B t r i a h t x + 2 , B t m l e f t y - 1 0 ) Dx(10) Y ( Iovssy ) Vss pad L a y e r ( M e t a1) Box(X -6 , Iovssy+6-50 .X -6+50, Iovssy+6) R ight hand vdd bus L a y e r ( M e t a l ) W i r e ( 1 2 . B t r i g h t x + 2 . I o v d d y ) X(X+113) ! d i s t a n c e between vss Y(Dacvddry) ! and vdd of pads i s 113 X(Dacvddrx) Vdd pad Layer(Meta 1 ) Box(X+113+6-50,Dacvddry+6-50.X+113+6,Dacvddry+6) ********************************* dac v o l t a g e re fe rence pads L a y e r ( M e t a l ) W i r e ( 1 2 , V r e f 2 r x . V r e f 2 r y ) X(X+113+6-50) Box(X+113+6-50,Vref2ry -25,X+113+6,Vref2ry+25) I Layer (Meta 1) W i r e ( 1 2 , V r e f 1 r x , V r e f 1 r y ) X(X) Y ( V r e f 2 r y - P a d p i t c h ) X(X+113+6-50) Box (X+113+6-50,Vre f2ry -Padp i tch -25 ,X+113+6.Vre f2ry -Padp i tch+25) ********************************** P l a c e the logo i n the gap between the dac v o l t a g e r e f e r e n c e pad and the dacvdd r a i l . X0=X+113 Xh=X0-Dacvddrx Y0=Dacvddry Y h = V r e f 2 r y - P a d p i t c h - Y 0 ! 188 i.D CN > O cri o _ i «— . — » o o X o o o OJ _J ._ l o •t- 1 C\J C\J • «— —. —. > •— o > X ai o o o Oi Oi —• o O >-• _J _J « *— 1 1 X C\J CN o > X r Oi o o o o ai oi •T) _J o o » _ i — i -r -—• w O o + 1 Oi 0) CMCM o o \ \ •—1 -C XT = = X >- •— — 1 + a.' i—> o o o X >- OJ .a II II •—1 CQ — X > • Q_ + + + * + * XI —I in xi c ro OJ 0; +-> Oi c o .—I ro 01 X ro Q_ o 0J -*-> c ( -4 ro —H X ) ' 1 1X1 a: ' o C UD X 4» ai Oi (-4 X) 0) o CO XI • — i • (1) O >. <-. a> .—1 -t-' +-> o c ro co aj o a * r—1 a in X . 4 — - —. — • -Cl CO » X 01 —< X I (- CO <-*-4 - > + o a x 3 —• CQ C 1 = o W - 3 CM x 0j 1 O 2 X X) II II CQ X X + + + + 0 1 o 3 (-. » Lfl ro 3 a c X o o X) 3 O a — CD — + tX) I—I +• — X 3 ro O a x C ro oo -C X 3 ro > o - o —•• • x : " — C3 • o LO o U.0~i — +-> — « — 01 X «-i LD —i •— CO + O'l ro - + a * — • 01 OJ a. x i X •— ^ -— ^ - . ^ o a + ro — ro i_ r^ - r-- r-- >>CG CO ' X > c n a*j cn ro o o — a x a J— ~ w w l_Ti — — — «sr w w « u t- « - C ro t — - X > X <r x >. x ^ a : x > x > X O) Q. i —« a CM —1 •-H X —( • -(-• -t-j —1 . + J 4 - > -t^ —< QJ -*•» •—« o >—1 = c ro •-> 3 3 3 ITJ X 3 3 3 rc x 3 3 3 rrj - 3 O'l Oi >. + +J o o o ro •^ m o o o ro •*-> <T O O O OJ +J x O X + a> — >- Qj\— X X X oi<r x x x 0><r X X X OJUJ X 4-1 -t-> X o o c II Oi • ro ro ro Oi 21 • ro ro ro ai XI • ro ro ro OJ z: • ro > II >- ro O I—1 a CM a a a +J — c\i a a. a. -t-> — C M O - Q-a -<-> o j a CLX o •—i II — i 0 o 3 v v w ^ 3 P— — • • — 3 ( - t ' — — ' — ' ^ — ' 3 c c 1—1 >- Q 1 1— o OJ 0> X >- X O 0> 0) X >- X o OJ OJ X >- X O 0) OJ x ro II or X O'l > a: > ( - or > fr« cc > f-o a L J 0"! ro - i ro —• ro -»H ro -* .. >_ _ . • Li_ ~Z. —• • z? - - -_l 12 . . _j ^ • • J 3 - J 3 o o C3 ~ ' o o o o o o C3 o o o o o o CD o o o o CD o c^ .. o o o <r> — CM o _fi ix) r^ . co cn o «— CM co <r LP LO OJ cn o » - o j co <r u"i X> r^ - CO <T>T N <r <r <r -o" ->r u~i u"i u i LT> U~I LTI U"I U"I U"I UI UJ >X >XI IX> t x LO CO UD LTi LP U"i LTl U"l Li") Ufl U l LP LO U~l LO LTI U l Lf l LTl U'l U") Lfl LO LTl U*l LO U l U"l U"l iXl LTl U ) LTI Lf l U") U"I U"l .O O O O O CD O CD O O CD O O O O O O CD O O O O O ~J O O O O O •> r - C\) CO <T U"" uD r~- CO CTi CD » — CsJ CO <T |_H i X r - CO <T> O CM CO 'jD N co cn o r ^ r ^ r ^ r ^ r ^ r ^ r ^ r ^ r - c o o r i ' D D C O C O O D C O O O C O O O C n c n c n c n a j i c n c n c n o U"i Ll~l U"l U l Lf l U~l U* U"i U^ U") u^ u"i LT) LP LO u l U") L(*I LD LTl — J \S\ LH u"i un L 0 6010 6020 6030 6 0 6 . ^ 0 6060 6070 6080 6090 6100 6110 6120 6130 6140 6150 6160 6170 6180 6190 6200 6210 6220 6230 6240 6250 6260 6270 6280 6?90 0 0 6310 6320 6330 6340 6350 6360 6370 6380 6390 6400 6410 6420 6430 6440 6460 6460 6470 6480 6490 6500 6510 6520 6530 6540 r-o 6570 6580 6590 6600 Y (PadoutyMO) ) X<Padoutx(10)) Route rw L a y e r ( M e t a l ) Wire(2,Ru>x,Rwy) X(Padoutx(11)+19) Y(Padouty(11)) X(Padoutx(11) ) Route cs Layer(Meta1) W i r e ( 2 . C s x . C s y ) X(Padoutx(12)+23) Y(Padouty(12)) X(Padoutx(12)) Route p rocessor y decoder inputs L a y e r ( M e t a l ) FOR 1=1 TO 4 M p ( A i n p x ( I ) - 2 , A i n p y ( I ) ) W i r e ( 2 , A i n p x ( I ) - 2 , A i n p y ( I ) ) D x ( - 5 - ( 4 - I ) * 4 ) Y(Padouty(I+12)) X ( P a d o u t x d + 12) ) NEXT I dac c lock input j Y = Dacv/ssly -2*Padpitch P l a c e ( " i n p a d f r 9 0 " . X , Y . I n p a d ( 1 7 ) ) L o c n ( I n p a d ( 1 7 ) . " o u t " , P a d o u t x ( 1 7 ) , P a d o u t y ( 1 7 ) ) Layer (Po l y1 ) W i r e ( 2 . C l k l x , C l k l y ) X(Padoutx(17)+7) Y(Padouty(17)) X(Padoutx(17) ) L e f t hand Vss bus Layer(Meta1) Wi re (12 ,X , Iovddy ) Y (vsstop) Vss pad Layer (Meta 1) Box (X+6-50 ,Vss top -50 ,X+6.Vss top ) Box(X+6-50, Iovssy+6-50.X+6, Iovssy+6) *******+*************************** 190 6610 6620 66 '-to 6 :> 6bt>0 6660 6670 6680 6690 6700 6710 6720 6730 6740 6750 6760 6770 6780 6790 6800 6810 6820 6830 6840 6350 6860 6870 6880 f ' l (L .0 6910 6920 6930 6940 6950 6960 6970 6980 6990 7000 7010 7020 7030 7040 7050 7060 7070 7080 7090 7100 7110 7120 7130 7140 1 0 7 ibO 7170 7180 7190 7200 ! Lef t hand vdd bus i Layer(Meta1) W i r e ( 1 2 , X - 1 1 3 , I o v d d y ) Y( Y) W i r e ( 1 2 . X - 1 1 3 , D a c v d d l y ) X(Dacvddlx) i Vdd pad (Th is i s not r e a l l y needed because the vdd bus extends over to to r i g h t hand s i d e ) Layer(Meta1) Box (X -113-6 ,Dacvdd ly+6-50,X -113-6+50.Dacvdd ly+6) i dac vss pad L a y e r ( M e t a l ) Wi r e ( 1 2 , D a c v s s l x , D a c v s s l y ) X(X-113-6+50) B o x ( X - 1 1 3 - 6 , D a c v s s l y - 2 5 , X - 1 1 3 - 6 + 5 0 , D a c v s s l y + 2 5 i ! connect vss to the c l k input pad i W i r e ( 1 2 , X . D a c v s s l y ) Y ( D a c v s s l y - P a d p i t c h ) i P l a c e and route the dac output pads ! L a y e r ( M e t a l ) FOR 1-1 TO 6 W i r e ( 2 , 0 u t x ( D , 0 u t y ( I ) ) Y(Outy(I)+50) Box(Ou t x ( I ) - 2 5 . O u ty( I )+50,Outx( I )+25.Outy( I )+50+50) NEXT I j ! * - * * - * + * * # - * - i t - * * * - * * * * * - * * * - * * * * * * * * * * * * * * * Endc PRINT "*****'**********" B b o x ( " p a l e t t e " , X I . Y 1 , X 2 , Y 2 ) PRINT " p a l e t t e bounding box=" ,X1 ,Y1 ,X2 ,Y2 PRINT "*******-******•*•" PRINT "dacvddl x , y=" ,Dacvdd lx ,Dacvdd ly PRINT "dacvddr x ,y=" ,Dacvddrx ,Dacvddry PRINT "******•******#•»" PRINT " d a c v s s l x , y = ' \ D a c v s s l x , D a c v s s l y PRINT "dacvss r x , y = " , D a c v s s r x , D a c v s s r y PRINT "*•***•**•******•*•*•*" PRINT "out x=" PRINT Outx(*) PRINT " y=" PRINT Outy(*> PRINT "***************" PRINT " v r e f l l x , y = " , V r e f 1 l x , V r e f 1 l y PRINT " v r e f l r x , y = " , V r e f 1 r x , V r e f 1 r y 191 7210 PRINT " v r e f 2 1 x , y = " , V r e f 2 1 x . V r e f 2 1 y 7220 PRINT M v r e f 2 r x , y = " , V r e f 2 r x . V r e f 2 r y 7230 PRINT "********•*-*****-**" 7 D PRINT " c l l c l x , y = \ C l k l x , C l k l y 7 ^ 0 PRINT " c l k r x ,y = " , C l k r x .C lk ry 7260 PRINT "**•********-*•*******" 7270 PRINT " l e f t p x , y = " . L e f t p x . L e f t p y 7280 PRINT "*******•**+•****•*•**•*' 7290 PRINT " l e f t p / x , y = " , L e f t p n x , L e f t p n y 7300 PRINT "******•*****•#•*•**" 7310 PRINT " r i g h t p x ,y = ' \R igh tpx ,R igh tpy 7320 PRINT "*****************•*" 7330 PRINT " r i g h t p / x , y = " . R i g h t p n x , R i g h t p n y 7340 PRINT "**#*+**+•***•**•*****" 7350 PRINT "rdp x=".Rdpx(*) 7360 PRINT " y=",Rdpy(*) 7370 PRINT " 7380 PRINT "gdp x=".Gdpx<*) 7390 PRINT " y = '\Gdpy(*) 7400 PRINT "+**+*****#**+•*•*-***•*•*•*" 7410 PRINT "bdp x=",Bdpx<*) 7420 PRINT " y=",Bdpy(*) 7430 PRINT 7440 PRINT " a i n v x=".Ainvx(*) 7450 PRINT " y = \ A i n v y ( * ) 7460 PRINT "***********************" 7470 PRINT " a i n p x=".Ainpx(*) 7480 PRINT. " y=",Ainpy(*) 7 '^0 PRINT "**********************-*'' 7 . ,0 PRINT "cs x . y=" ,Csx ,Csy 7510 PRINT " ru x ,y = \Rwx ,Ruy 7520 PRINT "e x , y=" ,Ex .Ey 7530 PRINT "a4 x ,y=" .A4x ,A4y 7540 PRINT "a5 x ,y=" ,A5x .A5y 7550 PRINT ''^fr*******************-*'1 7560 PRINT " b t m l e f t (vss) x , y = " , B t m l e f t x , B t m l e f t y 7570 PRINT "***************#*******" 7580 PRINT " x s i g l e f t x , y = " , X s i g x , X s i g y 7590 PRINT "*****+****•++*+*******+•*" 7600 PRINT " c t r l r g t x , y = " , C t r l r g t x , C t r l r g t y 7610 PRINT "***¥•***•* + *•**•***** + *•**:*¥:" 7620 PRINT " i o v d d r x , y = " , B t r i g h t x , I o v d d y 7630 PRINT " i o v d d l x , y = " , E n l e f t x , I o v d d y 7640 PRINT " i o v s s l x , y = " , E n l e f t x , I o v s s y 7650 PRINT " l o v s s r x , y = " . B t r i g h t x , I o v s s y 7660 PRINT "*********************#*" 7670 PRINT " c t r l v s s x , y = " , C t r l v s s x , C t r l v s s y 7680 PRINT " c t r l v d d x , y = " , C t r l v d d x , C t r l v d d y 7690 PRINT "**********************-**" 7700 PRINT "padout x= u ,Padoutx (* ) 7710 PRINT " y = \ P a d o u t y < 0 7720 PRINT "*******************•**•***" 7730 ! FOR 1=1 TO 8 7740 ! PRINT " c t r l l ( " A V A L S ( I ) , " ) x . y = " , C t r l x 1 ( I ) , C t r l y 1 ( I ) 7 0 ! PRINT ' c t r l 2 ( " A V A L $ ( I ) . " ) x , y = " , C t r l x 2 ( I ) , C t r l y 2 ( I ) 7 / D O ! PRINT H c t r l 3 ( " A V A L $ ( I ) , " ) x , y = ' \ C t r l x 3 ( I ) , C t r l y 3 ( I ) 7770 ! PRINT "c t r14( "AVALS( I),") x , y = " , C t r l x 4 ( I ) , C t r l y 4 ( I ) 7780 ! PRINT " " 7790 ! NEXT I 7800 ! PRINT 192 7810 ! 7820 PRINTER IS 1 7°°0 ! 1 0 END 193 V6T 1*2- 8001 = A'X J S S A O T 1*2- 012 = A*X T S S A O T *S8- 012 = A'X | p p A O T *S£- 8001 = A*X j p p A O T 11- 0«7- = A'X }) O S l - 2 - =A*X ^j e T B T S X 181- 0 = A « x ( S S A ) ^ a juj + q 82£- S S I - = A ' X S B •762- S S I - =**x * B 9 6 1 - S S I - = ® 2 9 1 - S S I - =A4x mi 0 £ l - S S I - =A'x so * * * * * -<• •* * •* * •* * f * -«• * * * * £62 Z61 101 S -A 6 2 1 - 6 2 1 - 6 2 1 - 6 2 1 - =x d u t e £62 Z61 LOl S = A S £ U S £ U S£ t i S£l I = x A U T e 131- 131- L31- 181- - * £83 628 158 Z66 = x d p q 131- 181- 131- 131- = A Z*£ £617 SIS l^ gg =x dp6 181-IL 0Z02 £*£S6 0Z02 8**6Z 131 ZSi 8191 8£Sl 8191 8S02 8S02 **02 **02 0Z02 8*265 0£02 0£02 ££91 ££91 131-6Zt 800! 8001 0 8£Sl Z902 Z902 8*61701 Z* l£-3 ' 6*0 I Z* t£-0Z02 £**£* 8*6*01 Z* l£ 131-S2£ = A»X = A =x Y /d^qSiJ = A » x d}L | 6 T l =A«x /d+ja[ 0 =A'x d+^a[ 3*6* 0 1 =A*X - M I 3 Z* 16- H I 3 =A'X I ^ - f d J A =A'x T 2 i e j A =A*X ^ J 8 J A = A 4 X \ [ * 4 * 4-*-**-*•#•*-«••*-«• 0Z02 0Z02 = A £•282 8*£Z = x \ no #•**•*****•****•*••>• =A*x jssAoep =A*X TSSAOep 8*6*01 .£• Z' IP-= A = A X i p p ^ ;> X y p p A o e p 0Z12 SZ21 6 8 8 - £S£- =xoq ouTpunoq 3-443 jed c t r l v s s x ,y = -84 -377 r ' r i v d d X i y = -149 -377 padout x= 1144 1144 1144 1144 1144 1144 -222 -222 -222 -222 -222 -222 - 2 2 2 -222 -222 -222 -222 y - -1 99 199 299 1383 1483 -304 -204 -104 - 4 96 196 296 396 496 S96 1880 **************** r * * * * + - - M -195 c 3 ) 196 

Cite

Citation Scheme:

        

Citations by CSL (citeproc-js)

Usage Statistics

Share

Embed

Customize your widget with the following options, then copy and paste the code below into the HTML of your page to embed this item in your website.
                        
                            <div id="ubcOpenCollectionsWidgetDisplay">
                            <script id="ubcOpenCollectionsWidget"
                            src="{[{embed.src}]}"
                            data-item="{[{embed.item}]}"
                            data-collection="{[{embed.collection}]}"
                            data-metadata="{[{embed.showMetadata}]}"
                            data-width="{[{embed.width}]}"
                            async >
                            </script>
                            </div>
                        
                    
IIIF logo Our image viewer uses the IIIF 2.0 standard. To load this item in other compatible viewers, use this url:
http://iiif.library.ubc.ca/presentation/dsp.831.1-0095834/manifest

Comment

Related Items