《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > MCS-51單片機與CPLD/FPGA接口邏輯設計
MCS-51單片機與CPLD/FPGA接口邏輯設計
摘要: 在功能上,單片機與大規模CPLD有很強的互補性。單片機具有性能價格比高、功能靈活、易于人機對話、良好的數據處理能力濰點;CPLD/FPGA則具有高速、高可靠以及開發便捷、規范等優點。以此兩類器件相結合的電路結構在許多高性能儀器儀表和電子產品中仍將被廣泛應用。本文就單片機與CPLD/FPGA的接口方式作一簡單介紹,希望對從事單片機和CPLD/FPGA研發的朋友能有所啟發。
關鍵詞: CPLD MCS-51 FPGA 接口
Abstract:
Key words :

       在功能上,單片機與大規模CPLD有很強的互補性。單片機具有性能價格比高、功能靈活、易于人機對話、良好的數據處理能力濰點;CPLD/FPGA則具有高速、高可靠以及開發便捷、規范等優點。以此兩類器件相結合的電路結構在許多高性能儀器儀表和電子產品中仍將被廣泛應用。本文就單片機與CPLD/FPGA的接口方式作一簡單介紹,希望對從事單片機和CPLD/FPGA研發的朋友能有所啟發。    

       單片機與CPLD/FPGA的接口方式一般有兩種,即總線方式與獨立方式,分別說明如下:

      

 

一、總線方式   

       單片機以總線方式與CPLD/FPGA進行數據與控制信息通信有許多優點。   

       (1)速度快。如圖一所示,其通信工作時序是純硬件行為,對于MCS-51單片機,只需一條單字節指令就能完成所需的讀/寫時序,如:    

       MOV @DPTR,A ;MOV A,@DPTR

總線

                                                           圖1 總線

       (2)節省CPLD芯片的I/O口線。如圖二所示,如果將圖中的譯碼器DECODER設置足夠的譯碼輸出,并安排足夠的鎖存器,就能僅通過19根o口線在FPGW與單片機之間進行各種類型的數據與控制信息交換。    

CPLD芯片I

                                                  圖2 CPLD芯片I/O口線

       (3)相對于非總線方式,單片機編程簡捷,控制可靠。   

       (4)在CPLD/FPGA中通過邏輯切換,單片機易于與SRAM或ROM接口。這種方式有許多實用之處,如利用類似于微處理器系統的DMA的工作方式,首先由CPLD/FPGA與接口的高速A/D等器件進行高速數據采樣,并將數據暫存于SRAM中,采樣結束后,通過切換,使單片機與SRAM以總線方式進行數據通信,以便發揮單片機強大的數據處理能力。     

       單片機與CPLD/FPGA以總線方式通信的邏輯設計,重要的是要詳細了解單片機的總線讀寫時序,根據時序圖來設計邏輯結構。圖一是MCS-51系列單片機的時序圖,其時序電平變化速度與單片機工作時鐘頻率有關。圖中,ALE為地址鎖存使能信號,可利用其下降沿將低8位地址鎖存于CPLD/FPGA中的地址鎖存器(LATCH_ADDR ES)中;當ALE將低8位地址通過P0鎖存的同時,高8位地址已穩定建立于P2口,單片機利用讀指令允許信號PSEN的低電平從外部ROM中將指令從P0口讀入,由時序圖可見,其指令讀入的時機是在PSEN的上升沿之前。接下來,由P2口和P0口分別輸出高8位和低8位數據地址,并由ALE的下降沿將P0口的低8位地址鎖存于地址鎖存器。若需從CPLD/FPGA中讀出數據,單片機則通過指令“MOVXA,@DPTR”使RD信號為低電平,由P0口將圖二中鎖存器LATCH_IN1中的數據讀入累加器A;但若欲將累加器A的數據寫進CPLD/FPGA,則需通過指令“MOVX ·DPTR,A”和寫允許信號WR。這時,DPTR中的高8位和低8位數據作為高、低8位地址分別向P2和P0口輸出,然后由WR的低電平并結合譯碼,將累加器A的數據寫入圖中相關的鎖存器。

      

 

二、獨立方式   

       與總線接口方式不同,幾乎所有單片機都能以獨立接口方式與CPLD/FPGA進行通信,其通信的時序方式可由所設計的軟件自由決定,形式靈活多樣。其最大的優點是CPLD/FPGA中的接口邏輯無需遵循單片機內固定總線方式的讀/寫時序。CPLD/FPGA的邏輯設計與接口的單片機程序設計可以分先后相對獨立地完成。事實上,目前許多流行的單片機已無總線工作方式,如89C2051、97C2051、Z84系列、PICI 6C5X系列等。

       獨立方式的接口設計方法比較簡單,在此不擬做詳細介紹。下面介紹圖二所示的總線接口邏輯設計,其外部接口如圖三所示。

外部接口


       這是一個CPLD/FPGA與MCS-51系列單片機接口的VHDL電路設計。MCS-51以總線方式工作,例如,由8031將數據#5AH寫入目標器件中的第一個寄存器LATCH_OUT1的批令是:  

       MOV A,#5AH  
       MOV DPTR,#6FF5H  
       MOVX @DPTR,A

       當READY為高電平時,8031從目標器件中的寄存器LATCH_IN1將數據讀入的指令是:  

       MOV DPTR,#9F7EH  
       MOVX A,@DPTR   

       以上介紹了MCS-51單片機與CPLD/FPGA接口邏輯設計的兩種接口方式,希望對從事單片機和CPLD/FPGA研發的朋友能有所啟發。

 

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 国产高清在线免费视频 | 精品一区二区三区免费站 | 欧美性aaaxxx级 | 国产精品亚洲二区在线 | 国产高颜值露脸在线观看 | 久久精品福利视频 | 国产一级片视频 | 三级欧美在线 | 欧美一级特黄刺激爽大片 | 永久免费观看午夜视频在线 | 99re伊人 | 婷婷亚洲久悠悠色在线播放 | 成年网站在线 | 又粗又爽又色男女乱淫播放男女 | 四色永久 | 国产午夜精品一区二区三区不卡 | 男人使劲躁女人视频小v | 亚洲日韩中文字幕 | 午夜三级毛片 | 国产精品久久国产三级国不卡顿 | 精品三级内地国产在线观看 | 久久久久欧美国产精品 | 伊人黄色片 | 欧美一级情欲片在线 | 高清一级毛片 | 欧美xxxxx色视频在线观看 | 大量愉拍情侣在线视频 | 欧美日韩久久 | 欧美一级毛片欧美一级成人毛片 | 欧美成亚洲 | 国产乱子伦片免费观看中字 | 日韩美a一级毛片 | 草草视频免费观看 | 99久久99热精品免费观看国产 | 日本wwwwwwwww| 成人精品一区二区激情 | 亚洲 欧美 日韩 在线 中文字幕 | 99在线观看精品 | 国产高清一区二区三区免费视频 | 毛片免费永久不卡视频观看 | 久久99国产精一区二区三区 |