欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種基于SoCFPGA的多串口并行處理架構(gòu)的制作方法

文檔序號:6524169閱讀:178來源:國知局
一種基于SoC FPGA的多串口并行處理架構(gòu)的制作方法
【專利摘要】本發(fā)明屬于分散式工業(yè)控制【技術(shù)領(lǐng)域】,涉及一種基于SoCFPGA的多串口并行處理架構(gòu),包括收發(fā)器、集成了現(xiàn)場可編程邏輯門陣列FPGA和處理器CPU的SoCFPGA芯片,其特征在于:所述SocFPGA芯片中的FPGA內(nèi)部通過硬件描述語言設(shè)計多個UART核和與各UART核相對應(yīng)的多個協(xié)處理器MCU;FPGA內(nèi)嵌多個與各協(xié)處理器MCU相對應(yīng)的嵌入式存儲器,各嵌入式存儲器配置為可以讀寫操作的雙端口模式;所述多個UART核與多個相對應(yīng)的所述收發(fā)器通過RS232/RS422/RS485接口連接。本發(fā)明系統(tǒng)集成度高、硬件設(shè)計成本低,能有效降低CPU負(fù)荷,提升串行總線數(shù)據(jù)傳輸帶寬,可以靈活擴展多路串行通道。
【專利說明】—種基于SoC FPGA的多串口并行處理架構(gòu)
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于分散式工業(yè)控制【技術(shù)領(lǐng)域】,具體涉及一種基于SoC FPGA的多串口并行處理架構(gòu)。
【背景技術(shù)】
[0002]UART (通用異步收發(fā)傳輸器)是一種廣泛應(yīng)用于短距離、低速通信的串行傳輸接口,其操作簡單、工作可靠、抗干擾強、成本低、傳輸距離遠(yuǎn)(組成485網(wǎng)絡(luò)可以傳輸1,200米以上)。在數(shù)據(jù)通信、計算機網(wǎng)絡(luò)以及分散式工業(yè)控制系統(tǒng)中,處理器經(jīng)常采用串行通信與外設(shè)模塊交換數(shù)據(jù)和信息。
[0003]在現(xiàn)代的工業(yè)控制系統(tǒng)中,多串口通信應(yīng)用越來越廣泛。尤其是數(shù)據(jù)采集領(lǐng)域,工程應(yīng)用中對串口數(shù)量需求增加,處理器需要實時采集并處理來自于多個串行外設(shè)的數(shù)據(jù)。通用串口實現(xiàn)方式如圖1所示。由于普通處理器或ASIC能提供的串口數(shù)量有限,當(dāng)需要控制的串行終端設(shè)備超過四個以上時,傳統(tǒng)的架構(gòu)就難以滿足實際應(yīng)用要求了,如硬件成本昂貴、難以擴展、功耗較高、數(shù)據(jù)處理實時性不高、處理器負(fù)荷高、UART總線帶寬低等問題。具體表現(xiàn)在:1)串行外設(shè)用到RS232或RS422/485異步串行接口,一般采用專用的集成電路即UART芯片實現(xiàn)。如8250、16550AFN等芯片都是常見的UART器件,但這類器件硬件串行接口資源有限,而且內(nèi)部結(jié)構(gòu)設(shè)計相當(dāng)復(fù)雜,芯片引腳較多,有的含有許多輔助模塊(如FIFO),在實際使用時往往只用到UART基本功能,設(shè)計時使用這類芯片,造成了資源浪費;
2)處理器或?qū)S玫亩啻谛酒峁┑目蓴U展串口數(shù)量有限,無法實現(xiàn)更多UART串口擴展;3)外圍接口電路復(fù)雜,板卡設(shè)計難度較大;4)使用UART芯片還會使硬件成本增加并且增加電路板的面積,無法大規(guī)模應(yīng)用于多通道數(shù)據(jù)采集場合;5)處理器采用串行方式依次掃描各個通道,然而串口通訊速率過低導(dǎo)致CPU等待時間過長,難以滿足實時性要求較高需要并行處理的實際需求。

