- 片上系統(tǒng)設(shè)計(jì)思想與源代碼分析
- 陳曦 黃毅
- 158字
- 2018-12-27 17:52:47
第3章 片上總線
本章主要內(nèi)容
在片上系統(tǒng)中,處理器核和所有外設(shè)通過(guò)共享總線互通互聯(lián),因此這些IP核必須遵守相同的總線規(guī)范。總線規(guī)范定義了IP核之間的通用接口,目前常見的片上總線標(biāo)準(zhǔn)有AMBA、WISHBONE、CoreConnect等,這些標(biāo)準(zhǔn)雖然在實(shí)現(xiàn)細(xì)節(jié)上有所差別,但在性能上差別甚微。DemoSoC的片上總線符合WISHBONE片上互聯(lián)標(biāo)準(zhǔn)。本章以WISHBONE片上互聯(lián)標(biāo)準(zhǔn)為例講述片上總線技術(shù)。
3.1 片上總線技術(shù)綜述
IP復(fù)用是片上系統(tǒng)時(shí)代的核心技術(shù)之一。由于IP核的設(shè)計(jì)千差萬(wàn)別,它們要能夠直接連接,就要遵守相同的接口標(biāo)準(zhǔn)。總線規(guī)范定義的是IP核之間的通用接口,因此它定義了一套標(biāo)準(zhǔn)的信號(hào)和總線周期以連接不同的模塊,而不是試圖去規(guī)范IP核的功能和接口如何實(shí)現(xiàn)。一個(gè)片上總線規(guī)范一般需要定義各個(gè)模塊之間初始化、仲裁、請(qǐng)求傳輸、響應(yīng)、發(fā)送接收等過(guò)程中驅(qū)動(dòng)、時(shí)序、策略等關(guān)系。
芯片與電路板的資源和環(huán)境的不同,導(dǎo)致片上總線與板上總線存在若干明顯差異,包括如下方面。
1.片上總線多采用單向信號(hào)線,而板上總線多采用三態(tài)總線
片上三態(tài)總線無(wú)論在功耗、速度、可測(cè)性上都存在很大缺陷,而且一旦出現(xiàn)多驅(qū)動(dòng)情況便會(huì)損毀芯片(比如若應(yīng)該輸出“Z”的信號(hào)實(shí)際輸出為“1”,而另有一個(gè)信號(hào)輸出為“0”,就形成一個(gè)低電阻通路,導(dǎo)致局部電流過(guò)大,熱量難以及時(shí)釋放,從而增加芯片功耗和大大降低芯片壽命),又由于片上布線資源較為豐富,因此片上總線多采用單向信號(hào)線。而電路板上布線資源較為昂貴,因此板上總線多采用三態(tài)總線,但是由于三態(tài)總線的功耗問(wèn)題和速度限制,目前板上總線也在向串行和非三態(tài)方向發(fā)展,如USB和PCI Express。
2.片上總線比板上總線更加簡(jiǎn)單靈活
首先片上總線結(jié)構(gòu)要簡(jiǎn)單,這樣可以占用較少的邏輯單元;其次時(shí)序要簡(jiǎn)單,以利于提高總線的速度;第三接口要簡(jiǎn)單,如此可減少與IP核連接的復(fù)雜度。片上系統(tǒng)應(yīng)用廣泛,不同的應(yīng)用對(duì)總線的要求各異,因此片上總線具有較大的靈活性。其一,多數(shù)片上總線的數(shù)據(jù)和地址寬度都可變,其二,部分片上總線的互連結(jié)構(gòu)可變,如WISHBONE總線支持點(diǎn)到點(diǎn)、數(shù)據(jù)流、共享總線和交叉開關(guān)4種互連方式;其三,部分片上總線的仲裁機(jī)制靈活可變,如WISHBONE總線的仲裁機(jī)制可以完全由用戶定制。而板上總線則較為死板,時(shí)序也更加苛刻。
目前比較常見的片上總線規(guī)范有ARM公司的AMBA、Silicore的WISHBONE、IBM公司的CoreConnect和Altera的Avalon。三種總線各有特點(diǎn),其適用范圍也不同。AMBA總線規(guī)范因ARM處理器的廣泛使用而擁有眾多第三方支持,被ARM公司90%以上的合作伙伴采用,已成為廣泛支持的現(xiàn)有互連標(biāo)準(zhǔn)之一。IBM公司的CoreConnect因?yàn)镮BM的業(yè)界地位也有廣泛的應(yīng)用。Avalon主要用于Altera公司系列PLD中,最大的優(yōu)點(diǎn)在于其配置的簡(jiǎn)單性,可由EDA工具快速生成。這三種片上總線雖然都是公開標(biāo)準(zhǔn),但都不是免費(fèi)的,而WISHBONE則是一個(gè)真正開放和免費(fèi)的規(guī)范。它最先是由Silicore公司提出的,目前由OpenCores組織維護(hù)。由于其開放性,因此OpenCore上的免費(fèi)的IP核,大多數(shù)都采用WISHBONE標(biāo)準(zhǔn)。WISHBONE的優(yōu)勢(shì)除開放、免費(fèi)、擁有眾多免費(fèi)IP核外,還有簡(jiǎn)單、靈活、輕量的特點(diǎn),特別適合大型IP內(nèi)部的小型IP之間的互聯(lián)。在本書介紹的OpenRISC處理器設(shè)計(jì)中,各個(gè)模塊間的互聯(lián)接口中大量采用了WISHBONE總線規(guī)范。
需要指出,任何一個(gè)總線規(guī)范,首先至少支持點(diǎn)對(duì)點(diǎn)互聯(lián),所以嚴(yán)格意義上講,國(guó)內(nèi)學(xué)術(shù)界普遍說(shuō)的“總線規(guī)范”實(shí)際上指的是片上系統(tǒng)互聯(lián)規(guī)范,只不過(guò)多個(gè)IP通過(guò)共享總線互聯(lián)是人們最關(guān)心的,也是最廣泛使用的,所以通常將片上系統(tǒng)互聯(lián)規(guī)范稱為總線規(guī)范。
- Maven Build Customization
- Vue.js快跑:構(gòu)建觸手可及的高性能Web應(yīng)用
- Python高級(jí)編程
- 薛定宇教授大講堂(卷Ⅳ):MATLAB最優(yōu)化計(jì)算
- MATLAB實(shí)用教程
- 人人都懂設(shè)計(jì)模式:從生活中領(lǐng)悟設(shè)計(jì)模式(Python實(shí)現(xiàn))
- Java零基礎(chǔ)實(shí)戰(zhàn)
- Mastering C++ Multithreading
- Learning iOS Security
- Microsoft HoloLens By Example
- 你好!Python
- JavaScript Mobile Application Development
- Thymeleaf 3完全手冊(cè)
- Elasticsearch實(shí)戰(zhàn)(第2版)
- Mastering Linux Kernel Development