亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? boot_gnu.s

?? altera epxa1的例子程序
?? S
?? 第 1 頁 / 共 3 頁
字號:
    												//  pipeline is flushed
    												//  when pc is altered.

MAP_SDRAM0:
    ldr     r0, =(EXC_REGISTERS_BASE + 0xB0)        //-Map SDRAM0
    ldr     r1, =0x00000D03                         //  by loading register
    str     r1, [r0]                                //  MMAP_SDRAM0


//***************************************************************************
//                          Setup Stripe IO
//
//  Much of the Embedded Stripe I/O is dual purpose, meaning if the Stripe 
//  does not need it, it can be used as regular PLD I/O.  This section sets 
//  up the SDRAM and EBI pins for stripe use, and the UART and TRACE pins for 
//  PLD use.
//***************************************************************************

    ldr     r0, =(EXC_REGISTERS_BASE + 0x40)        //-Load register
    ldr     r1, =0x7                                //  IOCR_SDRAM
    str     r1, [r0]                                //  Fast slew rate, LVTTL,
                                                    //   Stripe use

    ldr     r0, =(EXC_REGISTERS_BASE + 0x44)        //-Load register
    ldr     r1, =0x3                                //  IOCR_EBI
    str     r1, [r0]                                //  Slow slew rate, LVTTL,
                                                    //   Stripe use

    ldr     r0, =(EXC_REGISTERS_BASE + 0x48)        //-Load register
    ldr     r1, =0x5                                //  IOCR_UART
    str     r1, [r0]                                //  Fast slew rate, LVTTL,
                                                    //   PLD use

    ldr     r0, =(EXC_REGISTERS_BASE + 0x4C)        //-Load register
    ldr     r1, =0x5                                //  IOCR_TRACE
    str     r1, [r0]                                //  Fast slew rate, LVTTL,
                                                    //   PLD use


//***************************************************************************
//                           Turn on Cache
//
//  This section reads register 1 of the MMU, turns on the instruction cache 
//  enable and round robin bits, then writes it back.  At the end of this
//  section, the instruction cache is turned on and running in round-robin 
//  mode
//
//***************************************************************************

//          CP# Cop1 Rd  CRn CRm Cop2                //-Operands of MCR inst.
   mrc      p15, 0, r0, c1, c0, 0                   //-Read register 1 of MMU
   ldr      r1, =0x1000								//-ICache enable bit mask
   ldr      r2, =0x4000								//-Round Robin bit mask
   orr      r0, r0, r1                              //-Set ICache enable bit
   orr      r0, r0, r2								//-Set Round Robin bit 
   mcr      p15, 0, r0, c1, c0, 0                   //-Write back register 1


//***************************************************************************
//                        Setup SDRAM Controller
//
//  This section configures the SDRAM controller for SDR SDRAM.  
//  Specifically, the SDRAM controller is setup to interface with a Crucial 
//  CT16M72S4D75.9T 128MB DIMM.  First we wait to assure that PLL2 has been 
//  locked for 100us.  At this point we load the registers SDRAM_TIMING1, 
//  SDRAM_TIMING2, SDRAM_CONFIG, SDRAM_REFRESH, SDRAM_ADDR, and SDRAM_MODE0.
//  These registers configure how the SDRAM controller will interface with 
//  the SDRAM devices.  Descriptions of these registers can be found in the 
//  ARM-based Excalibur Hardware Reference Manual.
//
//***************************************************************************

//We must wait 100us after PLL2 is locked.

    ldr     r6, =(EXC_REGISTERS_BASE + 0x328)       //-Load address of AHB1-COUNT
    ldr     r9, =12500
    bl      WAIT_FUNCTION                           //-Wait for 12500 AHB1 cycles
                                                    //  (100us)

