<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > EDA/PCB > 設計應用 > CPLD通用寫(xiě)入器設計與開(kāi)發(fā)

CPLD通用寫(xiě)入器設計與開(kāi)發(fā)

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

摘要:可編程邏輯器件(ProgrammableLogicDevice,簡(jiǎn)稱(chēng)PLD)是20世紀70年代發(fā)展起來(lái)的一種新型邏輯器件,它是現代數字電子系統向超高集成度、超低功耗、超小型封裝和專(zhuān)用化方向發(fā)展的重要基礎。它的應用和發(fā)展不僅簡(jiǎn)化了電路設計,降低了成本,提高了系統的可靠性和保密性,而且給數字系統的設計方法帶來(lái)了革命性的變化。(ComplexProgrammableLogicDevice),即復雜可編程邏輯器件,它是20世紀90年代初期出現的EPLD改進(jìn)器件。同EPLD相比,增加了內部連線(xiàn),對邏輯宏單元和I/O單元也有重大的改進(jìn)。Xilinx是世界上最大的可編程邏輯器件供應商之一,FPGA的發(fā)明者。產(chǎn)品種類(lèi)較全,主要有:XC9500/4000,Coolrunner(XPLA3),Spartan,Vertex。在本文中,我們將通過(guò)對的發(fā)展、結構、應用和設計等方面的認知,了解CPLD的基本原理,并設計出CPLD脫機編程的電路圖。
關(guān)鍵詞:復雜可編程邏輯器件CPLD(ComplexProgrammableLogicDevice),現場(chǎng)可編程邏輯陣列器件FPGA(FieldProgrammableLogicArray),電子設計自動(dòng)化EDA(ElectronicDesignAutomation),硬件描述語(yǔ)言HDL(HardwareDescriptionLanguage)。

一.CPLD及其功能
可編程邏輯器件包括現場(chǎng)可編程門(mén)陣列FPGA(FiledProgrammableGateArray)和復雜可編程邏輯器件CPLD(ComplexProgrammableLogicDevic)這兩種類(lèi)型。
具有固定數目輸入和輸出的任何組合邏輯函數可以在可編程只讀存儲器PROM中以輸出為輸入的查找表方式來(lái)實(shí)現,許多實(shí)現組合邏輯的結構變型已從這一簡(jiǎn)單的概念引申出來(lái),而利用VLSI的密度產(chǎn)生更通用的能實(shí)現PCB板上幾個(gè)簡(jiǎn)單PAL互連功能的器件是PAL/PROM這類(lèi)范例的擴展,稱(chēng)為PAL構造的PLD,即復雜可編程邏輯器件――CPLD。
CPLD所提供的邏輯資源比較少,最高約一萬(wàn)門(mén)。但是,CPLD提供了以下特殊功能:
1.CPLD在設計過(guò)程中為客戶(hù)提供了更大的靈活性,因為對于CPLD來(lái)說(shuō),設計反復只需要改變編程文件就可以了,而且設計改變的結果可立即在工作器件中看到。CPLD不需要漫長(cháng)的前置時(shí)間來(lái)制造原型或正式產(chǎn)品,CPLD器件已經(jīng)放在分銷(xiāo)商的貨架上并可隨時(shí)付運;
2.CPLD不需要客戶(hù)支付高昂的NRE成本和購買(mǎi)昂貴的掩膜組,因為CPLD供應商在設計其可編程器件時(shí)已經(jīng)支付了這些成本,并且可通過(guò)PLD產(chǎn)品線(xiàn)延續多年的生命期來(lái)分攤這些成本;
3.CPLD允許客戶(hù)在需要時(shí)訂購所需要的數量,從而使客戶(hù)可控制庫存。采用固定邏輯器件的客戶(hù)經(jīng)常會(huì )面臨需要廢棄的過(guò)量庫存,而當對其產(chǎn)品的需求高漲時(shí),他們有可能為器件供貨不足所苦,并且不得不面對生產(chǎn)延遲的現實(shí);
4.CPLD甚至在設備付運到客戶(hù)那兒以后還可以重新編程。正是由于有了可編程邏輯器件,一些設備制造商現在正在嘗試為已經(jīng)安裝在現場(chǎng)的產(chǎn)品增加新功能或者進(jìn)行升級。

二.Xilinx公司的XC9500系列可編程邏輯器件
近年來(lái),可編程邏輯器件在高密度、高速度、低功耗等方面發(fā)展很快。在CPLD方面,Xilinx公司推出了高性能、低成本的XC9500[tm]系列,以及在單個(gè)器件內結合了極低功耗和高速度、高密度和多I/O引腳特點(diǎn)的CoolRunner[tm]系列。此系列CPLD器件需要的功耗極低,并且價(jià)格低廉,從而使其對于成本敏感的、電池供電的便攜式設備(如移動(dòng)電話(huà)和數字手持助理)非常理想。
XC9500系列CPLD器件是Xilinx公司具有代表性的產(chǎn)品,圖1為XC9500系列芯片的外觀(guān)圖:



圖1XC9500系列芯片的外觀(guān)圖

