wdenk | c0bc2e1 | 2004-02-09 23:12:24 +0000 | [diff] [blame] | 1 | |
| 2 | Nios Development Kit |
| 3 | Startix Editions |
| 4 | |
| 5 | Last Update: January 28, 2004 |
| 6 | ==================================================================== |
| 7 | |
| 8 | This file contains information regarding U-Boot and the Altera |
| 9 | Nios Development Kit, Startix Edition (DK-1S10). For general Nios |
| 10 | information see doc/README.nios. |
| 11 | |
| 12 | Most stuff of this file was borrowed and based on README.dk1c20, |
| 13 | the DK-1C20 related information file. |
| 14 | |
| 15 | For those interested in contributing ... see HELP WANTED section |
| 16 | in doc/README.nios. |
| 17 | |
| 18 | Contents: |
| 19 | |
| 20 | 1. Files |
| 21 | 2. Memory Organization |
| 22 | 3. CPU Variations |
| 23 | 4. Examples |
| 24 | 5. Programming U-Boot into FLASH with GERMS |
| 25 | |
| 26 | ==================================================================== |
| 27 | |
| 28 | 1. Files |
| 29 | ========= |
| 30 | board/altera/dk1s10/* |
| 31 | include/configs/DK1S10.h |
| 32 | |
| 33 | 2. Memory Organization |
| 34 | ======================= |
| 35 | |
| 36 | -The heap is placed below the monitor (U-Boot code). |
| 37 | -Global data is placed below the heap. |
| 38 | -The stack is placed below global data (&grows down). |
| 39 | |
| 40 | 3. CPU Variations |
| 41 | ================= |
| 42 | |
| 43 | There are more than one NIOS CPU variation for the DK-1S10. U-Boot |
| 44 | supports the following CPU configurations: |
| 45 | |
| 46 | - Altera Standard 32 (make DK1S10_standard_32_config) |
| 47 | - Microtronix LDK 2.0 (make DK1S10_mtx_ldk_20_config) |
| 48 | |
| 49 | 4. Examples |
| 50 | ============ |
| 51 | |
| 52 | The hello_world example was never tested on DK-1S10. Neverthelse |
| 53 | it should work as far as possible, because the DK-1S10 port is |
| 54 | more than ninetieth percents equal to the DK-1C20 port and at |
| 55 | this platform the hello_world example was already tested |
| 56 | successfully (see README.dk1c20). |
| 57 | |
| 58 | |
| 59 | 5. Programming U-Boot into FLASH with GERMS |
| 60 | ============================================ |
| 61 | The current version of the DK-1S10 port with the default |
| 62 | configuration settings occupies about 78 KBytes of flash. |
| 63 | A minimal configuration occupies less than 60 KByte |
| 64 | (network support disabled). |
| 65 | |
| 66 | To program U-Boot into the DK-1S10 flash using GERMS do the |
| 67 | following: |
| 68 | |
| 69 | 1. From the command line, download U-Boot using the nios-run: |
| 70 | |
| 71 | $ nios-run -r u-boot.srec |
| 72 | |
| 73 | This takes about 45 seconds (GERMS is not very speedy here). |
| 74 | After u-boot is downloaded it will be executed. You should |
| 75 | see the following: |
| 76 | |
| 77 | U-Boot 1.0.2 (Jan 28 2004 - 19:02:30) |
| 78 | |
| 79 | CPU: Nios-32 Rev. 3.3 (0x3038) |
| 80 | Reg file size: 256 LO_LIMIT/HI_LIMIT: 2/14 |
| 81 | Board: Altera Nios 1S10 Development Kit |
| 82 | In: serial |
| 83 | Out: serial |
| 84 | Err: serial |
| 85 | DK1S10 > |
| 86 | |
| 87 | |
| 88 | 2. Quit nios-run and start your terminal application (e.g. start |
| 89 | Hyperterminal or minicom). |
| 90 | |
| 91 | 3. Download the u-boot code to RAM. When using Hyperterminal, do the |
| 92 | following: |
| 93 | |
| 94 | a. From the u-boot command prompt start a binary download to |
| 95 | SRAM / SDRAM: |
| 96 | |
| 97 | at the Altera Standard 32 to SRAM: |
| 98 | |
| 99 | ==> loadb 800000 |
| 100 | |
| 101 | at the Microtronix LDK 2.0 to SDRAM: |
| 102 | |
| 103 | ==> loadb 1010000 |
| 104 | |
| 105 | b. Download u-boot.bin using kermit. |
| 106 | |
| 107 | 4. From the U-Boot command prompt, erase flash: |
| 108 | |
| 109 | at the Altera Standard 32 from 0x40000 to 0x5ffff: |
| 110 | |
| 111 | ==> erase 1:4-5 |
| 112 | |
| 113 | at the Microtronix LDK 2.0 from 0x8000000 to 0x81ffff: |
| 114 | |
| 115 | ==> erase 1:0-1 |
| 116 | |
| 117 | 5. Copy the binary image from SRAM / SDRAM to flash: |
| 118 | |
| 119 | at the Altera Standard 32 to SRAM: |
| 120 | |
| 121 | ==> cp.b 800000 40000 $(filesize) |
| 122 | |
| 123 | at the Microtronix LDK 2.0 to SDRAM: |
| 124 | |
| 125 | ==> cp.b 1010000 8000000 $(filesize) |
| 126 | |
| 127 | U-Boot will now automatically start when the board is powered on or |
| 128 | reset using the Standard-32 configuration. To start U-Boot with the |
| 129 | Safe-32 configuration, enter the following GERMS command: |
| 130 | |
| 131 | + g 40000 |