999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于S3C2440的VxWorks NandFlash啟動設計與實現

2018-05-03 08:33:42賀翔胡俊祥戴鈺
電子制作 2018年7期
關鍵詞:嵌入式程序系統

賀翔,胡俊祥,戴鈺

(1.廣州海格通信集團股份有限公司,廣東廣州,510000;2.廣東廣播電視臺,廣東廣州,510000)

0 引言

VxWorks操作系統作為常用的高性能實時操作系統之一,在衛星通信系統中有著其獨特的優勢。其開放式結構和對工業標準的支持,使得開發人員更易于設計高效的嵌入式系統,并可以以很小的工作量移植到其它不同的處理器上;該操作系統軟件為程序員提供了高效的任務調度、中斷管理、實時的系統資源以及實時的任務間通信,使得程序員可以將盡可能多的精力放在應用程序本身,而不再關心系統資源的管理[1]。

Nor Flash及Nand Flash是嵌入式系統中主流的兩種Flash類型。Nor Flash的優點在于支持芯片內執行(XIP,eXecute In Place),這樣應用程序就可以直接在 fl ash閃存內運行,而不必把代碼讀到系統RAM中。Nor Flash的傳輸效率很高,但是很低的寫入和擦除速度大大影響了它的性能。另外,由于其容量小,同等容量下價格貴,一般情況下往往配合Nand Flash一同使用。Nand Flash的單元尺寸幾乎是Nor器件的一半,由于生產過程更為簡單,Nand 結構可以在給定的模具尺寸內提供更高的容量,也就相應地降低了價格。但是Nand 器件使用復雜的I/O口來串行地存取數據,只有8個引腳用來傳送控制、地址和數據信息,不支持芯片內執行。故Nor Flash一半用于存儲程序,而Nand Flash一般用于存儲數據。

s3c2440是samsung公司的一款常用的ARM9系列處理器,由于該處理器里有一個內置的SRAM,叫做stepping stone,系統啟動加電后,能夠把Nand Flash上的起始4KB的內容拷貝到SRAM里執行,這樣就可以實現從Nand Flash啟動。本文采用該款處理器,以及K9F2G08U0B型號的Nand Flash、K4S561632N型號的SDRAM、DM9000網卡芯片等作為硬件平臺,并在該平臺下完成VxWorks操作系統的移植,改造了VxWorks啟動過程,實現了采用Nand Flash啟動該操作系統。本嵌入式系統方案對于提升綜合性能、減少硬件復雜度、節約硬件成本有著重要意義。

1 VxWorks啟動過程分析

VxWorks的啟動流程如圖1所示。系統上電之后,從romInit.S開始運行。首先調用的函數就是romInit( ),該函數主要完成以下功能:

(1)禁止中斷;

(2)初始化堆棧;

(3)保存啟動類型(冷/熱啟動);

(4)初始化CPU相關寄存器;

(5)跳轉到bootInit.c中的romStart()函數;

圖1 Vxworks啟動流程

函數romStart()主要完成以下功能:

把代碼段和數據段復制到RAM當中;

如果映像是壓縮版本的,則需要完成程序映像的解壓縮。

跳轉到bootCon fi g.c的usrInit( )函數。

函數usrInit( )設置cache的工作模式,完成板級硬件初始化后,調用sysHwInit( )、usrKernelInit( )、KernelInit( ),初始化內核,產生根任務usrRoot( )。在usrRoot根任務中解析Bootline,產生bootCmdLoop任務,用于啟動、加載VxWorks映像。

在加載VxWorks映像完成后,程序跳轉到sysAlib.S文件中的VxWorks image的入口點_sysInit。此時系統再次進行了一次初始化,進入了第二階段啟動過程[2-4]。本文主要對第一階段啟動過程進行改造,以實現在啟動時能夠調用NandFlash上的程序完成VxWorks操作系統的正常啟動過程。

2 Nand Flash啟動VxWorks實現

由于s3c2440處理器內置的SRAM僅能拷貝Nand Flash上的前4k代碼運行,根據上述VxWorks啟動過程分析可知,程序必須在romInit( )函數完成硬件初始化之后,在romStart( )函數完成映像解壓縮之前完成把Nand Flash上程序拷貝到內存中的過程,即修改替換原romStart( )函數中完成把程序拷貝到RAM中的過程。系統在Make fi le和con fi g.h中通過三個宏定義來確定系統在什么內存地址運行BOOTROM,分別是:ROM _TEXT _ADRS(ROM起始地址)、ROM_LOW_ADRS(VxWorks啟動地址)和RAM_HIGH_ADRS(Bootrom程序入口地址)。這里需要添加從Nand Flash把程序拷貝入內存的函數[5],定義在nand.c文件中。定義該函數:

該函數的部分主要代碼如下:

在完成該部分函數的添加修改之后,為了在編譯中把RdNF2SDRAM函數一同編譯進去,需要在make fi le文件中加入:

由于SRAM空間只有4k,為了保證在前4k代碼內完成程序的復制,需要保證該段拷貝程序在前4k代碼內,這就需要通過修改rules.bsp文件修改編譯順序,如:

修改使$(BOOT_EXTRA)較先編譯,鏈接到程序靠前的位置,或者也可以直接使nand.o較先編譯、鏈接,可保證在前4k代碼內完成程序的復制。

3 系統驗證及應用

完成上述過程后,進行通過移植相應的外設驅動程序完成BSP開發。VxWorks下支持兩個形式的網卡驅動,一種是兼容BSD4.4的網卡驅動,另一種是END(Enhanced Network Drivers)網卡驅動,由于后者使用比較簡單而且VxWorks對該種驅動支持性好[6],本文采用END網卡驅動。本系統可通過網卡下載VxWorks映像。

