2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩19頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、<p><b>  課程設(shè)計(jì)報(bào)告</b></p><p><b>  集成電路課程設(shè)計(jì)</b></p><p>  年 級(jí): 2010級(jí) </p><p>  姓 名: </p><

2、p>  專 業(yè): 電子科學(xué)與技術(shù)(微電子技術(shù)方向) </p><p>  指導(dǎo)老師: </p><p><b>  二零一三年七月</b></p><p><b>  摘 要</b></p><p>  二十一世紀(jì)是信息時(shí)代

3、,計(jì)算機(jī)已經(jīng)應(yīng)用到人類生活的各個(gè)方面,運(yùn)算器作為計(jì)算機(jī)中一個(gè)非常重要的基礎(chǔ)器件,有著不可替代的重要作用。其中乘法器作為運(yùn)算器的一個(gè)重要組成部分,在實(shí)際應(yīng)用過程中有著不可替代的作用。</p><p>  采用串行的1位乘法方案,即多次執(zhí)行“加法—移位”操作來實(shí)現(xiàn)。這種方法并不需要很多器件。然而串行方法畢竟太慢,自從大規(guī)模集成電路問世以來,出現(xiàn)了各種形式的流水式陣列乘法器,它們屬于并行乘法器。所以本文主要探究陣列乘法

4、器。陣列乘法器是通過與門、半加器和全加器構(gòu)成的陣列來實(shí)現(xiàn)。比起傳統(tǒng)的移位乘法器來說,它的輸出延遲低,功耗小具有很好的實(shí)用價(jià)值。</p><p>  在m位乘n位不帶符號(hào)整數(shù)的陣列乘法中,“加法—移位”操作的被加數(shù)矩陣。每一個(gè)部分乘積項(xiàng)(位積)aibj叫做一個(gè)被加數(shù)。這m×n個(gè)被加數(shù){aibj|0≤i≤m-1和0≤j≤n-1}可以用m×n個(gè)“與”門并行地產(chǎn)生。顯然,設(shè)計(jì)高速并行乘法器的基本問題,

5、就在于縮短被加數(shù)矩陣中每列所包含的1的加法時(shí)間。</p><p>  本文采用cadence全定制流程和ASIC流程深入探究了4位陣列乘法器的相關(guān)性質(zhì)。包括陣列乘法器的原理圖以及版圖。同時(shí)對(duì)原理圖和版圖仿真,進(jìn)一步確定陣列乘法器的功能、面積、功耗、延時(shí)等問題。</p><p>  關(guān)鍵詞: 陣列乘法器 cadence ASIC 半加器 全加器</p><p&

6、gt;  第一章 ASIC設(shè)計(jì)流程</p><p>  1.1 DV生成網(wǎng)表</p><p>  編寫4位陣列乘法器的Verilog代碼,導(dǎo)入DV軟件中,生成網(wǎng)表文件。</p><p>  4位陣列乘法器的Verilog代碼如下:</p><p>  module cc_MulX4 (Z,X,Y);</p><p>

7、  output[7:0] Z;</p><p>  input [3:0] X;</p><p>  input [3:0] Y;</p><p>  and(Z[0],X[0],Y[0]);</p><p>  wire W1,W2,W3;</p><p>  and(W1,X[1],Y[0]);</p>

8、;<p>  and(W2,X[2],Y[0]);</p><p>  and(W3,X[3],Y[0]);</p><p>  wire A0,A1,A2,A3;</p><p>  and(A0,X[0],Y[1]);</p><p>  and(A1,X[1],Y[1]);</p><p>  an

9、d(A2,X[2],Y[1]);</p><p>  and(A3,X[3],Y[1]); </p><p>  wire C0,C1,C2,C3,W4,W5,W6;</p><p>  halfadder ha1(W1,A0, Z[1],C0); </p><p>  fulladder fa1(W4,C1,W2,A1,C0);</

10、p><p>  fulladder fa2(W5,C2,W3,A2,C1);</p><p>  halfadder ha2(C2,A3,W6,C3); </p><p>  wire A4,A5,A6,A7;</p><p>  and(A4,X[0],Y[2]);</p><p>  and(A5,X[1],Y[2])

11、;</p><p>  and(A6,X[2],Y[2]);</p><p>  and(A7,X[3],Y[2]); </p><p>  wire C4,C5,C6,C7,W7,W8,W9;</p><p>  halfadder ha3(W4,A4, Z[2],C4); </p><p>  fulladder

