一種基于pci-e接口的大規(guī)模plc高速背板總線系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于高速背板總線技術(shù)領(lǐng)域,特別涉及一種基于PC1-E接口的大規(guī)模PLC高速背板總線系統(tǒng)。
【背景技術(shù)】
[0002]隨著電子技術(shù)、計算機(jī)技術(shù)、通信網(wǎng)絡(luò)控制技術(shù)和工業(yè)自動化控制技術(shù)的飛速發(fā)展和日益普及,在工業(yè)控制系統(tǒng)領(lǐng)域中,誕生于上世紀(jì)60年代的可編程邏輯控制器(PLC)的功能日益強(qiáng)大,已經(jīng)由傳統(tǒng)的單機(jī)PLC控制/網(wǎng)絡(luò)通信朝向網(wǎng)絡(luò)化大規(guī)模PLC系統(tǒng)發(fā)展,在軌道交通、石化等領(lǐng)域已出現(xiàn)萬點以上大規(guī)模PLC系統(tǒng)的應(yīng)用需求。
[0003]PLC背板總線的實現(xiàn)是PLC系統(tǒng)向大型化方向發(fā)展的一個技術(shù)難點。PLC系統(tǒng)通常采用傳統(tǒng)的串行通信技術(shù)實現(xiàn)背板總線,串行總線可以提高在惡劣的工廠和工業(yè)環(huán)境下自動化設(shè)備的可靠性。傳統(tǒng)的串行通信技術(shù)的包括can、i2c、uart、sp1、usb和以太網(wǎng)等,一般來說,很多作為PLC系統(tǒng)主芯片的處理器自身都集成了這些外設(shè)部件。但是處理器內(nèi)部集成的I2C、UART, SPI等外設(shè)通信速率太慢,根本不能滿足底板總線的通信速率要求。USB和以太網(wǎng)的通信速度雖然很快,但由于它們都是通用的接口,在通信協(xié)議處理時需要處理器的干預(yù),處理器處理速度較慢,因此整體通信速度仍然很慢。
[0004]針對上述現(xiàn)狀,國內(nèi)外著名生產(chǎn)商所使用的大規(guī)模PLC系統(tǒng)背板總線大都是基于公開的總線協(xié)議進(jìn)行個性化的修改和設(shè)計,并出于商業(yè)的目的對背板總線技術(shù)的具體實現(xiàn)方法進(jìn)行保密,因此對PLC系統(tǒng)高速背板總線實現(xiàn)技術(shù)無相關(guān)報道。同時,國內(nèi)外知名PLC系統(tǒng)公司推出了眾多產(chǎn)品,但由于PLC系統(tǒng)生產(chǎn)商都各自獨立進(jìn)行背板總線的開發(fā)工作,使得不同廠商間的兼容性不強(qiáng),用戶無法根據(jù)實際的工業(yè)環(huán)境自行配置不同廠商的模塊,并且對特定廠商的PLC產(chǎn)品的依賴性強(qiáng),而且傳輸速度不高、價格上昂貴。
[0005]PLC系統(tǒng)主機(jī)是通過背板總線支持?jǐn)U展模塊的連接,背板總線是CPU處理器同I/O模塊之間的高速數(shù)據(jù)通路,支持CPU和擴(kuò)展模塊之間的高速數(shù)據(jù)通路和I/O數(shù)據(jù)刷新。背板總線技術(shù)水平?jīng)Q定了 PLC系統(tǒng)的I/O擴(kuò)展能力,是PLC系統(tǒng)設(shè)計的核心技術(shù)。特別是大型的PLC系統(tǒng)需要采集上千點I/O數(shù)據(jù)的處理時間極短,要滿足如此高速的通信要求必須采用新型高性能總線技術(shù)。
[0006]隨著總線接口技術(shù)的發(fā)展,傳統(tǒng)共享總線的數(shù)據(jù)傳輸方式已不能滿足日益增多的設(shè)備互聯(lián)需求,新型高性能總線技術(shù)逐漸獲得市場的關(guān)注。在傳統(tǒng)共享總線的體系結(jié)構(gòu)中,所有設(shè)備都爭用總線帶寬,因此,設(shè)備越多,每個設(shè)備可用的帶寬就越少,從而帶來嚴(yán)重的總線瓶頸。在互聯(lián)領(lǐng)域中,使用交換互聯(lián)總線代替并行總線是大勢所趨,在這種點對點的交換式總線結(jié)構(gòu)中,數(shù)據(jù)傳輸是基于包格式的,不需要地址寄存器映射,每個設(shè)備通過網(wǎng)絡(luò)連接到其他設(shè)備,大量設(shè)備可同時通信,提高了系統(tǒng)帶寬。與傳統(tǒng)的單端并行信號相比,交換互聯(lián)信號可以使用更高時鐘頻率,從而使用更少的信號線來完成需要許多單端并行數(shù)據(jù)信號才能達(dá)到的總線帶寬。除此之外,傳統(tǒng)并行傳輸技術(shù)由于引腳多,帶來了一定的電氣和機(jī)械特性等問題,使信號頻率和信號傳輸距離受到限制。新型高性能總線大多采用了串行I/O技術(shù),由于互聯(lián)信號線數(shù)量的減少,消除了由并行總線帶來的信號偏移問題。
[0007]PCI Express技術(shù)是第三代高性能I/O總線,在PCI和PC1-X總線的基礎(chǔ)上進(jìn)行了根本性的變革,實現(xiàn)了新的飛躍,提供了高速率、高性能、點到點的、雙單工鏈路。采用串行差分信號來連接PCI Express端點設(shè)備,支持芯片到芯片、板卡到板卡間的通訊,并且突破了關(guān)鍵難題,已經(jīng)走出實驗室,正在努力推進(jìn)產(chǎn)業(yè)化的發(fā)展,是作為大規(guī)模PLC背板連接技術(shù)的極佳選擇。
[0008]發(fā)明目的
[0009]本發(fā)明的目的是為了解決大規(guī)模PLC系統(tǒng)高速背板總線的實現(xiàn)問題,而提出一種可從多個端點設(shè)備獲取事務(wù)數(shù)據(jù),處理器運行用戶程序處理經(jīng)過大規(guī)??删幊踢壿嬯嚵薪獯a后的事務(wù)數(shù)據(jù),從而得到相應(yīng)處理結(jié)果,并且能將處理得到的結(jié)果通過背板總線鏈路發(fā)送至端點設(shè)備的基于PC1-E接口的大規(guī)模PLC系統(tǒng)高速背板總線系統(tǒng)。
【發(fā)明內(nèi)容】
[0010]為了實現(xiàn)上述目的,本發(fā)明的技術(shù)方案是一種基于PC1-E接口的大規(guī)模PLC系統(tǒng)高速背板總線系統(tǒng),是通過下述技術(shù)方案實現(xiàn)的。
[0011]包括至少一個基于PC1-E接口的CPU模塊和至少一個基于PC1-E接口的端點設(shè)備,所述的CPU模塊和端點設(shè)備通過同一個PCI Express背板總線互相連接并通信,CPU模塊和端點設(shè)備的事務(wù)數(shù)據(jù)通過PC1-E接口數(shù)據(jù)包的方式在背板總線中進(jìn)行路由傳輸;
[0012]CPU模塊包括FPGA核心電路,CPU核心電路,DDR, Flash和FIFO ;其中FPGA核心電路包括一塊FPGA及外圍與FPGA連接的時鐘電路和濾波電路,其硬件邏輯結(jié)構(gòu)包括系統(tǒng)仲裁模塊以及分別與系統(tǒng)仲裁模塊通信連接的PC1-E數(shù)據(jù)收發(fā)模塊、PC1-E協(xié)議解析模塊、DMA控制模塊、DDR控制模塊、Flash控制模塊和FIFO控制模塊;PCI_E數(shù)據(jù)收發(fā)模塊通過金手指與PCI Express背板總線物理層電路相連,分別完成接收PC1-E數(shù)據(jù)包和發(fā)送用戶程序處理結(jié)果;PC1-E協(xié)議解析模塊接收端點設(shè)備發(fā)送的數(shù)據(jù)包,按照接口標(biāo)準(zhǔn)解析數(shù)據(jù)包獲取事務(wù)數(shù)據(jù);DMA控制模塊控制數(shù)據(jù)格式的打包解包和數(shù)據(jù)的搬運;DDR控制模塊通過FPGA接口與片外DDR相連接,對DDR實現(xiàn)配置、讀寫數(shù)據(jù),DDR為處理結(jié)果數(shù)據(jù)緩存;Flash控制模塊通過FPGA接口與片外Flash相連接,對Flash實現(xiàn)配置、讀寫數(shù)據(jù)和擦除等操作,F(xiàn)lash為數(shù)據(jù)備份存儲器;FIF0控制模塊通過FPGA接口與片外FIFO相連接,對FIFO實現(xiàn)配置、讀寫數(shù)據(jù),F(xiàn)IFO為FPGA與CPU間的數(shù)據(jù)交換橋;系統(tǒng)仲裁模塊協(xié)調(diào)各個硬件邏輯模塊之間的數(shù)據(jù)交換;CPU核心電路包括Microblaze軟核處理器或ARM硬核處理器及外圍與CPU處理器連接的時鐘、濾波電路,用于運行用戶程序以處理從FPGA處獲取的事務(wù)數(shù)據(jù);
[0013]根節(jié)點指的是連接CPU、DDR、Flash及PCI Express結(jié)構(gòu)的設(shè)備;它可能支持一個或多個PCI Express端口,本系統(tǒng)中的根節(jié)點支持兩個端口 ;每個端口連接一臺端點設(shè)備或一個交換開關(guān),在本系統(tǒng)的兩個端口中,一個連接端點設(shè)備,一個連接交換開關(guān);
[0014]交換開關(guān)用于PCI Express背板總線鏈路的擴(kuò)展;PCI Express總線使用端到端的連接方式,在一條PCI Express背板總線鏈路中,這兩個端口是完全對等地連接發(fā)送與接收設(shè)備,而且一條PCI Express背板總線鏈路的一端只能連接一個發(fā)送設(shè)備或者接收設(shè)備,因此必須使用交換開關(guān)擴(kuò)展PCI Express背板總線鏈路,使其能連接多個設(shè)備;
[0015]端點設(shè)備是不同于根節(jié)點和交換開關(guān)的其它設(shè)備,這些設(shè)備是PCI Express事務(wù)的請求者或完成者,可以作為請求者發(fā)起事務(wù),或者作為完成者對事務(wù)做出響應(yīng),在本系統(tǒng)中包括PLC中具備PC1-E接口的設(shè)備,例如I/O模塊、智能模塊或特殊模塊。
[0016]本發(fā)明的一種基于PC1-E接口的大規(guī)模PLC高速背板總線系統(tǒng),其特征在于系統(tǒng)的工作過程為:
[0017]步驟1:端點設(shè)備和CPU模塊通過根節(jié)點和交換開關(guān)連接到同一個背板總線鏈路內(nèi),系統(tǒng)上電初始化、系統(tǒng)自檢,根節(jié)點代表CPU發(fā)起配置事務(wù)請求初始化PLC系統(tǒng),系統(tǒng)開始工作;
[0018]步驟2:CPU運行用戶程序,生成存儲器訪問請求從DDR、Flash取出數(shù)據(jù)進(jìn)行處理;在用戶程序執(zhí)行過程中,CPU和端點設(shè)備都有可能作為請求者發(fā)起事務(wù)請求或完成者完成事務(wù)請求,按照以下規(guī)則循環(huán)工作以實現(xiàn)事務(wù)通信:
[0019]I)如果根節(jié)點代表CPU作為請求者發(fā)起事務(wù),端點設(shè)備作為完成者對事務(wù)做出響應(yīng),則根節(jié)點把打包生成的請求事務(wù)數(shù)據(jù)包發(fā)送到背板總線鏈路中,該數(shù)據(jù)包直接發(fā)送至對應(yīng)的端點設(shè)備,或經(jīng)過交換開關(guān)轉(zhuǎn)發(fā)至下游對應(yīng)的端點設(shè)備,端點設(shè)備解碼獲取的數(shù)據(jù)包收集請求數(shù)據(jù),若為非報告事務(wù)則還會返回一個帶數(shù)據(jù)的完成事務(wù)數(shù)據(jù)包;
[0020]2)如果端點設(shè)備作為請求者發(fā)起事務(wù),根節(jié)點代表CPU作為完成者對事務(wù)做出響應(yīng),則端點設(shè)備把打包生成的請求事務(wù)數(shù)據(jù)包發(fā)送到背板總線鏈路中,該數(shù)據(jù)包直接發(fā)送至根節(jié)點,或經(jīng)過交換開關(guān)轉(zhuǎn)發(fā)至上游的根節(jié)點,根節(jié)點解碼獲取的數(shù)據(jù)包收集請求數(shù)據(jù),若為非報告事務(wù)則還會返回一個帶數(shù)據(jù)的完成事務(wù)數(shù)據(jù)包;
[0021]步驟3:顯示屏實時顯示所選端點設(shè)備數(shù)據(jù)和控制參數(shù)。
[0022]本發(fā)明的一種基于PC1-E接口的大規(guī)模PLC高速背板總線系統(tǒng),其特征在于CPU模塊可以配置系統(tǒng)參數(shù):
[0023]I) CPU模塊可以配置端點設(shè)備ID地址、數(shù)據(jù)刷新率、運行模式等參數(shù);
[0024]2) CPU模塊可以配置本模塊ID地址、程序掃描頻率、運行模式、與端點設(shè)備對應(yīng)等參數(shù);
[0025]3) CPU模塊可以調(diào)取任意端點設(shè)備實時數(shù)據(jù)和控制參數(shù)并顯示在顯示屏上;
[0026]4) CPU模塊可以將背板總線鏈路中事務(wù)數(shù)據(jù)存儲起來,并且能夠查閱歷史數(shù)據(jù)。
[0027]本發(fā)明的一種基于PC1-E接口的大規(guī)模PLC高速背板總線系統(tǒng),其特征在CPU模塊中FPGA均選用Xilinx的Virtex-5系列型號為XC5VLX110T芯片或Zynq-7000系列型號為XC7Z045芯片。
[0028]本發(fā)明的一種基于PC1-E接口的大規(guī)模PLC高速背板總線系統(tǒng),其特征在CPU模塊中CPU處理器均選用Xilinx FPGA提供的Microblaze軟核處理器或XC7Z045芯片內(nèi)置的ARM Corte-A9雙核處理器。
[0029]本發(fā)明的一種基于PC1-E接口的大規(guī)模PLC高速背板總線系統(tǒng),其特征在CPU模塊中 DDR 選用型號為 MT9HTF6472Y-667B3 芯片或 MT8JTF12864HZ-1G6G1 芯片。
[0030]本發(fā)明的一種基于PC1-E接口的大規(guī)模PLC高速背板總線系統(tǒng),其特征在CPU模塊中 Flash 選用型號為 JS28F256P30T95、M25P32 芯片或 S25FL128SAGMFIR01 芯片。
[0031]本發(fā)明的一種基于PC1-E接口的大規(guī)模PLC高速背板總線系統(tǒng),其特征在CPU模塊中FIFO的均通過Block RAM(BRAM)編程實現(xiàn)。
[0032]本發(fā)明的一種基于PC1-E接口的大規(guī)模PLC高速背板總線系統(tǒng),其特征在CPU模塊中PC1-