LOAD_SDRAM_REGS:

    ldr     r0, =(EXC_REGISTERS_BASE + 0x400)       //-Load register
    ldr     r1, =0x4A92                             //  SDRAM_TIMING1
    str     r1, [r0]                                //  RCD=2, RAS=5, RRD=2,
                                                    //  RP=2, WR=2

    ldr     r0, =(EXC_REGISTERS_BASE + 0x404)       //-Load register
    ldr     r1, =0x7BB8                             //  SDRAM_TIMING2
    str     r1, [r0]                                //  RC=7, CL=3, BL=8, 
													//  RFC=7

    ldr     r0, =(EXC_REGISTERS_BASE + 0x408)       //-Load register
    ldr     r1, =0x0                                //  SDRAM_CONFIG
    str     r1, [r0]                                //  Type=SDR


    ldr     r0, =(EXC_REGISTERS_BASE + 0x40C)       //-Load register
    ldr     r1, =0x5DC                              //  SDRAM_REFRESH
    str     r1, [r0]                                //  Refresh=15us

    ldr     r0, =(EXC_REGISTERS_BASE + 0x410)       //-Load register
    ldr     r1, =0xCA80                             //  SDRAM_ADDR
    str     r1, [r0]                                //  ROW=12, COL=10


    ldr     r0, =(EXC_REGISTERS_BASE + 0x420)       //-Load register
    ldr     r1, =0x033                              //  SDRAM_MODE0
    str     r1, [r0]                                //  CAS=3, sequential,
                                                    //  burst length=8

//Register SDRAM_MODE1 is not used in SDR mode

//***************************************************************************
//                          Initialize SDRAM
//
//  The SDRAM has now been configured so now the SDRAM device attached 
//  externally to the SDRAM controller must be initialized.  However, the 
//  initialization process must complete within one refresh cycle.  For this 
//  reason, we want the initialization code to run as fast as possible.  To 
//  accomplish this, we lock the SDRAM initialization code into instruction 
//  cache.  After the code is locked in cache, the following initialization 
//  commands are issued to prepare SDRAM for reading and writing:
//
//  -- Enable SDRAM controller
//  -- Issue Precharge command
//  -- Wait 50 SDRAM cycles (63 AHB1 cycles if SDRAM=100MHz and AHB1=125MHz)
//  --  *Note that the 50 cycle delay is only neccessary for XA10
//  --   XA4 and XA1 do not require a delay between SDRAM commands
//  --   Additionally, the delays in this example are determined by
//  --   the clock frequencies involved.  If different clock frequencies
//  --   are used, delays will have to be re-calculated.
//  -- Issue Refresh command
//  -- Wait 50 SDRAM cycles
//  -- Issue 2nd Refresh command
//  -- Wait 50 SDRAM cycles
//  -- Issue Load Mode command to load SDRAM_MODE0 into SDRAM device.
//  -- Wait 50 SDRAM cycles
//
//  Following this sequence, the SDRAM will be ready for reading and writing.
//
//***************************************************************************

    adr r1,CACHE_THIS_CODE_START                    //-Load begin of SDRAM
                                                    //  init code
    adr r2,CACHE_THIS_CODE_END                      //-Load end of SDRAM
                                                    //  init code
    adr r3,CACHE_THIS_CODE2_START                   //-Load begin of SDRAM
                                                    //  init wait function
    adr r4,CACHE_THIS_CODE2_END                     //-Load end of SDRAM
                                                    //  init wait function

SDR_Load_Cache:                                     //-Lock SDRAM init code
    mcr p15,0,r1,c7,c13,1                           //  into instruction cache
    add r1,r1,#8
    cmp r1,r2
    ble SDR_Load_Cache

SDR_Load_Cache2:                                    //-Lock SDRAM wait
    mcr p15,0,r3,c7,c13,1                           //  function into
    add r3,r3,#8                                    //  instruction cache
    cmp r3,r4
    ble SDR_Load_Cache2



INIT_SDRAM:

//Load bit masks for register SDRAM_INIT

    ldr     r2, =0x8000                             //-Enable bit mask
    ldr     r3, =0xC000                             //-Precharge bit mask
    ldr     r4, =0x8800                             //-Refresh bit mask
    ldr     r5, =0xA000                             //-Load Mode bit mask
    ldr     r6, =(EXC_REGISTERS_BASE + 0x328)       //-Load address of AHB1-COUNT

