單片機與FPGA接口邏輯設(shè)計_第1頁
單片機與FPGA接口邏輯設(shè)計_第2頁
單片機與FPGA接口邏輯設(shè)計_第3頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、MCS-51單片機與CPLD/FPGA接口邏輯設(shè)計發(fā)布時間:2006年11月28日 點擊次數(shù):1609來源:蒼穹電子網(wǎng) 作者:在功能上,單片機與大規(guī)模CPLD有很強的互補性。單片機具有性能價格比高、功能靈活、易于人機對話、良好的數(shù)據(jù)處理能力濰點;CPLD/FPGA則具有高速、高可靠以及開發(fā)便捷、規(guī)范等優(yōu)點。以此兩類器件相結(jié)合的電路結(jié)構(gòu)在許多高性能儀器儀表和電子產(chǎn)品中仍將被廣泛應(yīng)用。本文就單片機與CPLD/FPGA的接口方式作一簡單介紹,希望對從事單片機和CPLD/FPGA研發(fā)的朋友能有所啟發(fā)。單片機與CPLD/FPGA的接口方式一般有兩種,即總線方式與獨立方式,分別說明如下:一、總線方式單片機

2、以總線方式與CPLD/FPGA進行數(shù)據(jù)與控制信息通信有許多優(yōu)點。(1)速度快。如圖一所示,其通信工作時序是純硬件行為,對于MCS-51單片機,只需一條單字節(jié)指令就能完成所需的讀寫時序,如: MOV DPTR,A ;MOV A,DPTR(2)節(jié)省CPLD芯片的I/O口線。如圖二所示,如果將圖中的譯碼器DECODER設(shè)置足夠的譯碼輸出,并安排足夠的鎖存器,就能僅通過19根o口線在FPGW與單片機之間進行各種類型的數(shù)據(jù)與控制信息交換。(3)相對于非總線方式,單片機編程簡捷,控制可靠。(4)在CPLD/FPGA中通過邏輯切換,單片機易于與SRAM或ROM接口。這種方式有許多實用之處,如利用類似于微處理

3、器系統(tǒng)的DMA的工作方式,首先由CPLD/FPGA與接口的高速A/D等器件進行高速數(shù)據(jù)采樣,并將數(shù)據(jù)暫存于SRAM中,采樣結(jié)束后,通過切換,使單片機與SRAM以總線方式進行數(shù)據(jù)通信,以便發(fā)揮單片機強大的數(shù)據(jù)處理能力。單片機與CPLD/FPGA以總線方式通信的邏輯設(shè)計,重要的是要詳細了解單片機的總線讀寫時序,根據(jù)時序圖來設(shè)計邏輯結(jié)構(gòu)。圖一是MCS-51系列單片機的時序圖,其時序電平變化速度與單片機工作時鐘頻率有關(guān)。圖中,ALE為地址鎖存使能信號,可利用其下降沿將低8位地址鎖存于CPLD/FPGA中的地址鎖存器(LATCH_ADDRES)中;當ALE將低8位地址通過P0鎖存的同時,高8位地址已穩(wěn)定

4、建立于P2口,單片機利用讀指令允許信號PSEN的低電平從外部ROM中將指令從P0口讀入,由時序圖可見,其指令讀入的時機是在PSEN的上升沿之前。接下來,由P2口和P0口分別輸出高8位和低8位數(shù)據(jù)地址,并由ALE的下降沿將P0口的低8位地址鎖存于地址鎖存器。若需從CPLD/FPGA中讀出數(shù)據(jù),單片機則通過指令“MOVXA,DPTR”使RD信號為低電平,由P0口將圖二中鎖存器LATCH_IN1中的數(shù)據(jù)讀入累加器A;但若欲將累加器A的數(shù)據(jù)寫進CPLD/FPGA,則需通過指令“MOVX ·DPTR,A”和寫允許信號WR。這時,DPTR中的高8位和低8位數(shù)據(jù)作為高、低8位地址分別向P2和P0口

5、輸出,然后由WR的低電平并結(jié)合譯碼,將累加器A的數(shù)據(jù)寫入圖中相關(guān)的鎖存器。二、獨立方式與總線接口方式不同,幾乎所有單片機都能以獨立接口方式與CPLD/FPGA進行通信,其通信的時序方式可由所設(shè)計的軟件自由決定,形式靈活多樣。其最大的優(yōu)點是CPLD/FPGA中的接口邏輯無需遵循單片機內(nèi)固定總線方式的讀寫時序。CPLD/FPGA的邏輯設(shè)計與接口的單片機程序設(shè)計可以分先后相對獨立地完成。事實上,目前許多流行的單片機已無總線工作方式,如89C2051、97C2051、Z84系列、PICI 6C5X系列等。獨立方式的接口設(shè)計方法比較簡單,在此不擬做詳細介紹。下面介紹圖二所示的總線接口邏輯設(shè)計,其外部接口如圖三所示。這是一個CPLD/FPGA與MCS-51系列單片機接口的VHDL電路設(shè)計。MCS-51以總線方式工作,例如,由8031將數(shù)據(jù)#5AH寫入目標器件中的第一個寄存器LATCH_OUT1的批令是:MOV A,#5AHMOV DPTR,#6FF5HMOVX DPTR,A當READY為高電平時,8031從目標器件中的寄存器LATCH_IN1將數(shù)據(jù)讀入的指令是:MOV D

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論