<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è) > 嵌入式系統 > 設計應用 > 用單片機實(shí)現可編程邏輯器件的配置

用單片機實(shí)現可編程邏輯器件的配置

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

基于的復雜快速方法

本文引用地址:http://dyxdggzs.com/article/171835.htm

基于SRAM(靜態(tài)隨機存儲器)的可重PLD()的出現,為系統設計者動(dòng)態(tài)改變運行電路中PLD的功能創(chuàng )造了條件。PLD使用SRAM單元來(lái)保存數據。這些配置數據決定了PLD內部的互連關(guān)系和邏輯功能,改變這些數據,也就改變了的邏輯功能。由于SRAM的數據是易失的,因此這些數據必須保存在PLD器件以外的EPROM、EEPROM或FLASH ROM等非易失存儲器內,以便使系統在適當的時(shí)候將其下載到PLD的SRAM單元中,從而在電路可重配置ICR(In-Circuit Reconfigurability)。

本文介紹筆者設計的PLD ICR控制電路,它不但線(xiàn)路結構簡(jiǎn)潔、開(kāi)發(fā)容易、體積小、成本低,并且在圖2介紹的ICR控制電路中,其存儲PLD配置數據的FLASH存儲器采用并行總線(xiàn),交換速度較快。然而PLD配置數據較大,通常都在數十千字節以上。如何提高圖2介紹的ICR控制電路的配置速度,使系統上電后的最短的時(shí)間內完成配置而進(jìn)入正常工作狀態(tài),軟件設計上的一個(gè)重點(diǎn)。

34.gif

1 基于SRAM的可重配置CPLD的結構與原理

早期的邏輯器件大多采用紫外線(xiàn)可擦除只讀存儲器(EPROM)和電可擦除只讀存儲器(EEPROM)方式。如GAL系列、EPF7064、EPF7128等。由于其結構簡(jiǎn)單、規模小,只能完成簡(jiǎn)單數字邏輯功能。此后,出現了一類(lèi)結構上稍復雜的基于SRAM存儲器的可編程芯片,即復雜可編程邏輯器件(CPLD),它能完成各種數字邏輯功能。

采用這些結構的可編程邏輯器件有ALTERA公司的FLEX、ACEX、APEX系列,XILINX公司的Spartan、Virtex系列。多年來(lái),ALTERA公司一直致力于CPLD的開(kāi)發(fā)。近幾年,該公司又推出了很有競爭力的CPLD器件,即靈活的邏輯單元陣列的FLEX(Flexible Logic Element Matrix)系列產(chǎn)品。相對于其它一些廠(chǎng)家的FPGA產(chǎn)品來(lái)說(shuō),ALTERA公司的FLEX系列產(chǎn)品有其獨特之處。這主要表現在高密度、在線(xiàn)配置功能、高速度和連續式布線(xiàn)結構等方面。

查找表LUT(Look-Up-Table)是基于SRAM的可重配置PLD的一個(gè)重要組成部分,LUT本質(zhì)上就是一個(gè)RAM。目前CPLD中多使用4輸入的LUT,所以每一個(gè)LUT可以看成個(gè)有4位地址線(xiàn)的16×1bit的RAM。當用戶(hù)通過(guò)GDF原理圖或VHDL語(yǔ)言描述了一個(gè)邏輯電路后,CPLD開(kāi)發(fā)軟件會(huì )自動(dòng)計算邏輯電路的所有可能結果,并把結果事先存入查找表。這樣,當多信信號進(jìn)行邏輯運算時(shí)就等于輸入一個(gè)地址進(jìn)行查表,找出地址所對應的內容,然后將其輸出即可。

35.gif

2 可編程邏輯器件的配置原理

首先在開(kāi)發(fā)軟件MAX+PLUS II的ASSIGN菜單下選擇將要采用的基于SRAM的器件名稱(chēng)。經(jīng)過(guò)編譯、優(yōu)化、邏輯綜合、仿真等步驟達到設計要求后,軟件會(huì )自動(dòng)產(chǎn)生一個(gè)編程文件(擴展名為.SOF文件)。對于基于SRAM工藝的可編程邏輯器件(如ALTERA的所有FLEX、ACEX、APEX系列,XILINX的Sparten、Vertex系列),由于SRAM存儲器的特點(diǎn),掉電后數據會(huì )消失,因此在調試期間可以采用并口ByteblasteMV下載電纜多次重復配置PLD器件。當電路設計成功,調試完成后,需要將配置數據燒寫(xiě)固化在一個(gè)由ALTERA生產(chǎn)的專(zhuān)用EEPROM(如EPC1441)中。上電時(shí),由這片配置EEPROM先對PLD加載數據,幾十毫秒后,PLD即可正常工作。

CPLD器件的工作狀態(tài)分為三種:首先是上電配置狀態(tài)(Configuration Mode),將編程的數據裝入CPLD器件的過(guò)程,也可稱(chēng)之為構造;然后是初始化狀態(tài)(Initialization Mode),在配置完成后,CPLD器件復位內部各類(lèi)寄存器,讓I/O引腳為邏輯器件正常工作做準備;最后是用戶(hù)狀態(tài)(User Mode),指電路中CPLD器件正常工作時(shí)的狀態(tài)。

ALTERA公司具有ICR功能的PLD器件有FLEX8000、FLEX10K、APEX和ACEX系列,它們的配置方式可分為PS、PPS和JTAG(Joint Test Action Group)等方式。PS方式因PLD與配置電路的互連最簡(jiǎn)單,對配置時(shí)鐘的最小頻率沒(méi)有限制而應用最廣泛,因此在ICR控制電路中通常采用PS配置方式來(lái)ICR功能。

被動(dòng)串行(PS)配置方式:在該配置方式下,由ByteblasteMV下載電纜產(chǎn)生一個(gè)由低到高的跳變送到nCONFIG引腳腳復位PLD,然后將配置數據送到DATA0引腳,直到CONF_DONE引腳變?yōu)楦唠娖?。圖1是PS配置方式的時(shí)序圖。CONF_DONE變成高電平后,DCLK必須多余十個(gè)周期來(lái)初始化該器件。器件的初始化由下載電纜自動(dòng)執行。在PS方式中沒(méi)有握手信號,所以配置時(shí)鐘的工作頻率必須低于10MHz。在多器件PS配置方式中,第一片PLD的nCEO引腳級聯(lián)到下一片PLD的nCE引腳。在配置完第一個(gè)器件后,nCEO輸出為低,使第二個(gè)PLD器件的nCE有效,開(kāi)始對第二塊器件進(jìn)行配置。


上一頁(yè) 1 2 3 4 下一頁(yè)

評論


相關(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>