12、 fa3(W7,C5,W5,A5,C4);</p><p>  fulladder fa4(W8,C6,W6,A6,C5);</p><p>  fulladder fa5(W9,C7,C3,A7,C6);</p><p>  wire A8,A9,A10,A11;</p><p>  and(A8,X[0],Y[3]);</p>

13、<p>  and(A9,X[1],Y[3]);</p><p>  and(A10,X[2],Y[3]);</p><p>  and(A11,X[3],Y[3]);</p><p>  wire C8,C9,C10;</p><p>  halfadder ha4(W7,A8, Z[3],C8); </p>

14、<p>  fulladder fa6(Z[4],C9,W8,A9,C8);</p><p>  fulladder fa7(Z[5],C10,W9,A10,C9);</p><p>  fulladder fa8(Z[6],Z[7],C7,A11,C10);</p><p><b>  endmodule</b></p>

15、<p>  module halfadder(a,b,sum,cout);</p><p>  input a,b;</p><p>  output sum,cout;</p><p>  and(cout,a,b);</p><p>  xor(sum,a,b);</p><p><b> 

16、 endmodule</b></p><p>  module fulladder(sum,cout,x,y,cin);</p><p>  output sum,cout;</p><p>  input x,y,cin;</p><p>  wire a,b,c;</p><p>  xor(a,x,y

17、);</p><p>  xor(sum,a,cin);</p><p>  and(b,x,y);</p><p>  and(c,a,cin);</p><p>  or(cout,c,b);</p><p>  endmodule </p><p>  DV生成的原理圖如下:</p&

18、gt;<p>  然后利用語句write -hier -format verilog output Multiplier_nl.V將生成的網(wǎng)表文件保存起來備用。</p><p>  1.2 Silicon Ensemble進(jìn)行自動(dòng)布局布線 </p><p>  將DV中生成的網(wǎng)表文件導(dǎo)入Silicon Ensemble中,按照ASIC流程一步步將網(wǎng)表最終生成.def文件。&

19、lt;/p><p>  由于軟件的限制,中途出錯(cuò)不能修改只能重做。所以每一步都必須認(rèn)認(rèn)真真仔仔細(xì)細(xì)按照流程做。</p><p>  問題與解決方法:在導(dǎo)入網(wǎng)表文件是報(bào)錯(cuò),不能進(jìn)行一下步制作。這時(shí)應(yīng)該仔細(xì)查看軟件所報(bào)錯(cuò)誤,如果是底層元件問題,則需要換服務(wù)器。</p><p>  1.3 cadence下生成版圖</p><p>  將.def文件

20、導(dǎo)入cadence中,生成版圖并進(jìn)行DRC驗(yàn)證。</p><p>  問題與解決方案:在導(dǎo)入,def文件后,往往會(huì)出現(xiàn)不能自動(dòng)生成版圖的情況。這時(shí)候應(yīng)該仔細(xì)檢查是否有添加原件庫。如果有庫還是出錯(cuò),那應(yīng)該打開每個(gè)庫再次檢查,因?yàn)橛行旒词固砑恿擞锌赡芤彩强盏?,所以?dǎo)致不能自動(dòng)生成版圖。</p><p>  1.4 cadence下畫原理圖</p><p>  這個(gè)原

21、理圖必須按照DV生成的原理圖畫,并且一定要到門級(jí)電路的程度,否則將導(dǎo)致原理圖與版圖不能匹配。而且由于每個(gè)使用的verilog代碼有所不同,因此生成的原理圖不同,從而生成的版圖不同。更有甚者即使是同一個(gè)verilog代碼,由于使用的庫不同,生成的原理圖也會(huì)不同,所以必須認(rèn)真檢查核對(duì)自己DV原理圖后才能畫原理圖。</p><p>  以上是我生成的原理圖。這個(gè)原理圖中的全加器我已經(jīng)安裝門級(jí)電路搭好生成了symbo,并

22、且這個(gè)全加器的門級(jí)電路需要按照DV中所給的全加器的門級(jí)電路搭建。溫馨提示:有些verilog生成的全加器就是庫文件中的全加器不需要自搭,因此再次重申,這個(gè)原理必須嚴(yán)格按照DV中生成的原理圖畫,不能按自己所想任意而為。</p><p>  問題與解決方法:只要嚴(yán)格按照DV中所給的原理圖畫,基本上不會(huì)有問題。但是會(huì)出現(xiàn)這種情況,DV中顯示的是頂層電路,沒有顯示門級(jí)電路,照著這個(gè)頂層電路畫,就會(huì)出錯(cuò)。因此必須看到門級(jí)電

