环球电气之家-午夜精彩视频-中国专业电气电子产品行业服务网站!

產品分類

當前位置: 首頁 > 工業電子產品 > 集成電路(ICs) > 邏輯器件

類型分類:
科普知識
數據分類:
邏輯器件

基于單片機的復雜可編程邏輯器件快速配置方法

發布日期:2022-10-09 點擊率:113

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

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

PS配置時序圖

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

  早期的可編程邏輯器件大多采用紫

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

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

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

硬件電路原理圖

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

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

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

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

  被動串行(PS)配置方式:在該配置方式下,由ByteblasteMV下載電纜產生一個由低到高的跳變送到nCONFIG引腳腳復位PLD,然后將配置數據送到DATA0引腳,直到CONF_DONE引腳變為高電平。圖1是PS配置方式的時序圖。CONF_DONE變成高電平后,DCLK必須多余十個周期來初始化該器件。器件的初始化由下載電纜自動執行。在PS方式中沒有握手信號,所以配置時鐘的工作頻率必須低于10MHz。在多器件PS配置方式中,第一片PLD的nCEO引腳級聯到下一片PLD的nCE引腳。在配置完第一個器件后,nCEO輸出為低,使第二個PLD器件的nCE有效,開始對第二塊器件進行配置。

  3 用WINBOND78E58單片機配置可編程邏輯器件

  用單片機配置可編程邏輯器件與上述PS配置方式原理一致,只需模擬PS配置方式中DATA0、DCLK、nCONFIG、CONF_DONE、nSTATUS引腳的配置時序,將配置數據串行移入PLD。配置引腳的功能如表1所示。

  3.1 硬件設計

  用單片機配置PLD,可以使用普通輸入輸出口或單行口。使用普通I/O口(如P1口),向PLD發送1Bit數據至少需要4個指令周期。一個指令給DATA0賦值,兩個指令產生DCLK時鐘,一個指令移位取數據。如果晶振為fosc,一個指令周期為12/fosc,因此它的下載速率為fosc/48。然而如果采用串行口方式0,其下載速率提高為fosc/12。考慮到PLD配置文件數據比較大,通常都在數十千字節以上(其配置文件大小如表2),為了加快配置速度,并適合各種不同規模的PLD,采用了WINBOND78E58單片機。

配置引腳的功能

  該單片機外接晶振最大頻率為40MHz,它在串行口方式0下波特率可設置為fosc/4。另外通過設置特殊功能寄存器CKCON的MD0、MD1、MD2三位,可以將MOVX、MOVC等指令周期縮短至2個機器周期。與普通單片機相比,可使配置時間大為縮短。WINBOND78E58單片機內部擁有32KB FLASH ROM.由配置文件數據表2可知,只需一片單片機就可以對EPF10K20系列以下的PLD進行配置了。本系統中使用了一片APEX20K300E,因此在硬件電路設計中,擴展了一片WINBOND29C040 FLASH存儲器(容量為512KB),其電路如圖2。DATA0與RXD、DCLK與TXD、nCONF與P15、CONFIG_DONE與P16、nSTATUS與P17分別相連。

  3.2 軟件設計

  在軟件編程時,使用了串行口移位寄存器輸入輸出方式。本系統只需用到輸出方式,串行數據通過RXD引腳輸出,而

在TXD引腳輸出移位時鐘。當一字節數據寫入串行數據緩沖器SBUF時,就開始發送。在此期間,發送控制器送出移位信號,使發送移位寄存器的內容右移一位,直至最高位(D7位)數字移出后,停止發送數據和移位時鐘脈沖。RXD、TXD時序如圖3。由圖3可知,它可以用來模擬配置時序。發送完一字節數據后,硬件置發送標志位TI為1,向CPU申請中斷。若CPU響應中斷,則從0023H單元開始執行串行中斷服務程序。 為了提高配置速度,單片機程序用匯編語言編寫。單片機上電后使nCONFIG腳由低到高復位待配置PLD;當判斷到nSTATUS為高后,開始從外部FLASH存儲器取數據串行移位。配置過程中,查詢CONF_DONE。一旦為高,配置完成,但還要送40個DCLK脈沖,PLD才能進入用戶工作狀態。

 

