K述列 83子程序( SUBPROGRAM) 8.3.3过程( PROCEDURE) 【例8-8】 PROCEdURE Prgl(vaRiable value: INOUT BIT VECTOR(O TO 7)Is BEGIN CASE value s wHEN"0000"=> value:"0101" WhEN 010l => value: 0000 WHEN OTHERS=> value: 1111; END CASE END PROCEDURE prgl
KX 康芯科技 8.3.3 过程(PROCEDURE) 8.3 子程序(SUBPROGRAM) 【例8-8】 PROCEDURE prg1(VARIABLE value:INOUT BIT_VECTOR(0 TO 7)) IS BEGIN CASE value IS WHEN "0000" => value: "0101" ; WHEN "0101" => value: "0000" ; WHEN OTHERS => value: "1111" ; END CASE ; END PROCEDURE prg1 ;
【例8-9】 PROCEDURE comp( a, r: IN REAL; m: IN INTEGER vl, v2: OUT REAL IS vaRiabLe cnt: INTEGER BEGIN Ⅴ:=1.6a; 赋初始值 v2:=1.0; 赋初始值 Q1: FOR cnt IN I TO m LOOP 2:=v2*v1 EXIT QI WHEN V2> vI 当v2>Ⅵ,跳出循环LOOP END LOOPQI ASSERT(V2 <VI) REPORT OUT OF RANGE 输出错误报告 SEVERITY ERROR: END PROCEDURE comp
KX 【例8-9】 康芯科技 PROCEDURE comp ( a, r : IN REAL; m : IN INTEGER ; v1, v2: OUT REAL) IS VARIABLE cnt : INTEGER ; BEGIN v1 := 1.6 * a ; -- 赋初始值 v2 := 1.0 ; -- 赋初始值 Q1 : FOR cnt IN 1 TO m LOOP v2 := v2 * v1 ; EXIT Q1 WHEN v2 > v1; -- 当v2 > v1,跳出循环LOOP END LOOPQ1 ASSERT (v2 < v1 ) REPORT "OUT OF RANGE" -- 输出错误报告 SEVERITY ERROR ; END PROCEDURE comp ;
K述列 83子程序( SUBPROGRAM) 8.3.4重载过程 OVERLOADED PROCEDURE) 【例8-10】 PROCEDURE calcu(v1, v2: IN REAL; SIGNAL outI: INOUTINTEGER); PROCEDURE calcu( v1, v2: IN INTEGER SIGNAL outI: INOUTREAL) calcu(20.15,142, signl);--调用第一个重载过程calu calcu(23,320,sign2);--调用第二个重载过程 calcu
KX 康芯科技 8.3.4 重载过程(OVERLOADED PROCEDURE) 8.3 子程序(SUBPROGRAM) 【例8-10】 PROCEDURE calcu ( v1, v2 : IN REAL ; SIGNALout1 : INOUTINTEGER) ; PROCEDURE calcu ( v1, v2 : IN INTEGER ; SIGNALout1 : INOUT REAL) ; ... calcu (20.15, 1.42,signl); -- 调用第一个重载过程calcu calcu (23, 320,sign2 ) ; -- 调用第二个重载过程calcu
K述列 84VHDL年 84.1库的种类 「1.IEE库 2.STD库 T工 BRARY STD USE STD. STANDARD. ALL 3.WoRK库 4.VTAL库
KX 康芯科技 1. IEEE库 2. STD库 3. WORK库 4. VITAL库 8.4 VHDL库 8.4.1 库的种类 LIBRARY STD ; USE STD.STANDARD.ALL ;
K述列 84VHDL年 84.2库的用法 USE库名.程序包名.项目名; USE库名.程序包名.AL; 工工 BRARY工EE; USE IEEE STD LOGIC 1164. STD ULOGIC USE IEEE STD LOGIC 1164. RISING EDGE
KX 康芯科技 8.4.2 库的用法 8.4 VHDL库 USE 库名.程序包名.项目名 ; USE 库名.程序包名.ALL ; LIBRARY IEEE ; USE IEEE.STD_LOGIC_1164.STD_ULOGIC ; USE IEEE.STD_LOGIC_1164.RISING_EDGE ;