久久精品在这里_成人99免费视频_国产激情视频一区二区在线观看_国产伦精品一区二区三区免费 _亚洲午夜免费福利视频_色狠狠色狠狠综合_av在线综合网_91毛片在线观看_欧美视频一区二区在线观看_极品美女销魂一区二区三区免费_国产亚洲欧美激情_在线免费观看不卡av_日韩不卡一区二区三区_91精品国产麻豆国产自产在线_亚洲国产精品一区二区久久恐怖片_a4yy欧美一区二区三区


曙海教育集團論壇VxWorks專區VxWorks技術討論區 → VxWorks在AT91RM9200上BSP設計方案


  共有8856人關注過本帖樹形打印

主題:VxWorks在AT91RM9200上BSP設計方案

美女呀,離線,留言給我吧!
wangxinxin
  1樓 個性首頁 | 博客 | 信息 | 搜索 | 郵箱 | 主頁 | UC


加好友 發短信
等級:青蜂俠 帖子:1393 積分:14038 威望:0 精華:0 注冊:2010-11-12 11:08:23
VxWorks在AT91RM9200上BSP設計方案  發帖心情 Post By:2010-11-17 10:31:25

vxworks是美國wind river公司研發嵌入式實時操作方法系統,具有高性能,可裁減性好等特性,能支持幾種微處理器(如powerpc,x85,arm,sparc);自問世對來,對其良好町靠性與卓越實時性被廣泛地使用于通信,航空,航天等高精尖技術信息及實時性條件極高領域中。bsp(board support package,板級支持包)用處是針對特殊硬件平臺,為操作方法系統內核供應操作方法接口,使操作方法系統能夠獨立于底層硬件。對上層使用屏蔽具體硬件,vxworks高可移植性就是通過bsp解決方案。at91rm9200是atmel公司生產一款arm9核IC,本文重點說明將vxworks移植到該IC過程中bsp定制過程。
1 bsp理念
  bsp通常是指針對具體硬件平臺,用戶所編寫運行源代碼與部分設備軟件驅動程序集合。它所解決方案功能包括初始化與軟件驅動部分設備。最基本bsp僅需支持處理器復位,初始化,軟件驅動串口與必要時鐘處理。bsp是相對于操作方法系統而言,不同操作方法系統對應不同形式bsp,因此,在寫bsp時一定要按照條件操作方法系統對bsp定義形式來寫。在vxworks系統中,bsp是介于底層硬件環境與vxworks的間一個軟件接口,它主要功能是系統加電后初始化目標機硬件與vxworks,并供應部分硬件軟件驅動程序。bsp在vxworks系統中層次關系如圖1所示。
  bsp為各種板卡硬件功能供應了統一軟件接口,包括硬件初始化,中斷捕捉與處理,硬件時鐘與定時器管理,內存地址映射,對及內存分配等。每個bsp還包括一個rom運行或其他運行機制。
2 vxworks引導過程
  在編寫bsp的前,首先要了解整個系統運行過程。vxworks映像由源代碼段,數據段與bss段3部分結合。vxwotks內核能分為3種:可加載種類映像,romvxworks映像與rom駐留型映像。這3種種類映像組織是不一樣,因此運行過程有所差別。
  可加載映像包括vxworks與boot rom兩部分內容,兩部分是獨立建立。首先,由系統引導源代碼把rom引導程序搬到ram_high_adrs。然后,rom引導程序開始啟動,將vxworks映像加載到ram_low_adrs,的后跳轉到vxworks映像裝入點。
  romvxworks映像在bsp初始化時,會把lmage完全搬到ram中執行,包括源代碼段與數據段。在拷貝執行完畢后,系統控制權轉移給ram中vxworks映像初始化源代碼。
  rom駐留型映像僅僅是將rom中vxworks映像數據段與bss段拷貝到ram中,完成后系統控制權轉移給rom/flash里vxworks映像初始化源代碼,源代碼段留在rom中并在rom中啟動。在rom中啟動vxworks映像主要足為了節省ram空間,帶來不利則是啟動速度慢。
  圖2與圖3分別是下載型與rom型vxworks映像初始化過程。
