當(dāng)前位置:首頁 > 嵌入式 > 嵌入式硬件

引 言

PC/104是一種工業(yè)計(jì)算機(jī)總線標(biāo)準(zhǔn)。PC/104有兩個(gè)版本,8位和16位,分別與PC和PC/AT相對應(yīng)。PC/104PLUS 則與PCI總線相對應(yīng)。 第一塊PC104產(chǎn)生于1987年,但嚴(yán)格意義的規(guī)范說明在1992年才公布,后來對PC104感興趣的人越來越多,眾多廠家生產(chǎn)PC104兼容產(chǎn)品。像原來的PC總線一樣,PC104一直是以一個(gè)非法定標(biāo)準(zhǔn)在執(zhí)行,而不是委員會(huì)設(shè)計(jì)制定的。1992年IEEE開始著手為PC和PC/AT總線制定一個(gè)精簡的IEEEP996標(biāo)準(zhǔn)(草稿),PC104作為基本文件被采納,叫做IEEE P996.1兼容PC嵌入式模塊標(biāo)準(zhǔn)。可見,PC104是一種專門為嵌入式控制而定義的工業(yè)控制總線。

ARM(Advanced RISC Machines)是微處理器行業(yè)的一家知名企業(yè),設(shè)計(jì)了大量高性能、廉價(jià)、耗能低的RISC處理器、相關(guān)技術(shù)及軟件。技術(shù)具有性能高、成本低和能耗省的特點(diǎn)。適用于多種領(lǐng)域,比如嵌入控制、消費(fèi)/教育類多媒體、DSP和移動(dòng)式應(yīng)用等。ARM(Advanced RISC Machines)是微處理器行業(yè)的一家知名企業(yè),設(shè)計(jì)了大量高性能、廉價(jià)、耗能低的RISC處理器、相關(guān)技術(shù)及軟件。技術(shù)具有性能高、成本低和能耗省的特點(diǎn)。適用于多種領(lǐng)域,比如嵌入控制、消費(fèi)/教育類多媒體、DSP和移動(dòng)式應(yīng)用等。

1 PC/AT模型和PC/104總線

1.1 總線信號(hào)

PC104有兩個(gè)版本,8位和16位,分別與PC和PC/AT相對應(yīng)。PC104PLUS 則與PCI總線相對應(yīng),在PC104總線的兩個(gè)版本中,8位PC104共有64個(gè)總線管腳,單列雙排插針和插孔,P1:64針,P2:40針,合計(jì)104個(gè)總線信號(hào),PC104因此得名。當(dāng)8位模塊和16位模塊連接時(shí),16位模塊必須在8位模塊得下面(見附圖2)。P2 總線連結(jié)在8-位元模塊中是可選的,這樣讓這些模塊無論何處都可在堆棧中使用。

PC/104_4 是一種16位總線,但可向前兼容8位XT模式,典型總線時(shí)鐘為8 MHz,4個(gè)時(shí)鐘脈沖可完成一次完整的總線訪問,必要時(shí)可插入一個(gè)額外的等待周期以適應(yīng)低速外設(shè)。

1.1.1 地址和數(shù)據(jù)信號(hào)線

BALE總線地址鎖存使能信號(hào)線,由平臺(tái)CPU驅(qū)動(dòng)。當(dāng)ISA擴(kuò)展卡或DMA控制器占用總線時(shí),它也被置為邏輯1.

SA~19:O>:低2O根地址信號(hào)線,由當(dāng)前總線的擁用者驅(qū)動(dòng)。

LAd 23:17> :鎖存地址信號(hào)線,用來訪問16MB的存儲(chǔ)器地址空間。由當(dāng)前總線擁有者或DMA控制器驅(qū)動(dòng)。

SD<15:0> :數(shù)據(jù)信號(hào)線。

1.1.2 總線周期控制信號(hào)線

MEMR#:存儲(chǔ)器讀信號(hào)線。

MEMW #:存儲(chǔ)器寫信號(hào)線。

IOR#:I/O I/O讀信號(hào)線。

IOW #:I/O I/O寫信號(hào)線。

1.1.3 中斷和DMA(Direct Memory Access)信號(hào)線

IRQx:中斷請求信號(hào)線。

DRQx:DMA請求信號(hào)線。

DACKx#:DMA應(yīng)答信號(hào)線。

1.2 地址空間

