SOPC設計中的兩種片上總線(xiàn)分析
SoC(Systemon Chip,片上系統)以其能提高產(chǎn)品性能、縮小產(chǎn)品體積等優(yōu)點(diǎn),逐漸成為嵌入式系統發(fā)展的主流趨勢。SOPC(System On a Programmable Chip,可編程片上系統)利用可編程邏輯器件來(lái)實(shí)現SoC,具有設計方式靈活,可裁減、可擴充、可升級,并具備軟硬件在系統可配置的性能。將處理器IP(Intellectual Property,知識產(chǎn)權)內核嵌入到可編程邏輯器件是SOPC設計的前提條件。
在A(yíng)ltera的FPGA器件上嵌入處理器等IP核可實(shí)現SOPC,設計時(shí)可使用的RISC處理器核有3種:ARM的工業(yè)標準處理器硬核ARM922T、Altera的16位Nios和32位Nios II處理器軟核,而片上總線(xiàn)可采用AMBA和Avalon兩種總線(xiàn)。在嵌入了ARM922T的Excalibur系列FPGA上,使用了AMBA總線(xiàn)的高性能總線(xiàn)AHB(Advanced High-performance Bus);而在可嵌入Nios的FPGA上則使用Avalon總線(xiàn)。這兩種總線(xiàn)也是目前SoC設計使用較多的片上總線(xiàn)標準。
1 片上總線(xiàn)與傳統總線(xiàn)體系的比較
片上總線(xiàn)是實(shí)現SoC中IP核連接最常見(jiàn)的技術(shù)手段,它以總線(xiàn)方式實(shí)現IP核之間的數據通信。片上總線(xiàn)規范一般需要定義各個(gè)模塊之間初始化、仲裁、請求傳輸、響應、發(fā)送接收等過(guò)程中的驅動(dòng)、時(shí)序、策略等關(guān)系。
傳統總線(xiàn)協(xié)議中,仲裁器控制一至多個(gè)總線(xiàn)主設備與從設備的通信??偩€(xiàn)主設備首先通過(guò)仲裁器來(lái)申請總線(xiàn)控制權,然后仲裁器才允許單一主設備訪(fǎng)問(wèn)總線(xiàn)。如果多個(gè)主設備試圖同時(shí)訪(fǎng)問(wèn)總線(xiàn),仲裁器將根據既定的仲裁策略,將總線(xiàn)資源分配給其中一個(gè)主設備。例如,在優(yōu)先級仲裁機制中,優(yōu)先級高的主設備將首先得到總線(xiàn)控制權。
控制總線(xiàn)的主設備會(huì )占用總線(xiàn),并與相應從設備通信。圖1說(shuō)明了優(yōu)先級仲裁總線(xiàn)體系的結構,該體系在傳統微處理器系統中工作良好。由于主、從設備是位于印制板或底板上的獨立部件,總線(xiàn)需要驅動(dòng)底板上的信號和連接器。而且,鑒于有限的印制板資源和可用I/O引腳數目,所有系統部件還必須共用總線(xiàn)。
片上總線(xiàn)無(wú)需驅動(dòng)底板上的信號和連接器,使用更簡(jiǎn)單且速度更快;同時(shí),為了滿(mǎn)足帶寬要求,片上總線(xiàn)普遍采用并發(fā)多主設備總線(xiàn)體系。這種總線(xiàn)體系通過(guò)消除傳統總線(xiàn)系統中一次僅有一個(gè)主設備可以訪(fǎng)問(wèn)系統總線(xiàn)的帶寬瓶頸,來(lái)增加系統帶寬。在此體系中,總線(xiàn)主設備競爭的是獨立的從設備,而非總線(xiàn)本身。
2 AMBA總線(xiàn)及其應用
2.1 AMBA總線(xiàn)
AMBA(Advanced Microcontroller Bus Architecture)總線(xiàn)用于高性能嵌入式系統,獨立于處理器和制造工藝技術(shù),增強了各種應用中外設和系統宏單元的可重用性。AMBA是多總線(xiàn)體系,目前的AMBA總線(xiàn)規范2.0版定義了3種可以組合使用的總線(xiàn)體系:APB(Advanced Peripheral Bus),ASB(Advanced System Bus),AHB。AHB是現階段AMBA的主要形式。
評論