23、路后才能開始動(dòng)手畫原理圖,否則就是浪費(fèi)時(shí)間,必然會(huì)返工的。</p><p>  原理圖完成后就是版圖和原理圖的匹配驗(yàn)證了,</p><p>  從上圖容易看出,我的版圖與原理圖是mathc的!</p><p>  問題與解決方法:版圖與原理匹配是一個(gè)非常漫長的過程,往往一開始會(huì)有上百個(gè)錯(cuò),但是不用灰心。經(jīng)驗(yàn)告訴我們自動(dòng)生成的版圖存在VDD與GND沒加通孔的問題,因此

24、首先需要將通孔加上,這樣錯(cuò)誤會(huì)減少不少。</p><p>  接下來就是查看LVS后OUTPUT所給的又那些錯(cuò)了。一般來說會(huì)是輸入輸出引腳不匹配的問題,這個(gè)問題比較好辦??梢詫鎴D中的Display選項(xiàng)中的stat和stop的參數(shù)值調(diào)成0,0。這樣版圖上就會(huì)顯示出每個(gè)元件的名字,這樣就可以通過版圖上所給的名字去核對(duì)每個(gè)引腳的是否對(duì)應(yīng)的接在了正確的元件上。</p><p>  如果這樣做之后

25、還有錯(cuò),那可以通過error display這個(gè)選項(xiàng),查看錯(cuò)誤的具體位置在哪。當(dāng)然,點(diǎn)first之前最好將錯(cuò)位的標(biāo)記顏色改了,因?yàn)槟J(rèn)的為黑色,在版圖上完全看不清楚。白色是個(gè)不錯(cuò)的選擇,比較明顯。但是這個(gè)功能并不是特別完善,軟件所給出的錯(cuò)誤往往多于實(shí)際錯(cuò)誤,所以不要陷在那些小錯(cuò)誤中,要去找那些大錯(cuò)位。并且始終記住一點(diǎn),自動(dòng)生成的版圖,除了少了幾個(gè)通孔外,沒有其他錯(cuò)誤不要修改。只改原理圖是最好的選擇。</p><p&g

26、t;<b>  定制設(shè)計(jì)流程</b></p><p><b>  2.1電路原理</b></p><p>  不帶符號(hào)的陣列乘法器</p><p>  設(shè)有兩個(gè)不帶符號(hào)的二進(jìn)制整數(shù):</p><p>  A=am-1…a1a0</p><p>  B=bn-1…b1b0<

27、;/p><p>  它們的數(shù)值分別為a和b,即</p><p>  在二進(jìn)制乘法中,被乘數(shù)A與乘數(shù)B相乘,產(chǎn)生m+n位乘積P:</p><p>  P=pm+n-1…p1p0</p><p><b>  乘積P 的數(shù)值為:</b></p><p>  上述過程說明了在m位乘n位不帶符號(hào)整數(shù)的陣列乘法中

28、,“加法—移位”操作的被加數(shù)矩陣。每一個(gè)部分乘積項(xiàng)(位積)aibj叫做一個(gè)被加數(shù)。這m×n個(gè)被加數(shù){aibj|0≤i≤m-1和0≤j≤n-1}可以用m×n個(gè)“與”門并行地產(chǎn)生(如右下圖所示)。顯然,設(shè)計(jì)高速并行乘法器的基本問題,就在于縮短被加數(shù)矩陣中每列所包含的1的加法時(shí)間。</p><p>  這種乘法器要實(shí)現(xiàn)n位×n位時(shí),需要n(n-1)個(gè)全加器和n2個(gè)“與”門。該乘法器的總的乘

29、法時(shí)間可以估算如下:</p><p>  令Ta為“與門”的傳輸延遲時(shí)間,Tf為全加器(FA)的進(jìn)位傳輸延遲時(shí)間,假定用2級(jí)“與非”邏輯來實(shí)現(xiàn)FA的進(jìn)位鏈功能,那么我們就有:</p><p>  Ta = Tf = 2T</p><p>  從演示中可知,最壞情況下延遲途徑,即是沿著矩陣最右邊的對(duì)角線和最下面的一行。因而得n位×n位不帶符號(hào)的陣列乘法器總的

