国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

AMBA總線SoC系統(tǒng)IP核的即插即用研究

發(fā)布時間:2010-1-19 10:36    發(fā)布者:李寬
關(guān)鍵詞: AMBA , SoC , 即插即用 , 系統(tǒng) , 總線
引言

SoC設(shè)計的快速發(fā)展是以IP核復(fù)用為基礎(chǔ)的。IP核的復(fù)用極大地提高了SoC系統(tǒng)設(shè)計的開發(fā)效率,SoC 片上總線的選擇是IP核間集成與互連的關(guān)鍵技術(shù)之一。目前片上總線的標(biāo)準(zhǔn)協(xié)議眾多,如ARM公司提出的AMBA總線、OPEN CORES組織提出的WishBone總線、IBM公司提出的CoreConnect總線等。SoC片上總線的多樣性對IP核的封裝規(guī)范提出了要求。標(biāo)準(zhǔn)的IP核封裝規(guī)范有助于提高IP核的復(fù)用甚至實現(xiàn)核的即插即用;谔岣逫P核復(fù)用以及即插即用目的,OCP-IP組織提出了OCP-IP標(biāo)準(zhǔn)。

1 OCP-lP標(biāo)準(zhǔn)介紹

1.1 OCP協(xié)議

OCP(Open Core Protoco1)標(biāo)準(zhǔn)是OCP-IP組織制定的一種以提高IP核的復(fù)用及實現(xiàn)IP核的即插即用為目的的IP核標(biāo)準(zhǔn)。SoC芯片設(shè)計不再是門級的設(shè)計,而是IP核復(fù)用及其接口的設(shè)計。IP核要集成到一個SoC系統(tǒng)中,要考慮很多問題,例如:模塊間的同步,如全局執(zhí)行、數(shù)據(jù)交換的同步操作等;協(xié)議轉(zhuǎn)換匹配,不同IP核模塊間可能使用不同的協(xié)議,這樣必須考慮協(xié)議轉(zhuǎn)換的問題。這些問題給IP復(fù)用帶來了一定的難度,并使SoC芯片的time-to-market (上市時間)延長。為解決這些問題,一些大公司提出了自己的總線接口標(biāo)準(zhǔn),如ARM的AMBA總線、IBM的CoreConnect總線、Altera的 Avalon總線等。因為核的多樣性,使用完全相同的總線接口是不現(xiàn)實的。這就意味著,如果總線A上的一個IP核要移植到另一系統(tǒng)的總線B上,就需要更改此IP的接口以及數(shù)據(jù)交換的方式。如果設(shè)計者不了解總線B的數(shù)據(jù)交換協(xié)議,這樣就對SoC系統(tǒng)的開發(fā)帶來一系列困難。OCP-IP正是針對這些問題提出的。OCP協(xié)議是免費的,獨立于具體的總線。它將軟件中的分層概念應(yīng)用到IP核接口,提供一種具有通用結(jié)構(gòu)定義、可擴(kuò)展的接口協(xié)議,能完全滿足IP內(nèi)核通信機(jī)制的所有要求,方便了IP核與系統(tǒng)的集成。

OCP協(xié)議使IP核的功能與系統(tǒng)的接口無關(guān),設(shè)計人員不需要了解IP核的功能也能利用它進(jìn)行系統(tǒng)設(shè)計。OCP接口允許設(shè)計者根據(jù)不同的目的配置接口,包括接口的數(shù)據(jù)寬度、交換的握手協(xié)議等,并且在SoC設(shè)計中可以裁剪核的功能,降低設(shè)計復(fù)雜性,減小面積,同時滿足SoC的要求;OCP接口還保持核在集成到系統(tǒng)的過程中完全不被改變(即在總線寬度、總線頻率或電氣負(fù)載有變化時核保持不變)。使用OCP接口的設(shè)計可以交付即插即用的模塊,同時支持核的開發(fā)與系統(tǒng)設(shè)計并行,節(jié)省設(shè)計時間。

OCP采用套接口(socket)的方法實現(xiàn)IP核的即插即用,如圖1所示。Target Bus A表示總線A,Target Bus B表示總線B。不論總線A或者總線B是哪一類總線協(xié)議,只要總線上提供了OCP的接口,那么符合OCP協(xié)議的IP核就可以隨意集成到任意總線上去,不需要重新設(shè)計IP核的接口。