如圖2所示,使用Tornado生成好boorom,然后通過H-JTAG燒寫到NandFlash上,跳線設置S3C2440從NandFlash啟動。

打開服務器端WFTPD,設置好VxWorks鏡像的路徑、用戶名及密碼后,重新上電啟動S3C2440,打開超級終端,修改啟動引導行,主要包括板子IP地址、主機IP地址、FTP用戶名及密碼、VxWorks鏡像文件路徑等。然后輸入@啟動,在WFTPD窗口上看到VxWorks鏡像下載的信息,如圖3所示。

VxWorks鏡像下載完成后,超級終端上變顯示了熟悉的VxWorks啟動畫面,如圖4所示。至此,完成了整個啟動過程。

圖3 VxWorks鏡像下載

圖4 VxWorks啟動畫面

4 結語

本文分析了VxWorks啟動過程,提出了使用Nand Flash啟動Vxworks的設計思路,按照上述步驟進行代碼編寫與調試,從網絡下載VxWorks映像,實現了VxWorks的正常啟動。相比傳統的Nor Flash用于存儲程序、Nand Flash用于存儲數據的系統,降低了硬件設計復雜度、提高了穩定性、節約了開發成本。

* [1]Wind River System Inc.VxWorks 6.0 Device Driver Develop—er’s Guide [Z].2004

* [2]孔祥營,柏桂枝.嵌入式實時操作系統VxWorks及其開發環境Tornado[M].北京:中國電力出版社.2002

* [3]徐少毅,李君龍. 基于VxWorks的BSP概念與開發[J].電子產品世界,2002,03(B)

* [4]馮榮尉.基于ARM9的嵌入式硬件設計和VxWorks操作系統移植[D].北京理工大學,2008

* [5] Samsung Electronics Co.LTD. K9XXG08 U0B User’s Manu—al[Z].2005

* [6] 周啟平,張揚.VxWorks下設備驅動程序及BSP開發指南[M].北京:中國電力出版社,2004

猜你喜歡
嵌入式程序系統
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
試論我國未決羈押程序的立法完善
人大建設(2019年12期)2019-05-21 02:55:44
搭建基于Qt的嵌入式開發平臺
“程序猿”的生活什么樣
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
英國與歐盟正式啟動“離婚”程序程序
環球時報(2017-03-30)2017-03-30 06:44:45
嵌入式軟PLC在電鍍生產流程控制系統中的應用
電鍍與環保(2016年3期)2017-01-20 08:15:32
創衛暗訪程序有待改進
中國衛生(2015年3期)2015-11-19 02:53:32
主站蜘蛛池模板: 亚洲天堂精品视频| 在线综合亚洲欧美网站| 69精品在线观看| 国产精品久久久久鬼色| 亚洲美女久久| 欧美午夜性视频| 亚洲欧美日韩另类在线一| 国产波多野结衣中文在线播放| 亚洲人成影院在线观看| 色吊丝av中文字幕| 午夜老司机永久免费看片| 国产激爽大片高清在线观看| 婷婷色狠狠干| 欧美不卡视频一区发布| 亚洲Av综合日韩精品久久久| 日本在线欧美在线| 亚洲第一成年免费网站| 国产哺乳奶水91在线播放| 多人乱p欧美在线观看| 在线免费a视频| 亚洲欧美极品| 亚洲欧美国产五月天综合| 欧美激情一区二区三区成人| 日韩精品久久久久久久电影蜜臀| 伊人精品视频免费在线| 国禁国产you女视频网站| 免费无码又爽又黄又刺激网站| 国产亚洲美日韩AV中文字幕无码成人| 欧美在线精品怡红院| 99热线精品大全在线观看| 国产成年无码AⅤ片在线 | 天天躁夜夜躁狠狠躁图片| 亚洲欧美一区二区三区蜜芽| 天天操精品| 亚洲欧洲AV一区二区三区| 午夜毛片福利| 色婷婷色丁香| 国产精品三级专区| 毛片卡一卡二| A级全黄试看30分钟小视频| 国产97视频在线| 久久国产精品无码hdav| 国产成人毛片| 亚洲性网站| 国产地址二永久伊甸园| 伊人久久大香线蕉综合影视| 在线精品自拍| aⅴ免费在线观看| 一区二区三区高清视频国产女人| 免费一看一级毛片| 日韩大片免费观看视频播放| 激情综合网址| 亚洲一区二区无码视频| 99久久婷婷国产综合精| 国产女人18水真多毛片18精品| 乱色熟女综合一区二区| 亚洲综合狠狠| 亚洲视频色图| 谁有在线观看日韩亚洲最新视频 | 在线免费亚洲无码视频| 伊在人亚洲香蕉精品播放| 亚洲一级毛片免费看| 97影院午夜在线观看视频| 日韩黄色在线| 亚洲欧美综合在线观看| 狠狠色丁婷婷综合久久| 自拍偷拍一区| 国产女同自拍视频| 日韩精品高清自在线| 日韩高清一区 | 免费无码AV片在线观看中文| 亚洲,国产,日韩,综合一区| 丁香五月激情图片| 91年精品国产福利线观看久久 | 四虎精品免费久久| 国产情侣一区二区三区| 国产精品无码久久久久AV| 日本免费精品| 无码乱人伦一区二区亚洲一| 中文无码伦av中文字幕| 国内a级毛片| 欧美日韩一区二区在线免费观看|