新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > VHDL結構體的數據流描述法

        VHDL結構體的數據流描述法

        作者: 時間:2017-06-06 來源:網絡 收藏
        據流描述(dataflow description)是描述方法之一,它描述了程的運動路徑、運動方向和運動結果。例如,同樣是一個8位比較器采用法編程,則如例1-7所示。
        【例1-7】 用設計8位比較器
        LIBRARY IEEE;
        USE IEEE std_logic_1164.ALL;
        ENTITY comparator IS
        PORT (a,b:IN std_logic_vector(7 downto 0);
        g:out std_logic);
        END comparator;
        ARCHITECTURE dataflow OF  comp  IS
        BEGIN
        G =1 when (a = b) else0;
        END dataflow;
        上述程序設計的數據流程為:當a=b時,G=1;其余時間G=0。注意,數據流描述的句法與行為描述的句法是不一樣的。
        cale—when:條件信號賦值語句。
        with—select—when:選擇信號賦值語句。
        這兩種語句是數據流常用的語法,同樣采用布爾方程,也可用數據流,如例1-8所示。
        【例1-8】 用布爾方程的數據流描述法設計的8位比較器
        LIBRARY IEEE;
        USE IEEE std_logic_1164.ALL;
        ENTITY comparator IS
        PORT (a,b:IN std_logic_vector(7 downto 0);
        g:out std_logic);
        END  comparator;
        ARCHITECTURE bool OF comparator IS
        BEGIN
        g<=not(a(0)xorb(0))
        and not(a(1)xorb(1))
        and not(a(2)xorb(2))
        and not(a(3)xorb(3))
        and not(a(4)xorb(4))
        and not(a(5)xorb(5))
        and not(a(6)xorb(6))
        and not(a(7)xorb(7));
        END bool;
        布爾方程的數據流描述法描述了信號的數據流的路徑。這種描述法比例1-6的復雜,因為例1-6的描述與端口結構無關。只要a=b,G就輸出1,與a、b的大小無關。而例1-7是一個8位比較器,布爾方程定義的端口尺寸為8位。
        數據流描述法采用并發(fā)信號賦值語句,而不是進程順序語句。一個結構體可以有多重信號賦值語句,且語句可以并發(fā)執(zhí)行。


        評論


        相關推薦

        技術專區(qū)

        關閉
        主站蜘蛛池模板: 夏邑县| 仪征市| 乌审旗| 阿拉善左旗| 景德镇市| 辰溪县| 盐边县| 比如县| 县级市| 蒙阴县| 张家川| 田东县| 玉溪市| 五寨县| 南城县| 蓝田县| 曲周县| 东港市| 武穴市| 岳阳县| 桃园市| 竹北市| 通许县| 耒阳市| 巨野县| 渝中区| 樟树市| 磐安县| 锡林郭勒盟| 长泰县| 寿宁县| 彭水| 江永县| 清流县| 连南| 天长市| 布尔津县| 关岭| 睢宁县| 长垣县| 尉犁县|