RXD

  用戶設計PLD程序經MAXPLUS II或QUARTUS編譯后將產生后綴后為.sof的SRAM目標文件。該文件含有除配置數據以外的控制字符,不能直接寫入到PLD中去,需要利用軟件的編程文件轉換功能將文件轉換成.rbf(Raw Binary File)十六進制文件。把.rbf文件燒寫到存儲器中,單片機通過MOVX指令讀入后,串行移位到PLD。

  部分asm語言源程序如下:

  NConFIG BIT P1.5

  ConFDONE BIT P.6

  NSTATUS BIT P1.7

  ORG 000h

  ……

  CLR SM0

  CLR SM1 ;SM0,SM1為0,串口工作于方式0

  CLR SM2 ;串口波特率為fosc/4

  CLR REN

  ANL 8EH,#0f8h ;地址8EH是CKCON單元,MD0、MD1、MD2清0

  CLR EA

  WJRESTART:CLR NCONFIG

  SETB NConFIG ;上升沿復位PLD

  WAIT:JNB NSTATUS,WAIT ;NSTATUS為高,可進行配置

  WJPEIZHI:MOV P1,COUNTER3

  MOV DPH,COUNTER2

  MOV DPL,COUNTER1 ;配置數據大,需3個單元作地址記數

  MOVX A,@DPTA

  MOV SBUF,A ;串行移位

  NOP

  NOP ;采用填充2個空指令,正好使一個字節發送完成,可發送下一個字節

  INC COUNTER1 ;地址加

  MOV A,COUNTER1

  JB CONFDONE,WJEND1

  CJNE A,#0,WJPEIZHI

  INC COUNTER2

  NOV A,COUNTER2

  CJNE A,#0,WJPEIZHI

  INC COUNTER3

  LJMP WJPEIZHI

  WJEND1:MOV R0,#60

  WJEND:WOV A,#55H

  ……

  MOV SBUF,A ;由此產生40個DCLK時鐘

  DJNZ R0,WJEND

  WERE:LJMP HERE ;配置完成,進入用戶工作模式

  使用OTP(One Time Programming)器件配置CPLD具有一定的冒險性,一次簡單的代碼更換就可能意味著更換OTP器件,并重新開始所有的程序。被動串行微處理器(Passive Serial With Processor)配置方式以EEPROM為基礎,允許對這些存儲器進行多次編程,所有其它芯片都無需從已裝配的印制電路板上拆卸下來。高速讀寫周期的FLASH存儲器能確保1萬次編程,而且能對任何以SRAM為基礎的PLD下載。該方

式除了在加電期間能承載配置數據外,還有許多方便之處。例如,用戶可以將多個配置文件.rbf分區編程到外部存儲器的未用區段,通過單片機讀取不同存儲區可以將可編程邏輯器件在線配置成多種不同的工作模式。

 

下一篇: PLC、DCS、FCS三大控

上一篇: 索爾維全系列Solef?PV

推薦產品

