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

正文內(nèi)容

i2c總線控制器的pfga畢業(yè)設(shè)計(jì)-資料下載頁(yè)

2024-12-01 21:54本頁(yè)面

【導(dǎo)讀】通過(guò)分析I2C控制器,實(shí)現(xiàn)I2C總線控制器的FPGA設(shè)計(jì)。的模塊進(jìn)行仿真。使用方法包括Modelsim、Synplify等;~編寫VHDL硬件代碼、仿真,綜合;~.20書(shū)寫畢業(yè)設(shè)計(jì)論文、整理,準(zhǔn)備PPT,答辯。計(jì)算機(jī)一臺(tái),相關(guān)EDA軟件。括裁決和高低速設(shè)備同步等功能的高性能串行總線。有獨(dú)立的電氣特性,可實(shí)現(xiàn)電路的模塊化、標(biāo)準(zhǔn)化而被廣泛應(yīng)用。CPLD目標(biāo)器件中,即可實(shí)現(xiàn)I2C總線控制器功能。本課題需重點(diǎn)研究的關(guān)鍵問(wèn)題是FPGA的設(shè)計(jì),其中需要學(xué)習(xí)EDA設(shè)計(jì)的相關(guān)知識(shí),Verilog語(yǔ)言及I2C協(xié)議。處理器之間的數(shù)據(jù)通信,仿真結(jié)果表明其能滿足I2C總線的特性及傳輸規(guī)范要求。理論上分析本方案是可行的。完成本課題首先要認(rèn)真學(xué)習(xí)Verilog語(yǔ)言,能利用其進(jìn)行模塊設(shè)計(jì)及系統(tǒng)聯(lián)調(diào);計(jì)中應(yīng)注意的有關(guān)細(xì)節(jié)。式開(kāi)始的第1周周五之前獨(dú)立撰寫完成,并交指導(dǎo)教師審閱。

  