CACHE_THIS_CODE_START:

    ldr     r0, =(EXC_REGISTERS_BASE + 0x41C)       //-Enable SDRAM controller
    ldr     r1, [r0]                                //  by setting enable bit of
    orr     r1, r1, r2                              //  SDRAM_INIT
    str     r1, [r0]

    str     r3, [r0]                                //-Issue Precharge cmd
                                                    //  by setting Precharge
                                                    //  bit of SDRAM_INIT

    ldr     r9, =63
    bl      WAIT_FUNCTION                           //-Wait for 63 AHB1 cycles

    str     r4, [r0]                                //-Issue Refresh command
                                                    //  by setting Refresh bit
                                                    //  of SDRAM_INIT

    ldr     r9, =63
    bl      WAIT_FUNCTION                           //-Wait for 63 AHB1 cycles

    str     r4, [r0]                                //-Issue Refresh command
                                                    //  by setting Refresh bit
                                                    //  of SDRAM_INIT

    ldr     r9, =63
    bl      WAIT_FUNCTION                           //-Wait for 63 AHB1 cycles


    str     r5, [r0]                                //-Issue Load Mode cmd
                                                    //  by setting Load Mode
                                                    //  bit of SDRAM_INIT

    ldr     r9, =63
    bl      WAIT_FUNCTION                           //-Wait for 63 AHB1 cycles

CACHE_THIS_CODE_END:
                                                    //-SDRAM is now ready for
                                                    //  reading and writing.