30、乘法時(shí)間為:</p><p>  tm=Ta+ (n-2)6T+5T+(n-1)]×Tf</p><p>  =2T+6nT-12T+5T+(n-1)×2T=(4n-2)×2T </p><p>  4×4位陣列乘法器的邏輯電路:</p><p>  問題與解決方法:這個(gè)原理圖所有的器件都在元件庫中能夠

31、找到,只需按照陣列乘法器的排布規(guī)則連接即可。但是注意,有個(gè)元件庫中的原件在最底層的mos管是沒有具體參數(shù)的。這樣的元件是不可用的,這種情況在check的時(shí)候不會(huì)報(bào)錯(cuò),但是不能仿真。所以添加元件的時(shí)候要注意這個(gè)問題。</p><p><b>  2.2 電路仿真</b></p><p>  本電路采用NClaunch仿真,具體的verilog代碼在第一章的ASIC流程中

32、已經(jīng)給出,在這不做贅述。仿真向量的代碼如下:</p><p>  module testbed();</p><p>  wire[7:0] Z;</p><p>  reg[3:0] Y;</p><p>  reg[3:0] X;</p><p>  cc_MulX4 m1(Z,X,Y);</p>&

33、lt;p><b>  initial</b></p><p><b>  begin</b></p><p>  X = 4'b0000; Y = 4'b0000;#25 </p><p>  X = 4'b0001; Y = 4'b0001;#25</p><p&

34、gt;  X = 4'b0011; Y = 4'b0011;#25 </p><p>  X = 4'b0111; Y = 4'b0111;#25</p><p>  X = 4'b1111; Y = 4'b1111;#25</p><p>  X = 4'b1000; Y = 4'b1000;#25&

35、lt;/p><p>  X = 4'b1100; Y = 4'b1100;#25</p><p>  X = 4'b1110; Y = 4'b1110;#25</p><p>  X = 4'b0110; Y = 4'b0110;#25</p><p>  X = 4'b1001; Y =

36、4'b1001;#25;</p><p><b>  end</b></p><p><b>  initial</b></p><p>  #250 $finish;</p><p><b>  Endmodule</b></p><p>  

37、由于4×4的輸入數(shù)據(jù)是在太多,這里只仿真了十組數(shù)據(jù)。但是基本上能夠代表電路的正確性了。</p><p><b>  仿真結(jié)果如下:</b></p><p>  問題與解決方法:這里的verilog代碼應(yīng)該嚴(yán)格按照自己所化的原理圖,按照門級(jí)格式來寫,如果直接寫A*B那么實(shí)際上仿真的電路并不是所畫的原理圖,不其任何作用。</p><p>

38、  如果代碼報(bào)錯(cuò),直接按照?qǐng)?bào)錯(cuò)問題的位置去查找修改就行了。值得注意的是,錯(cuò)誤的語句在紅色的字上面而不是下面,以免會(huì)漏改錯(cuò)誤。</p><p><b>  2.3 版圖設(shè)計(jì)</b></p><p>  版圖設(shè)計(jì)完全是按照原理圖來。因?yàn)樵韴D中的所使用的所有元件都已經(jīng)有了自己的版圖,所以可以先將所有用到的元件版圖拷貝到自己的版圖中,然后進(jìn)行連線即可。</p>

39、<p>  值得注意的是排版問題,因?yàn)椴煌呐虐鎸?huì)導(dǎo)致連線的難易程度有很大的差距。建議按照自動(dòng)布線的排版方式,這樣可以節(jié)省較多空間并且減少許多空間浪費(fèi)。并且可以降低不少難度。</p><p>  原本打算是做8×8的陣列乘法器的,就是卡在版圖這里。8×8的陣列乘法器的版圖是在是非常復(fù)雜,整整是4×4的4倍,而且連線變得非常難繞。最終放棄做而選擇做4×4的?,F(xiàn)在

40、想起來,我之所以不能布出8×8的版圖,就是因?yàn)槲覈?yán)格按照原理的元件布局來畫版圖,活生生將布線的難度提高了。如果在畫版圖之前能夠認(rèn)真思考一下,應(yīng)該就能有更好的收獲。</p><p>  下圖為4×4陣列乘法器的版圖:</p><p>  這是個(gè)非常差強(qiáng)人意的版圖,浪費(fèi)太多空間且布線特別復(fù)雜。但是DRC驗(yàn)證沒有問題,也算是值得欣慰了。</p><p>

