數(shù)據(jù)對象的屬性_第1頁
數(shù)據(jù)對象的屬性_第2頁
數(shù)據(jù)對象的屬性_第3頁
數(shù)據(jù)對象的屬性_第4頁
數(shù)據(jù)對象的屬性_第5頁
已閱讀5頁,還剩12頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

許鋼

2024/1/4《在系統(tǒng)可編程技術(shù)應(yīng)用設(shè)計&SOPC技術(shù)及應(yīng)用》1第4講數(shù)據(jù)對象的屬性

VHDL語言有屬性預(yù)定義功能,該功能有許多重要的應(yīng)用,例如檢測出時鐘邊沿、完成定時檢查、獲得未約束的數(shù)據(jù)類型范圍等。通過預(yù)定義屬性描述語句,可以得到可調(diào)的有關(guān)值、功能、類型和范圍(區(qū)間)。

任何時刻,數(shù)據(jù)對象只有一個值,但是可以具有多種屬性。預(yù)定義的屬性類型有以下幾種:數(shù)值類;函數(shù)類;信號類;數(shù)據(jù)類;數(shù)據(jù)區(qū)間類和用戶自定義類屬性。以下只介紹可以被綜合器支持的屬性!許鋼

2024/1/4《在系統(tǒng)可編程技術(shù)應(yīng)用設(shè)計&SOPC技術(shù)及應(yīng)用》2第4講數(shù)據(jù)對象的屬性數(shù)值類屬性用來得到數(shù)組、塊或者一般數(shù)據(jù)的有關(guān)值。(返回一個值。)1.一般數(shù)據(jù)的數(shù)值屬性(T代表某一對象:信號、變量):

T’Left ——得到數(shù)據(jù)類或其子類區(qū)間的最左端的值;

T’Right ——得到數(shù)據(jù)類或其子類區(qū)間的最右端的值;

T’High ——得到數(shù)據(jù)類或其子類區(qū)間的上限值;

T’Low ——得到數(shù)據(jù)類或其子類區(qū)間的下限值;2.?dāng)?shù)組的數(shù)值屬性(T代表某一對象:信號、變量):

T’Length ——得到一維數(shù)組的長度值;4.1數(shù)值類屬性許鋼

2024/1/4《在系統(tǒng)可編程技術(shù)應(yīng)用設(shè)計&SOPC技術(shù)及應(yīng)用》3第4講數(shù)據(jù)對象的屬性

T’Range

T’Reverse_Range屬性Range將返回對象T矢量或數(shù)組的下標(biāo)范圍;而屬性Reverse_Range返回對象T矢量或數(shù)組的次序顛倒的下標(biāo)范圍。4.2范圍類屬性許鋼

2024/1/4《在系統(tǒng)可編程技術(shù)應(yīng)用設(shè)計&SOPC技術(shù)及應(yīng)用》4第4講數(shù)據(jù)對象的屬性TYPEBIT_VECTORISARRAY(INTEGERrange<>)ofBIT;

--Anunconstrainedarraydefinition…………VARIABLEMY_VECTOR:BIT_VECTOR(5downto0);

Attribute ExpressionValueMY_VECTOR’left5MY_VECTOR’right0MY_VECTOR’high5MY_VECTOR’low0MY_VECTOR’length6MY_VECTOR’range(5downto0)MY_VECTOR’reverse_range(0to5)例1:

許鋼

2024/1/4《在系統(tǒng)可編程技術(shù)應(yīng)用設(shè)計&SOPC技術(shù)及應(yīng)用》5第4講數(shù)據(jù)對象的屬性TYPEBIT_VECTORISARRAY(INTEGERrange<>)ofBIT;

--Anunconstrainedarraydefinition…………VARIABLEMY_VECTOR:BIT_VECTOR(0to5);

Attribute ExpressionValueMY_VECTOR’left0MY_VECTOR’right5MY_VECTOR’high5MY_VECTOR’low0MY_VECTOR’length6MY_VECTOR’range(0to5)MY_VECTOR’reverse_range(5downto0)例2:

許鋼