下面臨rom型vxworks內核運行過程為例,說明各文件用處:
  romlnit()保存運行種類,屏蔽中斷;初始化內存與寄存器,屏蔽cache;初始化cpu,將堆棧指針定位于被拷貝boot rom映像在ram地址;跳到romstart()。
  rorastart()根據不同映像種類將vxworks映像不同部分解壓縮<如果需)并加載到ram中。
  usrinit() 對vxworks映像bss段清零;調用intvecbaseset()設置中斷矢量基地址表;調用excvecinit()初始化異常中斷矢量;調用syshwinit()初始化系統硬件;調用usrkernelinit()初始化wind內核;調用kernellnit()運行wind內核,運行usrroot()任務。
  usrroot()設置操作方法系統時鐘,建立設備,安裝軟件驅動,調用syshwinit2()安裝系統時鐘與輔助時鐘中斷對及串口等設備中斷,初始化i/o,文件系統,調用應用程序軟件。
3 vxworks在at91rm9200上bsp設計方案
3.1 at91rm9200介紹
  at91rm9200片上資源包括:arm920t處理器棱,16kb內部sram與128kb內部rom存儲器;支持sdram,sram,burst flash與compactflash,smartmedia對及nandflash無縫連接;16kb數據cache,16kb指令cache,完全可編程代碼外部總線接口ebi,4個32位pio控制器能達到122個可編程代碼i/o引腳(每個都有輸入控制,可中斷及開路輸出能力);帶有8個優先級,可單獨屏蔽中斷源先進中斷控制器,6組硬件定時器,4個通用同步/異步收發器usart。
3.2 bsp中幾個顯要文件修改
  由于at91rm9200內核是arm920t,所對bsp文件主要在vxworks編澤環境tornado目錄target/config/all與target/config/integrator920t文件夾里。其中,a11文件夾里文件對于絕大多數bsp都是共用,普通來說不需修改,特別是“configall.h”;integrator920t文件夾里文件就是所要編寫bsp文件,這些文件往往及系統硬件密切關聯。
3.2.1 修改makeflie
  makefile文件定義編譯與鏈接整個bsp規則,如編譯工具選擇,編譯選項與包含文件路徑等;控制生成vxworks映像文件種類,同時含有存儲區大小資料,對于存儲區大小資料改動必須及config.h對應改動同步。有些型號參數需在該文件中定義,如處理器種類,編譯工具,目標地址等。下面說明一些須修改型號參數與地址:
3.2.2 修改config.h
  config.h文件包含了所有頭文件與及cpu關聯特殊定義。vxworks內核組件設置由config.h文件定義。config.h中主要修改內容有定義引導行與修改地址。
(1)定義引導行
  其中,mac(o,0)為at91rm9200IC中emac設備;host為主機名;vxworks為要下載文件名;h為主機ip地址;e為目標板ip地址;u為用戶名;pw為密碼;tn為目標板名稱。
(2)修改地址
  該文件中地址定義,如rom_text_adrs,rom_size,ram_low_adr,sram_high_size等要及makefik文件中關聯定義一致。本設計方案中源代碼段存儲在連接armIC外部片選cso上flash里面,基地址為oxl0000000,因此.定義如下:
  vxworks缺省設置由configall.h來確定。普通來說,缺省設置設置及自行研發硬件系統設置不同,用戶可通過cotlfig.h來改變缺省設置。用戶須查看configall.h,并在config.h中將不需軟硬件設置與初始化去掉。例如,缺省設置中普通包含浮點處理器,而at9lrm9200中沒有浮點寄存器,因此就要刪掉關聯設置。
3.2.3 修改integrator920t.c
  該文件中設置所有非可選,及at91rm9200IC關聯資料,如各硬件關聯寄存器地址定義,設備寄存器中對應位定義,各硬件中斷矢量與中斷優先級定義,dbug與usart控制,網口定義,系統時鐘與輔助時鐘型號參數設置等。vxworks所要運用目標板包含設備軟件驅動程序頭文什應當包含在該文件開始。該文件中各項宏定義均是at91rm9200IC,并根據具體條件定義。例如,電源管理控制器中用到兩個鎖相環plla與pllb,對它們部分型號參數設定源代碼如下:
