VLSI设计流程简介.doc
文本预览下载声明
VLSI設 計 流 程 簡 介
開宗須明義﹐什么是VLSI(Very Large Scale Integrated Circuit)呢?一般而言﹐VLSI是指電晶体(Transistor)數目超過1万個以上的IC。但時至今日﹐市面上可見的IC數目多遠不止于此數﹐例如Intelr的Pentium系列CPU﹐所包含的電晶体數即高達200万以上。可想而知﹐隨著IC功能的日益复雜与龐大﹐IC設計工作也愈形艱巨﹐非有适當的電腦輔助工具以及系統化的設計流程与方法是不能竟其功。以上將針對系統化的設計方法做一個介紹。
描述IC的几個層次
設計出來的IC是什么樣子﹐必須有适當的語言將其描述出來﹐才能做后續步驟的處理(圖一)﹐然而VLSI所做的運算多數是一些數學問題﹐所以設計IC首先必須將數學實体化﹐也就是“將數學轉成硬体可以執行的演算法”;在另一方面﹐IC所用的電路元件又牽涉到許多物理特性的問題﹐這意味著IC設計是一件橫跨抽象的數學到實際的元件物理的事情﹐面對的問題千頭万緒﹐實在無法一次解決﹐所以必須分層處理﹐各領域解決各領域的問題﹐以下是IC設計時描述IC的几個層次。
Behavior Level
在這個層次﹐IC動作的方式將以數學演算法(Algorithm)或流程圖等方式描述。所以在這個層次﹐設計人員所關注的問題主要是在于如何將IC功能初步硬体化﹐至于詳細的電路如何設計﹑以及元件特性等問題則不在考慮之列.
當數學運算化為演算法后﹐通常IC的大致架构(Architecture)便已浮現﹐所以這個層次也可稱為Architecture Level。
Register Transfel LeveL(RTL)
在這個層次﹐設計人員首先必須定出電路中所有的暫存器﹐進而描述隨著時脈(Clock)前進﹑暫存器值之轉換關系﹐所以在這個層次,設計的重點在于循序(Sequential)電路﹑控制電路如何實現﹐以及時脈控制的策略(Clocking Strategy)為何。
RTL是Syntehesis Tool出現后的產物﹐通常設計人員在RTL Level設計好電路后﹐便把電路交給電腦﹐由Synthesis Tool自動轉化成邏輯(Logic)電路。
Logic Level
在這個層次﹐IC將以邏輯閘(Logic gate)的形式描述﹐所以設計的重點在細部邏輯電路的實現﹐此時閘延遲時間(Gate delay)﹐以及閘驅動能力(Driving)等實体上的變數﹐必須通盤考量。
Circuit Level
這是IC設計中最接近實体的層次,在這個層次中﹐所有電路以電晶体﹑電容﹑電阻等電路元件描述﹐元件的特性以及實体電性的問題為考量重點。
所以為了解決IC設計時所面對的“廣度”問題﹐系統化的設計步驟是采取由上而下﹑逐層分割﹐縮小問題范圍的方式來解決的.以下將更進一步說明系統化設計如何有效縮簡IC設計“量”的問題.
結构化IC設計原理
前面提過﹐典型的VLSI設計所面對的設計复雜度者是相當可觀的﹐即使有了基本的几种層次分割﹐但是面對動軋以十万計的電晶体時﹐仍叫人有不知如何下手之感﹐所以必須有進一步的簡化方法﹐才能將IC設計的繁复工作控制在可接受的范圍內。以下來看一下結构化IC設計原理是如何辦到的。
層次化(Hierarchy)
當IC太大不知如何下手時﹐仍然唯有進行分割一途。層次化意謂著持續不斷地分割大電路成為許多小電路﹐直到這些小電路易于設計為止。
層次化是結构化IC設計的基礎﹐所有复雜度的簡化都來自于“适當”地分割電路.怎樣才叫做“适當”地分割電路呢?以下的三個原理是其准則。
規律化(Regularity)
如果只是單純的層次化﹐雖然可以將大電路分割成可以處理的小電路﹐但處理這些數目可觀的小電路也累死人﹐所以必須將大電路盡量分割成一樣的小電路﹐如此就可大幅縮簡設計量。
模組化(Modularity)
要使分割成相同的小電路成為可能﹐最好的方式就是賦与這些小電路相似的規格﹐如﹕相似的電路特性﹑相似的驅動能力﹑相近的面積等.如此一來﹐不僅相同度增加﹐電路特性的复雜度也會跟著降低不少。
區域化(Locality)
优异的模組化設計必須能夠讓各模組各自獨立運作﹐也就是說﹐除了互連的介面信號外﹐不受其他模組的內在電路影響﹐如此一來﹐各個小電路才能真正獨立設計﹐大幅降低設計之复雜度。
今日的VLSI設計多半采用Standard Cell的設計方式﹐這是很好的結构化設計典范﹐其能成功動作的理由有三﹕一運用區域化的原則﹐使Cell Library之獨立設計成為可能﹔二運用模組化的原則﹐使設計出來的Cell非常容易使用﹐而且其電路特性也易于掌握﹔三充足且适當分割的Cell﹐可以使大電路分割時之規律性增加﹐從而大幅縮簡實際所需設計之電路﹐也使得電腦輔助設計成為可能。由此觀之﹐結构化設計确是幫
显示全部