PC AT是美國國際商用機(jī)器公司(IBM)于1984年發(fā)布、1987年停產(chǎn)的個(gè)人電腦產(chǎn)品,正式名稱是IBM 5170 PC AT。“AT”是英文“先進(jìn)技術(shù)”(Advanced Technology)的縮寫,這是由于它引入了標(biāo)準(zhǔn)的16位ISA總線以及采用了當(dāng)時(shí)最新的英特爾80286處理器。PC/AT是IBM公司自PC機(jī)發(fā)布后的第二代升級(jí)產(chǎn)品(也有人認(rèn)為在此之前發(fā)布的PC/XT是第二代產(chǎn)品)。盡管早期的產(chǎn)品存在著與磁盤存儲(chǔ)部件相關(guān)的瑕疵,它最終還是迅速流行于商用及普通用戶市場,成為了PC工業(yè)最持久的事實(shí)標(biāo)準(zhǔn)。至今,由于軟件兼容性的原因,最新的PC系統(tǒng)都還支持PC/AT機(jī)的總線結(jié)構(gòu)。

PC/AT系統(tǒng)使用不同的指令訪問存儲(chǔ)器空間和IO端I:1空間,訪問存儲(chǔ)器空間時(shí)PC/104總線驅(qū)動(dòng)MEMR#和MEMW#信號(hào),訪問存儲(chǔ)器空間時(shí)PC/104總線驅(qū)動(dòng)IOR#和IOW #信號(hào)。

PC/AT系統(tǒng)有專門的端口訪問指令用于實(shí)現(xiàn)端口訪問,Linux用戶程序只需以root權(quán)限調(diào)用ioperm()指定需操作的端口地址范圍,之后即可自由訪問這些端口。由于用于訪問端口的一組宏實(shí)際上直接對應(yīng)CPU的端口訪問指令,所以存取效率很高。

1.3 PC/104總線周期

PC/104總線周期分為CPU驅(qū)動(dòng)和DMA控制器驅(qū)動(dòng)兩大類,在嵌入式應(yīng)用中較常用的是CPU驅(qū)動(dòng)的IO讀/IO寫周期。

圖1中采用8 MHz時(shí)鐘的標(biāo)準(zhǔn)PC/104總線£Rd大于300 ns,tAF應(yīng)大于250 ns,tRDpw約為500 ns。

2 EP9315(ARM920T)體系

2.1 存儲(chǔ)器結(jié)構(gòu)和地址空間

EP9315是Cirrus Logic公司生產(chǎn)的典型ARM 920 TDM I(Thumb,Debug,M ultiply,Em—bedded ICE macrocel1)32位哈佛結(jié)構(gòu)處理器。EP9315有一個(gè)通用存儲(chǔ)器訪問接口,支持SDRAM,SRAM,ROM,及FLASH等不同形式的存儲(chǔ)器,各種存儲(chǔ)器訪問均共享數(shù)據(jù)總線DA和地址總線AD,使用統(tǒng)一的訪問控制邏輯 。

與X86模型不同,ARM 平臺(tái)只實(shí)現(xiàn)一個(gè)物理地址空間,在Bo0T成功后只擁有一個(gè)唯一的虛地址空間,CPU不設(shè)立專門的外設(shè)I/O指令,訪問外設(shè)I/O端口和內(nèi)存單元使用相同的指令。

引腳CSn[7:6]和CSn[3:O]用于存儲(chǔ)器芯片的選通,除發(fā)生時(shí)間略有差異之外(圖2),基本上可視為地址總線的高位線。

2.2 AHB總線時(shí)序和SRAM 接口

AHB主要用于高性能模塊(如CPU、DMA和DSP等)之間的連接,作為SoC的片上系統(tǒng)總線,它包括以下一些特性:單個(gè)時(shí)鐘邊沿操作;非三態(tài)的實(shí)現(xiàn)方式;支持突發(fā)傳輸;支持分段傳輸;支持多個(gè)主控制器;可配置32位~128位總線寬度;支持字節(jié)、半字節(jié)和字的傳輸。AHB 系統(tǒng)由主模塊、從模塊和基礎(chǔ)結(jié)構(gòu)(Infrastructure)3部分組成,整個(gè)AHB總線上的傳輸都由主模塊發(fā)出,由從模塊負(fù)責(zé)回應(yīng)?;A(chǔ)結(jié)構(gòu)則由仲裁器、主模塊到從模塊的多路器、從模塊到主模塊的多路器、譯碼器(decoder)、虛擬從模塊(dummy Slave)、虛擬主模塊(dummy Master)所組成。其互連結(jié)構(gòu)如圖1所示。針對Soc設(shè)計(jì)中IP復(fù)用問題提出了一種新的解決辦法。傳統(tǒng)的方法是將特定功能模塊的非標(biāo)準(zhǔn)接口標(biāo)準(zhǔn)化為AHB主/從設(shè)備接口,本文提出了一種新的基于ARM的Soc通用平臺(tái)設(shè)計(jì)寄存器總線標(biāo)準(zhǔn)接口,這種設(shè)計(jì)使整個(gè)系統(tǒng)的結(jié)構(gòu)清晰,增強(qiáng)系統(tǒng)的通用性與系統(tǒng)中功能模塊的可移植性。