【發(fā)明內(nèi)容】

[0004]鑒于現(xiàn)有技術(shù)中存在的上述問題,本發(fā)明要解決的技術(shù)問題是提供一種硬件設(shè)計成本低、能有效降低CPU負(fù)荷、可以靈活擴展多路串行通道的多串口并行處理架構(gòu)。
[0005]為了實現(xiàn)以上目的,本發(fā)明采用的技術(shù)方案是:一種基于SoC FPGA的多串口并行處理架構(gòu),包括收發(fā)器、集成了現(xiàn)場可編程邏輯門陣列FPGA和處理器CPU的SoC FPGA芯片,其特征在于:所述SoC FPGA芯片中的FPGA內(nèi)部通過硬件描述語言設(shè)計多個UART核和與各UART核相對應(yīng)的多個協(xié)處理器MCU ;所述FPGA內(nèi)嵌多個與各協(xié)處理器MCU相對應(yīng)的嵌入式存儲器,各嵌入式存儲器配置為可以讀寫操作的雙端口模式;所述多個UART核與多個相對應(yīng)的所述收發(fā)器通過RS232/RS422/RS485接口連接。
[0006]所述SoCFPGA芯片內(nèi)由相對應(yīng)的UART核、協(xié)處理器MCU和嵌入式存儲器依次連接組成的多路串行通道,各通道互相獨立,SoC FPGA芯片內(nèi)的CPU通過內(nèi)部總線可同時掃描并處理所有通道的外設(shè)信息。[0007]所述協(xié)處理器MCU完成數(shù)據(jù)鏈路層工作,所述SoC FPGA芯片內(nèi)的處理器CPU完成
應(yīng)用層工作。
[0008]本發(fā)明的積極效果是:1)利用SoC FPGA內(nèi)富裕的FPGA邏輯資源可以輕松實現(xiàn)多路UART控制器,根據(jù)工程需要,只需修改FPGA邏輯即可靈活構(gòu)建多協(xié)處理器MCU和多UART核,靈活增減串行通道數(shù)量,大大提高了系統(tǒng)集成度;2)在高達(dá)16乃至32串行通道時,板卡外圍電路設(shè)計復(fù)雜度和難度大大降低,極大縮減昂貴硬件成本,可大規(guī)模應(yīng)用于多通道數(shù)據(jù)采集場合;3)在SoC FPGA內(nèi)的處理器CPU和UART控制器之間設(shè)有多個獨立并行的協(xié)處理器MCU,協(xié)處理器MCU完成數(shù)據(jù)鏈路層工作,處理器CPU主要負(fù)責(zé)應(yīng)用層工作,這種架構(gòu)可以讓處理器并行掃描所有通道的串行外設(shè),大大降低CPU的負(fù)荷,提升串行總線數(shù)據(jù)傳輸帶寬;4)根據(jù)工程需要配合外部收發(fā)芯片,SoC FPGA只需稍作邏輯修改即可靈活支持RS232/RS422/RS485不同的通訊協(xié)議和波特率。
【專利附圖】

