Saturday, July 6, 2013
DE0-nano
I've been working through a number of tutorials for the DE0-nano board, starting with coding some simple verilog implementations to blink LED's according to button presses etc. All fairly unexciting stuff.
I've also worked through the NIOS tutorials included with the board. These tutorials were mostly straight forward, the only real stumbling ground is the application started the 'jtagd' daemon as the user when it didn't have access to the actual device. My quick fix was to simply relaunch jtagd as root, a better solution would be to update the udev configuration would make more sense as it will persist across reboots and fix it once and for all.
The NIOSII installation is simple and only uses a small part of the FPGA leaving lots of space for other functionality. Unfortunately the web download only includes a limited licence which would mean leaving the device tethered to the PC, useful for learning, not something I'm going likely to use for my own projects. These tutorials do take you through adding an external device (GPIO Pins/LEDS) to the avalon bus and connecting to these via 'C' code running on the soft processor. Cool, but cost prohibitive.
Moving on from this I've started looking closer at OpenRISC, so started with this tutorial:
It's nice to say it _mostly_ worked as outlined. There is a speed issue in the console once Linux has booted but that's being extremely picky and is easily fixed.
After several hours of hacking away and trying to understand how everything fits together the following was a *very* nice thing to see:Linux version way(s)
-- dmmu: 64 entries, 1 way(s)
-- immu: 64 entries, 1 way(s)
-- additional features:
-- debug unit
-- PIC
-- timer
setup_memory: Memory: 0x0-0x2000000
Reserved - 0x01ffdb44-0x000024bc
Setting up paging and PTEs.
map_ram: Memory: 0x0-0x2000000
On node 0 totalpages: 4096
free_area_init_nodeer c0002000
itlb_miss_handler c0002108
OpenRISC Linux -- http://openrisc.net
pcpu-alloc: s0 r0 d32768 u32768 alloc=1*32768
pcpu-alloc: [0] 0
Built 1 zonelists in Zone order, mobility grouping off. Total pages: 4080
uilt 1 zonelists in Zone order, mobility grouping off. Total pages: 4080
Ke: 128 (order: -4, 512 bytes)
Dentry cache hash table entries: 4096 (order: 1, 16384 bytes)
Inode-cache hash table entries: 2048 (order: 0, 8192 bytes)
Memory: 28672k/32768k available (2054k kernel code, 4096k reserved, 299k data, 1416k init, 0k highmem)
mem_init_done ... - Full Post
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment