在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<abbr id="27omo"></abbr>

<menu id="27omo"><dl id="27omo"></dl></menu>
    • <label id="27omo"><tt id="27omo"></tt></label>

      新聞中心

      EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > VHDL設(shè)計(jì)中信號(hào)與變量問(wèn)題的研究

      VHDL設(shè)計(jì)中信號(hào)與變量問(wèn)題的研究

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

        在程序中,可以充分利用的系統(tǒng)默認(rèn)值,來(lái)靈活實(shí)現(xiàn)目標(biāo)。本文從應(yīng)用的角度舉例說(shuō)明了的區(qū)別,以及正確的使用方法,并介紹了為賦予初始值的技巧。

      本文引用地址:http://www.biyoush.com/article/151920.htm

        概述

        隨著集成電路技術(shù)的發(fā)展,用傳統(tǒng)的方法進(jìn)行芯片或系統(tǒng)設(shè)計(jì)已不能滿足要求,迫切需要提高設(shè)計(jì)效率,因此能大大降低設(shè)計(jì)難度的設(shè)計(jì)方法被越來(lái)越廣泛地采用。用VHDL語(yǔ)言設(shè)計(jì)系統(tǒng)的主要方法是:設(shè)計(jì)者根據(jù)VHDL的語(yǔ)法規(guī)則,對(duì)系統(tǒng)目標(biāo)的邏輯行為進(jìn)行描述,然后通過(guò)綜合工具進(jìn)行電路結(jié)構(gòu)的綜合、編譯、優(yōu)化,通過(guò)仿真工具進(jìn)行邏輯功能仿真和系統(tǒng)時(shí)延的仿真,最后把設(shè)計(jì)的程序下載到芯片中,成功地實(shí)現(xiàn)系統(tǒng)功能。

        在VHDL設(shè)計(jì)中,最常用的數(shù)據(jù)對(duì)象主要有三種:信號(hào)(signal)、變量(variable)和常數(shù)(constant)。信號(hào)是電子電路內(nèi)部硬件連接的抽象。它除了沒(méi)有數(shù)據(jù)流動(dòng)方向說(shuō)明以外,其他性質(zhì)幾乎和“端口”一樣;信號(hào)是一個(gè)全局量,它可以用來(lái)進(jìn)行進(jìn)程之間的通信。變量只能在進(jìn)程語(yǔ)句、函數(shù)語(yǔ)句和過(guò)程語(yǔ)句結(jié)構(gòu)中使用,是一個(gè)局部量。

        在VHDL語(yǔ)言中,對(duì)信號(hào)賦值是按仿真時(shí)間進(jìn)行的,到了規(guī)定的仿真時(shí)間才進(jìn)行賦值,而變量的賦值是立即發(fā)生的。下面的例子是從賦初值的角度說(shuō)明信號(hào)與變量的這種區(qū)別的。

        例如用VHDL語(yǔ)言實(shí)現(xiàn)初值為A的十六進(jìn)制的16個(gè)數(shù)的循環(huán)顯示。

        對(duì)于如此的設(shè)計(jì)要求,如果用變量實(shí)現(xiàn),則VHDL程序如下。

        library ieee;

        use ieee.std_logic_1164.all;

        use ieee.std_logic_unsigned.all;

        entity sevenauto is

        port(clk:in std_logic;

        y:out std_logic_vector(6 downto 0));

        end sevenauto;

        architecture behave of sevenauto is

        begin

        process(clk)

        variable count:std_logic_vector(3 downto 0);

        variable init:std_logic;

        begin

        if (clk''event) and (clk=''1'') then

        if (init = ''0'') then

        count:= 1001;

        init:=''1'

        end if;

        count:=count+1;

        case count is

        when 0000=>y=1111110;

        when 0001=>y=0110000;

        when X2=>y=1101101;

        when X3=>y=1111001;

        when X4=>y=0110011;

        when X5=>y=1011011;

        when X6=>y=1011111;

        when X7=>y=1110000;

        when X8=>y=1111111;

        when X9=>y=1111011;

        when XA=>y=1110111;

        when XB=>y=0011111;

        when XC=>y=1001110;

        when 1101=>y=0111101;

        when 1110=>y=1001111;

        when 1111=>y=1000111;

        when thers=>y=XXXXXXX;

        end case;

        end if;

        end process;

        end behave;


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

      評(píng)論


      相關(guān)推薦

      技術(shù)專區(qū)

      關(guān)閉