【附圖說明】
[0009]下面結(jié)合附圖和【具體實施方式】對本發(fā)明作進(jìn)一步說明。
[0010]圖1是現(xiàn)有的通用串口實現(xiàn)方式示意圖;
圖2是本發(fā)明SoC FPGA同時控制八通道并行掃描處理的架構(gòu)示意圖;
圖3是SoC FPGA中CPU與MCU工作所處的網(wǎng)絡(luò)模型位置示意圖。
【具體實施方式】
[0011]為了實現(xiàn)并行多通道串行外設(shè)的支持,增加UART總線串行通信帶寬,降低CPU的負(fù)荷,提高系統(tǒng)集成度,縮減硬件成本,如圖2所示,本發(fā)明基于SoCFPGA的多串口并行處理架構(gòu),包括收發(fā)器、集成了現(xiàn)場可編程邏輯陣列FPGA和處理器CPU的SoC FPGA芯片,CPU通過內(nèi)部總線與FPGA連接,其特征在于:所述SoC FPGA芯片中的FPGA內(nèi)部通過硬件描述語言設(shè)計多個UART核和與各UART核相對應(yīng)的多個協(xié)處理器MCU ;所述FPGA內(nèi)嵌多個與各協(xié)處理器MCU相對應(yīng)的嵌入式存儲器,各嵌入式存儲器配置為可以讀寫操作的雙端口模式;所述多個UART核與多個相對應(yīng)的所述收發(fā)器通過RS232/RS422/RS485接口連接。
[0012]所述SoC FPGA芯片內(nèi)部集成了單核或多核處理器和現(xiàn)場可編程邏輯門陣列FPGA,處理器CPU和FPGA之間通過內(nèi)部總線互聯(lián)。
[0013]所述的SoCFPGA芯片內(nèi)由相對應(yīng)的UART核、協(xié)處理器MCU和嵌入式存儲器依次連接組成的多路串行通道,各通道互相獨立,CPU可同時掃描并處理所有通道的外設(shè)信息。
[0014]所述協(xié)處理器MCU完成數(shù)據(jù)鏈路層工作,所述SoC FPGA芯片內(nèi)的處理器CPU完成應(yīng)用層工作(如圖3所示)。
[0015]本發(fā)明中SoCFPGA實現(xiàn)多UART接口、多協(xié)處理器處理方式,通過SoCFPGA可以靈活構(gòu)建多協(xié)處理器MCU和多UART核,SoCFPGA構(gòu)建的UART核與外部的收發(fā)器通過RS232/RS422/RS485連接,這樣可以靈活擴展多路串行通道。
[0016]SoC FPGA中的處理器CPU通過內(nèi)部總線從FPGA讀取、發(fā)送數(shù)據(jù)。CPU主要負(fù)責(zé)應(yīng)
用層工作。
[0017]SoCFPGA芯片內(nèi)嵌嵌入式存儲器,配置成可以讀寫操作的真正雙端口模式(如圖2中的Dual Port),用以緩存待發(fā)送或接受的數(shù)據(jù)。[0018]協(xié)處理器MCU是通過SoCFPGA構(gòu)建的虛擬協(xié)處理器,主要完成數(shù)據(jù)鏈路層工作,處理來自于UART核的數(shù)據(jù)或?qū)碜杂贒ual Port的并行數(shù)據(jù)處理后發(fā)送給UART核。
[0019]UART核實現(xiàn)了 UART功能,提供與外部串口收發(fā)器的UART接口,在協(xié)處理器MCU的控制下高效收發(fā)串行數(shù)據(jù)。
[0020]收發(fā)器是UART接口芯片,主要完成RS232/RS422/RS485電平和TTL/C0MS電平間的轉(zhuǎn)換。SoC FPGA處理器和終端均采用TTL電平及正邏輯,它們與EIA采用的電平及負(fù)邏輯不兼容,需在接口電路中進(jìn)行轉(zhuǎn)換。
[0021]為了提高系統(tǒng)的集成度,支持多路并行獨立串口,提高UART總線帶寬,降低CPU的負(fù)荷,縮減硬件成本,本發(fā)明使用SoCFPGA中的現(xiàn)場可編程邏輯門陣列FPGA構(gòu)建多個UART核,根據(jù)工程應(yīng)用需要只需更改編程邏輯即可靈活增減串行通道數(shù)量。SoC FPGA中的現(xiàn)場可編程門陣列FPGA由可配置的邏輯模塊、輸入輸出模塊和內(nèi)部連線組成。FPGA利用查找表(LUT)實現(xiàn)組合邏輯,進(jìn)而驅(qū)動其它邏輯電路和I/O接口,而存儲在內(nèi)部靜態(tài)存儲單元的編程數(shù)據(jù)決定各邏輯單元的邏輯功能和各模塊之間的連接關(guān)系。通過硬件描述語言在FPGA內(nèi)部配置多個獨立工作的組合邏輯單元,實現(xiàn)多通道并行UART通信功能。如圖2所示,在SoCFPGA中的FPGA內(nèi)部通過硬件描述語言分別設(shè)計多個UART核和多個協(xié)處理器MCU,將FPGA內(nèi)嵌的嵌入式存儲器可配置成多個真正雙端口存儲器。該方法有集成度高、體積小、功耗低和速度快等優(yōu)點,而且還可以根據(jù)用戶的需求對系統(tǒng)功能進(jìn)行重構(gòu)。
[0022]在多串口數(shù)據(jù)采集應(yīng)用中,需要實時的進(jìn)行數(shù)據(jù)采集、對串行終端設(shè)備進(jìn)行實時控制。傳統(tǒng)的多通道串行架構(gòu)中,CPU是依次查詢各個串行端口的狀態(tài),順序掃描各端口,造成CPU耗費大量的時間和資源,并且串行總線帶寬隨著通道數(shù)量的增加而減小。本發(fā)明中采用的方法是:在SoCFPGA中的FPGA內(nèi)部通過硬件描述語言構(gòu)建多個協(xié)處理器MCU,并將FPGA內(nèi)嵌的嵌入式存儲器配置成多個真正雙端口存儲器。協(xié)處理器主要完成數(shù)據(jù)鏈路層工作(如圖3),處理來自于UART核的數(shù)據(jù)或?qū)碜杂贒ual Port的并行數(shù)據(jù)處理后發(fā)送給UART核。接受數(shù)據(jù)時,將來自于UART核的數(shù)據(jù)處理后以并行數(shù)據(jù)方式緩存在Dual Port,相應(yīng)的Dual Port會向CPU發(fā)送接收中斷請求,CPU可在完成當(dāng)前任務(wù)后響應(yīng)中斷,然后一次讀取來自于Dual Port中的數(shù)據(jù),CPU無需再花大量時間等待低速的UART核將數(shù)據(jù)發(fā)送完成。CPU只需負(fù)責(zé)應(yīng)用層工作,降低了 CPU的負(fù)荷。
[0023]發(fā)送數(shù)據(jù)時,SoC FPGA中的處理器CPU并行掃描所有通道,查詢到來自于某個通道的請求發(fā)送狀態(tài)信息后,將待發(fā)送給某個通道的數(shù)據(jù)緩存在相應(yīng)通道的Dual Port存儲器中,相應(yīng)通道的協(xié)處理器一旦查詢到對應(yīng)的Dual Port中有處理器發(fā)送的數(shù)據(jù),立即啟動工作進(jìn)行相應(yīng)處理后輸出給UART核。處理器也可以將待發(fā)送給串行外設(shè)的數(shù)據(jù)一次發(fā)送到所有通道上的Dual Port中,然后供各通道上的協(xié)處理器處理,處理器將數(shù)據(jù)存放在各通道上的Dual Port中后可以立即去處理其他的任務(wù),無需再花大量時間去等待低速的UART接受,這樣大大降低了處理器的負(fù)荷和等待時間。本發(fā)明中的協(xié)處理器MCU和Dual Port可以實時高效的將待發(fā)送的數(shù)據(jù)輸出給UART核,或?qū)⑻幚砥鞔邮盏臄?shù)據(jù)實時存放在相應(yīng)通道的Dual Port中,各個串行通道完全獨立,互不影響。
[0024]數(shù)據(jù)傳輸帶寬是串行通信的瓶頸,串行通道數(shù)量越多帶寬越低。本發(fā)明提出的基于SoC FPGA的多串口并行處理架構(gòu)引入了協(xié)處理器MCU和Dual Port存儲器,可以讓高速的CPU高效發(fā)送數(shù)據(jù)到低速的UART核,或?qū)崟r接收來自于UART外設(shè)的數(shù)據(jù),每個通道均設(shè)數(shù)據(jù)緩存存儲器Dual port、協(xié)處理器MCU,各通道互相獨立,并行工作。串行總線上數(shù)據(jù)帶寬是所有通道上最大帶寬的總和,對于8路RS422,總線帶寬可高達(dá)64Mbit/s。
[0025]串行通訊標(biāo)準(zhǔn)的靈活支持也是串行通訊所期望的功能。除了常用的RS232標(biāo)準(zhǔn),還有RS422、RS485標(biāo)準(zhǔn),專用的UART芯片很少有可以同時支持RS232/RS422/RS485的,即使有能同時支持三種通訊協(xié)議的專用UART芯片,其價格也較貴,靈活性和性價比低。
[0026]在本發(fā)明中,通過硬件描述語言在SoCFPGA內(nèi)部實現(xiàn)多個獨立工作的UART核和軟核協(xié)處理器MCU,數(shù)據(jù)鏈路層的通信協(xié)議工作在MCU里實現(xiàn),根據(jù)工程需要配合外部收發(fā)芯片,SoCFPGA只需稍作邏輯修改即可支持不同的通訊協(xié)議、波特率。
【權(quán)利要求】
1.一種基于SoC FPGA的多串口并行處理架構(gòu),包括收發(fā)器、集成了現(xiàn)場可編程邏輯門陣列FPGA和處理器CPU的SoC FPGA芯片,其特征在于:所述SoC FPGA芯片中的FPGA內(nèi)部通過硬件描述語言設(shè)計多個UART核和與各UART核相對應(yīng)的多個協(xié)處理器MCU ;FPGA內(nèi)嵌多個與各協(xié)處理器MCU相對應(yīng)的嵌入式存儲器,各嵌入式存儲器配置為可以讀寫操作的雙端口模式;所述多個UART核與多個相對應(yīng)的所述收發(fā)器通過RS232/RS422/RS485接口連接。
2.根據(jù)權(quán)利I要求所述的一種基于SoCFPGA的多串口并行處理架構(gòu),其特征在于:所述SoC FPGA芯片中的FPGA內(nèi)由相對應(yīng)的UART核、協(xié)處理器MCU和嵌入式存儲器依次連接組成的多路串行通道,各通道互相獨立,所述CPU可同時掃描并處理所有通道的外設(shè)信息。
3.根據(jù)權(quán)利I要求所述的一種基于SoCFPGA的多串口并行處理架構(gòu),其特征在于:所述協(xié)處理器MCU完成數(shù)據(jù)鏈路層工作,SoC FPGA芯片內(nèi)的處理器CPU完成應(yīng)用層工作。
【文檔編號】G06F13/20GK103714024SQ201310693770
【公開日】2014年4月9日 申請日期:2013年12月18日 優(yōu)先權(quán)日:2013年12月18日
【發(fā)明者】劉玉升, 王楠 申請人:國核自儀系統(tǒng)工程有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
临猗县| 洱源县| 随州市| 清苑县| 邢台县| 海伦市| 洪湖市| 富蕴县| 马龙县| 且末县| 京山县| 白水县| 涪陵区| 库伦旗| 灵璧县| 焦作市| 岳池县| 黄陵县| 比如县| 平湖市| 庆云县| 蕉岭县| 金乡县| 丹阳市| 洛浦县| 泾川县| 明光市| 牡丹江市| 东台市| 柞水县| 乌拉特后旗| 张家口市| 江油市| 蒲城县| 上饶市| 孝义市| 巍山| 纳雍县| 兴隆县| 鹤山市| 扶绥县|