新聞中心

        EEPW首頁 > EDA/PCB > 設(shè)計(jì)應(yīng)用 > PLD器件的應(yīng)用

        PLD器件的應(yīng)用

        作者: 時(shí)間:2011-12-15 來源:網(wǎng)絡(luò) 收藏

        10.4 的應(yīng)用

        本文引用地址:http://www.104case.com/article/190906.htm

        10.4.1 可編程的開發(fā)系統(tǒng)

        10.4.2 ABEL硬件描述語言

        一、ABEL源文件的結(jié)構(gòu)

        二、ABEL的基本語法

        10.4.3 應(yīng)用舉例

        10.4 的應(yīng)用

        12.jpg

        10.4.1 可編程器件的開發(fā)系統(tǒng)

        10.4.2 ABEL硬件描述語言

        一、ABEL源文件的結(jié)構(gòu)

        看一個(gè)簡(jiǎn)單的ABEL源程序文件的例子。
        module G_3AND
        title‘ This is an example of 3 _input AND gate useing a GAL16V8’
        “device type;
        3 _AND device‘GAL16V8’;
        “input pins;
        A,B,C pin 2,3,4;
        “output pins;
        Y pin 18;
        “constants;
        1,0=H,L;
        equations
        Y=A&B&C;
        test_vectors([A,B,C]->[Y])
        [0,0,0]一>[0];
        [0,0,1]一>[0];
        [0,1,0]一>[0];
        [0,1,1]一>[0];
        [1,0,0]一>[0];
        [1,0,1]一>[0];
        [1,1,0]一>[0];
        [1,1,1]一>[1];
        end

        1.標(biāo)題段

        標(biāo)題語句是可選語句,ABEL在編譯時(shí)不處理該語句。格式:

        module (字符串)
        title ‘(字符串)’

        2.定義段

        (1)器件定義:用來確定所使用的器件。語句格式為:

        (器件序號(hào)) device‘器件名’;

        如:U1 device‘GAL16R8’;它定義了序號(hào)為U1 的器件是 GAL16R8。

        (2)信號(hào)和引腳及引腳類型定義:指定信號(hào)名稱及其對(duì)應(yīng)的器件引腳,并說明信號(hào)的屬性,語句格式為:

        [!]信號(hào)名,[!]信號(hào)名,…[!]信號(hào)名 pin引腳號(hào),引腳號(hào),…引腳號(hào)
        [istype‘屬 性’];

        (3)常量定義:用來定義設(shè)計(jì)者習(xí)慣的常量標(biāo)識(shí)符替代ABEL語言中的一些專用常量標(biāo)識(shí)符,其語句格式為:

        標(biāo)識(shí)符,標(biāo)識(shí)符,… = 常量,常量,…;

        如: 1,0,X,CP=H,L,.X.,.C.;

        13.jpg

        (4)數(shù)組定義和表達(dá)式定義

        數(shù)組定義就是用一個(gè)標(biāo)識(shí)符簡(jiǎn)記一組數(shù)組元素。其語句格式為:

        標(biāo)識(shí)符=[元素1,元素2,…];

        如: S=[ Q1, Q2, Q3];

        (5)注釋行:為便于閱讀程序而加入的注釋。編譯程序是不會(huì)處理它。

        如:“input pin;(輸入引腳)
        “output pin;(輸出引腳)

        3.邏輯描述段——編程設(shè)計(jì)的核心

        (1)邏輯方程。其格式為:

        equations
        方程1 ;
        方程2 ;

        方程n ;

        (2)真值表。其格式如下:
        truth _ table
        ([元素1,元素2…]—>[元素1,元素2,…])
        [×,×,…]—>[×,×,…]

        [×。×,…]—>[×,×,…];

        其中第一行是關(guān)鍵字,后面沒有分號(hào),第二行是表頭,用圓括號(hào)括起來,后面沒有分號(hào)。括號(hào)內(nèi)左邊是輸入信號(hào)數(shù)組,右邊是輸出信號(hào)數(shù)組,兩數(shù)組之間用賦值號(hào)連接。對(duì)于組合邏輯,賦值號(hào)為“->”,對(duì)于觸發(fā)器輸出,賦值號(hào)為“:>”。表頭下面為真值表,表的每一行作為一條語句,用分號(hào)結(jié)束。關(guān)鍵字和表頭也可以寫在同一行,但關(guān)鍵字和表頭之間要用空格隔開。在輸入和輸出數(shù)組中的元素可以是變量標(biāo)識(shí)符(如[A,B,C]),也可以是數(shù)組標(biāo)識(shí)符(如[A,F(xiàn)F]),而FF=[Q2,Q1,Q0],就是說,數(shù)組中可以嵌套數(shù)組。

        4.測(cè)試向量段——測(cè)試電路的邏輯功能是否正確

        結(jié)構(gòu)如下:
        test _ vectors
        ([元素 1,元素2,…]—>[元素 1,元素 2,…])
        [×,×,…]—>[×,×,…];

        [×,×…]—> [×,×,…];

        5.結(jié)束段
        模塊設(shè)計(jì)結(jié)束時(shí),用關(guān)鍵字end表示結(jié)束。因此end只與module對(duì)應(yīng)。end后面沒有分號(hào)。

        下面給出了一個(gè)ABEL源文件的典型結(jié)構(gòu)。

        module(字符串)
        title‘(字符串)’
        (字符串)device‘(器件名)’;
        [!]信號(hào)名,[!]信號(hào)名,…,[!]信號(hào)名 pin 引腳號(hào),引腳號(hào),…,引腳號(hào);
        標(biāo)識(shí)符,標(biāo)識(shí)符,… = 常量,常量,…;
        equations
        方程1;
        方程2;

        方程n;
        test _ vectors([輸入信號(hào)]>[輸出信號(hào)])
        end

        二、ABEL的基本語法

        l.合法字符與語句

        2.標(biāo)識(shí)符與關(guān)鍵字

        3,常量和數(shù)值

        4.運(yùn)算符

        5.?dāng)?shù)組及其運(yùn)算

        16.jpg



        關(guān)鍵詞: PLD 器件

        評(píng)論


        相關(guān)推薦

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

        關(guān)閉
        主站蜘蛛池模板: 阿坝县| 呈贡县| 十堰市| 寻甸| 甘肃省| 河东区| 达日县| 通州市| 筠连县| 阜宁县| 镇平县| 邻水| 南陵县| 天峨县| 日照市| 宜章县| 临澧县| 广德县| 仁布县| 阜新| 仁化县| 南乐县| 黑龙江省| 盐山县| 堆龙德庆县| 腾冲县| 柳江县| 库伦旗| 贵定县| 镇赉县| 深圳市| 博野县| 师宗县| 天峻县| 闸北区| 湟中县| 枞阳县| 拉孜县| 武安市| 晋城| 吉林市|