2024/1/4《在系統(tǒng)可編程技術(shù)應(yīng)用設(shè)計&SOPC技術(shù)及應(yīng)用》6第4講數(shù)據(jù)對象的屬性Forascendingranges,thefollowingistrue:

MY_VECTOR’LEFT=MY_VECTOR’LOW

MY_VECTOR’RIGHT=MY_VECTOR’HIGHFordescendingranges,theoppositeistrue:

MY_VECTOR’LEFT=MY_VECTOR’HIGH

MY_VECTOR’RIGHT=MY_VECTOR’LOW結(jié)論:許鋼

2024/1/4《在系統(tǒng)可編程技術(shù)應(yīng)用設(shè)計&SOPC技術(shù)及應(yīng)用》7第4講數(shù)據(jù)對象的屬性返回有關(guān)信號(Signal)行為功能的信息。(S代表信號):

S’Event

對信號S所發(fā)生的事件進行檢測。信號S的事件指信號的電平(值)發(fā)生了變化。如:1->0或0->1。若信號S有事件發(fā)生,則返回TRUE,否則返回FALSE。只能用于IF語句和WAIT語句中。該屬性常用于對時鐘信號邊沿的檢測。例:IF(clk=’1’)and(clk’Event)THEN

...;

--檢測時鐘clk的上升沿

IF(clk=’0’)and(clk’Event)THEN...;

--檢測時鐘clk的下降沿4.3信號類屬性許鋼

2024/1/4《在系統(tǒng)可編程技術(shù)應(yīng)用設(shè)計&SOPC技術(shù)及應(yīng)用》8第4講數(shù)據(jù)對象的屬性返回有關(guān)信號(Signal)行為功能的信息。(S代表信號):

S'Stable[(time)]該屬性可以建立一個布爾信號,在括號內(nèi)的時間表達式time所說明的時間內(nèi),若信號S沒有發(fā)生事件(即:信號保持穩(wěn)定),則該屬性可以得到"True”的結(jié)果。4.3信號類屬性許鋼

2024/1/4《在系統(tǒng)可編程技術(shù)應(yīng)用設(shè)計&SOPC技術(shù)及應(yīng)用》9第4講數(shù)據(jù)對象的屬性1.行為描述:只注重算法、功能,不涉及到硬件結(jié)構(gòu)。2.數(shù)據(jù)流描述(寄存器傳輸級——RTL級描述):與硬件結(jié)構(gòu)聯(lián)系緊密,適合于底層設(shè)計。3.結(jié)構(gòu)描述:注重各功能模塊之間的聯(lián)系。適合于大系統(tǒng)的模塊化分解,以及利用前人的設(shè)計成果,資源共享,避免重復(fù)設(shè)計。4.3VHDL描述方式許鋼

2024/1/4《在系統(tǒng)可編程技術(shù)應(yīng)用設(shè)計&SOPC技術(shù)及應(yīng)用》10第4講數(shù)據(jù)對象的屬性1.行為描述:行為級描述的特點是信號被分為控制信號和被控制信號,當(dāng)控制信號發(fā)生某一行為變化時,被控信號也隨之變化。在僅知道控制信號與被控信號之間的控制關(guān)系,而不知道具體結(jié)構(gòu)時,一般采用這種描述方法。設(shè)計者在使用行為級描述時應(yīng)盡量將其限制在一個較小的模塊內(nèi)。目前大多數(shù)情況下使用的行為級描述是用來描述一個組合邏輯的功能,中間不能包含對寄存器信息的描述,這樣有利于綜合工具了解設(shè)計者的意圖。4.3VHDL描述方式許鋼

2024/1/4《在系統(tǒng)可編程技術(shù)應(yīng)用設(shè)計&SOPC技術(shù)及應(yīng)用》11第4講數(shù)據(jù)對象的屬性1.行為描述:例:

SignalSum:stdlogic_vector(15downto0);

SignalA,B:std_logic_vector(15downtoO);