三.CPLD的設計與開(kāi)發(fā)
XC9500系列可編程邏輯器件的內部結構以及時(shí)序問(wèn)題就不一一介紹了,我們下面所關(guān)心的是CPLD的設計與開(kāi)發(fā)。
CPLD器件的設計一般可以分為設計輸入、設計實(shí)現、設計仿真和下載編程4個(gè)步驟:
1.設計輸入
設計輸入就是將設計者所設計的電路以開(kāi)發(fā)軟件要求的某種形式表達出來(lái),并輸入到相應的軟件中。
2.設計實(shí)現
在設計輸入之后,實(shí)現工具把邏輯映射到目標器件結構的資源中,決定邏輯的最佳布局,選擇邏輯與I/O功能塊連接的布線(xiàn)通道。Xilinx設計實(shí)現工具以極高自動(dòng)化程度完成這些任務(wù),設計編譯實(shí)用程序自動(dòng)地恢復所有的輸入文件,執行所有必要的步驟來(lái)產(chǎn)生CPLD的配置程序。
3.設計仿真
這一部分的最大功能是便于用戶(hù)查看自己的設計思想是否得到實(shí)現。我們可以在設計的過(guò)程中對整個(gè)系統乃至各個(gè)模塊進(jìn)行仿真,如果有問(wèn)題,可以很方便地修改錯誤,而不必在硬件上動(dòng)手腳。仿真不消耗資源,不浪費時(shí)間,實(shí)乃可編程邏輯器件設計與開(kāi)發(fā)精髓之所在。
4.下載編程
下載編程一塊是將設計階段生成的JEDEC文件裝入到可編程器件中,是本文的重點(diǎn)。器件編程需要滿(mǎn)足一定的條件,如編程電壓、編程時(shí)序和編程算法等。普通的CPLD器件需要一種編程專(zhuān)用設備(編程器)完成器件編程。
Xilinx商提供基于IEEE1149.1,JTAG協(xié)議(JTAGBoundaryScan)的CPLD編程。它由DSUB
―25接口和下載電纜組成,被開(kāi)發(fā)的CPLD必須在開(kāi)發(fā)基板上進(jìn)行編程,板上就必須留有JTAG使用的接口(TMS,TCK,TDI和TDO信號線(xiàn)等)。這樣的好處是我們能夠實(shí)機調試。
除Xilinx的實(shí)機編程器外,還可設計脫機CPLD編程(電路如圖2),它能對CPLD進(jìn)行編程寫(xiě)入,而不需要開(kāi)發(fā)實(shí)物基板,實(shí)物基板設計時(shí)就不需要留有JTAG接口。這樣能節約基板,減少產(chǎn)品體積。圖2的設計電路有以下幾個(gè)主要的部件:
1.并行接口
在圖2中,我們可以看到一個(gè)Parallel并行接口,用它經(jīng)過(guò)數據線(xiàn)和計算機連接。其實(shí)在這里,我們



圖2CPLD編程寫(xiě)入器總電原理圖

圖3Parallel并行接口圖
也可以使用其它接口,例如Multilinx/Serial串行接口,以及Multilinx/USB接口等。這里使用的端口也是我們經(jīng)常用于連接本地打印機的接口。該接口是具有25Pin的接口,它的各Pin端口的信號如圖3所示。
2.Bus/Buffer電路
JTAG的信號,如TMS,TCK,TDI和TDO均需要設置Bus/Buffer電路。該Buffer電路采用了三態(tài)電路,這樣的設計使得CPLD寫(xiě)入器對計算機的并行接口無(wú)不良影響,僅在需要對CPLD寫(xiě)入器進(jìn)行數據輸入輸出時(shí)才動(dòng)作。在不輸入輸出信號數據時(shí)它處于高阻狀態(tài),在需輸入輸出數據時(shí)才處于低阻狀態(tài),保
證對CPLD寫(xiě)入,讀出所需電流。Bus/Buffer電路如圖4所示:



圖4Bus/Buffer電路

圖5LED表示電路
3.LED表示電路
在CPLD編程寫(xiě)入器電路設計中還設計有各種LED表示電路。如設置有綠色LED來(lái)表示電源輸出情況,紅色LED在TDI信號為L(cháng)低電平時(shí)點(diǎn)燈。在紅色LED點(diǎn)滅時(shí)表示傳送數據中,此時(shí)不能關(guān)機或拔連接電纜。LED表示電路如圖5所示。
4.Device切換電路
對不同的CPLD芯片(如PC84,PC44等)進(jìn)行編程寫(xiě)入,它的選擇由旋轉切換開(kāi)關(guān)來(lái)完成,由于篇幅的關(guān)系就不給出了。

基金資助:本文由江蘇省高校自然科學(xué)研究指導性計劃項目資助,編號:05KJD510122
本文作者創(chuàng )新點(diǎn)及其經(jīng)濟效益:設計出CPLD脫機編程寫(xiě)入器,對CPLD進(jìn)行編程寫(xiě)入,而不需要開(kāi)發(fā)實(shí)物基板,實(shí)物基板設計時(shí)就不需要留有JTAG接口。這樣能節約基板,減少產(chǎn)品體積。
周杰導師評論:該同學(xué)在書(shū)寫(xiě)這篇文章的過(guò)程中,閱讀大量有關(guān)書(shū)籍,通過(guò)對CPLD的發(fā)展、結構、應用和設計等方面的認知,了解CPLD的基本原理,并設計出了CPLD脫機編程寫(xiě)入器的電路圖,有一定的創(chuàng )新思想和經(jīng)濟價(jià)值。

參考文獻:
[1]付慧生.《復雜可編程邏輯器件與應用設計》.中國礦業(yè)大學(xué)出版社,2003.8.TP332.1
[2]王道憲.《CPLD/FPGA可編程邏輯器件應用與開(kāi)發(fā)》.國防工業(yè)出版社,2004.1.TP332.1
[3]孫航.《Xilinx可編程邏輯器件的高級應用與設計技巧》.電子工業(yè)出版社,2004.8.TP332.1
[4]趙妍肖冬榮.《幾種網(wǎng)絡(luò )控制系統的比較及典型應用》.微計算機信息.2006.(4-1):P40-42.



關(guān)鍵詞: CPLD 寫(xiě)入器

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>