1.2 OCP通信方式

OCP協(xié)議定義了兩個通信實體問點到點的接口。其中一個實體作為通信的主體(Master),另一個作為從體(Slave)。只有Master可以發(fā)命令,Slave響應(yīng)Master的命令,接收或發(fā)送數(shù)據(jù)。封裝接口模塊必須擔(dān)當(dāng)每個連接實體的對應(yīng)端,當(dāng)連接實體是Master時,封裝接口模塊就作為對應(yīng)的Slave;當(dāng)連接實體是Slave時,封裝接口模塊作Master。

OCP的系統(tǒng)架構(gòu)如圖2所示。圖中有3個IP核,其中左邊標(biāo)有主控的IP核是通信的發(fā)起方或者主控方,稱為Master;最右邊標(biāo)有目標(biāo)的是通信的目標(biāo)對象,稱為Slave;中間的IP核既可作為Master又可作Slave;下面的框代表OCP-IP封裝接口模塊;從Master出來并進(jìn)入Slave的箭頭表示OCP請求命令,從Slave出來并進(jìn)入Master的箭頭表示OCP的響應(yīng)。2個IP核通過接口通信的過程是:功能為Master的IP核發(fā)出請求命令給對應(yīng)的Slave端(總線封裝接口模塊);封裝接口模塊將請求命令轉(zhuǎn)換成對應(yīng)的總線命令傳送給接收方的總線封裝模塊;接收方的總線封裝模塊再作為Master,把對應(yīng)的內(nèi)部總線傳輸轉(zhuǎn)換成標(biāo)準(zhǔn)的OCP命令傳送給目標(biāo)IP核,目標(biāo)IP核接收到命令并響應(yīng)命令和返回讀寫的數(shù)據(jù)。



2 基于AMBA總線的OCP接口設(shè)計

AMBA(Advaneed Microcontroller Bus Architecture)總線規(guī)范是ARM公司設(shè)計的一種用于高性能嵌入式系統(tǒng)的總線標(biāo)準(zhǔn)。AMBA總線規(guī)范是開放標(biāo)準(zhǔn),通過ARM公司的授權(quán)就可以免費獲得。它獨立于處理器和制造工藝技術(shù),增強(qiáng)了各種應(yīng)用中的外設(shè)和系統(tǒng)IP核單元的可重用性。2.O版AMBA標(biāo)準(zhǔn)定義了3組總線:AHB(AM-BA高性能總線)、ASB(AMBA系統(tǒng)總線)、和APB(AM-BA外設(shè)總線)。AHB總線應(yīng)用于要求高速度高帶寬的系統(tǒng)。本文以AHB總線為例,說明OCP -IP如何集成到SoC系統(tǒng)總線上。AMBA總線基本傳輸時序如圖3所示。HCLK表示AMBA系統(tǒng)時鐘,HADDR[31:0]表示32位地址總線, HWDATA[31:O]表示32位寫操作時的數(shù)據(jù)總線,HREADY是AMBA總線的讀寫狀態(tài)信號(狀態(tài)為低電平時,表示一次讀寫操作完成), HRDATA[31:0]表示讀操作時的數(shù)據(jù)總線。