Sum<=A+B;這是一個行為級的VHDL描述。它描述的是一個16位的加法器,在這個描述中設(shè)計者并沒有指定它的構(gòu)成方式。因此綜合器在綜合時根據(jù)設(shè)計者施加的限制和具體的工藝庫中提供的單元來決定這個加法器的具體結(jié)構(gòu);這個描述最后的實現(xiàn)形式可能是一個串行進位加法器、8位一組的組超前進位加法器、4位一組的組超前進位加法器或其他一些可能的結(jié)構(gòu)。4.3VHDL描述方式許鋼

2024/1/4《在系統(tǒng)可編程技術(shù)應(yīng)用設(shè)計&SOPC技術(shù)及應(yīng)用》12第4講數(shù)據(jù)對象的屬性2.數(shù)據(jù)流描述(寄存器傳輸級——RTL級描述):數(shù)據(jù)流描述,顧名思義是指對數(shù)據(jù)傳遞的直接描述。在對信號與數(shù)據(jù)之間的邏輯關(guān)系與結(jié)構(gòu)非常熟悉情況下,一般可以采用數(shù)據(jù)流描述方法。數(shù)據(jù)流描述主要適用于算法描述,尤其在設(shè)計有關(guān)通信、數(shù)字或圖像處理類電路時會大量用到。比如:在設(shè)計芯片中描述專門的快速傅里葉變換FFT電路時使用數(shù)據(jù)流描述就非常有效;在設(shè)計圖像處理芯片時描述離散余弦變換DCT也會使用數(shù)據(jù)流描述。4.3VHDL描述方式許鋼

2024/1/4《在系統(tǒng)可編程技術(shù)應(yīng)用設(shè)計&SOPC技術(shù)及應(yīng)用》13第4講數(shù)據(jù)對象的屬性3.結(jié)構(gòu)描述:結(jié)構(gòu)描述用于描述元件之間的連接關(guān)系,類似于畫邏輯圖中的用信號線將各個元件連接起來。結(jié)構(gòu)描述方法一般用在主模塊與子模塊的調(diào)用上,所以這種描述方法支持層次化(hierarchy)的設(shè)計。4.3VHDL描述方式許鋼

2024/1/4《在系統(tǒng)可編程技術(shù)應(yīng)用設(shè)計&SOPC技術(shù)及應(yīng)用》14第4講數(shù)據(jù)對象的屬性例:帶使能端的半加器:輸入信號A、B和enable,輸出信號C。當(dāng)enalbe為高電平時,輸出信號C等于輸入A和B的和;當(dāng)enable為低電平時,輸出C保持低電平。4.3VHDL描述方式采用行為描述:...

IFenable=’1’Then

C<=A+B;

Else

C<=’0’;

EndIF;...上面的一段程序描述的是輸出C的算法,不包含任何與電路實現(xiàn)的有關(guān)信息,具體采用何種電路來完成輸出C的邏輯由綜合器和具體的工藝庫來決定,這種描述最接近其他高級語言的描述風(fēng)格,最容易被設(shè)計者理解和使用。許鋼

2024/1/4《在系統(tǒng)可編程技術(shù)應(yīng)用設(shè)計&SOPC技術(shù)及應(yīng)用》15第4講數(shù)據(jù)對象的屬性例:帶使能端的半加器:輸入信號A、B和enable,輸出信號C。當(dāng)enalbe為高電平時,輸出信號C等于輸入A和B的和;當(dāng)enable為低電平時,輸出C保持低電平。4.3VHDL描述方式采用數(shù)據(jù)流描述:...

C<=(enableANDNOT(A)ANDB)OR(enableANDAANDNOT(B));...

它的描述較行為級描述更接近于具體的電路,抽象層次較行為描述有所降低。許鋼

2024/1/4《在系統(tǒng)可編程技術(shù)應(yīng)用設(shè)計&SOPC技術(shù)及應(yīng)用》16第4講數(shù)據(jù)對象的屬性例:帶使能端的半加器:輸入信號A、B和enable,輸出信號C。當(dāng)enalbe為高電平時,輸出信號C等于輸入A和B的和;當(dāng)enable為

溫馨提示

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

評論

0/150

提交評論