SOPC在PCI總線高速數(shù)據(jù)傳輸系統(tǒng)中的應(yīng)用
SOPC是Ahera公司提出的一種靈活、高效的片上系統(tǒng)解決方案,它將處理器、存儲器、I/O口以及一些通用的功能模塊集成在一個(gè)PLD器件上,構(gòu)成一個(gè)可編程的片上系統(tǒng)。利用SOPC開發(fā)偵察接收機(jī)中的PCI總線接口,具有開發(fā)周期短、系統(tǒng)穩(wěn)定性好的優(yōu)點(diǎn)。
2.1 系統(tǒng)實(shí)現(xiàn)
PCI總線接口的SOPC內(nèi)部結(jié)構(gòu)如圖2所示。實(shí)現(xiàn)PCI總線DMA傳輸系統(tǒng)使用到4類功能模塊,分別是實(shí)現(xiàn)PCI橋邏輯的pci_comiler組件(pci_c ompiler)、負(fù)責(zé)數(shù)據(jù)傳輸?shù)腄MA控制器(dma)、控制整個(gè)SOPC的NiosII處理器(cpu)及其數(shù)據(jù)程序存儲器(onchip_mem),以及SOPC和外部用戶邏輯通信的接口模塊(BA1、DMARD和datardy),上述組件通過avalon總線連接在一起組成SOPC。
PCI總線DMA傳輸系統(tǒng)功能模塊之間的交互過程如圖3所示,過程描述如下:
?。?)CPU等待PC使能DMA傳輸,PC使能DMA后,執(zhí)行(2);
?。?)PC等待乒乓RAM的數(shù)據(jù)準(zhǔn)備好信號,數(shù)據(jù)準(zhǔn)備好后,執(zhí)行(3);
?。?) CPU將DMA的讀/寫地址和傳輸長度參數(shù)寫入DMA控制器中,使能DMA控制器,DMA控制器開始數(shù)據(jù)傳輸,即讀口通過DMARD接口從RAM中讀數(shù),寫口將數(shù)據(jù)寫到PCI橋,PCI橋?qū)?shù)據(jù)送至PCI總線;
?。?)當(dāng)傳輸結(jié)束后,DMA控制器產(chǎn)生一個(gè)中斷(IRQ1)送CPU;
?。?)CPU判斷傳輸是否完成,傳輸完成則通過PCI橋向PC發(fā)送中斷,并執(zhí)行(1),開始下一次DMA傳輸;
?。?)PCI總線發(fā)生異常時(shí),PCI橋邏輯中斷CPU,CPU查詢異常狀態(tài),并自動從異常中恢復(fù)。
評論