OCP-IP核的功能是可裁剪的,即OCP-IP的大部分信號都是可選擇的。根據(jù)核的功能,選擇使用不同的信號。OCP協(xié)議中共有三大類型號:數(shù)據(jù)流信號 (dataflowsignals)、邊帶信號(sideband)、測試信號(test signals)。數(shù)據(jù)流信號主要包括:基本信號(basic signals)、簡單擴(kuò)展信號(simple extensions signals)、突發(fā)擴(kuò)展信號(burst exten-sions signals)和線程擴(kuò)展信號(thread extensions signals)。邊帶信號主要包括:復(fù)位(.Reset)、中斷(Interrupt)、錯誤(Error)等信號。測試信號主要包括用于支持掃描 (Scan)、時鐘控制和IEEE 1149.1(JTAG)的信號。此處用到的OCP信號包括:Reset(復(fù)位)、Clk(時鐘)、En-ableClk(時鐘使能)、MAddr(地址)、MCmd(命令)、MData(數(shù)據(jù))、SCmdAccept(命令接受)、SData(Slave數(shù)據(jù))、SResp(操作成功標(biāo)志)。簡單的 OCP讀寫時序如圖4所示。Request Phase表示請求階段,Response Phase表示響應(yīng)階段。A處由系統(tǒng)Master發(fā)出1個WR寫命令,并給出地址A1和數(shù)據(jù)D1。隨即Slave發(fā)出命令接受響應(yīng)ScmdAccept,此處一個周期完成了一個寫周期操作,不需要Slave給出寫操作成功響應(yīng)。C處系統(tǒng)Master發(fā)出一個RD讀命令,并給出要讀取的地址A2。Slave 隨即給出命令接受響應(yīng)信號SCmdAccept,在下一個時鐘周期D處Slave給出要讀取的數(shù)據(jù)D2并在Slave響應(yīng)信號SResp上給出讀操作成功標(biāo)志DVA。此處讀操作用了2個時鐘周期。



OCP-IP跟AMBA總線的通信通過設(shè)計2個狀態(tài)機(jī)來實現(xiàn),1個用于接收AMBA總線上的流水?dāng)?shù)據(jù),1個用于發(fā)送接收的數(shù)據(jù)并以O(shè)CP標(biāo)準(zhǔn)的方式發(fā)送。接收數(shù)據(jù)的狀態(tài)機(jī)編碼如下:



H_CTRL_PHASE1用于存儲第1級流水指令,H_CTRL_PHASE2用于存儲第2級流水指令,其狀態(tài)轉(zhuǎn)移圖如圖5所示。當(dāng)AMBA總線上發(fā)出第1個讀寫指令,狀態(tài)機(jī)進(jìn)入H_CTRL_PHASE1狀態(tài),并將第1個讀寫指令轉(zhuǎn)換成OCP命令。因為AMBA總線是基于流水的操作,所以第2條指令的發(fā)出不需要等第1條指令執(zhí)行結(jié)束。這時候,狀態(tài)機(jī)進(jìn)入H_CTRL_PHASE2狀態(tài),并將此指令存儲起來,等OCP命令執(zhí)行結(jié)束立即將此存儲的指令轉(zhuǎn)換成OCP命令。這時如果AMBA總線上再次發(fā)出第3條指令,則狀態(tài)機(jī)進(jìn)入H_CTRL_PHASE1狀態(tài),并存儲此指令。



發(fā)送接收到的數(shù)據(jù)的狀態(tài)機(jī)編碼如下:


  
狀態(tài)轉(zhuǎn)移圖如圖6所示。當(dāng)接收數(shù)據(jù)的狀態(tài)機(jī)接收到AMBA總線上的命令時,狀態(tài)機(jī)讓OCP接口進(jìn)入第1個讀寫操作狀態(tài),即READl狀態(tài)或者WRITE1 狀態(tài)。如果AMBA總線上有持續(xù)的流水操作命令,狀態(tài)機(jī)進(jìn)入READ2狀態(tài)或者WRITE2狀態(tài),即在AMBA流水操作的條件下,以1結(jié)尾的狀態(tài)的下一個狀態(tài)一定是以2結(jié)尾的狀態(tài),反之以2結(jié)尾的狀態(tài)的下一個狀態(tài)一定是以1結(jié)尾的狀態(tài)。



3 OCP-IP標(biāo)準(zhǔn)封裝軟件設(shè)計

OCP是一種IP的標(biāo)準(zhǔn),但不僅僅是IP的接口和數(shù)據(jù)的交換方式,還規(guī)定了IP的配置、端口等信息,即所謂的OCP配置文件。讀取OCP配置文件中的內(nèi)容,就可以知道此IP對應(yīng)的OCP接口的性能,從而對總線上的接口進(jìn)行配置,進(jìn)而實現(xiàn)IP的即插即用。雖然IP的功能是多樣的,總線的數(shù)據(jù)交互方式也是多樣的,但OCP接口的時序是固定的。這樣就可以通過設(shè)計軟件提取IP的端口信息,并自動生成相應(yīng)的OCP接口模塊。該封裝軟件運行流程如圖7所示。用戶的 IP可以直接掛在該SoC平臺上進(jìn)行驗證,同時也可以直接集成到其他帶有OCP接口的SoC系統(tǒng)中去,加快IP的驗證和系統(tǒng)的設(shè)計。



