www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當前位置:首頁 > 嵌入式 > 嵌入式教程
[導讀]基于ARM920T設(shè)計的SMC接口研究與PC/104總線仿真

摘要:通過分析920T核ARM 處理器的高速片上系統(tǒng)總線AHB時序及其靜態(tài)存儲控制器SMC接口模型,研究IBM PC/AT和IEEE PC/104總線規(guī)范,提出一種在ARM 平臺上實現(xiàn)兼容PC/104總線的方案.深入探討兩種平臺體系在存儲器結(jié)構(gòu)、指令系統(tǒng)及總線時序等方面的巨大差異,給出了克服這些差異并實現(xiàn)總線功能兼容的方法.該兼容總線解決了在ARM 平臺上無法使用標準PC/104模板的難題,采用該方案有利于在嵌入式系統(tǒng)的設(shè)計中兼取ARM 處理器和PC/AT體系的優(yōu)勢.         

引 言

     PC/104 是一種專門為嵌入式應用而定義的工業(yè)控制總線規(guī)范.以IBM PC/AT總線規(guī)范為基礎(chǔ)的個人計算機及其外圍設(shè)備在應用上取得了巨大的成就,IEEE一996稱之為ISA(工業(yè)標準架構(gòu):Industry Standard Architecture)總線.PC/104是ISA標準的延伸,定義在IEEE-P996.1中,稱為兼容PC嵌入式模塊標準.PC/104實質(zhì)上是一種緊湊型的ISA,其信號定義和Pc/AT基本一致,但電氣和機械規(guī)范卻完全不同,是一種優(yōu)化、小型、堆疊式結(jié)構(gòu)的嵌入式總線系統(tǒng).PC/104總線來自于實踐發(fā)展的需要,同時得益于PC技術(shù)的迅速發(fā)展,由于其開發(fā)環(huán)境友好、兼容芯片豐富、標準支持廣泛等優(yōu)勢,受到了眾多從事嵌入式產(chǎn)品生產(chǎn)商和系統(tǒng)集成商的歡迎,盡管現(xiàn)在ISA設(shè)備已不常見,但PC/104在嵌入式系統(tǒng)領(lǐng)域卻仍是通行的標準.

ARM是當前嵌入式系統(tǒng)應用中的熱門技術(shù).由于ARM處理器的卓越性能、較低的價格以及業(yè)內(nèi)半導體廠商的廣泛支持,在嵌入式環(huán)境中有廣泛的應用.ARM 公司創(chuàng)造了CHIPLESS模式,該公司通過將高效的ARM 內(nèi)核授權(quán)給半導體公司,由半導體公司根據(jù)實際的應用情況加上各種外圍的功能電路來構(gòu)成一塊完整的芯片,這種模式使半導體廠商得以有能力生產(chǎn)功能強大的各種專用處理器芯片.AR M在設(shè)計上基于SoC思想,優(yōu)先考慮對每一個具體應用使用最大可能集成周邊設(shè)備的單一芯片,但在板極擴展方面仍然缺乏能被廣泛接受的新工業(yè)標準.

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

1.1 總線信號

   PC/104_4 ]是一種16位總線,但可向前兼容8位XT模式,典型總線時鐘為8 MHz,4個時鐘脈沖可完成一次完整的總線訪問,必要時可插入一個額外的等待周期以適應低速外設(shè).在嵌入式系統(tǒng)開發(fā)中常用以下信號.

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

  BALE總線地址鎖存使能信號線,由平臺CPU驅(qū)動.當ISA擴展卡或DMA控制器占用總線時,它也被置為邏輯1.

SA~19:O>:低2O根地址信號線,由當前總線的擁用者驅(qū)動.

LAd 23:17> :鎖存地址信號線,用來訪問16MB的存儲器地址空間.由當前總線擁有者或DMA控制器驅(qū)動.

SD<15:0> :數(shù)據(jù)信號線.

1.1.2 總線周期控制信號線

MEMR#:存儲器讀信號線.

MEMW #:存儲器寫信號線.

IOR#:I/O I/O讀信號線.

IOW #:I/O I/O寫信號線.

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

IRQx:中斷請求信號線.

DRQx:DMA請求信號線.

DACKx#:DMA應答信號線.

1.2 地址空間

    PC/AT系統(tǒng)使用不同的指令訪問存儲器空間和IO端I:1空間,訪問存儲器空間時PC/104總線驅(qū)動MEMR#和MEMW#信號,訪問存儲器空間時PC/104總線驅(qū)動IOR#和IOW #信號.兩個空間使用同一套地址線,但是由于端口空間只有64K有效,所以進行IO 端口訪問時地址線上只有SA<15:O>是有效的.

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

1.3 PC/104總線周期

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

 

 

圖1中采用8 MHz時鐘的標準PC/104總線£Rd大于300 ns,tAF應大于250 ns,tRDpw約為500 ns。[!--empirenews.page--]

2 EP9315(ARM920T)體系

