基于SRAM的可重配置電路
出處:hq_y 發(fā)布于:2008-04-11 10:40:44
基于SRAM的可重配置PLD(可編程邏輯器件)的出現(xiàn),為系統(tǒng)設(shè)計(jì)者動(dòng)態(tài)改變運(yùn)行電路中PLD的邏輯功能創(chuàng)造了條件。PLD使用SRAM單元來保存字的配置數(shù)據(jù)決定了PLD內(nèi)部互連和功能,改變這些數(shù)據(jù),也就改變了器件的邏輯功能。由于SRAM的數(shù)據(jù)是易失的,因此這些數(shù)據(jù)必須保存在PLD器件以外的EPROM,EEPROM或FLASH ROM等非易失存儲(chǔ)器內(nèi),以便系統(tǒng)在適當(dāng)?shù)臅r(shí)候?qū)⑵涞絇LD中,從而實(shí)現(xiàn)在電路可重配置ICR(In-Circuit Reconfigurability,在電路可重配置)。 如何實(shí)現(xiàn)ICR?ALTER公司的應(yīng)用方案AN88中詳細(xì)介紹一種基于DS87C520微控制器的ISP&ICR設(shè)計(jì)方法,并鈄其源代碼放在ALTERA的網(wǎng)上,供用戶。
作者在設(shè)計(jì)一要求具有ICR功能的電子裝置時(shí),在詳細(xì)分析了AN88介紹的方法之后,發(fā)現(xiàn)該應(yīng)用方案中介紹的電路結(jié)構(gòu)復(fù)雜,對(duì)微控制器性能及微控制器的開發(fā)裝置的要求和成本都較高,且只適用于工作電壓為5V的PLD電路。本文介紹的是作者設(shè)計(jì)的PLD ICR控制電路,它和ALTERA介紹的方法相比,不但線路結(jié)構(gòu)簡潔、開發(fā)容易、體積小、成本低,而且只需改變ICR控制電路的電源電壓,就能實(shí)現(xiàn)工作電壓為3.3V或5V的PLD器件的電路內(nèi)重配置。
ICR控制電路硬件原理
ICR控制電路原理圖。U1是ICR控制電路的器件,它是PHILIPS公司在1999年底推出的20引腳低成本的微控制器P87LPC762,該微控制器具有2K字節(jié)的程序存儲(chǔ)器、128字節(jié)的RAM、18/15個(gè)I/O、WATCHDOG、通用串行接口UART和一個(gè)硬件I2C總線控制器。P87LPC762采用的是80C51加速處理器結(jié)構(gòu),其指令和80C51兼容,但指令的執(zhí)行速度在相同時(shí)鐘下,是標(biāo)準(zhǔn)80C51微控制器的兩倍。因它采用的是硬件I2C總線控制器節(jié)省大量的軟硬件資源。U2、U3是ATMEL公司的串行EEPROM AT24C256,其串行通信協(xié)議為I2C,容量為32K字節(jié)。在電路中,U2和U3有來存儲(chǔ)PLD的配置數(shù)據(jù)。 ICR控制電路的工作過程為:經(jīng)MAXPLUS Ⅱ編譯生產(chǎn)的PLD配置文件經(jīng)過預(yù)處理后,通過PC機(jī)的串行通訊口到U1中,并在U1的控制下存儲(chǔ)在EEPROM U2和U3中,U1再根據(jù)系統(tǒng)的要求通過P0.2、P0.3、P0.4、P0.6和P0.7等5個(gè)I/O口,將其存儲(chǔ)在U2和U3中的PLD配置數(shù)據(jù)到電路中的PLD。 因作者設(shè)計(jì)電路中的PLD是ALTERA公司的ACEX系列的EP1K30,其配置文件的容量為52K字節(jié),故電路中采用了兩片AT24C256存儲(chǔ)PLD的配置數(shù)據(jù)。如果配置的PLD是EPF10K10或EPF10K20,則只需要一片AT24C256,此時(shí)整個(gè)ICR控制電路僅僅只有兩片IC,這可以說它是目前結(jié)構(gòu)簡單、成本的ICR控制電路了。讀者在應(yīng)用該電路時(shí),可根據(jù)其PLD文件的大?。≒LD的配置文件的大小可參考ALTERR公司的應(yīng)用方案AN116)采用1~4片AT24C256。
ICR控制電路軟件設(shè)計(jì)要點(diǎn) 在圖1介紹的ICR控制電路中,其存儲(chǔ)PLD配置數(shù)據(jù)的EEPROM AT24C256采用I2C串行總線進(jìn)行數(shù)據(jù)交換,其數(shù)據(jù)交換速度較慢(當(dāng)工作電壓為5V時(shí),其I2C總線時(shí)鐘為1MHz),而PLD配置數(shù)據(jù)又比較大,通常都在數(shù)十K字節(jié)以上。因此如何提高介紹的ICR控制電路的配置速度,這將是軟件設(shè)計(jì)上的一個(gè)重點(diǎn)。 ALTERA公司生產(chǎn)且具有ICR功能的PLD器件有FLEX6000、FLEX10K、APEX和ACEX系列,它們的配置方式可分為PS(無源串行)、PPS(無源并行同步)、PSA(無源并行異步)、PSA(無源串行異步)和JTAG(Joint Test Action)等四種方式,在這四種方式,PS方式因PLD與配置電路的互連簡單,對(duì)配置時(shí)鐘的頻率沒有限制而應(yīng)用廣泛,因此在圖1介紹的ICR控制電路中也采用PS配置方式來實(shí)現(xiàn)ICR功能。是PS配置方式的時(shí)序圖。 數(shù)據(jù)從AT24C256讀出時(shí),可采用讀當(dāng)前地址、隨機(jī)讀和順序讀三種方式。這三種方式中,順序讀的簡單,速度快,因?yàn)樵谕黄珹T24C256中,僅需要寫入讀命令就可以按順序從0地址開始直至讀完整片AT24C256中的全部數(shù)據(jù)。AT24C256順序讀的時(shí)序圖。 可以看出PLD的PS配置時(shí)序圖和AT24C256順序讀時(shí)序圖有很多相似之處,其的差別在于:在PS配置方式中,其數(shù)據(jù)配置順序是序列的位輸入,而I2C總線讀過程則是其序列的位輸出,它們之間的輸入和輸出順序剛好相反。如果將PLD的配置文件通過一定的預(yù)處理,使其配置數(shù)據(jù)的位存儲(chǔ)在EEPROM的位上,則在配置過程中,從EEPROM I2C總線上讀出的當(dāng)前位數(shù)據(jù)正好是PS配置時(shí)需要輸入到PLD中去的當(dāng)前位,這將是提高ICR的配置速度,縮短配置時(shí)間的有效措施,其具體過程如下: 用戶設(shè)計(jì)的PLD程序經(jīng)MAXPLUS Ⅱ的編繹后將產(chǎn)生一個(gè)后綴為.sof的SRAM的SRAM目標(biāo)文件,該文件含有除配置數(shù)據(jù)以外的控制字符,不能直接寫入到PLD中去,需要利用MAXPLUS Ⅱ的編程文件轉(zhuǎn)化功能使其生成一個(gè)后綴為.ttf的表格文本文件,該文件是不帶任何附加符號(hào)的PLD配置文件,可以直接配置到PLD中去。該文件中每一字節(jié)在到ICR控制電路的EEPROM之前,將D7 D6 D5 D4 D3 D2 D1 D0變換為D0 D1 D3 D4 D5 D6 D7之后再寫入EEPROM中,則在PLD配置過程中,其配置數(shù)據(jù)不經(jīng)任何處理,從EEPROM讀出的當(dāng)前位數(shù)據(jù)就是此時(shí)需要配置到PLD中去的當(dāng)前位數(shù)據(jù)(這是作者為什么采用時(shí)鐘頻率較慢的I2C的EEPROM,而沒有采用時(shí)鐘頻率相對(duì)較快,但沒有順序讀功能的SPI接口的EEPROM的原因),從而達(dá)到了縮短ICR控制電路配置時(shí)間的目的。
結(jié)論 本文介紹了一種基于微控制器的PLD ICR控制電路,該控制電路結(jié)構(gòu)簡單、占用空間小、性價(jià)比較高,適用于需要ICR功能的電子裝置中,該ICR控制電路是為配置ALTERR系列PLD器件來設(shè)計(jì)的,稍加屐也適用于XILINX公司的FPGA器件。這個(gè)配置電路的主要弱點(diǎn)在于配置速率較慢,只能適應(yīng)用于配置速率要求不高的應(yīng)用。 注:文中的一個(gè)概念是ICR(In-Circuit Reconfigurability,在電路可重配置),ICR是ALTERA提出的概念,它和目前ISP(In System Programmabled,在系統(tǒng)編程)相并列的一個(gè)概念與IAP(In Application re-Programmable)的意義相差不大。但筆者使用的是ALTERA的PLD,因此在文中采用了ICR這個(gè)概念。
參考文獻(xiàn):
[1]. EPROM datasheet http://www.hbjingang.com/datasheet/EPROM_1128137.html.
[2]. AN88 datasheet http://www.hbjingang.com/datasheet/AN88_1082056.html.
[3]. DS87C520 datasheet http://www.hbjingang.com/datasheet/DS87C520_267806.html.
[4]. P87LPC762 datasheet http://www.hbjingang.com/datasheet/P87LPC762_209259.html.
[5]. 80C51 datasheet http://www.hbjingang.com/datasheet/80C51_103447.html.
[6]. EP1K30 datasheet http://www.hbjingang.com/datasheet/EP1K30_980585.html.
[7]. EPF10K10 datasheet http://www.hbjingang.com/datasheet/EPF10K10_300893.html.
[8]. EPF10K20 datasheet http://www.hbjingang.com/datasheet/EPF10K20_300898.html.
[9]. FLEX6000 datasheet http://www.hbjingang.com/datasheet/FLEX6000_1465078.html.
[10]. FLEX10K datasheet http://www.hbjingang.com/datasheet/FLEX10K_328755.html.
版權(quán)與免責(zé)聲明
凡本網(wǎng)注明“出處:維庫電子市場網(wǎng)”的所有作品,版權(quán)均屬于維庫電子市場網(wǎng),轉(zhuǎn)載請(qǐng)必須注明維庫電子市場網(wǎng),http://www.hbjingang.com,違反者本網(wǎng)將追究相關(guān)法律責(zé)任。
本網(wǎng)轉(zhuǎn)載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點(diǎn)或證實(shí)其內(nèi)容的真實(shí)性,不承擔(dān)此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個(gè)人從本網(wǎng)轉(zhuǎn)載時(shí),必須保留本網(wǎng)注明的作品出處,并自負(fù)版權(quán)等法律責(zé)任。
如涉及作品內(nèi)容、版權(quán)等問題,請(qǐng)?jiān)谧髌钒l(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。
- EDA技術(shù)工具鏈與全流程設(shè)計(jì)運(yùn)維指南2026/1/5 10:28:51
- PLC程序現(xiàn)場疑難問題排查與深度優(yōu)化指南2025/12/24 14:36:36
- PLC程序現(xiàn)場調(diào)試與優(yōu)化實(shí)操指南2025/12/24 14:29:57
- 工業(yè)PLC模擬量信號(hào)采集:調(diào)理技術(shù)與抗干擾工程方案2025/12/15 14:39:08
- PLC設(shè)備如何選型2025/9/5 17:15:14
- PCB焊盤與過孔設(shè)計(jì)核心實(shí)操規(guī)范(含可焊性與可靠性保障)
- 汽車電子常用電子元器件選型指南
- MOSFET驅(qū)動(dòng)與隔離方案設(shè)計(jì)
- 高溫環(huán)境下電源IC選型建議
- 安防監(jiān)控設(shè)備連接器應(yīng)用分析
- 高速PCB信號(hào)完整性(SI)設(shè)計(jì)核心實(shí)操規(guī)范
- 鎖相環(huán)(PLL)中的環(huán)路濾波器:參數(shù)計(jì)算與穩(wěn)定性分析
- MOSFET反向恢復(fù)特性對(duì)系統(tǒng)的影響
- 電源IC在惡劣環(huán)境中的防護(hù)設(shè)計(jì)
- 連接器耐腐蝕性能測試方法









