freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

微電子技術(shù)的發(fā)展與應用畢業(yè)論文-閱讀頁

2025-07-05 05:30本頁面
  

【正文】 哪些連接性設(shè)計?!偩€接口邏輯應被劃分為單獨的模塊,如總線接口、地址譯碼器?!鴮τ诠δ苣K的設(shè)計采用必要的層次化描述。注:對于一些特定的功能單元,如加法器、乘法器、存儲器,其性能與實現(xiàn)的架構(gòu)有著緊密的關(guān)系。使用Synopsys的綜合工具時調(diào)用DesignWare中的IP進行綜合,能獲得更優(yōu)的結(jié)果,如速度更快或面積更小等(這些IP采用特定的架構(gòu)實現(xiàn),綜合的結(jié)果更好,因此在設(shè)計時,某些功能電路可以用designware中的IP來實現(xiàn),這樣對整個設(shè)計進行綜合時,會綜合出比較滿意的結(jié)果)。手工的方法是指在RTL代碼編寫時將選用的DesignWare單元“隱含”進去,這樣在綜合時就能夠選用指定的DesignWare了。有時RTL級設(shè)計者為了方便把大量信號組合起來形成一個大的邏輯,不僅會造成由于這一級組合邏輯太多而難以滿足時序要求,而且會形成一個很大的多路選擇器(MUX),造成連線過于集中,從而在一小塊面積內(nèi)占用大量的布線資源。另一個常見的布線擁擠的例子是多個偏上RAM/ROM共用一個BIST模塊,由于BIST信號送到每一塊RAM/ROM上,在這個BIST模塊附近常會出現(xiàn)布線阻塞。簡言之,就是設(shè)計時,在電路中植入的提供芯片測試的電路。 可綜合RTL代碼編寫指南 編碼風格(1)在系統(tǒng)設(shè)計階段應該為每個模塊進行命名,最終的頂層模塊應該以芯片的名稱來命名。(2)一個文件只能包含一個模塊,而文件名應該與模塊名相同,這樣做可以方便修改設(shè)計。(4)對于時序單元(建立時序電路時)必須采用非阻塞賦值。輸出信號和下一狀態(tài)都與當前狀態(tài)和當前輸入信號相關(guān),客觀上要求采用并發(fā)的非阻塞賦值語句進行處理。(6)不要在同一個always塊中同時使用阻塞賦值和非阻塞賦值語句。 綜合考慮(1)每個模塊盡可能只使用一個時鐘(2)不在數(shù)據(jù)通路上的觸發(fā)器都需要有復位信號(3)如果電路中同時存在具備復位信號和不具備復位信號的觸發(fā)器,不要將他們放在一個程序塊中(如不要放在always程序塊中)。不要使用casex和casez。(7)盡量避免異步邏輯、帶有反饋環(huán)的組合電路及自同步邏輯。(8)盡量把需要綜合的代碼置于節(jié)點模塊,層次化模塊僅起到連接節(jié)點模塊的作用。(10)在綜合過程中,工具將忽略電路中的延時語句,例如“assign 10 C=Aamp。B”,因為綜合的時候相關(guān)的時序在選用的標準單元庫中都有描述。7 Verilog需要重點記住的語法問題 數(shù)據(jù)類型(1)常量有三種類型:整形(integer)、實型(real)和字符串型(string)。(2)變量有三種類型:線網(wǎng)(net)、寄存器(reg)和存儲器(memory)。如果沒有驅(qū)動源,線網(wǎng)缺省值為z。與線網(wǎng)變量剛相反,reg變量如同觸發(fā)器,只在某種條件下(通常為時鐘信號邊沿)輸入驅(qū)動才傳輸?shù)捷敵?,并保持該值,此時即使輸入變化或者沒有輸入驅(qū)動,輸出仍然保持不變。缺省值為x。reg標量表示觸發(fā)器,reg向量表示寄存器,存儲器是一維寄存器數(shù)組,由寄存器組成。同時,存儲器是數(shù)組,無法整體訪問。在門級,電路網(wǎng)絡用所有邏輯門的互連來表達是很直觀的。(2)數(shù)據(jù)流建模邏輯電路的另一種觀點是試圖將電路的工作看做一系列的邏輯操作,組合電路是由輸入信號到輸出的傳遞,時序電路則由輸入信號以及當前狀態(tài)到輸出以及下一存儲狀態(tài)的傳遞。用assign語句,只要右端表達式上的某一操作數(shù)發(fā)生變化,表達式立即重新計算,并將值傳遞給左邊。主要利用initial和always語句塊來描述。這些延時不僅僅決定了電路工作的性能,如果設(shè)計不周,它們會影響電路工作的正確性。一種是基本門在建立一個0或1的邏輯電平之前,電路中的電荷必須聚集到一定的程度。這個電荷聚集所需的時間稱為慣性延時。因為芯片上的金屬連線并非理想導線,特別是隨著特征工藝線寬不斷縮小時、電路規(guī)模不斷擴大和電路工作頻率不斷加快,金屬連線的電阻、連線間電容、電感等越來越不可忽略,所呈現(xiàn)的傳輸線效應越來越明顯。(2)門級建模延時門級建模設(shè)計中,Verilog語言可以在門實例化語句中規(guī)定慣性延時,即從門的任意輸入到輸出的傳輸延遲。門延時在三類不同的信號轉(zhuǎn)換情形時可以有不同的值,這三種情形是:①信號上升:在門的輸入發(fā)生變化的情況下,門的輸出從0,x,z變化到1所需的時間稱為上升延遲時間。③信號關(guān)斷:在門的輸入發(fā)生變化的情況下,門的輸出從0,1,x變化到高阻態(tài)z所需的時間。門延時的值不是固定的,這與輸入端驅(qū)動能力、輸出端負載狀況都有關(guān)系,因而每種延時又有最小值、典型值、最大值之分,形式為min:typ:max。nand (1:2:3,3:4:5); //定義了兩個延時,上升和下降(3)數(shù)據(jù)流建模延時在數(shù)據(jù)流建模設(shè)計中,延時的定義主要出現(xiàn)在連續(xù)賦值語句中。amp。數(shù)據(jù)流建模中延時也可以定義上升、下降、關(guān)斷三種,并且每種延時值還可設(shè)定最小、典型、最大值。Wire 2 turn。最終延時是兩種延時的累加,left變化后計算表達式,在3時間單位后到達連續(xù)賦值左端,但定義了線網(wǎng)延時,要在經(jīng)過2個時間單位才完成。 //語句間延時:從到達該語句到執(zhí)行該語句的時間間隔,可以看作是在語句執(zhí)行前的“等待時間”,因此在這個延時過程中,語句壓根就還沒開始執(zhí)行。 //語句內(nèi)延時:該語句已經(jīng)開始執(zhí)行了,但把右式的值賦給左式的目標之前延遲一段時間?!诜亲枞x值語句中使用語句內(nèi)延時,可以描述傳輸延時。我們可以將一個語句理解為一個進程,首先是進程的觸發(fā),其次是執(zhí)行進程,如有延時則執(zhí)行進程掛起,等到延時結(jié)束時刻執(zhí)行進程。若在把右側(cè)的值傳遞給左側(cè)之前,右側(cè)的值發(fā)生了變化,則在延時期間右側(cè)表達式發(fā)生的變化會被濾掉,即這期間右側(cè)表達式的變化直接忽略不管。連續(xù)賦值語句可以用來對線網(wǎng)進行賦值,不能用來對寄存器進行賦值。用于對組合邏輯建模,條件賦值語句可以描述門控鎖存器。Initial和always結(jié)構(gòu)只能對寄存器變量進行賦值。這種周期的觸發(fā)可以是電平敏感控制(這種周期是異步周期性行為),也可以是時鐘邊沿控制(一旦觸發(fā)即開始一個新的周期)。其中,基于電平觸發(fā)的always為組合邏輯建模,基于時鐘邊沿觸發(fā)的always為時序邏輯建模。特點是:等號“=”右邊表達式的結(jié)果計算和將計算結(jié)果賦值給左邊變量的操作,是一個統(tǒng)一、連續(xù)的過程,不允許在其中插入其他動作。在阻塞賦值語句中插入延時不能模擬實際電路中的慣性延時或者傳輸延時,因此不適合在阻塞賦值中插入延時。在非阻塞賦值中,對目標的賦值在將來的某個時刻發(fā)生,但一組賦值語句沒有前后順序關(guān)系,他們在同一時刻開始計算右邊表達式,也就不等當前語句執(zhí)行完即開始進行下一條語句的執(zhí)行。非阻塞賦值也可以插入語句間延時和語句內(nèi)延時,在非阻塞賦值中插入語句內(nèi)延時可以很好的描述實際電路行為中的傳輸延時,這也是在過程賦值中唯一推薦使用的延時描述。 任務與函數(shù)在硬件邏輯設(shè)計中會出現(xiàn)這樣的情況,某種共通的功能經(jīng)常在不同的地方重復出現(xiàn),因而有必要將這些通用的功能抽取出來,組成庫的形式,而后在各個需要使用該功能的地方只需要調(diào)用庫中的子程序。任務支持輸入、輸出和雙向的參數(shù)變量,但任務本身沒有類型的含意,所以沒有返回值。任務是一種具有較強行為能力的子程序(描述行為的能力強)。子程序的好處不僅僅體現(xiàn)在以下兩方面:▲避免對共通的程序段的重復書寫▲有利于使整個設(shè)計代碼結(jié)構(gòu)清晰可讀。函數(shù)可以調(diào)用另一個函數(shù),但不能調(diào)用任務,函數(shù)內(nèi)不能包含時延、事件或時序控制的聲明語句。另外,任務和函數(shù)只能具有局部行為描述能力,不能包含完整的always和initial控制結(jié)構(gòu),而只能在模塊的這些結(jié)構(gòu)中調(diào)用(即只能在initial或always中調(diào)用函數(shù)或者任務)。任務調(diào)用是通過任務名后跟參數(shù)列表來進行的,其形式參數(shù)和實參數(shù)在次序上必須相同。如果某任務在模塊的多個地方被并發(fā)調(diào)用,則會對同一存儲區(qū)進行操作,這樣可能會導致出錯。這樣的任務稱為自動任務。為了傳送變量的時序過程,只能采取全局變量的方法。函數(shù)的聲明與任務最大的不同是函數(shù)具有返回值范圍。函數(shù)通過在函數(shù)定義中顯示的給函數(shù)名賦值來實現(xiàn)返回值。函數(shù)中不能包含任何延遲。為了避免自動綜合出鎖存器,要求分支語句必須寫完整所有的分支,此外敏感列表中也應列舉齊所有的變量輸入和判斷條件中的信號。組合電路的case最好有default,因為如果你的case不全,就會產(chǎn)生鎖存器;即使case包含完整,還是建議加上一條default并賦值x。但是加上default就是告訴綜合器,別的分支情況我不關(guān)心,你想賦什么值都可以,綜合器就會根據(jù)前面的賦值情況,綜合出一個面積最小的組合邏輯出來or使綜合工具進行更有效的邏輯化簡。組合電路的Verilog描述可以使用門級結(jié)構(gòu)建模的方式,基于連續(xù)賦值的數(shù)據(jù)流方式,也可以用異步周期性行為描述,以及以上幾種描述方式的組合。對于鎖存器類型的時序邏輯設(shè)計,可用帶反饋的條件操作符的連續(xù)賦值語句實現(xiàn),例如,SRAM存儲器單元可建模成:Assign dataout=(CS_b==0)?(WE_b==0)?datain:dataout:1’bz。帶觸發(fā)器的時序邏輯僅由邊沿觸發(fā)的行為綜合而來。邊沿敏感always語句的事件列表中,時鐘不是由信號的名稱確定的。復位信號時最常見的控制信號。異步復位是指該時序電路當復位信號到來后即可進入復位處理。對于同步復位時序電路,復位信號并不出現(xiàn)在事件列表中,復位行為只在時鐘邊沿時發(fā)生。復位信號的處理十分重要,為了保證系統(tǒng)在上電后或者出現(xiàn)意外故障后可以回到一個固定的初始狀態(tài),一般設(shè)計中都會有一個全局復位信號。如果引入的毛刺寬度有可能超過一個時鐘周期的話,還需要增加一個簡易的延時濾波電路。由圖可知,當輸入復位信號大于四個時鐘周期時可產(chǎn)生有效復位信號。圖中所示為兩種轉(zhuǎn)換內(nèi)部復位信號的方法。組合電路輸出出現(xiàn)毛刺這種錯誤現(xiàn)象稱為組合電路的冒險。靜態(tài)冒險,是指在輸入變化的前、后,穩(wěn)態(tài)輸出不應該變化,但在變化的過程中,輸出產(chǎn)生了毛刺,即輸出為1→0→1或0→1→0,。動態(tài)冒險,是指在輸入變化的前、后,穩(wěn)態(tài)輸出應該變化,即輸出應該1→0或0→,輸出出現(xiàn)短暫的反復現(xiàn)象,即輸出為1→0→1→0或0→1→0→1。①功能冒險:在組合邏輯中,若有多個輸入變量發(fā)生變化,且變化前、后的穩(wěn)態(tài)輸出相同,在輸入變化的過程中(由于多個變量的變化有先后之別,因為可能經(jīng)歷不同途徑而產(chǎn)生冒險),輸出出現(xiàn)瞬時的錯誤,這種冒險稱為靜態(tài)功能冒險。功能冒險是由電路的邏輯功能決定的,因此不能用修改邏輯設(shè)計的方法來消除。②邏輯冒險:在組合電路中,若僅有一個輸入變量發(fā)生變化,變化前、后的穩(wěn)態(tài)輸出相同,或雖有P(>1)個輸入變量發(fā)生變化,但對應2P個取值組合的輸出值全為1或全為0,即電路已排除功能冒險。邏輯冒險是在輸入變量發(fā)生變化時,排除了功能冒險之后,由于門的延遲不同,可能產(chǎn)生的冒險現(xiàn)象。這樣,本來化簡時去掉的多余項,但為了消除冒險,卻又成了必需的了。Xilinx和Altera的FPGA的區(qū)別 (1)FPGA的分類按照器件工藝結(jié)構(gòu)的不同,F(xiàn)PGA可分為反熔絲型、SRAM型和Flash型。Actel公司的FPGA多屬于此類。)大多數(shù)的FPGA產(chǎn)品屬于SRAM型FPGA,它基于SRAM工藝,可重復編程,應用更為靈活,不過需要外加Flash或EPROM以保存編程信息,Altera、Xilinx等主流FPGA廠商的產(chǎn)品多屬于此類。(2)FPGA廠商概況目前的FPGA市場份額,主要集中在Actel、Altera、Lattice和Xilinx等幾家廠商。Altera公司是目前全球第二大PLD廠商,目前其產(chǎn)品真不要分為高端的Stratix系列以及低端的Cyclone系列。Xilinx公司是FPGA的創(chuàng)始者,也是目前FPGA市場的領(lǐng)導者,占據(jù)超過一半的市場份額,其高端的Virtex系列產(chǎn)品和低端的Spartan系列產(chǎn)品在各領(lǐng)域得到廣泛應用。整體結(jié)構(gòu)如圖所示:1)可編程(可配置)邏輯模塊(CLB)CLB(configurable logic block)是FPGA器件內(nèi)部最為主要的邏輯資源,大部分的邏輯功能都是在CLB上實現(xiàn)的,CLB在FPGA內(nèi)部成矩陣排列,每個CLB包括4個基本邏輯塊(SLICE),如圖所示:SLICE是FPGA內(nèi)部的基本邏輯單元,每個FPGA內(nèi)部的各SLICE之間通過快速進位鏈串接起來,同時CLB之間通過開關(guān)矩陣及互聯(lián)線連接起來,每個SLICE內(nèi)部的基本結(jié)構(gòu)如圖。FPGA的這樣一個基本結(jié)構(gòu)也正符合大多數(shù)邏輯設(shè)計中信號通路上組合邏輯與時序邏輯交替的特點。SLICE內(nèi)部的MUX可以用于快速級聯(lián)相鄰的LUT或是相鄰的SLICE,以實現(xiàn)輸入信號更多、更復雜的組合邏輯。寄存器是SLICE內(nèi)部另一個重要的邏輯資源,也是實現(xiàn)時序邏輯的重要組成部分。因此我們用寄存器資源來概括。由于在FPGA中快速進位鏈的走線是經(jīng)過特殊設(shè)計,可以保證最小延時,所以在FPGA設(shè)計的時候應該考慮如何應用這一進位鏈邏輯而不是走普通布線資源以實現(xiàn)最優(yōu)性能。由CLB生成分布式RAM,消耗邏輯資源。當block RAM不夠用時可以用邏輯資源生成分布式RAM問:分布式RAM是如何產(chǎn)生的這里以Virtex4為例說明:一個CLB由4個Slice組成,這4個Slice又分SliceM和SliceL,其中M是Memory的首字母,L是Logic的首字母,比較SliceM和SliceL,他們的區(qū)別就是SliceM的查找表具有RAM和ROM的功能,而SliceL的則不具備。這樣就很清楚了:SliceM可實現(xiàn)Distribut RAM,而Distribut RAM是由SliceM中的LUT實現(xiàn)。其實SRL16就是一個基于查找表結(jié)構(gòu)的移位寄存器。比較SliceM和SliceL,他們的區(qū)別就是SliceM的查找表具有RAM和ROM的功能,而SliceL的則不具備。“SliceM實現(xiàn)Distribut RAM時還能使用SliceM實現(xiàn)SRL16么?”因為SRL16用的就是LUT,所以,如果這個LUT作為Distribute RAM使用了,則就不能再作為SRL16使用了。一個CLB包含4個SLICE,其中左邊兩個
點擊復制文檔內(nèi)容
數(shù)學相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1