【正文】
std_logic。 clk ?EVENT AND clk=?1? clk=?1? AND clk ?EVENT clk ?EVENT AND clk=?0? clk=?0? AND clk ?EVENT rising_edge(clk) falling_edge(clk) EVENT 和 ACTIVE EVENT 要求信號(hào)值發(fā)生變化; 1到 0、 0到 1 ACTIVE 信號(hào)值的任何變化, 1到 1, 1 到 0,0到 1, 0到 0; 所有的事件都是活躍,但并非所有的活躍都是事件 范圍類(lèi)屬性 ’ RANGE屬性,其生成一個(gè)限制性數(shù)據(jù)對(duì)象的范圍。 例 SIGNAL data_bus:std_logic_vector(15 DOWNTO 0)。 data_bus ’ RANGE=15 downto 0 運(yùn)算符 VHDL與其他的高級(jí)語(yǔ)言十分相似,具有豐富的運(yùn)算操作符以滿足不同描述功能的需要。在VHDL中共有 4類(lèi)操作符,可以分別進(jìn)行邏輯運(yùn)算(Logical)、 關(guān)系運(yùn)算 (Relational)、 算術(shù)運(yùn)算(Arithmetic)、 并置運(yùn)算 (Concatenation) 邏輯運(yùn)算符 要求運(yùn)算符左右的數(shù)據(jù)類(lèi)型必須相同 , AND 邏輯與 OR 邏輯或 NAND 與非 NOT 邏輯非 NOR 或非 XOR 異或 NOR 同或 邏輯運(yùn)算符 例: x=(a AND b) OR (NOT c AND d)。 x=b AND a AND d AND e。 x=((a NOR b) NOR c) NOR d。 x=b OR c OR d OR e。 x=a XOR d XOR e。 a=(x1 AND x2) OR (y1 AND y2)。 算術(shù)運(yùn)算符 VHDL語(yǔ)言有八種算術(shù)運(yùn)算符 ,它們分別是 : + 加 減 * 乘 / 除 ** 乘方 (左操作數(shù) :整數(shù)或浮點(diǎn)數(shù) ) (右操作數(shù)必須是整數(shù) ) MOD 求模 (只能用于整數(shù)類(lèi)型 ) REM 求余 (只能用于整數(shù)類(lèi)型 ) ABS 取絕對(duì)值 關(guān)系運(yùn)算符 VHDL語(yǔ)言有六種關(guān)系運(yùn)算符 ,它們分別是 : = 等于 /= 不等于 小于 = 小于或等于 (也用于信號(hào)的賦值 ) 大于 = 大于或等于 并置運(yùn)算符 amp。 并置 ,將多個(gè)對(duì)象或矢量連接成維數(shù)更大的矢量 ARCHITECTURE example OF shiftrl IS BEGIN PROCESS(a) BEGIN O1=?0?amp。a(7 DOWNTO 1)。 右移 O2=O1(6 DOWNTO 0)amp。 ?0?。 左移 O3=aamp。b。 合并 a,b END PROCESS。