靜態(tài)存儲(chǔ)控制器SMC(Static Memory Controller)與920T核心通過AHB互聯(lián),支持存儲(chǔ)器的8/16/32位訪問方式。SMC最多可提供8個(gè)組,每個(gè)組均可支持SRAM,ROM,F(xiàn)LASH EPROM 等存儲(chǔ)器的訪問,各組可以對數(shù)據(jù)總線寬度和速度等參數(shù)獨(dú)立配置。圖2描述了SRAM 讀操作時(shí)序。

圖中f刪為CSn到RDn的延遲,最大值為3 ns;tDAs是RDn無效前的數(shù)據(jù)總線建立時(shí)間,最小值為12+tHcI tRDD 是RDn有效時(shí)間,典型值為t HcI K×(W ST1+ 2)。

HCLK是AHB總線的工作頻率,該頻率的高低直接影響系統(tǒng)全局性能,因此通常配置為上限100 MHz,此時(shí)相應(yīng)周期£脅 為10 ns.WSTI用于控制sMc對SRAM/R0M 的訪問速度,寄存器SMCBCR0—3, SMCBCR6-7 (地址0x80080000—0x8008001C)的第5-9位分別為相應(yīng)各組的WST1.WST1的默認(rèn)值為0xlF,即默認(rèn)情況下SMC使用最低的訪問速度,顯然fRDD 為330 ns,小于PC/104總線中的500 ns(圖1)。

3 PC/104總線實(shí)現(xiàn)

3.1 總線驅(qū)動(dòng)

在EP9315支持的各類總線接口邏輯中,SMC提供的SRAM/ROM 時(shí)序與PC/104總線最為接近。將外部設(shè)備所需的PC端口空間和存儲(chǔ)器空間均映射至統(tǒng)一的虛擬空間中即可實(shí)現(xiàn)訪問。

注意到PC/104總線使用標(biāo)準(zhǔn)TTL邏輯電平,而EP9315的處理器是3.3 V器件,在極端負(fù)載情況下無法保證系統(tǒng)穩(wěn)定工作。TI的雙電源總線收發(fā)器1T45,2T45,16T245等可用于實(shí)現(xiàn)電平轉(zhuǎn)換,圖3是1T45的引腳邏輯圖。

地址總線及訪問控制信號(hào)均由CPU驅(qū)動(dòng),外部設(shè)備始終處于被動(dòng)接收狀態(tài),正確設(shè)定數(shù)據(jù)流向即可。

數(shù)據(jù)總線信號(hào)是時(shí)分雙向傳輸?shù)?,為遍免出現(xiàn)總線沖突,必須保證除非CPU 透過該收發(fā)器對外設(shè)進(jìn)行讀訪問,否則收發(fā)器的CPU 側(cè)應(yīng)始終處于高阻狀態(tài)。為此,16T245等具有輸出使能端的器件只需使輸出無效即可,而對于無使能端的收發(fā)器則應(yīng)使CPU側(cè)處于輸入狀態(tài)(高阻)。

確認(rèn)CPU 已向兼容PC/104總線發(fā)起讀操作的有效方法是檢查RDn的下降沿是否發(fā)生。一旦RDn下降,應(yīng)立即將收發(fā)器置成從外設(shè)流向CPU方向,且輸出使能有效,并至少保持至RDn上升沿之后,以保證可靠讀取。

3.2 端口映射

任取CSi和CSj組用于兼容總線,即可分別實(shí)現(xiàn)O-0x3FFFFFF的獨(dú)立存儲(chǔ)器地址和IO端口地址??捎玫刂窋?shù)量已經(jīng)遠(yuǎn)超出XT系統(tǒng)中的1 M(存儲(chǔ)器)和1 K(IO端口)。

