<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > EDA/PCB > 設(shè)計(jì)應(yīng)用 > 基于IP庫(kù)的可編程器件輔助設(shè)計(jì)軟件

          基于IP庫(kù)的可編程器件輔助設(shè)計(jì)軟件

          作者: 時(shí)間:2012-11-06 來(lái)源:網(wǎng)絡(luò) 收藏

          1 引言

          本文引用地址:http://www.ex-cimer.com/article/189782.htm

          在基于MCU的系統(tǒng)設(shè)計(jì)中,一般采用MCU+PLD的系統(tǒng)結(jié)構(gòu)。PLD器件具有在系統(tǒng)現(xiàn)場(chǎng)可重復(fù)編程的能力,用來(lái)實(shí)現(xiàn)系統(tǒng)的I/O接口等外圍功能。在這類(lèi)系統(tǒng)中,絕大多數(shù)的數(shù)字邏輯可在PLD器件內(nèi)部完成。在設(shè)計(jì)一個(gè)新系統(tǒng)時(shí),應(yīng)盡可能利用以往設(shè)計(jì)中已使用過(guò)的IP模塊,這些模塊的設(shè)計(jì)已成熟、并經(jīng)過(guò)時(shí)間考驗(yàn),可提高設(shè)計(jì)的重復(fù)利用率,并使系統(tǒng)性能和質(zhì)量得到保證。

          在長(zhǎng)期的設(shè)計(jì)工作中,人們已積累了大量的IP 模塊,如在一個(gè)新的設(shè)計(jì)中加以利用,必然存在如何管理這些模塊的問(wèn)題。為此可采用集約式的設(shè)計(jì)方法,以提高設(shè)計(jì)效率。硬件集約式的設(shè)計(jì)方法如圖1所示,它類(lèi)似于軟件中高級(jí)語(yǔ)言的設(shè)計(jì)方式。先用HDL語(yǔ)言對(duì)各種不同功能的電路模塊建立IP模塊,創(chuàng)建電路單元。然后根據(jù)設(shè)計(jì)規(guī)范的要求,從庫(kù)中選取不同的電路單元組成描述外圍接口電路的HDL程序。最后,用相應(yīng)的PLD 設(shè)計(jì)工具對(duì)HDL程序進(jìn)行邏輯綜合,在PLD器件內(nèi)部完成布局布線(xiàn),生成最終的數(shù)字電路。由于這些電路單元是用HDL語(yǔ)言描述的,而HDL語(yǔ)言的特點(diǎn)就是與工藝無(wú)關(guān),因此用它描述的電路單元的可移植性非常好,可以在采用不同工藝制造的PLD器件中使用。于是,電路單元庫(kù)可以用在不同的系統(tǒng)中,避免了重復(fù)設(shè)計(jì)與資源浪費(fèi)。

          Xilinx公司和Altera公司的設(shè)計(jì)工具中,提供了一些HDL形式的電路庫(kù)。不過(guò)庫(kù)單元都是比較簡(jiǎn)單的小規(guī)模數(shù)字電路,如邏輯門(mén)、74系列器件等,對(duì)中、大規(guī)模和復(fù)雜邏輯時(shí)序電路的設(shè)計(jì)幫助不大。另外也有一些外圍功能模塊和復(fù)雜邏輯的單元庫(kù)提供如通用異步收發(fā)器、有限沖擊響應(yīng)濾波器等,但不是以HDL的形式提供的,只適用于某些特定的PLD器件,移植性比較差。因此,在實(shí)際工作中編制了一個(gè)管理和組合HDL電路單元--HAD軟件。通過(guò)HAD軟件,對(duì)設(shè)計(jì)好的HDL電路庫(kù)進(jìn)行管理,按照系統(tǒng)設(shè)計(jì)規(guī)范的要求從庫(kù)中選取相應(yīng)的電路單元并將它們組合起來(lái),大大降低了系統(tǒng)設(shè)計(jì)和調(diào)試的難度,提高了系統(tǒng)的穩(wěn)定性和可靠性,并且有利于系統(tǒng)日后的升級(jí)。

          2 HAD功能

          設(shè)計(jì)(HAD)軟件主要是對(duì)HDL語(yǔ)言的電路起一個(gè)輔助設(shè)計(jì)的作用。HAD軟件的功能有兩個(gè):管理電路單元以及生成所需外圍電路的 HDL程序。

          電路單元庫(kù)的管理主要有兩個(gè)方面:電路單元接口的管理以及電路單元HDL程序的管理。因此,電路單元庫(kù)是由兩個(gè)庫(kù)組成的,一個(gè)是電路單元的接口庫(kù),另外一個(gè)是電路單元HDL程序庫(kù)[7]。電路單元接口庫(kù)里的基本單位是各個(gè)電路單元的接口信息,電路單元HDL程序庫(kù)里的基本單位是描述各種電路單元的HDL源程序。類(lèi)似于標(biāo)準(zhǔn)芯片,如8255芯片,電路單元的接口信息描述了這個(gè)標(biāo)準(zhǔn)芯片的輸入輸出以及它的功能,相當(dāng)于8255的管腳和使用功能說(shuō)明;而電路單元HDL程序描述了這個(gè)標(biāo)準(zhǔn)芯片內(nèi)部的實(shí)際電路以及用何種電路結(jié)構(gòu)實(shí)現(xiàn)相應(yīng)功能的,這相當(dāng)于8255芯片內(nèi)部的電路組成和結(jié)構(gòu)。對(duì)于管理一個(gè)庫(kù)來(lái)說(shuō),基本的操作主要是新增、刪除和修改庫(kù)單元。

          HAD軟件的最終目的就是生成外圍電路的HDL 程序。也就是根據(jù)系統(tǒng)設(shè)計(jì)規(guī)范的要求從IP庫(kù)中選取合適的電路單元,再以適當(dāng)?shù)男问浇M合起來(lái),成為一個(gè)完整的HDL程序。

          3 電路模塊HDL程序生成

          HAD軟件中最主要的功能就是電路模塊HDL程序的生成。生成電路模塊的HDL程序的過(guò)程,主要就是對(duì)電路單元IP庫(kù)中的某些單元進(jìn)行若干次例化的過(guò)程。

          進(jìn)行例化就必須具備兩個(gè)條件:首先要有模塊輸入輸出端口的列表,其次要知道的是與這些端口相連接的信號(hào)列表。根據(jù)兩者的對(duì)應(yīng)關(guān)系,完成例化,然后將例化好的電路模塊組合起來(lái),成為一個(gè)HDL程序文件?

          生成電路模塊HDL程序的流程如圖2所示:

          通過(guò)上面的分析,首先創(chuàng)建兩個(gè)數(shù)據(jù)庫(kù)。一個(gè)存放各種模塊HDL程序的源文件,另外一個(gè)存放與各個(gè)模塊相對(duì)應(yīng)的輸入輸出端口的信號(hào)列表。


          上一頁(yè) 1 2 3 下一頁(yè)

          評(píng)論


          相關(guān)推薦

          技術(shù)專(zhuān)區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();