<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 基于FPGA的LBS控制器設計

基于FPGA的LBS控制器設計

作者: 時(shí)間:2017-06-05 來(lái)源:網(wǎng)絡(luò ) 收藏

0 引言

PLX的一款橋芯片可將標準處理器、DSP和總線(xiàn)接口升級為PCI Express(PCIe)。單道PCIe至32位、66 MHz通用局部總線(xiàn)橋可在兩種標準間轉換協(xié)議,它可用于通訊線(xiàn)路卡、監視系統、工業(yè)控制、IP媒體服務(wù)器和醫療成像系統,以實(shí)現可升級的高帶寬互聯(lián)。采用根聯(lián)合體或終端點(diǎn)的PCI嵌入式系統設計可采用橋芯片移植到PCIe。本文就是基于PEX8311和來(lái)實(shí)現PCIe標準1x傳輸。

本文引用地址:http://dyxdggzs.com/article/201706/349120.htm

1 系統介紹

和PEX8311之間通過(guò)LBS(LocalBus)來(lái)連接、發(fā)送和接收命令及數據,其中FPGA主要控制LBS的運行,本文通過(guò)設計一個(gè)高效、可靠的來(lái)實(shí)現FPGA和PEX8311的通信。如圖1所示。

本系統的控制的核心是,該控制器是通過(guò)FPGA采用VerilogHDL實(shí)現的,其優(yōu)點(diǎn)是穩定性強、不會(huì )造成死機,避免了常規的PC I,PCIe板卡類(lèi)經(jīng)常死機的問(wèn)題,其次是傳輸速率高,充分利用LBS的時(shí)序,減少無(wú)用的等待時(shí)間。

FPGA采用Altera公司的Cyclone3系列的3C120款FPGA芯片。Cyclone3是功耗最低、成本最低的高性能FPGA產(chǎn)品,鑒于上述特點(diǎn)本設計采用它來(lái)實(shí)現PCIe的傳輸功能。

PEX8311是PLX公司的一款x1的PCI Express接口芯片,本地端總線(xiàn)頻率最高可達66 MHz,數據位寬為32 b。PEX8311有主模式、從模式和DMA三種數據傳輸模式,可靈活、方便地與各CPU,FPGA和ASIC無(wú)縫連接,實(shí)現高速傳輸。

2 設計

2.1 控制信號介紹

Hold信號:請求控制總線(xiàn)的信號,FPGA向PEX8311發(fā)出控制總線(xiàn)的請求。
Holda信號:PEX8311響應FPGA請求的信號。
LCLK信號:時(shí)鐘輸入信號。
ADS信號:地址選通信號。
BLAST信號:最后一個(gè)數據的同步信號。
LA[31:2]信號:地址線(xiàn)。
LD[31:0]信號:數據線(xiàn)。
LW/R信號:讀寫(xiě)控制。
Ready信號:數據有效信號。

2.2 LBS總線(xiàn)讀寫(xiě)操作時(shí)序介紹

LBS總線(xiàn)操作有單次讀寫(xiě)和Burst讀寫(xiě)方式,本設計中采用單次讀寫(xiě)設計用來(lái)傳輸FPGA內部的寄存器讀寫(xiě)控制,這些寄存器是用于配置各邏輯模塊的功能控制,通過(guò)CPU或軟件來(lái)實(shí)時(shí)控制;Burst讀寫(xiě)方式主要用于大批量數據傳輸,本文中主要是傳輸高速的DDR數據,利用Burst傳輸方式可以實(shí)現高速自動(dòng)大容量數據傳輸,充分利用LBS的傳輸帶寬,提高傳輸效率。

2.3 PEX8311芯片介紹

PEX8311芯片的LBS端具有32位數據總線(xiàn)寬度和66 MHz時(shí)鐘頻率,PEX8311支持三種LBS總線(xiàn)接口模式:C模式,J模式和M模式,可方便地與多種微處理器連接。接口模式由MODE0和MODE1兩管腳確定。本設計采用時(shí)序邏輯相對簡(jiǎn)單的C模式,即非復用的地址/數據總線(xiàn)模式。PEX8 311支持三種局部總線(xiàn)數據傳輸模式:?jiǎn)沃芷谀J?、四周期突發(fā)模式、連續突發(fā)模式。