//***************************************************************************
//                          Configure PLD
//
//  This section configures the PLD portion of the device using the PLD 
//  configuration peripheral in the Embedded Stripe.  First, we set the 
//  configuration clock to 7.8125 MHz by dividing the AHB2 clock (62.6MHz)
//  by 8 in the register CONFIG_CLOCK.  Then we check the lock bit of 

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
蜜臀久久99精品久久久久宅男 | 亚洲视频在线观看一区| 欧美体内she精高潮| 国产不卡视频在线播放| 五月开心婷婷久久| 亚洲欧美国产高清| 久久综合九色欧美综合狠狠| 欧美日韩国产在线观看| 成人91在线观看| 国模少妇一区二区三区| 日韩高清一区在线| 亚洲日本一区二区三区| 国产色一区二区| 精品国产一区二区三区忘忧草| 欧美日韩aaaaa| 91成人免费电影| 色综合中文字幕| thepron国产精品| 国产成人鲁色资源国产91色综| 日本va欧美va精品| 日韩国产欧美在线播放| 亚洲主播在线播放| 亚洲激情网站免费观看| 亚洲少妇最新在线视频| 亚洲欧洲色图综合| 国产精品嫩草99a| 蜜桃视频一区二区三区在线观看| 奇米精品一区二区三区四区| 亚洲欧美日韩电影| 国产精品精品国产色婷婷| 国产欧美一区二区在线观看| 亚洲精品在线免费观看视频| 日韩精品一区二区三区在线播放| 91精品国产综合久久久久久久| 欧美撒尿777hd撒尿| 欧美在线观看一区二区| 91网站黄www| 91久久免费观看| 日本高清成人免费播放| 91黄色激情网站| 91官网在线免费观看| 欧洲色大大久久| 欧美精品在线视频| 在线播放中文字幕一区| 日韩欧美亚洲国产另类 | 中文成人综合网| 国产农村妇女精品| 国产精品久久精品日日| 亚洲丝袜自拍清纯另类| 亚洲免费av高清| 精品国产伦一区二区三区观看体验 | 欧美日本在线一区| 3atv一区二区三区| 日韩一区国产二区欧美三区| 欧美v日韩v国产v| 久久久久久电影| 中文字幕一区二区三区在线播放| 亚洲欧洲av在线| 亚洲图片自拍偷拍| 蜜桃av噜噜一区| 国产毛片精品国产一区二区三区| 成人国产精品免费观看视频| 91激情在线视频| 欧美一区在线视频| 久久久天堂av| 亚洲男同性视频| 蜜桃一区二区三区在线观看| 国产成人在线视频免费播放| 色乱码一区二区三区88| 日韩小视频在线观看专区| 久久久www免费人成精品| 亚洲人成亚洲人成在线观看图片| 亚洲一级二级三级| 国产老妇另类xxxxx| 色系网站成人免费| 精品免费国产一区二区三区四区| 国产精品国产三级国产aⅴ入口| 亚洲国产精品影院| 国产成人午夜片在线观看高清观看| 色老汉一区二区三区| 日韩精品综合一本久道在线视频| 中文字幕日韩一区二区| 日韩国产欧美在线播放| 不卡免费追剧大全电视剧网站| 91.麻豆视频| 中文字幕一区不卡| 精品一区二区三区在线观看| 日本大香伊一区二区三区| 日韩亚洲欧美一区| 亚洲精选视频在线| 国产自产视频一区二区三区| 欧美视频在线观看一区| 国产偷国产偷亚洲高清人白洁 | 99久久亚洲一区二区三区青草| 91精品国产综合久久福利软件| 中文字幕在线播放不卡一区| 精品一区二区三区久久| 欧美色区777第一页| 国产网站一区二区| 麻豆精品视频在线| 在线视频你懂得一区| 中文字幕电影一区| 国产综合色产在线精品| 777xxx欧美| 亚洲成人三级小说| 日本久久精品电影| 国产精品无码永久免费888| 精品一区二区三区视频在线观看 | 中文字幕一区二区三区不卡| 精品亚洲成a人| 制服丝袜激情欧洲亚洲| 亚洲国产视频a| 色系网站成人免费| 国产精品第五页| 国产毛片精品国产一区二区三区| 欧美一区2区视频在线观看| 亚洲与欧洲av电影| 色哟哟亚洲精品| 国产精品久久久久久久久免费桃花| 国产精品一区三区| 久久青草国产手机看片福利盒子| 麻豆一区二区在线| 91精品黄色片免费大全| 午夜精品一区在线观看| 欧美三级欧美一级| 亚洲国产视频一区| 欧美日韩综合不卡| 亚洲成av人片一区二区| 欧美日韩中文国产| 亚洲不卡一区二区三区| 在线观看亚洲a| 一区二区三区欧美日| 色悠悠亚洲一区二区| 伊人性伊人情综合网| 欧亚一区二区三区| 亚洲国产乱码最新视频 | 欧美成人猛片aaaaaaa| 人禽交欧美网站| 精品国产髙清在线看国产毛片| 另类中文字幕网| 久久综合久久久久88| 成人一区二区三区视频| 亚洲人精品一区| 欧美在线不卡视频| 日韩中文字幕不卡| 日韩欧美国产一区在线观看| 国产一区二区福利视频| 中文字幕va一区二区三区| av午夜一区麻豆| 亚洲狠狠爱一区二区三区| 3d成人h动漫网站入口| 国产一区二区三区观看| 国产精品不卡一区| 欧美自拍偷拍一区| 日韩成人dvd| 国产欧美精品区一区二区三区| 成人av小说网| 亚洲动漫第一页| 精品国产亚洲在线| kk眼镜猥琐国模调教系列一区二区 | 日韩欧美黄色影院| 成人免费视频国产在线观看| 亚洲综合另类小说| 精品久久人人做人人爱| av在线播放不卡| 丝袜美腿亚洲一区二区图片| 国产三级三级三级精品8ⅰ区| 91亚洲精品一区二区乱码| 亚洲成人在线网站| 久久精品男人天堂av| 91免费精品国自产拍在线不卡| 五月婷婷综合网| 国产欧美一二三区| 欧美在线观看一区| 国产一区二区三区av电影| 亚洲黄色小视频| 精品成人一区二区三区四区| 97精品电影院| 韩国av一区二区三区四区| 亚洲桃色在线一区| 精品国精品国产尤物美女| 91影院在线观看| 极品尤物av久久免费看| 亚洲欧美一区二区三区久本道91| 欧美一区二区在线看| 波多野结衣欧美| 另类小说色综合网站| 亚洲精品你懂的| 久久久久久9999| 欧美一级夜夜爽| 91丨九色丨尤物| 国产成人丝袜美腿| 裸体歌舞表演一区二区| 亚洲精品视频自拍| 国产日产精品1区| 日韩欧美一区在线| 欧美日韩综合在线免费观看| 99精品1区2区| 成人教育av在线| 激情文学综合网|