關(guān) 閉

新聞中心

EEPW首頁(yè) > 工控自動(dòng)化 > 設(shè)計(jì)應(yīng)用 > PLD設(shè)計(jì)方法及步驟

PLD設(shè)計(jì)方法及步驟

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

在項(xiàng)目管理器下,選擇左邊方框中對(duì)應(yīng)于源文件的文件名,雙擊右邊區(qū)域中的Reduce Logic可以看到如上圖所示的編譯過程,如源文件無(wú)誤,則編譯器最終給出編譯報(bào)告,說(shuō)明完成該邏輯所需要的資源及經(jīng)化簡(jiǎn)后的邏輯表達(dá)式;如源文件存在問題問題,則編譯器會(huì)說(shuō)明錯(cuò)誤的原因及地方。
  (6)熔斷絲文件形成
  在項(xiàng)目管理器左邊的區(qū)域選擇使用的器件(GAL16V8),雙擊右邊區(qū)域中的Create Fuse Map, 可看到如下圖所示的熔斷絲文件的形成過程,如報(bào)設(shè)計(jì)的邏輯報(bào)需要的資源GAL16V8可以實(shí)現(xiàn)的話,將最終形成擴(kuò)展名為.JED的熔斷絲文件。

(7)程序下載
   JED的文件須下載到具有的GAL器件中,才能完成其最終的設(shè)計(jì),下載JED文件到GAL須用專門的硬件設(shè)計(jì),這種專門的的設(shè)備即通常講的編程器。這種設(shè)備與計(jì)算機(jī)的并口或串口相連,通過相應(yīng)軟件將JED文件下載到GAL器件中到。如下圖給出了Super編程器下載JED文件的畫面。
   在利用編程器進(jìn)行下載時(shí),首先選擇器件的廠家,不同的廠家器件特性有所不同,故應(yīng)選擇對(duì)應(yīng)的生產(chǎn)廠家,其次選擇器件的型號(hào),這時(shí)可以將需要下載的JED文件讀入緩沖區(qū),最后對(duì)器件進(jìn)行編程,編程器將JED文件下載后還自動(dòng)進(jìn)行一次校驗(yàn),如器件工作正常,則編程 器軟件可告知下載正常,否則說(shuō)明器件損壞。
  由于GAL器件是使用CMOS工藝生產(chǎn)的器件,故在對(duì)GAL器件編程時(shí)應(yīng)注意計(jì)算機(jī)及編程器的接地是否良好,工作人員的人體是否帶靜電。

2.原理圖輸入設(shè)計(jì)法
   原理圖輸入法的使用前面步驟與ABEL語(yǔ)言設(shè)計(jì)的前兩步相同,下面是原理圖設(shè)計(jì)的步驟:
  (1)選擇源文件類型中選擇Schematic,輸入對(duì)應(yīng)的圖形文件名后將出現(xiàn)下圖所示的原理圖輸入界面。

(2)添加元件:選擇菜Add中的Symbol命令,屏幕出現(xiàn)Symbol Libraries對(duì)話框,選擇需要的件,其中: GATE:邏輯門電路;ARITHS:數(shù)學(xué)運(yùn)算元件;IOPAD:輸入輸出元件;MUXEX:多路選擇開關(guān) ;REGS:寄存器。
  (3)連接兩元件:從Add菜單中選擇Wire,用MOUSE左鍵在須連接處單擊后,拖動(dòng)MOUSE到另一點(diǎn)再單擊就將兩點(diǎn)連接上了。
  (4)在輸入輸出端連上輸入/輸出元件:在菜單Add上選擇Symbol中的IOPAD元件,在電路的輸入/輸出畫上IOPAD元件。
  (5)給接口輸出端賦名:從Add菜單中選擇Net Name項(xiàng),從屏幕底部輸入欄中輸入網(wǎng)絡(luò)名并按回車,網(wǎng)絡(luò)名會(huì)粘在光標(biāo)上隨MOUSE一起移動(dòng),將光標(biāo)移到輸入或輸出端單擊,網(wǎng)絡(luò)名就被 放置在輸入/輸出處。
  (6)給接口的輸入輸出端標(biāo)注類型:在Add菜單中選擇I/O Markers,輸對(duì)應(yīng)的輸入輸出標(biāo)上輸入與輸出的標(biāo)記。
  (7)給器件鎖定管腳:從Add中選擇Symbol Attribute將MOUSE光標(biāo)移到輸入輸出端的IOPAD上單擊,將SynarioPin=*中的*改為所須的輸出管腳號(hào)。
   到此一個(gè)完整的原理圖已經(jīng)輸入完畢,將電路圖保存后退出后就可以與ABEL_HDL語(yǔ)言一樣進(jìn)行編譯,最終開成JED文件。