2.1 存儲器結(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有一個通用存儲器訪問接口,支持SDRAM,SRAM,ROM,及FLASH(包括N0R FLASH)等不同形式的存儲器,各種存儲器訪問均共享數(shù)據(jù)總線DA[3l:O]和地址總線AD[Z5:o],使用統(tǒng)一的訪問控制邏輯 。

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

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

2.2 AHB總線時序和SRAM 接口

   AHB(Advanced High-Speed Bus)是EP93 1 5內(nèi)部920T核與存儲器、DMA,存儲器等設(shè)備實現(xiàn)高速互聯(lián)的系統(tǒng)總線.EP9315的AHB具有完善的多主控沖突仲裁能力,其典型工作頻率可達100 MH。

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

 

 

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

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

最低的訪問速度,顯然fRDD 為330 ns,小于PC/104總線中的500 ns(圖1).

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

3.1 總線驅(qū)動

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

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

 

[!--empirenews.page--]

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

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

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

3.2 端口映射

    SMC的存儲器分組片選信號CSn可作為高位地址線參加這址譯碼.任取CSi和CSj組用于兼容總線,即可分別實現(xiàn)O-0x3FFFFFF的獨立存儲器地址和IO端口地址.可用地址數(shù)量已經(jīng)遠超出XT系統(tǒng)中的1 M(存儲器)和1 K(IO端口).

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

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

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

3.3 總線時序控制

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

    以下VHDL代碼根據(jù)SMC輸出的RDn和WRn設(shè)置EIOR和EIOW 時序,并適時輸出信號EXIDR,EXOE控制收發(fā)器數(shù)據(jù)流向和輸出使能.

ECLK是頻率為27 MHz是時鐘脈沖.

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’;[!--empirenews.page--]

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;

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

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

圖4中RDn由EP9315直接驅(qū)動,原始邏輯電平為3.3 V,實驗電路對該信號電平進行了無時延的處理.

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

4 結(jié)束語

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

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

摘要:為解決傳統(tǒng)自動化生產(chǎn)線生產(chǎn)效率低、自動化程度低、生產(chǎn)線復雜等問題,設(shè)計了一種自動化程度高且簡單的自動化機械手臂,并根據(jù)設(shè)計進行仿真實驗。實驗結(jié)果表明,該設(shè)計在自動化生產(chǎn)實踐中取得了較好的效果,提高了生產(chǎn)效率,達到了...

關(guān)鍵字: 機械手臂 設(shè)計 仿真

隨著13代酷睿處理器的上市,銘瑄本次同步發(fā)布了四款Z790主板,包括兩款ATX、一款mATX,以及一款I(lǐng)TX迷你小板。其中,包括新款MS-終結(jié)者Z790M D5主板,售價僅1499元。將在10月20日21點隨13代酷睿處...

關(guān)鍵字: 酷睿 ATX 接口 DDR

摘要:基于數(shù)字孿生技術(shù),依托Unity引擎開發(fā)虛擬調(diào)試應用。通過機器人工作站實例進行虛擬調(diào)試仿真,基于socket通信,通過三菱PLC對虛擬機器人工作站進行虛擬調(diào)試,檢測工作站結(jié)構(gòu)設(shè)計的合理性、信號配置和邏輯設(shè)計的正確性...

關(guān)鍵字: 數(shù)字孿生 虛擬調(diào)試 仿真

麥格納(MAGNA)正在進行一項1.2億美元的投資,在印度班加羅爾建立和運營一座全新工程中心,旨在為出行電動化提供支持。該設(shè)施占地約2.2萬平方米,預計將于2023年第一季度開業(yè),屆時該中心將聘請眾多經(jīng)驗豐富的工程師和技...

關(guān)鍵字: 工程師 仿真 電動汽車 軟件

客戶可以針對圖形和仿真基礎(chǔ)部署Supermicro服務器,以大規(guī)模建構(gòu)及運行元宇宙應用——系統(tǒng)將支持多達8個NVIDIA L40 GPU、ConnectX-7 SmartNI...

關(guān)鍵字: NVIDIA MICRO SUPER 仿真

腦機接口(Brain Computer Interface,BCI [4] ),指在人或動物大腦與外部設(shè)備之間創(chuàng)建的直接連接,實現(xiàn)腦與設(shè)備的信息交換。這一概念其實早已有之,但直到上世紀九十年代以后,才開始有階段性成果出現(xiàn)...

關(guān)鍵字: 腦機 接口 設(shè)備

摘 要:單螺桿空氣壓縮機的轉(zhuǎn)子嚙合副對間隙控制的精度要求很高 ,星輪軸系是嚙合副的核心元件 ,作用在星輪軸系上的各力 會引起軸系變形 ,變形集中于星輪齒嚙入螺槽部分及星輪軸軸承安裝處 ,運用ANSYS/workben...

關(guān)鍵字: ANSYS 應變 仿真

據(jù)業(yè)內(nèi)消息,華大九天昨天披露了投資者關(guān)系活動記錄表,華大九天表示在電路的仿真工具相關(guān)領(lǐng)域突破核心技術(shù),精度和性能得到了雙維度提升,適用于仿真精度和性能要求較高的模擬芯片設(shè)計。

關(guān)鍵字: EDA 仿真

摘 要:通過對智能移動平臺和六自由度機器人的調(diào)研分析 ,提出了新型智能片盒搬運小車的概念 ,并進行了設(shè)計研究。結(jié)合激光 導航AGV ,配合六軸協(xié)作機械臂 ,可在機臺、stocker、e-Rack之間進行FOUP搬運。

關(guān)鍵字: 智能移動平臺 六自由度機器人 仿真

摘要:基于10臺計算機數(shù)控機床(CNC)和1輛軌道式自動引導車(RGV)組成的智能加工系統(tǒng),設(shè)計了RGV動態(tài)調(diào)度策略,包括CNC工序分配、CNC編號奇偶優(yōu)先和RGV任務分派策略,建立了以系統(tǒng)作業(yè)效率最大化和RGV移動時間...

關(guān)鍵字: 調(diào)度策略 仿真 粒子群算法

嵌入式教程

6897 篇文章

關(guān)注

發(fā)布文章

編輯精選

技術(shù)子站

關(guān)閉