3 2.4 修改rornlnit.s
  該文件包含引導rom與romvxworks映像入口初始化匯編源代碼。入口點為rominit()函數,是系統加電運行后首先執行源代碼。主要功能是:保存運行種類,使處理器復位;初始化flash與sdram;設置mmu到已知狀態;指令cache使能;初始化mmu控制寄存器(指令32位,數據32位,寫緩沖使能);開漏寫緩沖,并且使指令與數據cache都兀效;通過設置cpsrirq禁止位,fir禁止位與先進中斷控制器aic中中斷禁止寄存器來屏蔽中斷,跳轉到bootinit.c中rom-start(),同時傳遞運行種類。其中,中斷屏蔽源代碼如下:
  在調試這段源代碼時,由于串口與網口都沒有運行,因此僅僅能通過點燈程序來跟蹤程序執行情況,設置不同led亮來顯示程序執行到哪一步。例如,如果要并行輸入/輸出口c32位中第15位亮,則能編程代碼為;
  在編寫本文件時,需注意地方是:不要在該文件里進行過多初始化操作方法,大部分硬件初始化操作方法在syslib.c文件中syshwinit()函數中進行。
3.2.5 修改syslib c
  syslib.c是bsp初始化核心源代碼。在這個文件中,必須復位所有硬件,使其處于初始化狀態,保證后面開中斷后不會產生假中斷。這個文件包含了由目標機體系構造決定,及系統關于c程序。這些c程序供應板級接口。這些接口,vxworks與應用程序軟件構造及系統無關。該文件功能包括:定義了rram,sram,rom,外部片選IC物理地址與虛擬地址;定義中斷優先級寄存器中各個位對應優先級;調用syshwinit()初始化串口與網口,安裝irq/svc中斷堆棧分配程序;總線中斷功能等。本文件中有兩個顯要函數:syshwinit()與syshwinit2()。syshwinit()源代碼如下:
  syshwinit2()用來連接系統中斷,安裝isr,進行其他設置。它在初始化系統時鐘時,由sysclkconnect()調用,主要用來初始化中斷庫與中斷軟件驅動,安裝系統時鐘與輔助時鐘中斷對及串口等設備中斷。
4 編譯生成映像
  系統定制完成后,有兩種編譯方法:一種是在tornado下進行編譯,生成映像文件;另一種是直接用make工具編譯,但要寫好腳本文件。裝載到目標板中vxworks映像取決于運用下載方法,其中主要包括對下多種:
  ①vxworks。這是ram映像,vxworks需通過目標板上引導程序從串口或網口把它下載到目標板ram中啟動。在tornado研發環境下,這是一個默認選項,主要用在調試階段。運用宿主機上windsh工具與符號表。
  ②vxworks.st。這也是ram映像,需通過引導rom把vxworks映像下載到目標機內存中才能執行。該對象文件內置符號表。
  ③vxworks_rom。這是一個非壓縮,rom映像。在這個對象文件執行前,先把自己拷貝到目標機ram中。這種種類映像通常在運行階段速度相比較慢,因為源代碼在rom中執行,但執行階段比rom駐留型映像要快。
  ④vxworks.st_rom。這是rom壓縮vxworks映像。它在執行前先把自己解壓并拷貝到目標機ram中執行。
  ⑤vxworks.res_rom。這是rom駐留型非壓縮vxworks映像。它在執行前把數據段拷貝到目標機ram中。這種種類映像在運行階段相比較快,但在目標機上執行速度比rom種類映像慢(因為cpu訪問rom比訪問ram要慢)。通常在ram空間相比較小目標機上運用這種種類映像。
5 需注意難題
  首先,應該避免在rominit.s中進行過多初始化操作方法。該史件中僅僅是進行必要最小硬件初始化,大部分硬件初始化都是在syshwinit()中完成。另外,romtnit.s中源代碼不應當被其他模塊或函數調用。
  其次,應該避免sysalib.s中工作太少。bsp研發人員通常錯誤地認為在rominit.s里初始化過設備不需在sysalib.s中從新初始化。實際上,vxworks映像并不認為它是由引導映像程序引導,因此,它必須從新設置與初始化所有它自己需運用設備。sysinit()是該文件中最主要一個函數,也是第一個函數。該例程中很多工作及rominit()是相同,目是保證內核映像在啟動及冷運行時,軟硬件環境高度一致。
  最后,對特定bsf。軟件驅動程序修改,僅僅能在特定bsp目錄下。此設計方案中目錄為target/config/integra-tor920t,不要直接在target/src/drv對及target/h/drv中修改。僅僅有風河公司源程序才能存放在這些目錄下。
