国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

一種實用的多通道SPI接口設(shè)計*

2013-11-23 04:18
艦船電子工程 2013年4期
關(guān)鍵詞:主控板板卡寄存器

(中國船舶重工集團公司第七二二研究所 武漢 430079)

1 引言

在通信產(chǎn)品設(shè)計中,一般都會采用可拔插的多板卡設(shè)計,板卡分為兩類:一類為主控板,主要實現(xiàn)數(shù)據(jù)交換、網(wǎng)管代理、配置保存和下載、狀態(tài)查詢和上報等功能,設(shè)計較為復(fù)雜;另一類為接口板,主要實現(xiàn)數(shù)據(jù)轉(zhuǎn)換和接口適配功能,設(shè)計一般較為簡單。設(shè)備中主控板一般只有一塊(如果需要冗余設(shè)計則為兩塊),而接口板有多塊,所有板卡均插在一塊背板上。為了實現(xiàn)統(tǒng)一管理,主控板和接口板間需要增加管理通道。

對于管理通道,也有兩種實現(xiàn)方式:一種是主控板和接口板均配置CPU 芯片,板卡間采用HDLC 接口或以太網(wǎng)接口實現(xiàn)管理通道,這樣就需要每塊板卡都編寫軟件代碼,對于接口眾多而接口板實現(xiàn)簡單的設(shè)備而言,設(shè)計工作量大、成本高;另一種是僅在主控板上配置CPU 芯片,通過主控板提供并行數(shù)據(jù)/地址總線連接到各接口板上,接口板上的芯片可以直接由主控板通過總線進行控制,這樣可以簡化軟件的代碼編寫,但由于并行數(shù)據(jù)/地址總線信號數(shù)量眾多,設(shè)備背板設(shè)計將會很復(fù)雜,同時由于一組總線連接到多塊接口板卡,其可靠性會降低。

本文綜合這兩種實現(xiàn)方式的優(yōu)點,在此基礎(chǔ)上提出了一種新的實現(xiàn)方式,即主控板通過FPGA 芯片擴展出多個通道的SPI主模式接口,而接口板通過EPLD 芯片實現(xiàn)SPI從模式接口,再通過背板將主控板的SPI接口與接口板的SPI接口一一對應(yīng)連接,主控板即可通過SPI接口對接口板進行管理操作。

2 SPI接口簡介

SPI(Serial Peripheral Interface—串行外設(shè)接口)總線是一種同步串行外設(shè)接口,它可以使MCU 與各種外圍設(shè)備以串行方式進行通信以交換信息。該接口一般使用四條線:串行時鐘線(SCLK)、主機輸入/從機輸出數(shù)據(jù)線MISO、主機輸出/從機輸入數(shù)據(jù)線MOSI和低電平有效的從機選擇線SS。SPI接口傳輸?shù)臄?shù)據(jù)一般為八位,在主器件產(chǎn)生的從器件使能信號和移位脈沖下,按位傳輸,高位在前,低位在后。

3 FPGA 芯片介紹

本方案中采用的FPGA 芯片是Xilinx公司的Spartan-6系列[4]。該系列由13 個成員組成,可提供的密度從3,840 個邏輯單元到147,443 個邏輯單元不等。Spartan-6系列采用成熟的45nm 低功耗銅制程技術(shù)制造,與上一代Spartan 系列相比,該系列功耗僅為其50%,且速度更快、連接功能更豐富全面。Spartan-6FPGA 具備堅實的可編程芯片基礎(chǔ),且成本低,非常適用于可提供集成軟硬件組件的目標(biāo)設(shè)計平臺。

4 多通道SPI接口方案設(shè)計

圖1 方案設(shè)計框圖

本方案中采用FPGA 芯片實現(xiàn)16路SPI主模式接口,同時采用EPLD 芯片實現(xiàn)單路SPI從模式接口,具體框圖如圖1所示。

由于需要擴展16路SPI主模式接口,所采用的邏輯資源較多,所以FPGA 芯片采用了Spartan-6 系列的XC6SLX9型號,該型號具備9152個邏輯單元和102 個可用IO 口管腳,且功耗很小,EPLD 芯片則采用了Altera公司的MAX II系列的EPM240芯片,也同樣具備成本低和功耗小的特點。

4.1 SPI接口時序

本方案由于SPI接口的主從模式均由邏輯實現(xiàn),為統(tǒng)一設(shè)計,規(guī)范SPI接口的時序如下:

寫操作時,SPI主模式接口在片選有效后,從時鐘上升沿先輸出地址,再輸出數(shù)據(jù),高位在前,低位在后;讀操作時,SPI主模式接口同樣先輸出地址,然后由SPI從模式接口在時鐘上升沿輸出數(shù)據(jù),也是高位在前,低位在后。地址的最高位bit作為讀寫指示信號,bit為0時表示本次操作是讀操作,bit為1時表示是寫操作。

圖2 SPI接口的寫時序

圖3 SPI接口的讀時序

4.2 SPI主模式接口設(shè)計

