基于Linux的SoPC開(kāi)發(fā)
SoPC(System on Programmable Chip)是一種特殊的嵌入式系統。首先,它是一種SoC系統,即由一個(gè)芯片完成系統的主要邏輯功能;其次,它是可編程的片上系統,即可配置、可裁減、可擴充、可升級,具有硬件系統的可編程性。采用SoPC的設計,具有很大的靈活性。
本文引用地址:http://dyxdggzs.com/article/150696.htm它可以根據需要定制各個(gè)硬件模塊,包括處理器、總線(xiàn)、存儲器和通信模塊等,這就使得在一個(gè)芯片上搭建一個(gè)按需定制的SoC系統成為可能。而Linux系統也因為其良好的可裁減、可配置的特點(diǎn)廣泛應用于各種嵌入式系統,Linux操作系統提供了許多系統級的應用,例如網(wǎng)絡(luò )協(xié)議的實(shí)現、進(jìn)程調度、內存管理等,同時(shí)Linux是一個(gè)成熟的開(kāi)源操作系統,有豐富的應用資源。利用這些資源和強大的系統功能,用戶(hù)可以基于嵌入式Linux快速地開(kāi)發(fā)出面向復雜應用的嵌入式系統。因此,結合SoPC和Linux優(yōu)勢,可以很好地滿(mǎn)足嵌入式系統根據需求量體裁衣,去除冗余。本文給出基于Linux的SoPC應用系統的開(kāi)發(fā)方法及一個(gè)具體的嵌入式應用開(kāi)發(fā)實(shí)例。
1 硬件開(kāi)發(fā)環(huán)境
1.1 開(kāi)發(fā)平臺
本文所采用的開(kāi)發(fā)平臺是AVNET公司生產(chǎn)的VIRTEX-II PRO FF1152開(kāi)發(fā)板,它使用XILINX公司的Virtex-II Pro FPGA芯片XC2VP50-6FF1152C,同時(shí)開(kāi)發(fā)板還有2個(gè)8MB×32的SDRAM存儲器、2個(gè)RS232接口、一個(gè)以太網(wǎng)接口、1個(gè)LCD顯示屏、8個(gè)LED燈,同時(shí)支持SPI-4.2的高速16bit LVDS接口、iSFP GbE光纖接口、System ACE接口以及一個(gè)P160標準的擴展模塊[1]。
1.2 基于PowerPC的片上系統
XC2VP50-6FF1152C芯片內部含有兩個(gè)IBM PowerPC 405核。PowerPC405是32位的RISC處理器,它采用IP植入架構的形式整合到XILINX公司的Virtex-II Pro FPGA器件中。
PowerPC硬核具有許多優(yōu)點(diǎn)適合軟件的開(kāi)發(fā)設計[2]:具有三個(gè)定時(shí)器:即可編程的內部定時(shí)器、固定的內部定時(shí)器和看門(mén)狗定時(shí)器和靈活的存儲管理和用于加強計算功能的乘法累加指令。PowerPC的強大功能可以勝任許多復雜應用系統對處理能力和運算速度的需求。同時(shí),利用雙核機制以及操作系統的進(jìn)程調度可以大幅度地提高處理速度。
通過(guò)XILINX公司的EDK開(kāi)發(fā)軟件,可以很方便地在Virtex-II Pro系列芯片上搭建自己需要的硬件系統。處理器方面可以選擇硬核IP:PPC405,或者軟核IP:Microblaze;總線(xiàn)有OPB和PLB兩種總線(xiàn)可供選擇;同時(shí),還有豐富的外圍IP可以選擇;在通信方面,分別有支持高速和低速的通信模塊。支持高速的IP有:plb_etherne、opb_ethernet、opb_ethernetlite和plb_gemac等,支持低速的IP有:opb_iic、opb_spi、opb_uart16550和opb_uartlite等;在存儲控制器方面,可選擇的 IP有opb_sdram、opb_ddr、opb_emc、opb_sysace、plb_sdram、 plb_ddr和plb_emc等模塊;其他方面還有支持中斷、定時(shí)、GPIO、PCI等功能的IP模塊。豐富的IP模塊,加上可以利用IPIC(IP Interconnect)連接用戶(hù)定制的IP,因而用戶(hù)使用CPU時(shí),不需要再另外使用一個(gè)SDRAM控制器芯片,或者另外使用一個(gè)以太網(wǎng)的控制芯片,極其方便。
可編程片上系統由處理器、總線(xiàn)互連和外圍設備等組成,典型的基于PowerPC的片上系統的架構如圖1所示。
1.3 CoreConnect的總線(xiàn)結構[3]
總線(xiàn)互連是片上系統的一項關(guān)鍵技術(shù)。本系統采用了CoreConnect的總線(xiàn)結構。該總線(xiàn)結構是IBM公司開(kāi)發(fā)的一種片上通信的總線(xiàn)互連技術(shù)。它的應用使得系統核、外設核、處理器核的復用、連接變得更加容易。這里,系統核是針對PLB總線(xiàn)上的功能IP模塊的,而外設核是針對OPB總線(xiàn)上的功能模塊的。CoreConnect總線(xiàn)互連是由本地邏輯總線(xiàn)PLB(Peripheral Logic Bus)、片上外圍總線(xiàn) OPB(On chip Peripheral Bus)、一個(gè)總線(xiàn)橋、兩個(gè)判決器,以及設備控制總線(xiàn)DCR(Device Control Register構成的,其結構如圖2所示。
評論