6 結論
  本文在說明bsp理念,用處與vxworks映像類別對及系統運行過程基礎上,對atmel公司生產arm9處理器at91rm9200為例,重點說明了vxworksbsp設計方案中需修改幾個顯要文件,最后提出了需注意難題。盡管目標板硬件不同,bsp解決方案也不盡相同,但基本思想是一樣。本設計方案對各類研發板系統移植與后續應用程序軟件研發有一定參考價值

支持(0中立(0反對(0單帖管理 | 引用 | 回復 回到頂部

返回版面帖子列表

VxWorks在AT91RM9200上BSP設計方案








簽名
久久精品在这里_成人99免费视频_国产激情视频一区二区在线观看_国产伦精品一区二区三区免费 _亚洲午夜免费福利视频_色狠狠色狠狠综合_av在线综合网_91毛片在线观看_欧美视频一区二区在线观看_极品美女销魂一区二区三区免费_国产亚洲欧美激情_在线免费观看不卡av_日韩不卡一区二区三区_91精品国产麻豆国产自产在线_亚洲国产精品一区二区久久恐怖片_a4yy欧美一区二区三区
久久蜜桃av一区精品变态类天堂 | 中文字幕中文字幕在线中心一区| 亚洲精品高清在线| 日韩欧美综合一区| 中文字幕中文字幕99 | 欧美亚洲图片小说| 欧美一区2区三区4区公司二百| 99久免费精品视频在线观看| 国产精品一二二区| 美女在线观看视频一区二区| 亚洲午夜精品网| 国产精品福利av| 亚洲国产激情av| 久久综合九色综合欧美98| 欧美成人aa大片| 精品国产免费一区二区三区四区 | 色综合久久久网| 亚洲精品成人久久久998| 亚洲精品一品区二品区三品区| 成人蜜臀av电影| 久久久久久99| 国产精品一 二 三| 99v久久综合狠狠综合久久| 成人小视频在线| 国产成人免费视频精品含羞草妖精| 欧美在线小视频| 欧美日本视频在线| 91精品国产综合久久精品app| 欧美精选在线播放| 欧美专区亚洲专区| 欧美日韩综合在线免费观看| 色偷偷久久一区二区三区| 在线观看区一区二| 51精品久久久久久久蜜臀| 欧美日韩亚洲丝袜制服| 欧美一区二区高清| 久久精品视频在线看| 国产精品看片你懂得| 亚洲欧美日韩小说| 一区av在线播放| 亚洲成人免费av| 老司机午夜精品| 亚洲一二三四在线观看| 日韩av一区二区三区四区| 麻豆专区一区二区三区四区五区| 国产麻豆视频精品| 亚洲永久免费av| 一区二区三区电影在线播| 亚洲精品日韩一| 精品在线一区二区三区| 成人国产精品免费观看动漫| 成人黄色片视频网站| 色美美综合视频| 久久久久久久久久久久电影| 亚洲在线中文字幕| 成人免费视频网站在线观看| 欧美系列一区| 日韩欧美在线123| 亚洲一卡二卡三卡四卡五卡| 国产精品18久久久| 日韩.欧美.亚洲| 337p粉嫩大胆噜噜噜噜噜91av | 亚洲图片一区二区| 丁香激情综合五月| 综合久久国产| 亚洲视频网在线直播| 国产传媒日韩欧美成人| 日韩欧美精品一区二区| 久久久国产午夜精品| 国产一区二区三区视频在线播放 | 色噜噜狠狠色综合欧洲selulu| 国产精品三级电影| 国产成都精品91一区二区三| 在线观看亚洲视频啊啊啊啊| 精品一区二区日韩| 蜜桃传媒视频第一区入口在线看| 一区二区三区四区在线免费观看| 成人国产视频在线观看| 一区二区精品视频| 欧美激情一区二区在线| 午夜精品一区二区三区电影天堂 | 亚洲三级久久久| 国产精品久久久久久久久久免费看| 午夜精品福利一区二区三区av| 99国内精品久久| 欧美性生活久久| 一区二区欧美在线观看| av成人综合网| 日韩精品专区在线影院观看| 一区二区三区欧美日韩| 神马影院我不卡午夜| 欧美激情在线观看视频免费| 精品一区免费av| 一区二区三区av| 中文字幕精品一区二区精品绿巨人 | 大美女一区二区三区| 久久精品亚洲乱码伦伦中文| 粉嫩aⅴ一区二区三区四区五区| 日韩经典在线视频| 乱一区二区av| 亚洲精品水蜜桃| 日本a级片久久久| 91精品麻豆日日躁夜夜躁| 成人一区二区三区| 国内精品**久久毛片app| 日韩一级高清毛片| 久久精品视频网| 91麻豆产精品久久久久久| 日韩精品一区二区三区在线播放| 国产亚洲欧洲997久久综合| 不卡的av电影| 日韩免费看网站| 99久久国产综合精品女不卡| 久久久久国产一区二区三区四区| 日韩国产欧美一区二区三区| 亚洲最新在线| 成人福利视频网站| 神马影院一区二区三区| 亚洲综合一区在线| 国产精品动漫网站| 久久精品日产第一区二区三区| 91麻豆精品国产91久久久使用方法| eeuss影院一区二区三区| 亚洲男人的天堂网| 欧美国产丝袜视频| 欧美日韩综合在线| 久久精品国产精品青草色艺| 亚洲国产毛片aaaaa无费看| 555夜色666亚洲国产免| 99超碰麻豆| 亚洲国产毛片aaaaa无费看| 国产色爱av资源综合区| 好吊色欧美一区二区三区四区| 国产清纯白嫩初高生在线观看91 | 久久大片网站| 国模冰冰炮一区二区| 亚洲精品中文字幕在线观看| 欧美美女喷水视频| av电影成人| 国产成人精品一区二区三区四区| 欧美不卡激情三级在线观看| 日韩精品另类天天更新| 成人av影院在线| 中文字幕日韩一区| 欧美区在线观看| 天堂社区 天堂综合网 天堂资源最新版 | 久久久免费看| 蜜桃91丨九色丨蝌蚪91桃色| 久久这里只有精品首页| 97伦理在线四区| 999视频在线免费观看| 丰满岳乱妇一区二区三区| 亚洲观看高清完整版在线观看| 欧美喷潮久久久xxxxx| 伊人久久99| 菠萝蜜视频在线观看一区| 精品国产一区二区国模嫣然| 色吧成人激情小说| 中文字幕日韩精品一区二区| 欧美群妇大交群中文字幕| 国内精品国产三级国产a久久| 5月丁香婷婷综合| 国产aⅴ精品一区二区三区黄| 亚洲成av人片在www色猫咪| 欧美一区二区三区的| 久久精品午夜一区二区福利| 免费人成在线不卡| 久久欧美一区二区| 色综合欧美在线| 成人av网站大全| 亚洲成人激情社区| 欧美精品一区二区三区蜜臀| 一区二区冒白浆视频| 91在线免费看| 久久99久久久欧美国产| 中文字幕日韩欧美一区二区三区| 欧美日韩一区二区三区高清| 蜜桃av久久久亚洲精品| 成人亚洲一区二区一| 青青草国产成人av片免费| 国产精品亲子伦对白| 欧美一卡二卡三卡| 色综合久久久久综合99| 国产综合动作在线观看| 国产成人精品一区二区三区网站观看| 欧美一级日韩一级| 视频一区视频二区视频三区高| 国产在线资源一区| 成人久久视频在线观看| 蜜桃视频一区二区三区| 日韩欧美亚洲国产另类| 中国成人在线视频| 欧美激情导航| 97免费高清电视剧观看| 国产高清在线精品| 久久精品国产一区二区三| 亚洲丝袜自拍清纯另类| 中文字幕 久热精品 视频在线 | 欧美成人一区二区三区片免费 | 91精品国产入口|