




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、低密度pld gal通用邏輯陣列 編程軟件wincupl簡介cupl語言是可以在windows環境上開發gal系列pld的編譯環境。wincupl這種編譯環境由atmel 公司出品,是免費下載軟件,用於pld器件的編程,支持多種器件,包括gal系列和atf系列。可以擦 寫100次,甚至更多次。一、cupl的保留字cuple的保留字包括以下的字串:appendformatoutassemblyfunctionpartnoassyfusepincompanygrouppinnnode conditionifpresentdatejumprevdefaultlocrevisiondesignerlo
2、cationsequencedevicemacrosequencedelseminsequencejkfieldnamesequencerseldnodeseqlencet這些字串是不能被用作其它的用途的。尤其是不能被當作標號使用。cupl語言有一些運算符,包括:&#! $()+ * /;"" ,/*/&與#或 !非$異或()括號+加 -減*乘/除二;分號 /*/注釋cupl語言的用法,在該文件中/*下面是一個門電路的例子,通過這個例子我們可以學到基本的 */之間的為注釋。namepartnodatedesignetcompanylocationassemb
3、ly/*這是i個表示gates;ca0001; 07/16/87;g woolheiser;ati;san jose, ca.; example;cupl語言基本用法的例子pin1=a;/*引腳1:輸入端,定義名稱是a名稱可由用戶定*/pin2=b;/*引腳2:輸入端,左義名稱是b名稱可由用戶定*/pin3二 sb;/*引腳3:輸入端,定義名稱是sb名稱可由用戶定*/pin4二 fr;/*引腳4:輸入端,定義名稱是fr名稱可由用戶定*/pin5=sq;/*引腳5:輸入端,定義名稱是sq名稱可由用戶定*/pin6=a0;/*引腳6:輸入端,左義名稱是a0名稱可山用戶立*/pin7=a1;/*引腳
4、7:輸入端,定義名稱是a1名稱可由用戶定*/pin8二 a2;/*引腳&輸入端,泄義名稱是a2名稱可由用戶定*/pin9= 1xk;/*引腳9:輸入端,泄義名稱是1xk名稱可由用戶定*/pin111 =2xk;/*引腳11:輸入端,泄義名稱是2xk名稱可由用戶定*/說明1:在g16v8a中,有10個輸入端。其中第1腳对作為時鐘輸入,第11腳可作為片選端。第10腳是*/接地,第20腳是電源。/*非門*/pin13 :invbpin14 =andpin15 =nan clpin16 二=orpin 12 = inva/*非門*/*與門*/*與非門*/*或門*/pin 17=nor/*或非門
5、*/pin 18=xor/*異或門*/pin 19=xnor/*同或門*/*邏輯實現部分:演示如何利用cupl實現基本門電路*/inva =!a;/*反相器*/invb =!b;/*反相器*/and 二;a & b;/*與門*/nand =! (a & b);/*與非門*/or二 a # b;/*或門*/nor 二=! (a # b)/*或非門*/xor:a $ b;/*異或門*/xnor =! (a $ b);/*同或門*/通過上面例子的學習,我們應該對cupl語言有了初步的了解。wincup 1不但可以編譯該文件,生成jed的熔絲文件,還可以對該文件進行波形仿真。在做小規
6、模的pld設計的時候,使用gal系列或者atf系列的pld比較方便、便宜。wincupl文件的基本格式在編寫cupl語言源文件需要遵守一定的格式,源文件由頭部說明、輸入引腳說明、輸出引腳滾明和邏輯 實現4部分組成,缺一不可。一、頭部說明頭部說明一般包括以下部分:name waitgen ;partno p9000183 ;revision 02 ;date 1/11/89 ;designet osann ;company logical devices, inc.;assembly pc memory board ;location u106 ;device f155;format ij ;n
7、ame關鍵字用來說明邏輯文件的文件名,默認的擴展名是pld,因此可以不寫擴展名。partno關鍵字用來說明對特定的pld器件對應的某個公司的部件號。如果不知道,可以不要這個部分。revisiondatedesignercompanyassemblylocation設計公司設計該源文件的版本號。可以不填,可以沒有 設計日期,可以不填,可以沒有設計者的名稱,可以不填,可以沒有設計者所在公司名稱,可以不填,可以沒有本設計用於pc機板卡時的名稱,可以沒有 本設計用於pc機板卡時所在的位置,可以沒有device必填字段,用來選擇本設計所用的具體pld器件型號,format用來指立本文件編譯後產生的燒寫芯
8、片文件的種類。h表示產生hex格式的ascii碼文件,i表示hl格式的文件,j表示產生jedec格式的文件。二、引腳說明在pld源文件中,所用的輸入輸岀引腳都必須說明後才能使用,因此,可以象下而格式一樣說明引腳:ptn pin_n=!var ;pin是關鍵字,pin是引腳號碼,var是引腳定義的名字,該名字用在後面的邏輯實現中。!是 可選的,用來說明引腳的極性,如果沒有!,輸入是什麼就是什麼,為同相,如果有!,就表示輸入後信號 反相。下而是一個實際的例子:pin 2 = !a;pin 3 = !b;pin 16 = y;y = a & b;/*邏輯實現部分*/當然,如果有一系列的引腳需
9、要說明,這些引腳又是連續的,可以用符號來說明,比如pin26 = a1.5;就表示引腳2到6用al到a5來表示,比較方便。三、邏輯實現部分邏輯實現部分用來實現引腳z間的邏輯關系。它主要靠一些邏輯操作符來實現引腳z間的關系。這 些邏輯關系包括:邏輯符號例子關系 操作優先級! a not 1& a & b and 2# a # b or 3$a$ b xor4!表示非,&表示與,#表示或,$表示異或,異或的操作優先級最低,非的優先級最高。接下來我們學習如何使用這個軟件。1、啟動wincuplo如圖:啟動界面2、啟動完進入主界面後,單撃file菜單的new,從new中單撃pr
10、o jet,就是新建一個工程文件(其實 還是pld文件),在彈出的對話框中,“name”(源文件名稱),填入“name",其它包括“date”(創建時 間、“designer”(設計者名稱)、“company”(公司名稱)等根據需要進行填寫。這裏有個特殊的地方, 就是“device”(器件名稱),系統默認的是virtual,就是不針對任何具體的部件,這裏我們改掉,改成g16v8a,這個關鍵字兼atf16v8o如圖所示;1173711ft(yclx_oe2 3 4 5 6 7 8以76543210 o10ddqddd15頭文件信息3、單擊0k後,系統要你輸入你要用的輸入引腳數,如圖,單
11、擊【確定】按鈕。填寫輸入引腳數3、系統要你輸入要用到的輸出引腳數,如圖,單擊【確定】按釦。填寫輸出引腳數4、系統要你輸入要使用到的中間節點數,我們不需要,填0,單擊0k按鈕。這樣系統就建立了一個pld文件,文件名就是name. pldo系統將該文件顯示出來了,就象下血這樣: namename ;partno00 ;date2009-8-11 ;revisiondesigner companyassemblylocation01 ;engineer cjy ;none ;device g16v8a ;/* *input pins*pin=pin=pin=i * * outputpins *pin
12、pin;/*;/*例題:兩輸入端與門具髏步驟是:1、啟動wincupl。啟動完進入主界面後,單擊file菜單的new,從new中單擊projet,就是新建一個工 程文件(其實還是pld文件),在彈出的對話框中,可以填您的源文件名字(name)o器件(device),系 統默認的是virtual,就是不針對任何具體的部件,這裏我們改掉,改成gl6v8a,這個關鍵字兼容atf16v8。2、單擊0k後,系統要你輸入你要用的輸入引腳數,因為我們只有兩個輸入端,因此填2,單擊0k按鈕。3、系統要你輸入要用到的輸出引腳數,填1,單擊0k按鈕。4、系統要你輸入要使用到的中間節點數,我們不需要,填0,單擊0k
13、按鈕。這樣系統就建立了一個pld 文件,文件名就是name. pldo系統將該文件顯示出來了,就彖下面這様:namename ;partno 00 ;date2006-8-9 ;revision 01 ;designer wuj1an ;company tale ;assembly none ;location ;device gl6v8a ;/* * input pins */pin=*/*/*pin=/*/* * output ptns */pin/*/因此,這個文件是空的,我們填一下,將輸入輸出引腳都填好,把邏輯也寫完,就象下面這樣:namepartnodatename ;00 ;200
14、6-8-9 ;revision 01designer wujian ;company tale ;assembly none ;location ;device gl6v8a ;/* * input pins */pin2=a/*/pin3=b/*/ /output pins */ptn12=y/*/y = a & b寫好後,我們需要編譯該文件。在run菜單中,單擊device dependent comp订e,就是基於器件 型號的編譯。如果沒有出現什麼鍵入錯誤,都能成功編譯。在proteus中仿真如果我們需要驗證pld器件與其它器件聯合工作的情況呢?那就需要利用另一個著名的仿真軟件p
15、roteus 軟件自帶pld庫進行了。在proteus中,pld器件所需要載入的文件是jed ”文件(就像仿真單片機所需要.hex文件一樣)。 載入“.jed ”文件:就像載入單片機“hex”文件一樣(如果熟悉proteus操作的可按照自己的方法載入文件),將鼠標 放在u1上,右擊,然後左擊,在“jedec fuse map f订e:”處,如圖7(a),找到我們剛剛保存源文件的 地方,選擇“encoder, jed”文件,然後打開,如圖7(b),最後點擊“0k”,如 圖8(c)。裝好proteus7. 1後,在元件庫的pld/fpga項日中選擇am16v8,其實就是gal16v8,將英放到原理
16、圖上, 然後拖電阻和開關到原理圖上,再拖個發光管到電路上。將其連好,如下圖所示。在原理圖的am16v8上,選中它,然後在上面單擊鼠標左鍵,在彈出的對話框的jedec fuse map file欄中單擊右側的瀏覽圖標,裝入name. jed文件即可。單擊0k按鈕關閉該對話框。練習題練習題:點動控制電路 一、接觸一繼電線路圖:二、程序namepartnodaterevi siondesignercompanyassemblylocaliondevice1dd ;00 ;2009-7-26 ;01 ;engineer ;nbbao ;none ;gl6v8a ;/* * inputpinpins *
17、/2 = sb; /*/* * output pins */pin 18 = km;/*/*/km=sb三、仿真圖練習題:自鎖控制電路一、接觸一繼電線路圖:二、程序name3zs ;partno00 ;date2009-7-26revision01 ;designerengineer ;companynbbao ;assemblynone ;locationdevicegl6v8a ;/* * input ptns */pin 2=sb1;/*/pin 3=sb2;/*停止按鈕用常閉*/f aoutput pins */pin 18 二kmfkm=(sb1#km)&sb2 ;/*停止按
18、鈕用常閉*/三、仿真圖練習題:點動與連續控制電路qsp3点动与连续控制电路力frlpkm0練習題:雙重聯鎖止反轉電路控制電路一、接觸一繼電線路圖:二、程序/* * input pins */pin 2= er*/ptn 3= sb3;/*/pin 4= sb1;/*/pin 5= sb2;/*/faoutput pi's */pin 17= km1;/*/pin 18= km2;/*/km1二!km2&!sb2&(sb1#km1)&sb3&frkm2=!km1&!sb1&(sb2#km2)&sb3&fr三、仿真圖y-112
19、m-44kw38)v 8.8a1460raiin練習題:2臺水泵電機控制電路2臺水泵抽水,是向水池外面抽水,而不是向內供水。工藝要求:(1)、當水池內水位升高到第一高度時,作為主泵運行的電動機啟動,第一臺水泵工作向外抽水。若水位繼續上升到第二高度時,作為備用泵的運行電動機啟動,笫二臺水泵工作向外抽水。 當水位到最低水位後自動停機。(2)、两臺電動機運行狀態(主電機和備用電機)能自動轉換,要求其每次運行後,輪換改作主泵運行 一次。第渤立第一枷木也li l2 l3li l2 l3-、接觸一繼電線路圖: ui、m 叫1.3 2號韧机2臺水泵抽水,是向水池外血抽水,而不是向內供水。 工藝要求:(1)、
20、當水池內水位升高到第一高度時,作為主泵運行的電動機啟動,第一臺水泵工作向外抽水。 若水位繼續上升到第二高度時,作為備用泵的運行電動機啟動,第二臺水泵工作向外抽水。 當水位到最低水位後自動停機。(2)、兩臺電動機運行狀態(主電機和備用電機)能自動轉換,要求其每次運行後,輪換改作主泵運行 一次。(3)、具有手動操作開關,單獨控制泵1和泵2工作。(4)、7“也动轮流切换: 1k1-0ff1k2、1k3、1k4-0i1 号泵e作: 1k1、1k2、1k4-0ff;1k3-0n2 号泵12作:1k3-0ff 1k1、1k2、1k4-0nkm21 号泵:2k1qq qqq qqqgoolmb (32比虫匕血段h:s婪介轶:_-no:t“zmd:>:sb ddlobexu - - - notemb .u:-:fe:qyh 二型二二¥ . . nq3:t:2:二八旦rddoer 0 皿xlu1x-ix41x-ix3
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 电信服务在旅游行业的推广考核试卷
- 2024年色酚类投资申请报告代可行性研究报告
- 景观设计专利技术与实施合同
- 电商平台数据分析与用户增长策略合同
- 生物制药纯化技术授权与全球市场销售合同
- 高级管理人员离职竞业限制服务协议
- 汽车零部件质量争议高效调解合同
- 施工现场安全责任保证与质量监督协议
- 质量责任保险补充协议
- 房产抵押债务处理与房产权属登记协议
- 除草剂的类群及作用机理
- 暴雨天气注意安全课件
- 供电公司隐患排查总结报告
- 感染性角膜病临床诊疗专家共识课件
- 商业银行业务与经营练习题
- 系统云迁移方案
- 2024年江铜集团招聘笔试参考题库含答案解析
- 质检员土建施工培训课件
- 大熊猫调查表格三年级下册
- 愚公移山英文 -中国故事英文版课件
- CISP-PTE认证培训考试复习题库(附答案)
评论
0/150
提交评论