封裝軟件采用MFC(微軟基礎(chǔ)類庫)來編寫。通過設(shè)計用戶界面,用戶只要輸入IP的時鐘、地址、數(shù)據(jù)、讀寫控制信號等,就可以自動生成1個OCP的接口,以及標(biāo)準(zhǔn)的配置文件,從而實現(xiàn)IP的即插即用以及IP的統(tǒng)一管理。

結(jié)語

OCP是免費的基于點對點傳輸?shù)腎P核的標(biāo)準(zhǔn)協(xié)議,可重配置以及可擴(kuò)展性很強(qiáng),可以實現(xiàn)真正意義上的IP核即插即用,減少SoC系統(tǒng)設(shè)計的時間。本文討論了OCP-IP的協(xié)議與特點,設(shè)計了基于AMBA總線的OCP-IP接口,提出了一種IP自動封裝的方法,為IP核的集成和管理帶來極大的方便。

參考文獻(xiàn)

1. 張麗媛.章軍.陳新華 三種SoC片上總線的分析與比較 [期刊論文] -山東科技大學(xué)學(xué)報(自然科學(xué)版)2005(2)
2. 饒云華.鄢媛媛.朱小虎.周宇.曹陽 面向SoC的開放式IP核接口協(xié)議(OCP)研究 [期刊論文] -中國集成電路2007(2)
3. OCPIP OCP Specification Rev 2.1
4. ARM AMBA Specification Rev 2.0

作者:電子科技大學(xué) 周小練  王憶文  李平  來源:《單片機(jī)與嵌入式系統(tǒng)應(yīng)用》 2009(7)
本文地址:http://m.qingdxww.cn/thread-7811-1-1.html     【打印本頁】

本站部分文章為轉(zhuǎn)載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀點和對其真實性負(fù)責(zé);文章版權(quán)歸原作者及原出處所有,如涉及作品內(nèi)容、版權(quán)和其它問題,我們將根據(jù)著作權(quán)人的要求,第一時間更正或刪除。
您需要登錄后才可以發(fā)表評論 登錄 | 立即注冊

廠商推薦

  • Microchip視頻專區(qū)
  • 使用SAM-IoT Wx v2開發(fā)板演示AWS IoT Core應(yīng)用程序
  • 使用Harmony3加速TCP/IP應(yīng)用的開發(fā)培訓(xùn)教程
  • 集成高級模擬外設(shè)的PIC18F-Q71家族介紹培訓(xùn)教程
  • 探索PIC16F13145 MCU系列——快速概覽
  • 貿(mào)澤電子(Mouser)專區(qū)

相關(guān)視頻

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權(quán)所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 手机三级在线| 婚后被调教当众高潮H喷水| 国产成人一区免费观看| 男人团apk| 永久adc视频年龄确认| 四虎欧美永久在线精品免费| 日本性网站| 亚洲看片网站| 亚洲va在线va天堂va四虎| 插骚妇好爽好骚| 嫩草影院在线观看网站成人| 亚洲精品tv久久久久| 日本人亚洲人jizz| 亚洲综合视频在线| 亚洲咪咪| 超碰97人人做人人爱网站| 色99久久久久高潮综合影院| 欧美日韩一区二区中文字幕视频| 亚洲最新黄色网址| 亚洲欧美日韩在线观看二区| 亚洲欧美亚洲| 大学生宿舍飞机china free| 鞋奴的视频VK| 亚洲精品美女久久久aaa| 欧美在线视频免费播放| 亚洲成人免费网址| 亚洲精品91香蕉综合区| xvideos中文版在线视频| 女攻男受高h全文肉肉| 日韩精品欧美国产精品忘忧草| 欧美视频导航| 亚洲无砖砖区免费| 在线视频99| 久久99热狠狠色一区二区| 亚洲国产一区二区三区综合片| 四虎一影院区永久精品| 新一级毛片国语版| 亚洲色图欧美图片| 久久精品国产亚洲AV天美18| 伊人国产在线视频| 欧美成人午夜精品免费福利|