41、;  接下來的LVS驗(yàn)證也通過。</p><p>  問題與解決方法:版圖DRC驗(yàn)證是可能出現(xiàn)報(bào)出錯(cuò)誤而在版圖上找不到的情況,畢竟版圖這么大出現(xiàn)的錯(cuò)誤可能只是很小的地方,此時(shí)可以用軟件自帶的find功能,就會(huì)找到所在位置;</p><p>  版圖與原理圖的LVS驗(yàn)證,一般問題很多。但是只要通過觀察OUTPUT所給的錯(cuò)誤地方和ERROR DISPLAY顯示每個(gè)錯(cuò)誤所在的具體位置,一般來說

42、都能改正過來。具體方法如下圖所示:</p><p>  2.4 陣列乘法器測(cè)試</p><p>  先將原理圖都生成一個(gè)symbol,然后新建一個(gè)原理圖。將這個(gè)symbol搭建成一個(gè)新的原理圖。</p><p>  為了保證能夠測(cè)試陣列乘法器的延時(shí)等問題,最好將乘法器的一個(gè)輸入調(diào)成方波,這樣有0,1變換不僅能夠得到更多的數(shù)據(jù),保證乘法器邏輯的正確性,更能夠通過測(cè)試輸

43、出延時(shí),確定陣列乘法器的延時(shí)。</p><p>  原理圖check沒錯(cuò)后就可以建立一個(gè)config文件,將其中一個(gè)乘法器標(biāo)記為版圖,這樣才能進(jìn)行版圖和原理圖的同時(shí)仿真,否則都是原理圖的仿真。</p><p>  具體的config文件的設(shè)置如下圖所示:</p><p>  設(shè)置完成后,就進(jìn)行仿真。最后得到的邏輯結(jié)果為:</p><p>  

44、上圖左邊為原理圖輸出,右邊為版圖輸出。</p><p><b>  延遲測(cè)試結(jié)果:</b></p><p><b>  原理圖延遲</b></p><p><b>  版圖延遲</b></p><p>  有上圖可知,版圖的延遲比原理圖延遲更大。這很可能的原因就是我的版圖畫得太

45、差,導(dǎo)致延遲更高!】</p><p><b>  功耗測(cè)試:</b></p><p>  問題與解決方法:容易出現(xiàn)邏輯結(jié)果不對(duì)的情況,這個(gè)時(shí)候首先應(yīng)該檢查底層原理圖是否有錯(cuò)。如果沒錯(cuò),則有可能是輸入的方波周期太小了,因?yàn)殛嚵谐朔ㄆ麟m然延遲相對(duì)較較小,但是還是有一定延遲的。輸入的方波周期太小,這樣乘法器的輸出就會(huì)出現(xiàn)混疊的情況,導(dǎo)致邏輯結(jié)果不對(duì)。建議將方波周期調(diào)到10n

46、s以上。</p><p><b>  結(jié)論</b></p><p>  通過cadence全定制流程和AISC流程制作出來的乘法器,在存在一定程度上的差異性。</p><p>  首先是原理圖;即使是用描述原理圖流程的門級(jí)電路的verilog代碼,DV生成的原理圖也與自己畫的原理圖存在差異。ASIC流程更加細(xì)致一些,因?yàn)樗话銜?huì)使用更加底層的門

47、級(jí)電路來生成原理圖,當(dāng)然這并不能說明它的原理圖就比自己畫的好,因?yàn)閷?shí)際上來說不同門級(jí)電路做出來的電路的好壞并不能輕易判定。</p><p>  接下來就是版圖;不可否認(rèn)ASIC流程說話的版圖比自己畫的版圖要好。這主要原因?yàn)樽约旱慕?jīng)驗(yàn)不足,所以畫出的版圖延遲高,而且浪費(fèi)較多空間。所以版圖的繪制,最好參照ASIC版圖畫。</p><p>  最后時(shí)間;ASIC流程用時(shí)較短,不出意外情況兩天可以

48、輕松完成了。而全定制比較麻煩,因?yàn)樗袞|西都是自己一步步畫出來的。但是正因?yàn)槿绱?,全定制能夠更好的體現(xiàn)設(shè)計(jì)者想要的東西,而ASIC更多的是利用庫文件,很多時(shí)候不能達(dá)到預(yù)期效果。</p><p>  通過這十多天的課程設(shè)計(jì)實(shí)習(xí),讓我對(duì)ASIC流程和cadence流程有了更深的體會(huì)。同時(shí)將集成電路設(shè)計(jì)的理論知識(shí)用于實(shí)踐,讓我對(duì)以前學(xué)過的知識(shí)又有了更深的體悟。</p><p>  在畫原理圖前的

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論