在Linux系統(tǒng)中,io.h文件中聲明了函數(shù)iore—map(),用于將兼容總線上外部資源的物理地址映射到核心虛地址空間中。iounmap()函數(shù)用于取消ioremap()所做的映射。在外部資源成功映射到核心虛地址后,使用指向核心虛地址的指針就可訪問相應(yīng)設(shè)備資源,但顯然這種訪問方式與在X86平臺(tái)下差異較大。

將兼容總線視為一個(gè)獨(dú)立的字符設(shè)備,為其編寫驅(qū)動(dòng)程序,實(shí)現(xiàn)對指定偏移地址的讀寫函數(shù),此處的偏移地址即對應(yīng)PC/104總線中的物理地址。

對inb(),outb()等X86平臺(tái)下的常見的底層端口操作函數(shù),可用宏替換的方式轉(zhuǎn)由驅(qū)動(dòng)中的相應(yīng)讀寫函數(shù)實(shí)現(xiàn)。

3.3 總線時(shí)序控制

綜合前文所述,盡管SMC的SRAM 訪問時(shí)序非常接近PC/lO4總線,但是要實(shí)現(xiàn)高兼容性的PC/lO4,仍有兩方面問題需要解決,一是SMC驅(qū)動(dòng)的SRAM 讀寫速度遠(yuǎn)高于PC/104總線,二是為解決電平兼容問題引入的總線收發(fā)器,其數(shù)據(jù)流向和輸出使能需要適當(dāng)?shù)目刂啤?/P>

ECLK是頻率為27 MHz是時(shí)鐘脈沖。

If ECLK’EVENT and ECLK一‘1’then

if(? )then __地址無效

EXoE< 一:1’;

EXDlR< 一‘1’;

EIOR< 一‘1’;

rdreg< 一0;

else

if rdreg< 1 l then

rdreg< 一rdreg+ 1;

EXOE< 一‘0’;

else

rdreg< 一0;

EXDIR< 一‘1’;

EXoE< 一‘1’;

end if;

if rdreg< 2 or rdreg> 6 then

EIOR< 一‘1’;

EIOW < 一‘1’;

elsif rdreg一2 or rdreg= 3 then

if RDn一‘1’then

EIOR< 一‘1’;

EXDIR< 一‘1’;

elsif W Rn一‘1’then

EIOW < 一‘0’;

EXDIR< 一‘1’;

end if;

end if;

上述代碼適當(dāng)延遲了關(guān)閉雙電源收發(fā)器的輸出使能和數(shù)據(jù)流向重設(shè)時(shí)間,保證數(shù)據(jù)總線穩(wěn)定,使CPU 和外設(shè)有足夠的時(shí)間進(jìn)行輸入輸出操作。

圖4中曲線2是兼容PC/104地址空間內(nèi)任意地址信號(hào)經(jīng)收發(fā)器緩沖后的譯碼結(jié)果,曲線1和曲線3是對該地址進(jìn)行讀操作時(shí)的RDn和IOR信號(hào)。

圖4中RDn由EP9315直接驅(qū)動(dòng),原始邏輯電平為3.3 V,實(shí)驗(yàn)電路對該信號(hào)電平進(jìn)行了無時(shí)延的處理。

目前主流元器件在速度上都已能兼容PCI總線,因此盡管SMC驅(qū)動(dòng)的SRAM 讀寫速度高于標(biāo)準(zhǔn)PC/104總線,但只要保證各控制信號(hào)問關(guān)系清晰(圖4b),是不會(huì)造成總線訪問失敗的。

4 結(jié)束語

利用ARM 系統(tǒng)成本較低,功耗更小,啟動(dòng)速度快,指令效率高的的特點(diǎn),兼取PC/AT系統(tǒng)和PC/104總線設(shè)備在產(chǎn)業(yè)化基礎(chǔ)方面的優(yōu)勢,在ARM平臺(tái)上構(gòu)建PC/104總線,有助于利用現(xiàn)有資源,保護(hù)已有投資。由于ARM 與PC/AT模型在處理器架構(gòu)上有本質(zhì)性的差異,在ARM 平臺(tái)上構(gòu)建的PC/104總線在所有的具體應(yīng)用中要做到與標(biāo)準(zhǔn)PC/104規(guī)范完全兼容幾乎是不可能,但是在特定的應(yīng)用需求及確定的操作系統(tǒng)下這種努力是完全可行并且有效的。對于特定的應(yīng)用而言,通常只需顧及PC/104總線時(shí)序的一個(gè)子集,這就大大降低了系統(tǒng)現(xiàn)實(shí)的難度。



QICK

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動(dòng)力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