pld的設(shè)計(jì)方法
可編程邏輯器件pld在數(shù)字系統(tǒng)設(shè)計(jì)中可實(shí)現(xiàn)各種邏輯功能,從簡(jiǎn)單的隨機(jī)邏輯替換到復(fù)雜的控制定序器。
可編程邏輯器件具有成本低、集成度高、使用簡(jiǎn)便、設(shè)計(jì)容易,以及具有其它系統(tǒng)設(shè)計(jì)方法所沒(méi)有的調(diào)試功能。
大多數(shù)的pld器件具有可編程連接的“與—或”陣列結(jié)構(gòu).可編程陣列意味著其連接 可由用戶(hù)通過(guò)編程來(lái)決定 。
pld器件的分類(lèi)取決于其“陣列”是可編程的還是固定的。
prom:固定的’與’陣列和可編程的‘或’陣列,通常用作為存儲(chǔ)器,而很少用于 實(shí)現(xiàn)邏輯功能 ;
fpal:“與”陣列和“或”陣列均可編程,使設(shè)計(jì)最富于靈活性;
最流行的pal:可編程的‘與’陣列和固定的‘或’陣列,它廣泛用于實(shí)現(xiàn)各種各樣的組咸寄存器型邏輯功能 ;
pls(programmable logic sequencer可編程 邏輯定序器):兩個(gè)陣列都可編程,用于專(zhuān)門(mén)的狀態(tài)機(jī)應(yīng)用場(chǎng)合;
prose(programmable sequencer):將可編程陣列與專(zhuān)用的邏輯功能結(jié)合起來(lái),為特定的系統(tǒng)應(yīng)用提供最佳性能,
gal:每個(gè)輸出引腳都連到一個(gè)輸出邏輯宏單元(olmc),大大改善了輸出功能的結(jié)構(gòu)和靈活性。
可編程邏輯器件的選擇
不同的生產(chǎn)工藝給pld器件提供了眾多的設(shè)計(jì)選擇方案:
從可編程陣列的“連接線”
熔絲型:(ecl、ttl雙極型工藝
uv-eprom(cmos工藝)
e2prom (cmos工藝)
ram細(xì)胞單元 (cmos ram工藝
從運(yùn)行速度上
ecl工藝的pld器件用于高速運(yùn)行電路的設(shè)計(jì)
cmos用于低功耗電路的設(shè)計(jì)
ttl熔絲型pld器件用于中檔設(shè)計(jì)
工藝的選擇主要取決于速度和功耗條件的限制
pld設(shè)計(jì)所需的條件
設(shè)計(jì)軟件(palasm)
器件編程器
軟件設(shè)計(jì)過(guò)程:
建立設(shè)計(jì)文件;
定義所需的邏輯功能并用“積之和”表示,可從真值表或時(shí)序圖直接導(dǎo)出,也可運(yùn)用狀態(tài)圖和卡諾圖導(dǎo)出;
匯編設(shè)計(jì)文件,產(chǎn)生jedec文件
仿真、測(cè)試
將jedec文件下載到所選器件中,對(duì)器件的每一條連線編程。
將已編程的器件插到印制板中投入運(yùn)行。
由于編程器與pc機(jī)相連,從設(shè)計(jì)文件的編輯、匯編、仿真、下載以及對(duì)器件的編程全部在pc機(jī)上完成。
pld器件的設(shè)計(jì)過(guò)程
第一步是設(shè)構(gòu)思;
第二步是選擇合適的器件;
第三步是設(shè)計(jì)的實(shí)施,包括使用測(cè)試向量對(duì)設(shè)計(jì)進(jìn)行仿真;
對(duì)器件進(jìn)行編程;
對(duì)已編程pld進(jìn)行測(cè)試;
并在系統(tǒng)板上驗(yàn)證其功能.
用例子說(shuō)明各設(shè)計(jì)過(guò)程
68000微處理器中的簡(jiǎn)單地址譯碼器
pld器件設(shè)計(jì)過(guò)程的第一價(jià)段是構(gòu)思設(shè)計(jì),對(duì)于ssi/msi設(shè)計(jì)這也是必需的.pld器件的優(yōu)點(diǎn)是在這一階段,設(shè)計(jì)者只需考慮期望的邏輯功能,使用ssi/msi電路進(jìn)行設(shè)計(jì)時(shí),在開(kāi)始設(shè)計(jì)之前必須考慮各種器件的邏輯限制條件。顯然,設(shè)計(jì)師必須根據(jù)系統(tǒng)設(shè)計(jì)的要求提出一個(gè)簡(jiǎn)潔完整的功能描述;
68000微處理器除有單獨(dú)的讀/寫(xiě)信號(hào)線外,還有24條地址線.它需要rom來(lái)存放系統(tǒng)引導(dǎo)代碼, ram來(lái)存放數(shù)據(jù)和運(yùn)行程序。因此,rom和ram在68000微處理器的地址空間里分配地址,即需地址譯碼器。
地址譯碼器的作用是一次選擇一個(gè)存儲(chǔ)地址。地址譯碼器必須選擇一個(gè)rom或ram。當(dāng)微處理器訪問(wèn)地址空間中的一個(gè)地址單元時(shí),通過(guò)將某一特定rom或ram的芯片選擇信號(hào)置為真來(lái)執(zhí)行選擇操作。
在典型的微處理機(jī)系統(tǒng)中,也存在用來(lái)尋址i/o器件的電路(如軟驅(qū)),當(dāng)微處理器尋址這些i/o器件時(shí),同樣對(duì)其發(fā)出片選信號(hào)。
一、設(shè)計(jì)構(gòu)思
m86000; 接口邏輯電路;dram控制電路;prom和dram芯片
地址線:a0-a23;其中a21,a22,a23與地址選通信號(hào)as和讀/寫(xiě)(rw)產(chǎn)生片選控制信號(hào); ramcs片選信號(hào)與a21、a22、a23輸入dram控制器產(chǎn)生ram片選信號(hào)。
17位數(shù)據(jù)線:d0-d16
存儲(chǔ)器地址分配和映射表
prom1
000000-0fffff
prom2
100000-1fffff
dram1
200000-2fffff
dram2
300000-3fffff
dram3
400000-4fffff
dram4
500000-5fffff
備用
600000-7fffff
根據(jù)存儲(chǔ)器的地址分配表和設(shè)計(jì)的功能描述推導(dǎo)出真值表 來(lái)自處理器的信號(hào)輸入到接口邏輯塊,所產(chǎn)生的輸出是romcs1、romcs2 和ramcs片選信號(hào);ramcs片選信號(hào)與a21、a22、a23輸入dram控制器產(chǎn)生ram片選信號(hào)。
地址 (16進(jìn)制)
大小
a23
a22
a21
信號(hào)
000000-0fffff
1 mbytes
0
0
0
romcs1 (低電平有效)
100000-1fffff
1 mbytes
0
0
1
romcs2
200000-2fffff
1 mbytes
0
1
0
romcs3
300000-3fffff
1 mbytes
0
1
1
romcs4
400000-4fffff
1 mbytes
1
0
0
romcs5
500000-5fffff
1 mbytes
1
0
1
romcs26
二、pld器件的選擇
分析設(shè)計(jì)要求,按照是否需要使用寄存器而將其分類(lèi)成組合型功能和寄存器功能
無(wú)需寄存器的邏輯設(shè)計(jì)
編碼器、譯碼器、多路轉(zhuǎn)換器、多路分配譯碼器、加法器和比較器等簡(jiǎn)單的組合邏輯功能塊;
需寄存器的邏輯設(shè)計(jì)
計(jì)數(shù)器、定時(shí)器、控制信號(hào)產(chǎn)生器和狀態(tài)機(jī)等
本例-簡(jiǎn)單地址譯碼器,不需寄存器
了解各種不同結(jié)構(gòu)特征用于何處將有助于器件的選擇.根據(jù)器件使用情況的歷史記載和器件結(jié)構(gòu)的功能特性,pld器件可以分成三個(gè)基本應(yīng)用類(lèi)別,即:
組合型設(shè)計(jì);(pal器件)
簡(jiǎn)單寄存器型設(shè)計(jì);(pal器件和pls 可編程邏輯定序器)
復(fù)雜的寄存器型(定序器)設(shè)計(jì) ;(pal、pls和prose/fpc(熔絲型可編程控制器)
不同的設(shè)計(jì)師,同樣的設(shè)計(jì)可能選擇不同的,本例選擇pal器件。
選擇器件時(shí)應(yīng)考慮的主要功能特性
輸入引腳數(shù)
輸出引腳數(shù)(如pld有內(nèi)部反饋,輸出又可當(dāng)作輸入)
i/o引腳數(shù) (特別適合于涉及總線的應(yīng)用)
器件速度
對(duì)于組合器件,考慮傳輸延遲時(shí)間td
來(lái)對(duì)于寄存器 型器件,考慮器件的時(shí)鐘頻率fmax,, 寄存器建立時(shí)間tpd和時(shí)鐘傳輸時(shí)間tclk
器件功耗
寄存器數(shù)(若有需要的話)
乘積項(xiàng)數(shù)
輸出極性控制
下表分別給出了組合型和寄存器型pld器件,對(duì)于本設(shè)計(jì)實(shí)例,我們挑選pal16l8,它有足夠的輸入輸出端和傳輸速度(延遲時(shí)間為10ns)
組合型pld器件的主要技術(shù)性能指標(biāo)
寄存器型pld器件的主要技術(shù)性能指標(biāo)
系統(tǒng)臨界的時(shí)序限制條件由微處理器的讀/寫(xiě)周期和存儲(chǔ)器可用的存取時(shí)間決定: 存儲(chǔ)器存取時(shí)間2200 ns; 地址譯碼時(shí)間10ns;
大多數(shù)微處理器允許的地址譯碼時(shí)間是10-35ns, 即地址有效之后,正確的存儲(chǔ)器片選信號(hào)應(yīng)當(dāng)有效。
對(duì)于本例,可用周期時(shí)間為10-35ns,存儲(chǔ)器的存取時(shí)間為2200ns, 只有20ns作為地址譯碼時(shí)間。可選pal16l8, tpd =10ns
三、設(shè)計(jì)的實(shí)施
實(shí)施設(shè)計(jì)需要建立設(shè)計(jì)文件,設(shè)計(jì)文件在palasm軟件中稱(chēng)為pal器件說(shuō)明書(shū)(pds:pal device specification), 文件包括三類(lèi)信息:
基本管理記錄信息:
設(shè)計(jì)語(yǔ)法
仿真語(yǔ)法
設(shè)計(jì)文件、文件匯編、仿真、生成jedec文件、下載到器件編程器中構(gòu)造器件
設(shè)計(jì)文件給出了文件編制方面的信息、所選用的器件名稱(chēng)、信號(hào)的名稱(chēng)。
所有的信號(hào)名都分配給器件引腳,并且將引腳定義為輸入或輸出.
設(shè)計(jì)文件的說(shuō)明部分還包括按引腳號(hào)遞增的順序排列的信號(hào)名.如:
title m68000_address_decorder 設(shè)計(jì)的名稱(chēng)
pattern p8000 模式名或編號(hào)
pevision a 版本號(hào)或等級(jí)號(hào)
author engineer 設(shè)計(jì)者姓名
company mmi sunnyvale, california 公司名稱(chēng)
date 07/21/87 建立文件日期
chip decorder (任一名稱(chēng)) pal16l8 (器件型號(hào))
nc a23 a22 a21 top bottom as rw nc gnd (1-20 引腳列表 )
oe roncs1 roncs2 rancs init nc nc nc nc vcc
選擇器件
表達(dá)設(shè)計(jì)的方法
?。紶栠壿嫹匠?br>?。瓲顟B(tài)機(jī)語(yǔ)法
匯編設(shè)計(jì)
仿真設(shè)計(jì)
下載jedec 文件
pld編程