根據(jù)設(shè)計框圖,為了實現(xiàn)多通道SPI接口,需要在FPGA 芯片內(nèi)部擴展多組寄存器,CPU 通過并行數(shù)據(jù)/地址總線對寄存器進行訪問,以控制每個通道SPI接口的讀寫操作。每組寄存器對應(yīng)一個SPI接口,寄存器包括控制寄存器、地址寄存器,寫數(shù)據(jù)寄存器和讀數(shù)據(jù)寄存器。其中控制寄存器的bit0用于啟動讀寫操作,置1表示啟動讀寫操作,清0則表示停止操作;bit7為只讀bit,讀出為1表示本次操作尚未結(jié)束,為0則表示操作已完成。

SPI主模式接口的主要邏輯實現(xiàn)代碼如下:

4.3 SPI從模式接口設(shè)計

由于接口板的接口芯片存在不同類型,而不同類型的接口芯片其CPU 接口的時序要求也可能不同。為了靈活適配,在接口板的EPLD 中擴展了四個寄存器:并行接口控制寄存器、并行接口地址寄存器、并行接口寫數(shù)據(jù)寄存器和并行接口讀數(shù)據(jù)寄存器。主控板可以通過SPI接口對這些寄存器進行訪問,以控制EPLD 的并行數(shù)據(jù)/地址總線的讀寫時序。其中并行接口控制寄存器的bit0表示是否使能操作,1表示使能讀寫操作,0表示禁止;bit1表示當(dāng)前操作類型,0表示讀操作,1表示寫操作;bit7表示當(dāng)前操作是否結(jié)束,1表示操作尚未結(jié)束,0表示操作已結(jié)束。

由于SPI從模式接口的邏輯代碼較長,無法一一列舉,這里將流程框圖描述如圖4:

圖4 SPI從模式設(shè)計流程

5 結(jié)語

本文對不同設(shè)備內(nèi)的板卡管理通道進行了分析,提出了采用SPI接口作為板卡間管理通道的設(shè)計方案。該方案采用FPGA+EPLD芯片實現(xiàn)SPI接口,可以根據(jù)項目需求靈活增加接口數(shù)量,同時也可以很方便地調(diào)整CPU 接口的訪問時序。在實際的設(shè)備應(yīng)用中,SPI接口作為管理通道運行穩(wěn)定良好,有效地提高了設(shè)備的開發(fā)效率。

另外,本文中應(yīng)用的SPI接口是8位數(shù)據(jù)和8位地址,如果實際使用有新的需求,完全可以將SPI接口的位寬擴展到16位或更多,而不會對整體設(shè)計架構(gòu)有任何影響。

[1]田耘,徐文波.Xilinx FPGA 開發(fā)實用教程[M].北京:清華大學(xué)出版社,2008.

[2]EDA 先鋒工作室.Altera FPGA/CPLD設(shè)計(基礎(chǔ)篇)[M].第2版.北京:人民郵電出版社,2011.

[3]夏宇聞.Verilog數(shù)字系統(tǒng)設(shè)計教程[M].第2版.北京:北京航空航天大學(xué)出版社,2008.

[4]Xilinx,Inc.Spartan-6Family Overview,2011:1-2.http://www.xilinx.com.

[5]Xilinx,Inc.Spartan-6 FPGA Data Sheet,2011.http://www.xilinx.com.

[6]Xilinx,Inc.Spartan-6 FPGA Clocking Resources User Guide,2011.http://www.xilinx.com.

[7]Altera Corporation.MAX II Device Handbook,2009.http://www.altera.com.cn.

[8]麻志鵬,沈小林.PCI總線接口的FPGA 設(shè)計與實現(xiàn)[J].計算機與數(shù)字工程,2011(2).

猜你喜歡
主控板板卡寄存器
一種快速可靠的主控冗余及切換機制的設(shè)計與實現(xiàn)
Lite寄存器模型的設(shè)計與實現(xiàn)
壁掛爐主控板工裝測試系統(tǒng)設(shè)計
車載控制器CVRE板卡顯紅故障分析及處理
重慶軌道交通閘機三桿機芯主控板的技術(shù)自主化探究
二進制翻譯中動靜結(jié)合的寄存器分配優(yōu)化方法
移位寄存器及算術(shù)運算應(yīng)用
新型食堂點菜結(jié)算裝置的設(shè)計研究
基于組態(tài)王軟件和泓格PIO-D64 板卡的流水燈控制
一種基于光纖數(shù)據(jù)傳輸?shù)亩喟蹇ㄜ浖绦驘龑懠夹g(shù)
蓝田县| 大余县| 阿拉尔市| 杨浦区| 外汇| 泰宁县| 静海县| 兴山县| 巩留县| 开化县| 德格县| 廊坊市| 莲花县| 全州县| 宽城| 五台县| 无为县| 平和县| 平邑县| 德化县| 辽阳市| 察雅县| 清新县| 静安区| 福贡县| 湖口县| 哈密市| 政和县| 于田县| 泉州市| 竹北市| 通许县| 澄江县| 文化| 贵溪市| 秦安县| 怀安县| 响水县| 凤城市| 阜平县| 温宿县|