【正文】 是在晶體管開(kāi)關(guān)的描述方面比 VHDL 有強(qiáng)得多得功能,所以即使是 VHDL 的設(shè)計(jì)環(huán)境,在底層實(shí)質(zhì)上也是由 Verilog HDL 描述的器件庫(kù)所支持的。另外目前 Verilog HDLA 標(biāo)準(zhǔn)還支持模擬電路的描述, 1998 年即將通過(guò)的 Verilog HDL 新標(biāo)準(zhǔn),將把 Verilog HDLA 并入 Verilog HDL 新標(biāo)準(zhǔn),使其不僅支持?jǐn)?shù)字邏輯電路的描述還支持模擬電路的描述,因此在混合信號(hào)的電路系統(tǒng)的設(shè)計(jì)中,它必將會(huì)有更廣泛的應(yīng)用。在亞微米和深亞微米 ASIC 和高 密度FPGA 已成為電子設(shè)計(jì)主流的今天, Verilog HDL 的發(fā)展前景是非常遠(yuǎn)大的。作者本人的意見(jiàn)是:若要推廣采用硬件描述語(yǔ)言的設(shè)計(jì)方法,則應(yīng)首先從推廣Verilog HDL 開(kāi)始 , 然后再推廣 VHDL。 Verilog HDL 較為適合系統(tǒng)級(jí) (System)、算法級(jí) (Alogrithem)、寄存器傳輸級(jí)(RTL)、邏輯級(jí) (Logic)、門級(jí) (Gate)、電路開(kāi)關(guān)級(jí) (Switch)設(shè)計(jì),而對(duì)于特大型(幾百萬(wàn)門級(jí)以上)的系統(tǒng)級(jí) (System)設(shè)計(jì) , 則 VHDL 更為適合,由于這兩種 HDL語(yǔ)言還在不斷地發(fā)展過(guò)程中,它們 都會(huì)逐步地完善自己。 采用 Verilog HDL 設(shè)計(jì)復(fù)雜數(shù)字電路的優(yōu)點(diǎn) 傳統(tǒng)設(shè)計(jì)方法 電路原理圖輸入法 幾十年前,當(dāng)時(shí)所做的復(fù)雜數(shù)字邏輯電路及系統(tǒng)的設(shè)計(jì)規(guī)模比較小也比較簡(jiǎn)單,其中所用到的 FPGA 或 ASIC 設(shè)計(jì)工作往往只能采用廠家提供的專用電路圖輸入工具來(lái)進(jìn)行。為了滿足設(shè)計(jì)性能指標(biāo),工程師往往需要花好幾天或更長(zhǎng)的時(shí)間進(jìn)行艱苦的手工布線。工程師還得非常熟悉所選器件的內(nèi)部結(jié)構(gòu)和外部引線特點(diǎn),才能達(dá)到設(shè)計(jì)要求。這種低水平的設(shè)計(jì)方法大大延長(zhǎng)了設(shè)計(jì)周期。近年來(lái),F(xiàn)PGA 和 ASIC 的設(shè)計(jì)在規(guī)模和復(fù)雜度方面不斷取得進(jìn)展,而對(duì)邏輯電路及系統(tǒng)的設(shè)計(jì)的時(shí)間要求卻越來(lái)越短。這些因素促使設(shè)計(jì)人員采用高水準(zhǔn)的設(shè)計(jì)工具,如:硬件描述語(yǔ)言 (Verilog HDL 或 VHDL)來(lái)進(jìn)行設(shè)計(jì)。 第三章 Verilog 語(yǔ)言基礎(chǔ) 17 Verilog HDL 設(shè)計(jì)法與傳統(tǒng)的電路原理圖輸入法的比較 如 所述采用電路原理圖輸入法進(jìn)行設(shè)計(jì),具有設(shè)計(jì)的周期長(zhǎng),需要專門的設(shè)計(jì)工具,需手工布線等缺陷。而采用 Verilog HDL 輸入法時(shí),由于 Verilog HDL 的標(biāo)準(zhǔn)化,可以很容易地把完成的設(shè)計(jì)移植到不同的廠家的不同的芯片中去 ,并在不同規(guī)模應(yīng)用時(shí)可以較容易地作修改。這不僅是因?yàn)橛?Verilog HDL 所完成的設(shè)計(jì),它的信號(hào)位數(shù)是很容易改變的,可以很容易地對(duì)它進(jìn)行修改,來(lái)適應(yīng)不同規(guī)模的應(yīng)用,在仿真驗(yàn)證時(shí),仿真測(cè)試矢量還可以用同一種描述語(yǔ)言來(lái)完成,而且還因?yàn)椴捎?Verilog HDL 綜合器生成的數(shù)字邏輯是一種標(biāo)準(zhǔn)的電子設(shè)計(jì)互換格式( EDIF)文件,獨(dú)立于所采用的實(shí)現(xiàn)工藝。 有關(guān)工藝參數(shù)的描述可以通過(guò) Verilog HDL 提供的屬性包括進(jìn)去,然后利用不同廠家的布局布線工具,在不同工藝的芯片上實(shí)現(xiàn)。 采用 Verilog HDL 輸入法 最大的優(yōu)點(diǎn)是其與工藝無(wú)關(guān)性。這使得工程師在功能設(shè)計(jì)、邏輯驗(yàn)證階段,可以不必過(guò)多考慮門級(jí)及工藝實(shí)現(xiàn)的具體細(xì)節(jié),只需要利用系統(tǒng)設(shè)計(jì)時(shí)對(duì)芯片的要求,施加不同的約束條件,即可設(shè)計(jì)出實(shí)際電路。實(shí)際上這是利用了計(jì)算機(jī)的巨大能力在 EDA 工具的幫助下,把邏輯驗(yàn)證與具體工藝庫(kù)匹配、布線及時(shí)延計(jì)算分成不同的階段來(lái)實(shí)現(xiàn)從而減輕了人們的繁瑣勞動(dòng)。 Verilog HDL 的標(biāo)準(zhǔn)化 Verilog HDL 是在 1983 年由 GATEWAY 公司首先開(kāi)發(fā)成功的,經(jīng)過(guò)諸多改進(jìn),于 1995 年 11 月正式被批準(zhǔn)為 IEEE 標(biāo)準(zhǔn) 1364。 Verilog HDL 的標(biāo)準(zhǔn)化大大加快了 Verilog HDL 的推廣和發(fā)展。由于 Verilog HDL 設(shè)計(jì)方法的與工藝無(wú)關(guān)性,因而大大提高了 Verilog HDL 模型的可重用性。我們把功能經(jīng)過(guò)驗(yàn)證的、可綜合的、實(shí)現(xiàn)后電路結(jié)構(gòu)總門數(shù)在 5000 門以上的Verilog HDL 模型稱之為 “軟核 ”(Soft Core)。而把由軟核構(gòu)成的器件稱為虛擬器件 , 在新電路的研制過(guò)程中,軟核和虛擬器件可以很容易地借助 EDA 綜合工具與其它外部邏輯結(jié)合為一體。這樣,軟核和虛擬器件的重用性就可大大縮短設(shè)計(jì)周期,加快了復(fù)雜電路的 設(shè)計(jì)。目前國(guó)際上有一個(gè)叫作虛擬接口聯(lián)盟的組織( Virtual Socket Interface Alliance)來(lái)協(xié)調(diào)這方面的工作。 采用硬件描述語(yǔ)言 (Verilog HDL)的設(shè)計(jì)流程簡(jiǎn)介 自頂向下 (TopDown)設(shè)計(jì)的基本概念 現(xiàn)代集成電路制造工藝技術(shù)的改進(jìn),使得在一個(gè)芯片上集成數(shù)十乃至數(shù)百萬(wàn)個(gè)器件成為可能,但我們很難設(shè)想僅由一個(gè)設(shè)計(jì)師獨(dú)立設(shè)計(jì)如此大規(guī)模的電路而第三章 Verilog 語(yǔ)言基礎(chǔ) 18 不出現(xiàn)錯(cuò)誤。利用層次化、結(jié)構(gòu)化的設(shè)計(jì)方法,一個(gè)完整的硬件設(shè)計(jì)任務(wù)首先由總設(shè)計(jì)師劃分為若干個(gè)可操作的模 塊,編制出相應(yīng)的模型(行為的或結(jié)構(gòu)的),通過(guò)仿真加以驗(yàn)證后,再把這些模塊分配給下一層的設(shè)計(jì)師,這就允許多個(gè)設(shè)計(jì)者同時(shí)設(shè)計(jì)一個(gè)硬件系統(tǒng)中的不同模塊,其中每個(gè)設(shè)計(jì)者負(fù)責(zé)自己所承擔(dān)的部分;而由上一層設(shè)計(jì)師對(duì)其下層設(shè)計(jì)者完成的設(shè)計(jì)用行為級(jí)上層模塊對(duì)其所做的設(shè)計(jì)進(jìn)行驗(yàn)證。圖 41 為自頂向下( TOPDOWN)的示意圖,以設(shè)計(jì)樹(shù)的形式繪出。 系 統(tǒng) 級(jí) 設(shè) 計(jì)模 塊 B模 塊 A 模 塊 C模 塊A 2模 塊A 1模 塊A 3模 塊B 1模 塊B 2模 塊C 1模 塊C 2 圖 31 TOP_DOWN 設(shè)計(jì)思想 自頂向下的設(shè)計(jì)(即 TOP_DOWN 設(shè)計(jì))是從系統(tǒng)級(jí)開(kāi)始,把系統(tǒng)劃分為基本單元,然后 再把每個(gè)基本單元?jiǎng)澐譃橄乱粚哟蔚幕締卧?,一直這樣做下去,直到可以直接用 EDA 元件庫(kù)中的元件來(lái)實(shí)現(xiàn)為止。 對(duì)于設(shè)計(jì)開(kāi)發(fā)整機(jī)電子產(chǎn)品的單位和個(gè)人來(lái)說(shuō),新產(chǎn)品的開(kāi)發(fā)總是從系統(tǒng)設(shè)計(jì)入手,先進(jìn)行方案的總體論證、功能描述、任務(wù)和指標(biāo)的分配。隨著系統(tǒng)變得復(fù)雜和龐大,特別需要在樣機(jī)問(wèn)世之前,對(duì)產(chǎn)品的全貌有一定的預(yù)見(jiàn)性。目前,EDA 技術(shù)的發(fā)展使得設(shè)計(jì)師有可能實(shí)現(xiàn)真正的自頂向下的設(shè)計(jì)。 層次管理的基本概念 復(fù)雜數(shù)字邏輯電路和系統(tǒng)的層次化、結(jié)構(gòu)化設(shè)計(jì)隱含著硬件設(shè)計(jì)方案的逐次分解。在設(shè)計(jì)過(guò)程中的任意層次,硬 件至少有一種描述形式。硬件的描述特別是行為描述通常稱為行為建模。在集成電路設(shè)計(jì)的每一層次,硬件可以分為一些模塊,該層次的硬件結(jié)構(gòu)由這些模塊的互連描述,該層次的硬件的行為由這些模塊的行為描述。這些模塊稱為該層次的基本單元。而該層次的基本單元又由下一層次的基本單元互連而成。如此下去,完整的硬件設(shè)計(jì)就可以由圖 261 所示的設(shè)計(jì)樹(shù)描述。在這個(gè)設(shè)計(jì)樹(shù)上,節(jié)點(diǎn)對(duì)應(yīng)著該層次上基本單元的行為描述,樹(shù)枝對(duì)第三章 Verilog 語(yǔ)言基礎(chǔ) 19 應(yīng)著基本單元的結(jié)構(gòu)分解。在不同的層次都可以進(jìn)行仿真以對(duì)設(shè)計(jì)思想進(jìn)行驗(yàn)證。 EDA 工具提供了有效的手段來(lái)管理錯(cuò)綜復(fù)雜的層次, 即可以很方便地查看某一層次某模塊的源代碼或電路圖以改正仿真時(shí)發(fā)現(xiàn)的錯(cuò)誤。 具體模塊的設(shè)計(jì)編譯和仿真的過(guò)程 在不同的層次做具體模塊的設(shè)計(jì)所用的方法也有所不同,在高層次上往往編寫一些行為級(jí)的模塊通過(guò)仿真加以驗(yàn)證,其主要目的是系統(tǒng)性能的總體考慮和各模塊的指標(biāo)分配,并非具體電路的實(shí)現(xiàn)。因而綜合及其以后的步驟往往不需進(jìn)行。而當(dāng)設(shè)計(jì)的層次比較接近底層時(shí)行為描述往往需要用電路邏輯來(lái)實(shí)現(xiàn),這時(shí)的模塊不僅需要通過(guò)仿真加以驗(yàn)證,還需進(jìn)行綜合、優(yōu)化、布線和后仿真。總之具體電路是從底向上逐步實(shí)現(xiàn)的。 EDA 工具 往往不僅支持 HDL描述也支持電路圖輸入 , 有效地利用這兩種方法是提高設(shè)計(jì)效率的辦法之一。下面的流程圖簡(jiǎn)要地說(shuō)明了模塊的編譯和測(cè)試過(guò)程: 電 路 圖 設(shè) 計(jì) 文件H D L 設(shè) 計(jì) 文 件電 路 功 能 仿 真 H D L 功 能 仿 真H D L 綜 合確 定 實(shí) 現(xiàn) 電 路的 具 體 庫(kù) 名優(yōu) 化 、 布 局 布 線與 實(shí) 現(xiàn) 邏 輯 物 理 器 件 有關(guān) 的 工 藝 技 術(shù) 文 件布 線 后 門 級(jí) 仿 真電 路 制 造 工 藝 文 件或 F P G A 碼 流 文 件有 問(wèn) 題有 問(wèn) 題有 問(wèn) 題沒(méi) 問(wèn) 題沒(méi) 問(wèn) 題沒(méi) 問(wèn) 題 圖 32 模塊的編譯和測(cè)試過(guò)程流程圖 第三章 Verilog 語(yǔ)言基礎(chǔ) 20 從上圖可以看出,模塊設(shè)計(jì)流程主要由兩大主要功能部分組成: 1) 設(shè)計(jì)開(kāi)發(fā):即從編寫設(shè)計(jì)文件 綜合到布局布線 投片生成這樣一系列步驟。 2) 設(shè)計(jì)驗(yàn)證:也就是進(jìn)行各種仿真的一系列步驟,如果在仿真過(guò)程中發(fā)現(xiàn)問(wèn)題就返回設(shè)計(jì)輸入進(jìn)行修改。 Verilog HDL 模塊 模塊的結(jié)構(gòu) 模塊的端口定義 模塊的端口聲明了模塊的輸入輸出口。其格式如下: module 模塊名 (輸入輸出端口列表 )。 模塊內(nèi)容 模塊的內(nèi)容包括 I/O 說(shuō)明、內(nèi)部信號(hào)聲明、功能定義。 I/O 說(shuō)明的格式如下: 輸入口: input 輸入端口列表; 輸出口: output 輸出端口列表; 用 wire、 reg、 task、 function 定義數(shù)據(jù)、信號(hào)類型、函數(shù)聲明; wire 結(jié)果信號(hào)名; 功能定義 : 模塊中最重要的部分是邏輯功能定義部分 。有三種方法可在模塊中產(chǎn)生邏輯。 1) 用 assign 聲明語(yǔ)句 assign 結(jié)果信號(hào)名 =表達(dá)式 如: assign a = b amp。 c。 這種方法的句法很簡(jiǎn)單,只需寫一個(gè) assign,后面再加一個(gè)方程式即可。例子中的方程式描述了一個(gè)有兩個(gè)輸入的 與門 。 2) 用實(shí)例元件 如: and and_inst( q, a, b )。 第三章 Verilog 語(yǔ)言基礎(chǔ) 21 采用實(shí)例元件的方法象在電路圖輸入方式下,調(diào)入庫(kù)元件一樣。鍵入元件的名字和相連的引腳即可,表示在設(shè)計(jì)中用到一個(gè)跟與門( and)一樣的名為 and_inst的與門,其輸入端為 a, b,輸出為 q。要求每個(gè)實(shí)例元件的名字必須是唯一的,以避免與其他調(diào)用與門( and)的實(shí)例混淆。 3) 用 always 塊 always @(敏感信號(hào)表達(dá)式 ) 如: always @(posedge clk or posedge clr) begin if(clr) q = 0。 else if(en) q = d。 end 采用 assign 語(yǔ)句是描述組合邏輯最常用的方法之一。而 always 塊既可用于描述組合邏輯也可描述時(shí)序邏輯。上面的例子用 always 塊生成了一個(gè)帶有異步清除端的 D 觸發(fā)器 。 always 塊可用很多種描述手段來(lái)表達(dá)邏輯,例如上例中就用了 if...else 語(yǔ)句來(lái)表達(dá)邏輯關(guān)系。如按一定的風(fēng)格來(lái)編寫 always 塊,可以通過(guò)綜合工具把源代碼自動(dòng)綜合成用門級(jí)結(jié)構(gòu)表示的組合或時(shí)序邏輯電路。 注意:如果用 verilog 模塊實(shí)現(xiàn)一定的功能,首先應(yīng)該清楚哪些是同時(shí)發(fā)生的 , 哪些是順序發(fā)生的。上面三個(gè)例子分別采用了 assign 語(yǔ)句、實(shí)例元件和 always塊。這三個(gè)例子描述的邏輯功能是同時(shí)執(zhí)行的。也就是說(shuō),如果把這三項(xiàng)寫到一個(gè) veriIog 模塊文件中去,它們的次序不會(huì)影響邏輯實(shí)現(xiàn)的功能。這三項(xiàng)是 同時(shí)執(zhí)行的,也就是并發(fā)的。 然而,在 alway”模塊內(nèi),邏輯是按照指定的順序執(zhí)行的。 always 塊中的語(yǔ)句稱為 “順序語(yǔ)句 ”,因?yàn)樗鼈兪琼樞驁?zhí)行的。請(qǐng)注意,兩個(gè)或更多的 always 模塊也是同時(shí)執(zhí)行的,但是模塊內(nèi)部的語(yǔ)句是順序執(zhí)行的。 看一下 always 內(nèi)的語(yǔ)句,你就會(huì)明白它是如何實(shí)現(xiàn)功能的。 if..else… if 必須順序執(zhí)行,否則其功能就沒(méi)有任何意義。如果 else 語(yǔ)句在 if 語(yǔ)句之前執(zhí)行,功能就會(huì)不符合要求!為了能實(shí)現(xiàn)上述描述的功能, always 模塊內(nèi)部的語(yǔ)句將按照書(shū)寫的順序執(zhí)行。 第四章 I2C 總線控制器的總體方案設(shè)計(jì) 23 第 四 章 I2C 總線 控制器的總體方案設(shè)計(jì) I2C 總線接口端口映射 I2C 總線接口 外部 端口映射如圖 51 所示,共有 10 個(gè)端口,各端口定義如表 41 所示。 I 2 C i n t e r f a c es t a r tc l kr s tw rr dw r _ e n da d d rd a t ar d _ e n dS D AS C L 圖 41 I2C 總線 接口外部 端口映射 表 41 I2C 外部 端口映射及功能 端口名 功能 端口名 功能 addr 內(nèi)部寄存器地址 rd 讀信號(hào) start 開(kāi)始信號(hào) ack 應(yīng)答信號(hào) clk 時(shí)鐘輸入 data 數(shù)據(jù)輸入 rst 復(fù)位信號(hào) SDA I2C 數(shù)據(jù) wr 寫信號(hào) SCL I2C 時(shí)鐘 I2C 總線內(nèi)部模塊設(shè)計(jì) I2C 總線內(nèi)部模塊如圖 42 所示 第四章 I2C 總線控制器的總體方案設(shè)計(jì) 24 讀 寫 模 塊讀 數(shù) 據(jù) 模 塊
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1