更多
主站蜘蛛池模板: 【德信自动化】点胶机_全自动点胶机_自动点胶机厂家_塑料热压机_自动螺丝机-深圳市德信自动化设备有限公司 | 巩义市科瑞仪器有限公司| 熔体泵|换网器|熔体齿轮泵|熔体计量泵厂家-郑州巴特熔体泵有限公司 | 英国雷迪地下管线探测仪-雷迪RD8100管线仪-多功能数字听漏仪-北京迪瑞进创科技有限公司 | 磁粉制动器|张力控制器|气胀轴|伺服纠偏控制器整套厂家--台灵机电官网 | 塑料异型材_PVC异型材_封边条生产厂家_PC灯罩_防撞扶手_医院扶手价格_东莞市怡美塑胶制品有限公司 | 合肥展厅设计-安徽展台设计-合肥展览公司-安徽奥美展览工程有限公司 | 包塑丝_高铁绑丝_地暖绑丝_涂塑丝_塑料皮铁丝_河北创筹金属丝网制品有限公司 | 刘秘书_你身边专业的工作范文写作小秘书| 恒温油槽-恒温水槽-低温恒温槽厂家-宁波科麦仪器有限公司 | 澳门精准正版免费大全,2025新澳门全年免费,新澳天天开奖免费资料大全最新,新澳2025今晚开奖资料,新澳马今天最快最新图库-首页-东莞市傲马网络科技有限公司 | 阳光1号桔柚_无核沃柑_柑橘新品种枝条苗木批发 - 苧金网 | 卫生纸复卷机|抽纸机|卫生纸加工设备|做卫生纸机器|小型卫生纸加工需要什么设备|卫生纸机器设备多少钱一台|许昌恒源纸品机械有限公司 | 食品无尘净化车间,食品罐装净化车间,净化车间配套风淋室-青岛旭恒洁净技术有限公司 | 粘度计维修,在线粘度计,二手博勒飞粘度计维修|收购-天津市祥睿科技有限公司 | 超声波电磁流量计-液位计-孔板流量计-料位计-江苏信仪自动化仪表有限公司 | 电机修理_二手电机专家-河北豫通机电设备有限公司(原石家庄冀华高压电机维修中心) | 骨龄仪_骨龄检测仪_儿童骨龄测试仪_品牌生产厂家【品源医疗】 | 大型果蔬切片机-水果冬瓜削皮机-洗菜机切菜机-肇庆市凤翔餐饮设备有限公司 | 无机纤维喷涂棉-喷涂棉施工工程-山东华泉建筑工程有限公司▲ | 嘉兴恒升声级计-湖南衡仪声级计-杭州爱华多功能声级计-上海邦沃仪器设备有限公司 | 西安耀程造价培训机构_工程预算实训_广联达实作实操培训 | 安徽华耐泵阀有限公司-官方网站 安德建奇火花机-阿奇夏米尔慢走丝|高维|发那科-北京杰森柏汇 | 高压无油空压机_无油水润滑空压机_水润滑无油螺杆空压机_无油空压机厂家-科普柯超滤(广东)节能科技有限公司 | 重庆磨床过滤机,重庆纸带过滤机,机床伸缩钣金,重庆机床钣金护罩-重庆达鸿兴精密机械制造有限公司 | 杭州代理记账多少钱-注册公司代办-公司注销流程及费用-杭州福道财务管理咨询有限公司 | 手持式浮游菌采样器-全排二级生物安全柜-浙江孚夏医疗科技有限公司 | 温州在线网| 污水提升器,污水提升泵,地下室排水,增压泵,雨水泵,智能供排水控制器-上海智流泵业有限公司 | 天津暖气片厂家_钢制散热器_天津铜铝复合暖气片_维尼罗散热器 | 电子万能试验机_液压拉力试验机_冲击疲劳试验机_材料试验机厂家-济南众标仪器设备有限公司 | 诚暄电子公司首页-线路板打样,pcb线路板打样加工制作厂家 | 挤出熔体泵_高温熔体泵_熔体出料泵_郑州海科熔体泵有限公司 | 热缩管切管机-超声波切带机-织带切带机-无纺布切布机-深圳市宸兴业科技有限公司 | 玖容气动液压设备有限公司-气液增压缸_压力机_增压机_铆接机_增压器 | 法兰连接型电磁流量计-蒸汽孔板节流装置流量计-北京凯安达仪器仪表有限公司 | 砍排机-锯骨机-冻肉切丁机-熟肉切片机-预制菜生产线一站式服务厂商 - 广州市祥九瑞盈机械设备有限公司 | GAST/BRIWATEC/CINCINNATI/KARL-KLEIN/ZIEHL-ABEGG风机|亚喜科技 | 半自动预灌装机,卡式瓶灌装机,注射器灌装机,给药器灌装机,大输液灌装机,西林瓶灌装机-长沙一星制药机械有限公司 | 泉州陶瓷pc砖_园林景观砖厂家_石英砖地铺石价格 _福建暴风石英砖 | 石牌坊价格石牌坊雕刻制作_石雕牌坊牌楼石栏杆厂家_山东嘉祥石雕有限公司 |