DMA傳輸數據使傳輸任務(wù)從主控設備中解脫出來(lái),由短且有效的傳輸描述符來(lái)承擔,讓主控設備可以有時(shí)間去處理其他事件。PEX8311有兩個(gè)DMA通道,可以同時(shí)處理兩側總線(xiàn)上要求的傳輸,免去外部設備的等待。另外,DMA傳輸可以與主模式和從模式傳輸同步操作,但后兩者比DMA傳輸優(yōu)先級高??紤]到DMA傳輸有以上優(yōu)點(diǎn),本設計中PCI Express接口部分采用連續突發(fā)模式DMA塊傳輸模式,LBS總線(xiàn)接口采用C模式。

2.4 LBS狀態(tài)機設計
LBS共設計有4個(gè)狀態(tài):IDLE,START,DO,BUSY。其狀態(tài)轉移圖如圖2所示。

IDLE:空閑狀態(tài)。

START:當ADS地址選通有效時(shí)進(jìn)入此狀態(tài),進(jìn)行地址空間判斷。

DO:當地址空間有效,并且傳輸條件滿(mǎn)足時(shí)進(jìn)入傳輸狀態(tài),每個(gè)時(shí)鐘判斷條件,當條件滿(mǎn)足時(shí)繼續該狀態(tài),當條件不滿(mǎn)足時(shí),進(jìn)入BUSY等待狀態(tài),傳輸結束(BLAST有效)進(jìn)入IDLE狀態(tài)。

BUSY:當數據沒(méi)準備好時(shí),在BUSY狀態(tài)等待,當數據準備好后進(jìn)入DO狀態(tài),當超時(shí)后進(jìn)入IDLE狀態(tài),實(shí)時(shí)退出。

2.5 LBS狀態(tài)機工作流程

FPGA作為L(cháng)BS的邏輯控制器,負責協(xié)調好與DDR_FIFO數據和PEX8311之間的時(shí)序關(guān)系。系統接收數據時(shí),首先由驅動(dòng)程序向PEX8311發(fā)送復位信號,通過(guò)LRESET復位LBS本地端的FPGA,清空FPGA內部DDR_FIFO內部數據,并將HF和FF標志置為無(wú)效,然后等待數據的輸入。FPGA讀入DDR數據后,首先將DDR數據寫(xiě)入DDR_FIFO中,當DDR_FIFO中的數據達到半滿(mǎn)狀態(tài)時(shí),HF標志位有效,通過(guò)FPGA向PEX8311發(fā)出DMA中斷請求。PC機響應中斷后,設置DMA傳輸模式,傳輸字節數及地址信號等。PEX8311通過(guò)LHOLD申請控制本地總線(xiàn),此時(shí)FPGA發(fā)出的LHOLDA響應信號后獲得本地總線(xiàn)的控制權,并立即進(jìn)入連續字節突發(fā)模式的Block DMA周期即由IDLE狀態(tài)到START狀態(tài)。FPGA在收到有效的LW/R讀信號和ADS地址選通信號后,進(jìn)入DO狀態(tài),同時(shí)發(fā)出Ready本地準備好應答信號,使能DDR_FIFO的讀允許REN和輸出允許OE。在傳輸最后一個(gè)數據時(shí),PEX8311發(fā)出BLAST信號,FPGA配置DDR_FIFO讀使能和輸出使能無(wú)效,并取消Ready從而結束DMA周期。PC系統發(fā)送數據時(shí),FPGA將計算機通過(guò)PCIe傳過(guò)來(lái)的LBS數據寫(xiě)入PC_FIFO中,再輸出寫(xiě)入到DDR中。

2.6 LBS狀態(tài)機核心編碼設計

按照上述4個(gè)狀態(tài)進(jìn)行Verilog設計,經(jīng)過(guò)仿真和上板調試,效果很好,下面是狀態(tài)機設計程序,仿真時(shí)序圖如圖3,圖4所示。


3 結語(yǔ)

本文設計的LBS控制器應用在PEX8311和FPGA接口中運行狀態(tài)正常,穩定性強,已成功應用于某視頻采集卡、某PCIe數據采集卡,經(jīng)過(guò)實(shí)踐證明,基于FPGA設計的LBS控制器具有靈活性強、可編程能力強、適應性強等優(yōu)點(diǎn),能迅速縮短產(chǎn)品上市時(shí)間、快速響應客戶(hù)需求,滿(mǎn)足市場(chǎng)需要。



關(guān)鍵詞: LBS控制器 PEX8311 FPGA

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>