ABEL-HDL基本算術(shù)運(yùn)算符號(hào)

  (1)基本的運(yùn)算表示

  ABEL-HDL語(yǔ)言運(yùn)算可分為邏輯運(yùn)算和算術(shù)運(yùn)算。下面兩個(gè)表格分別列出了兩種運(yùn)算的符號(hào)及功能,下面表格中紅底的項(xiàng)為時(shí)序電路中才會(huì)使用到。

ABEL-HDL基本邏輯運(yùn)算符號(hào)

運(yùn)算符
優(yōu)先級(jí)
功能
例子
含義
!
1
取反
!(AB)
(AB)的非
2
與運(yùn)算
AB
A·B
#
3
或運(yùn)算
A#B
A+B
$
4
異或運(yùn)算
A$B
AB
=
賦值
A=5
將5賦給A
==
數(shù)值相等
A==1
用于判斷數(shù)值相等
!=
數(shù)值不等
A!=1
用于判斷數(shù)值不等

ABEL-HDL基本算術(shù)運(yùn)算符號(hào)

運(yùn)算符
功能
舉例
含義
+
算術(shù)加
C=A+B
將A與B相加,將積再賦給C
-
算術(shù)減
 
*
算術(shù)乘
 
/
算術(shù)除
 
,>>
左,右移位
AB
將A左移B位

 (2)關(guān)鍵字

關(guān)鍵字
作   用
舉  
module
說(shuō)明模塊的開始,與END對(duì)應(yīng)
MODULE tran
End
模塊的結(jié)束
END
Title
說(shuō)明模塊的名稱(可省略)
Title 'U2 is a decode'
Equations
表明與器件相關(guān)的方程式的開始
Pin
說(shuō)明器件I/O的引腳
CLK,A Pin 1,2;
Istype
說(shuō)明輸出信號(hào)的屬性
A Pin 19 istype 'COM';
Test_vectors
測(cè)試向量的開始
Truth_table
真值表的開始
When then Else
當(dāng)什么時(shí)就怎樣,否則怎樣
When b then c=0 esle a=b
If then else
 

3)ABEL語(yǔ)言設(shè)計(jì)舉例

  例 寫出全加器的ABEL-HDL語(yǔ)言的源文件。
  分析:在組合邏輯電路中我們分析了全加器的電路,我們可以用真值表、邏輯表達(dá)式、電路圖等幾種方式來(lái)描述其邏輯功能。其表達(dá)式寫為:

其值表可寫為:

Ci
A
B
Co
S
0
0
0
0
0
0
0
1
0
1
0
1
0
0
1
0
1
1
1
0
1
0
0
0
1
1
0
1
1
0
1
1
0
1
0
1
1
1
1
1

該邏輯用真值表和表達(dá)式皆可以表示,即ABEL的源文件可以有兩種表達(dá)方式。
  源文件1:用表達(dá)式來(lái)表示

源文件
 說(shuō)  明 
Module FSUM;
模塊定義,F(xiàn)SUM為模塊名,每行結(jié)束用分號(hào)結(jié)束
  A,B,Ci pin 1,2,3;
定義A,B,Ci對(duì)應(yīng)管腳1,2,3
  S,Co pin 19,18 istype 'com';
定義S,Co的管腳,并定義其為組合邏輯電路輸出
Equations
表示下面一段為邏輯表達(dá)式
  S=A$B$Ci;
  Co=AB+ACi+BCi;
Test_vectors ([Ci,A,B]->[Co,S])
測(cè)試向量定義,下面為測(cè)試向量用于模擬邏輯功能
       [0,0,0]->[0,0];
       [0,0,1]->[0,1];
       [0,1,0]->[0,1];
       [0,1,1]->[1,0];
       [1,0,0]->[0,1];
       [1,0,1]->[1,0];
       [1,1,0]->[1,0];
       [1,1,1]->[1,1];
End
模塊結(jié)束


關(guān)鍵詞: PLD 設(shè)計(jì)方法

評(píng)論


相關(guān)推薦

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

關(guān)閉