您的位置:網(wǎng)站首頁 > 電器維修資料網(wǎng) > 正文 >
單片機與CPLD/FPGA的接口方式
來源: 日期:2013-11-18 21:54:17 人氣:標簽:
(1)速度快。其通信工作時序是純硬件行為,對于mcs-51單片機,只需一條指令就能完成所需的讀/寫時序,如:
其中,cpld_addr為地址,data_tem為數(shù)據(jù)暫存單元。
(2)節(jié)省cpld芯片的i/o口線。如下圖所示,如果將圖中的譯碼器decoder設置足夠的譯碼輸出,并介紹足夠的鎖存器,就能僅通過19根i/o口線在fpga與單片機之間進行各種類型的數(shù)據(jù)與控制信息交換。
(3)與非總線方式相比較,單片機編程簡捷,控制可靠。
在cpld/fpga中通過邏輯切換,單片機易于與sram或rom接口。這種方式有許多優(yōu)勢,如利用類似于微處理器系統(tǒng)的dma的工作方式,首先由cpld/fpga與接口的高速a/d等器件進行高速數(shù)據(jù)采樣,并將數(shù)據(jù)暫存于sram中,采樣結(jié)束后,通過切換,使單片機與sram以總線方式進行數(shù)據(jù)通信,以便發(fā)揮單片機強大的數(shù)據(jù)處理能力。
根據(jù)單片機外部操作時序,ale為地址鎖存使能信號,可利用其下降沿將低8位地址鎖存于cpld/fpga中的地址鎖存器(latch_addres)中;當ale將低8位地址通過p0鎖存的同時,高8位地址已穩(wěn)定建立于p2口,單片機利用讀指令允許信號psen的低電平從外部rom中將指令從po口讀入,其指令讀入的時機是在psen的上升沿之前。
接下來,由p2口和po口分別輸出高8位和低8位數(shù)據(jù)地址,并由ale的下降沿將po口的低8位地址鎖存于地址鎖存器。若需從cpld/fpga中讀出數(shù)據(jù),單片機則通過指令“data_tem=cpld_addr”使rd信號為低電平,由po口將鎖存器latchin1中的數(shù)據(jù)讀入累加器a;但若欲將累加器a的數(shù)據(jù)寫進cpld/fpga,則需通過指令“cpld_addr=data_tem” 和寫允許信號wr。
這時,dptr中的高8位和低8位數(shù)據(jù)作為高、低8位地址分別向p2和po口輸出,然后由wr的低電平并結(jié)合譯碼,將累加器a的數(shù)據(jù)寫入下圖中相關的鎖存器。
由8051將數(shù)據(jù)#5ah寫入目標器件中的第一個寄存器latch_out1的指令是:
當ready為高電平時,8051從目標器件中的寄存器latch_in1將數(shù)據(jù)讀入的指令是:
2.獨立方式
和總線接口方式不同,幾乎所有單片機都能以獨立接口方式與cpld/fpga進行通信,其通信的時序方式可由所設計的軟件自由決定,形式靈活多樣。其 大的優(yōu)點是cpld/fpga中的接口邏輯無需遵循單片機內(nèi)固定總線方式的讀/寫時序。cpld/fpga的邏輯設計與接口的單片機程序設計可以分先后相對獨立地完成。事實上,目前許多流行的單片機已無總線工作方式,如at89c2051、97c2051、284系列、pic16c5x系列等。
【看看這篇文章在百度的收錄情況】
相關文章
- 上一篇: 三種無線投影技術類型解析
- 下一篇: 逆變器的分類